@kontsedal/olas-core 0.0.5 → 0.1.0
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/index.cjs +0 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +109 -27
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +109 -27
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +0 -0
- package/dist/index.mjs.map +1 -1
- package/dist/{root-DqWolle_.mjs → root-Byq-QYTp.mjs} +1478 -347
- package/dist/root-Byq-QYTp.mjs.map +1 -0
- package/dist/{root-lBp7qziQ.cjs → root-CPSL5kpR.cjs} +1483 -346
- package/dist/root-CPSL5kpR.cjs.map +1 -0
- package/dist/testing.cjs +5 -1
- package/dist/testing.cjs.map +1 -1
- package/dist/testing.d.cts +3 -2
- package/dist/testing.d.cts.map +1 -1
- package/dist/testing.d.mts +3 -2
- package/dist/testing.d.mts.map +1 -1
- package/dist/testing.mjs +5 -2
- package/dist/testing.mjs.map +1 -1
- package/dist/{types-BH1o6nYa.d.mts → types-Brp-4WaZ.d.mts} +244 -23
- package/dist/types-Brp-4WaZ.d.mts.map +1 -0
- package/dist/{types-C4Vtkxbn.d.cts → types-DzDIypPo.d.cts} +244 -23
- package/dist/types-DzDIypPo.d.cts.map +1 -0
- package/package.json +4 -1
- package/src/controller/instance.ts +360 -94
- package/src/controller/root.ts +58 -30
- package/src/controller/types.ts +66 -4
- package/src/emitter.ts +8 -2
- package/src/errors.ts +39 -3
- package/src/forms/field.ts +219 -25
- package/src/forms/form-types.ts +16 -3
- package/src/forms/form.ts +360 -38
- package/src/forms/index.ts +3 -1
- package/src/forms/types.ts +27 -1
- package/src/forms/validators.ts +45 -11
- package/src/index.ts +13 -7
- package/src/query/client.ts +237 -58
- package/src/query/define.ts +0 -0
- package/src/query/entry.ts +259 -15
- package/src/query/focus-online.ts +53 -11
- package/src/query/infinite.ts +351 -47
- package/src/query/keys.ts +33 -2
- package/src/query/local.ts +3 -0
- package/src/query/mutation.ts +27 -6
- package/src/query/plugin.ts +43 -4
- package/src/query/types.ts +76 -6
- package/src/query/use.ts +53 -10
- package/src/selection.ts +49 -12
- package/src/signals/readonly.ts +3 -0
- package/src/signals/runtime.ts +27 -0
- package/src/signals/types.ts +10 -0
- package/src/testing.ts +9 -0
- package/src/timing/debounced.ts +106 -23
- package/src/timing/index.ts +1 -1
- package/src/timing/throttled.ts +85 -28
- package/src/utils.ts +15 -2
- package/dist/root-DqWolle_.mjs.map +0 -1
- package/dist/root-lBp7qziQ.cjs.map +0 -1
- package/dist/types-BH1o6nYa.d.mts.map +0 -1
- package/dist/types-C4Vtkxbn.d.cts.map +0 -1
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
//#region src/emitter.d.ts
|
|
2
2
|
/**
|
|
3
3
|
* Synchronous fan-out event bus. Handlers run in the order they subscribed.
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
*
|
|
5
|
+
* Emission iterates a SNAPSHOT of the handler set taken at the start of
|
|
6
|
+
* `emit()`. So within one emission: a handler added during emit does NOT fire
|
|
7
|
+
* for the current emission, and a handler removed during emit STILL fires for
|
|
8
|
+
* the current emission (it was captured in the snapshot).
|
|
9
|
+
*
|
|
10
|
+
* Handlers are stored in a `Set` keyed by reference — calling `on(h)` twice
|
|
11
|
+
* with the same `h` registers it ONCE; a single unsubscribe then removes it.
|
|
6
12
|
*
|
|
7
13
|
* `Emitter<void>` exposes `emit()` (no argument); other shapes expose
|
|
8
14
|
* `emit(value: T)`.
|
|
@@ -46,12 +52,33 @@ declare function createEmitter<T = void>(options?: {
|
|
|
46
52
|
*
|
|
47
53
|
* `'plugin'` is used for exceptions raised by `QueryClientPlugin` callbacks
|
|
48
54
|
* (`@kontsedal/olas-cross-tab` and friends); SPEC §13.2.
|
|
55
|
+
*
|
|
56
|
+
* The remaining fields are correlation hooks for telemetry adapters
|
|
57
|
+
* (Sentry / OpenTelemetry breadcrumbs / Datadog RUM): `eventId` is a stable
|
|
58
|
+
* per-dispatch UUID, `timestamp` is wall-clock ms, `attempt` is the
|
|
59
|
+
* 0-based retry attempt for cache/mutation paths, `cause` is the
|
|
60
|
+
* `Error.cause`-style underlying error if the surfaced error wrapped it,
|
|
61
|
+
* `pluginName` identifies the throwing plugin (set only when `kind ==
|
|
62
|
+
* 'plugin'`).
|
|
49
63
|
*/
|
|
50
64
|
type ErrorContext = {
|
|
51
65
|
kind: 'effect' | 'cache' | 'mutation' | 'emitter' | 'construction' | 'plugin';
|
|
52
66
|
controllerPath: readonly string[];
|
|
53
67
|
queryKey?: readonly unknown[];
|
|
68
|
+
eventId: string;
|
|
69
|
+
timestamp: number;
|
|
70
|
+
attempt?: number;
|
|
71
|
+
cause?: unknown;
|
|
72
|
+
pluginName?: string;
|
|
54
73
|
};
|
|
74
|
+
/** Signature of `RootOptions.onError`. */
|
|
75
|
+
type ErrorHandler = (err: unknown, context: ErrorContext) => void;
|
|
76
|
+
/**
|
|
77
|
+
* Partial context — `dispatchError` fills in `eventId` + `timestamp`. Call
|
|
78
|
+
* sites pass the diagnostic fields they know about; the dispatcher stamps
|
|
79
|
+
* the per-dispatch correlation data.
|
|
80
|
+
*/
|
|
81
|
+
type ErrorContextInput = Omit<ErrorContext, 'eventId' | 'timestamp'>;
|
|
55
82
|
//#endregion
|
|
56
83
|
//#region src/signals/types.d.ts
|
|
57
84
|
/**
|
|
@@ -69,6 +96,16 @@ type ReadSignal<T> = {
|
|
|
69
96
|
* unsubscribe function.
|
|
70
97
|
*/
|
|
71
98
|
subscribe(handler: (value: T) => void): () => void;
|
|
99
|
+
/**
|
|
100
|
+
* Same as `subscribe`, but does NOT fire the synchronous "current value"
|
|
101
|
+
* callback on subscribe — only fires on subsequent changes. Useful for
|
|
102
|
+
* "react to user changes" semantics where the initial fire would be a
|
|
103
|
+
* spurious notification (the most common consumer pattern — `useField`,
|
|
104
|
+
* `usePersisted`, and the React adapter all hand-rolled this).
|
|
105
|
+
*
|
|
106
|
+
* Returns the unsubscribe function.
|
|
107
|
+
*/
|
|
108
|
+
subscribeChanges(handler: (value: T) => void): () => void;
|
|
72
109
|
};
|
|
73
110
|
/**
|
|
74
111
|
* Writable reactive value. `value` is assignable; `set(value)` is the
|
|
@@ -84,7 +121,31 @@ type Signal<T> = ReadSignal<T> & {
|
|
|
84
121
|
type Computed<T> = ReadSignal<T>;
|
|
85
122
|
//#endregion
|
|
86
123
|
//#region src/forms/types.d.ts
|
|
87
|
-
|
|
124
|
+
/**
|
|
125
|
+
* A single validation issue, optionally targeting a descendant of a form tree.
|
|
126
|
+
*
|
|
127
|
+
* - An **empty** `path` means the node the validator is attached to itself —
|
|
128
|
+
* for a leaf `Field` that's the field; for a `Form` / `FieldArray` it's the
|
|
129
|
+
* node's `topLevelErrors`.
|
|
130
|
+
* - A **non-empty** `path` routes the `message` to the matching descendant
|
|
131
|
+
* (`Form` walks keys, `FieldArray` walks numeric indices). Unresolvable
|
|
132
|
+
* paths fall back to the owning node's `topLevelErrors` rather than vanishing.
|
|
133
|
+
*
|
|
134
|
+
* Segments are object keys (`string`) or array indices (`number`). Returned by
|
|
135
|
+
* form-level validators (cross-field rules) and by the Standard-Schema
|
|
136
|
+
* `validator(...)` adapter, which maps each `issue.path` here. See SPEC §8.3.
|
|
137
|
+
*/
|
|
138
|
+
type FormIssue = {
|
|
139
|
+
path: (string | number)[];
|
|
140
|
+
message: string;
|
|
141
|
+
};
|
|
142
|
+
/**
|
|
143
|
+
* What a {@link Validator} may return synchronously. A plain `string` is a
|
|
144
|
+
* message on the node itself (equivalent to a `FormIssue` with an empty path);
|
|
145
|
+
* `null` means "no error"; a `FormIssue[]` targets specific descendants.
|
|
146
|
+
*/
|
|
147
|
+
type ValidatorResult = string | null | FormIssue[];
|
|
148
|
+
type Validator<T> = (value: T, signal: AbortSignal) => ValidatorResult | Promise<ValidatorResult>;
|
|
88
149
|
//#endregion
|
|
89
150
|
//#region src/forms/form-types.d.ts
|
|
90
151
|
type FormSchema = {
|
|
@@ -144,6 +205,12 @@ type Form<S extends FormSchema> = {
|
|
|
144
205
|
readonly isDirty: ReadSignal<boolean>;
|
|
145
206
|
readonly touched: ReadSignal<boolean>;
|
|
146
207
|
readonly isValidating: ReadSignal<boolean>;
|
|
208
|
+
/**
|
|
209
|
+
* Dotted paths of every leaf whose `isDirty` is true. Useful for PATCH
|
|
210
|
+
* payloads and "highlight changed inputs" UIs. Field paths use dot
|
|
211
|
+
* notation; array items use bracket notation (`items[0].title`).
|
|
212
|
+
*/
|
|
213
|
+
readonly dirtyFields: ReadSignal<string[]>;
|
|
147
214
|
/**
|
|
148
215
|
* `true` while a `submit(...)` is in flight. Clears when the handler
|
|
149
216
|
* resolves, throws, or pre-submit validation fails.
|
|
@@ -166,7 +233,14 @@ type Form<S extends FormSchema> = {
|
|
|
166
233
|
* `Form`-traversal code (nested-form initial application).
|
|
167
234
|
*/
|
|
168
235
|
resetWithInitial(partial: DeepPartial<FormValue<S>>): void; /** Reset every leaf to its initial value. */
|
|
169
|
-
reset(): void;
|
|
236
|
+
reset(): void;
|
|
237
|
+
/**
|
|
238
|
+
* Reset a named subtree to its initial. Path uses the same dotted /
|
|
239
|
+
* bracket notation as `setErrors` / `flatErrors`. Unlike `Form.set({foo:
|
|
240
|
+
* undefined})` (which is "leave alone"), this is the explicit
|
|
241
|
+
* "clear this subtree" gesture. Pass `''` to reset the whole form.
|
|
242
|
+
*/
|
|
243
|
+
clearSubtree(path: string): void; /** Mark every leaf as touched (so error messages appear). */
|
|
170
244
|
markAllTouched(): void; /** Re-run every leaf's validators. Resolves with true if all leaves are valid. */
|
|
171
245
|
validate(): Promise<boolean>;
|
|
172
246
|
/**
|
|
@@ -175,13 +249,13 @@ type Form<S extends FormSchema> = {
|
|
|
175
249
|
* `submitError`. Returns `{ ok, data?, error? }` — see `FormImpl.submit`
|
|
176
250
|
* for the full contract.
|
|
177
251
|
*/
|
|
178
|
-
submit(handler: (value: FormValue<S>) =>
|
|
252
|
+
submit<R = unknown>(handler: (value: FormValue<S>) => R | Promise<R>, options?: {
|
|
179
253
|
validateBeforeSubmit?: boolean;
|
|
180
254
|
resetOnSuccess?: boolean;
|
|
181
255
|
onError?: 'rethrow' | 'capture';
|
|
182
256
|
}): Promise<{
|
|
183
257
|
ok: boolean;
|
|
184
|
-
data?:
|
|
258
|
+
data?: Awaited<R>;
|
|
185
259
|
error?: unknown;
|
|
186
260
|
}>;
|
|
187
261
|
/**
|
|
@@ -224,7 +298,7 @@ type FieldArray<I extends Field<any> | Form<any>> = {
|
|
|
224
298
|
/** Lifecycle phase of an async resource. */
|
|
225
299
|
type AsyncStatus = 'idle' | 'pending' | 'success' | 'error';
|
|
226
300
|
/**
|
|
227
|
-
* The
|
|
301
|
+
* The nine reactive signals + three actions a subscriber sees for any async
|
|
228
302
|
* resource (`LocalCache<T>` or a `Query` subscription). Spec §20.4.
|
|
229
303
|
*
|
|
230
304
|
* - `data` / `error` / `status` — current outcome.
|
|
@@ -233,6 +307,7 @@ type AsyncStatus = 'idle' | 'pending' | 'success' | 'error';
|
|
|
233
307
|
* - `isStale` — true when `staleTime` has elapsed since `lastUpdatedAt`.
|
|
234
308
|
* - `lastUpdatedAt` — epoch ms of last success.
|
|
235
309
|
* - `hasPendingMutations` — at least one mutation has a snapshot on this entry.
|
|
310
|
+
* - `isPaused` — a fetch is parked waiting for network reconnect.
|
|
236
311
|
*
|
|
237
312
|
* Actions:
|
|
238
313
|
* - `refetch()` — force a fetch; resolves with the result.
|
|
@@ -248,6 +323,15 @@ type AsyncState<T> = {
|
|
|
248
323
|
isStale: ReadSignal<boolean>;
|
|
249
324
|
lastUpdatedAt: ReadSignal<number | undefined>;
|
|
250
325
|
hasPendingMutations: ReadSignal<boolean>;
|
|
326
|
+
/**
|
|
327
|
+
* True while a fetch is parked waiting for network reconnect — either an
|
|
328
|
+
* `online`-mode fetch deferred because `navigator.onLine` was `false`, or an
|
|
329
|
+
* `offlineFirst` fetch that hit a network error while offline and is waiting
|
|
330
|
+
* to retry on reconnect. Distinct from `isFetching` (nothing is in flight
|
|
331
|
+
* while parked) and from `status` (stays `idle` / last-success, never
|
|
332
|
+
* flips to `error` for the parked attempt). Spec §5.5.
|
|
333
|
+
*/
|
|
334
|
+
isPaused: ReadSignal<boolean>;
|
|
251
335
|
refetch: () => Promise<T>;
|
|
252
336
|
reset: () => void;
|
|
253
337
|
firstValue: () => Promise<T>;
|
|
@@ -288,6 +372,13 @@ type LocalCache<T> = AsyncState<T> & {
|
|
|
288
372
|
};
|
|
289
373
|
/** One entry inside a `DehydratedState`. */
|
|
290
374
|
type DehydratedEntry = {
|
|
375
|
+
/**
|
|
376
|
+
* Stable query identity — `spec.queryId` when set, else an auto-assigned
|
|
377
|
+
* registration id. Namespaces the hydration buffer so a subscriber of query
|
|
378
|
+
* B can't adopt query A's payload just because their `key()` outputs hash
|
|
379
|
+
* the same (spec §15).
|
|
380
|
+
*/
|
|
381
|
+
id: string;
|
|
291
382
|
key: readonly unknown[];
|
|
292
383
|
data: unknown;
|
|
293
384
|
lastUpdatedAt: number;
|
|
@@ -325,6 +416,25 @@ type FetchCtx = {
|
|
|
325
416
|
* cache args come after. This shape lets module-scoped queries read
|
|
326
417
|
* `ctx.deps.api` etc. — no `setApiForQuery(api)` module-level capture needed.
|
|
327
418
|
*/
|
|
419
|
+
/**
|
|
420
|
+
* How a query behaves with respect to the network reachability signal.
|
|
421
|
+
*
|
|
422
|
+
* - `online` (default) — pause fetches while `navigator.onLine` is `false`;
|
|
423
|
+
* automatically resume when reconnect fires (via `subscribeReconnect`).
|
|
424
|
+
* Inflight fetches are NOT aborted on offline; a `bindEntry` / `acquire`
|
|
425
|
+
* that lands while offline simply defers the initial fetch. The deferred
|
|
426
|
+
* entry reports `isPaused: true` until reconnect.
|
|
427
|
+
* - `always` — never gate on connectivity; fetcher runs whenever requested.
|
|
428
|
+
* Useful for queries against `localhost` / IPC / a service worker that
|
|
429
|
+
* doesn't surface through `navigator.onLine`.
|
|
430
|
+
* - `offlineFirst` — start the fetch regardless; if it rejects with a
|
|
431
|
+
* network-shaped error (a `fetch` `TypeError`; `AbortError` excluded) while
|
|
432
|
+
* `navigator.onLine` is `false`, park the entry (`isPaused: true`, status
|
|
433
|
+
* stays `idle` / last-success) and retry on reconnect rather than surfacing
|
|
434
|
+
* the error. Matches TanStack's `offlineFirst` policy for app-shell-first
|
|
435
|
+
* PWAs.
|
|
436
|
+
*/
|
|
437
|
+
type NetworkMode = 'online' | 'always' | 'offlineFirst';
|
|
328
438
|
type QuerySpec<Args extends unknown[], T> = {
|
|
329
439
|
key: (...args: Args) => unknown[];
|
|
330
440
|
fetcher: (ctx: FetchCtx, ...args: Args) => Promise<T>;
|
|
@@ -336,6 +446,20 @@ type QuerySpec<Args extends unknown[], T> = {
|
|
|
336
446
|
keepPreviousData?: boolean;
|
|
337
447
|
retry?: RetryPolicy;
|
|
338
448
|
retryDelay?: RetryDelay;
|
|
449
|
+
/**
|
|
450
|
+
* Network-mode policy. Defaults to `'online'`. See `NetworkMode` for the
|
|
451
|
+
* three policies. Override per-query for special cases (e.g. `'always'`
|
|
452
|
+
* for `localhost` queries that don't surface through `navigator.onLine`).
|
|
453
|
+
*/
|
|
454
|
+
networkMode?: NetworkMode;
|
|
455
|
+
/**
|
|
456
|
+
* Whether to run `structuralShare(prev, next)` after a successful fetch.
|
|
457
|
+
* Defaults to `true`. Set `false` for queries returning large payloads
|
|
458
|
+
* (e.g. a 100k-row table) where the O(payload) deep walk on every poll
|
|
459
|
+
* is more expensive than re-rendering. With `false`, `applySuccess`
|
|
460
|
+
* writes the fetcher's result directly.
|
|
461
|
+
*/
|
|
462
|
+
structuralShare?: boolean;
|
|
339
463
|
/**
|
|
340
464
|
* Stable identifier used by `QueryClientPlugin`s (e.g. `@kontsedal/olas-cross-tab`)
|
|
341
465
|
* to locate the same query across tabs / processes / persistence layers.
|
|
@@ -346,10 +470,17 @@ type QuerySpec<Args extends unknown[], T> = {
|
|
|
346
470
|
*/
|
|
347
471
|
queryId?: string;
|
|
348
472
|
/**
|
|
349
|
-
* Opt this query into cross-tab cache sync (`@kontsedal/olas-cross-tab`).
|
|
350
|
-
* without a `queryId` and without a plugin installed. SPEC §13.2.
|
|
473
|
+
* Opt this query into cross-tab cache sync (`@kontsedal/olas-cross-tab`).
|
|
474
|
+
* No effect without a `queryId` and without a plugin installed. SPEC §13.2.
|
|
475
|
+
*
|
|
476
|
+
* - `true` (legacy) — equivalent to `'data'`.
|
|
477
|
+
* - `'data'` — propagate explicit `setData`/`invalidate` writes.
|
|
478
|
+
*
|
|
479
|
+
* The `'infinite'` / `'both'` values were removed (T6.4): peers can't apply
|
|
480
|
+
* infinite-query page arrays cross-tab, so those broadcasts were channel
|
|
481
|
+
* noise. Infinite cross-tab is tracked in `BACKLOG.md`.
|
|
351
482
|
*/
|
|
352
|
-
crossTab?: boolean;
|
|
483
|
+
crossTab?: boolean | 'data';
|
|
353
484
|
};
|
|
354
485
|
/**
|
|
355
486
|
* A module-scoped shared query handle. Bind a subscriber via
|
|
@@ -360,11 +491,21 @@ type Query<Args extends unknown[], T> = {
|
|
|
360
491
|
readonly __olas: 'query'; /** Mark a specific keyed entry stale + trigger refetch if any subscribers. */
|
|
361
492
|
invalidate(...args: Args): void; /** Mark every keyed entry stale + trigger refetch on all subscribers. */
|
|
362
493
|
invalidateAll(): void; /** Patch the current data for a specific key. Returns a `Snapshot` for rollback. */
|
|
363
|
-
setData(...args: [...Args, updater: (prev: T | undefined) => T]): Snapshot;
|
|
494
|
+
setData(...args: [...Args, updater: (prev: T | undefined) => T]): Snapshot;
|
|
495
|
+
/**
|
|
496
|
+
* Cancel the in-flight fetch for a specific key (if any). Aborts + supersedes
|
|
497
|
+
* it, restores a settled status (`'success'` if data exists, else `'idle'`),
|
|
498
|
+
* and does NOT touch data. Use before an optimistic `setData` so an
|
|
499
|
+
* outgoing refetch's stale response can't clobber it (spec §5, §6.4).
|
|
500
|
+
*/
|
|
501
|
+
cancel(...args: Args): void; /** Cancel in-flight fetches for every keyed entry of this query. */
|
|
502
|
+
cancelAll(): void; /** Eagerly fetch into the cache without subscribing. */
|
|
364
503
|
prefetch(...args: Args): Promise<T>;
|
|
365
504
|
};
|
|
366
|
-
/** What `ctx.use(query, ...)` returns
|
|
367
|
-
type QuerySubscription<T> = AsyncState<T
|
|
505
|
+
/** What `ctx.use(query, ...)` returns — `AsyncState<T>` plus `cancel()`. */
|
|
506
|
+
type QuerySubscription<T> = AsyncState<T> & {
|
|
507
|
+
/** Cancel this subscription's in-flight fetch (if any). See `Query.cancel`. */cancel: () => void;
|
|
508
|
+
};
|
|
368
509
|
/**
|
|
369
510
|
* Options passed to `ctx.use(query, opts)` to control the subscription
|
|
370
511
|
* (reactive key, enabled-gating). The `key` thunk reads signals —
|
|
@@ -411,7 +552,9 @@ type InfiniteQuerySpec<Args extends unknown[], PageParam, TPage, TItem = TPage>
|
|
|
411
552
|
refetchInterval?: number;
|
|
412
553
|
keepPreviousData?: boolean;
|
|
413
554
|
retry?: RetryPolicy;
|
|
414
|
-
retryDelay?: RetryDelay;
|
|
555
|
+
retryDelay?: RetryDelay; /** See `QuerySpec.networkMode`. Defaults to `'online'`. */
|
|
556
|
+
networkMode?: NetworkMode; /** See `QuerySpec.structuralShare`. Applies to the head-page refresh. */
|
|
557
|
+
structuralShare?: boolean;
|
|
415
558
|
/**
|
|
416
559
|
* Stable identifier used by `QueryClientPlugin`s (`@kontsedal/olas-cross-tab`,
|
|
417
560
|
* etc.). Infinite queries do NOT propagate cross-tab in v1 — the
|
|
@@ -420,10 +563,12 @@ type InfiniteQuerySpec<Args extends unknown[], PageParam, TPage, TItem = TPage>
|
|
|
420
563
|
*/
|
|
421
564
|
queryId?: string;
|
|
422
565
|
/**
|
|
423
|
-
*
|
|
424
|
-
*
|
|
566
|
+
* Accepted for API symmetry, but infinite queries do NOT propagate
|
|
567
|
+
* cross-tab: peers can't apply page-array payloads (core's remote-apply
|
|
568
|
+
* paths early-return for infinite defs). The `'infinite'` / `'both'` values
|
|
569
|
+
* were removed in T6.4; infinite cross-tab is tracked in `BACKLOG.md`.
|
|
425
570
|
*/
|
|
426
|
-
crossTab?: boolean;
|
|
571
|
+
crossTab?: boolean | 'data';
|
|
427
572
|
};
|
|
428
573
|
/**
|
|
429
574
|
* Module-scoped handle for a paginated query. Mirrors `Query<Args, TPage[]>`
|
|
@@ -434,6 +579,10 @@ type InfiniteQuery<Args extends unknown[], TPage, _TItem> = {
|
|
|
434
579
|
invalidate(...args: Args): void;
|
|
435
580
|
invalidateAll(): void;
|
|
436
581
|
setData(...args: [...Args, updater: (prev: TPage[] | undefined) => TPage[]]): Snapshot;
|
|
582
|
+
/** Cancel the in-flight fetch (initial/refetch or paging) for a key. See
|
|
583
|
+
* `Query.cancel` (spec §5, §6.4). */
|
|
584
|
+
cancel(...args: Args): void; /** Cancel in-flight fetches for every keyed entry of this infinite query. */
|
|
585
|
+
cancelAll(): void;
|
|
437
586
|
prefetch(...args: Args): Promise<TPage>;
|
|
438
587
|
};
|
|
439
588
|
/**
|
|
@@ -452,7 +601,8 @@ type InfiniteQuerySubscription<TPage, TItem> = AsyncState<TPage[]> & {
|
|
|
452
601
|
isFetchingNextPage: ReadSignal<boolean>;
|
|
453
602
|
isFetchingPreviousPage: ReadSignal<boolean>;
|
|
454
603
|
fetchNextPage: () => Promise<void>;
|
|
455
|
-
fetchPreviousPage: () => Promise<void>;
|
|
604
|
+
fetchPreviousPage: () => Promise<void>; /** Cancel this subscription's in-flight fetch (if any). See `Query.cancel`. */
|
|
605
|
+
cancel: () => void;
|
|
456
606
|
};
|
|
457
607
|
//#endregion
|
|
458
608
|
//#region src/devtools.d.ts
|
|
@@ -672,7 +822,16 @@ type Mutation<V, R> = {
|
|
|
672
822
|
data: ReadSignal<R | undefined>;
|
|
673
823
|
error: ReadSignal<unknown | undefined>;
|
|
674
824
|
isPending: ReadSignal<boolean>;
|
|
675
|
-
|
|
825
|
+
/**
|
|
826
|
+
* Outcome of the latest run: `'idle'` (never run / reset), `'pending'`
|
|
827
|
+
* (in flight), `'success'`, `'error'`. Distinct from `isPending` (which
|
|
828
|
+
* stays true while ANY run is in flight, for parallel mode) and from `data`
|
|
829
|
+
* — a `void` mutation still reports `status: 'success'` after it resolves.
|
|
830
|
+
* A superseded `latest-wins` run does NOT flip status to `'error'`; the
|
|
831
|
+
* superseder owns the final status.
|
|
832
|
+
*/
|
|
833
|
+
status: ReadSignal<AsyncStatus>;
|
|
834
|
+
lastVariables: ReadSignal<V | undefined>; /** Clear `data` / `error` / `lastVariables` / `status` without aborting in-flight runs. */
|
|
676
835
|
reset(): void; /** Abort in-flight runs and tear down. Idempotent. Called by the parent controller's dispose. */
|
|
677
836
|
dispose(): void;
|
|
678
837
|
};
|
|
@@ -767,7 +926,9 @@ type SetDataEvent = {
|
|
|
767
926
|
isRemote: boolean;
|
|
768
927
|
/**
|
|
769
928
|
* Origin of the write. `'set'` covers explicit `client.setData` (mutations,
|
|
770
|
-
* optimistic updates
|
|
929
|
+
* optimistic updates AND their `snapshot.rollback()`, plugin-initiated
|
|
930
|
+
* patches) — a rollback re-broadcasts the restored value so peers drop the
|
|
931
|
+
* failed optimistic state (T3.6). `'fetch'` fires when the
|
|
771
932
|
* query fetcher resolved successfully and wrote the result into the entry
|
|
772
933
|
* — emitted after the data signal is settled. `'remote'` is the
|
|
773
934
|
* `applyRemoteSetData` path (cross-tab / server-push); equivalent to
|
|
@@ -822,6 +983,13 @@ type MutationSettleEvent = {
|
|
|
822
983
|
* `onError` handler with `kind: 'plugin'`.
|
|
823
984
|
*/
|
|
824
985
|
type QueryClientPlugin = {
|
|
986
|
+
/**
|
|
987
|
+
* Optional human-readable identifier surfaced in `ErrorContext.pluginName`
|
|
988
|
+
* when this plugin's callback throws. Without it, `pluginName` is left
|
|
989
|
+
* `undefined`. Recommended for shipped plugins so Sentry/OTel adapters
|
|
990
|
+
* can attribute errors back to the right package.
|
|
991
|
+
*/
|
|
992
|
+
readonly name?: string;
|
|
825
993
|
/**
|
|
826
994
|
* Called once after the `QueryClient` is constructed. Use it to wire up
|
|
827
995
|
* transport listeners and capture the `QueryClientPluginApi`. SPEC §13.2.
|
|
@@ -1002,6 +1170,20 @@ type Collection<K, Api> = {
|
|
|
1002
1170
|
readonly size: ReadSignal<number>;
|
|
1003
1171
|
get(key: K): Api | undefined;
|
|
1004
1172
|
has(key: K): boolean;
|
|
1173
|
+
/**
|
|
1174
|
+
* Suspend a specific collection item by key — pauses its effects without
|
|
1175
|
+
* disposing it (mirrors `attach.suspend()`). Useful for virtualized
|
|
1176
|
+
* lists where rows scrolled out of view should stop running their
|
|
1177
|
+
* effects but stay reconstructible without re-fetching their state.
|
|
1178
|
+
*
|
|
1179
|
+
* No-op if the key isn't in the collection. Neither the collection
|
|
1180
|
+
* reconcile nor a whole-tree `suspend()`/`resume()` cascade (e.g.
|
|
1181
|
+
* KeepAlive) will auto-resume a suspended item — call `resumeItem(key)`
|
|
1182
|
+
* to bring it back (spec §4.1).
|
|
1183
|
+
*/
|
|
1184
|
+
suspendItem(key: K): void; /** Resume a previously-suspended item. No-op if not suspended / not present. */
|
|
1185
|
+
resumeItem(key: K): void; /** Whether the item is currently suspended. False when not present. */
|
|
1186
|
+
isItemSuspended(key: K): boolean;
|
|
1005
1187
|
};
|
|
1006
1188
|
/**
|
|
1007
1189
|
* Homogeneous form of `ctx.collection`: one controller def for every item,
|
|
@@ -1082,7 +1264,23 @@ type Ctx<TDeps = AmbientDeps> = {
|
|
|
1082
1264
|
use<Args extends unknown[], TPage, TItem>(source: InfiniteQuery<Args, TPage, TItem>, keyOrOptions?: (() => readonly [...Args]) | UseOptions<Args>): InfiniteQuerySubscription<TPage, TItem>;
|
|
1083
1265
|
mutation<V, R>(spec: MutationSpec<V, R>): Mutation<V, R>;
|
|
1084
1266
|
emitter<T = void>(): Emitter<T>;
|
|
1085
|
-
|
|
1267
|
+
/**
|
|
1268
|
+
* Convenience re-export of the standalone `signal(initial)` function bound
|
|
1269
|
+
* to the controller's surface. Identical semantics — there's no lifecycle
|
|
1270
|
+
* to manage for a plain signal — but having it on `ctx` makes "everything
|
|
1271
|
+
* I need is on ctx" feel honest and lets consumers avoid importing from
|
|
1272
|
+
* `@kontsedal/olas-core` separately.
|
|
1273
|
+
*/
|
|
1274
|
+
signal<T>(initial: T): Signal<T>;
|
|
1275
|
+
/**
|
|
1276
|
+
* Convenience re-export of the standalone `computed(fn)` function bound
|
|
1277
|
+
* to the controller's surface. Re-evaluates on tracked-dep change; same
|
|
1278
|
+
* caveat as `signal` — no lifecycle binding, just discoverability.
|
|
1279
|
+
*/
|
|
1280
|
+
computed<T>(fn: () => T): Computed<T>;
|
|
1281
|
+
field<T>(initial: T, validators?: ReadonlyArray<Validator<T>>, options?: {
|
|
1282
|
+
validateOn?: 'change' | 'blur' | 'submit';
|
|
1283
|
+
}): Field<T>;
|
|
1086
1284
|
form<S extends FormSchema>(schema: S, options?: FormOptions<S>): Form<S>;
|
|
1087
1285
|
fieldArray<I extends Field<any> | Form<any>>(itemFactory: (initial?: ItemInitial<I>) => I, options?: FieldArrayOptions<I>): FieldArray<I>;
|
|
1088
1286
|
child<Props, Api>(def: ControllerDef<Props, Api>, props: Props, options?: {
|
|
@@ -1187,6 +1385,17 @@ type RootOptions<TDeps> = {
|
|
|
1187
1385
|
* the root disposes. SPEC §13.2.
|
|
1188
1386
|
*/
|
|
1189
1387
|
plugins?: QueryClientPlugin[];
|
|
1388
|
+
/**
|
|
1389
|
+
* Pre-seed scopes on the root controller before its factory runs. Useful
|
|
1390
|
+
* for cross-cutting values an adapter wants to provide once (route
|
|
1391
|
+
* params from a router bridge, theme tokens, etc.) without forcing the
|
|
1392
|
+
* user's root controller to call `ctx.provide(...)`.
|
|
1393
|
+
*
|
|
1394
|
+
* Bindings are flat `[scope, value]` tuples; later bindings for the
|
|
1395
|
+
* same scope override earlier ones. `ctx.inject` from any descendant
|
|
1396
|
+
* resolves these via the normal scope chain walk. SPEC §10.3.
|
|
1397
|
+
*/
|
|
1398
|
+
scopes?: ReadonlyArray<readonly [Scope<unknown>, unknown]>;
|
|
1190
1399
|
};
|
|
1191
1400
|
/**
|
|
1192
1401
|
* The root's public surface: the controller's `Api` plus lifecycle controls
|
|
@@ -1201,8 +1410,20 @@ type Root<Api> = Api & {
|
|
|
1201
1410
|
resume(): void;
|
|
1202
1411
|
dehydrate(): DehydratedState;
|
|
1203
1412
|
waitForIdle(): Promise<void>;
|
|
1413
|
+
/**
|
|
1414
|
+
* Apply a single dehydrated query entry to this root's cache. Idempotent
|
|
1415
|
+
* across pre-bind / post-bind: if a `ClientEntry` for `queryId + keyArgs`
|
|
1416
|
+
* already exists, the data is written through and supersedes any inflight
|
|
1417
|
+
* fetch; otherwise it's buffered for the next `bindEntry`.
|
|
1418
|
+
*
|
|
1419
|
+
* Designed for streaming SSR — each `<Suspense>` boundary that resolves
|
|
1420
|
+
* on the server can push its entry into the live client root as the
|
|
1421
|
+
* bootstrap script executes. Also useful for `localStorage` warm-starts
|
|
1422
|
+
* and similar "I have fresh data from elsewhere, inject it" patterns.
|
|
1423
|
+
*/
|
|
1424
|
+
applyDehydratedEntry(queryId: string, keyArgs: readonly unknown[], data: unknown, lastUpdatedAt: number): void;
|
|
1204
1425
|
readonly __debug: DebugBus;
|
|
1205
1426
|
};
|
|
1206
1427
|
//#endregion
|
|
1207
|
-
export {
|
|
1208
|
-
//# sourceMappingURL=types-
|
|
1428
|
+
export { UseOptions as $, Mutation as A, InfiniteQuerySubscription as B, QueryClientPluginApi as C, EmitterErrorReporter as Ct, _unregisterMutationById as D, SetDataEvent as E, DebugBus as F, LocalCache as G, AsyncStatus as H, DebugCacheEntry as I, QuerySpec as J, NetworkMode as K, DebugEvent as L, MutationDef as M, MutationSpec as N, lookupRegisteredMutation as O, defineMutation as P, Snapshot as Q, InfiniteQuery as R, QueryClientPlugin as S, Emitter as St, RegisteredQuery as T, DehydratedEntry as U, AsyncState as V, DehydratedState as W, RetryDelay as X, QuerySubscription as Y, RetryPolicy as Z, defineScope as _, ReadSignal as _t, CollectionFactoryResult as a, FieldArrayValue as at, MutationEnqueueEvent as b, ErrorContextInput as bt, CtrlApi as c, FormOptions as ct, Field as d, FormValue as dt, DeepPartial as et, LazyChild as f, ItemInitial as ft, ScopeOptions as g, Computed as gt, Scope as h, ValidatorResult as ht, CollectionFactoryOptions as i, FieldArrayValidator as it, MutationConcurrency as j, lookupRegisteredQuery as k, CtrlProps as l, FormSchema as lt, RootOptions as m, Validator as mt, Collection as n, FieldArrayItemErrors as nt, CollectionHomogeneousOptions as o, Form as ot, Root as p, FormIssue as pt, Query as q, CollectionFactoryApi as r, FieldArrayOptions as rt, ControllerDef as s, FormErrors as st, AmbientDeps as t, FieldArray as tt, Ctx as u, FormValidator as ut, GcEvent as v, Signal as vt, RegisteredMutation as w, createEmitter as wt, MutationSettleEvent as x, ErrorHandler as xt, InvalidateEvent as y, ErrorContext as yt, InfiniteQuerySpec as z };
|
|
1429
|
+
//# sourceMappingURL=types-DzDIypPo.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types-DzDIypPo.d.cts","names":[],"sources":["../src/emitter.ts","../src/errors.ts","../src/signals/types.ts","../src/forms/types.ts","../src/forms/form-types.ts","../src/query/types.ts","../src/query/infinite.ts","../src/devtools.ts","../src/query/mutation.ts","../src/query/plugin.ts","../src/scope.ts","../src/controller/types.ts"],"mappings":";;AAgBA;;;;;;;;;;;;;;;KAAY,OAAA;EACV,IAAA,GAAO,CAAA,iCAAkC,KAAA,EAAO,CAAA,WAE7C;EAAH,EAAA,CAAG,OAAA,GAAU,KAAA,EAAO,CAAA,wBAEE;EAAtB,IAAA,CAAK,OAAA,GAAU,KAAA,EAAO,CAAA,wBAAjB;EAEL,OAAA;AAAA;AAAO;AAWT;;;;AAAgD;AAXvC,KAWG,oBAAA,IAAwB,GAAY;;;;;;;;;;;;iBAyEhC,aAAA,UAAA,CAAwB,OAAA;EAAY,OAAA,GAAU,oBAAA;AAAA,IAAyB,OAAA,CAAQ,CAAA;;;;AA3F/F;;;;;;;;;;;;;;;;KCCY,YAAA;EACV,IAAA;EACA,cAAA;EACA,QAAA;EACA,OAAA;EACA,SAAA;EACA,OAAA;EACA,KAAA;EACA,UAAA;AAAA;;KAIU,YAAA,IAAgB,GAAA,WAAc,OAAA,EAAS,YAAY;;ADKf;AAyEhD;;;KCvEY,iBAAA,GAAoB,IAAI,CAAC,YAAA;;;;ADpBrC;;;;;KEVY,UAAA;EAAA,SACD,KAAA,EAAO,CAAA,EFcO;EEZvB,IAAA,IAAQ,CAAA;EFOU;;;;;EEDlB,SAAA,CAAU,OAAA,GAAU,KAAA,EAAO,CAAA;EFIP;;;;;;;;;EEMpB,gBAAA,CAAiB,OAAA,GAAU,KAAA,EAAO,CAAA;AAAA;;;;AFSY;AAyEhD;KE1EY,MAAA,MAAY,UAAA,CAAW,CAAA;EACjC,KAAA,EAAO,CAAA;EACP,GAAA,CAAI,KAAA,EAAO,CAAA;EACX,MAAA,CAAO,EAAA,GAAK,IAAA,EAAM,CAAA,KAAM,CAAA;AAAA;;KAId,QAAA,MAAc,UAAU,CAAC,CAAA;;;;AFxBrC;;;;;;;;;;;;;KGFY,SAAA;EAAc,IAAA;EAA2B,OAAO;AAAA;;;;;;KAOhD,eAAA,mBAAkC,SAAS;AAAA,KAE3C,SAAA,OACV,KAAA,EAAO,CAAA,EACP,MAAA,EAAQ,WAAA,KACL,eAAA,GAAkB,OAAA,CAAQ,eAAA;;;KCtBnB,UAAA;EAAA,CACT,GAAA,WAAc,KAAA,QAAa,IAAA,QAAY,UAAA;AAAA;AAAA,KAG9B,SAAA,WAAoB,UAAA,kBAClB,CAAA,GAAI,CAAA,CAAE,CAAA,UAAW,KAAA,YACzB,CAAA,GACA,CAAA,CAAE,CAAA,UAAW,IAAA,aACX,SAAA,CAAU,EAAA,IACV,CAAA,CAAE,CAAA,UAAW,UAAA,YACX,eAAA,CAAgB,CAAA;AAAA,KAId,UAAA,WAAqB,UAAA,kBACnB,CAAA,IAAK,CAAA,CAAE,CAAA,UAAW,KAAA,+BAE1B,CAAA,CAAE,CAAA,UAAW,IAAA,aACX,UAAA,CAAW,EAAA,IACX,CAAA,CAAE,CAAA,UAAW,UAAA,YACX,KAAA,CAAM,oBAAA,CAAqB,CAAA;AAAA,KAIzB,eAAA,MACV,CAAA,SAAU,KAAA,YAAiB,CAAA,KAAM,CAAA,SAAU,IAAA,YAAgB,SAAA,CAAU,CAAA;AAAA,KAE3D,oBAAA,MACV,CAAA,SAAU,KAAA,mBAAwB,CAAA,SAAU,IAAA,YAAgB,UAAA,CAAW,CAAA;AAAA,KAE7D,WAAA,MACV,CAAA,SAAU,KAAA,YAAiB,CAAA,GAAI,CAAA,SAAU,IAAA,YAAgB,WAAA,CAAY,SAAA,CAAU,CAAA;AAAA,KAErE,WAAA,MAAiB,CAAA,kBACzB,CAAA,SAAU,aAAA,YACR,aAAA,CAAc,WAAA,CAAY,CAAA,mBACZ,CAAA,IAAK,WAAA,CAAY,CAAA,CAAE,CAAA,OACnC,CAAA;AAAA,KAEQ,aAAA,WAAwB,UAAA,IAAc,SAAA,CAAU,SAAA,CAAU,CAAA;AAAA,KAC1D,mBAAA,MAAyB,SAAA,CAAU,eAAA,CAAgB,CAAA;AAAA,KAEnD,WAAA,WAAsB,UAAA;EJzBjB;;;;AAER;AAWT;;EIoBE,OAAA,UAAiB,WAAA,CAAY,SAAA,CAAU,CAAA,kBAAmB,WAAA,CAAY,SAAA,CAAU,CAAA;EAChF,UAAA,GAAa,aAAA,CAAc,CAAA;EJrBmB;AAyEhD;;;;;;;EI3CE,oBAAA;AAAA;AAAA,KAGU,iBAAA;EACV,OAAA,GAAU,KAAA,CAAM,WAAA,CAAY,CAAA;EAC5B,UAAA,GAAa,mBAAA,CAAoB,CAAA;AAAA;;;AJsC6D;;;;AC1FhG;;;KGgEY,IAAA,WAAe,UAAA;EAAA,SAChB,MAAA,gBAAsB,CAAA,GAAI,CAAA,CAAE,CAAA;EAAA,SAC5B,KAAA,EAAO,UAAA,CAAW,SAAA,CAAU,CAAA;EAAA,SAC5B,MAAA,EAAQ,UAAA,CAAW,UAAA,CAAW,CAAA;EAAA,SAC9B,cAAA,EAAgB,UAAA;EAAA,SAChB,UAAA,EAAY,UAAA,CAAW,KAAA;IAAQ,IAAA;IAAc,MAAA;EAAA;EAAA,SAC7C,OAAA,EAAS,UAAA;EAAA,SACT,OAAA,EAAS,UAAA;EAAA,SACT,OAAA,EAAS,UAAA;EAAA,SACT,YAAA,EAAc,UAAA;EH7DG;;;;AAAmC;EAAnC,SGmEjB,WAAA,EAAa,UAAA;EH5DK;;;AAAoB;EAApB,SGkElB,YAAA,EAAc,UAAA;WAEd,WAAA,EAAa,UAAA;EFlGZ;;;;;;;EAAA,SE0GD,WAAA,EAAa,UAAA,WFvFa;EE0FnC,GAAA,CAAI,OAAA,EAAS,WAAA,CAAY,SAAA,CAAU,CAAA;EF5G1B;;;;;;EEmHT,gBAAA,CAAiB,OAAA,EAAS,WAAA,CAAY,SAAA,CAAU,CAAA,WF3GtC;EE6GV,KAAA;EFnGkC;;;;AAAU;AAQ9C;EEkGE,YAAA,CAAa,IAAA,iBFlGG;EEoGhB,cAAA,UFpGsB;EEsGtB,QAAA,IAAY,OAAA;EFpGD;;;;;;EE2GX,MAAA,cACE,OAAA,GAAU,KAAA,EAAO,SAAA,CAAU,CAAA,MAAO,CAAA,GAAI,OAAA,CAAQ,CAAA,GAC9C,OAAA;IACE,oBAAA;IACA,cAAA;IACA,OAAA;EAAA,IAED,OAAA;IAAU,EAAA;IAAa,IAAA,GAAO,OAAA,CAAQ,CAAA;IAAI,KAAA;EAAA;EFjHjC;;;;AAAa;AAI3B;EEoHE,SAAA,CAAU,MAAA,EAAQ,MAAA,SAAe,aAAA,kBFpHf;EEsHlB,OAAA;AAAA;;;;AFtHoC;;KE8H1B,UAAA,WAAqB,KAAA,QAAa,IAAA;EAAA,SACnC,KAAA,EAAO,UAAA,CAAW,aAAA,CAAc,CAAA;EAAA,SAChC,KAAA,EAAO,UAAA,CAAW,eAAA,CAAgB,CAAA;EAAA,SAClC,MAAA,EAAQ,UAAA,CAAW,KAAA,CAAM,oBAAA,CAAqB,CAAA;EAAA,SAC9C,cAAA,EAAgB,UAAA;EAAA,SAChB,OAAA,EAAS,UAAA;EAAA,SACT,OAAA,EAAS,UAAA;EAAA,SACT,OAAA,EAAS,UAAA;EAAA,SACT,YAAA,EAAc,UAAA;EAAA,SACd,IAAA,EAAM,UAAA;EAEf,GAAA,CAAI,OAAA,GAAU,WAAA,CAAY,CAAA;EAC1B,MAAA,CAAO,KAAA,UAAe,OAAA,GAAU,WAAA,CAAY,CAAA;EAC5C,MAAA,CAAO,KAAA;EACP,IAAA,CAAK,IAAA,UAAc,EAAA;EACnB,EAAA,CAAG,KAAA,WAAgB,CAAA;EACnB,KAAA;EAEA,KAAA;EACA,cAAA;EACA,QAAA,IAAY,OAAA;EACZ,OAAA;AAAA;;;AJ3KF;AAAA,KKbY,WAAA;;;;;;;;;;;;;;;;;;KAmBA,UAAA;EACV,IAAA,EAAM,UAAA,CAAW,CAAA;EACjB,KAAA,EAAO,UAAA;EACP,MAAA,EAAQ,UAAA,CAAW,WAAA;EACnB,SAAA,EAAW,UAAA;EACX,UAAA,EAAY,UAAA;EACZ,OAAA,EAAS,UAAA;EACT,aAAA,EAAe,UAAA;EACf,mBAAA,EAAqB,UAAA;ELIyB;AAAA;AAyEhD;;;;;;EKpEE,QAAA,EAAU,UAAA;EAEV,OAAA,QAAe,OAAA,CAAQ,CAAA;EACvB,KAAA;EACA,UAAA,QAAkB,OAAA,CAAQ,CAAA;ELgEkC;;;;;AAAkC;EKzD9F,OAAA,QAAe,OAAA,CAAQ,CAAA;AAAA;;AJjCzB;;;;;;;;;;;;;KIkDY,QAAA;EACV,QAAA;EACA,QAAQ;AAAA;;;;;KAOE,UAAA,MAAgB,UAAA,CAAW,CAAA;EJ/CwB,mDIiD7D,UAAA,UJ1C2B;EI4C3B,OAAA,CAAQ,OAAA,GAAU,IAAA,EAAM,CAAA,iBAAkB,CAAA,GAAI,QAAA,EJ5ChB;EI8C9B,OAAA;AAAA;;KAIU,eAAA;EHhFA;;;;;;EGuFV,EAAA;EACA,GAAA;EACA,IAAA;EACA,aAAA;AAAA;;;;;;KAQU,eAAA;EACV,OAAA;EACA,OAAA,EAAS,eAAe;AAAA;;;;AHjFoB;KGwFlC,WAAA,cAAyB,OAAA,UAAiB,KAAc;;KAGxD,UAAA,cAAwB,OAAe;;;;;;KAOvC,QAAA;EACV,MAAA,EAAQ,WAAA;EACR,IAAA,EADmB,WAC4B;AAAA;;;;;;;;;;;;;;AHzFtB;AAI3B;;;;;;;;AAAsC;;;;KGkH1B,WAAA;AAAA,KAEA,SAAA;EACV,GAAA,MAAS,IAAA,EAAM,IAAA;EACf,OAAA,GAAU,GAAA,EAAK,QAAA,KAAa,IAAA,EAAM,IAAA,KAAS,OAAA,CAAQ,CAAA;EACnD,SAAA;EACA,MAAA;EACA,eAAA;EACA,oBAAA;EACA,kBAAA;EACA,gBAAA;EACA,KAAA,GAAQ,WAAA;EACR,UAAA,GAAa,UAAA;EF/IM;;;;;EEqJnB,WAAA,GAAc,WAAA;EFlJc;;;;;;;EE0J5B,eAAA;EF1JqB;;;AAAuB;;;;ACtB9C;ECyLE,OAAA;;;;;;;;;;;;EAYA,QAAA;AAAA;;;;;;KAQU,KAAA;EAAA,SACD,MAAA,WDvML;ECyMJ,UAAA,IAAc,IAAA,EAAM,IAAA,SDzMH;EC2MjB,aAAA,UD1MM;EC4MN,OAAA,IAAW,IAAA,MAAU,IAAA,EAAM,OAAA,GAAU,IAAA,EAAM,CAAA,iBAAkB,CAAA,IAAK,QAAA;ED3M1D;;;;;;ECkNR,MAAA,IAAU,IAAA,EAAM,IAAA,SDvNc;ECyN9B,SAAA,UDxNY;EC0NZ,QAAA,IAAY,IAAA,EAAM,IAAA,GAAO,OAAA,CAAQ,CAAA;AAAA;;KAIvB,iBAAA,MAAuB,UAAU,CAAC,CAAA;ED7NxC,+EC+NJ,MAAA;AAAA;;;;;;;;;;KAYU,UAAA;EACV,GAAA,SAAY,IAAI;EAChB,OAAA;AAAA;;;;;;;;;;;;KChOU,gBAAA;EACV,SAAA,EAAW,SAAA;EACX,MAAA,EAAQ,WAAA;EACR,IAAA,EADmB,WAAA;AAAA;AAAA,KAIT,iBAAA,mDAAoE,KAAA;EAC9E,GAAA,MAAS,IAAA,EAAM,IAAA;ENTf;;;;;EMeA,OAAA,GAAU,GAAA,EAAK,gBAAA,CAAiB,SAAA,MAAe,IAAA,EAAM,IAAA,KAAS,OAAA,CAAQ,KAAA;EACtE,gBAAA,EAAkB,SAAA;EAClB,gBAAA,GAAmB,QAAA,EAAU,KAAA,EAAO,QAAA,EAAU,KAAA,OAAY,SAAA;EAC1D,oBAAA,IAAwB,SAAA,EAAW,KAAA,EAAO,QAAA,EAAU,KAAA,OAAY,SAAA;EAChE,OAAA,IAAW,IAAA,EAAM,KAAA,KAAU,KAAA;EAC3B,SAAA;EACA,MAAA;EACA,eAAA;EACA,gBAAA;EACA,KAAA,GAAQ,WAAA;EACR,UAAA,GAAa,UAAA,EN6DgF;EM3D7F,WAAA,GAAc,WAAA,EN2D8E;EMzD5F,eAAA;ENyD4B;;;;;;EMlD5B,OAAA;ENkD8F;;;;AC1FhG;;EK+CE,QAAA;AAAA;;;;;KAOU,aAAA;EAAA,SACD,MAAA;EACT,UAAA,IAAc,IAAA,EAAM,IAAA;EACpB,aAAA;EACA,OAAA,IAAW,IAAA,MAAU,IAAA,EAAM,OAAA,GAAU,IAAA,EAAM,KAAA,mBAAwB,KAAA,MAAW,QAAA;ELlDpE;AAIZ;EKiDE,MAAA,IAAU,IAAA,EAAM,IAAA;EAEhB,SAAA;EACA,QAAA,IAAY,IAAA,EAAM,IAAA,GAAO,OAAA,CAAQ,KAAA;AAAA;;;ALpD4B;AAO/D;;;;AAAiD;KKwDrC,yBAAA,iBAA0C,UAAA,CAAW,KAAA;EAC/D,KAAA,EAAO,UAAA,CAAW,KAAA;EAClB,IAAA,EAAM,UAAA,CAAW,KAAA;EACjB,WAAA,EAAa,UAAA;EACb,eAAA,EAAiB,UAAA;EACjB,kBAAA,EAAoB,UAAA;EACpB,sBAAA,EAAwB,UAAA;EACxB,aAAA,QAAqB,OAAA;EACrB,iBAAA,QAAyB,OAAA,QJ3ES;EI6ElC,MAAA;AAAA;;;;ANtFF;;;;KOXY,UAAA;EACN,IAAA;EAAgC,IAAA;EAAyB,KAAA;AAAA;EACzD,IAAA;EAA8B,IAAA;AAAA;EAC9B,IAAA;EAA4B,IAAA;AAAA;EAC5B,IAAA;EAA6B,IAAA;AAAA;EAE7B,IAAA;EACA,QAAA;EACA,cAAA;AAAA;EAEA,IAAA;EAA2B,QAAA;AAAA;EAC3B,IAAA;EAA6B,QAAA;EAA8B,UAAA;AAAA;EAE3D,IAAA;EACA,QAAA;EACA,KAAA;EACA,UAAA;AAAA;EAEA,IAAA;EAA2B,QAAA;AAAA;EAC3B,IAAA;EAAkB,QAAA;AAAA;EAClB,IAAA;EAAsB,IAAA;EAAyB,IAAA;EAAe,IAAA;AAAA;EAC9D,IAAA;EAA0B,IAAA;EAAyB,IAAA;EAAe,MAAA;AAAA;EAClE,IAAA;EAAwB,IAAA;EAAyB,IAAA;EAAe,KAAA;AAAA;EAChE,IAAA;EAA2B,IAAA;EAAyB,IAAA;AAAA;EAEpD,IAAA;EACA,IAAA;EACA,KAAA;EACA,KAAA;EACA,MAAA;AAAA;;;;;KAOM,eAAA;EACV,GAAA;EACA,MAAA;EACA,IAAA;EACA,KAAA;EACA,aAAA;EACA,OAAA;EACA,UAAA;EACA,mBAAA;AAAA;;AL3CF;;;;;;;;;;;KK0DY,QAAA;EACV,SAAA,CAAU,OAAA,GAAU,KAAA,EAAO,UAAA;EAC3B,YAAA,IAAgB,eAAe;AAAA;;;;;;;;;;;KClDrB,mBAAA;;;;;;KAOA,YAAA;ERFV;;;;;EQQA,IAAA,WRNO;EQQP,MAAA,GAAS,IAAA,EAAM,CAAA,EAAG,MAAA,EAAQ,WAAA,KAAgB,OAAA,CAAQ,CAAA;ERGpB;;;AAAgB;EQE9C,QAAA,IAAY,IAAA,EAAM,CAAA,KAAM,QAAA;EACxB,SAAA,IAAa,MAAA,EAAQ,CAAA,EAAG,IAAA,EAAM,CAAA;EAC9B,OAAA,IAAW,GAAA,WAAc,IAAA,EAAM,CAAA,EAAG,QAAA,EAAU,QAAA;EAC5C,SAAA,IAAa,MAAA,EAAQ,CAAA,cAAe,GAAA,uBAA0B,IAAA,EAAM,CAAA;EACpE,WAAA,GAAc,mBAAA;EACd,KAAA,GAAQ,WAAA;EACR,UAAA,GAAa,UAAA;ERiE+E;;;;;;;;AAAE;;EQtD9F,UAAA;;APpCF;;;;;EO2CE,OAAA;AAAA;;;;;;;APnCU;AAIZ;;;KO4CY,WAAA,SAAoB,YAAA,CAAa,CAAA,EAAG,CAAA;EAAA,SACrC,MAAA;EAAA,SACA,UAAA;AAAA;;AP9CoD;AAO/D;;;;AAAiD;;;;AC9BjD;;;;;;;;;;;;;;iBMgGgB,cAAA,MAAA,CACd,IAAA,EAAM,YAAA,CAAa,CAAA,EAAG,CAAA;EAAO,UAAA;EAAoB,OAAA;AAAA,IAChD,WAAA,CAAY,CAAA,EAAG,CAAA;;;;;;AN/E4B;AAQ9C;;;;;;;;;;;;KM2GY,WAAA,aACP,IAAA,kBAAsB,CAAA,IAAK,CAAA,MAAO,CAAA,yBAA0B,CAAA,MAC5D,OAAA,CAAQ,CAAA;AAAA,KAED,QAAA;EN9GV,6EMgHA,GAAA,EAAK,WAAA,CAAY,CAAA,EAAG,CAAA;EACpB,IAAA,EAAM,UAAA,CAAW,CAAA;EACjB,KAAA,EAAO,UAAA;EACP,SAAA,EAAW,UAAA;ENjHX;;;;;;AAAyB;AAI3B;EMsHE,MAAA,EAAQ,UAAA,CAAW,WAAA;EACnB,aAAA,EAAe,UAAA,CAAW,CAAA,eNvHQ;EMyHlC,KAAA,UNzHwB;EM2HxB,OAAA;AAAA;;;;ARnJF;;;;;;;;;;;;;;;;;;;;;;KSQY,oBAAA;ETDH;AAAA;AAWT;;;ESJE,kBAAA,CAAmB,OAAA,UAAiB,OAAA,sBAA6B,IAAA;EACjE,qBAAA,CAAsB,OAAA,UAAiB,OAAA;ET4EzB;;;;;;;;;;;;;;;AAAgF;;ES1D9F,YAAA,CACE,OAAA,UACA,OAAA,sBACA,OAAA,GAAU,IAAA;;ARnCd;;;;;;;;;;;;;AAQY;AAIZ;;;;;;EQ8CE,cAAA,CAAe,OAAA;AAAA;AAAA,KAGL,YAAA;EACV,OAAA;EACA,OAAA;EACA,IAAA;ER7C8B;AAAiB;;;;EQmD/C,IAAA;EPjFoB;;;;EOsFpB,QAAA;EPnEkC;;;;;;;;;;;;;EOiFlC,MAAA;AAAA;AAAA,KAGU,eAAA;EACV,OAAA;EACA,OAAA;EACA,IAAA;EACA,QAAA;AAAA;AAAA,KAGU,OAAA;EACV,OAAA;EACA,OAAA;EACA,IAAA;AAAA;;;;;;;;;;KAYU,oBAAA;EACV,UAAA;EACA,KAAA;EACA,SAAA;EACA,OAAA;AAAA;;;APnGyB;AAI3B;;;KOwGY,mBAAA;EACV,UAAA;EACA,KAAA;EACA,OAAA,qCP3GoC;EO6GpC,KAAA;AAAA;;;ANvIF;;;KM+IY,iBAAA;EN/IgD;AAO5D;;;;AAAuD;EAPK,SMsJjD,IAAA;EN7IU;;;;;;;;;EMuJnB,IAAA,EAAM,GAAA,EAAK,oBAAA;EACX,SAAA,EAAW,KAAA,EAAO,YAAA;EAClB,YAAA,EAAc,KAAA,EAAO,eAAA;EACrB,IAAA,EAAM,KAAA,EAAO,OAAA;ENxJb;;;;EM6JA,iBAAA,EAAmB,KAAA,EAAO,oBAAA,SN5JkB;EM8J5C,gBAAA,EAAkB,KAAA,EAAO,mBAAA;EAEzB,OAAA;AAAA;;ALrLkD;AAGpD;;KKmMY,eAAA;EAAA,SACD,MAAA;EAAA,SACA,MAAA;IAAU,OAAA;IAAkB,QAAA;EAAA;AAAA;;;;;;iBAkDvB,qBAAA,CAAsB,OAAA,WAAkB,eAAe;;;;;;;KAyB3D,kBAAA;EAAA,SACD,UAAA;EL5QU;;;;;AACM;AAI3B;EALqB,SKoRV,MAAA,GAAS,IAAA,WAAe,MAAA,EAAQ,WAAA,KAAgB,OAAO;AAAA;;;;;;;;iBAiBlD,wBAAA,CAAyB,UAAA,WAAqB,kBAAkB;;iBAKhE,uBAAA,CAAwB,UAAkB;;;;ATvS1D;;;;KUXY,KAAA;EAAA,SACD,MAAA,WVea;EAAA,SUbb,IAAA,UVac;EAAA,SUXd,IAAA,WVOT;EAAA,SULS,OAAA,GAAU,CAAA,EVK6B;EAAA,SUHvC,UAAA;EAAA,SAEA,GAAA,GAAM,CAAC;AAAA;AAAA,KAGN,YAAA;EACV,OAAA,GAAU,CAAC;EACX,IAAA;AAAA;;;;;AVEO;AAWT;iBUJgB,WAAA,GAAA,CAAe,OAAA,GAAU,YAAA,CAAa,CAAA,IAAK,KAAA,CAAM,CAAA;;;;;;;;;;;;;;;;;;UCGhD,WAAA;EAAA,CACd,GAAW;AAAA;;;AXAkC;AAyEhD;;;KWhEY,KAAA,MAAW,UAAA,CAAW,CAAA;EXgE6D;;;;EW3D7F,MAAA,EAAQ,UAAA;EACR,OAAA,EAAS,UAAA;EACT,OAAA,EAAS,UAAA;EACT,OAAA,EAAS,UAAA;EACT,YAAA,EAAc,UAAA;EACd,GAAA,CAAI,KAAA,EAAO,CAAA;EXsDmF;AAAA;;;;AC1FhG;;EU4CE,YAAA,CAAa,KAAA,EAAO,CAAA;EACpB,KAAA;EACA,WAAA;EACA,UAAA,IAAc,OAAA;EV5Cd;;;;;;;AAKU;EUgDV,SAAA,CAAU,MAAA,EAAQ,aAAA,iBV5CI;EU8CtB,OAAA;AAAA;;;;;AV9C6D;KUsDnD,aAAA;EAAA,SACD,MAAA;EAAA,SACA,OAAA;IAAY,KAAA,EAAO,KAAA;IAAO,GAAA,EAAK,GAAG;EAAA;AAAA;;KAIjC,SAAA,MAAe,CAAA,SAAU,aAAa,qBAAqB,CAAA;;KAG3D,OAAA,MAAa,CAAA,SAAU,aAAa,qBAAqB,CAAA;;;;;;;KAQzD,UAAA;EAAA,SACD,KAAA,EAAO,UAAA,CAAW,aAAA;IAAA,SAAyB,GAAA,EAAK,CAAA;IAAA,SAAY,GAAA,EAAK,GAAA;EAAA;EAAA,SACjE,IAAA,EAAM,UAAA;EACf,GAAA,CAAI,GAAA,EAAK,CAAA,GAAI,GAAA;EACb,GAAA,CAAI,GAAA,EAAK,CAAA;ETzFC;;;;;;AAUkC;AAQ9C;;;;ESmFE,WAAA,CAAY,GAAA,EAAK,CAAA,STlFV;ESoFP,UAAA,CAAW,GAAA,EAAK,CAAA,STlFE;ESoFlB,eAAA,CAAgB,GAAA,EAAK,CAAA;AAAA;;;;;;;KASX,4BAAA,8BAA0D,WAAA;EAAA,SAC3D,MAAA,EAAQ,UAAA,UAAoB,IAAA;EAAA,SAC5B,KAAA,GAAQ,IAAA,EAAM,IAAA,KAAS,CAAA;EAAA,SACvB,UAAA,EAAY,aAAA,CAAc,KAAA,EAAO,GAAA;EAAA,SACjC,OAAA,GAAU,IAAA,EAAM,IAAA,KAAS,KAAA;EAAA,SACzB,OAAA;EAAA,SACA,QAAA;EAAA,SACA,IAAA,GAAO,OAAA,CAAQ,KAAA;AAAA;ATpGC;AAI3B;;;;;;;;AAAsC;;;AAJX,KSmHf,wBAAA,qBAA6C,WAAA;EAAA,SAC9C,MAAA,EAAQ,UAAA,UAAoB,IAAA;EAAA,SAC5B,KAAA,GAAQ,IAAA,EAAM,IAAA,KAAS,CAAA;EAAA,SACvB,UAAA;EAAA,SACA,OAAA;EAAA,SACA,OAAA,GAAU,IAAA,EAAM,IAAA,KAAS,CAAA;EAAA,SACzB,IAAA,GAAO,OAAA,CAAQ,KAAA;AAAA;;KAId,uBAAA;EAA4B,UAAA,EAAY,aAAa;EAAY,KAAA;AAAA;;KAGjE,oBAAA,MAA0B,CAAA;EACpC,UAAA,EAAY,aAAa;AAAA,IAEvB,CAAA;;;;;KAOQ,SAAA;EAAA,SACD,MAAA,EAAQ,UAAA;EAAA,SACR,GAAA,EAAK,UAAA,CAAW,GAAA;EAAA,SAChB,KAAA,EAAO,UAAA;EAChB,IAAA,IAAQ,OAAA,CAAQ,GAAA;EAChB,OAAA;AAAA;;;ARzJ4C;;;;ACtB9C;;KO0LY,GAAA,SAAY,WAAA;EACtB,KAAA,IACE,OAAA,GAAU,MAAA,EAAQ,WAAA,KAAgB,OAAA,CAAQ,CAAA,GAC1C,OAAA;IACE,GAAA;IACA,SAAA;IACA,gBAAA;IACA,WAAA,GAAc,CAAA;EAAA,IAEf,UAAA,CAAW,CAAA;EAKd,GAAA,+BACE,MAAA,EAAQ,KAAA,CAAM,IAAA,EAAM,CAAA,GACpB,OAAA;IACE,GAAA,sBAAyB,IAAA;IACzB,OAAA;IACA,MAAA,GAAS,IAAA,EAAM,CAAA,KAAM,CAAA;EAAA,IAEtB,iBAAA,CAAkB,CAAA;EACrB,GAAA,4BACE,MAAA,EAAQ,KAAA,CAAM,IAAA,EAAM,CAAA,GACpB,YAAA,uBAAmC,IAAA,KAAS,UAAA,CAAW,IAAA,IACtD,iBAAA,CAAkB,CAAA;EACrB,GAAA,uCACE,MAAA,EAAQ,aAAA,CAAc,IAAA,EAAM,KAAA,EAAO,KAAA,GACnC,YAAA,uBAAmC,IAAA,KAAS,UAAA,CAAW,IAAA,IACtD,yBAAA,CAA0B,KAAA,EAAO,KAAA;EAEpC,QAAA,OAAe,IAAA,EAAM,YAAA,CAAa,CAAA,EAAG,CAAA,IAAK,QAAA,CAAS,CAAA,EAAG,CAAA;EAEtD,OAAA,cAAqB,OAAA,CAAQ,CAAA;EPtNjB;;;;;;;EO+NZ,MAAA,IAAU,OAAA,EAAS,CAAA,GAAI,MAAA,CAAO,CAAA;EP5NxB;;;;;EOmON,QAAA,IAAY,EAAA,QAAU,CAAA,GAAI,QAAA,CAAS,CAAA;EAEnC,KAAA,IACE,OAAA,EAAS,CAAA,EACT,UAAA,GAAa,aAAA,CAAc,SAAA,CAAU,CAAA,IACrC,OAAA;IAAY,UAAA;EAAA,IACX,KAAA,CAAM,CAAA;EAET,IAAA,WAAe,UAAA,EAAY,MAAA,EAAQ,CAAA,EAAG,OAAA,GAAU,WAAA,CAAY,CAAA,IAAK,IAAA,CAAK,CAAA;EAEtE,UAAA,WAAqB,KAAA,QAAa,IAAA,OAChC,WAAA,GAAc,OAAA,GAAU,WAAA,CAAY,CAAA,MAAO,CAAA,EAC3C,OAAA,GAAU,iBAAA,CAAkB,CAAA,IAC3B,UAAA,CAAW,CAAA;EAEd,KAAA,aACE,GAAA,EAAK,aAAA,CAAc,KAAA,EAAO,GAAA,GAC1B,KAAA,EAAO,KAAA,EACP,OAAA;IAAY,IAAA,GAAO,OAAA,CAAQ,KAAA;EAAA,IAC1B,GAAA;EPzP0B;;;;;;;;;;;;;;;;AAKJ;AAI3B;EOoQE,MAAA,aACE,GAAA,EAAK,aAAA,CAAc,KAAA,EAAO,GAAA,GAC1B,KAAA,EAAO,KAAA,EACP,OAAA;IAAY,IAAA,GAAO,OAAA,CAAQ,KAAA;EAAA;IACxB,GAAA,EAAK,GAAA;IAAK,OAAA;IAAqB,OAAA;IAAqB,MAAA;EAAA;EPrQnD;;;;;;;;;;;EOkRN,OAAA,aACE,GAAA,EAAK,aAAA,CAAc,KAAA,EAAO,GAAA,GAC1B,KAAA,EAAO,KAAA,EACP,OAAA;IAAY,IAAA,GAAO,OAAA,CAAQ,KAAA;EAAA,cAChB,GAAA,EAAK,GAAA,EAAK,OAAA;EPxRtB;;;;;;;;;;;;;;;;EO0SD,UAAA,sBACE,OAAA,EAAS,4BAAA,CAA6B,IAAA,EAAM,CAAA,EAAG,KAAA,EAAO,GAAA,EAAK,KAAA,IAC1D,UAAA,CAAW,CAAA,EAAG,GAAA;EACjB,UAAA,oBAA8B,uBAAA,EAC5B,OAAA,EAAS,wBAAA,CAAyB,IAAA,EAAM,CAAA,EAAG,CAAA,EAAG,KAAA,IAC7C,UAAA,CAAW,CAAA,EAAG,oBAAA,CAAqB,CAAA;EP1SF;AAAA;AAItC;;;;;;;;;EOmTE,SAAA,aACE,MAAA,QAAc,OAAA,CAAQ,aAAA,CAAc,KAAA,EAAO,GAAA,IAC3C,KAAA,EAAO,KAAA,EACP,OAAA;IAAY,IAAA,GAAO,OAAA,CAAQ,KAAA;EAAA,IAC1B,SAAA,CAAU,GAAA;EAEb,MAAA,CAAO,EAAA;EAEP,EAAA,IAAM,OAAA,EAAS,OAAA,CAAQ,CAAA,GAAI,OAAA,GAAU,KAAA,EAAO,CAAA;EAG5C,OAAA,IAAW,KAAA,EAAO,KAAA,CAAM,CAAA,GAAI,KAAA,EAAO,CAAA;EACnC,MAAA,IAAU,KAAA,EAAO,KAAA,CAAM,CAAA,IAAK,CAAA;EAE5B,SAAA,CAAU,EAAA;EACV,SAAA,CAAU,EAAA;EACV,QAAA,CAAS,EAAA;EAAA,SAEA,IAAA,EAAM,KAAA;AAAA;APpUuD;AAExE;;;;;AAFwE,KOgV5D,WAAA;EACV,IAAA,EAAM,KAAA;EACN,OAAA,IAAW,GAAA,WAAc,OAAA,EAAS,YAAA;EAClC,OAAA,GAAU,eAAA,EPhV4D;EOkVtE,oBAAA,YPnV+B;EOqV/B,kBAAA;EPpVU;;;;;EO0VV,OAAA,GAAU,iBAAA;EP1V8D;AAAA;AAE1E;;;;;;;;EOmWE,MAAA,GAAS,aAAA,WAAwB,KAAA;AAAA;;;;;;KAQvB,IAAA,QAAY,GAAA;EACtB,OAAA;EACA,OAAA,CAAQ,OAAA;IAAY,OAAA;EAAA;EACpB,MAAA;EACA,SAAA,IAAa,eAAA;EACb,WAAA,IAAe,OAAA;EP/WiE;AAAA;AAElF;;;;;;;;;EOyXE,oBAAA,CACE,OAAA,UACA,OAAA,sBACA,IAAA,WACA,aAAA;EAAA,SAEO,OAAA,EAAS,QAAA;AAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kontsedal/olas-core",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.1.0",
|
|
4
4
|
"description": "Olas core — controller-tree state management with signals, queries, mutations, and forms. Framework-agnostic.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"olas",
|
|
@@ -16,6 +16,9 @@
|
|
|
16
16
|
"framework-agnostic"
|
|
17
17
|
],
|
|
18
18
|
"license": "MIT",
|
|
19
|
+
"engines": {
|
|
20
|
+
"node": ">=18"
|
|
21
|
+
},
|
|
19
22
|
"author": "Bohdan Kontsedal <kontsedalbohdan@gmail.com>",
|
|
20
23
|
"homepage": "https://github.com/Kontsedal/olas/tree/main/packages/core#readme",
|
|
21
24
|
"repository": {
|