@tamagui/use-store 2.7.7 → 3.0.0-beta.1091.1
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/cjs/Store.cjs +29 -0
- package/dist/cjs/Store.native.cjs +49 -0
- package/dist/cjs/Store.native.js +51 -0
- package/dist/cjs/Store.native.js.map +1 -0
- package/dist/cjs/comparators.cjs +26 -30
- package/dist/cjs/comparators.native.cjs +40 -0
- package/dist/cjs/comparators.native.js +28 -36
- package/dist/cjs/comparators.native.js.map +1 -1
- package/dist/cjs/configureUseStore.cjs +16 -18
- package/dist/cjs/configureUseStore.native.cjs +32 -0
- package/dist/cjs/configureUseStore.native.js +16 -17
- package/dist/cjs/configureUseStore.native.js.map +1 -1
- package/dist/cjs/constants.cjs +18 -20
- package/dist/cjs/constants.native.cjs +33 -0
- package/dist/cjs/constants.native.js +18 -19
- package/dist/cjs/constants.native.js.map +1 -1
- package/dist/cjs/decorators.cjs +18 -22
- package/dist/cjs/decorators.native.cjs +31 -0
- package/dist/cjs/decorators.native.js +18 -21
- package/dist/cjs/decorators.native.js.map +1 -1
- package/dist/cjs/helpers.cjs +38 -40
- package/dist/cjs/helpers.native.cjs +63 -0
- package/dist/cjs/helpers.native.js +39 -45
- package/dist/cjs/helpers.native.js.map +1 -1
- package/dist/cjs/index.cjs +16 -23
- package/dist/cjs/index.native.cjs +38 -0
- package/dist/cjs/index.native.js +16 -41
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/interfaces.cjs +9 -11
- package/dist/cjs/interfaces.native.cjs +18 -0
- package/dist/cjs/interfaces.native.js +9 -10
- package/dist/cjs/interfaces.native.js.map +1 -1
- package/dist/cjs/observe.cjs +131 -138
- package/dist/cjs/observe.native.cjs +220 -0
- package/dist/cjs/observe.native.js +191 -203
- package/dist/cjs/observe.native.js.map +1 -1
- package/dist/cjs/useStore.cjs +365 -403
- package/dist/cjs/useStore.native.cjs +552 -0
- package/dist/cjs/useStore.native.js +484 -538
- package/dist/cjs/useStore.native.js.map +1 -1
- package/dist/cjs/useStoreDebug.cjs +38 -45
- package/dist/cjs/useStoreDebug.native.cjs +63 -0
- package/dist/cjs/useStoreDebug.native.js +42 -48
- package/dist/cjs/useStoreDebug.native.js.map +1 -1
- package/dist/esm/Store.mjs +9 -0
- package/dist/esm/Store.mjs.map +1 -0
- package/dist/esm/Store.native.js +27 -0
- package/dist/esm/Store.native.js.map +1 -0
- package/dist/esm/comparators.mjs +13 -12
- package/dist/esm/comparators.mjs.map +1 -1
- package/dist/esm/comparators.native.js +15 -19
- package/dist/esm/comparators.native.js.map +1 -1
- package/dist/esm/configureUseStore.mjs +2 -1
- package/dist/esm/configureUseStore.mjs.map +1 -1
- package/dist/esm/configureUseStore.native.js +2 -1
- package/dist/esm/configureUseStore.native.js.map +1 -1
- package/dist/esm/constants.mjs +4 -3
- package/dist/esm/constants.mjs.map +1 -1
- package/dist/esm/constants.native.js +4 -3
- package/dist/esm/constants.native.js.map +1 -1
- package/dist/esm/decorators.mjs +5 -4
- package/dist/esm/decorators.mjs.map +1 -1
- package/dist/esm/decorators.native.js +5 -4
- package/dist/esm/decorators.native.js.map +1 -1
- package/dist/esm/helpers.mjs +20 -18
- package/dist/esm/helpers.mjs.map +1 -1
- package/dist/esm/helpers.native.js +20 -23
- package/dist/esm/helpers.native.js.map +1 -1
- package/dist/esm/index.js +13 -13
- package/dist/esm/index.mjs +13 -13
- package/dist/esm/index.native.js +12 -31
- package/dist/esm/interfaces.mjs +0 -2
- package/dist/esm/interfaces.native.js +0 -2
- package/dist/esm/observe.mjs +115 -113
- package/dist/esm/observe.mjs.map +1 -1
- package/dist/esm/observe.native.js +175 -179
- package/dist/esm/observe.native.js.map +1 -1
- package/dist/esm/useStore.mjs +336 -363
- package/dist/esm/useStore.mjs.map +1 -1
- package/dist/esm/useStore.native.js +455 -499
- package/dist/esm/useStore.native.js.map +1 -1
- package/dist/esm/useStoreDebug.mjs +20 -18
- package/dist/esm/useStoreDebug.mjs.map +1 -1
- package/dist/esm/useStoreDebug.native.js +23 -21
- package/dist/esm/useStoreDebug.native.js.map +1 -1
- package/package.json +6 -5
- package/src/Store.ts +7 -0
- package/src/index.ts +1 -5
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/index.mjs.map +0 -1
- package/dist/esm/index.native.js.map +0 -1
- package/dist/esm/interfaces.mjs.map +0 -1
- package/dist/esm/interfaces.native.js.map +0 -1
|
@@ -7,49 +7,42 @@ var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
|
7
7
|
var __getProtoOf = Object.getPrototypeOf;
|
|
8
8
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
9
|
var __export = (target, all) => {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
10
|
+
for (var name in all) __defProp(target, name, {
|
|
11
|
+
get: all[name],
|
|
12
|
+
enumerable: true
|
|
13
|
+
});
|
|
14
14
|
};
|
|
15
15
|
var __copyProps = (to, from, except, desc) => {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
16
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
17
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
18
|
+
get: () => from[key],
|
|
19
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
return to;
|
|
23
23
|
};
|
|
24
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
28
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
29
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
30
|
-
value: mod,
|
|
31
|
-
enumerable: true
|
|
24
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
25
|
+
value: mod,
|
|
26
|
+
enumerable: true
|
|
32
27
|
}) : target, mod));
|
|
33
|
-
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
34
|
-
value: true
|
|
35
|
-
}), mod);
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
36
29
|
var useStore_exports = {};
|
|
37
30
|
__export(useStore_exports, {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
31
|
+
allStores: () => allStores,
|
|
32
|
+
createStore: () => createStore,
|
|
33
|
+
createUseStore: () => createUseStore,
|
|
34
|
+
createUseStoreSelector: () => createUseStoreSelector,
|
|
35
|
+
getOrCreateStore: () => getOrCreateStore,
|
|
36
|
+
getStore: () => getStore,
|
|
37
|
+
getStoreInfo: () => getStoreInfo,
|
|
38
|
+
onCreateStore: () => onCreateStore,
|
|
39
|
+
setIsInReaction: () => setIsInReaction,
|
|
40
|
+
trackStoresAccess: () => trackStoresAccess,
|
|
41
|
+
useGlobalStore: () => useGlobalStore,
|
|
42
|
+
useGlobalStoreSelector: () => useGlobalStoreSelector,
|
|
43
|
+
useStore: () => useStore,
|
|
44
|
+
useStoreDebug: () => useStoreDebug,
|
|
45
|
+
useStoreSelector: () => useStoreSelector
|
|
53
46
|
});
|
|
54
47
|
module.exports = __toCommonJS(useStore_exports);
|
|
55
48
|
var import_react = __toESM(require("react"), 1);
|
|
@@ -58,551 +51,504 @@ var import_configureUseStore = require("./configureUseStore.native.js");
|
|
|
58
51
|
var import_constants = require("./constants.native.js");
|
|
59
52
|
var import_helpers = require("./helpers.native.js");
|
|
60
53
|
var import_useStoreDebug = require("./useStoreDebug.native.js");
|
|
61
|
-
function
|
|
62
|
-
|
|
63
|
-
}
|
|
64
|
-
var idFn = function (_) {
|
|
65
|
-
return _;
|
|
54
|
+
var idFn = function(_) {
|
|
55
|
+
return _;
|
|
66
56
|
};
|
|
67
57
|
function useStore(StoreKlass, props) {
|
|
68
|
-
|
|
69
|
-
|
|
58
|
+
var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : import_constants.defaultOptions;
|
|
59
|
+
return useStoreFromInfo(getOrCreateStoreInfo(StoreKlass, props, options), options.selector, options);
|
|
70
60
|
}
|
|
71
61
|
function useStoreDebug(StoreKlass, props) {
|
|
72
|
-
|
|
73
|
-
debug: true
|
|
74
|
-
});
|
|
62
|
+
return useStore(StoreKlass, props, { debug: true });
|
|
75
63
|
}
|
|
76
64
|
function createStore(StoreKlass, props, options) {
|
|
77
|
-
|
|
78
|
-
|
|
65
|
+
var _getOrCreateStoreInfo;
|
|
66
|
+
return (_getOrCreateStoreInfo = getOrCreateStoreInfo(StoreKlass, props, options)) === null || _getOrCreateStoreInfo === void 0 ? void 0 : _getOrCreateStoreInfo.store;
|
|
79
67
|
}
|
|
80
68
|
function useGlobalStore(instance, debug) {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
debug
|
|
87
|
-
});
|
|
69
|
+
var store = instance[import_constants.UNWRAP_PROXY];
|
|
70
|
+
var uid = (0, import_helpers.getStoreUid)(store.constructor, store.props);
|
|
71
|
+
var info = import_helpers.cache.get(uid);
|
|
72
|
+
if (!info) throw new Error(`This store not created using createStore()`);
|
|
73
|
+
return useStoreFromInfo(info, void 0, { debug });
|
|
88
74
|
}
|
|
89
75
|
function useGlobalStoreSelector(instance, selector, debug) {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
debug
|
|
96
|
-
});
|
|
76
|
+
var store = instance[import_constants.UNWRAP_PROXY];
|
|
77
|
+
var uid = (0, import_helpers.getStoreUid)(store.constructor, store.props);
|
|
78
|
+
var info = import_helpers.cache.get(uid);
|
|
79
|
+
if (!info) throw new Error(`This store not created using createStore()`);
|
|
80
|
+
return useStoreFromInfo(info, selector, { debug });
|
|
97
81
|
}
|
|
98
82
|
function createUseStore(StoreKlass) {
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
83
|
+
return function(props, options) {
|
|
84
|
+
return useStore(StoreKlass, props, options);
|
|
85
|
+
};
|
|
102
86
|
}
|
|
103
87
|
function createUseStoreSelector(StoreKlass, selector) {
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
});
|
|
108
|
-
};
|
|
88
|
+
return function(props) {
|
|
89
|
+
return useStore(StoreKlass, props, { selector });
|
|
90
|
+
};
|
|
109
91
|
}
|
|
110
92
|
function useStoreSelector(StoreKlass, selector, props) {
|
|
111
|
-
|
|
112
|
-
selector
|
|
113
|
-
});
|
|
93
|
+
return useStore(StoreKlass, props, { selector });
|
|
114
94
|
}
|
|
115
|
-
var storeAccessTrackers = /* @__PURE__ */new Set();
|
|
95
|
+
var storeAccessTrackers = /* @__PURE__ */ new Set();
|
|
116
96
|
function trackStoresAccess(cb) {
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
97
|
+
storeAccessTrackers.add(cb);
|
|
98
|
+
return function() {
|
|
99
|
+
storeAccessTrackers.delete(cb);
|
|
100
|
+
};
|
|
121
101
|
}
|
|
122
102
|
function getStore(StoreKlass, props) {
|
|
123
|
-
|
|
124
|
-
|
|
103
|
+
var _getStoreInfo;
|
|
104
|
+
return (_getStoreInfo = getStoreInfo(StoreKlass, props)) === null || _getStoreInfo === void 0 ? void 0 : _getStoreInfo.store;
|
|
125
105
|
}
|
|
126
106
|
function getOrCreateStore(StoreKlass, props) {
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
refuseCreation: false
|
|
130
|
-
})) === null || _getOrCreateStoreInfo === void 0 ? void 0 : _getOrCreateStoreInfo.store;
|
|
107
|
+
var _getOrCreateStoreInfo;
|
|
108
|
+
return (_getOrCreateStoreInfo = getOrCreateStoreInfo(StoreKlass, props, { refuseCreation: false })) === null || _getOrCreateStoreInfo === void 0 ? void 0 : _getOrCreateStoreInfo.store;
|
|
131
109
|
}
|
|
132
110
|
function getStoreInfo(StoreKlass, props) {
|
|
133
|
-
|
|
134
|
-
refuseCreation: true
|
|
135
|
-
});
|
|
111
|
+
return getOrCreateStoreInfo(StoreKlass, props, { refuseCreation: true });
|
|
136
112
|
}
|
|
137
|
-
var onCreateListeners = /* @__PURE__ */new Set();
|
|
113
|
+
var onCreateListeners = /* @__PURE__ */ new Set();
|
|
138
114
|
function onCreateStore(cb) {
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
115
|
+
onCreateListeners.add(cb);
|
|
116
|
+
return function() {
|
|
117
|
+
onCreateListeners.delete(cb);
|
|
118
|
+
};
|
|
143
119
|
}
|
|
144
120
|
function getOrCreateStoreInfo(StoreKlass, props, options, propsKeyCalculated) {
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
});
|
|
220
|
-
return result;
|
|
121
|
+
var _store_mount;
|
|
122
|
+
if (!StoreKlass) return null;
|
|
123
|
+
var uid = (0, import_helpers.getStoreUid)(StoreKlass, propsKeyCalculated !== null && propsKeyCalculated !== void 0 ? propsKeyCalculated : props);
|
|
124
|
+
if (!(options === null || options === void 0 ? void 0 : options.avoidCache) && import_helpers.cache.has(uid)) return import_helpers.cache.get(uid);
|
|
125
|
+
if (options === null || options === void 0 ? void 0 : options.refuseCreation) throw new Error(`No store exists (${StoreKlass.name}) with props: ${props}`);
|
|
126
|
+
var storeInstance = new StoreKlass(props);
|
|
127
|
+
storeInstance.props = props;
|
|
128
|
+
var getters = {};
|
|
129
|
+
var actions = {};
|
|
130
|
+
var stateKeys = /* @__PURE__ */ new Set();
|
|
131
|
+
var descriptors = (0, import_helpers.getStoreDescriptors)(storeInstance);
|
|
132
|
+
for (var key in descriptors) {
|
|
133
|
+
var descriptor = descriptors[key];
|
|
134
|
+
if (typeof descriptor.value === "function") actions[key] = descriptor.value;
|
|
135
|
+
else if (typeof descriptor.get === "function") getters[key] = descriptor.get;
|
|
136
|
+
else if (key !== "props" && key[0] !== "_") stateKeys.add(key);
|
|
137
|
+
}
|
|
138
|
+
var keyComparators = storeInstance["_comparators"];
|
|
139
|
+
var listeners = /* @__PURE__ */ new Set();
|
|
140
|
+
var storeInfo = {
|
|
141
|
+
uid,
|
|
142
|
+
keyComparators,
|
|
143
|
+
storeInstance,
|
|
144
|
+
getters,
|
|
145
|
+
stateKeys,
|
|
146
|
+
props,
|
|
147
|
+
actions,
|
|
148
|
+
debug: options === null || options === void 0 ? void 0 : options.debug,
|
|
149
|
+
disableTracking: false,
|
|
150
|
+
gettersState: {
|
|
151
|
+
getCache: /* @__PURE__ */ new Map(),
|
|
152
|
+
depsToGetter: /* @__PURE__ */ new Map(),
|
|
153
|
+
curGetKeys: /* @__PURE__ */ new Set(),
|
|
154
|
+
isGetting: false
|
|
155
|
+
},
|
|
156
|
+
listeners,
|
|
157
|
+
trackers: /* @__PURE__ */ new Set(),
|
|
158
|
+
version: 0,
|
|
159
|
+
subscribe: function(onChanged) {
|
|
160
|
+
listeners.add(onChanged);
|
|
161
|
+
return function() {
|
|
162
|
+
listeners.delete(onChanged);
|
|
163
|
+
};
|
|
164
|
+
},
|
|
165
|
+
triggerUpdate: function() {
|
|
166
|
+
storeInfo.version = (storeInfo.version + 1) % Number.MAX_SAFE_INTEGER;
|
|
167
|
+
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
|
|
168
|
+
try {
|
|
169
|
+
for (var _iterator = listeners[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
170
|
+
var cb = _step.value;
|
|
171
|
+
cb();
|
|
172
|
+
}
|
|
173
|
+
} catch (err) {
|
|
174
|
+
_didIteratorError = true;
|
|
175
|
+
_iteratorError = err;
|
|
176
|
+
} finally {
|
|
177
|
+
try {
|
|
178
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) _iterator.return();
|
|
179
|
+
} finally {
|
|
180
|
+
if (_didIteratorError) throw _iteratorError;
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
};
|
|
185
|
+
var store = createProxiedStore(storeInfo);
|
|
186
|
+
if (process.env.NODE_ENV === "development") allStores[StoreKlass.name + uid] = store;
|
|
187
|
+
(_store_mount = store.mount) === null || _store_mount === void 0 || _store_mount.call(store);
|
|
188
|
+
storeInfo.store = store;
|
|
189
|
+
var result = storeInfo;
|
|
190
|
+
import_helpers.cache.set(uid, result);
|
|
191
|
+
onCreateListeners.forEach(function(cb) {
|
|
192
|
+
return cb(result);
|
|
193
|
+
});
|
|
194
|
+
return result;
|
|
221
195
|
}
|
|
222
196
|
var allStores = {};
|
|
223
197
|
if (process.env.NODE_ENV === "development") {
|
|
224
|
-
|
|
225
|
-
|
|
198
|
+
var _globalThis, _Store;
|
|
199
|
+
(_globalThis = globalThis)[_Store = "Store"] || (_globalThis[_Store] = allStores);
|
|
226
200
|
}
|
|
227
201
|
var emptyObj = {};
|
|
228
|
-
var selectKeys = function
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
}
|
|
249
|
-
return res;
|
|
202
|
+
var selectKeys = function(obj, keys) {
|
|
203
|
+
if (!keys.length) return emptyObj;
|
|
204
|
+
var res = {};
|
|
205
|
+
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
|
|
206
|
+
try {
|
|
207
|
+
for (var _iterator = keys[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
208
|
+
var key = _step.value;
|
|
209
|
+
res[key] = obj[key];
|
|
210
|
+
}
|
|
211
|
+
} catch (err) {
|
|
212
|
+
_didIteratorError = true;
|
|
213
|
+
_iteratorError = err;
|
|
214
|
+
} finally {
|
|
215
|
+
try {
|
|
216
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) _iterator.return();
|
|
217
|
+
} finally {
|
|
218
|
+
if (_didIteratorError) throw _iteratorError;
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
return res;
|
|
250
222
|
};
|
|
251
223
|
var isInReaction = false;
|
|
252
|
-
var setIsInReaction = function
|
|
253
|
-
|
|
224
|
+
var setIsInReaction = function(val) {
|
|
225
|
+
isInReaction = val;
|
|
254
226
|
};
|
|
255
227
|
function useStoreFromInfo(info, userSelector, options) {
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
return curVal;
|
|
315
|
-
}
|
|
316
|
-
});
|
|
228
|
+
var store = info === null || info === void 0 ? void 0 : info.store;
|
|
229
|
+
var internal = import_react.default.useRef(void 0);
|
|
230
|
+
var component = (0, import_useStoreDebug.useCurrentComponent)();
|
|
231
|
+
if (!internal.current) internal.current = {
|
|
232
|
+
component,
|
|
233
|
+
tracked: /* @__PURE__ */ new Set(),
|
|
234
|
+
last: null,
|
|
235
|
+
lastKeys: null
|
|
236
|
+
};
|
|
237
|
+
var curInternal = internal.current;
|
|
238
|
+
var shouldPrintDebug = options === null || options === void 0 ? void 0 : options.debug;
|
|
239
|
+
var getSnapshot = import_react.default.useCallback(function() {
|
|
240
|
+
if (!info || !store) return;
|
|
241
|
+
var curInternal2 = internal.current;
|
|
242
|
+
var isTracking = curInternal2.tracked.size;
|
|
243
|
+
var keys = [...!isTracking ? info.stateKeys : curInternal2.tracked];
|
|
244
|
+
var nextKeys = `${info.version}${keys.join("")}${userSelector || ""}`;
|
|
245
|
+
var lastKeys = curInternal2.lastKeys;
|
|
246
|
+
if (nextKeys === curInternal2.lastKeys) return curInternal2.last;
|
|
247
|
+
curInternal2.lastKeys = nextKeys;
|
|
248
|
+
var snap;
|
|
249
|
+
info.disableTracking = true;
|
|
250
|
+
var last = curInternal2.last;
|
|
251
|
+
if (userSelector) snap = userSelector(store);
|
|
252
|
+
else snap = selectKeys(store, keys);
|
|
253
|
+
info.disableTracking = false;
|
|
254
|
+
var isUnchanged = !userSelector && !isTracking && last || typeof last !== "undefined" && (0, import_comparators.isEqualSubsetShallow)(last, snap, { keyComparators: info.keyComparators });
|
|
255
|
+
if (shouldPrintDebug) console.info("🌑 getSnapshot", {
|
|
256
|
+
storeState: selectKeys(store, Object.keys(store)),
|
|
257
|
+
userSelector,
|
|
258
|
+
info,
|
|
259
|
+
isUnchanged,
|
|
260
|
+
component,
|
|
261
|
+
keys,
|
|
262
|
+
last,
|
|
263
|
+
snap,
|
|
264
|
+
curInternal: curInternal2,
|
|
265
|
+
nextKeys,
|
|
266
|
+
lastKeys
|
|
267
|
+
});
|
|
268
|
+
if (isUnchanged) return last;
|
|
269
|
+
curInternal2.last = snap;
|
|
270
|
+
return snap;
|
|
271
|
+
}, [store]);
|
|
272
|
+
var state = import_react.default.useSyncExternalStore((info === null || info === void 0 ? void 0 : info.subscribe) || idFn, getSnapshot, getSnapshot);
|
|
273
|
+
if (!info || !store || !state) return state;
|
|
274
|
+
if (userSelector) return state;
|
|
275
|
+
return new Proxy(store, { get(target, key) {
|
|
276
|
+
var curVal = Reflect.get(target, key);
|
|
277
|
+
if (isInReaction) return curVal;
|
|
278
|
+
var keyString = key;
|
|
279
|
+
if (info.stateKeys.has(keyString) || keyString in info.getters) {
|
|
280
|
+
if (shouldPrintDebug) console.info("👀 tracking", keyString);
|
|
281
|
+
curInternal.tracked.add(keyString);
|
|
282
|
+
}
|
|
283
|
+
if (Reflect.has(state, key)) return Reflect.get(state, key);
|
|
284
|
+
return curVal;
|
|
285
|
+
} });
|
|
317
286
|
}
|
|
318
|
-
var setters = /* @__PURE__ */new Set();
|
|
319
|
-
var logStack = /* @__PURE__ */new Set();
|
|
287
|
+
var setters = /* @__PURE__ */ new Set();
|
|
288
|
+
var logStack = /* @__PURE__ */ new Set();
|
|
320
289
|
function createProxiedStore(storeInfo) {
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
if (!parentGetters) return;
|
|
566
|
-
var _iteratorNormalCompletion = true,
|
|
567
|
-
_didIteratorError = false,
|
|
568
|
-
_iteratorError = void 0;
|
|
569
|
-
try {
|
|
570
|
-
for (var _iterator = parentGetters[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
571
|
-
var gk = _step.value;
|
|
572
|
-
getCache.delete(gk);
|
|
573
|
-
if (depsToGetter.has(gk)) clearGetterCache(gk);
|
|
574
|
-
}
|
|
575
|
-
} catch (err) {
|
|
576
|
-
_didIteratorError = true;
|
|
577
|
-
_iteratorError = err;
|
|
578
|
-
} finally {
|
|
579
|
-
try {
|
|
580
|
-
if (!_iteratorNormalCompletion && _iterator.return != null) _iterator.return();
|
|
581
|
-
} finally {
|
|
582
|
-
if (_didIteratorError) throw _iteratorError;
|
|
583
|
-
}
|
|
584
|
-
}
|
|
585
|
-
}
|
|
586
|
-
return proxiedStore;
|
|
290
|
+
var _loop = function(key2) {
|
|
291
|
+
if (key2 === "subscribe") return "continue";
|
|
292
|
+
var actionFn = actions[key2];
|
|
293
|
+
var isGetFn = key2.startsWith("get");
|
|
294
|
+
wrappedActions[key2] = function useStoreAction() {
|
|
295
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
|
|
296
|
+
var res;
|
|
297
|
+
if (isGetFn || gettersState.isGetting) return Reflect.apply(actionFn, proxiedStore, args);
|
|
298
|
+
if (process.env.NODE_ENV === "development" && shouldDebug2) console.info("(debug) startAction", key2);
|
|
299
|
+
res = Reflect.apply(actionFn, proxiedStore, args);
|
|
300
|
+
if (res instanceof Promise) return res.then(finishAction);
|
|
301
|
+
finishAction();
|
|
302
|
+
return res;
|
|
303
|
+
};
|
|
304
|
+
if (process.env.NODE_ENV === "development") {
|
|
305
|
+
let hashCode2 = function(str) {
|
|
306
|
+
var hash = 0;
|
|
307
|
+
for (var i = 0; i < str.length; i++) hash = str.charCodeAt(i) + ((hash << 5) - hash);
|
|
308
|
+
return hash;
|
|
309
|
+
}, strColor2 = function(str) {
|
|
310
|
+
return `hsl(${hashCode2(str) % 360}, 90%, 40%)`;
|
|
311
|
+
};
|
|
312
|
+
if (!key2.startsWith("get") && !key2.startsWith("_") && key2 !== "subscribe") {
|
|
313
|
+
var ogAction = wrappedActions[key2];
|
|
314
|
+
wrappedActions[key2] = new Proxy(ogAction, { apply(target, thisArg, args) {
|
|
315
|
+
var isDebugging = shouldDebug2 || storeInfo.debug;
|
|
316
|
+
if (!(process.env.LOG_LEVEL !== "0" && (isDebugging || import_configureUseStore.configureOpts.logLevel !== "error"))) return Reflect.apply(target, thisArg, args);
|
|
317
|
+
setters = /* @__PURE__ */ new Set();
|
|
318
|
+
var curSetters = setters;
|
|
319
|
+
var isTopLevelLogger = logStack.size == 0;
|
|
320
|
+
var logs = /* @__PURE__ */ new Set();
|
|
321
|
+
logStack.add(logs);
|
|
322
|
+
var res;
|
|
323
|
+
var id = counter++;
|
|
324
|
+
try {
|
|
325
|
+
res = Reflect.apply(target, thisArg, args);
|
|
326
|
+
} catch (err) {
|
|
327
|
+
console.error("Error", err);
|
|
328
|
+
throw err;
|
|
329
|
+
} finally {
|
|
330
|
+
logStack.add("end");
|
|
331
|
+
var name = constr.name;
|
|
332
|
+
var color = strColor2(name);
|
|
333
|
+
var simpleArgs = args.map(import_helpers.simpleStr);
|
|
334
|
+
logs.add([
|
|
335
|
+
`%c \u{1F311} ${id} ${name.padStart(isTopLevelLogger ? 8 : 4)}%c.${key2}(${simpleArgs.join(", ")})${isTopLevelLogger && logStack.size > 1 ? ` (+${logStack.size - 1})` : ""}`,
|
|
336
|
+
`color: ${color};`,
|
|
337
|
+
"color: black;"
|
|
338
|
+
]);
|
|
339
|
+
if (curSetters.size) curSetters.forEach(function(param) {
|
|
340
|
+
var { key: key3, value } = param;
|
|
341
|
+
if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") logs.add([` SET ${key3} ${value}`, value]);
|
|
342
|
+
else logs.add([` SET ${key3}`, value]);
|
|
343
|
+
});
|
|
344
|
+
if (isTopLevelLogger) {
|
|
345
|
+
var error = null;
|
|
346
|
+
try {
|
|
347
|
+
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
|
|
348
|
+
try {
|
|
349
|
+
for (var _iterator = logStack[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
350
|
+
var item = _step.value;
|
|
351
|
+
if (item === "end") {
|
|
352
|
+
console.groupEnd();
|
|
353
|
+
continue;
|
|
354
|
+
}
|
|
355
|
+
var [head, ...rest] = item;
|
|
356
|
+
if (head) {
|
|
357
|
+
console.groupCollapsed(...head);
|
|
358
|
+
console.groupCollapsed("...");
|
|
359
|
+
console.info("args", args);
|
|
360
|
+
console.info("response", res);
|
|
361
|
+
console.groupCollapsed("trace");
|
|
362
|
+
console.trace();
|
|
363
|
+
console.groupEnd();
|
|
364
|
+
console.groupEnd();
|
|
365
|
+
var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;
|
|
366
|
+
try {
|
|
367
|
+
for (var _iterator1 = rest[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
|
|
368
|
+
var [name1, ...log] = _step1.value;
|
|
369
|
+
console.groupCollapsed(name1);
|
|
370
|
+
console.info(...log);
|
|
371
|
+
console.groupEnd();
|
|
372
|
+
}
|
|
373
|
+
} catch (err) {
|
|
374
|
+
_didIteratorError1 = true;
|
|
375
|
+
_iteratorError1 = err;
|
|
376
|
+
} finally {
|
|
377
|
+
try {
|
|
378
|
+
if (!_iteratorNormalCompletion1 && _iterator1.return != null) _iterator1.return();
|
|
379
|
+
} finally {
|
|
380
|
+
if (_didIteratorError1) throw _iteratorError1;
|
|
381
|
+
}
|
|
382
|
+
}
|
|
383
|
+
} else console.info("Weird log", head, ...rest);
|
|
384
|
+
}
|
|
385
|
+
} catch (err) {
|
|
386
|
+
_didIteratorError = true;
|
|
387
|
+
_iteratorError = err;
|
|
388
|
+
} finally {
|
|
389
|
+
try {
|
|
390
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) _iterator.return();
|
|
391
|
+
} finally {
|
|
392
|
+
if (_didIteratorError) throw _iteratorError;
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
} catch (err) {
|
|
396
|
+
error = err;
|
|
397
|
+
}
|
|
398
|
+
var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;
|
|
399
|
+
try {
|
|
400
|
+
for (var _iterator2 = logStack[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
|
|
401
|
+
_step2.value;
|
|
402
|
+
console.groupEnd();
|
|
403
|
+
}
|
|
404
|
+
} catch (err) {
|
|
405
|
+
_didIteratorError2 = true;
|
|
406
|
+
_iteratorError2 = err;
|
|
407
|
+
} finally {
|
|
408
|
+
try {
|
|
409
|
+
if (!_iteratorNormalCompletion2 && _iterator2.return != null) _iterator2.return();
|
|
410
|
+
} finally {
|
|
411
|
+
if (_didIteratorError2) throw _iteratorError2;
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
if (error) console.error(`error loggin`, error);
|
|
415
|
+
logStack.clear();
|
|
416
|
+
}
|
|
417
|
+
return res;
|
|
418
|
+
}
|
|
419
|
+
} });
|
|
420
|
+
}
|
|
421
|
+
}
|
|
422
|
+
};
|
|
423
|
+
var { actions, storeInstance, getters, gettersState } = storeInfo;
|
|
424
|
+
var { getCache, curGetKeys, depsToGetter } = gettersState;
|
|
425
|
+
var constr = storeInstance.constructor;
|
|
426
|
+
var _storeInfo_debug;
|
|
427
|
+
var shouldDebug2 = (_storeInfo_debug = storeInfo.debug) !== null && _storeInfo_debug !== void 0 ? _storeInfo_debug : import_useStoreDebug.DebugStores.has(constr);
|
|
428
|
+
var didSet = false;
|
|
429
|
+
var wrappedActions = {};
|
|
430
|
+
for (var key in actions) _loop(key);
|
|
431
|
+
var finishAction = function(val) {
|
|
432
|
+
if (process.env.NODE_ENV === "development" && shouldDebug2) console.info("(debug) finishAction", { didSet });
|
|
433
|
+
if (didSet) {
|
|
434
|
+
storeInfo.triggerUpdate();
|
|
435
|
+
didSet = false;
|
|
436
|
+
}
|
|
437
|
+
return val;
|
|
438
|
+
};
|
|
439
|
+
var isTriggering = false;
|
|
440
|
+
var proxiedStore = new Proxy(storeInstance, {
|
|
441
|
+
get(_, key2) {
|
|
442
|
+
if (key2 in wrappedActions) return wrappedActions[key2];
|
|
443
|
+
if (key2 in passThroughKeys) return Reflect.get(storeInstance, key2);
|
|
444
|
+
if (key2 === import_constants.UNWRAP_PROXY) return storeInstance;
|
|
445
|
+
if (key2 === import_helpers.UNWRAP_STORE_INFO) return storeInfo;
|
|
446
|
+
if (storeAccessTrackers.size) storeAccessTrackers.forEach(function(cb) {
|
|
447
|
+
return cb(storeInfo);
|
|
448
|
+
});
|
|
449
|
+
if (typeof key2 !== "string") return Reflect.get(storeInstance, key2);
|
|
450
|
+
if (!storeInfo.disableTracking) {
|
|
451
|
+
if (gettersState.isGetting) gettersState.curGetKeys.add(key2);
|
|
452
|
+
}
|
|
453
|
+
if (key2 in getters) {
|
|
454
|
+
if (getCache.has(key2)) return getCache.get(key2);
|
|
455
|
+
curGetKeys.clear();
|
|
456
|
+
var isSubGetter = gettersState.isGetting;
|
|
457
|
+
gettersState.isGetting = true;
|
|
458
|
+
var res = getters[key2].call(proxiedStore);
|
|
459
|
+
if (!isSubGetter) gettersState.isGetting = false;
|
|
460
|
+
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
|
|
461
|
+
try {
|
|
462
|
+
for (var _iterator = curGetKeys[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
463
|
+
var gk = _step.value;
|
|
464
|
+
if (!depsToGetter.has(gk)) depsToGetter.set(gk, /* @__PURE__ */ new Set());
|
|
465
|
+
depsToGetter.get(gk).add(key2);
|
|
466
|
+
}
|
|
467
|
+
} catch (err) {
|
|
468
|
+
_didIteratorError = true;
|
|
469
|
+
_iteratorError = err;
|
|
470
|
+
} finally {
|
|
471
|
+
try {
|
|
472
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) _iterator.return();
|
|
473
|
+
} finally {
|
|
474
|
+
if (_didIteratorError) throw _iteratorError;
|
|
475
|
+
}
|
|
476
|
+
}
|
|
477
|
+
getCache.set(key2, res);
|
|
478
|
+
return res;
|
|
479
|
+
}
|
|
480
|
+
return Reflect.get(storeInstance, key2);
|
|
481
|
+
},
|
|
482
|
+
set(target, key2, value, receiver) {
|
|
483
|
+
var cur = Reflect.get(target, key2);
|
|
484
|
+
var res = Reflect.set(target, key2, value, receiver);
|
|
485
|
+
if (res && cur !== value) {
|
|
486
|
+
if (typeof key2 === "string") {
|
|
487
|
+
clearGetterCache(key2);
|
|
488
|
+
if (shouldDebug2) {
|
|
489
|
+
setters.add({
|
|
490
|
+
key: key2,
|
|
491
|
+
value
|
|
492
|
+
});
|
|
493
|
+
if (getShouldDebug(storeInfo)) console.info("(debug) SET", res, key2, value);
|
|
494
|
+
}
|
|
495
|
+
if (process.env.NODE_ENV === "development" && shouldDebug2) console.info("SET...", {
|
|
496
|
+
key: key2,
|
|
497
|
+
value
|
|
498
|
+
});
|
|
499
|
+
}
|
|
500
|
+
if (!isTriggering) {
|
|
501
|
+
isTriggering = true;
|
|
502
|
+
waitForEventLoop(function() {
|
|
503
|
+
storeInfo.triggerUpdate();
|
|
504
|
+
isTriggering = false;
|
|
505
|
+
});
|
|
506
|
+
}
|
|
507
|
+
}
|
|
508
|
+
return res;
|
|
509
|
+
}
|
|
510
|
+
});
|
|
511
|
+
function clearGetterCache(setKey) {
|
|
512
|
+
var parentGetters = depsToGetter.get(setKey);
|
|
513
|
+
getCache.delete(setKey);
|
|
514
|
+
if (!parentGetters) return;
|
|
515
|
+
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
|
|
516
|
+
try {
|
|
517
|
+
for (var _iterator = parentGetters[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
518
|
+
var gk = _step.value;
|
|
519
|
+
getCache.delete(gk);
|
|
520
|
+
if (depsToGetter.has(gk)) clearGetterCache(gk);
|
|
521
|
+
}
|
|
522
|
+
} catch (err) {
|
|
523
|
+
_didIteratorError = true;
|
|
524
|
+
_iteratorError = err;
|
|
525
|
+
} finally {
|
|
526
|
+
try {
|
|
527
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) _iterator.return();
|
|
528
|
+
} finally {
|
|
529
|
+
if (_didIteratorError) throw _iteratorError;
|
|
530
|
+
}
|
|
531
|
+
}
|
|
532
|
+
}
|
|
533
|
+
return proxiedStore;
|
|
587
534
|
}
|
|
588
|
-
var waitForEventLoop = (process.env.NODE_ENV, function
|
|
589
|
-
|
|
535
|
+
var waitForEventLoop = (process.env.NODE_ENV, function(cb) {
|
|
536
|
+
return cb();
|
|
590
537
|
});
|
|
591
538
|
var counter = 0;
|
|
592
539
|
var passThroughKeys = {
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
540
|
+
subscribe: true,
|
|
541
|
+
_version: true,
|
|
542
|
+
_trackers: true,
|
|
543
|
+
$$typeof: true,
|
|
544
|
+
_listeners: true,
|
|
545
|
+
_enableTracking: true
|
|
599
546
|
};
|
|
600
547
|
function getShouldDebug(storeInfo) {
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
return tracker.component && (0, import_useStoreDebug.shouldDebug)(tracker.component, info);
|
|
606
|
-
});
|
|
548
|
+
var info = { storeInstance: storeInfo.store };
|
|
549
|
+
return [...storeInfo.trackers].some(function(tracker) {
|
|
550
|
+
return tracker.component && (0, import_useStoreDebug.shouldDebug)(tracker.component, info);
|
|
551
|
+
});
|
|
607
552
|
}
|
|
553
|
+
|
|
608
554
|
//# sourceMappingURL=useStore.native.js.map
|