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