@tamagui/use-store 1.15.40
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/README.md +91 -0
- package/dist/cjs/Store.js +99 -0
- package/dist/cjs/Store.js.map +6 -0
- package/dist/cjs/comparators.js +45 -0
- package/dist/cjs/comparators.js.map +6 -0
- package/dist/cjs/configureUseStore.js +34 -0
- package/dist/cjs/configureUseStore.js.map +6 -0
- package/dist/cjs/constants.js +35 -0
- package/dist/cjs/constants.js.map +6 -0
- package/dist/cjs/decorators.js +34 -0
- package/dist/cjs/decorators.js.map +6 -0
- package/dist/cjs/fastCompare.js +168 -0
- package/dist/cjs/fastCompare.js.map +6 -0
- package/dist/cjs/helpers.js +101 -0
- package/dist/cjs/helpers.js.map +6 -0
- package/dist/cjs/index.js +47 -0
- package/dist/cjs/index.js.map +6 -0
- package/dist/cjs/interfaces.js +17 -0
- package/dist/cjs/interfaces.js.map +6 -0
- package/dist/cjs/reaction.js +78 -0
- package/dist/cjs/reaction.js.map +6 -0
- package/dist/cjs/selector.js +139 -0
- package/dist/cjs/selector.js.map +6 -0
- package/dist/cjs/useStore.js +534 -0
- package/dist/cjs/useStore.js.map +6 -0
- package/dist/cjs/useStoreDebug.js +73 -0
- package/dist/cjs/useStoreDebug.js.map +6 -0
- package/dist/esm/Store.js +69 -0
- package/dist/esm/Store.js.map +6 -0
- package/dist/esm/Store.mjs +69 -0
- package/dist/esm/Store.mjs.map +6 -0
- package/dist/esm/comparators.js +21 -0
- package/dist/esm/comparators.js.map +6 -0
- package/dist/esm/comparators.mjs +21 -0
- package/dist/esm/comparators.mjs.map +6 -0
- package/dist/esm/configureUseStore.js +9 -0
- package/dist/esm/configureUseStore.js.map +6 -0
- package/dist/esm/configureUseStore.mjs +9 -0
- package/dist/esm/configureUseStore.mjs.map +6 -0
- package/dist/esm/constants.js +10 -0
- package/dist/esm/constants.js.map +6 -0
- package/dist/esm/constants.mjs +10 -0
- package/dist/esm/constants.mjs.map +6 -0
- package/dist/esm/decorators.js +10 -0
- package/dist/esm/decorators.js.map +6 -0
- package/dist/esm/decorators.mjs +10 -0
- package/dist/esm/decorators.mjs.map +6 -0
- package/dist/esm/fastCompare.js +143 -0
- package/dist/esm/fastCompare.js.map +6 -0
- package/dist/esm/fastCompare.mjs +143 -0
- package/dist/esm/fastCompare.mjs.map +6 -0
- package/dist/esm/helpers.js +70 -0
- package/dist/esm/helpers.js.map +6 -0
- package/dist/esm/helpers.mjs +70 -0
- package/dist/esm/helpers.mjs.map +6 -0
- package/dist/esm/index.js +14 -0
- package/dist/esm/index.js.map +6 -0
- package/dist/esm/index.mjs +14 -0
- package/dist/esm/index.mjs.map +6 -0
- package/dist/esm/interfaces.js +1 -0
- package/dist/esm/interfaces.js.map +6 -0
- package/dist/esm/interfaces.mjs +1 -0
- package/dist/esm/interfaces.mjs.map +6 -0
- package/dist/esm/reaction.js +53 -0
- package/dist/esm/reaction.js.map +6 -0
- package/dist/esm/reaction.mjs +53 -0
- package/dist/esm/reaction.mjs.map +6 -0
- package/dist/esm/selector.js +114 -0
- package/dist/esm/selector.js.map +6 -0
- package/dist/esm/selector.mjs +114 -0
- package/dist/esm/selector.mjs.map +6 -0
- package/dist/esm/useStore.js +516 -0
- package/dist/esm/useStore.js.map +6 -0
- package/dist/esm/useStore.mjs +516 -0
- package/dist/esm/useStore.mjs.map +6 -0
- package/dist/esm/useStoreDebug.js +35 -0
- package/dist/esm/useStoreDebug.js.map +6 -0
- package/dist/esm/useStoreDebug.mjs +35 -0
- package/dist/esm/useStoreDebug.mjs.map +6 -0
- package/package.json +44 -0
- package/src/Store.tsx +77 -0
- package/src/comparators.tsx +18 -0
- package/src/configureUseStore.tsx +7 -0
- package/src/constants.tsx +6 -0
- package/src/decorators.tsx +8 -0
- package/src/helpers.tsx +87 -0
- package/src/index.ts +9 -0
- package/src/interfaces.tsx +32 -0
- package/src/reaction.tsx +109 -0
- package/src/selector.tsx +129 -0
- package/src/useStore.tsx +705 -0
- package/src/useStoreDebug.tsx +40 -0
- package/types/Store.d.ts +28 -0
- package/types/Store.d.ts.map +1 -0
- package/types/comparators.d.ts +6 -0
- package/types/comparators.d.ts.map +1 -0
- package/types/configureUseStore.d.ts +4 -0
- package/types/configureUseStore.d.ts.map +1 -0
- package/types/constants.d.ts +6 -0
- package/types/constants.d.ts.map +1 -0
- package/types/decorators.d.ts +3 -0
- package/types/decorators.d.ts.map +1 -0
- package/types/fastCompare.d.ts +13 -0
- package/types/fastCompare.d.ts.map +1 -0
- package/types/helpers.d.ts +13 -0
- package/types/helpers.d.ts.map +1 -0
- package/types/index.d.ts +10 -0
- package/types/index.d.ts.map +1 -0
- package/types/interfaces.d.ts +30 -0
- package/types/interfaces.d.ts.map +1 -0
- package/types/reaction.d.ts +4 -0
- package/types/reaction.d.ts.map +1 -0
- package/types/selector.d.ts +3 -0
- package/types/selector.d.ts.map +1 -0
- package/types/useStore.d.ts +18 -0
- package/types/useStore.d.ts.map +1 -0
- package/types/useStoreDebug.d.ts +7 -0
- package/types/useStoreDebug.d.ts.map +1 -0
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import React, { useLayoutEffect } from 'react'
|
|
2
|
+
|
|
3
|
+
import { StoreInfo } from './interfaces'
|
|
4
|
+
|
|
5
|
+
const { ReactCurrentOwner } = (React as any)
|
|
6
|
+
.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED
|
|
7
|
+
export const useCurrentComponent = () => {
|
|
8
|
+
return ReactCurrentOwner &&
|
|
9
|
+
ReactCurrentOwner.current &&
|
|
10
|
+
ReactCurrentOwner.current.elementType
|
|
11
|
+
? ReactCurrentOwner.current.elementType
|
|
12
|
+
: {}
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export function useDebugStoreComponent(StoreCons: any) {
|
|
16
|
+
const cmp = useCurrentComponent()
|
|
17
|
+
|
|
18
|
+
// add in outer loop to pickup immediately
|
|
19
|
+
DebugStores.add(StoreCons)
|
|
20
|
+
if (!DebugComponents.has(cmp)) {
|
|
21
|
+
DebugComponents.set(cmp, new Set())
|
|
22
|
+
}
|
|
23
|
+
const stores = DebugComponents.get(cmp)!
|
|
24
|
+
stores.add(StoreCons)
|
|
25
|
+
|
|
26
|
+
useLayoutEffect(() => {
|
|
27
|
+
return () => {
|
|
28
|
+
DebugStores.delete(StoreCons)
|
|
29
|
+
stores.delete(StoreCons)
|
|
30
|
+
}
|
|
31
|
+
}, [])
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export const shouldDebug = (component: any, info: Pick<StoreInfo, 'storeInstance'>) => {
|
|
35
|
+
const StoreCons = info.storeInstance?.constructor
|
|
36
|
+
return DebugComponents.get(component)?.has(StoreCons)
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export const DebugComponents = new Map<any, Set<any>>()
|
|
40
|
+
export const DebugStores = new Set<any>()
|
package/types/Store.d.ts
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export declare const TRIGGER_UPDATE: unique symbol;
|
|
2
|
+
export declare const ADD_TRACKER: unique symbol;
|
|
3
|
+
export declare const TRACK: unique symbol;
|
|
4
|
+
export declare const SHOULD_DEBUG: unique symbol;
|
|
5
|
+
export type StoreTracker = {
|
|
6
|
+
isTracking: boolean;
|
|
7
|
+
tracked: Set<string>;
|
|
8
|
+
dispose: () => void;
|
|
9
|
+
component?: any;
|
|
10
|
+
firstRun: boolean;
|
|
11
|
+
last?: any;
|
|
12
|
+
lastKeys?: any;
|
|
13
|
+
};
|
|
14
|
+
export declare const disableTracking: WeakMap<object, any>;
|
|
15
|
+
export declare const setDisableStoreTracking: (storeInstance: any, val: boolean) => void;
|
|
16
|
+
export declare class Store<Props extends Object = {}> {
|
|
17
|
+
props: Props;
|
|
18
|
+
private _listeners;
|
|
19
|
+
private _trackers;
|
|
20
|
+
_version: number;
|
|
21
|
+
constructor(props: Props);
|
|
22
|
+
subscribe: (onChanged: Function) => () => void;
|
|
23
|
+
[TRIGGER_UPDATE](): void;
|
|
24
|
+
[ADD_TRACKER](tracker: StoreTracker): () => void;
|
|
25
|
+
[TRACK](key: string, debug?: boolean): void;
|
|
26
|
+
[SHOULD_DEBUG](): boolean;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=Store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Store.d.ts","sourceRoot":"","sources":["../src/Store.tsx"],"names":[],"mappings":"AAGA,eAAO,MAAM,cAAc,eAAW,CAAA;AACtC,eAAO,MAAM,WAAW,eAAW,CAAA;AACnC,eAAO,MAAM,KAAK,eAAW,CAAA;AAC7B,eAAO,MAAM,YAAY,eAAW,CAAA;AAEpC,MAAM,MAAM,YAAY,GAAG;IACzB,UAAU,EAAE,OAAO,CAAA;IACnB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IACpB,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,SAAS,CAAC,EAAE,GAAG,CAAA;IACf,QAAQ,EAAE,OAAO,CAAA;IACjB,IAAI,CAAC,EAAE,GAAG,CAAA;IACV,QAAQ,CAAC,EAAE,GAAG,CAAA;CACf,CAAA;AAED,eAAO,MAAM,eAAe,sBAAgB,CAAA;AAE5C,eAAO,MAAM,uBAAuB,kBAAmB,GAAG,OAAO,OAAO,SAGvE,CAAA;AAED,qBAAa,KAAK,CAAC,KAAK,SAAS,MAAM,GAAG,EAAE;IAKvB,KAAK,EAAE,KAAK;IAJ/B,OAAO,CAAC,UAAU,CAAsB;IACxC,OAAO,CAAC,SAAS,CAA0B;IAC3C,QAAQ,SAAI;gBAEO,KAAK,EAAE,KAAK;IAE/B,SAAS,cAAe,QAAQ,gBAK9B;IAEF,CAAC,cAAc,CAAC;IAOhB,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,YAAY;IAOnC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO;IAiBpC,CAAC,YAAY,CAAC;CAMf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comparators.d.ts","sourceRoot":"","sources":["../src/comparators.tsx"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,MAC5B,GAAG,KACH,GAAG;;2BACyC,GAAG,KAAK,GAAG,KAAK,OAAO;;yBAcvE,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configureUseStore.d.ts","sourceRoot":"","sources":["../src/configureUseStore.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAE7C,eAAO,IAAI,aAAa,EAAE,cAAmB,CAAA;AAE7C,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,cAAc,QAErD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.tsx"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,eAAW,CAAA;AAEpC,eAAO,MAAM,cAAc;;;CAG1B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../src/decorators.tsx"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,KAAK,OAAO,CAAA;AAEtD,wBAAgB,OAAO,CAAC,UAAU,EAAE,YAAY,YAC9B,GAAG,eAAe,MAAM,KAAG,GAAG,CAI/C"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export declare const EQUALITY_KEY: unique symbol;
|
|
2
|
+
export type IsEqualOptions = {
|
|
3
|
+
ignoreKeys?: {
|
|
4
|
+
[key: string]: boolean;
|
|
5
|
+
};
|
|
6
|
+
keyComparators?: {
|
|
7
|
+
[key: string]: (a: any, b: any) => boolean;
|
|
8
|
+
};
|
|
9
|
+
log?: boolean;
|
|
10
|
+
maxDepth?: number;
|
|
11
|
+
};
|
|
12
|
+
export declare function isEqual(a: any, b: any, options?: IsEqualOptions): boolean;
|
|
13
|
+
//# sourceMappingURL=fastCompare.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fastCompare.d.ts","sourceRoot":"","sources":["../src/fastCompare.tsx"],"names":[],"mappings":"AAKA,eAAO,MAAM,YAAY,eAAW,CAAA;AAEpC,MAAM,MAAM,cAAc,GAAG;IAC3B,UAAU,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAA;IACvC,cAAc,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,KAAK,OAAO,CAAA;KAAE,CAAA;IAC/D,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,cAAc,WA+B/D"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { StoreInfo } from './interfaces';
|
|
2
|
+
export declare function getStoreUid(Constructor: any, props: string | Object | void): string;
|
|
3
|
+
export declare const UNWRAP_STORE_INFO: unique symbol;
|
|
4
|
+
export declare const cache: Map<string, StoreInfo>;
|
|
5
|
+
export declare function getStoreDescriptors(storeInstance: any): {
|
|
6
|
+
[x: string]: TypedPropertyDescriptor<any> & PropertyDescriptor;
|
|
7
|
+
};
|
|
8
|
+
export declare function get<A>(_: A, b?: any): A extends new (props?: any) => infer B ? B : A;
|
|
9
|
+
export declare function getKey(props: Object): string;
|
|
10
|
+
export default function useConstant<T>(fn: () => T): T;
|
|
11
|
+
export declare function simpleStr(arg: any): any;
|
|
12
|
+
export declare function getStoreDebugInfo(store: any): any;
|
|
13
|
+
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAUxC,wBAAgB,WAAW,CAAC,WAAW,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,UAM1E;AAED,eAAO,MAAM,iBAAiB,eAA8B,CAAA;AAC5D,eAAO,MAAM,KAAK,wBAA+B,CAAA;AAEjD,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,GAAG;;EAWrD;AAED,wBAAgB,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,SAAS,KAAK,KAAK,CAAC,EAAE,GAAG,KAAK,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAEpF;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,UAYnC;AAID,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAMrD;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,GAAG,OAejC;AAGD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,GAAG,OAI3C"}
|
package/types/index.d.ts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export * from './useStore';
|
|
2
|
+
export { configureUseStore } from './configureUseStore';
|
|
3
|
+
export * from './interfaces';
|
|
4
|
+
export * from './selector';
|
|
5
|
+
export * from './reaction';
|
|
6
|
+
export * from './Store';
|
|
7
|
+
export { UNWRAP_PROXY } from './constants';
|
|
8
|
+
export * from './comparators';
|
|
9
|
+
export * from './decorators';
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Store } from './Store';
|
|
2
|
+
export type Selector<A = unknown, B = unknown> = (x: A) => B;
|
|
3
|
+
export type UseStoreSelector<Store, Res> = (store: Store) => Res;
|
|
4
|
+
export type UseStoreOptions<Store = any, SelectorRes = any> = {
|
|
5
|
+
debug?: boolean;
|
|
6
|
+
selector?: UseStoreSelector<Store, SelectorRes>;
|
|
7
|
+
once?: boolean;
|
|
8
|
+
};
|
|
9
|
+
export type StoreInfo<A = Store> = {
|
|
10
|
+
keyComparators?: {
|
|
11
|
+
[key: string]: (a: any, b: any) => boolean;
|
|
12
|
+
};
|
|
13
|
+
store: A;
|
|
14
|
+
storeInstance: any;
|
|
15
|
+
getters: {
|
|
16
|
+
[key: string]: any;
|
|
17
|
+
};
|
|
18
|
+
actions: any;
|
|
19
|
+
stateKeys: string[];
|
|
20
|
+
gettersState: {
|
|
21
|
+
getCache: Map<string, any>;
|
|
22
|
+
depsToGetter: Map<string, Set<string>>;
|
|
23
|
+
curGetKeys: Set<string>;
|
|
24
|
+
isGetting: boolean;
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
export type UseStoreConfig = {
|
|
28
|
+
logLevel?: 'debug' | 'info' | 'error';
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=interfaces.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../src/interfaces.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAE/B,MAAM,MAAM,QAAQ,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAA;AAE5D,MAAM,MAAM,gBAAgB,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,KAAK,GAAG,CAAA;AAChE,MAAM,MAAM,eAAe,CAAC,KAAK,GAAG,GAAG,EAAE,WAAW,GAAG,GAAG,IAAI;IAC5D,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,QAAQ,CAAC,EAAE,gBAAgB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;IAC/C,IAAI,CAAC,EAAE,OAAO,CAAA;CACf,CAAA;AAED,MAAM,MAAM,SAAS,CAAC,CAAC,GAAG,KAAK,IAAI;IACjC,cAAc,CAAC,EAAE;QACf,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,KAAK,OAAO,CAAA;KAC3C,CAAA;IAED,KAAK,EAAE,CAAC,CAAA;IACR,aAAa,EAAE,GAAG,CAAA;IAClB,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAA;IAC/B,OAAO,EAAE,GAAG,CAAA;IACZ,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,YAAY,EAAE;QACZ,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QAC1B,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;QACtC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;QACvB,SAAS,EAAE,OAAO,CAAA;KACnB,CAAA;CACF,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAA;CACtC,CAAA"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Store } from './Store';
|
|
2
|
+
export declare function useReaction<StoreInstance extends Store<any>, Selector extends (a: StoreInstance) => any>(store: StoreInstance, selector: Selector, receiver: Selector extends (a: StoreInstance) => infer Derived ? (a: Derived) => any : unknown, equalityFn?: (a: any, b: any) => boolean, memoArgs?: any[]): () => void;
|
|
3
|
+
export declare function reaction<StoreInstance extends Store<any>, Selector extends (a: StoreInstance) => any>(store: StoreInstance, selector: Selector, receiver: Selector extends (a: StoreInstance) => infer Derived ? (a: Derived) => any : unknown, equalityFn?: (a: any, b: any) => boolean): () => void;
|
|
4
|
+
//# sourceMappingURL=reaction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reaction.d.ts","sourceRoot":"","sources":["../src/reaction.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAS/B,wBAAgB,WAAW,CACzB,aAAa,SAAS,KAAK,CAAC,GAAG,CAAC,EAChC,QAAQ,SAAS,CAAC,CAAC,EAAE,aAAa,KAAK,GAAG,EAE1C,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,SAAS,CAAC,CAAC,EAAE,aAAa,KAAK,MAAM,OAAO,GAC1D,CAAC,CAAC,EAAE,OAAO,KAAK,GAAG,GACnB,OAAO,EACX,UAAU,GAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,KAAK,OAA8B,EAC9D,QAAQ,CAAC,EAAE,GAAG,EAAE,cAGjB;AAED,wBAAgB,QAAQ,CACtB,aAAa,SAAS,KAAK,CAAC,GAAG,CAAC,EAChC,QAAQ,SAAS,CAAC,CAAC,EAAE,aAAa,KAAK,GAAG,EAE1C,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,SAAS,CAAC,CAAC,EAAE,aAAa,KAAK,MAAM,OAAO,GAC1D,CAAC,CAAC,EAAE,OAAO,KAAK,GAAG,GACnB,OAAO,EACX,UAAU,GAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,KAAK,OAA8B,cAwC/D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"selector.d.ts","sourceRoot":"","sources":["../src/selector.tsx"],"names":[],"mappings":"AA2BA,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,cAsCrC;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAsC7C"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Selector, UseStoreOptions } from './interfaces';
|
|
2
|
+
import { Store } from './Store';
|
|
3
|
+
export declare function useStore<A extends Store<B>, B extends Object>(StoreKlass: (new (props: B) => A) | (new () => A), props?: B, options?: UseStoreOptions<A, any>): A;
|
|
4
|
+
export declare function useStoreDebug<A extends Store<B>, B extends Object>(StoreKlass: (new (props: B) => A) | (new () => A), props?: B, selector?: any): A;
|
|
5
|
+
export declare function createStore<A extends Store<B>, B extends Object>(StoreKlass: new (props: B) => A | (new () => A), props?: B): A;
|
|
6
|
+
export declare function useGlobalStore<A extends Store<B>, B extends Object>(instance: A, debug?: boolean): A;
|
|
7
|
+
export declare function useGlobalStoreSelector<A extends Store<B>, B extends Object, Selector extends (store: A) => any>(instance: A, selector: Selector, debug?: boolean): Selector extends (a: A) => infer C ? C : unknown;
|
|
8
|
+
export declare function createUseStore<Props, Store>(StoreKlass: (new (props: Props) => Store) | (new () => Store)): <Res, C extends Selector<Store, Res>, Props_1 extends Object>(props?: Props_1 | undefined, options?: UseStoreOptions) => C extends Selector<any, infer B> ? B extends Object ? B : Store : Store;
|
|
9
|
+
export declare function createUseStoreSelector<A extends Store<Props>, Props extends Object, Selected>(StoreKlass: (new (props: Props) => A) | (new () => A), selector: Selector<A, Selected>): (props?: Props) => Selected;
|
|
10
|
+
export declare function useStoreSelector<A extends Store<B>, B extends Object, S extends Selector<any, Selected>, Selected>(StoreKlass: (new (props: B) => A) | (new () => A), selector: S, props?: B): Selected;
|
|
11
|
+
type StoreAccessTracker = (store: any) => void;
|
|
12
|
+
export declare function trackStoresAccess(cb: StoreAccessTracker): () => void;
|
|
13
|
+
export declare function useStoreOnce<A extends Store<B>, B extends Object>(StoreKlass: (new (props: B) => A) | (new () => A), props?: B, selector?: any): A;
|
|
14
|
+
export declare function getStore<A extends Store<B>, B extends Object>(StoreKlass: (new (props: B) => A) | (new () => A), props?: B): A;
|
|
15
|
+
export declare const allStores: {};
|
|
16
|
+
export declare const setIsInReaction: (val: boolean) => void;
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=useStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useStore.d.ts","sourceRoot":"","sources":["../src/useStore.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAE,QAAQ,EAAa,eAAe,EAAE,MAAM,cAAc,CAAA;AACnE,OAAO,EAGL,KAAK,EAMN,MAAM,SAAS,CAAA;AAwBhB,wBAAgB,QAAQ,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,EAC3D,UAAU,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,EACjD,KAAK,CAAC,EAAE,CAAC,EACT,OAAO,GAAE,eAAe,CAAC,CAAC,EAAE,GAAG,CAAkB,GAChD,CAAC,CAkBH;AAED,wBAAgB,aAAa,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,EAChE,UAAU,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,EACjD,KAAK,CAAC,EAAE,CAAC,EACT,QAAQ,CAAC,EAAE,GAAG,GACb,CAAC,CAGH;AAGD,wBAAgB,WAAW,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,EAC9D,UAAU,EAAE,KAAK,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,EAC/C,KAAK,CAAC,EAAE,CAAC,GACR,CAAC,CAEH;AAID,wBAAgB,cAAc,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,EACjE,QAAQ,EAAE,CAAC,EACX,KAAK,CAAC,EAAE,OAAO,GACd,CAAC,CAWH;AAED,wBAAgB,sBAAsB,CACpC,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,EAClB,CAAC,SAAS,MAAM,EAChB,QAAQ,SAAS,CAAC,KAAK,EAAE,CAAC,KAAK,GAAG,EAElC,QAAQ,EAAE,CAAC,EACX,QAAQ,EAAE,QAAQ,EAClB,KAAK,CAAC,EAAE,OAAO,GACd,QAAQ,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,GAAG,CAAC,GAAG,OAAO,CAWlD;AAGD,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,EACzC,UAAU,EAAE,CAAC,KAAK,KAAK,EAAE,KAAK,KAAK,KAAK,CAAC,GAAG,CAAC,UAAU,KAAK,CAAC,wGAIjD,eAAe,6EAK5B;AAGD,wBAAgB,sBAAsB,CACpC,CAAC,SAAS,KAAK,CAAC,KAAK,CAAC,EACtB,KAAK,SAAS,MAAM,EACpB,QAAQ,EAER,UAAU,EAAE,CAAC,KAAK,KAAK,EAAE,KAAK,KAAK,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,EACrD,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,GAC9B,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,QAAQ,CAI7B;AAGD,wBAAgB,gBAAgB,CAC9B,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,EAClB,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,EACjC,QAAQ,EACR,UAAU,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,QAAQ,CAErF;AAED,KAAK,kBAAkB,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAA;AAE9C,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,kBAAkB,cAKvD;AAID,wBAAgB,YAAY,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,EAC/D,UAAU,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,EACjD,KAAK,CAAC,EAAE,CAAC,EACT,QAAQ,CAAC,EAAE,GAAG,GACb,CAAC,CAEH;AAGD,wBAAgB,QAAQ,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,EAC3D,UAAU,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,EACjD,KAAK,CAAC,EAAE,CAAC,GACR,CAAC,CAEH;AAmFD,eAAO,MAAM,SAAS,IAAK,CAAA;AAe3B,eAAO,MAAM,eAAe,QAAS,OAAO,SAE3C,CAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { StoreInfo } from './interfaces';
|
|
2
|
+
export declare const useCurrentComponent: () => any;
|
|
3
|
+
export declare function useDebugStoreComponent(StoreCons: any): void;
|
|
4
|
+
export declare const shouldDebug: (component: any, info: Pick<StoreInfo, 'storeInstance'>) => boolean | undefined;
|
|
5
|
+
export declare const DebugComponents: Map<any, Set<any>>;
|
|
6
|
+
export declare const DebugStores: Set<any>;
|
|
7
|
+
//# sourceMappingURL=useStoreDebug.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useStoreDebug.d.ts","sourceRoot":"","sources":["../src/useStoreDebug.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAIxC,eAAO,MAAM,mBAAmB,WAM/B,CAAA;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,GAAG,QAiBpD;AAED,eAAO,MAAM,WAAW,cAAe,GAAG,QAAQ,KAAK,SAAS,EAAE,eAAe,CAAC,wBAGjF,CAAA;AAED,eAAO,MAAM,eAAe,oBAA2B,CAAA;AACvD,eAAO,MAAM,WAAW,UAAiB,CAAA"}
|