@brass-build/client 0.2.0 → 0.3.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/CHANGELOG.md +11 -0
- package/README.md +16 -12
- package/dist/client.d.ts +1 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +28 -1
- package/dist/client.js.map +1 -1
- package/dist/document-checkpoints.d.ts +1 -0
- package/dist/document-checkpoints.d.ts.map +1 -1
- package/dist/document-checkpoints.js +27 -0
- package/dist/document-checkpoints.js.map +1 -1
- package/dist/document-signals.d.ts +31 -1
- package/dist/document-signals.d.ts.map +1 -1
- package/dist/document-signals.js +59 -0
- package/dist/document-signals.js.map +1 -1
- package/dist/document-thumbnail-capture.d.ts +20 -0
- package/dist/document-thumbnail-capture.d.ts.map +1 -1
- package/dist/document-thumbnail-capture.js +247 -9
- package/dist/document-thumbnail-capture.js.map +1 -1
- package/dist/documents-namespace.d.ts.map +1 -1
- package/dist/documents-namespace.js +3 -0
- package/dist/documents-namespace.js.map +1 -1
- package/dist/documents.d.ts +6 -2
- package/dist/documents.d.ts.map +1 -1
- package/dist/documents.js +110 -14
- package/dist/documents.js.map +1 -1
- package/dist/handles.d.ts.map +1 -1
- package/dist/handles.js +2 -2
- package/dist/handles.js.map +1 -1
- package/dist/importer.d.ts.map +1 -1
- package/dist/importer.js +11 -60
- package/dist/importer.js.map +1 -1
- package/dist/internal.d.ts +1 -0
- package/dist/internal.d.ts.map +1 -1
- package/dist/internal.js +1 -0
- package/dist/internal.js.map +1 -1
- package/dist/open-document.d.ts +15 -0
- package/dist/open-document.d.ts.map +1 -1
- package/dist/open-document.js +54 -1
- package/dist/open-document.js.map +1 -1
- package/dist/record-paging.d.ts +13 -14
- package/dist/record-paging.d.ts.map +1 -1
- package/dist/record-paging.js +13 -14
- package/dist/record-paging.js.map +1 -1
- package/dist/serializer.d.ts +3 -3
- package/dist/session-toolbar.d.ts.map +1 -1
- package/dist/session-toolbar.js +131 -9
- package/dist/session-toolbar.js.map +1 -1
- package/dist/version-bar.d.ts.map +1 -1
- package/dist/version-bar.js +23 -2
- package/dist/version-bar.js.map +1 -1
- package/dist/version.d.ts +2 -2
- package/dist/version.js +1 -1
- package/dist/when-saved.d.ts +2 -0
- package/dist/when-saved.d.ts.map +1 -0
- package/dist/when-saved.js +70 -0
- package/dist/when-saved.js.map +1 -0
- package/dist/ws-client.d.ts +4 -0
- package/dist/ws-client.d.ts.map +1 -1
- package/dist/ws-client.js +70 -1
- package/dist/ws-client.js.map +1 -1
- package/dist/ws-frame-limit.d.ts.map +1 -1
- package/dist/ws-frame-limit.js +9 -10
- package/dist/ws-frame-limit.js.map +1 -1
- package/docs/custom-chrome.md +4 -2
- package/package.json +1 -1
- package/src/client.ts +37 -2
- package/src/document-checkpoints.ts +30 -0
- package/src/document-signals.ts +113 -1
- package/src/document-thumbnail-capture.ts +253 -9
- package/src/documents-namespace.ts +20 -10
- package/src/documents.ts +120 -13
- package/src/handles.ts +6 -5
- package/src/importer.ts +11 -56
- package/src/internal.ts +6 -0
- package/src/open-document.ts +100 -1
- package/src/record-paging.ts +13 -14
- package/src/serializer.ts +3 -3
- package/src/session-toolbar.ts +139 -10
- package/src/version-bar.ts +24 -5
- package/src/version.ts +1 -1
- package/src/when-saved.ts +66 -0
- package/src/ws-client.ts +70 -1
- package/src/ws-frame-limit.ts +9 -10
package/dist/importer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"importer.js","sourceRoot":"","sources":["../src/importer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"importer.js","sourceRoot":"","sources":["../src/importer.ts"],"names":[],"mappings":"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"}
|
package/dist/internal.d.ts
CHANGED
|
@@ -2,5 +2,6 @@ export { BrassClient } from './client.js';
|
|
|
2
2
|
export { BrassWsClient } from './ws-client.js';
|
|
3
3
|
export { buildSignInUrl, refreshTokens, type RefreshCredential, type RefreshOutcome, type RefreshResult, type TokenSet, } from './auth-flow.js';
|
|
4
4
|
export { decodeIdToken } from './jwt.js';
|
|
5
|
+
export { fetchWithRetry, RETRY_READ, type RetryOptions, type RetryPolicy, } from './fetch-retry.js';
|
|
5
6
|
export { BRASS_INIT_ARG_KEYS, type BrassInitArgKey } from './init-keys.js';
|
|
6
7
|
//# sourceMappingURL=internal.d.ts.map
|
package/dist/internal.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EACL,cAAc,EACd,aAAa,EACb,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,QAAQ,GACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EACL,cAAc,EACd,aAAa,EACb,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,QAAQ,GACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EACL,cAAc,EACd,UAAU,EACV,KAAK,YAAY,EACjB,KAAK,WAAW,GACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,mBAAmB,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC"}
|
package/dist/internal.js
CHANGED
|
@@ -13,5 +13,6 @@ export { BrassClient } from './client.js';
|
|
|
13
13
|
export { BrassWsClient } from './ws-client.js';
|
|
14
14
|
export { buildSignInUrl, refreshTokens, } from './auth-flow.js';
|
|
15
15
|
export { decodeIdToken } from './jwt.js';
|
|
16
|
+
export { fetchWithRetry, RETRY_READ, } from './fetch-retry.js';
|
|
16
17
|
export { BRASS_INIT_ARG_KEYS } from './init-keys.js';
|
|
17
18
|
//# sourceMappingURL=internal.js.map
|
package/dist/internal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internal.js","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,oCAAoC;AACpC,EAAE;AACF,wEAAwE;AACxE,oEAAoE;AACpE,sEAAsE;AACtE,uEAAuE;AACvE,sEAAsE;AACtE,qEAAqE;AACrE,uEAAuE;AACvE,sBAAsB;AAEtB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EACL,cAAc,EACd,aAAa,GAKd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAwB,MAAM,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"internal.js","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,oCAAoC;AACpC,EAAE;AACF,wEAAwE;AACxE,oEAAoE;AACpE,sEAAsE;AACtE,uEAAuE;AACvE,sEAAsE;AACtE,qEAAqE;AACrE,uEAAuE;AACvE,sBAAsB;AAEtB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EACL,cAAc,EACd,aAAa,GAKd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EACL,cAAc,EACd,UAAU,GAGX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,mBAAmB,EAAwB,MAAM,gBAAgB,CAAC"}
|
package/dist/open-document.d.ts
CHANGED
|
@@ -51,6 +51,20 @@ export interface DocumentSnapshotResponse {
|
|
|
51
51
|
can_edit?: boolean;
|
|
52
52
|
status?: DocumentWorkStatus;
|
|
53
53
|
drive?: DocumentDriveSummaryWire;
|
|
54
|
+
calling_app_exports?: boolean;
|
|
55
|
+
thumbnail?: {
|
|
56
|
+
version?: number;
|
|
57
|
+
} | null;
|
|
58
|
+
drive_publish_target?: DrivePublishTargetWire;
|
|
59
|
+
}
|
|
60
|
+
export interface DrivePublishTargetWire {
|
|
61
|
+
drive_type?: unknown;
|
|
62
|
+
drive_name?: unknown;
|
|
63
|
+
container_name?: unknown;
|
|
64
|
+
detail?: unknown;
|
|
65
|
+
source_unreadable?: unknown;
|
|
66
|
+
publishing?: unknown;
|
|
67
|
+
publish_failed?: unknown;
|
|
54
68
|
}
|
|
55
69
|
export interface DocumentDriveSummaryWire {
|
|
56
70
|
drive_type: string;
|
|
@@ -66,6 +80,7 @@ export interface DocumentDriveSummaryWire {
|
|
|
66
80
|
push_replaces_remote: boolean;
|
|
67
81
|
mirror_direction: DriveMirrorDirection;
|
|
68
82
|
publishing?: boolean;
|
|
83
|
+
source_unreadable?: string;
|
|
69
84
|
}
|
|
70
85
|
export interface DocumentAtVersionResponse {
|
|
71
86
|
effective_version: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-document.d.ts","sourceRoot":"","sources":["../src/open-document.ts"],"names":[],"mappings":"AAMA,OAAO,EAEL,QAAQ,EACR,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,kBAAkB,
|
|
1
|
+
{"version":3,"file":"open-document.d.ts","sourceRoot":"","sources":["../src/open-document.ts"],"names":[],"mappings":"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"}
|
package/dist/open-document.js
CHANGED
|
@@ -111,7 +111,9 @@ function toDriveStatus(wire) {
|
|
|
111
111
|
// update) must not be treated as unbroken and offered a push the server
|
|
112
112
|
// would reject. Require an explicit `false` to enable, and an explicit
|
|
113
113
|
// `true` to flag broken. Behaviour is unchanged for today's frames, which
|
|
114
|
-
// always carry the boolean.
|
|
114
|
+
// always carry the boolean. Whether the file is written server-side or
|
|
115
|
+
// from the app's own serializer is a REQUEST SHAPE the push path resolves
|
|
116
|
+
// for itself, so it says nothing about whether this document can publish.
|
|
115
117
|
canPush: wire.broken === false &&
|
|
116
118
|
mirrorDirection === 'two_way' &&
|
|
117
119
|
(state === 'ahead' || state === 'diverged'),
|
|
@@ -125,6 +127,29 @@ function toDriveStatus(wire) {
|
|
|
125
127
|
itemName: wire.item_name,
|
|
126
128
|
itemUrl: wire.item_url,
|
|
127
129
|
publishing: wire.publishing === true,
|
|
130
|
+
// Spread rather than assigned, because `exactOptionalPropertyTypes`
|
|
131
|
+
// separates an absent optional field from one holding `undefined`.
|
|
132
|
+
...(wire.source_unreadable !== undefined
|
|
133
|
+
? { sourceUnreadable: wire.source_unreadable }
|
|
134
|
+
: {}),
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
// Map the wire target to the public shape, dropping one that does not carry
|
|
138
|
+
// what a publish needs. A malformed target is skipped rather than failing
|
|
139
|
+
// the open: the document is readable whatever its publish offer says.
|
|
140
|
+
function toPublishTarget(wire) {
|
|
141
|
+
if (typeof wire !== 'object' || wire === null)
|
|
142
|
+
return null;
|
|
143
|
+
const driveName = wire.drive_name;
|
|
144
|
+
if (typeof driveName !== 'string' || driveName === '')
|
|
145
|
+
return null;
|
|
146
|
+
return {
|
|
147
|
+
driveName,
|
|
148
|
+
driveType: typeof wire.drive_type === 'string' ? wire.drive_type : '',
|
|
149
|
+
containerName: typeof wire.container_name === 'string' ? wire.container_name : '',
|
|
150
|
+
detail: typeof wire.detail === 'string' ? wire.detail : '',
|
|
151
|
+
publishing: wire.publishing === true,
|
|
152
|
+
publishFailed: wire.publish_failed === true,
|
|
128
153
|
};
|
|
129
154
|
}
|
|
130
155
|
function isDocOpFrame(frame) {
|
|
@@ -373,6 +398,15 @@ function isDocMetaFrame(frame) {
|
|
|
373
398
|
typeof f.topic === 'string' &&
|
|
374
399
|
typeof f.name === 'string');
|
|
375
400
|
}
|
|
401
|
+
function isDocDrivePublishFrame(frame) {
|
|
402
|
+
if (typeof frame !== 'object' || frame === null)
|
|
403
|
+
return false;
|
|
404
|
+
const f = frame;
|
|
405
|
+
if (f.type !== 'doc_drive_publish' || typeof f.topic !== 'string') {
|
|
406
|
+
return false;
|
|
407
|
+
}
|
|
408
|
+
return typeof f.publish === 'object' && f.publish !== null;
|
|
409
|
+
}
|
|
376
410
|
function isDocDriveStatusFrame(frame) {
|
|
377
411
|
if (typeof frame !== 'object' || frame === null)
|
|
378
412
|
return false;
|
|
@@ -1036,11 +1070,21 @@ export function createOpenDocument(opts) {
|
|
|
1036
1070
|
// status).
|
|
1037
1071
|
if (parsed.status !== undefined)
|
|
1038
1072
|
doc._emitStatus(parsed.status);
|
|
1073
|
+
// Whether this app is the one to serialize the document, which is what
|
|
1074
|
+
// decides whether a push carries bytes. Answered by the server for the
|
|
1075
|
+
// caller's own app and only on the join, since the fanout frame is one
|
|
1076
|
+
// payload for every subscriber and has no caller to answer for.
|
|
1077
|
+
doc._setExportRunsHere(parsed.calling_app_exports === true);
|
|
1039
1078
|
// Seed `doc.driveStatus` from the join before the first
|
|
1040
1079
|
// `doc_drive_status` frame.
|
|
1041
1080
|
if (parsed.drive !== undefined) {
|
|
1042
1081
|
doc._emitDriveStatus(toDriveStatus(parsed.drive));
|
|
1043
1082
|
}
|
|
1083
|
+
else {
|
|
1084
|
+
// Only for a document that mirrors nothing: a mirror publishes through
|
|
1085
|
+
// its link, and `_emitDriveStatus` clears any targets anyway.
|
|
1086
|
+
doc._setPublishTarget(toPublishTarget(parsed.drive_publish_target));
|
|
1087
|
+
}
|
|
1044
1088
|
// Highest seq seen; later `doc_op` / `op_ack` frames advance it. Kept in
|
|
1045
1089
|
// a closure, not on the Document: it is a transport concern, not CRDT
|
|
1046
1090
|
// state.
|
|
@@ -1430,6 +1474,7 @@ export function createOpenDocument(opts) {
|
|
|
1430
1474
|
await uploader(doc, image, width, height);
|
|
1431
1475
|
});
|
|
1432
1476
|
}
|
|
1477
|
+
doc._setThumbnailVersion(parsed.thumbnail?.version ?? null);
|
|
1433
1478
|
if (opts.checkpointCreator) {
|
|
1434
1479
|
const creator = opts.checkpointCreator;
|
|
1435
1480
|
doc.setCheckpointCreator(() => creator(doc));
|
|
@@ -3280,6 +3325,14 @@ function wireDocTransport(args) {
|
|
|
3280
3325
|
args.doc._emitDriveStatus(toDriveStatus(frame.drive));
|
|
3281
3326
|
return;
|
|
3282
3327
|
}
|
|
3328
|
+
if (isDocDrivePublishFrame(frame)) {
|
|
3329
|
+
args.doc._emitPublishState({
|
|
3330
|
+
publishing: frame.publish.publishing === true,
|
|
3331
|
+
failed: frame.publish.failed === true,
|
|
3332
|
+
detail: typeof frame.publish.detail === 'string' ? frame.publish.detail : null,
|
|
3333
|
+
});
|
|
3334
|
+
return;
|
|
3335
|
+
}
|
|
3283
3336
|
if (isDocOpsDroppedFrame(frame)) {
|
|
3284
3337
|
// Prompt durability re-check: the discard sealed a new snapshot, so
|
|
3285
3338
|
// re-fetch the moved frontier and run the handshake now instead of at
|