Files
kevisual-center-v1/src/pages/panel/deck/deck-store.ts

61 lines
1.2 KiB
TypeScript

import { create } from 'zustand';
type DeckPageStore = {
id: string;
setId: (id: string) => void;
showEdit: boolean;
setShowEdit: (showEdit: boolean) => void;
formData: any;
setFormData: (formData: any) => void;
loading: boolean;
setLoading: (loading: boolean) => void;
pageData: any[];
setPageData: (data: any[]) => void;
getPageData: () => any[];
selected: any;
setSelected: (data: any) => void;
getSeleted: () => any;
code: string;
setCode: (data: string) => void;
getCode: () => string;
};
export const useDeckPageStore = create<DeckPageStore>((set, get) => ({
id: '',
setId: (id) => {
set({ id });
},
showEdit: false,
setShowEdit: (showEdit) => {
set({ showEdit });
},
formData: {},
setFormData: (formData) => {
set({ formData });
},
loading: false,
setLoading: (loading) => {
set({ loading });
},
pageData: [],
setPageData: (data) => {
set({ pageData: data });
},
getPageData: () => {
return get().pageData;
},
selected: null,
setSelected: (data) => {
set({ selected: data });
},
getSeleted: () => {
return get().selected;
},
code: '',
setCode: (data) => {
set({ code: data });
},
getCode: () => {
return get().code;
},
}));