@apia/store 3.0.1 → 3.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,12 +1,69 @@
1
1
  import * as react from 'react';
2
+ import { ReactNode } from 'react';
2
3
  import * as redux from 'redux';
3
4
  import * as store from 'react-redux';
5
+ import { EqualityFn } from 'react-redux';
4
6
  export { shallowEqual } from 'react-redux';
5
7
  export { Draft } from 'immer';
6
- import * as _reduxjs_toolkit from '@reduxjs/toolkit';
7
- export { _reduxjs_toolkit as reduxjsToolkit };
8
+ import { Action, AnyAction, StoreEnhancer, ReducersMapObject, EnhancedStore, ThunkMiddleware, ImmutableStateInvariantMiddlewareOptions, SerializableStateInvariantMiddlewareOptions, Dispatch, MiddlewareAPI } from '@reduxjs/toolkit';
9
+ import * as toolkit from '@reduxjs/toolkit';
10
+ export { toolkit as reduxjsToolkit };
8
11
  export { AnyAction, CaseReducer, PayloadAction, Slice, SliceCaseReducers, createSlice } from '@reduxjs/toolkit';
9
- export { StoreProvider, injectReducers } from './store.js';
12
+ import * as react_jsx_runtime from 'react/jsx-runtime';
13
+
14
+ type TypedUseSelectorHook<TState> = <TSelected>(selector: (state: TState) => TSelected, equalityFn?: EqualityFn<TSelected>) => TSelected;
15
+ /**
16
+ * Esta función permite agregar reducers al store en forma dinámica.
17
+ *
18
+ * @example
19
+ *
20
+ import { injectReducers, createSlice } from '@apia/store';
21
+
22
+ const slice = createSlice({
23
+ name: 'holaMundo',
24
+ initialState: {
25
+ hola: 'mundo',
26
+ } as { hola: string },
27
+ reducers: {
28
+ updateMundo(state) {
29
+ state.hola = 'world';
30
+ },
31
+ },
32
+ });
33
+
34
+ const store = injectReducers({
35
+ holaMundo: slice.reducer,
36
+ });
37
+
38
+ store.dispatch(slice.actions.updateMundo());
39
+
40
+ // Ahora el store dice hola: 'world'
41
+ */
42
+ type Enhancers = readonly StoreEnhancer[];
43
+ interface ThunkOptions<E = any> {
44
+ extraArgument: E;
45
+ }
46
+ interface GetDefaultMiddlewareOptions {
47
+ thunk?: boolean | ThunkOptions;
48
+ immutableCheck?: boolean | ImmutableStateInvariantMiddlewareOptions;
49
+ serializableCheck?: boolean | SerializableStateInvariantMiddlewareOptions;
50
+ }
51
+ type ThunkMiddlewareFor<S, O extends GetDefaultMiddlewareOptions = {}> = O extends {
52
+ thunk: false;
53
+ } ? never : O extends {
54
+ thunk: {
55
+ extraArgument: infer E;
56
+ };
57
+ } ? ThunkMiddleware<S, AnyAction, E> : ThunkMiddleware<S>;
58
+ type Middleware<S = any, D extends Dispatch = Dispatch> = (api: MiddlewareAPI<D, S>) => (next: Dispatch) => (action: any) => any;
59
+ type Middlewares<S> = readonly Middleware<S>[];
60
+ declare function injectReducers<S, A extends Action = AnyAction, M extends Middlewares<S> = [ThunkMiddlewareFor<S>], E extends Enhancers = [StoreEnhancer]>(reducers: ReducersMapObject<S, A>): {
61
+ store: EnhancedStore<S, A, M, E>;
62
+ useSelector: TypedUseSelectorHook<S>;
63
+ };
64
+ declare const StoreProvider: ({ children }: {
65
+ children: ReactNode;
66
+ }) => react_jsx_runtime.JSX.Element;
10
67
 
11
68
  declare const reactRedux: {
12
69
  batch: typeof store.batch;
@@ -21,5 +78,5 @@ declare const reactRedux: {
21
78
  shallowEqual: typeof store.shallowEqual;
22
79
  };
23
80
 
24
- export { reactRedux };
81
+ export { StoreProvider, injectReducers, reactRedux };
25
82
  //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -1,14 +1,50 @@
1
- import * as store from 'react-redux';
1
+ import * as store$1 from 'react-redux';
2
+ import { Provider, useSelector } from 'react-redux';
2
3
  export { shallowEqual } from 'react-redux';
4
+ import { configureStore, combineReducers, createSlice } from '@reduxjs/toolkit';
3
5
  import * as toolkit from '@reduxjs/toolkit';
4
6
  export { toolkit as reduxjsToolkit };
5
7
  export { createSlice } from '@reduxjs/toolkit';
6
- export { StoreProvider, injectReducers } from './store.js';
8
+ import { jsx } from 'react/jsx-runtime';
7
9
 
8
- const { useSelector: nomatter, ...reactReduxRest } = store;
10
+ const injectedReducers = {};
11
+ const store = configureStore({
12
+ middleware: (getDefaultMiddleware) => getDefaultMiddleware({
13
+ serializableCheck: false,
14
+ immutableCheck: false
15
+ }),
16
+ devTools: false,
17
+ reducer: combineReducers({
18
+ defaultSlice: createSlice({
19
+ name: "defaultSlice",
20
+ initialState: {},
21
+ reducers: {
22
+ update() {
23
+ }
24
+ }
25
+ }).reducer
26
+ })
27
+ });
28
+ function injectReducers(reducers) {
29
+ Object.entries(reducers).forEach(([name, value]) => {
30
+ injectedReducers[name] = value;
31
+ });
32
+ const newReducer = combineReducers(injectedReducers);
33
+ store.replaceReducer(newReducer);
34
+ const newUseSelector = useSelector;
35
+ return {
36
+ store,
37
+ useSelector: newUseSelector
38
+ };
39
+ }
40
+ const StoreProvider = ({ children }) => {
41
+ return /* @__PURE__ */ jsx(Provider, { store, children });
42
+ };
43
+
44
+ const { useSelector: nomatter, ...reactReduxRest } = store$1;
9
45
  const reactRedux = {
10
46
  ...reactReduxRest
11
47
  };
12
48
 
13
- export { reactRedux };
49
+ export { StoreProvider, injectReducers, reactRedux };
14
50
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":["/* eslint-disable no-restricted-imports */\n/* eslint-disable @typescript-eslint/no-unused-vars */\n\nimport * as store from 'react-redux';\n\nconst { useSelector: nomatter, ...reactReduxRest } = store;\nexport const reactRedux = {\n ...reactReduxRest,\n};\n\nexport type { Draft } from 'immer';\n\nexport { createSlice } from '@reduxjs/toolkit';\n\nexport type {\n PayloadAction,\n AnyAction,\n CaseReducer,\n SliceCaseReducers,\n Slice,\n} from '@reduxjs/toolkit';\n\nexport { shallowEqual } from 'react-redux';\n\nexport { StoreProvider, injectReducers } from './store';\n\nexport * as reduxjsToolkit from '@reduxjs/toolkit';\n"],"names":[],"mappings":";;;;;;;AAKA,MAAM,EAAE,WAAA,EAAa,QAAU,EAAA,GAAG,gBAAmB,GAAA,KAAA,CAAA;AAC9C,MAAM,UAAa,GAAA;AAAA,EACxB,GAAG,cAAA;AACL;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../src/store.tsx","../src/index.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/ban-types */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport {\n configureStore,\n combineReducers,\n Reducer,\n Action,\n AnyAction,\n ReducersMapObject,\n createSlice,\n EnhancedStore,\n Dispatch,\n MiddlewareAPI,\n StoreEnhancer,\n SerializableStateInvariantMiddlewareOptions,\n ImmutableStateInvariantMiddlewareOptions,\n ThunkMiddleware,\n} from '@reduxjs/toolkit';\nimport { ReactNode } from 'react';\nimport { EqualityFn, Provider, useSelector } from 'react-redux';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst injectedReducers: ReducersMapObject<any, any> = {};\n\nconst store = configureStore({\n middleware: (getDefaultMiddleware) =>\n getDefaultMiddleware({\n serializableCheck: false,\n immutableCheck: false,\n }),\n devTools: false,\n reducer: combineReducers({\n defaultSlice: createSlice({\n name: 'defaultSlice',\n initialState: {},\n reducers: {\n update() {},\n },\n }).reducer,\n }),\n});\n\ntype TypedUseSelectorHook<TState> = <TSelected>(\n selector: (state: TState) => TSelected,\n equalityFn?: EqualityFn<TSelected>,\n) => TSelected;\n\n/**\n * Esta función permite agregar reducers al store en forma dinámica.\n *\n * @example\n *\n import { injectReducers, createSlice } from '@apia/store';\n\n const slice = createSlice({\n name: 'holaMundo',\n initialState: {\n hola: 'mundo',\n } as { hola: string },\n reducers: {\n updateMundo(state) {\n state.hola = 'world';\n },\n },\n });\n\n const store = injectReducers({\n holaMundo: slice.reducer,\n });\n\n store.dispatch(slice.actions.updateMundo());\n\n // Ahora el store dice hola: 'world'\n */\ntype Enhancers = readonly StoreEnhancer[];\ninterface ThunkOptions<E = any> {\n extraArgument: E;\n}\ninterface GetDefaultMiddlewareOptions {\n thunk?: boolean | ThunkOptions;\n immutableCheck?: boolean | ImmutableStateInvariantMiddlewareOptions;\n serializableCheck?: boolean | SerializableStateInvariantMiddlewareOptions;\n}\n\ntype ThunkMiddlewareFor<\n S,\n O extends GetDefaultMiddlewareOptions = {},\n> = O extends {\n thunk: false;\n}\n ? never\n : O extends {\n thunk: {\n extraArgument: infer E;\n };\n }\n ? ThunkMiddleware<S, AnyAction, E>\n : ThunkMiddleware<S>;\n\nexport type Middleware<S = any, D extends Dispatch = Dispatch> = (\n api: MiddlewareAPI<D, S>,\n) => (next: Dispatch) => (action: any) => any;\ntype Middlewares<S> = readonly Middleware<S>[];\n\nexport function injectReducers<\n S,\n A extends Action = AnyAction,\n M extends Middlewares<S> = [ThunkMiddlewareFor<S>],\n E extends Enhancers = [StoreEnhancer],\n>(reducers: ReducersMapObject<S, A>) {\n Object.entries(reducers).forEach(([name, value]) => {\n injectedReducers[name] = value as Reducer;\n });\n\n const newReducer = combineReducers(injectedReducers);\n store.replaceReducer(newReducer);\n const newUseSelector: TypedUseSelectorHook<S> = useSelector;\n\n return {\n store: store as EnhancedStore<S, A, M, E>,\n useSelector: newUseSelector,\n };\n}\n\nexport const StoreProvider = ({ children }: { children: ReactNode }) => {\n return <Provider store={store}>{children}</Provider>;\n};\n","/* eslint-disable no-restricted-imports */\n/* eslint-disable @typescript-eslint/no-unused-vars */\n\nimport * as store from 'react-redux';\n\nconst { useSelector: nomatter, ...reactReduxRest } = store;\nexport const reactRedux = {\n ...reactReduxRest,\n};\n\nexport type { Draft } from 'immer';\n\nexport { createSlice } from '@reduxjs/toolkit';\n\nexport type {\n PayloadAction,\n AnyAction,\n CaseReducer,\n SliceCaseReducers,\n Slice,\n} from '@reduxjs/toolkit';\n\nexport { shallowEqual } from 'react-redux';\n\nexport { StoreProvider, injectReducers } from './store';\n\nexport * as reduxjsToolkit from '@reduxjs/toolkit';\n"],"names":["store"],"mappings":";;;;;;;;;AAsBA,MAAM,mBAAgD,EAAC,CAAA;AAEvD,MAAM,QAAQ,cAAe,CAAA;AAAA,EAC3B,UAAA,EAAY,CAAC,oBAAA,KACX,oBAAqB,CAAA;AAAA,IACnB,iBAAmB,EAAA,KAAA;AAAA,IACnB,cAAgB,EAAA,KAAA;AAAA,GACjB,CAAA;AAAA,EACH,QAAU,EAAA,KAAA;AAAA,EACV,SAAS,eAAgB,CAAA;AAAA,IACvB,cAAc,WAAY,CAAA;AAAA,MACxB,IAAM,EAAA,cAAA;AAAA,MACN,cAAc,EAAC;AAAA,MACf,QAAU,EAAA;AAAA,QACR,MAAS,GAAA;AAAA,SAAC;AAAA,OACZ;AAAA,KACD,CAAE,CAAA,OAAA;AAAA,GACJ,CAAA;AACH,CAAC,CAAA,CAAA;AAgEM,SAAS,eAKd,QAAmC,EAAA;AACnC,EAAO,MAAA,CAAA,OAAA,CAAQ,QAAQ,CAAE,CAAA,OAAA,CAAQ,CAAC,CAAC,IAAA,EAAM,KAAK,CAAM,KAAA;AAClD,IAAA,gBAAA,CAAiB,IAAI,CAAI,GAAA,KAAA,CAAA;AAAA,GAC1B,CAAA,CAAA;AAED,EAAM,MAAA,UAAA,GAAa,gBAAgB,gBAAgB,CAAA,CAAA;AACnD,EAAA,KAAA,CAAM,eAAe,UAAU,CAAA,CAAA;AAC/B,EAAA,MAAM,cAA0C,GAAA,WAAA,CAAA;AAEhD,EAAO,OAAA;AAAA,IACL,KAAA;AAAA,IACA,WAAa,EAAA,cAAA;AAAA,GACf,CAAA;AACF,CAAA;AAEO,MAAM,aAAgB,GAAA,CAAC,EAAE,QAAA,EAAwC,KAAA;AACtE,EAAO,uBAAA,GAAA,CAAC,QAAS,EAAA,EAAA,KAAA,EAAe,QAAS,EAAA,CAAA,CAAA;AAC3C;;ACzHA,MAAM,EAAE,WAAA,EAAa,QAAU,EAAA,GAAG,gBAAmB,GAAAA,OAAA,CAAA;AAC9C,MAAM,UAAa,GAAA;AAAA,EACxB,GAAG,cAAA;AACL;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apia/store",
3
- "version": "3.0.1",
3
+ "version": "3.0.6",
4
4
  "sideEffects": false,
5
5
  "author": "Alexis Leite <alexisleite@live.com>",
6
6
  "main": "dist/index.js",
@@ -34,5 +34,5 @@
34
34
  "access": "public",
35
35
  "registry": "https://registry.npmjs.org/"
36
36
  },
37
- "gitHead": "1fc338a96b6dc90632052f9bd032992f6aedb6a6"
37
+ "gitHead": "964a51f08ff5c0da7568511abe73b48a67f70dc5"
38
38
  }
package/dist/store.d.ts DELETED
@@ -1,61 +0,0 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { Action, AnyAction, StoreEnhancer, ReducersMapObject, EnhancedStore, ThunkMiddleware, ImmutableStateInvariantMiddlewareOptions, SerializableStateInvariantMiddlewareOptions, Dispatch, MiddlewareAPI } from '@reduxjs/toolkit';
3
- import { ReactNode } from 'react';
4
- import { EqualityFn } from 'react-redux';
5
-
6
- type TypedUseSelectorHook<TState> = <TSelected>(selector: (state: TState) => TSelected, equalityFn?: EqualityFn<TSelected>) => TSelected;
7
- /**
8
- * Esta función permite agregar reducers al store en forma dinámica.
9
- *
10
- * @example
11
- *
12
- import { injectReducers, createSlice } from '@apia/store';
13
-
14
- const slice = createSlice({
15
- name: 'holaMundo',
16
- initialState: {
17
- hola: 'mundo',
18
- } as { hola: string },
19
- reducers: {
20
- updateMundo(state) {
21
- state.hola = 'world';
22
- },
23
- },
24
- });
25
-
26
- const store = injectReducers({
27
- holaMundo: slice.reducer,
28
- });
29
-
30
- store.dispatch(slice.actions.updateMundo());
31
-
32
- // Ahora el store dice hola: 'world'
33
- */
34
- type Enhancers = readonly StoreEnhancer[];
35
- interface ThunkOptions<E = any> {
36
- extraArgument: E;
37
- }
38
- interface GetDefaultMiddlewareOptions {
39
- thunk?: boolean | ThunkOptions;
40
- immutableCheck?: boolean | ImmutableStateInvariantMiddlewareOptions;
41
- serializableCheck?: boolean | SerializableStateInvariantMiddlewareOptions;
42
- }
43
- type ThunkMiddlewareFor<S, O extends GetDefaultMiddlewareOptions = {}> = O extends {
44
- thunk: false;
45
- } ? never : O extends {
46
- thunk: {
47
- extraArgument: infer E;
48
- };
49
- } ? ThunkMiddleware<S, AnyAction, E> : ThunkMiddleware<S>;
50
- type Middleware<S = any, D extends Dispatch = Dispatch> = (api: MiddlewareAPI<D, S>) => (next: Dispatch) => (action: any) => any;
51
- type Middlewares<S> = readonly Middleware<S>[];
52
- declare function injectReducers<S, A extends Action = AnyAction, M extends Middlewares<S> = [ThunkMiddlewareFor<S>], E extends Enhancers = [StoreEnhancer]>(reducers: ReducersMapObject<S, A>): {
53
- store: EnhancedStore<S, A, M, E>;
54
- useSelector: TypedUseSelectorHook<S>;
55
- };
56
- declare const StoreProvider: ({ children }: {
57
- children: ReactNode;
58
- }) => react_jsx_runtime.JSX.Element;
59
-
60
- export { type Middleware, StoreProvider, injectReducers };
61
- //# sourceMappingURL=store.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"store.d.ts","sources":[],"sourcesContent":[],"names":[],"mappings":""}
package/dist/store.js DELETED
@@ -1,65 +0,0 @@
1
- import { jsx } from 'react/jsx-runtime';
2
- import { configureStore, combineReducers, createSlice } from '@reduxjs/toolkit';
3
- import { Provider, useSelector } from 'react-redux';
4
-
5
- const injectedReducers = {};
6
- const store = configureStore({
7
- devTools: {
8
- actionSanitizer: (action) => {
9
- if ([
10
- "responsiveTableSlice/handleKey",
11
- "responsiveTableSlice/update",
12
- "responsiveTableSlice/addRows"
13
- ].includes(action.type))
14
- return {
15
- ...action,
16
- payload: `Sanitized due to performance ${action.type}`
17
- };
18
- return action;
19
- }
20
- },
21
- middleware: (defaultMiddleWare) => {
22
- return defaultMiddleWare({
23
- immutableCheck: {
24
- ignoredPaths: ["responsiveTableSlice"]
25
- },
26
- serializableCheck: {
27
- ignoredPaths: ["responsiveTableSlice", "panelsSlice"],
28
- ignoredActions: [
29
- "responsiveTableSlice/handleKey",
30
- "responsiveTableSlice/update",
31
- "responsiveTableSlice/addRows",
32
- "panelsSlice/updatePanelStore"
33
- ]
34
- }
35
- });
36
- },
37
- reducer: combineReducers({
38
- defaultSlice: createSlice({
39
- name: "defaultSlice",
40
- initialState: {},
41
- reducers: {
42
- update() {
43
- }
44
- }
45
- }).reducer
46
- })
47
- });
48
- function injectReducers(reducers) {
49
- Object.entries(reducers).forEach(([name, value]) => {
50
- injectedReducers[name] = value;
51
- });
52
- const newReducer = combineReducers(injectedReducers);
53
- store.replaceReducer(newReducer);
54
- const newUseSelector = useSelector;
55
- return {
56
- store,
57
- useSelector: newUseSelector
58
- };
59
- }
60
- const StoreProvider = ({ children }) => {
61
- return /* @__PURE__ */ jsx(Provider, { store, children });
62
- };
63
-
64
- export { StoreProvider, injectReducers, store };
65
- //# sourceMappingURL=store.js.map
package/dist/store.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"store.js","sources":["../src/store.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/ban-types */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport {\n configureStore,\n combineReducers,\n Reducer,\n Action,\n AnyAction,\n ReducersMapObject,\n createSlice,\n EnhancedStore,\n Dispatch,\n MiddlewareAPI,\n StoreEnhancer,\n SerializableStateInvariantMiddlewareOptions,\n ImmutableStateInvariantMiddlewareOptions,\n ThunkMiddleware,\n} from '@reduxjs/toolkit';\nimport { ReactNode } from 'react';\nimport { EqualityFn, Provider, useSelector } from 'react-redux';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst injectedReducers: ReducersMapObject<any, any> = {};\n\nexport const store = configureStore({\n devTools: {\n actionSanitizer: (action) => {\n if (\n [\n 'responsiveTableSlice/handleKey',\n 'responsiveTableSlice/update',\n 'responsiveTableSlice/addRows',\n ].includes(action.type as string)\n )\n return {\n ...action,\n payload: `Sanitized due to performance ${action.type as string}`,\n };\n return action;\n },\n },\n middleware: (defaultMiddleWare) => {\n return defaultMiddleWare({\n immutableCheck: {\n ignoredPaths: ['responsiveTableSlice'],\n },\n serializableCheck: {\n ignoredPaths: ['responsiveTableSlice', 'panelsSlice'],\n ignoredActions: [\n 'responsiveTableSlice/handleKey',\n 'responsiveTableSlice/update',\n 'responsiveTableSlice/addRows',\n 'panelsSlice/updatePanelStore',\n ],\n },\n });\n },\n reducer: combineReducers({\n defaultSlice: createSlice({\n name: 'defaultSlice',\n initialState: {},\n reducers: {\n update() {},\n },\n }).reducer,\n }),\n});\n\ntype TypedUseSelectorHook<TState> = <TSelected>(\n selector: (state: TState) => TSelected,\n equalityFn?: EqualityFn<TSelected>,\n) => TSelected;\n\n/**\n * Esta función permite agregar reducers al store en forma dinámica.\n *\n * @example\n *\n import { injectReducers, createSlice } from '@apia/store';\n\n const slice = createSlice({\n name: 'holaMundo',\n initialState: {\n hola: 'mundo',\n } as { hola: string },\n reducers: {\n updateMundo(state) {\n state.hola = 'world';\n },\n },\n });\n\n const store = injectReducers({\n holaMundo: slice.reducer,\n });\n\n store.dispatch(slice.actions.updateMundo());\n\n // Ahora el store dice hola: 'world'\n */\ntype Enhancers = readonly StoreEnhancer[];\ninterface ThunkOptions<E = any> {\n extraArgument: E;\n}\ninterface GetDefaultMiddlewareOptions {\n thunk?: boolean | ThunkOptions;\n immutableCheck?: boolean | ImmutableStateInvariantMiddlewareOptions;\n serializableCheck?: boolean | SerializableStateInvariantMiddlewareOptions;\n}\n\ntype ThunkMiddlewareFor<\n S,\n O extends GetDefaultMiddlewareOptions = {},\n> = O extends {\n thunk: false;\n}\n ? never\n : O extends {\n thunk: {\n extraArgument: infer E;\n };\n }\n ? ThunkMiddleware<S, AnyAction, E>\n : ThunkMiddleware<S>;\n\nexport type Middleware<S = any, D extends Dispatch = Dispatch> = (\n api: MiddlewareAPI<D, S>,\n) => (next: Dispatch) => (action: any) => any;\ntype Middlewares<S> = readonly Middleware<S>[];\n\nexport function injectReducers<\n S,\n A extends Action = AnyAction,\n M extends Middlewares<S> = [ThunkMiddlewareFor<S>],\n E extends Enhancers = [StoreEnhancer],\n>(reducers: ReducersMapObject<S, A>) {\n Object.entries(reducers).forEach(([name, value]) => {\n injectedReducers[name] = value as Reducer;\n });\n\n const newReducer = combineReducers(injectedReducers);\n store.replaceReducer(newReducer);\n const newUseSelector: TypedUseSelectorHook<S> = useSelector;\n\n return {\n store: store as EnhancedStore<S, A, M, E>,\n useSelector: newUseSelector,\n };\n}\n\nexport const StoreProvider = ({ children }: { children: ReactNode }) => {\n return <Provider store={store}>{children}</Provider>;\n};\n"],"names":[],"mappings":";;;;AAsBA,MAAM,mBAAgD,EAAC,CAAA;AAEhD,MAAM,QAAQ,cAAe,CAAA;AAAA,EAClC,QAAU,EAAA;AAAA,IACR,eAAA,EAAiB,CAAC,MAAW,KAAA;AAC3B,MACE,IAAA;AAAA,QACE,gCAAA;AAAA,QACA,6BAAA;AAAA,QACA,8BAAA;AAAA,OACF,CAAE,QAAS,CAAA,MAAA,CAAO,IAAc,CAAA;AAEhC,QAAO,OAAA;AAAA,UACL,GAAG,MAAA;AAAA,UACH,OAAA,EAAS,CAAgC,6BAAA,EAAA,MAAA,CAAO,IAAc,CAAA,CAAA;AAAA,SAChE,CAAA;AACF,MAAO,OAAA,MAAA,CAAA;AAAA,KACT;AAAA,GACF;AAAA,EACA,UAAA,EAAY,CAAC,iBAAsB,KAAA;AACjC,IAAA,OAAO,iBAAkB,CAAA;AAAA,MACvB,cAAgB,EAAA;AAAA,QACd,YAAA,EAAc,CAAC,sBAAsB,CAAA;AAAA,OACvC;AAAA,MACA,iBAAmB,EAAA;AAAA,QACjB,YAAA,EAAc,CAAC,sBAAA,EAAwB,aAAa,CAAA;AAAA,QACpD,cAAgB,EAAA;AAAA,UACd,gCAAA;AAAA,UACA,6BAAA;AAAA,UACA,8BAAA;AAAA,UACA,8BAAA;AAAA,SACF;AAAA,OACF;AAAA,KACD,CAAA,CAAA;AAAA,GACH;AAAA,EACA,SAAS,eAAgB,CAAA;AAAA,IACvB,cAAc,WAAY,CAAA;AAAA,MACxB,IAAM,EAAA,cAAA;AAAA,MACN,cAAc,EAAC;AAAA,MACf,QAAU,EAAA;AAAA,QACR,MAAS,GAAA;AAAA,SAAC;AAAA,OACZ;AAAA,KACD,CAAE,CAAA,OAAA;AAAA,GACJ,CAAA;AACH,CAAC,EAAA;AAgEM,SAAS,eAKd,QAAmC,EAAA;AACnC,EAAO,MAAA,CAAA,OAAA,CAAQ,QAAQ,CAAE,CAAA,OAAA,CAAQ,CAAC,CAAC,IAAA,EAAM,KAAK,CAAM,KAAA;AAClD,IAAA,gBAAA,CAAiB,IAAI,CAAI,GAAA,KAAA,CAAA;AAAA,GAC1B,CAAA,CAAA;AAED,EAAM,MAAA,UAAA,GAAa,gBAAgB,gBAAgB,CAAA,CAAA;AACnD,EAAA,KAAA,CAAM,eAAe,UAAU,CAAA,CAAA;AAC/B,EAAA,MAAM,cAA0C,GAAA,WAAA,CAAA;AAEhD,EAAO,OAAA;AAAA,IACL,KAAA;AAAA,IACA,WAAa,EAAA,cAAA;AAAA,GACf,CAAA;AACF,CAAA;AAEO,MAAM,aAAgB,GAAA,CAAC,EAAE,QAAA,EAAwC,KAAA;AACtE,EAAO,uBAAA,GAAA,CAAC,QAAS,EAAA,EAAA,KAAA,EAAe,QAAS,EAAA,CAAA,CAAA;AAC3C;;;;"}