@haverstack/core 0.42.0 → 0.44.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/README.md +6 -9
- package/dist/access.d.ts +36 -34
- package/dist/access.d.ts.map +1 -1
- package/dist/access.js +51 -100
- package/dist/access.js.map +1 -1
- package/dist/adapter/combine.d.ts.map +1 -1
- package/dist/adapter/combine.js +14 -7
- package/dist/adapter/combine.js.map +1 -1
- package/dist/adapter/copy.d.ts +27 -0
- package/dist/adapter/copy.d.ts.map +1 -0
- package/dist/adapter/copy.js +105 -0
- package/dist/adapter/copy.js.map +1 -0
- package/dist/adapter/index.d.ts +9 -4
- package/dist/adapter/index.d.ts.map +1 -1
- package/dist/adapter/index.js +6 -3
- package/dist/adapter/index.js.map +1 -1
- package/dist/adapter/reach.d.ts +14 -0
- package/dist/adapter/reach.d.ts.map +1 -0
- package/dist/adapter/reach.js +31 -0
- package/dist/adapter/reach.js.map +1 -0
- package/dist/adapter/seed.d.ts +13 -0
- package/dist/adapter/seed.d.ts.map +1 -0
- package/dist/adapter/seed.js +26 -0
- package/dist/adapter/seed.js.map +1 -0
- package/dist/associations/identity.d.ts +18 -42
- package/dist/associations/identity.d.ts.map +1 -1
- package/dist/associations/identity.js +60 -84
- package/dist/associations/identity.js.map +1 -1
- package/dist/associations/validation.d.ts +1 -8
- package/dist/associations/validation.d.ts.map +1 -1
- package/dist/associations/validation.js +3 -30
- package/dist/associations/validation.js.map +1 -1
- package/dist/collection.d.ts +7 -11
- package/dist/collection.d.ts.map +1 -1
- package/dist/collection.js +24 -34
- package/dist/collection.js.map +1 -1
- package/dist/content-match.d.ts +2 -2
- package/dist/content-match.js +2 -2
- package/dist/errors.d.ts +41 -12
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +56 -15
- package/dist/errors.js.map +1 -1
- package/dist/grants.d.ts +18 -6
- package/dist/grants.d.ts.map +1 -1
- package/dist/grants.js +48 -37
- package/dist/grants.js.map +1 -1
- package/dist/hash.d.ts +8 -0
- package/dist/hash.d.ts.map +1 -0
- package/dist/hash.js +14 -0
- package/dist/hash.js.map +1 -0
- package/dist/index.d.ts +6 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/install.d.ts +29 -5
- package/dist/install.d.ts.map +1 -1
- package/dist/install.js +69 -44
- package/dist/install.js.map +1 -1
- package/dist/lazy.d.ts +13 -0
- package/dist/lazy.d.ts.map +1 -0
- package/dist/lazy.js +27 -0
- package/dist/lazy.js.map +1 -0
- package/dist/merge.d.ts +1 -1
- package/dist/merge.js +1 -1
- package/dist/query-validation.d.ts +41 -28
- package/dist/query-validation.d.ts.map +1 -1
- package/dist/query-validation.js +85 -71
- package/dist/query-validation.js.map +1 -1
- package/dist/record-changes.d.ts +12 -36
- package/dist/record-changes.d.ts.map +1 -1
- package/dist/record-changes.js +9 -98
- package/dist/record-changes.js.map +1 -1
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +2 -5
- package/dist/schema.js.map +1 -1
- package/dist/scoped-stack/authority-snapshot.d.ts +37 -0
- package/dist/scoped-stack/authority-snapshot.d.ts.map +1 -0
- package/dist/scoped-stack/authority-snapshot.js +49 -0
- package/dist/scoped-stack/authority-snapshot.js.map +1 -0
- package/dist/scoped-stack/authority.d.ts +69 -51
- package/dist/scoped-stack/authority.d.ts.map +1 -1
- package/dist/scoped-stack/authority.js +189 -153
- package/dist/scoped-stack/authority.js.map +1 -1
- package/dist/scoped-stack/family-policy.d.ts +59 -0
- package/dist/scoped-stack/family-policy.d.ts.map +1 -0
- package/dist/scoped-stack/family-policy.js +68 -0
- package/dist/scoped-stack/family-policy.js.map +1 -0
- package/dist/scoped-stack/scoped-stack.d.ts +73 -86
- package/dist/scoped-stack/scoped-stack.d.ts.map +1 -1
- package/dist/scoped-stack/scoped-stack.js +279 -337
- package/dist/scoped-stack/scoped-stack.js.map +1 -1
- package/dist/scoped-stack/subscription.d.ts +14 -33
- package/dist/scoped-stack/subscription.d.ts.map +1 -1
- package/dist/scoped-stack/subscription.js +16 -57
- package/dist/scoped-stack/subscription.js.map +1 -1
- package/dist/stack/arguments.d.ts +27 -0
- package/dist/stack/arguments.d.ts.map +1 -0
- package/dist/stack/arguments.js +53 -0
- package/dist/stack/arguments.js.map +1 -0
- package/dist/stack/attachments.d.ts +1 -1
- package/dist/stack/attachments.js +1 -1
- package/dist/stack/changes.d.ts +4 -10
- package/dist/stack/changes.d.ts.map +1 -1
- package/dist/stack/changes.js +8 -8
- package/dist/stack/changes.js.map +1 -1
- package/dist/stack/client.d.ts +34 -58
- package/dist/stack/client.d.ts.map +1 -1
- package/dist/stack/field-rules.d.ts +27 -0
- package/dist/stack/field-rules.d.ts.map +1 -0
- package/dist/stack/field-rules.js +50 -0
- package/dist/stack/field-rules.js.map +1 -0
- package/dist/stack/install-app.d.ts +2 -2
- package/dist/stack/install-app.d.ts.map +1 -1
- package/dist/stack/install-app.js +16 -14
- package/dist/stack/install-app.js.map +1 -1
- package/dist/stack/integrity.d.ts +9 -53
- package/dist/stack/integrity.d.ts.map +1 -1
- package/dist/stack/integrity.js +47 -107
- package/dist/stack/integrity.js.map +1 -1
- package/dist/stack/limits.d.ts +1 -1
- package/dist/stack/limits.js +1 -1
- package/dist/stack/reads.d.ts +9 -5
- package/dist/stack/reads.d.ts.map +1 -1
- package/dist/stack/reads.js +24 -4
- package/dist/stack/reads.js.map +1 -1
- package/dist/stack/stack.d.ts +84 -79
- package/dist/stack/stack.d.ts.map +1 -1
- package/dist/stack/stack.js +236 -306
- package/dist/stack/stack.js.map +1 -1
- package/dist/stack/system-types.d.ts.map +1 -1
- package/dist/stack/system-types.js +1 -3
- package/dist/stack/system-types.js.map +1 -1
- package/dist/stack/type-grants.d.ts.map +1 -1
- package/dist/stack/type-grants.js +9 -6
- package/dist/stack/type-grants.js.map +1 -1
- package/dist/stack/write-expectation.d.ts +13 -12
- package/dist/stack/write-expectation.d.ts.map +1 -1
- package/dist/stack/write-expectation.js.map +1 -1
- package/dist/stack/write-gate.d.ts +23 -0
- package/dist/stack/write-gate.d.ts.map +1 -0
- package/dist/stack/write-gate.js +17 -0
- package/dist/stack/write-gate.js.map +1 -0
- package/dist/testing.d.ts +37 -24
- package/dist/testing.d.ts.map +1 -1
- package/dist/testing.js +176 -153
- package/dist/testing.js.map +1 -1
- package/dist/types/adapter.d.ts +115 -43
- package/dist/types/adapter.d.ts.map +1 -1
- package/dist/types/associations.d.ts +1 -17
- package/dist/types/associations.d.ts.map +1 -1
- package/dist/types/associations.js +1 -8
- package/dist/types/associations.js.map +1 -1
- package/dist/types/capabilities.d.ts +8 -8
- package/dist/types/capabilities.d.ts.map +1 -1
- package/dist/types/events.d.ts +3 -8
- package/dist/types/events.d.ts.map +1 -1
- package/dist/types/query.d.ts +4 -4
- package/dist/types/system.d.ts +2 -8
- package/dist/types/system.d.ts.map +1 -1
- package/dist/types/system.js.map +1 -1
- package/dist/validate.d.ts +2 -0
- package/dist/validate.d.ts.map +1 -1
- package/dist/validate.js +2 -1
- package/dist/validate.js.map +1 -1
- package/dist/wire/body.d.ts +32 -9
- package/dist/wire/body.d.ts.map +1 -1
- package/dist/wire/body.js +69 -8
- package/dist/wire/body.js.map +1 -1
- package/dist/wire/index.d.ts +4 -4
- package/dist/wire/index.d.ts.map +1 -1
- package/dist/wire/index.js +3 -3
- package/dist/wire/index.js.map +1 -1
- package/dist/wire/record.d.ts +1 -8
- package/dist/wire/record.d.ts.map +1 -1
- package/dist/wire/record.js +0 -48
- package/dist/wire/record.js.map +1 -1
- package/dist/wire/request.d.ts +18 -18
- package/dist/wire/request.d.ts.map +1 -1
- package/dist/wire/request.js +41 -36
- package/dist/wire/request.js.map +1 -1
- package/package.json +1 -1
- package/dist/stack/identity-bindings.d.ts +0 -13
- package/dist/stack/identity-bindings.d.ts.map +0 -1
- package/dist/stack/identity-bindings.js +0 -36
- package/dist/stack/identity-bindings.js.map +0 -1
package/dist/stack/stack.d.ts
CHANGED
|
@@ -16,12 +16,13 @@
|
|
|
16
16
|
*
|
|
17
17
|
* Apps should never talk to a StackAdapter directly.
|
|
18
18
|
*/
|
|
19
|
-
import type { StackRecord, StackType, TypeSchema, TypeId, BaseId, StackAdapter, StackQuery, QueryResult, AssociationEdit, AuthorityAssociation, DataAssociation, RecordVersion, StackCapabilities, IfVersionOptions, GrantContent, TypeGrant, PutAttachmentOptions, AttachmentContent, FileId, EntityId, AppId, InstallContent, RecordId, Actor, ActorOptions, RecordChange,
|
|
19
|
+
import type { StackRecord, StackType, TypeSchema, TypeId, BaseId, StackAdapter, StackQuery, QueryResult, AssociationEdit, AuthorityAssociation, DataAssociation, RecordVersion, StackCapabilities, IfVersionOptions, GrantContent, TypeGrant, PutAttachmentOptions, AttachmentContent, FileId, EntityId, AppId, InstallContent, RecordId, Actor, ActorOptions, RecordChange, SubscribeOptions, Unsubscribe, JournalQuery, VersionsQuery, RecordJournalEntry } from '../types/index.js';
|
|
20
20
|
import type { GrantQuery } from '../grants.js';
|
|
21
|
-
import type { AppManifest, InstallPlan } from '../install.js';
|
|
21
|
+
import type { AppManifest, InstallAppOptions, InstallPlan } from '../install.js';
|
|
22
22
|
import { ScopedStack } from '../scoped-stack/scoped-stack.js';
|
|
23
|
-
import type { BackdatableCreateRecordOptions, CollectAttachmentGarbageOptions, CollectAttachmentGarbageResult, DefineTypeOptions,
|
|
23
|
+
import type { BackdatableCreateRecordOptions, CollectAttachmentGarbageOptions, CollectAttachmentGarbageResult, DefineTypeOptions, DeleteRecordOptions, DeleteResult, GetRecordOptions, MigrateAllOptions, StackClient, StackOptions } from './client.js';
|
|
24
24
|
import type { ExpectationOptions } from './write-expectation.js';
|
|
25
|
+
import type { GateOptions } from './write-gate.js';
|
|
25
26
|
import type { ContentOf, ReadonlyTypeSchema, TypeHandle } from '../type-handle.js';
|
|
26
27
|
import type { Collection } from '../collection.js';
|
|
27
28
|
export declare class Stack implements StackClient {
|
|
@@ -47,7 +48,7 @@ export declare class Stack implements StackClient {
|
|
|
47
48
|
/**
|
|
48
49
|
* Announce a mutation that has already been persisted. Called after the
|
|
49
50
|
* adapter write resolves and before the mutating method settles, so
|
|
50
|
-
* `await stack.
|
|
51
|
+
* `await stack.patchContent(...)` guarantees subscribers have been notified —
|
|
51
52
|
* and nothing about work they deferred. A handler cannot fail the write:
|
|
52
53
|
* there is nothing left to fail. See docs/spec/events.md § Handlers.
|
|
53
54
|
*/
|
|
@@ -61,7 +62,7 @@ export declare class Stack implements StackClient {
|
|
|
61
62
|
private static createActor;
|
|
62
63
|
private getTypeCached;
|
|
63
64
|
/**
|
|
64
|
-
* Open a Stack over an adapter. Reads ownerEntityId
|
|
65
|
+
* Open a Stack over an adapter. Reads ownerEntityId from the adapter.
|
|
65
66
|
*/
|
|
66
67
|
static open(adapter: StackAdapter, opts?: StackOptions): Promise<Stack>;
|
|
67
68
|
/**
|
|
@@ -74,7 +75,6 @@ export declare class Stack implements StackClient {
|
|
|
74
75
|
get ownerEntityId(): EntityId;
|
|
75
76
|
getEntityByDid(did: EntityId): Promise<StackRecord | null>;
|
|
76
77
|
getOwnerEntity(): Promise<StackRecord | null>;
|
|
77
|
-
get timezone(): string | undefined;
|
|
78
78
|
get capabilities(): StackCapabilities;
|
|
79
79
|
/**
|
|
80
80
|
* Get a permission-scoped view of this Stack, as if requests came from
|
|
@@ -91,6 +91,12 @@ export declare class Stack implements StackClient {
|
|
|
91
91
|
* See docs/spec/access-control.md § Delegation: principal and subject.
|
|
92
92
|
*/
|
|
93
93
|
asActor(actor: Actor): ScopedStack;
|
|
94
|
+
/**
|
|
95
|
+
* A scoped view needs a stack that owns its storage: one whose adapter
|
|
96
|
+
* queries within a reach and relays no changes from elsewhere. A
|
|
97
|
+
* server-backed stack is scoped by the session that opened it instead.
|
|
98
|
+
* See docs/spec/access-control.md § Enforcement: Stack.asEntity().
|
|
99
|
+
*/
|
|
94
100
|
private scope;
|
|
95
101
|
collection<S extends ReadonlyTypeSchema>(handle: TypeHandle<S>): Collection<ContentOf<S>>;
|
|
96
102
|
/**
|
|
@@ -136,67 +142,71 @@ export declare class Stack implements StackClient {
|
|
|
136
142
|
*/
|
|
137
143
|
get(id: RecordId, opts?: GetRecordOptions): Promise<StackRecord | null>;
|
|
138
144
|
/**
|
|
139
|
-
*
|
|
140
|
-
*
|
|
141
|
-
* against the record's current stored type.
|
|
145
|
+
* Merge a patch into a record's content, checked against its current
|
|
146
|
+
* stored type. A patch the content already satisfies writes nothing.
|
|
142
147
|
* See docs/spec/data-model.md § Mutations.
|
|
143
148
|
*/
|
|
144
|
-
|
|
149
|
+
patchContent(id: RecordId, patch: Record<string, unknown | null>, opts?: IfVersionOptions & ActorOptions & ExpectationOptions): Promise<StackRecord>;
|
|
145
150
|
/**
|
|
146
|
-
*
|
|
147
|
-
*
|
|
148
|
-
*
|
|
151
|
+
* Every check a content patch owes, all before anything is written.
|
|
152
|
+
* Returns the merged content, which the caller compares to decide whether
|
|
153
|
+
* content moved.
|
|
149
154
|
*/
|
|
150
|
-
|
|
155
|
+
private validatePatch;
|
|
151
156
|
/**
|
|
152
|
-
*
|
|
153
|
-
*
|
|
154
|
-
*
|
|
157
|
+
* Move a record under another, or to the root with `null`. The
|
|
158
|
+
* destination is checked only when it changes: it has to exist, and the
|
|
159
|
+
* move must not make the record its own ancestor.
|
|
160
|
+
* See docs/spec/data-model.md § Reparenting.
|
|
155
161
|
*/
|
|
156
|
-
|
|
162
|
+
setParent(id: RecordId, parentId: RecordId | null, opts?: IfVersionOptions & ActorOptions & ExpectationOptions): Promise<StackRecord>;
|
|
157
163
|
/**
|
|
158
|
-
*
|
|
159
|
-
*
|
|
160
|
-
*
|
|
161
|
-
* a reference came from.
|
|
164
|
+
* Withhold a record from enumeration, or restore it. Restating the
|
|
165
|
+
* current state writes nothing, so `unlistedAt` is never dragged forward.
|
|
166
|
+
* See docs/spec/unlisted.md.
|
|
162
167
|
*/
|
|
163
|
-
|
|
168
|
+
setUnlisted(id: RecordId, unlisted: boolean, opts?: IfVersionOptions & ActorOptions & ExpectationOptions): Promise<StackRecord>;
|
|
164
169
|
/**
|
|
165
|
-
*
|
|
166
|
-
*
|
|
167
|
-
*
|
|
168
|
-
* `attachmentRecordId`
|
|
169
|
-
*
|
|
170
|
+
* Apply adds and removes to a record's data associations: one adapter
|
|
171
|
+
* write, one journal entry carrying each element in full, so the entry is
|
|
172
|
+
* as undoable as a single-element one. An add naming a held identity with
|
|
173
|
+
* a new `attachmentRecordId` re-points it — see docs/spec/attachments.md
|
|
174
|
+
* § Naming the upload a reference came from.
|
|
170
175
|
*/
|
|
171
|
-
|
|
176
|
+
editAssociations(id: RecordId, edits: AssociationEdit[], opts?: IfVersionOptions & ActorOptions & ExpectationOptions & GateOptions): Promise<StackRecord>;
|
|
172
177
|
/**
|
|
173
|
-
*
|
|
174
|
-
*
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
+
* Make a record's data associations exactly `associations`. Its
|
|
179
|
+
* permissions are another aspect, which this never reads or writes.
|
|
180
|
+
*/
|
|
181
|
+
setAssociations(id: RecordId, associations: DataAssociation[], opts?: IfVersionOptions & ActorOptions & ExpectationOptions & GateOptions): Promise<StackRecord>;
|
|
182
|
+
/**
|
|
183
|
+
* The shared half of the two data-association writes, from the set the
|
|
184
|
+
* write would leave: nothing moved writes nothing, a roster keeps an
|
|
185
|
+
* admin, and every new attachment pointer names its own upload.
|
|
178
186
|
*/
|
|
179
|
-
|
|
187
|
+
private writeAssociations;
|
|
180
188
|
/**
|
|
181
|
-
*
|
|
182
|
-
*
|
|
183
|
-
*
|
|
184
|
-
* granted. No-bump, like associate(); an element the record already
|
|
185
|
-
* carries is a no-op. `write` never implies `read` — name both.
|
|
189
|
+
* Apply adds and removes to who reaches a record. The write-implies-read
|
|
190
|
+
* invariant is asked once, of the set the whole list produces, so a
|
|
191
|
+
* downgrade is one call. See docs/spec/access-control.md § Write implies read.
|
|
186
192
|
*/
|
|
187
|
-
|
|
193
|
+
editAccess(id: RecordId, edits: AssociationEdit[], opts?: IfVersionOptions & ActorOptions & ExpectationOptions & GateOptions): Promise<StackRecord>;
|
|
194
|
+
/** Make who reaches a record exactly `permissions`; `[]` is private. */
|
|
195
|
+
setAccess(id: RecordId, permissions: AuthorityAssociation[], opts?: IfVersionOptions & ActorOptions & ExpectationOptions & GateOptions): Promise<StackRecord>;
|
|
196
|
+
private writeAccess;
|
|
188
197
|
/**
|
|
189
|
-
*
|
|
190
|
-
*
|
|
191
|
-
*
|
|
198
|
+
* Run an element-set write from its read onward, again from a fresh read
|
|
199
|
+
* each time the adapter finds the set moved since the last one, so the
|
|
200
|
+
* rules over the resulting set are asked of the set the write lands on.
|
|
201
|
+
* Unbounded: each refusal means another write landed.
|
|
202
|
+
* See docs/spec/versioning.md § Element-set writes compare the set they read.
|
|
192
203
|
*/
|
|
193
|
-
|
|
204
|
+
private untilSetHolds;
|
|
194
205
|
/**
|
|
195
|
-
*
|
|
196
|
-
*
|
|
197
|
-
* produces. See docs/spec/access-control.md § Write implies read.
|
|
206
|
+
* Land a write that never bumps. Its precondition and journal entry
|
|
207
|
+
* travel together here, so no aspect verb can drop either.
|
|
198
208
|
*/
|
|
199
|
-
|
|
209
|
+
private writeAspect;
|
|
200
210
|
/**
|
|
201
211
|
* Hold a permission set to the cross-element invariant — see
|
|
202
212
|
* validatePermissions() in access.ts for why it reads the post-state.
|
|
@@ -210,6 +220,14 @@ export declare class Stack implements StackClient {
|
|
|
210
220
|
* not applied to a tombstone.
|
|
211
221
|
*/
|
|
212
222
|
private refuseIfDeleted;
|
|
223
|
+
/**
|
|
224
|
+
* The record a write addresses, past every refusal owed before
|
|
225
|
+
* validation: missing, another family, a caller's gate, soft-deleted,
|
|
226
|
+
* then a stale `ifVersion` — before validation, so a caller that lost the
|
|
227
|
+
* race hears that first, and before any no-op, so a write that moved
|
|
228
|
+
* nothing never satisfies a precondition.
|
|
229
|
+
*/
|
|
230
|
+
private requireWritable;
|
|
213
231
|
/**
|
|
214
232
|
* A by-id read straight from the adapter, for the integrity checks a write
|
|
215
233
|
* runs once it is under way: they read past the open-check, as the write
|
|
@@ -219,19 +237,13 @@ export declare class Stack implements StackClient {
|
|
|
219
237
|
/** The record, or the not-found refusal every mutating verb owes. */
|
|
220
238
|
private requireRecord;
|
|
221
239
|
/**
|
|
222
|
-
* Soft-delete a record, or purge it with its history
|
|
223
|
-
*
|
|
224
|
-
*
|
|
225
|
-
* docs/spec/versioning.md § Deletion and docs/spec/attachments.md
|
|
226
|
-
* purge strands the bytes it referenced.
|
|
240
|
+
* Soft-delete a record, or purge it with its history, reporting the
|
|
241
|
+
* record as the write left it — or as a purge destroyed it — captured in
|
|
242
|
+
* the same write, so nothing lands unseen between a read and the delete.
|
|
243
|
+
* See docs/spec/versioning.md § Deletion and docs/spec/attachments.md
|
|
244
|
+
* § A purge strands the bytes it referenced.
|
|
227
245
|
*/
|
|
228
246
|
delete(id: RecordId, opts?: DeleteRecordOptions & ActorOptions & ExpectationOptions): Promise<DeleteResult>;
|
|
229
|
-
/**
|
|
230
|
-
* delete(), plus the record it acted on — before destruction for a purge,
|
|
231
|
-
* the tombstone for a soft delete — captured inside the same write, so no
|
|
232
|
-
* concurrent write can land unseen between a read and the delete.
|
|
233
|
-
*/
|
|
234
|
-
deleteAndReturn(id: RecordId, opts?: DeleteRecordOptions & ActorOptions & ExpectationOptions): Promise<DeleteAndReturnResult>;
|
|
235
247
|
/**
|
|
236
248
|
* The files a record references, by the same definition
|
|
237
249
|
* deleteAttachment() and the garbage sweep use: attachment associations
|
|
@@ -248,24 +260,17 @@ export declare class Stack implements StackClient {
|
|
|
248
260
|
*/
|
|
249
261
|
undelete(id: RecordId, opts?: IfVersionOptions & ActorOptions & ExpectationOptions): Promise<StackRecord>;
|
|
250
262
|
/**
|
|
251
|
-
* Query records. filter.baseId matches every version of a type family
|
|
252
|
-
*
|
|
253
|
-
*
|
|
254
|
-
* docs/spec/data-model.md § Queries.
|
|
263
|
+
* Query records. filter.baseId matches every version of a type family.
|
|
264
|
+
* Results come back exactly as stored; pass presentAt: 'latest' to
|
|
265
|
+
* migrate in memory. See docs/spec/data-model.md § Queries.
|
|
255
266
|
*/
|
|
256
267
|
query(query?: StackQuery): Promise<QueryResult>;
|
|
257
268
|
/**
|
|
258
|
-
*
|
|
259
|
-
*
|
|
260
|
-
*
|
|
261
|
-
* the caller can short-circuit without an adapter round trip.
|
|
262
|
-
*/
|
|
263
|
-
private resolveBaseIdFilter;
|
|
264
|
-
/**
|
|
265
|
-
* Every registered version of the named families, as concrete typeIds —
|
|
266
|
-
* resolved here because an adapter has no baseId concept of its own.
|
|
269
|
+
* Everything query() does around the adapter call once the query is
|
|
270
|
+
* split and checked: the migration on the way out. `read` is the call,
|
|
271
|
+
* so a scoped query within a reach gets the same treatment as any other.
|
|
267
272
|
*/
|
|
268
|
-
private
|
|
273
|
+
private dispatchQuery;
|
|
269
274
|
getVersions(id: RecordId, query?: VersionsQuery): Promise<RecordVersion[]>;
|
|
270
275
|
/**
|
|
271
276
|
* A record's change journal, oldest first, ungated. A missing or purged
|
|
@@ -397,12 +402,12 @@ export declare class Stack implements StackClient {
|
|
|
397
402
|
did: EntityId;
|
|
398
403
|
}): Promise<InstallPlan>;
|
|
399
404
|
/**
|
|
400
|
-
* Apply an approved
|
|
401
|
-
* Record and every linked key's grants
|
|
402
|
-
*
|
|
403
|
-
* See docs/spec/apps.md § Plan, then apply.
|
|
405
|
+
* Apply an approved manifest: its types, the key's `_app` card, the
|
|
406
|
+
* `_install` Record and every linked key's grants — refused with
|
|
407
|
+
* StackConflictError unless it still plans to `opts.fingerprint`, the
|
|
408
|
+
* plan the owner approved. See docs/spec/apps.md § Plan, then apply.
|
|
404
409
|
*/
|
|
405
|
-
installApp(
|
|
410
|
+
installApp(manifest: AppManifest, opts: InstallAppOptions): Promise<StackRecord & {
|
|
406
411
|
content: InstallContent;
|
|
407
412
|
}>;
|
|
408
413
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stack.d.ts","sourceRoot":"","sources":["../../src/stack/stack.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AA4BH,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACT,UAAU,EACV,MAAM,EACN,MAAM,EACN,YAAY,EACZ,UAAU,EAEV,WAAW,
|
|
1
|
+
{"version":3,"file":"stack.d.ts","sourceRoot":"","sources":["../../src/stack/stack.ts"],"names":[],"mappings":"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"}
|