返回 AiToEarn
transferDraftDialogStore.ts
根目录 / project / aitoearn-web / src / store / draft-box / transferDraftDialogStore.ts
1 /**
2 * TransferDraftDialog Store - 移动到草稿箱弹窗状态管理
3 */
4
5 import { create } from 'zustand'
6 import { combine } from 'zustand/middleware'
7
8 interface TransferDraftDialogPayload {
9 currentPlanId: string
10 draftIds: string[]
11 mediaIds: string[]
12 }
13
14 const initialState: TransferDraftDialogPayload & {
15 open: boolean
16 } = {
17 open: false,
18 currentPlanId: '',
19 draftIds: [],
20 mediaIds: [],
21 }
22
23 export const useTransferDraftDialogStore = create(
24 combine(
25 initialState,
26 set => ({
27 openDialog(payload: TransferDraftDialogPayload) {
28 set({
29 open: true,
30 ...payload,
31 })
32 },
33 closeDialog() {
34 set(initialState)
35 },
36 }),
37 ),
38 )
39
39 lines TYPESCRIPT