@tamagui/use-store 2.7.7 → 3.0.0-beta.637.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 +27 -30
- package/dist/cjs/comparators.native.cjs +45 -0
- package/dist/cjs/comparators.native.js +31 -34
- package/dist/cjs/comparators.native.js.map +1 -1
- package/dist/cjs/configureUseStore.cjs +17 -18
- package/dist/cjs/configureUseStore.native.cjs +33 -0
- package/dist/cjs/configureUseStore.native.js +17 -17
- package/dist/cjs/configureUseStore.native.js.map +1 -1
- package/dist/cjs/constants.cjs +19 -20
- package/dist/cjs/constants.native.cjs +34 -0
- package/dist/cjs/constants.native.js +19 -19
- package/dist/cjs/constants.native.js.map +1 -1
- package/dist/cjs/decorators.cjs +19 -22
- package/dist/cjs/decorators.native.cjs +32 -0
- package/dist/cjs/decorators.native.js +19 -21
- package/dist/cjs/decorators.native.js.map +1 -1
- package/dist/cjs/helpers.cjs +39 -40
- package/dist/cjs/helpers.native.cjs +68 -0
- package/dist/cjs/helpers.native.js +42 -43
- package/dist/cjs/helpers.native.js.map +1 -1
- package/dist/cjs/index.cjs +22 -23
- package/dist/cjs/index.native.cjs +62 -0
- package/dist/cjs/index.native.js +35 -36
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/interfaces.cjs +10 -11
- package/dist/cjs/interfaces.native.cjs +19 -0
- package/dist/cjs/interfaces.native.js +10 -10
- package/dist/cjs/interfaces.native.js.map +1 -1
- package/dist/cjs/observe.cjs +132 -138
- package/dist/cjs/observe.native.cjs +221 -0
- package/dist/cjs/observe.native.js +192 -203
- package/dist/cjs/observe.native.js.map +1 -1
- package/dist/cjs/useStore.cjs +366 -403
- package/dist/cjs/useStore.native.cjs +557 -0
- package/dist/cjs/useStore.native.js +487 -536
- package/dist/cjs/useStore.native.js.map +1 -1
- package/dist/cjs/useStoreDebug.cjs +39 -45
- package/dist/cjs/useStoreDebug.native.cjs +64 -0
- package/dist/cjs/useStoreDebug.native.js +43 -48
- package/dist/cjs/useStoreDebug.native.js.map +1 -1
- package/dist/esm/comparators.mjs +13 -12
- package/dist/esm/comparators.mjs.map +1 -1
- package/dist/esm/comparators.native.js +17 -17
- package/dist/esm/comparators.native.js.map +1 -1
- package/dist/esm/configureUseStore.mjs +2 -1
- package/dist/esm/configureUseStore.mjs.map +1 -1
- package/dist/esm/configureUseStore.native.js +2 -1
- package/dist/esm/configureUseStore.native.js.map +1 -1
- package/dist/esm/constants.mjs +4 -3
- package/dist/esm/constants.mjs.map +1 -1
- package/dist/esm/constants.native.js +4 -3
- package/dist/esm/constants.native.js.map +1 -1
- package/dist/esm/decorators.mjs +5 -4
- package/dist/esm/decorators.mjs.map +1 -1
- package/dist/esm/decorators.native.js +5 -4
- package/dist/esm/decorators.native.js.map +1 -1
- package/dist/esm/helpers.mjs +20 -18
- package/dist/esm/helpers.mjs.map +1 -1
- package/dist/esm/helpers.native.js +23 -22
- package/dist/esm/helpers.native.js.map +1 -1
- package/dist/esm/index.js +18 -11
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.mjs +18 -11
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +30 -24
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/interfaces.mjs +0 -2
- package/dist/esm/interfaces.native.js +0 -2
- package/dist/esm/observe.mjs +115 -113
- package/dist/esm/observe.mjs.map +1 -1
- package/dist/esm/observe.native.js +175 -179
- package/dist/esm/observe.native.js.map +1 -1
- package/dist/esm/useStore.mjs +336 -363
- package/dist/esm/useStore.mjs.map +1 -1
- package/dist/esm/useStore.native.js +457 -497
- package/dist/esm/useStore.native.js.map +1 -1
- package/dist/esm/useStoreDebug.mjs +20 -18
- package/dist/esm/useStoreDebug.mjs.map +1 -1
- package/dist/esm/useStoreDebug.native.js +23 -21
- package/dist/esm/useStoreDebug.native.js.map +1 -1
- package/package.json +3 -3
- package/dist/esm/interfaces.mjs.map +0 -1
- package/dist/esm/interfaces.native.js.map +0 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
|
|
3
4
|
var __create = Object.create;
|
|
4
5
|
var __defProp = Object.defineProperty;
|
|
5
6
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
@@ -7,228 +8,216 @@ var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
|
7
8
|
var __getProtoOf = Object.getPrototypeOf;
|
|
8
9
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
10
|
var __export = (target, all) => {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
for (var name in all) __defProp(target, name, {
|
|
12
|
+
get: all[name],
|
|
13
|
+
enumerable: true
|
|
14
|
+
});
|
|
14
15
|
};
|
|
15
16
|
var __copyProps = (to, from, except, desc) => {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
17
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
18
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
19
|
+
get: () => from[key],
|
|
20
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
return to;
|
|
23
24
|
};
|
|
24
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
28
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
29
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
30
|
-
value: mod,
|
|
31
|
-
enumerable: true
|
|
25
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
26
|
+
value: mod,
|
|
27
|
+
enumerable: true
|
|
32
28
|
}) : target, mod));
|
|
33
|
-
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
34
|
-
value: true
|
|
35
|
-
}), mod);
|
|
29
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
36
30
|
var observe_exports = {};
|
|
37
31
|
__export(observe_exports, {
|
|
38
|
-
|
|
39
|
-
|
|
32
|
+
observe: () => observe,
|
|
33
|
+
useObserve: () => useObserve
|
|
40
34
|
});
|
|
41
35
|
module.exports = __toCommonJS(observe_exports);
|
|
42
36
|
var import_react = __toESM(require("react"), 1);
|
|
43
37
|
var import_comparators = require("./comparators.native.js");
|
|
44
38
|
var import_constants = require("./constants.native.js");
|
|
45
39
|
var import_useStore = require("./useStore.native.js");
|
|
46
|
-
var logUpdate = process.env.NODE_ENV === "development" ? function
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
40
|
+
var logUpdate = process.env.NODE_ENV === "development" ? function(fn, stores, last, next) {
|
|
41
|
+
var getStoreLogName = function(store) {
|
|
42
|
+
var _store_props;
|
|
43
|
+
var _store_UNWRAP_PROXY;
|
|
44
|
+
var str = (_store_UNWRAP_PROXY = store[import_constants.UNWRAP_PROXY]) !== null && _store_UNWRAP_PROXY !== void 0 ? _store_UNWRAP_PROXY : store;
|
|
45
|
+
return `${str.constructor.name}${((_store_props = store.props) === null || _store_props === void 0 ? void 0 : _store_props.id) ? `:${store.props.id}` : ""}`;
|
|
46
|
+
};
|
|
47
|
+
var storeNames = stores.map(getStoreLogName).join(", ");
|
|
48
|
+
var name = `\u{1F311} \u25B6\uFE0F %c${fn.name} ${storeNames} () ${last} => ${next}`;
|
|
49
|
+
console.groupCollapsed(name, "color: tomato;");
|
|
50
|
+
console.groupCollapsed("trace >");
|
|
51
|
+
console.trace();
|
|
52
|
+
console.groupEnd();
|
|
53
|
+
console.info(" next", next);
|
|
54
|
+
console.groupEnd();
|
|
61
55
|
} : null;
|
|
62
56
|
function observe(fn) {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
57
|
+
var prev = getObserverValueAndStoresAccessed(fn);
|
|
58
|
+
var disposeValue = null;
|
|
59
|
+
var subscribe = function() {
|
|
60
|
+
var stores = [...prev.storeInfos];
|
|
61
|
+
return subscribeToStores(stores, function() {
|
|
62
|
+
disposeValue === null || disposeValue === void 0 ? void 0 : disposeValue();
|
|
63
|
+
var next = getObserverValueAndStoresAccessed(fn);
|
|
64
|
+
if (typeof next.value === "function") {
|
|
65
|
+
disposeValue = next.value;
|
|
66
|
+
if (process.env.NODE_ENV === "development") {
|
|
67
|
+
logUpdate(fn, [...next.storeInfos], "(fn)", "(fn)");
|
|
68
|
+
}
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
if ((0, import_comparators.isEqualSubsetShallow)(prev.storeInfos, next.storeInfos) && (0, import_comparators.isEqualSubsetShallow)(prev.value, next.value)) {
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
if (process.env.NODE_ENV === "development") {
|
|
75
|
+
logUpdate(fn, [...next.storeInfos], prev.value, next.value);
|
|
76
|
+
}
|
|
77
|
+
prev = next;
|
|
78
|
+
dispose();
|
|
79
|
+
dispose = subscribe();
|
|
80
|
+
});
|
|
81
|
+
};
|
|
82
|
+
var dispose = subscribe();
|
|
83
|
+
return {
|
|
84
|
+
dispose: function() {
|
|
85
|
+
dispose();
|
|
86
|
+
disposeValue === null || disposeValue === void 0 ? void 0 : disposeValue();
|
|
87
|
+
},
|
|
88
|
+
getValue: function() {
|
|
89
|
+
return prev.value;
|
|
90
|
+
}
|
|
91
|
+
};
|
|
98
92
|
}
|
|
99
93
|
function useObserve(fn) {
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
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
|
-
|
|
94
|
+
var [state, setState] = import_react.default.useState(function() {
|
|
95
|
+
return getObserverValueAndStoresAccessed(fn);
|
|
96
|
+
});
|
|
97
|
+
import_react.default.useEffect(function() {
|
|
98
|
+
var dispose;
|
|
99
|
+
var unsub = subscribeToStores([...state.storeInfos], function() {
|
|
100
|
+
dispose === null || dispose === void 0 ? void 0 : dispose();
|
|
101
|
+
var next = getObserverValueAndStoresAccessed(fn);
|
|
102
|
+
var nextStoreInfos = [...next.storeInfos];
|
|
103
|
+
var prevStoreInfos = [...state.storeInfos];
|
|
104
|
+
if (typeof next.value === "function") {
|
|
105
|
+
if (process.env.NODE_ENV === "development") {
|
|
106
|
+
logUpdate(fn, nextStoreInfos, "(fn)", "(fn)");
|
|
107
|
+
}
|
|
108
|
+
dispose = next.value;
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
setState(function(prev) {
|
|
112
|
+
if ((0, import_comparators.isEqualSubsetShallow)(prevStoreInfos, nextStoreInfos) && (0, import_comparators.isEqualSubsetShallow)(prev.value, next.value)) {
|
|
113
|
+
return prev;
|
|
114
|
+
}
|
|
115
|
+
if (process.env.NODE_ENV === "development") {
|
|
116
|
+
logUpdate(fn, nextStoreInfos, prev.value, next.value);
|
|
117
|
+
}
|
|
118
|
+
return next;
|
|
119
|
+
});
|
|
120
|
+
});
|
|
121
|
+
return function() {
|
|
122
|
+
unsub();
|
|
123
|
+
dispose === null || dispose === void 0 ? void 0 : dispose();
|
|
124
|
+
};
|
|
125
|
+
}, [[...state.storeInfos].map(function(i) {
|
|
126
|
+
return i.uid;
|
|
127
|
+
}).join(",")]);
|
|
128
|
+
return state.value;
|
|
135
129
|
}
|
|
136
130
|
function getObserverValueAndStoresAccessed(selector) {
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
131
|
+
var storeInfos = /* @__PURE__ */ new Set();
|
|
132
|
+
var dispose = (0, import_useStore.trackStoresAccess)(function(storeInfo) {
|
|
133
|
+
storeInfos.add(storeInfo);
|
|
134
|
+
});
|
|
135
|
+
var value = selector();
|
|
136
|
+
dispose();
|
|
137
|
+
return {
|
|
138
|
+
value,
|
|
139
|
+
storeInfos
|
|
140
|
+
};
|
|
147
141
|
}
|
|
148
142
|
function subscribeToStores(storeInfos, onUpdate) {
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
}
|
|
228
|
-
return function () {
|
|
229
|
-
disposes.forEach(function (x) {
|
|
230
|
-
return x();
|
|
231
|
-
});
|
|
232
|
-
};
|
|
143
|
+
var disposes = [];
|
|
144
|
+
var isUpdating = false;
|
|
145
|
+
var onUpdateDebouncedWithoutTracking = function() {
|
|
146
|
+
if (isUpdating) return;
|
|
147
|
+
isUpdating = true;
|
|
148
|
+
queueMicrotask(function() {
|
|
149
|
+
try {
|
|
150
|
+
var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;
|
|
151
|
+
try {
|
|
152
|
+
for (var _iterator2 = storeInfos[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
|
|
153
|
+
var storeInfo2 = _step2.value;
|
|
154
|
+
storeInfo2.disableTracking = true;
|
|
155
|
+
}
|
|
156
|
+
} catch (err) {
|
|
157
|
+
_didIteratorError2 = true;
|
|
158
|
+
_iteratorError2 = err;
|
|
159
|
+
} finally {
|
|
160
|
+
try {
|
|
161
|
+
if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
|
|
162
|
+
_iterator2.return();
|
|
163
|
+
}
|
|
164
|
+
} finally {
|
|
165
|
+
if (_didIteratorError2) {
|
|
166
|
+
throw _iteratorError2;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
onUpdate();
|
|
171
|
+
} finally {
|
|
172
|
+
isUpdating = false;
|
|
173
|
+
var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;
|
|
174
|
+
try {
|
|
175
|
+
for (var _iterator1 = storeInfos[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
|
|
176
|
+
var storeInfo1 = _step1.value;
|
|
177
|
+
storeInfo1.disableTracking = false;
|
|
178
|
+
}
|
|
179
|
+
} catch (err) {
|
|
180
|
+
_didIteratorError1 = true;
|
|
181
|
+
_iteratorError1 = err;
|
|
182
|
+
} finally {
|
|
183
|
+
try {
|
|
184
|
+
if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
|
|
185
|
+
_iterator1.return();
|
|
186
|
+
}
|
|
187
|
+
} finally {
|
|
188
|
+
if (_didIteratorError1) {
|
|
189
|
+
throw _iteratorError1;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
});
|
|
195
|
+
};
|
|
196
|
+
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
|
|
197
|
+
try {
|
|
198
|
+
for (var _iterator = storeInfos[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
199
|
+
var storeInfo = _step.value;
|
|
200
|
+
disposes.push(storeInfo.subscribe(onUpdateDebouncedWithoutTracking));
|
|
201
|
+
}
|
|
202
|
+
} catch (err) {
|
|
203
|
+
_didIteratorError = true;
|
|
204
|
+
_iteratorError = err;
|
|
205
|
+
} finally {
|
|
206
|
+
try {
|
|
207
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
208
|
+
_iterator.return();
|
|
209
|
+
}
|
|
210
|
+
} finally {
|
|
211
|
+
if (_didIteratorError) {
|
|
212
|
+
throw _iteratorError;
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
return function() {
|
|
217
|
+
disposes.forEach(function(x) {
|
|
218
|
+
return x();
|
|
219
|
+
});
|
|
220
|
+
};
|
|
233
221
|
}
|
|
222
|
+
|
|
234
223
|
//# sourceMappingURL=observe.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","observe_exports","__export","observe","useObserve","module","exports","import_react","__toESM","require","import_comparators","import_constants","import_useStore","logUpdate","process","env","NODE_ENV","fn","stores","last","next","getStoreLogName","store","_store_props","_store_UNWRAP_PROXY","str","UNWRAP_PROXY","constructor","name","props","id","storeNames","map","join","console","groupCollapsed","trace","groupEnd","info","prev","getObserverValueAndStoresAccessed","disposeValue","subscribe","storeInfos","subscribeToStores","isEqualSubsetShallow","dispose","getValue","state","setState","default","useState","useEffect","unsub","nextStoreInfos","prevStoreInfos","i","uid","selector","Set","trackStoresAccess","storeInfo","add","onUpdate","disposes","isUpdating","onUpdateDebouncedWithoutTracking"],"sources":["../../src/observe.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,eAAA;AAAAC,QAAA,CAAAD,eAAA;EAAAE,OAAA,EAAAA,CAAA,KAAAA,OAAA;EAAAC,UAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAV,YAAkB,CAAAK,eAAA;AAElB,IAAAM,YAAA,GAAAC,OAAqC,CAAAC,OAAA;AACrC,IAAAC,kBAAA,GAA6BD,OAAA;AAE7B,IAAAE,gBAAA,GAAkCF,OAAA;AAElC,IAAAG,eACE,GAAAH,OAAQ,CAAI,uBAAa;AAEnB,IAAAI,SAAM,GAAAC,OAAA,CAAAC,GAAmB,CAAAC,QAAA,KAAe,0BAAAC,EAAA,EAAAC,MAAA,EAAAC,IAAA,EAAAC,IAAA;EACtC,IAAAC,eAAY,GAAM,SAAAA,CAAAC,KAAA;IAClB,IAAAC,YAAc;IAChB,IAAAC,mBAAA;IACA,IAAMC,GAAA,IAAAD,mBAAwB,GAAAF,KAAA,CAAAX,gBAA0B,CAAAe,YAAA,eAAAF,mBAAA,cAAAA,mBAAA,GAAAF,KAAA;IACxD,OAAM,GAAAG,GAAO,CAAAE,WAAA,CAAAC,IAAA,KAAAL,YAAmB,GAAAD,KAAI,CAAAO,KAAU,UAAO,IAAIN,YAAW,uBAAAA,YAAA,CAAAO,EAAA,QAAAR,KAAA,CAAAO,KAAA,CAAAC,EAAA;EACpE;EACA,IAAAC,UAAQ,GAAAb,MAAe,CAAAc,GAAA,CAAAX,eAAS,EAAAY,IAAA;EAChC,IAAAL,IAAQ,gCAAMX,EAAA,CAAAW,IAAA,IAAAG,UAAA,OAAAZ,IAAA,OAAAC,IAAA;EACdc,OAAA,CAAQC,cAAS,CAAAP,IAAA;EACjBM,OAAA,CAAQC,cAAK,CAAU,SAAI;EAC3BD,OAAA,CAAQE,KAAA;EACVF,OACA,CAAAG,QAAA;EAECH,OAAS,CAAAI,IAAA,SAAuB,EAAAlB,IAAA;EACrCc,OAAI,CAAAG,QAAO;AACX,QAAI;AAEJ,SAAMlC,QAAAc,EAAA,EAAY;EAChB,IAAAsB,IAAM,GAAAC,iCAA4B,CAAAvB,EAAA;EAClC,IAAAwB,YAAO;EACL,IAAAC,SAAA,YAAAA,CAAA,EAAe;IACf,IAAAxB,MAAM,IAEN,GAAAqB,IAAI,CAAAI,UAAY,CACd;IACA,OAAAC,iBAAgB,CAAA1B,MAAA,EAAa;MAC3BuB,YAAA,KAAW,IAAK,IAAGA,YAAe,KAAG,MAAQ,QAAM,IAAAA,YAAA;MAAA,IACrDrB,IAAA,GAAAoB,iCAAA,CAAAvB,EAAA;MACA,WAAAG,IAAA,CAAApB,KAAA;QACFyC,YAAA,GAAArB,IAAA,CAAApB,KAAA;QACA,IAAAc,OACE,CAAAC,GAAA,CAAAC,QAAA;UAGAH,SAAA,CAAAI,EAAA,GACF,GAAAG,IAAA,CAAAuB,UAAA,CACI,QAAQ,QAAI;QACd;QACF;MACA;MACA,QAAQjC,kBAAA,CAAAmC,oBAAA,EAAAN,IAAA,CAAAI,UAAA,EAAAvB,IAAA,CAAAuB,UAAA,SAAAjC,kBAAA,CAAAmC,oBAAA,EAAAN,IAAA,CAAAvC,KAAA,EAAAoB,IAAA,CAAApB,KAAA;QACR;MACD;MACH,IAAAc,OAAA,CAAAC,GAAA,CAAAC,QAAA;QAEIH,SAAU,CAAAI,EAAA,GAEP,GAAAG,IAAA,CAAAuB,UAAA,CACL,EAAAJ,IAAS,CAAAvC,KAAM,EAAAoB,IAAA,CAAApB,KAAA;MACb;MACAuC,IAAA,GAAAnB,IAAA;MACF0B,OAAA;MACAA,OAAA,GAAUJ,SAAW;IACvB;EACF;EAEO,IAAAI,OAAS,GAAAJ,SAA8B;EAC5C,OAAO;IACLI,OAAO,WAAAA,CAAA;MACRA,OAAA;MAEDL,YAAA,KAAM,QAAAA,YAAgB,uBAAAA,YAAA;IACpB;IACAM,QAAM,WAAAA,CAAA,EAAQ;MACZ,OAAAR,IAAU,CAAAvC,KAAA;IACV;EAEA;AACA;AAGA,SAAAI,UAAWA,CAAAa,EAAK;EACd,KAAA+B,KAAI,EAAAC,QAAQ,IAAI1C,YAAa,CAAA2C,OAAA,CAAAC,QAAe;IAC1C,OAAAX,iCAA+B,CAAAvB,EAAA,CAAQ;EAAM;EAE/CV,YAAA,CAAA2C,OAAU,CAAKE,SAAA;IACf,IAAAN,OAAA;IAAA,IACFO,KAAA,GAAAT,iBAAA,EAEA,GAAAI,KAAA,CAASL,UAAU,CACjB,cACE;MAGAG,OAAA,KAAO,QAAAA,OAAA,uBAAAA,OAAA;MAAA,IACT1B,IAAA,GAAAoB,iCAAA,CAAAvB,EAAA;MACA,IAAAqC,cAAgB,IACd,GAAAlC,IAAA,CAAAuB,UAAe,CAAsC;MAEvD,IAAAY,cAAO,IACR,GAAAP,KAAA,CAAAL,UAAA,CACF;MAED,WAAavB,IAAA,CAAApB,KAAA;QACX,IAAMc,OAAA,CAAAC,GAAA,CAAAC,QAAA;UACNH,SAAU,CAAAI,EAAA,EAAAqC,cAAA;QACZ;QACGR,OAAG,GAAM1B,IAAA,CAAApB,KAAY;QAE1B;MACF;MAEAiD,QAAS,WAAAV,IAAA;QAID,QAAA7B,kBAAa,CAAAmC,oBAAmB,EAAAU,cAAA,EAAAD,cAAA,SAAA5C,kBAAA,CAAAmC,oBAAA,EAAAN,IAAA,CAAAvC,KAAA,EAAAoB,IAAA,CAAApB,KAAA;UAChC,OAAAuC,IAAA;QACJ;QACD,IAAAzB,OAAA,CAAAC,GAAA,CAAAC,QAAA;UACKH,SAAQ,CAAAI,EAAA,EAAAqC,cAAS,EAAAf,IAAA,CAAAvC,KAAA,EAAAoB,IAAA,CAAApB,KAAA;QACvB;QACA,OAAOoB,IAAA;MACL;IACA;IACF;MACFiC,KAAA;MAEAP,OAAS,aAAAA,OAAkB,UAAyB,SAAqB,IAAAA,OAAA;IACvE;EAGA,IACA,CACE,GAAIE,KAAA,CAAAL,UAAY,CAChB,CAAAX,GAAA,WAAawB,CAAA;IACb,OAAAA,CAAA,CAAAC,GAAA;EACE,GAAAxB,IAAI,MACF;EACE,OAAAe,KAAA,CAAAhD,KAAU;AAAkB;AAE9B,SAAAwC,iCAASA,CAAAkB,QAAA;EAAA,IACXf,UAAE,sBAAAgB,GAAA;EACA,IAAAb,OAAA,OAAAlC,eAAa,CAAAgD,iBAAA,YAAAC,SAAA;IACblB,UAAA,CAAAmB,GAAA,CAAWD,SAAA;EACT;EAA4B,IAAA7D,KAC9B,GAAA0D,QAAA;EAAAZ,OACF;EAAA,OACD;IACH9C,KAAA;IAEA2C;EACE;AAAmE;AAErE,SAAOC,iBAAMA,CAAAD,UAAA,EAAAoB,QAAA;EACX,IAAAC,QAAS;EACX,IAAAC,UAAA;EACF,IAAAC,gCAAA,YAAAA,CAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"observe.native.js","names":[],"sources":["cjs/observe.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar observe_exports = {};\n__export(observe_exports, {\n observe: () => observe,\n useObserve: () => useObserve\n});\nmodule.exports = __toCommonJS(observe_exports);\nvar import_react = __toESM(require(\"react\"), 1);\nvar import_comparators = require(\"./comparators\");\nvar import_constants = require(\"./constants\");\nvar import_useStore = require(\"./useStore\");\nvar logUpdate = process.env.NODE_ENV === \"development\" ? function(fn, stores, last, next) {\n var getStoreLogName = function(store) {\n var _store_props;\n var _store_UNWRAP_PROXY;\n var str = (_store_UNWRAP_PROXY = store[import_constants.UNWRAP_PROXY]) !== null && _store_UNWRAP_PROXY !== void 0 ? _store_UNWRAP_PROXY : store;\n return `${str.constructor.name}${((_store_props = store.props) === null || _store_props === void 0 ? void 0 : _store_props.id) ? `:${store.props.id}` : \"\"}`;\n };\n var storeNames = stores.map(getStoreLogName).join(\", \");\n var name = `\\u{1F311} \\u25B6\\uFE0F %c${fn.name} ${storeNames} () ${last} => ${next}`;\n console.groupCollapsed(name, \"color: tomato;\");\n console.groupCollapsed(\"trace >\");\n console.trace();\n console.groupEnd();\n console.info(\" next\", next);\n console.groupEnd();\n} : null;\nfunction observe(fn) {\n var prev = getObserverValueAndStoresAccessed(fn);\n var disposeValue = null;\n var subscribe = function() {\n var stores = [\n ...prev.storeInfos\n ];\n return subscribeToStores(stores, function() {\n disposeValue === null || disposeValue === void 0 ? void 0 : disposeValue();\n var next = getObserverValueAndStoresAccessed(fn);\n if (typeof next.value === \"function\") {\n disposeValue = next.value;\n if (process.env.NODE_ENV === \"development\") {\n logUpdate(fn, [\n ...next.storeInfos\n ], \"(fn)\", \"(fn)\");\n }\n return;\n }\n if ((0, import_comparators.isEqualSubsetShallow)(prev.storeInfos, next.storeInfos) && (0, import_comparators.isEqualSubsetShallow)(prev.value, next.value)) {\n return;\n }\n if (process.env.NODE_ENV === \"development\") {\n logUpdate(fn, [\n ...next.storeInfos\n ], prev.value, next.value);\n }\n prev = next;\n dispose();\n dispose = subscribe();\n });\n };\n var dispose = subscribe();\n return {\n dispose: function() {\n dispose();\n disposeValue === null || disposeValue === void 0 ? void 0 : disposeValue();\n },\n getValue: function() {\n return prev.value;\n }\n };\n}\nfunction useObserve(fn) {\n var [state, setState] = import_react.default.useState(function() {\n return getObserverValueAndStoresAccessed(fn);\n });\n import_react.default.useEffect(function() {\n var dispose;\n var unsub = subscribeToStores([\n ...state.storeInfos\n ], function() {\n dispose === null || dispose === void 0 ? void 0 : dispose();\n var next = getObserverValueAndStoresAccessed(fn);\n var nextStoreInfos = [\n ...next.storeInfos\n ];\n var prevStoreInfos = [\n ...state.storeInfos\n ];\n if (typeof next.value === \"function\") {\n if (process.env.NODE_ENV === \"development\") {\n logUpdate(fn, nextStoreInfos, \"(fn)\", \"(fn)\");\n }\n dispose = next.value;\n return;\n }\n setState(function(prev) {\n if ((0, import_comparators.isEqualSubsetShallow)(prevStoreInfos, nextStoreInfos) && (0, import_comparators.isEqualSubsetShallow)(prev.value, next.value)) {\n return prev;\n }\n if (process.env.NODE_ENV === \"development\") {\n logUpdate(fn, nextStoreInfos, prev.value, next.value);\n }\n return next;\n });\n });\n return function() {\n unsub();\n dispose === null || dispose === void 0 ? void 0 : dispose();\n };\n }, [\n [\n ...state.storeInfos\n ].map(function(i) {\n return i.uid;\n }).join(\",\")\n ]);\n return state.value;\n}\nfunction getObserverValueAndStoresAccessed(selector) {\n var storeInfos = /* @__PURE__ */ new Set();\n var dispose = (0, import_useStore.trackStoresAccess)(function(storeInfo) {\n storeInfos.add(storeInfo);\n });\n var value = selector();\n dispose();\n return {\n value,\n storeInfos\n };\n}\nfunction subscribeToStores(storeInfos, onUpdate) {\n var disposes = [];\n var isUpdating = false;\n var onUpdateDebouncedWithoutTracking = function() {\n if (isUpdating) return;\n isUpdating = true;\n queueMicrotask(function() {\n try {\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = storeInfos[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var storeInfo2 = _step2.value;\n storeInfo2.disableTracking = true;\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return != null) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n onUpdate();\n } finally {\n isUpdating = false;\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = storeInfos[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var storeInfo1 = _step1.value;\n storeInfo1.disableTracking = false;\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n }\n });\n };\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = storeInfos[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var storeInfo = _step.value;\n disposes.push(storeInfo.subscribe(onUpdateDebouncedWithoutTracking));\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return function() {\n disposes.forEach(function(x) {\n return x();\n });\n };\n}\n//# sourceMappingURL=observe.js.map\n"],"mappings":"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"}
|