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