@elaraai/e3-ui-components 1.0.79 → 1.0.81

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.
Files changed (65) hide show
  1. package/README.md +1 -1
  2. package/dist/components/DatasetPreview.d.ts +10 -2
  3. package/dist/components/DatasetPreview.d.ts.map +1 -1
  4. package/dist/components/EastValueViewer.d.ts.map +1 -1
  5. package/dist/components/PagedDatasetPreview.d.ts +15 -1
  6. package/dist/components/PagedDatasetPreview.d.ts.map +1 -1
  7. package/dist/components/TaskPreview.d.ts.map +1 -1
  8. package/dist/components/UITaskPreview.d.ts +7 -3
  9. package/dist/components/UITaskPreview.d.ts.map +1 -1
  10. package/dist/decision/constraint-format.d.ts +15 -7
  11. package/dist/decision/constraint-format.d.ts.map +1 -1
  12. package/dist/decision/contract.d.ts +28 -0
  13. package/dist/decision/contract.d.ts.map +1 -0
  14. package/dist/decision/facets.d.ts +21 -3
  15. package/dist/decision/facets.d.ts.map +1 -1
  16. package/dist/decision/grouping.d.ts +11 -0
  17. package/dist/decision/grouping.d.ts.map +1 -1
  18. package/dist/decision/handle-runtime.d.ts.map +1 -1
  19. package/dist/decision/journal.d.ts.map +1 -1
  20. package/dist/decision/lever-editor.d.ts +11 -18
  21. package/dist/decision/lever-editor.d.ts.map +1 -1
  22. package/dist/decision/queue.d.ts.map +1 -1
  23. package/dist/diff/format.d.ts +20 -12
  24. package/dist/diff/format.d.ts.map +1 -1
  25. package/dist/diff/index.d.ts.map +1 -1
  26. package/dist/diff/manual.d.ts +37 -18
  27. package/dist/diff/manual.d.ts.map +1 -1
  28. package/dist/diff/walker.d.ts +14 -6
  29. package/dist/diff/walker.d.ts.map +1 -1
  30. package/dist/experiment/charts.d.ts +4 -1
  31. package/dist/experiment/charts.d.ts.map +1 -1
  32. package/dist/experiment/derive.d.ts +25 -5
  33. package/dist/experiment/derive.d.ts.map +1 -1
  34. package/dist/experiment/index.d.ts.map +1 -1
  35. package/dist/experiment/run-runtime.d.ts +4 -8
  36. package/dist/experiment/run-runtime.d.ts.map +1 -1
  37. package/dist/hooks/index.d.ts +1 -1
  38. package/dist/hooks/index.d.ts.map +1 -1
  39. package/dist/hooks/useDatasetValue.d.ts +13 -2
  40. package/dist/hooks/useDatasetValue.d.ts.map +1 -1
  41. package/dist/hooks/useTaskDetails.d.ts +1 -5
  42. package/dist/hooks/useTaskDetails.d.ts.map +1 -1
  43. package/dist/hooks/workspaces.d.ts +16 -3
  44. package/dist/hooks/workspaces.d.ts.map +1 -1
  45. package/dist/index.cjs +1361 -1028
  46. package/dist/index.cjs.map +1 -1
  47. package/dist/index.js +1385 -1052
  48. package/dist/index.js.map +1 -1
  49. package/dist/platform/bind-runtime.d.ts +14 -5
  50. package/dist/platform/bind-runtime.d.ts.map +1 -1
  51. package/dist/platform/dataset-hooks.d.ts +12 -4
  52. package/dist/platform/dataset-hooks.d.ts.map +1 -1
  53. package/dist/platform/dataset-store.d.ts +47 -11
  54. package/dist/platform/dataset-store.d.ts.map +1 -1
  55. package/dist/platform/func-runtime.d.ts +16 -6
  56. package/dist/platform/func-runtime.d.ts.map +1 -1
  57. package/dist/platform/index.d.ts +1 -1
  58. package/dist/platform/index.d.ts.map +1 -1
  59. package/dist/platform/paged-runtime.d.ts +183 -49
  60. package/dist/platform/paged-runtime.d.ts.map +1 -1
  61. package/dist/platform/record-runtime.d.ts +14 -4
  62. package/dist/platform/record-runtime.d.ts.map +1 -1
  63. package/dist/platform/staged-store.d.ts +19 -2
  64. package/dist/platform/staged-store.d.ts.map +1 -1
  65. package/package.json +16 -15
@@ -2,6 +2,7 @@ import { EastTypeValue } from '@elaraai/east';
2
2
  import { PlatformFunction } from '@elaraai/east/internal';
3
3
  import { DatasetPage, DatasetFindQuery, DatasetFindResult } from '@elaraai/e3-api-client';
4
4
  import { TreePath } from '@elaraai/e3-types';
5
+ import { ReactiveDatasetCacheInterface } from './dataset-store.js';
5
6
  import { TrackedChannelStore } from './tracked-channel.js';
6
7
  /** One element window of a paged source. */
7
8
  export interface PagedWindow {
@@ -9,33 +10,77 @@ export interface PagedWindow {
9
10
  offset: number;
10
11
  /** Maximum elements to return (the server may clamp it). */
11
12
  limit: number;
13
+ /** Read through one of a record's secondary indexes instead of the record
14
+ * itself — the window is then the INDEX's row space, in its own order. */
15
+ index?: string;
16
+ /** With {@link index}: read each entry's row from the record too. */
17
+ join?: boolean;
18
+ /** The content hash the window is pinned to. The server answers from that
19
+ * content or refuses, naming the content the dataset holds now; it never
20
+ * answers from other content. */
21
+ hash?: string;
22
+ }
23
+ /** Which rows a bind serves: the dataset's own, or one of a record's indexes.
24
+ * Every channel key, every fetch and the handle cache carry it, because two
25
+ * binds that differ here serve different row spaces from one path. */
26
+ export interface PagedSelector {
27
+ /** The index's name, or `null` for the dataset itself. */
28
+ index: string | null;
29
+ /** Whether an index read joins each entry to its row. */
30
+ join: boolean;
12
31
  }
13
32
  /**
14
- * Adapter for the dataset paging endpoint. The default wraps
15
- * `@elaraai/e3-api-client`'s `datasetGetPage`.
33
+ * Adapter for the dataset paging endpoints. The default wraps
34
+ * `@elaraai/e3-api-client`'s `datasetGetPage`, `datasetFindKey` and
35
+ * `datasetGetStatus`, and follows datasets through the dataset store.
16
36
  */
17
37
  export interface PagedApi {
18
- /** Fetch one element window of a collection dataset. */
38
+ /** Fetch one element window of a collection dataset — or of one of a
39
+ * record's indexes, when the window names one. */
19
40
  getPage(workspace: string, path: TreePath, window: PagedWindow): Promise<DatasetPage>;
20
41
  /** Locate a key query in a Set/Dict dataset's canonical key order. The
21
42
  * `row` it answers with indexes the SAME row space {@link getPage}'s
22
43
  * element windows serve, which is what makes a hit addressable. */
23
44
  findKey(workspace: string, path: TreePath, query: DatasetFindQuery): Promise<DatasetFindResult>;
45
+ /**
46
+ * The dataset's current content hash, or `null` while it has no value. For
47
+ * a record it is the record's state hash, which reads through its indexes
48
+ * are pinned to as well.
49
+ */
50
+ getRevision(workspace: string, path: TreePath): Promise<string | null>;
51
+ /**
52
+ * Follow a dataset's content hash.
53
+ *
54
+ * @param workspace - The workspace
55
+ * @param path - The dataset's path
56
+ * @param onChange - Hears each hash the dataset moves to, the first report
57
+ * included; `null` while it has no value
58
+ * @returns A function that stops following
59
+ */
60
+ watchRevision(workspace: string, path: TreePath, onChange: (hash: string | null) => void): () => void;
24
61
  }
25
62
  /**
26
63
  * Build the default {@link PagedApi} that talks to a real e3 server via
27
64
  * `@elaraai/e3-api-client`.
28
65
  *
29
66
  * @remarks
30
- * Windows are requested unpinned (no content hash). `useDatasetPage` pins its
31
- * requests so browser/edge caches can hold pages immutably; a bound paged
32
- * source has no hash to pin with — it never fetches the whole value or polls
33
- * status — so it reads the current content instead.
67
+ * A dataset is followed through the dataset store's workspace-status poll,
68
+ * which reports every dataset's hash: a followed dataset joins that poll, adds
69
+ * no request of its own, and never has its content fetched.
70
+ *
71
+ * @param apiUrl - Base URL of the e3 API server
72
+ * @param repo - Repository name
73
+ * @param getToken - Reads the current token, so a rotated one is used at once
74
+ * @param datasets - The dataset store whose status poll reports the hashes
75
+ * @returns The adapter
34
76
  */
35
- export declare function createDefaultPagedApi(apiUrl: string, repo: string, getToken: () => string | null): PagedApi;
36
- /** One tracked channel per window (and one per source, for the total). */
77
+ export declare function createDefaultPagedApi(apiUrl: string, repo: string, getToken: () => string | null, datasets: Pick<ReactiveDatasetCacheInterface, "watchHash">): PagedApi;
78
+ /** One tracked channel per window, per total and per search. */
37
79
  interface PageEntry {
38
80
  status: "idle" | "running" | "loaded" | "failed";
81
+ /** The fetch the channel waits on; a settling fetch that is no longer it
82
+ * is discarded. Unique across the runtime, so a channel dropped by a move
83
+ * and made again never mistakes an old fetch for its own. */
39
84
  launchSeq: number;
40
85
  /** The decoded window — a value of the dataset's own type. */
41
86
  window?: unknown;
@@ -43,29 +88,35 @@ interface PageEntry {
43
88
  total?: number;
44
89
  /** Where a key query landed — the answer on a seek channel. */
45
90
  range?: DatasetFindResult;
91
+ /** Why the last attempt failed — what a read of the channel throws. */
92
+ error?: string;
46
93
  /** When the last attempt failed, so a retry can be rate-limited. */
47
94
  failedAtMs?: number;
48
- /** The failure is an authoring error, so retrying can never help. */
95
+ /** No retry can help while the source holds the same content. */
49
96
  permanent?: boolean;
50
97
  }
51
98
  /** The Dict key / Set element type of a keyed collection, else null — the
52
99
  * `seek` capability is decided from the dataset's own type at bind time. */
53
100
  export declare function keyTypeOf(sourceType: EastTypeValue): EastTypeValue | null;
54
- /** Tracked-channel key for one window. */
55
- export declare function pagedWindowKey(workspace: string, path: TreePath, offset: number, limit: number): string;
56
- /** Tracked-channel key for a source's element total. */
57
- export declare function pagedTotalKey(workspace: string, path: TreePath): string;
58
- /** Tracked-channel key for ONE key query against a source. Every distinct
59
- * query gets its own channel: a search result is as immutable as a window. */
60
- export declare function pagedSeekKey(workspace: string, path: TreePath, query: DatasetFindQuery): string;
101
+ /** Tracked-channel key for a dataset's revision. Every read of the dataset
102
+ * tracks it, so every read re-fires when the source moves. */
103
+ export declare function pagedRevisionKey(workspace: string, path: TreePath): string;
104
+ /** Tracked-channel key for one window of one revision. */
105
+ export declare function pagedWindowKey(workspace: string, path: TreePath, revision: string, offset: number, limit: number, selector?: PagedSelector): string;
106
+ /** Tracked-channel key for one revision's element total. */
107
+ export declare function pagedTotalKey(workspace: string, path: TreePath, revision: string, selector?: PagedSelector): string;
108
+ /** Tracked-channel key for ONE key query against one revision. Every distinct
109
+ * query gets its own channel: a search result is as fixed as a window. */
110
+ export declare function pagedSeekKey(workspace: string, path: TreePath, revision: string, query: DatasetFindQuery, selector?: PagedSelector): string;
61
111
  /**
62
112
  * The decoded East {@link SeekQueryType} value as e3's wire query.
63
113
  *
64
- * The two are deliberately the same three shapes, so this is a re-tagging
65
- * rather than a translation: `.east` literals stay text, and the East option on
66
- * the `fields` arm becomes an absent property (`exactOptionalPropertyTypes`).
114
+ * The two are deliberately the same shapes, so this is a re-tagging rather
115
+ * than a translation: `.east` literals stay text, and the East option on the
116
+ * `fields` arm, like an open end of a `range`, becomes an absent property
117
+ * (`exactOptionalPropertyTypes`).
67
118
  */
68
- export declare function toFindQuery(query: unknown): DatasetFindQuery;
119
+ export declare function toFindQuery(query: unknown, selector?: PagedSelector): DatasetFindQuery;
69
120
  /**
70
121
  * Encapsulates all `Data.bindPaged` runtime state. The module-level
71
122
  * {@link defaultPagedRuntime} instance backs the registered platform; tests
@@ -78,32 +129,95 @@ export declare class PagedRuntime extends TrackedChannelStore<PageEntry> {
78
129
  /** Loaded window keys in least-recently-READ order (a Map preserves
79
130
  * insertion order; a read re-inserts). Bounds the decoded-window cache. */
80
131
  private readonly loadedWindows;
132
+ /** Each dataset's snapshot, by workspace and path. */
133
+ private readonly snapshots;
134
+ /** Fetches launched so far — the source of every channel's `launchSeq`. */
135
+ private launches;
81
136
  /** Monotonic clock seam so tests can drive the retry gate. */
82
137
  protected now(): number;
83
138
  protected createEntry(): PageEntry;
84
139
  /** Install the API adapter + workspace — called by the React provider
85
- * (or a test/showcase harness) before any handle is used. */
140
+ * (or a test/showcase harness) before any handle is used. Another adapter
141
+ * or workspace starts from nothing: no snapshot of the old one's carries
142
+ * over. */
86
143
  initialize(api: PagedApi, workspace: string): void;
87
- /** Tear down the adapter and all window state. */
88
- clear(): void;
144
+ /**
145
+ * Tear down the adapter and all window state.
146
+ *
147
+ * @param api - Clear only while this is the installed adapter, so a
148
+ * provider tearing down after another installed its own leaves that one
149
+ * in place
150
+ */
151
+ clear(api?: PagedApi): void;
152
+ /** Stop following every dataset, and drop what every snapshot delivered. */
153
+ private reset;
89
154
  private resolveWorkspace;
90
- /** Note a window as most-recently-read, and drop the coldest decoded
91
- * windows once the cache exceeds its cap. An evicted window returns to
92
- * `idle`, so the next read refetches it rather than reading a hole. */
93
- private touchWindow;
155
+ /** A dataset's snapshot, followed from its first read until the runtime
156
+ * is cleared. */
157
+ private snapshotOf;
158
+ /** Whether a snapshot is still the runtime's, rather than one a clear or a
159
+ * re-initialization dropped. */
160
+ private isLive;
161
+ /** Whether a live snapshot is still pinned to `revision`. */
162
+ private pinnedTo;
94
163
  /**
95
- * Start the fetch for a window if it isn't loaded or already in flight.
164
+ * The revision a read of `path` is pinned to — a hash, `null` while the
165
+ * dataset has no value, or `undefined` while it is being found — tracked so
166
+ * the read re-fires when the source moves.
96
167
  *
97
- * Deliberately does NOT notify on launch — the read that triggers it runs
98
- * inside a render pass, and notifying there would re-enter the renderer.
99
- * Only the settle notifies.
168
+ * @throws The failed lookup's reason, until a read after the retry gap
169
+ * looks again
100
170
  */
101
- private ensureWindow;
171
+ private revisionFor;
102
172
  /**
103
- * Start the fence search for one key query if it isn't answered or already
104
- * in flight — the seek sibling of {@link ensureWindow}, with the same
105
- * launch-does-not-notify rule (the read runs inside a render pass).
173
+ * Ask the server which content the dataset holds, and move there — unless
174
+ * a move lands first, which came from something no older than the answer.
106
175
  */
176
+ private find;
177
+ /**
178
+ * Move a dataset's source to `revision`: drop what the old snapshot
179
+ * delivered and re-fire every read of the dataset, so the windows and
180
+ * searches still in use are fetched again, pinned to the new one. A move to
181
+ * the revision the source already has changes nothing.
182
+ */
183
+ private moveTo;
184
+ /**
185
+ * Handle what a pinned fetch threw when it is not the read's failure: a
186
+ * refusal naming other content moves the source there, and "no value"
187
+ * moves it to no snapshot. Returns whether the error was one of those, or
188
+ * arrived after the source had already moved on.
189
+ */
190
+ private followed;
191
+ /** A channel of the snapshot's current revision, dropped when it moves. */
192
+ private channel;
193
+ /** Whether a channel is due a fetch: never fetched, evicted, or failed
194
+ * for a reason a retry can fix, longer ago than the retry gap. */
195
+ private due;
196
+ /**
197
+ * Mark a channel's fetch as started, returning the fetch's sequence number.
198
+ *
199
+ * Deliberately does NOT notify — the read that triggers it runs inside a
200
+ * render pass, and notifying there would re-enter the renderer. Only the
201
+ * settle notifies.
202
+ */
203
+ private launch;
204
+ /** Apply a fetch's outcome if the channel still waits on it, re-firing the
205
+ * channel's reads. Returns whether it applied. */
206
+ private settle;
207
+ /** Settle a fetch as failed, with the reason a read will throw. */
208
+ private fail;
209
+ /** What a read of a channel answers: its value once loaded, `none` while
210
+ * in flight, or its failure, thrown. */
211
+ private answer;
212
+ /** Note a window as most-recently-read, and drop the coldest decoded
213
+ * windows once the cache exceeds its cap. An evicted window returns to
214
+ * `idle`, so the next read refetches it rather than reading a hole. */
215
+ private touchWindow;
216
+ /** Start the pinned fetch for a window if it is due one, returning its
217
+ * channel. */
218
+ private ensureWindow;
219
+ /** Start the pinned fence search for one key query if it is due one,
220
+ * returning its channel — the seek sibling of {@link ensureWindow}. */
107
221
  private ensureSeek;
108
222
  /**
109
223
  * The low-level primitives backing handle methods, bound to THIS runtime.
@@ -113,29 +227,49 @@ export declare class PagedRuntime extends TrackedChannelStore<PageEntry> {
113
227
  */
114
228
  buildPrimitives(): PlatformFunction[];
115
229
  /**
116
- * Build the handle value for one `Data.bindPaged` evaluation. Both methods
117
- * are thin IR-bearing `East.function`s over {@link buildPrimitives},
118
- * capturing only the plain-data source path (the value type rides as a
119
- * type-arg) — so the handle is ordinary serializable East data (issue #106).
230
+ * Build the handle value for one paged bind. Every method is a thin
231
+ * IR-bearing `East.function` over {@link buildPrimitives}, capturing only
232
+ * the plain-data source path and selector (the value type rides as a
233
+ * type-arg) — so the handle is ordinary serializable East data (issue
234
+ * #106).
235
+ *
236
+ * @param sourceType - The dataset's type, or an index's window type
237
+ * @param path - The dataset's path
238
+ * @param selector - The rows the bind serves
239
+ * @param shape - `released`: the handle `data_bind_paged` returns, without
240
+ * `revision` or `refresh`; `pinned`: the handle `data_bind_paged_pinned`
241
+ * returns. Both read through the same snapshot.
242
+ * @returns The handle
120
243
  */
121
- buildHandle(sourceType: EastTypeValue, path: TreePath): Record<string, unknown>;
122
- /** Build a `Data.bindPaged` PlatformFunction bound to this runtime. Pass
123
- * `allowed=null` for an unscoped impl; pass a Set of path strings for
124
- * manifest scoping. */
244
+ buildHandle(sourceType: EastTypeValue, path: TreePath, selector: PagedSelector, shape: "released" | "pinned"): Record<string, unknown>;
245
+ /** Build the PlatformFunction behind `data_bind_paged` — the bind a UI
246
+ * exported before pinned reads calls — bound to this runtime. Its handle
247
+ * has no `revision` or `refresh`, but its reads are pinned, follow the
248
+ * dataset and fail visibly all the same. Pass `allowed=null` for an
249
+ * unscoped impl, or a Set of path strings for manifest scoping. */
125
250
  buildPlatform(allowed: ReadonlySet<string> | null): PlatformFunction;
251
+ /** Build the PlatformFunction behind `data_bind_paged_pinned` — what
252
+ * `Data.bindPaged` emits, for a dataset's own rows or a record's index —
253
+ * bound to this runtime and scoped by `allowed` exactly as
254
+ * {@link buildPlatform} is: an index read is a read of the record's path. */
255
+ buildPinnedPlatform(allowed: ReadonlySet<string> | null): PlatformFunction;
126
256
  }
127
257
  /** Process-global runtime backing the `PagedPlatform` export. */
128
258
  export declare const defaultPagedRuntime: PagedRuntime;
129
259
  /** Install the paging API adapter + workspace — called by the React provider
130
260
  * on mount (or by a test/showcase harness). */
131
261
  export declare function initializePagedApi(api: PagedApi, workspace: string): void;
132
- /** Tear down the paging API adapter and all window state. */
133
- export declare function clearPagedApi(): void;
134
- /** Global, manifest-unscoped `Data.bindPaged` impl + its backing primitives.
262
+ /**
263
+ * Tear down the paging API adapter and all window state.
264
+ *
265
+ * @param api - Clear only while this is the installed adapter
266
+ */
267
+ export declare function clearPagedApi(api?: PagedApi): void;
268
+ /** Global, manifest-unscoped paged binds + their backing primitives.
135
269
  * Registered on module load (powers the extension registry decode path). */
136
270
  export declare const PagedPlatform: PlatformFunction[];
137
- /** Build a manifest-scoped `Data.bindPaged` implementation + its backing
138
- * primitives, from the manifest's `pages` list.
271
+ /** Build manifest-scoped paged binds + their backing primitives, from the
272
+ * manifest's `pages` list.
139
273
  *
140
274
  * The `data_page*` primitives MUST ship with the scoped platform: e3 `ui()`
141
275
  * tasks render through `createScoped*()` arrays (UITaskPreview), NOT the
@@ -1 +1 @@
1
- {"version":3,"file":"paged-runtime.d.ts","sourceRoot":"","sources":["../../src/platform/paged-runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paged-runtime.d.ts","sourceRoot":"","sources":["../../src/platform/paged-runtime.ts"],"names":[],"mappings":"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"}
@@ -75,8 +75,14 @@ export declare class RecordRuntime extends TrackedChannelStore<RecordEntry> {
75
75
  /** Install the API adapter + dataset cache + workspace — called by the
76
76
  * React provider (or a test/showcase harness) before any handle is used. */
77
77
  initialize(api: RecordApi, cache: ReactiveDatasetCacheInterface, workspace: string): void;
78
- /** Tear down the adapter and all record state. */
79
- clear(): void;
78
+ /**
79
+ * Tear down the adapter and all record state.
80
+ *
81
+ * @param api - Clear only while this is the installed adapter, so a
82
+ * provider tearing down after another installed its own leaves that one
83
+ * in place
84
+ */
85
+ clear(api?: RecordApi): void;
80
86
  private resolveWorkspace;
81
87
  /** The deployed describe signature for a record (fetched once, evicted on failure). */
82
88
  private signature;
@@ -113,8 +119,12 @@ export declare const defaultRecordRuntime: RecordRuntime;
113
119
  /** Install the record API adapter + dataset cache + workspace — called by the
114
120
  * React provider on mount (or by a test/showcase harness). */
115
121
  export declare function initializeRecordApi(api: RecordApi, cache: ReactiveDatasetCacheInterface, workspace: string): void;
116
- /** Tear down the record API adapter and all record state. */
117
- export declare function clearRecordApi(): void;
122
+ /**
123
+ * Tear down the record API adapter and all record state.
124
+ *
125
+ * @param api - Clear only while this is the installed adapter
126
+ */
127
+ export declare function clearRecordApi(api?: RecordApi): void;
118
128
  /** Global, manifest-unscoped `Record.bind` impl + its backing primitives.
119
129
  * Registered on module load (powers the extension registry decode path). */
120
130
  export declare const RecordPlatform: PlatformFunction[];
@@ -1 +1 @@
1
- {"version":3,"file":"record-runtime.d.ts","sourceRoot":"","sources":["../../src/platform/record-runtime.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAaH,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,WAAW,EACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,gBAAgB,EAAgB,MAAM,wBAAwB,CAAC;AAC7E,OAAO,EAA8C,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC3G,OAAO,EAIH,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EAE3B,MAAM,wBAAwB,CAAC;AAKhC,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAAmB,KAAK,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AASzF;qEACqE;AACrE,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,UAAU,EAAE,CAAC;CACtB;AAED;;;;;GAKG;AACH,MAAM,WAAW,SAAS;IACtB,8EAA8E;IAC9E,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IACtE,6EAA6E;IAC7E,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAC5G,mDAAmD;IACnD,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACtH;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAClC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,MAAM,GAAG,IAAI,GAC9B,SAAS,CAiBX;AAMD,KAAK,WAAW,GAAG,WAAW,CAAC,eAAe,CAAC,CAAC;AAChD,KAAK,eAAe,GAAG,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;AAKjF,yEAAyE;AACzE,UAAU,qBAAqB;IAC3B,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;CAC5D;AAKD;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,UAAU,EAAE,aAAa,GAAG,qBAAqB,CAuB5F;AA8CD,qDAAqD;AACrD,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAExE;AAMD,8DAA8D;AAC9D,UAAU,WAAW;IACjB,MAAM,EAAE,eAAe,CAAC;IACxB;uEACmE;IACnE,SAAS,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB;gFAC4E;IAC5E,QAAQ,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,mBAAmB,CAAC,WAAW,CAAC;IAC/D,OAAO,CAAC,GAAG,CAA0B;IACrC,OAAO,CAAC,KAAK,CAA8C;IAC3D,OAAO,CAAC,SAAS,CAAuB;IAGxC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA+C;IAE9E,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAmC;IAC7D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAqB;IAKrD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAqB;IAOnD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8C;IAE1E,SAAS,CAAC,WAAW,IAAI,WAAW;IAMpC;iFAC6E;IAC7E,UAAU,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,6BAA6B,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAMzF,kDAAkD;IAClD,KAAK,IAAI,IAAI;IAYb,OAAO,CAAC,gBAAgB;IAOxB,uFAAuF;IACvF,OAAO,CAAC,SAAS;IAejB,+EAA+E;YACjE,QAAQ;IAqBtB,6EAA6E;IAC7E,OAAO,CAAC,YAAY;IAuBpB,OAAO,CAAC,cAAc;IA6CtB;;;;;;;;OAQG;IACH,eAAe,IAAI,gBAAgB,EAAE;IAgGrC;;;;;;OAMG;IACH,WAAW,CAAC,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAuD7E;;4BAEwB;IACxB,aAAa,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG,gBAAgB;CAcvE;AAMD,kEAAkE;AAClE,eAAO,MAAM,oBAAoB,eAAsB,CAAC;AAExD;+DAC+D;AAC/D,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,6BAA6B,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAEjH;AAED,6DAA6D;AAC7D,wBAAgB,cAAc,IAAI,IAAI,CAErC;AAED;6EAC6E;AAC7E,eAAO,MAAM,cAAc,EAAE,gBAAgB,EAG5C,CAAC;AAEF;;;;;0DAK0D;AAC1D,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,gBAAgB,EAAE,CAKzF;AASD,6EAA6E;AAC7E,MAAM,WAAW,iBAAiB;IAC9B,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,+BAA+B;IAC/B,SAAS,EAAE,QAAQ,GAAG,aAAa,CAAC;IACpC,qDAAqD;IACrD,OAAO,EAAE,OAAO,CAAC;IACjB,wEAAwE;IACxE,SAAS,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,CAAC,QAAQ,GAAG,aAAa,CAAC,EAAE,CAAC;QACvC,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC;KAC3D,EAAE,CAAC;CACP;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACnC,KAAK,EAAE,6BAA6B,EACpC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,iBAAiB,EAAE,GAC1B,SAAS,CAiEX"}
1
+ {"version":3,"file":"record-runtime.d.ts","sourceRoot":"","sources":["../../src/platform/record-runtime.ts"],"names":[],"mappings":"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"}
@@ -47,8 +47,18 @@ export interface StagedStoreInterface {
47
47
  write(workspace: string, path: TreePath, snapshotIfNew: Uint8Array, buffered: Uint8Array): void;
48
48
  /** Drop the staged entry for a path. Returns true if there was one. */
49
49
  discard(workspace: string, path: TreePath): boolean;
50
- /** All currently-staged keys (workspace+path combinations). */
50
+ /** All currently-staged keys (workspace+path combinations) in the scope. */
51
51
  listKeys(): string[];
52
+ /**
53
+ * Scope the store to a server and repository: every read and write goes to
54
+ * that scope's entries, and entries of any other scope are kept, unseen.
55
+ * With no scope set, the store has one scope of its own.
56
+ *
57
+ * @param scope - The server and repository, as one string
58
+ * @returns A function that unsets the scope while it is still this one, so
59
+ * a provider tearing down after another set its own leaves that in place
60
+ */
61
+ setScope(scope: string): () => void;
52
62
  subscribe(key: string, callback: () => void): () => void;
53
63
  getKeyVersion(key: string): number;
54
64
  /** Register a listener for durable-persistence failures (save / remove /
@@ -85,6 +95,7 @@ export declare class MemoryStagedAdapter implements StagedPersistenceAdapter {
85
95
  }
86
96
  export declare class StagedStore implements StagedStoreInterface {
87
97
  private entries;
98
+ private scope;
88
99
  private subscribers;
89
100
  private versions;
90
101
  private adapter;
@@ -102,11 +113,17 @@ export declare class StagedStore implements StagedStoreInterface {
102
113
  write(workspace: string, path: TreePath, snapshotIfNew: Uint8Array, buffered: Uint8Array): void;
103
114
  discard(workspace: string, path: TreePath): boolean;
104
115
  listKeys(): string[];
116
+ setScope(scope: string): () => void;
105
117
  subscribe(key: string, callback: () => void): () => void;
106
118
  getKeyVersion(key: string): number;
107
119
  onPersistError(cb: (key: string, err: unknown) => void): () => void;
108
- /** Test-only: clear in-memory + persisted state. */
120
+ /** Test-only: clear in-memory + persisted state, in every scope. */
109
121
  clear(): Promise<void>;
122
+ /** The key a path's entry is held under in the current scope. */
123
+ private keyOf;
124
+ /** Tells every path with an entry in either scope that what it reads has
125
+ * changed: the scope's move shows one's entries and hides the other's. */
126
+ private notifyScopes;
110
127
  private notify;
111
128
  /**
112
129
  * Serialize a persistence op behind any prior op for the same key, so they
@@ -1 +1 @@
1
- {"version":3,"file":"staged-store.d.ts","sourceRoot":"","sources":["../../src/platform/staged-store.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAOlD,qDAAqD;AACrD,MAAM,WAAW,WAAW;IACxB;2EACuE;IACvE,QAAQ,EAAE,UAAU,CAAC;IACrB,8DAA8D;IAC9D,QAAQ,EAAE,UAAU,CAAC;CACxB;AAED;;qCAEqC;AACrC,MAAM,WAAW,oBAAoB;IACjC,QAAQ,EAAE,UAAU,CAAC;IACrB,QAAQ,EAAE,UAAU,CAAC;CACxB;AAED;iCACiC;AACjC,MAAM,WAAW,wBAAwB;IACrC,6EAA6E;IAC7E,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC;IACtD,4CAA4C;IAC5C,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9D,8CAA8C;IAC9C,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,oCAAoC;IACpC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAED,MAAM,WAAW,oBAAoB;IACjC;wEACoE;IACpE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB;;8CAE0C;IAC1C,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9B,sDAAsD;IACtD,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC;IACvD,2EAA2E;IAC3E,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IACvE,iEAAiE;IACjE,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IACvE,6DAA6D;IAC7D,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,WAAW,GAAG,SAAS,CAAC;IAErE;wEACoE;IACpE,KAAK,CACD,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,QAAQ,EACd,aAAa,EAAE,UAAU,EACzB,QAAQ,EAAE,UAAU,GACrB,IAAI,CAAC;IAER,uEAAuE;IACvE,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC;IAEpD,+DAA+D;IAC/D,QAAQ,IAAI,MAAM,EAAE,CAAC;IAGrB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC;IACzD,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IAEnC;;;;2EAIuE;IACvE,cAAc,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;CACvE;AAUD;;;;GAIG;AACH,qBAAa,sBAAuB,YAAW,wBAAwB;IACnE,OAAO,CAAC,SAAS,CAAqC;IAEtD,OAAO,CAAC,KAAK;IAsBP,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;IAoBrD,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAU7D,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUlC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAS/B;AAMD;;;;GAIG;AACH,qBAAa,mBAAoB,YAAW,wBAAwB;IAChE,OAAO,CAAC,GAAG,CAA2C;IAEhD,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;IAKrD,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG/B;AAMD,qBAAa,WAAY,YAAW,oBAAoB;IACpD,OAAO,CAAC,OAAO,CAAuC;IACtD,OAAO,CAAC,WAAW,CAA2C;IAC9D,OAAO,CAAC,QAAQ,CAAkC;IAClD,OAAO,CAAC,OAAO,CAA2B;IAC1C,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,QAAQ,CAAiC;IAGjD,OAAO,CAAC,UAAU,CAAyC;IAE3D,OAAO,CAAC,cAAc,CAAuD;gBAEjE,OAAO,EAAE,wBAAwB;IAO7C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAIhB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAQnC,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO;IAItD,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS;IAItE,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS;IAItE,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,WAAW,GAAG,SAAS;IAIpE,KAAK,CACD,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,QAAQ,EACd,aAAa,EAAE,UAAU,EACzB,QAAQ,EAAE,UAAU,GACrB,IAAI;IAgBP,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO;IASnD,QAAQ,IAAI,MAAM,EAAE;IAIpB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAaxD,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAIlC,cAAc,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI;IAKnE,oDAAoD;IAC9C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAY5B,OAAO,CAAC,MAAM;IAMd;;;;;OAKG;IACH,OAAO,CAAC,OAAO;IAgBf,OAAO,CAAC,gBAAgB;YAcV,OAAO;CAgBxB;AAmBD,wBAAgB,cAAc,IAAI,oBAAoB,CAKrD;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,oBAAoB,GAAG,IAAI,CAEvE;AAED,wBAAgB,yBAAyB,IAAI,IAAI,CAEhD"}
1
+ {"version":3,"file":"staged-store.d.ts","sourceRoot":"","sources":["../../src/platform/staged-store.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elaraai/e3-ui-components",
3
- "version": "1.0.79",
3
+ "version": "1.0.81",
4
4
  "description": "React Query hooks and preview components for the e3 API",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -36,12 +36,12 @@
36
36
  "@tanstack/react-query": "^5.62.0",
37
37
  "react": "^19.0.0",
38
38
  "react-dom": "^19.0.0",
39
- "@elaraai/e3-api-client": "1.0.79",
40
- "@elaraai/e3-types": "1.0.79",
41
- "@elaraai/east": "1.0.79",
42
- "@elaraai/east-ui": "1.0.79",
43
- "@elaraai/e3-ui": "1.0.79",
44
- "@elaraai/east-ui-components": "1.0.79"
39
+ "@elaraai/e3-api-client": "1.0.81",
40
+ "@elaraai/e3-types": "1.0.81",
41
+ "@elaraai/e3-ui": "1.0.81",
42
+ "@elaraai/east-ui": "1.0.81",
43
+ "@elaraai/east-ui-components": "1.0.81",
44
+ "@elaraai/east": "1.0.81"
45
45
  },
46
46
  "dependencies": {
47
47
  "@emotion/react": "^11.14.0",
@@ -87,12 +87,13 @@
87
87
  "vite": "^6.0.0",
88
88
  "vite-plugin-dts": "^4.3.0",
89
89
  "vitest": "^4.0.14",
90
- "@elaraai/e3-api-client": "1.0.79",
91
- "@elaraai/e3-types": "1.0.79",
92
- "@elaraai/e3-ui": "1.0.79",
93
- "@elaraai/east": "1.0.79",
94
- "@elaraai/east-ui": "1.0.79",
95
- "@elaraai/east-ui-components": "1.0.79"
90
+ "@elaraai/e3-api-client": "1.0.81",
91
+ "@elaraai/e3-ui": "1.0.81",
92
+ "@elaraai/e3-types": "1.0.81",
93
+ "@elaraai/east-ui": "1.0.81",
94
+ "@elaraai/east": "1.0.81",
95
+ "@elaraai/eslint-plugin-east": "1.0.81",
96
+ "@elaraai/east-ui-components": "1.0.81"
96
97
  },
97
98
  "repository": {
98
99
  "type": "git",
@@ -112,8 +113,8 @@
112
113
  "node": ">=22.0.0"
113
114
  },
114
115
  "scripts": {
115
- "build": "vite build",
116
- "typecheck": "tsc --noEmit",
116
+ "build": "pnpm run typecheck && vite build",
117
+ "typecheck": "tsc -p tsconfig.typecheck.json",
117
118
  "lint": "eslint .",
118
119
  "lint:fix": "eslint . --fix",
119
120
  "test": "node --import tsx --test test/*.spec.ts test/**/*.spec.ts && vitest run",