2023-08-08 07:20:27 +00:00
|
|
|
// mobx lite
|
|
|
|
import { enableStaticRendering } from "mobx-react-lite";
|
|
|
|
// store imports
|
|
|
|
import UserStore from "./user";
|
|
|
|
import ThemeStore from "./theme";
|
2023-09-20 15:03:25 +00:00
|
|
|
import ProjectPublishStore, { IProjectPublishStore } from "./project_publish";
|
2023-09-20 18:09:55 +00:00
|
|
|
import IssueStore, { IIssueStore } from "./issue";
|
|
|
|
import DraftIssuesStore from "./issue_draft";
|
2023-09-20 15:03:25 +00:00
|
|
|
import WorkspaceStore, { IWorkspaceStore } from "./workspace";
|
|
|
|
import ProjectStore, { IProjectStore } from "./project";
|
2023-09-20 06:52:48 +00:00
|
|
|
import ModuleStore, { IModuleStore } from "./modules";
|
2023-10-09 08:58:42 +00:00
|
|
|
import ModuleIssueStore, { IModuleIssueStore } from "./module_issue";
|
|
|
|
import ModuleFilterStore, { IModuleFilterStore } from "./module_filters";
|
|
|
|
import ModuleIssueKanBanViewStore, { IModuleIssueKanBanViewStore } from "./module_issue_kanban_view";
|
2023-09-20 06:52:48 +00:00
|
|
|
import CycleStore, { ICycleStore } from "./cycles";
|
2023-10-09 08:58:42 +00:00
|
|
|
import CycleIssueStore, { ICycleIssueStore } from "./cycle_issue";
|
|
|
|
import CycleIssueFilterStore, { ICycleIssueFilterStore } from "./cycle_issue_filters";
|
|
|
|
import CycleIssueKanBanViewStore, { ICycleIssueKanBanViewStore } from "./cycle_issue_kanban_view";
|
2023-09-20 06:52:48 +00:00
|
|
|
import ViewStore, { IViewStore } from "./views";
|
2023-09-20 15:03:25 +00:00
|
|
|
import IssueFilterStore, { IIssueFilterStore } from "./issue_filters";
|
2023-09-20 06:52:48 +00:00
|
|
|
import IssueViewDetailStore from "./issue_detail";
|
2023-09-20 18:09:55 +00:00
|
|
|
import IssueKanBanViewStore from "./kanban_view";
|
2023-09-28 09:46:24 +00:00
|
|
|
import CalendarStore, { ICalendarStore } from "./calendar";
|
2023-08-08 07:20:27 +00:00
|
|
|
|
|
|
|
enableStaticRendering(typeof window === "undefined");
|
|
|
|
|
|
|
|
export class RootStore {
|
|
|
|
user;
|
|
|
|
theme;
|
2023-08-14 13:48:38 +00:00
|
|
|
projectPublish: IProjectPublishStore;
|
2023-09-19 07:26:32 +00:00
|
|
|
draftIssuesStore: DraftIssuesStore;
|
2023-09-20 06:52:48 +00:00
|
|
|
workspace: IWorkspaceStore;
|
|
|
|
project: IProjectStore;
|
|
|
|
issue: IIssueStore;
|
2023-10-09 08:58:42 +00:00
|
|
|
|
2023-09-20 06:52:48 +00:00
|
|
|
module: IModuleStore;
|
2023-10-09 08:58:42 +00:00
|
|
|
moduleIssue: IModuleIssueStore;
|
2023-10-04 09:51:40 +00:00
|
|
|
moduleFilter: IModuleFilterStore;
|
2023-10-09 08:58:42 +00:00
|
|
|
moduleIssueKanBanView: IModuleIssueKanBanViewStore;
|
|
|
|
|
2023-09-20 06:52:48 +00:00
|
|
|
cycle: ICycleStore;
|
2023-10-09 08:58:42 +00:00
|
|
|
cycleIssue: ICycleIssueStore;
|
|
|
|
cycleIssueFilter: ICycleIssueFilterStore;
|
|
|
|
cycleIssueKanBanView: ICycleIssueKanBanViewStore;
|
|
|
|
|
2023-09-20 06:52:48 +00:00
|
|
|
view: IViewStore;
|
|
|
|
issueFilter: IIssueFilterStore;
|
2023-09-15 10:07:54 +00:00
|
|
|
issueDetail: IssueViewDetailStore;
|
|
|
|
issueKanBanView: IssueKanBanViewStore;
|
2023-09-28 09:46:24 +00:00
|
|
|
calendar: ICalendarStore;
|
2023-08-08 07:20:27 +00:00
|
|
|
|
|
|
|
constructor() {
|
|
|
|
this.user = new UserStore(this);
|
|
|
|
this.theme = new ThemeStore(this);
|
2023-09-20 06:52:48 +00:00
|
|
|
this.workspace = new WorkspaceStore(this);
|
|
|
|
this.project = new ProjectStore(this);
|
2023-09-20 15:03:25 +00:00
|
|
|
this.projectPublish = new ProjectPublishStore(this);
|
2023-10-09 08:58:42 +00:00
|
|
|
|
2023-09-20 06:52:48 +00:00
|
|
|
this.module = new ModuleStore(this);
|
2023-10-09 08:58:42 +00:00
|
|
|
this.moduleIssue = new ModuleIssueStore(this);
|
2023-10-04 09:51:40 +00:00
|
|
|
this.moduleFilter = new ModuleFilterStore(this);
|
2023-10-09 08:58:42 +00:00
|
|
|
this.moduleIssueKanBanView = new ModuleIssueKanBanViewStore(this);
|
|
|
|
|
2023-09-20 06:52:48 +00:00
|
|
|
this.cycle = new CycleStore(this);
|
2023-10-09 08:58:42 +00:00
|
|
|
this.cycleIssue = new CycleIssueStore(this);
|
|
|
|
this.cycleIssueFilter = new CycleIssueFilterStore(this);
|
|
|
|
this.cycleIssueKanBanView = new CycleIssueKanBanViewStore(this);
|
|
|
|
|
2023-09-20 06:52:48 +00:00
|
|
|
this.view = new ViewStore(this);
|
2023-09-20 15:03:25 +00:00
|
|
|
this.issue = new IssueStore(this);
|
2023-09-20 06:52:48 +00:00
|
|
|
this.issueFilter = new IssueFilterStore(this);
|
2023-09-15 10:07:54 +00:00
|
|
|
this.issueDetail = new IssueViewDetailStore(this);
|
|
|
|
this.issueKanBanView = new IssueKanBanViewStore(this);
|
2023-09-19 07:26:32 +00:00
|
|
|
this.draftIssuesStore = new DraftIssuesStore(this);
|
2023-09-28 09:46:24 +00:00
|
|
|
this.calendar = new CalendarStore(this);
|
2023-08-08 07:20:27 +00:00
|
|
|
}
|
|
|
|
}
|