From d6942bffab68ce80d5cb26b42710dd9276f62ded Mon Sep 17 00:00:00 2001 From: Paul Frazee Date: Thu, 9 Jun 2022 13:03:25 -0500 Subject: Add state management --- src/state/models/root-store.ts | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 src/state/models/root-store.ts (limited to 'src/state/models') diff --git a/src/state/models/root-store.ts b/src/state/models/root-store.ts new file mode 100644 index 000000000..164dfcced --- /dev/null +++ b/src/state/models/root-store.ts @@ -0,0 +1,16 @@ +/** + * The root store is the base of all modeled state. + */ + +import {Instance, SnapshotOut, types} from 'mobx-state-tree' +import {createContext, useContext} from 'react' + +export const RootStoreModel = types.model('RootStore').props({}) + +export interface RootStore extends Instance {} +export interface RootStoreSnapshot extends SnapshotOut {} + +// react context & hook utilities +const RootStoreContext = createContext({} as RootStore) +export const RootStoreProvider = RootStoreContext.Provider +export const useStores = () => useContext(RootStoreContext) -- cgit 1.4.1