RootStore.ts 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. import { types } from 'mobx-state-tree';
  2. import { SearchStore } from './../SearchStore/SearchStore';
  3. import { ServerStatsStore } from './../ServerStatsStore/ServerStatsStore';
  4. import { NavStore } from './../NavStore/NavStore';
  5. import { AlertListStore } from './../AlertListStore/AlertListStore';
  6. import { ViewStore } from './../ViewStore/ViewStore';
  7. import { FolderStore } from './../FolderStore/FolderStore';
  8. import { PermissionsStore } from './../PermissionsStore/PermissionsStore';
  9. import { TeamsStore } from './../TeamsStore/TeamsStore';
  10. export const RootStore = types.model({
  11. search: types.optional(SearchStore, {
  12. sections: [],
  13. }),
  14. serverStats: types.optional(ServerStatsStore, {
  15. stats: [],
  16. }),
  17. nav: types.optional(NavStore, {}),
  18. alertList: types.optional(AlertListStore, {
  19. rules: [],
  20. }),
  21. permissions: types.optional(PermissionsStore, {
  22. fetching: false,
  23. items: [],
  24. }),
  25. view: types.optional(ViewStore, {
  26. path: '',
  27. query: {},
  28. routeParams: {},
  29. }),
  30. folder: types.optional(FolderStore, {}),
  31. teams: types.optional(TeamsStore, {
  32. map: {},
  33. }),
  34. });
  35. type RootStoreType = typeof RootStore.Type;
  36. export interface RootStoreInterface extends RootStoreType {}