mirror of
https://github.com/massbug/judge4c.git
synced 2025-05-17 23:12:23 +00:00
feat(dockview-store): add submission state management
This commit is contained in:
parent
b35ef0208a
commit
c82b75b300
@ -1,17 +1,22 @@
|
|||||||
import { create } from "zustand";
|
import { create } from "zustand";
|
||||||
import type { DockviewApi } from "dockview";
|
import type { DockviewApi } from "dockview";
|
||||||
|
import type { Submission } from "@/generated/client";
|
||||||
|
|
||||||
export type DockviewState = {
|
export type DockviewState = {
|
||||||
api: DockviewApi | null;
|
api: DockviewApi | null;
|
||||||
|
submission: Submission | null;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type DockviewActions = {
|
export type DockviewActions = {
|
||||||
setApi: (api: DockviewApi) => void;
|
setApi: (api: DockviewApi) => void;
|
||||||
|
setSubmission: (submission: Submission) => void;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type DockviewStore = DockviewState & DockviewActions;
|
export type DockviewStore = DockviewState & DockviewActions;
|
||||||
|
|
||||||
export const useDockviewStore = create<DockviewStore>()((set) => ({
|
export const useDockviewStore = create<DockviewStore>()((set) => ({
|
||||||
api: null,
|
api: null,
|
||||||
|
submission: null,
|
||||||
setApi: (api) => set({ api }),
|
setApi: (api) => set({ api }),
|
||||||
|
setSubmission: (submission) => set({ submission }),
|
||||||
}));
|
}));
|
||||||
|
Loading…
Reference in New Issue
Block a user