Timeline Studio API Documentation - v0.26.0
    Preparing search index...
    modalMachine: StateMachine<
        { modalData: ModalData; modalType: ModalType; previousModal: ModalType },

            | { modalData?: ModalData; modalType: ModalType; type: "OPEN_MODAL" }
            | { type: "CLOSE_MODAL" }
            | { data?: ModalData; type: "SUBMIT_MODAL" },
        {},
        never,
        {},
        never,
        never,
        "closed" | "opened",
        string,
        {},
        {},
        EventObject,
        MetaObject,
        {
            context: { modalData: any; modalType: "none"; previousModal: any };
            id: "modal";
            initial: "closed";
            states: {
                closed: {
                    on: {
                        OPEN_MODAL: {
                            actions: ActionFunction<
                                {
                                    modalData: ModalData;
                                    modalType: ModalType;
                                    previousModal: ModalType;
                                },
                                { modalData?: ModalData; modalType: ModalType; type: "OPEN_MODAL" },

                                    | {
                                        modalData?: ModalData;
                                        modalType: ModalType;
                                        type: "OPEN_MODAL";
                                    }
                                    | { type: "CLOSE_MODAL" }
                                    | { data?: ModalData; type: "SUBMIT_MODAL" },
                                undefined,
                                never,
                                never,
                                never,
                                never,
                                never,
                            >;
                            target: "opened";
                        };
                    };
                };
                opened: {
                    on: {
                        CLOSE_MODAL: readonly [
                            {
                                actions: ActionFunction<
                                    {
                                        modalData: ModalData;
                                        modalType: ModalType;
                                        previousModal: ModalType;
                                    },
                                    { type: "CLOSE_MODAL" },

                                        | {
                                            modalData?: ModalData;
                                            modalType: ModalType;
                                            type: "OPEN_MODAL";
                                        }
                                        | { type: "CLOSE_MODAL" }
                                        | { data?: ModalData; type: "SUBMIT_MODAL" },
                                    undefined,
                                    never,
                                    never,
                                    never,
                                    never,
                                    never,
                                >;
                                guard: (
                                    __namedParameters: GuardArgs<
                                        {
                                            modalData: ModalData;
                                            modalType: ModalType;
                                            previousModal: ModalType;
                                        },
                                        { type: "CLOSE_MODAL" },
                                    >,
                                ) => boolean;
                                target: "opened";
                            },
                            {
                                actions: ActionFunction<
                                    {
                                        modalData: ModalData;
                                        modalType: ModalType;
                                        previousModal: ModalType;
                                    },
                                    { type: "CLOSE_MODAL" },

                                        | {
                                            modalData?: ModalData;
                                            modalType: ModalType;
                                            type: "OPEN_MODAL";
                                        }
                                        | { type: "CLOSE_MODAL" }
                                        | { data?: ModalData; type: "SUBMIT_MODAL" },
                                    undefined,
                                    never,
                                    never,
                                    never,
                                    never,
                                    never,
                                >;
                                target: "closed";
                            },
                        ];
                        OPEN_MODAL: {
                            actions: ActionFunction<
                                {
                                    modalData: ModalData;
                                    modalType: ModalType;
                                    previousModal: ModalType;
                                },
                                { modalData?: ModalData; modalType: ModalType; type: "OPEN_MODAL" },

                                    | {
                                        modalData?: ModalData;
                                        modalType: ModalType;
                                        type: "OPEN_MODAL";
                                    }
                                    | { type: "CLOSE_MODAL" }
                                    | { data?: ModalData; type: "SUBMIT_MODAL" },
                                undefined,
                                never,
                                never,
                                never,
                                never,
                                never,
                            >;
                        };
                        SUBMIT_MODAL: {
                            actions: readonly [
                                { type: "logFormSubmission" },
                                ActionFunction<
                                    {
                                        modalData: ModalData;
                                        modalType: ModalType;
                                        previousModal: ModalType;
                                    },
                                    { data?: ModalData; type: "SUBMIT_MODAL" },

                                        | {
                                            modalData?: ModalData;
                                            modalType: ModalType;
                                            type: "OPEN_MODAL";
                                        }
                                        | { type: "CLOSE_MODAL" }
                                        | { data?: ModalData; type: "SUBMIT_MODAL" },
                                    undefined,
                                    never,
                                    never,
                                    never,
                                    never,
                                    never,
                                >,
                            ];
                            target: "closed";
                        };
                    };
                };
            };
        },
    > = ...

    Создание машины состояний для модальных окон