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