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-04 10:23:46 +00:00
|
|
|
import ProjectStore, { IProjectStore } from "./project";
|
2023-08-14 13:48:38 +00:00
|
|
|
import ProjectPublishStore, { IProjectPublishStore } from "./project-publish";
|
2023-09-04 10:23:46 +00:00
|
|
|
import IssuesStore from "./issues";
|
2023-08-08 07:20:27 +00:00
|
|
|
|
|
|
|
enableStaticRendering(typeof window === "undefined");
|
|
|
|
|
|
|
|
export class RootStore {
|
|
|
|
user;
|
|
|
|
theme;
|
2023-09-04 10:23:46 +00:00
|
|
|
project: IProjectStore;
|
2023-08-14 13:48:38 +00:00
|
|
|
projectPublish: IProjectPublishStore;
|
2023-08-30 07:56:28 +00:00
|
|
|
issues: IssuesStore;
|
2023-08-08 07:20:27 +00:00
|
|
|
|
|
|
|
constructor() {
|
|
|
|
this.user = new UserStore(this);
|
|
|
|
this.theme = new ThemeStore(this);
|
2023-09-04 10:23:46 +00:00
|
|
|
this.project = new ProjectStore(this);
|
2023-08-14 13:48:38 +00:00
|
|
|
this.projectPublish = new ProjectPublishStore(this);
|
2023-08-30 07:56:28 +00:00
|
|
|
this.issues = new IssuesStore(this);
|
2023-08-08 07:20:27 +00:00
|
|
|
}
|
|
|
|
}
|