storion 0.7.10 → 0.8.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/CHANGELOG.md +220 -0
- package/README.md +1 -0
- package/dist/async/index.js +1 -2
- package/dist/core/container.d.ts.map +1 -1
- package/dist/core/createResolver.d.ts +1 -41
- package/dist/core/createResolver.d.ts.map +1 -1
- package/dist/core/middleware.d.ts +3 -8
- package/dist/core/middleware.d.ts.map +1 -1
- package/dist/core/store.d.ts +1 -1
- package/dist/core/store.d.ts.map +1 -1
- package/dist/devtools/index.js +12 -32
- package/dist/devtools/middleware.d.ts.map +1 -1
- package/dist/{effect-ByI1oRBq.js → effect-C6h0PDDI.js} +160 -4
- package/dist/{emitter-XwTUpyGv.js → emitter-j4rC71vY.js} +1 -159
- package/dist/{store-C3dmtJ4u.js → index-OPaTR3zq.js} +549 -17
- package/dist/index.d.ts +5 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/isPromiseLike-bFkfHAbm.js +6 -0
- package/dist/meta/createMetaQuery.d.ts +10 -0
- package/dist/meta/createMetaQuery.d.ts.map +1 -0
- package/dist/meta/index.d.ts +4 -0
- package/dist/meta/index.d.ts.map +1 -0
- package/dist/meta/meta.d.ts +83 -0
- package/dist/meta/meta.d.ts.map +1 -0
- package/dist/meta/withMeta.d.ts +48 -0
- package/dist/meta/withMeta.d.ts.map +1 -0
- package/dist/meta-40r-AZfe.js +32 -0
- package/dist/persist/index.d.ts +1 -1
- package/dist/persist/index.d.ts.map +1 -1
- package/dist/persist/index.js +27 -12
- package/dist/persist/persist.d.ts +47 -2
- package/dist/persist/persist.d.ts.map +1 -1
- package/dist/react/context.d.ts.map +1 -1
- package/dist/react/index.js +46 -43
- package/dist/storion.js +36 -486
- package/dist/types.d.ts +149 -34
- package/dist/types.d.ts.map +1 -1
- package/package.json +3 -2
- package/dist/is-KT6PknjJ.js +0 -44
package/dist/storion.js
CHANGED
|
@@ -1,496 +1,46 @@
|
|
|
1
|
-
import { a
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { d as d2, e as e2, i as i2, s, b as b2, w } from "./store-C3dmtJ4u.js";
|
|
5
|
-
import { e as emitter, u as untrack, g as getHooks, H as HooksContextError, w as withHooks } from "./emitter-XwTUpyGv.js";
|
|
6
|
-
import { A, E, I, c as c2, L, P, a, d as d3, S, b as b3 } from "./emitter-XwTUpyGv.js";
|
|
7
|
-
import { e as e3 } from "./effect-ByI1oRBq.js";
|
|
8
|
-
function extractDisplayName(factory) {
|
|
9
|
-
if (isSpec(factory)) {
|
|
10
|
-
return factory.displayName;
|
|
11
|
-
}
|
|
12
|
-
if (typeof factory.displayName === "string" && factory.displayName) {
|
|
13
|
-
return factory.displayName;
|
|
14
|
-
}
|
|
15
|
-
if (factory.name && factory.name !== "") {
|
|
16
|
-
return factory.name;
|
|
17
|
-
}
|
|
18
|
-
return void 0;
|
|
19
|
-
}
|
|
20
|
-
function createResolver(options = {}) {
|
|
21
|
-
const {
|
|
22
|
-
middleware = [],
|
|
23
|
-
parent,
|
|
24
|
-
invokeResolver: invokeResolverOption
|
|
25
|
-
} = options;
|
|
26
|
-
const cache2 = /* @__PURE__ */ new Map();
|
|
27
|
-
const overrides = /* @__PURE__ */ new Map();
|
|
28
|
-
const resolve = (factory) => overrides.get(factory) ?? factory;
|
|
29
|
-
const invoke = (factory, resolverForCtx) => {
|
|
30
|
-
const isStoreSpec = isSpec(factory);
|
|
31
|
-
const displayName = extractDisplayName(factory);
|
|
32
|
-
const chain = middleware.reduceRight(
|
|
33
|
-
(next, mw) => () => {
|
|
34
|
-
if (isStoreSpec) {
|
|
35
|
-
const ctx = {
|
|
36
|
-
type: "store",
|
|
37
|
-
factory,
|
|
38
|
-
resolver: resolverForCtx,
|
|
39
|
-
next,
|
|
40
|
-
displayName,
|
|
41
|
-
spec: factory
|
|
42
|
-
};
|
|
43
|
-
return mw(ctx);
|
|
44
|
-
} else {
|
|
45
|
-
const ctx = {
|
|
46
|
-
type: "factory",
|
|
47
|
-
factory,
|
|
48
|
-
resolver: resolverForCtx,
|
|
49
|
-
next,
|
|
50
|
-
displayName
|
|
51
|
-
};
|
|
52
|
-
return mw(ctx);
|
|
53
|
-
}
|
|
54
|
-
},
|
|
55
|
-
() => factory(resolverForCtx)
|
|
56
|
-
);
|
|
57
|
-
return chain();
|
|
58
|
-
};
|
|
59
|
-
const resolver = {
|
|
60
|
-
get(factory) {
|
|
61
|
-
if (cache2.has(factory)) {
|
|
62
|
-
return cache2.get(factory);
|
|
63
|
-
}
|
|
64
|
-
if (parent && overrides.size === 0 && parent.has(factory)) {
|
|
65
|
-
return parent.get(factory);
|
|
66
|
-
}
|
|
67
|
-
const instance = invoke(
|
|
68
|
-
resolve(factory),
|
|
69
|
-
invokeResolverOption ?? resolver
|
|
70
|
-
);
|
|
71
|
-
cache2.set(factory, instance);
|
|
72
|
-
return instance;
|
|
73
|
-
},
|
|
74
|
-
create(factory, ...args) {
|
|
75
|
-
const resolverForCtx = invokeResolverOption ?? resolver;
|
|
76
|
-
if (args.length > 0) {
|
|
77
|
-
return factory(resolverForCtx, ...args);
|
|
78
|
-
}
|
|
79
|
-
return invoke(resolve(factory), resolverForCtx);
|
|
80
|
-
},
|
|
81
|
-
set(factory, override) {
|
|
82
|
-
overrides.set(factory, override);
|
|
83
|
-
cache2.delete(factory);
|
|
84
|
-
},
|
|
85
|
-
has(factory) {
|
|
86
|
-
const inParent = parent && overrides.size === 0 && parent.has(factory);
|
|
87
|
-
return cache2.has(factory) || (inParent ?? false);
|
|
88
|
-
},
|
|
89
|
-
tryGet(factory) {
|
|
90
|
-
if (cache2.has(factory)) {
|
|
91
|
-
return cache2.get(factory);
|
|
92
|
-
}
|
|
93
|
-
if (parent && overrides.size === 0) {
|
|
94
|
-
return parent.tryGet(factory);
|
|
95
|
-
}
|
|
96
|
-
return void 0;
|
|
97
|
-
},
|
|
98
|
-
delete(factory) {
|
|
99
|
-
const instance = cache2.get(factory);
|
|
100
|
-
if (instance) {
|
|
101
|
-
tryDispose(instance);
|
|
102
|
-
cache2.delete(factory);
|
|
103
|
-
return true;
|
|
104
|
-
}
|
|
105
|
-
return false;
|
|
106
|
-
},
|
|
107
|
-
clear() {
|
|
108
|
-
for (const instance of cache2.values()) {
|
|
109
|
-
tryDispose(instance);
|
|
110
|
-
}
|
|
111
|
-
cache2.clear();
|
|
112
|
-
},
|
|
113
|
-
scope(scopeOptions = {}) {
|
|
114
|
-
return createResolver({
|
|
115
|
-
middleware: scopeOptions.middleware ?? middleware,
|
|
116
|
-
parent: resolver,
|
|
117
|
-
...scopeOptions
|
|
118
|
-
});
|
|
119
|
-
}
|
|
120
|
-
};
|
|
121
|
-
return resolver;
|
|
122
|
-
}
|
|
123
|
-
function when(predicate, middleware) {
|
|
124
|
-
return (ctx) => {
|
|
125
|
-
if (predicate(ctx.factory)) {
|
|
126
|
-
return middleware(ctx);
|
|
127
|
-
}
|
|
128
|
-
return ctx.next();
|
|
129
|
-
};
|
|
130
|
-
}
|
|
131
|
-
function createLoggingMiddleware(prefix = "Resolver") {
|
|
132
|
-
return (ctx) => {
|
|
133
|
-
const name = ctx.factory.name || "anonymous";
|
|
134
|
-
console.log(`[${prefix}] Creating: ${name}`);
|
|
135
|
-
const start = performance.now();
|
|
136
|
-
const result = ctx.next();
|
|
137
|
-
const duration = (performance.now() - start).toFixed(2);
|
|
138
|
-
console.log(`[${prefix}] Created: ${name} (${duration}ms)`);
|
|
139
|
-
return result;
|
|
140
|
-
};
|
|
141
|
-
}
|
|
142
|
-
function createValidationMiddleware(validate) {
|
|
143
|
-
return (ctx) => {
|
|
144
|
-
const result = ctx.next();
|
|
145
|
-
validate(result, ctx.factory);
|
|
146
|
-
return result;
|
|
147
|
-
};
|
|
148
|
-
}
|
|
149
|
-
let defaultMiddlewareConfig = {};
|
|
150
|
-
const container = function(options = {}) {
|
|
151
|
-
const middleware = [
|
|
152
|
-
...defaultMiddlewareConfig.pre ?? [],
|
|
153
|
-
...options.middleware ?? [],
|
|
154
|
-
...defaultMiddlewareConfig.post ?? []
|
|
155
|
-
];
|
|
156
|
-
const instancesById = /* @__PURE__ */ new Map();
|
|
157
|
-
const creationOrder = [];
|
|
158
|
-
const createEmitter = emitter();
|
|
159
|
-
const disposeEmitter = emitter();
|
|
160
|
-
const parent = options._parent;
|
|
161
|
-
let containerApi;
|
|
162
|
-
const internalResolver = createResolver({
|
|
163
|
-
middleware,
|
|
164
|
-
parent,
|
|
165
|
-
get invokeResolver() {
|
|
166
|
-
return containerApi;
|
|
167
|
-
}
|
|
168
|
-
});
|
|
169
|
-
function trackStore(spec, instance) {
|
|
170
|
-
instancesById.set(instance.id, instance);
|
|
171
|
-
creationOrder.push(spec);
|
|
172
|
-
if (typeof instance.onDispose === "function") {
|
|
173
|
-
instance.onDispose(() => {
|
|
174
|
-
disposeEmitter.emit(instance);
|
|
175
|
-
instancesById.delete(instance.id);
|
|
176
|
-
internalResolver.delete(spec);
|
|
177
|
-
const index = creationOrder.indexOf(spec);
|
|
178
|
-
if (index !== -1) {
|
|
179
|
-
creationOrder.splice(index, 1);
|
|
180
|
-
}
|
|
181
|
-
});
|
|
182
|
-
}
|
|
183
|
-
createEmitter.emit(instance);
|
|
184
|
-
}
|
|
185
|
-
containerApi = {
|
|
186
|
-
[STORION_TYPE]: "container",
|
|
187
|
-
// Get by ID or factory/spec
|
|
188
|
-
get(specOrIdOrFactory) {
|
|
189
|
-
if (typeof specOrIdOrFactory === "string") {
|
|
190
|
-
return instancesById.get(specOrIdOrFactory);
|
|
191
|
-
}
|
|
192
|
-
const wasCached = internalResolver.has(specOrIdOrFactory);
|
|
193
|
-
const instance = untrack(() => internalResolver.get(specOrIdOrFactory));
|
|
194
|
-
if (!wasCached && isSpec(specOrIdOrFactory)) {
|
|
195
|
-
trackStore(specOrIdOrFactory, instance);
|
|
196
|
-
}
|
|
197
|
-
return instance;
|
|
198
|
-
},
|
|
199
|
-
create(specOrFactory, ...args) {
|
|
200
|
-
const instance = untrack(
|
|
201
|
-
() => internalResolver.create(specOrFactory, ...args)
|
|
202
|
-
);
|
|
203
|
-
if (isSpec(specOrFactory)) {
|
|
204
|
-
const storeInstance = instance;
|
|
205
|
-
instancesById.set(storeInstance.id, storeInstance);
|
|
206
|
-
if (typeof storeInstance.onDispose === "function") {
|
|
207
|
-
storeInstance.onDispose(() => {
|
|
208
|
-
disposeEmitter.emit(storeInstance);
|
|
209
|
-
instancesById.delete(storeInstance.id);
|
|
210
|
-
});
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
return instance;
|
|
214
|
-
},
|
|
215
|
-
set(spec, override) {
|
|
216
|
-
const existing = internalResolver.tryGet(spec);
|
|
217
|
-
tryDispose(existing);
|
|
218
|
-
internalResolver.set(spec, override);
|
|
219
|
-
},
|
|
220
|
-
has(spec) {
|
|
221
|
-
return internalResolver.has(spec);
|
|
222
|
-
},
|
|
223
|
-
tryGet(spec) {
|
|
224
|
-
return internalResolver.tryGet(spec);
|
|
225
|
-
},
|
|
226
|
-
delete(spec) {
|
|
227
|
-
const instance = internalResolver.tryGet(spec);
|
|
228
|
-
if (instance) {
|
|
229
|
-
tryDispose(instance);
|
|
230
|
-
return true;
|
|
231
|
-
}
|
|
232
|
-
return false;
|
|
233
|
-
},
|
|
234
|
-
clear() {
|
|
235
|
-
const specs = [...creationOrder].reverse();
|
|
236
|
-
for (const spec of specs) {
|
|
237
|
-
const instance = internalResolver.tryGet(spec);
|
|
238
|
-
tryDispose(instance);
|
|
239
|
-
}
|
|
240
|
-
internalResolver.clear();
|
|
241
|
-
instancesById.clear();
|
|
242
|
-
creationOrder.length = 0;
|
|
243
|
-
},
|
|
244
|
-
dispose(spec) {
|
|
245
|
-
return containerApi.delete(spec);
|
|
246
|
-
},
|
|
247
|
-
scope(scopeOptions = {}) {
|
|
248
|
-
return container({
|
|
249
|
-
middleware: scopeOptions.middleware ?? middleware,
|
|
250
|
-
_parent: containerApi
|
|
251
|
-
});
|
|
252
|
-
},
|
|
253
|
-
onCreate: createEmitter.on,
|
|
254
|
-
onDispose: disposeEmitter.on
|
|
255
|
-
};
|
|
256
|
-
return containerApi;
|
|
257
|
-
};
|
|
258
|
-
const defaultsFn = (config = {}) => {
|
|
259
|
-
defaultMiddlewareConfig = {
|
|
260
|
-
pre: [...defaultMiddlewareConfig.pre ?? [], ...config.pre ?? []],
|
|
261
|
-
post: [...defaultMiddlewareConfig.post ?? [], ...config.post ?? []]
|
|
262
|
-
};
|
|
263
|
-
};
|
|
264
|
-
defaultsFn.clear = () => {
|
|
265
|
-
defaultMiddlewareConfig = {};
|
|
266
|
-
};
|
|
267
|
-
container.defaults = defaultsFn;
|
|
268
|
-
let pickIdCounter = 0;
|
|
269
|
-
function pick(selector, equality) {
|
|
270
|
-
var _a;
|
|
271
|
-
const parentHooks = getHooks();
|
|
272
|
-
if (!parentHooks.onRead) {
|
|
273
|
-
throw new HooksContextError("pick", "an effect or useStore selector");
|
|
274
|
-
}
|
|
275
|
-
const equalityFn = resolveEquality(equality);
|
|
276
|
-
const currentReads = [];
|
|
277
|
-
const evaluate = () => {
|
|
278
|
-
currentReads.length = 0;
|
|
279
|
-
const value = withHooks(
|
|
280
|
-
{
|
|
281
|
-
onRead: (event) => {
|
|
282
|
-
currentReads.push(event);
|
|
283
|
-
}
|
|
284
|
-
},
|
|
285
|
-
selector
|
|
286
|
-
);
|
|
287
|
-
return value;
|
|
288
|
-
};
|
|
289
|
-
let currentValue = evaluate();
|
|
290
|
-
if (!currentReads.length) {
|
|
291
|
-
return currentValue;
|
|
292
|
-
}
|
|
293
|
-
const pickKey = `pick:${++pickIdCounter}`;
|
|
294
|
-
const subscribe = (listener) => {
|
|
295
|
-
const onCleanup = emitter();
|
|
296
|
-
const setupSubscriptions = () => {
|
|
297
|
-
for (const read of currentReads) {
|
|
298
|
-
const unsub = read.subscribe(handleChange);
|
|
299
|
-
onCleanup.on(unsub);
|
|
300
|
-
}
|
|
301
|
-
};
|
|
302
|
-
const clearSubscriptions = () => {
|
|
303
|
-
onCleanup.emitAndClear();
|
|
304
|
-
};
|
|
305
|
-
const handleChange = () => {
|
|
306
|
-
try {
|
|
307
|
-
const prevValue = currentValue;
|
|
308
|
-
clearSubscriptions();
|
|
309
|
-
currentValue = evaluate();
|
|
310
|
-
setupSubscriptions();
|
|
311
|
-
if (!equalityFn(prevValue, currentValue)) {
|
|
312
|
-
listener();
|
|
313
|
-
}
|
|
314
|
-
} catch (error) {
|
|
315
|
-
clearSubscriptions();
|
|
316
|
-
listener();
|
|
317
|
-
}
|
|
318
|
-
};
|
|
319
|
-
setupSubscriptions();
|
|
320
|
-
return clearSubscriptions;
|
|
321
|
-
};
|
|
322
|
-
(_a = parentHooks.onRead) == null ? void 0 : _a.call(parentHooks, {
|
|
323
|
-
key: pickKey,
|
|
324
|
-
value: currentValue,
|
|
325
|
-
subscribe
|
|
326
|
-
});
|
|
327
|
-
return currentValue;
|
|
328
|
-
}
|
|
329
|
-
function patternToPredicate(pattern) {
|
|
330
|
-
if (pattern instanceof RegExp) {
|
|
331
|
-
return (name) => pattern.test(name);
|
|
332
|
-
}
|
|
333
|
-
const startsWithWildcard = pattern.startsWith("*");
|
|
334
|
-
const endsWithWildcard = pattern.endsWith("*");
|
|
335
|
-
if (startsWithWildcard && endsWithWildcard) {
|
|
336
|
-
const substr = pattern.slice(1, -1);
|
|
337
|
-
return (name) => name.includes(substr);
|
|
338
|
-
}
|
|
339
|
-
if (startsWithWildcard) {
|
|
340
|
-
const suffix = pattern.slice(1);
|
|
341
|
-
return (name) => name.endsWith(suffix);
|
|
342
|
-
}
|
|
343
|
-
if (endsWithWildcard) {
|
|
344
|
-
const prefix = pattern.slice(0, -1);
|
|
345
|
-
return (name) => name.startsWith(prefix);
|
|
346
|
-
}
|
|
347
|
-
return (name) => name === pattern;
|
|
348
|
-
}
|
|
349
|
-
function patternsToPredicate(patterns) {
|
|
350
|
-
if (Array.isArray(patterns)) {
|
|
351
|
-
const predicates = patterns.map(patternToPredicate);
|
|
352
|
-
return (ctx) => ctx.displayName !== void 0 && predicates.some((p) => p(ctx.displayName));
|
|
353
|
-
}
|
|
354
|
-
const predicate = patternToPredicate(patterns);
|
|
355
|
-
return (ctx) => ctx.displayName !== void 0 && predicate(ctx.displayName);
|
|
356
|
-
}
|
|
357
|
-
function compose(...middlewares) {
|
|
358
|
-
if (middlewares.length === 0) {
|
|
359
|
-
return (ctx) => ctx.next();
|
|
360
|
-
}
|
|
361
|
-
if (middlewares.length === 1) {
|
|
362
|
-
return middlewares[0];
|
|
363
|
-
}
|
|
364
|
-
return (ctx) => {
|
|
365
|
-
let index = 0;
|
|
366
|
-
const executeNext = () => {
|
|
367
|
-
if (index >= middlewares.length) {
|
|
368
|
-
return ctx.next();
|
|
369
|
-
}
|
|
370
|
-
const currentMiddleware = middlewares[index];
|
|
371
|
-
index++;
|
|
372
|
-
const wrappedCtx = ctx.type === "store" ? { ...ctx, next: executeNext } : { ...ctx, next: executeNext };
|
|
373
|
-
return currentMiddleware(wrappedCtx);
|
|
374
|
-
};
|
|
375
|
-
return executeNext();
|
|
376
|
-
};
|
|
377
|
-
}
|
|
378
|
-
function applyFor(predicateOrPatterns, middleware) {
|
|
379
|
-
const predicate = typeof predicateOrPatterns === "function" ? predicateOrPatterns : patternsToPredicate(predicateOrPatterns);
|
|
380
|
-
const composedMiddleware = Array.isArray(middleware) ? compose(...middleware) : middleware;
|
|
381
|
-
return (ctx) => {
|
|
382
|
-
if (predicate(ctx)) {
|
|
383
|
-
return composedMiddleware(ctx);
|
|
384
|
-
}
|
|
385
|
-
return ctx.next();
|
|
386
|
-
};
|
|
387
|
-
}
|
|
388
|
-
function applyExcept(predicateOrPatterns, middleware) {
|
|
389
|
-
const matchPredicate = typeof predicateOrPatterns === "function" ? predicateOrPatterns : patternsToPredicate(predicateOrPatterns);
|
|
390
|
-
const invertedPredicate = (ctx) => !matchPredicate(ctx);
|
|
391
|
-
return applyFor(invertedPredicate, middleware);
|
|
392
|
-
}
|
|
393
|
-
function forStores(storeMiddleware) {
|
|
394
|
-
return (ctx) => {
|
|
395
|
-
if (ctx.type === "store") {
|
|
396
|
-
return storeMiddleware(ctx);
|
|
397
|
-
}
|
|
398
|
-
return ctx.next();
|
|
399
|
-
};
|
|
400
|
-
}
|
|
401
|
-
const DEFAULT_KEY = {};
|
|
402
|
-
const cache = /* @__PURE__ */ new Map();
|
|
403
|
-
function getKeyCache(key) {
|
|
404
|
-
let keyCache = cache.get(key);
|
|
405
|
-
if (!keyCache) {
|
|
406
|
-
keyCache = /* @__PURE__ */ new WeakMap();
|
|
407
|
-
cache.set(key, keyCache);
|
|
408
|
-
}
|
|
409
|
-
return keyCache;
|
|
410
|
-
}
|
|
411
|
-
function trigger(keyOrFn, fnOrDepsOrOptions, depsOrFirstArg, ...restArgs) {
|
|
412
|
-
let key;
|
|
413
|
-
let fn;
|
|
414
|
-
let deps;
|
|
415
|
-
let equality;
|
|
416
|
-
let args;
|
|
417
|
-
if (typeof fnOrDepsOrOptions === "function") {
|
|
418
|
-
key = keyOrFn;
|
|
419
|
-
fn = fnOrDepsOrOptions;
|
|
420
|
-
deps = depsOrFirstArg ?? [];
|
|
421
|
-
args = restArgs;
|
|
422
|
-
} else if (Array.isArray(fnOrDepsOrOptions)) {
|
|
423
|
-
key = DEFAULT_KEY;
|
|
424
|
-
fn = keyOrFn;
|
|
425
|
-
deps = fnOrDepsOrOptions;
|
|
426
|
-
args = depsOrFirstArg !== void 0 ? [depsOrFirstArg, ...restArgs] : [];
|
|
427
|
-
} else {
|
|
428
|
-
const options = fnOrDepsOrOptions ?? {};
|
|
429
|
-
key = options.key ?? DEFAULT_KEY;
|
|
430
|
-
fn = keyOrFn;
|
|
431
|
-
deps = options.deps ?? [];
|
|
432
|
-
equality = options.equality ? resolveEquality(options.equality) : void 0;
|
|
433
|
-
args = depsOrFirstArg !== void 0 ? [depsOrFirstArg, ...restArgs] : [];
|
|
434
|
-
}
|
|
435
|
-
const cacheKey = unwrapFn(fn);
|
|
436
|
-
const keyCache = getKeyCache(key);
|
|
437
|
-
const cached = keyCache.get(cacheKey);
|
|
438
|
-
const eq = equality ?? (cached == null ? void 0 : cached.equality) ?? shallowEqual;
|
|
439
|
-
if (cached && eq(cached.deps, deps)) {
|
|
440
|
-
return cached.result;
|
|
441
|
-
}
|
|
442
|
-
const result = fn(...args);
|
|
443
|
-
keyCache.set(cacheKey, { deps, result, equality });
|
|
444
|
-
return result;
|
|
445
|
-
}
|
|
446
|
-
trigger.clear = (key) => {
|
|
447
|
-
cache.delete(key);
|
|
448
|
-
};
|
|
449
|
-
trigger.clearAll = () => {
|
|
450
|
-
cache.clear();
|
|
451
|
-
};
|
|
1
|
+
import { S, n, m, c, l, u, q, o, g, a, h, d, f, k, i, e, j, b, z, p, t, s, v, w, y, A, x } from "./index-OPaTR3zq.js";
|
|
2
|
+
import { A as A2, E, H, I, c as c2, L, P, a as a2, d as d2, S as S2, b as b2, e as e2, u as u2 } from "./effect-C6h0PDDI.js";
|
|
3
|
+
import { m as m2 } from "./meta-40r-AZfe.js";
|
|
452
4
|
export {
|
|
453
|
-
|
|
5
|
+
A2 as AsyncFunctionError,
|
|
454
6
|
E as EffectRefreshError,
|
|
455
|
-
HooksContextError,
|
|
7
|
+
H as HooksContextError,
|
|
456
8
|
I as InvalidActionError,
|
|
457
9
|
c2 as LifetimeMismatchError,
|
|
458
10
|
L as LocalStoreDependencyError,
|
|
459
11
|
P as ProviderMissingError,
|
|
460
|
-
STORION_TYPE,
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
applyExcept,
|
|
465
|
-
applyFor,
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
e3 as effect,
|
|
474
|
-
e2 as equality,
|
|
475
|
-
forStores,
|
|
12
|
+
S as STORION_TYPE,
|
|
13
|
+
a2 as SetupPhaseError,
|
|
14
|
+
d2 as StoreDisposedError,
|
|
15
|
+
S2 as StorionError,
|
|
16
|
+
n as applyExcept,
|
|
17
|
+
m as applyFor,
|
|
18
|
+
b2 as batch,
|
|
19
|
+
c as container,
|
|
20
|
+
l as createResolver,
|
|
21
|
+
u as deepEqual,
|
|
22
|
+
e2 as effect,
|
|
23
|
+
q as equality,
|
|
24
|
+
o as forStores,
|
|
476
25
|
g as getKind,
|
|
477
|
-
|
|
478
|
-
|
|
26
|
+
a as is,
|
|
27
|
+
h as isAction,
|
|
479
28
|
d as isContainer,
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
isSpec,
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
29
|
+
f as isFocus,
|
|
30
|
+
k as isSelectorContext,
|
|
31
|
+
i as isSpec,
|
|
32
|
+
e as isStore,
|
|
33
|
+
j as isStoreContext,
|
|
34
|
+
b as isStorion,
|
|
35
|
+
z as isWrappedFn,
|
|
36
|
+
m2 as meta,
|
|
37
|
+
p as pick,
|
|
38
|
+
t as shallowEqual,
|
|
489
39
|
s as store,
|
|
490
|
-
|
|
491
|
-
trigger,
|
|
492
|
-
untrack,
|
|
493
|
-
unwrapFn,
|
|
494
|
-
|
|
495
|
-
|
|
40
|
+
v as strictEqual,
|
|
41
|
+
w as trigger,
|
|
42
|
+
u2 as untrack,
|
|
43
|
+
y as unwrapFn,
|
|
44
|
+
A as withMeta,
|
|
45
|
+
x as wrapFn
|
|
496
46
|
};
|