@mdbase-dev/sdk 0.1.0-beta.169 → 0.1.0-beta.173
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 +91 -3
- package/dist/app-host/account-key-host.d.ts +128 -0
- package/dist/app-host/account-key-host.js +449 -0
- package/dist/app-host/account-key-host.js.map +1 -0
- package/dist/app-host/app-environment.d.ts +3 -4
- package/dist/app-host/app-environment.js +6 -6
- package/dist/app-host/app-environment.js.map +1 -1
- package/dist/app-host/app-origin.d.ts +5 -2
- package/dist/app-host/app-origin.js +10 -6
- package/dist/app-host/app-origin.js.map +1 -1
- package/dist/app-host/cloud-copy-bootstrap.js +2 -2
- package/dist/app-host/cloud-copy-bootstrap.js.map +1 -1
- package/dist/app-host/cloud-copy-host.d.ts +69 -5
- package/dist/app-host/cloud-copy-host.js +289 -20
- package/dist/app-host/cloud-copy-host.js.map +1 -1
- package/dist/app-host/cloud-copy-persistence-idb.d.ts +0 -2
- package/dist/app-host/cloud-copy-persistence-idb.js +2 -2
- package/dist/app-host/cloud-copy-persistence-idb.js.map +1 -1
- package/dist/app-host/cp-authority.js +2 -2
- package/dist/app-host/cp-authority.js.map +1 -1
- package/dist/app-host/cp-people.js +2 -2
- package/dist/app-host/cp-people.js.map +1 -1
- package/dist/app-host/device-key-idb.d.ts +0 -2
- package/dist/app-host/device-key-idb.js +1 -1
- package/dist/app-host/device-key-idb.js.map +1 -1
- package/dist/app-host/device-key-provider.d.ts +0 -3
- package/dist/app-host/device-key-provider.js +1 -1
- package/dist/app-host/device-key-provider.js.map +1 -1
- package/dist/app-host/device-registration.js +2 -2
- package/dist/app-host/device-registration.js.map +1 -1
- package/dist/app-host/http-log.js +2 -2
- package/dist/app-host/http-log.js.map +1 -1
- package/dist/app-host/index.d.ts +4 -2
- package/dist/app-host/index.js +2 -1
- package/dist/app-host/index.js.map +1 -1
- package/dist/app-host/installation-sign-in.d.ts +16 -1
- package/dist/app-host/installation-sign-in.js +134 -27
- package/dist/app-host/installation-sign-in.js.map +1 -1
- package/dist/app-host/installation-store.d.ts +0 -2
- package/dist/app-host/installation-store.js +4 -4
- package/dist/app-host/installation-store.js.map +1 -1
- package/dist/app-host/log-push.js +2 -2
- package/dist/app-host/log-push.js.map +1 -1
- package/dist/app-host/noise-idb.d.ts +0 -3
- package/dist/app-host/noise-idb.js +1 -1
- package/dist/app-host/noise-idb.js.map +1 -1
- package/dist/app-host/private-bootstrap.js +2 -2
- package/dist/app-host/private-bootstrap.js.map +1 -1
- package/dist/app-host/private-persistence-idb.d.ts +0 -2
- package/dist/app-host/private-persistence-idb.js +1 -1
- package/dist/app-host/private-persistence-idb.js.map +1 -1
- package/dist/app-host/private-persistence.js +2 -2
- package/dist/app-host/private-persistence.js.map +1 -1
- package/dist/app-host/scoped-sign-in-session.d.ts +4 -0
- package/dist/app-host/scoped-sign-in-session.js +9 -1
- package/dist/app-host/scoped-sign-in-session.js.map +1 -1
- package/dist/app-host/unsynced-collection.js +8 -3
- package/dist/app-host/unsynced-collection.js.map +1 -1
- package/dist/app-host/wasm-runtime.d.ts +14 -0
- package/dist/app-host/wasm-runtime.js +45 -0
- package/dist/app-host/wasm-runtime.js.map +1 -1
- package/dist/app-host/web-collection.d.ts +4 -1
- package/dist/app-host/web-collection.js +214 -125
- package/dist/app-host/web-collection.js.map +1 -1
- package/dist/app-host/web-sign-in-problem.js +6 -1
- package/dist/app-host/web-sign-in-problem.js.map +1 -1
- package/dist/app-host/web-sign-in-session.d.ts +46 -4
- package/dist/app-host/web-sign-in-session.js +88 -15
- package/dist/app-host/web-sign-in-session.js.map +1 -1
- package/dist/application/asset-loader.d.ts +0 -1
- package/dist/application/asset-loader.js +2 -2
- package/dist/application/asset-loader.js.map +1 -1
- package/dist/application/asset-pins.json +4 -4
- package/dist/application/browser-selection.js +1 -1
- package/dist/application/browser-selection.js.map +1 -1
- package/dist/application/collection-selection.js +11 -6
- package/dist/application/collection-selection.js.map +1 -1
- package/dist/application/declaration.js +2 -2
- package/dist/application/declaration.js.map +1 -1
- package/dist/application/entry.d.ts +19 -0
- package/dist/application/entry.js +81 -38
- package/dist/application/entry.js.map +1 -1
- package/dist/application/front-door.d.ts +6 -1
- package/dist/application/front-door.js +5 -0
- package/dist/application/front-door.js.map +1 -1
- package/dist/application/local-build.d.ts +4 -2
- package/dist/application/local-build.js +4 -2
- package/dist/application/local-build.js.map +1 -1
- package/dist/application/manifest.d.ts +1 -0
- package/dist/application/manifest.js +8 -3
- package/dist/application/manifest.js.map +1 -1
- package/dist/application/native-assets.js +3 -4
- package/dist/application/native-assets.js.map +1 -1
- package/dist/application/packaged-assets.d.ts +1 -1
- package/dist/application/packaged-assets.js +6 -3
- package/dist/application/packaged-assets.js.map +1 -1
- package/dist/application/phase.d.ts +18 -1
- package/dist/application/phase.js +9 -1
- package/dist/application/phase.js.map +1 -1
- package/dist/application/portal-reservation.js +2 -2
- package/dist/application/portal-reservation.js.map +1 -1
- package/dist/application/registration.d.ts +3 -0
- package/dist/application/registration.js +7 -4
- package/dist/application/registration.js.map +1 -1
- package/dist/application/return-url.d.ts +1 -1
- package/dist/application/return-url.js +6 -7
- package/dist/application/return-url.js.map +1 -1
- package/dist/application/runtime.d.ts +7 -1
- package/dist/application/runtime.js +53 -4
- package/dist/application/runtime.js.map +1 -1
- package/dist/application/startup-timing.d.ts +20 -0
- package/dist/application/startup-timing.js +58 -0
- package/dist/application/startup-timing.js.map +1 -0
- package/dist/application/ui-connections.js +17 -4
- package/dist/application/ui-connections.js.map +1 -1
- package/dist/application/worker-client.d.ts +3 -0
- package/dist/application/worker-client.js +22 -2
- package/dist/application/worker-client.js.map +1 -1
- package/dist/application/worker-host.js +51 -3
- package/dist/application/worker-host.js.map +1 -1
- package/dist/application/worker-protocol.d.ts +7 -2
- package/dist/application/worker-protocol.js +10 -1
- package/dist/application/worker-protocol.js.map +1 -1
- package/dist/application/worker-session.d.ts +1 -1
- package/dist/application/worker-session.js +5 -1
- package/dist/application/worker-session.js.map +1 -1
- package/dist/application/worker.js +8394 -2001
- package/dist/application/worker.js.map +1 -1
- package/dist/browser/mdbase-sdk.js +8064 -3633
- package/dist/browser/mdbase-sdk.min.js +78 -78
- package/dist/describe-error.d.ts +2 -2
- package/dist/describe-error.js +9 -2
- package/dist/describe-error.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/local-build.d.ts +7 -4
- package/dist/local-build.js +7 -4
- package/dist/local-build.js.map +1 -1
- package/dist/native/provenance.json +5 -5
- package/dist/native/runtime.wasm +0 -0
- package/dist/private-account.js +13 -18
- package/dist/private-account.js.map +1 -1
- package/dist/testing/application.d.ts +3 -1
- package/dist/testing/application.js +8 -1
- package/dist/testing/application.js.map +1 -1
- package/dist/testing/test-app.d.ts +9 -0
- package/dist/testing/test-app.js +13 -0
- package/dist/testing/test-app.js.map +1 -1
- package/package.json +1 -1
|
@@ -43,7 +43,7 @@ export class ApplicationBrowserSelection {
|
|
|
43
43
|
throw new ApplicationSelectionError("application_selection_binding");
|
|
44
44
|
}
|
|
45
45
|
const parameter = options.parameter ?? "collection";
|
|
46
|
-
if (!isAppOrigin(origin
|
|
46
|
+
if (!isAppOrigin(origin) || urlOrigin(base) !== origin || urlOrigin(fallback) !== origin || fallback.username || fallback.password || fallback.search || fallback.hash ||
|
|
47
47
|
typeof parameter !== "string" || !/^[a-z][a-zA-Z0-9_.-]{0,63}$/.test(parameter) || ["code", "state", "error", "error_description"].includes(parameter))
|
|
48
48
|
throw new ApplicationSelectionError("application_selection_binding");
|
|
49
49
|
this.origin = origin;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser-selection.js","sourceRoot":"","sources":["../../src/application/browser-selection.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"browser-selection.js","sourceRoot":"","sources":["../../src/application/browser-selection.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { ApplicationSelectionError, applicationStartTarget } from "./browser-selection.js";
|
|
2
2
|
const validId = (id) => typeof id === "string" && /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/.test(id) && id !== "00000000-0000-0000-0000-000000000000";
|
|
3
3
|
const isOpen = (s) => s.status === "ready" || s.status === "setup_required";
|
|
4
|
+
/** A Private collection the session holds enrolled but without its key: held
|
|
5
|
+
* (not opening, not usable) until the person unlocks it or leaves it. */
|
|
6
|
+
const isLocked = (s) => s.status === "needs_unlock";
|
|
4
7
|
/** Approved list is current and no session operation is opening/authorizing. */
|
|
5
|
-
const settled = (s) => s.signIn?.state === "paired" && (s.status === "unselected" || s.status === "blocked" || isOpen(s));
|
|
8
|
+
const settled = (s) => s.signIn?.state === "paired" && (s.status === "unselected" || s.status === "blocked" || isOpen(s) || isLocked(s));
|
|
6
9
|
const inFlight = (s) => s.status === "not_started" || s.status === "starting" || s.status === "signed_out" || s.status === "authorizing";
|
|
7
10
|
const approved = (s, id) => id === null ? null : s.collections.find(c => c.collectionId === id) ?? null;
|
|
8
11
|
/** SDK-owned collection selection: the URL is the request, the session decides
|
|
@@ -74,7 +77,7 @@ export class ApplicationCollectionSelection {
|
|
|
74
77
|
const s = this.session.getSnapshot();
|
|
75
78
|
if (this.requested().requestedCollectionId !== collectionId)
|
|
76
79
|
return; // superseded by newer intent
|
|
77
|
-
if (collectionId === null ? s.selectedCollectionId === null && s.status !== "opening" : (s.selectedCollectionId === collectionId && isOpen(s)) || !approved(s, collectionId))
|
|
80
|
+
if (collectionId === null ? s.selectedCollectionId === null && s.status !== "opening" : (s.selectedCollectionId === collectionId && (isOpen(s) || isLocked(s))) || !approved(s, collectionId))
|
|
78
81
|
return;
|
|
79
82
|
await this.run(collectionId, options, true);
|
|
80
83
|
}).then(() => this.value);
|
|
@@ -221,7 +224,9 @@ export class ApplicationCollectionSelection {
|
|
|
221
224
|
state = "none";
|
|
222
225
|
else if (usable?.collectionId === id)
|
|
223
226
|
state = "usable";
|
|
224
|
-
|
|
227
|
+
// A locked collection is held but not usable: `opening` here, and the
|
|
228
|
+
// phase (`needs_unlock`) says what it is waiting for.
|
|
229
|
+
else if (s.selectedCollectionId === id && (s.status === "blocked" || s.status === "opening" || isLocked(s)))
|
|
225
230
|
state = s.status === "blocked" ? "blocked" : "opening";
|
|
226
231
|
else if (!settled(s))
|
|
227
232
|
state = "pending";
|
|
@@ -303,11 +308,11 @@ export class ApplicationCollectionSelection {
|
|
|
303
308
|
if (r.problem)
|
|
304
309
|
return;
|
|
305
310
|
if (id === null) {
|
|
306
|
-
if (this.attempted !== null && s.selectedCollectionId !== null && isOpen(s))
|
|
311
|
+
if (this.attempted !== null && s.selectedCollectionId !== null && (isOpen(s) || isLocked(s)))
|
|
307
312
|
void this.run(null);
|
|
308
313
|
return;
|
|
309
314
|
}
|
|
310
|
-
if (s.selectedCollectionId === id && (isOpen(s) || s.status === "opening")) {
|
|
315
|
+
if (s.selectedCollectionId === id && (isOpen(s) || isLocked(s) || s.status === "opening")) {
|
|
311
316
|
this.attempted = id;
|
|
312
317
|
return;
|
|
313
318
|
}
|
|
@@ -332,7 +337,7 @@ export class ApplicationCollectionSelection {
|
|
|
332
337
|
}
|
|
333
338
|
this.lastApproval = Object.freeze({ kind: a.kind, outcome: outcome(picked), collectionId: picked });
|
|
334
339
|
this.refresh();
|
|
335
|
-
if (s.selectedCollectionId === picked && (isOpen(s) || s.status === "opening"))
|
|
340
|
+
if (s.selectedCollectionId === picked && (isOpen(s) || isLocked(s) || s.status === "opening"))
|
|
336
341
|
this.attempted = picked;
|
|
337
342
|
else
|
|
338
343
|
void this.run(picked);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collection-selection.js","sourceRoot":"","sources":["../../src/application/collection-selection.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"collection-selection.js","sourceRoot":"","sources":["../../src/application/collection-selection.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { storageNamespaceDigest } from "./storage-scope.js";
|
|
2
2
|
import { appOriginPlatform } from "../app-host/app-origin.js";
|
|
3
3
|
import { mdbaseError } from "../errors.js";
|
|
4
|
-
import { applicationEnvironmentAllowed,
|
|
4
|
+
import { applicationEnvironmentAllowed, localApplicationEnvironment, localApplicationOrigin } from "./local-build.js";
|
|
5
5
|
const storageOverrides = new WeakMap();
|
|
6
6
|
/** SDK-only registration rebinding. Fresh defaults derive from registered ID;
|
|
7
7
|
* supplied compatibility DATA stays exact, including supplied default-like values.
|
|
@@ -77,7 +77,7 @@ export function applicationDeclaration(input) {
|
|
|
77
77
|
fail();
|
|
78
78
|
if (localApplicationEnvironment(environment) && !localApplicationOrigin(origin))
|
|
79
79
|
fail();
|
|
80
|
-
const platform = appOriginPlatform(origin,
|
|
80
|
+
const platform = appOriginPlatform(origin, manifest.platform === "native" ? "native" : undefined);
|
|
81
81
|
const kind = data.installationKind ?? (platform === "mobile" ? "mobile" : "app-runtime");
|
|
82
82
|
if (platform === null || (kind !== "app-runtime" && kind !== "mobile") || (platform === "mobile" && kind !== "mobile") || ((platform === "extension" || platform === "native") && kind !== "app-runtime"))
|
|
83
83
|
fail();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"declaration.js","sourceRoot":"","sources":["../../src/application/declaration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,sBAAsB,EAAC,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAC,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAC,WAAW,EAAC,MAAM,cAAc,CAAC;AACzC,OAAO,EAAC,6BAA6B,EAAE,
|
|
1
|
+
{"version":3,"file":"declaration.js","sourceRoot":"","sources":["../../src/application/declaration.ts"],"names":[],"mappings":"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"}
|
|
@@ -94,6 +94,14 @@ export interface MdbaseTransferOptions extends MdbaseApplicationRequestOptions {
|
|
|
94
94
|
export interface MdbaseCollectionDeleteOptions extends MdbaseApplicationRequestOptions {
|
|
95
95
|
readonly confirmName: string;
|
|
96
96
|
}
|
|
97
|
+
/** What the person typed to unlock a Private collection: the account's
|
|
98
|
+
* encryption password, or its recovery key. Pass it straight from the input
|
|
99
|
+
* and keep no copy: the SDK never stores, logs or publishes it. */
|
|
100
|
+
export type MdbaseUnlockSecret = Readonly<{
|
|
101
|
+
password: string;
|
|
102
|
+
}> | Readonly<{
|
|
103
|
+
recoveryKey: string;
|
|
104
|
+
}>;
|
|
97
105
|
export interface MdbaseSignOutOptions extends MdbaseApplicationRequestOptions {
|
|
98
106
|
/** Sign out even though changes on this device have not reached mdbase yet;
|
|
99
107
|
* they are lost. Without it, signOut rejects with `sign_out_pending_writes`. */
|
|
@@ -191,6 +199,14 @@ export interface MdbaseApplication {
|
|
|
191
199
|
* with a `collection_delete_*` code for `describeError` and changes nothing
|
|
192
200
|
* locally. On success the collection leaves `collections`. */
|
|
193
201
|
deleteCollection(collectionId: string, options: MdbaseCollectionDeleteOptions): Promise<MdbaseApplicationSnapshot>;
|
|
202
|
+
/** Unlock the open Private collection (`phase.kind === "needs_unlock"`,
|
|
203
|
+
* `mode: "password"`) with the account's encryption password or recovery
|
|
204
|
+
* key. Resolves when the attempt settled: opened (`ready` or `needs_setup`),
|
|
205
|
+
* or still `needs_unlock` with `phase.problem` set (wrong password, service
|
|
206
|
+
* unreachable). Rejects with `invalid_request` when that collection is not
|
|
207
|
+
* waiting to be unlocked in this tab. No reload is needed either way.
|
|
208
|
+
* Optional for other implementations of this interface. */
|
|
209
|
+
unlock?(collectionId: string, secret: MdbaseUnlockSecret, options?: MdbaseApplicationRequestOptions): Promise<MdbaseApplicationSnapshot>;
|
|
194
210
|
setForeground(active: boolean): void;
|
|
195
211
|
close(): Promise<void>;
|
|
196
212
|
/** Sign out of mdbase on this device: ends the server session and removes
|
|
@@ -283,6 +299,9 @@ export declare class MdbaseConnect implements MdbaseApplicationEntry {
|
|
|
283
299
|
/** Open the unsynced collection when started signed out; tried once per start. */
|
|
284
300
|
private readonly unsyncedFirst;
|
|
285
301
|
private unsyncedTried;
|
|
302
|
+
/** Starts that may still open work before connecting (see `start`). */
|
|
303
|
+
private unsyncedOpening;
|
|
304
|
+
private readonly timing;
|
|
286
305
|
private readonly overlaid;
|
|
287
306
|
constructor(declaration: MdbaseApplicationDeclaration, options?: MdbaseConnectOptions);
|
|
288
307
|
/** SDK-10: the session's snapshot with this tab's Private collections listed
|
|
@@ -4,9 +4,11 @@ import { currentAppOrigin, isAppOrigin, urlOrigin } from "../app-host/app-origin
|
|
|
4
4
|
import { compileApplicationManifest } from "./manifest.js";
|
|
5
5
|
import { declaredReturnUrl } from "./return-url.js";
|
|
6
6
|
import { resolveApplicationRegistration } from "./registration.js";
|
|
7
|
+
import { applicationAssetLoader } from "./asset-loader.js";
|
|
7
8
|
import { packagedApplicationAssets } from "./packaged-assets.js";
|
|
9
|
+
import { ApplicationStartupTiming } from "./startup-timing.js";
|
|
8
10
|
import { appReleaseTrust } from "./packaged-trust.js";
|
|
9
|
-
import {
|
|
11
|
+
import { serviceLoopbackAllowed } from "./local-build.js";
|
|
10
12
|
import { selectAppEnvironment } from "../app-host/app-environment.js";
|
|
11
13
|
import { ApplicationBrowserSelection, ApplicationSelectionError, browserApplicationSelectionPort } from "./browser-selection.js";
|
|
12
14
|
import { ApplicationCollectionSelection } from "./collection-selection.js";
|
|
@@ -77,9 +79,9 @@ function unavailableApplication() {
|
|
|
77
79
|
const snapshot = Object.freeze({ ...base, phase: applicationPhase(base), sync: null, writes: null, links: null });
|
|
78
80
|
const refuse = () => Promise.reject(unavailable());
|
|
79
81
|
return Object.freeze({ getSnapshot: () => snapshot, subscribe: () => () => { }, start: refuse, authorize: refuse, select: refuse, approve: refuse, reauthorize: refuse, refreshCollectionList: refuse, requestAccess: refuse, chooseAnother: refuse,
|
|
80
|
-
assess: refuse, configure: refuse, setup: Object.freeze({ plan: refuse, apply: refuse }), clearSelection: refuse, forget: refuse, deleteCollection: refuse, setForeground() { throw unavailable(); }, close: refuse, signOut: refuse });
|
|
82
|
+
assess: refuse, configure: refuse, setup: Object.freeze({ plan: refuse, apply: refuse }), clearSelection: refuse, forget: refuse, deleteCollection: refuse, unlock: refuse, setForeground() { throw unavailable(); }, close: refuse, signOut: refuse });
|
|
81
83
|
}
|
|
82
|
-
const browserHost = (origin) => typeof Worker === "function" && typeof MessageChannel === "function" && currentAppOrigin() !== null && isAppOrigin(origin
|
|
84
|
+
const browserHost = (origin) => typeof Worker === "function" && typeof MessageChannel === "function" && currentAppOrigin() !== null && isAppOrigin(origin);
|
|
83
85
|
function signInOpener(value, declaration) {
|
|
84
86
|
if (value === undefined)
|
|
85
87
|
return null;
|
|
@@ -88,7 +90,7 @@ function signInOpener(value, declaration) {
|
|
|
88
90
|
return fail();
|
|
89
91
|
const returnUrl = value.returnUrl;
|
|
90
92
|
if (returnUrl !== undefined) {
|
|
91
|
-
if (!declaredReturnUrl(returnUrl, declaration.manifest
|
|
93
|
+
if (!declaredReturnUrl(returnUrl, declaration.manifest))
|
|
92
94
|
fail();
|
|
93
95
|
}
|
|
94
96
|
const open = value.open.bind(value), close = value.close?.bind(value);
|
|
@@ -185,6 +187,9 @@ export class MdbaseConnect {
|
|
|
185
187
|
/** Open the unsynced collection when started signed out; tried once per start. */
|
|
186
188
|
unsyncedFirst;
|
|
187
189
|
unsyncedTried = false;
|
|
190
|
+
/** Starts that may still open work before connecting (see `start`). */
|
|
191
|
+
unsyncedOpening = 0;
|
|
192
|
+
timing = new ApplicationStartupTiming();
|
|
188
193
|
overlaid = new WeakMap();
|
|
189
194
|
constructor(declaration, options = {}) {
|
|
190
195
|
this.declaration = applicationDeclaration(declaration);
|
|
@@ -220,30 +225,45 @@ export class MdbaseConnect {
|
|
|
220
225
|
this.selection.subscribe(() => { this.unforgetApproved(); this.notify(false); });
|
|
221
226
|
const view = () => this.getSnapshot();
|
|
222
227
|
this.app = Object.freeze({ getSnapshot: view, subscribe: (listener) => { this.listeners.add(listener); return () => { this.listeners.delete(listener); }; },
|
|
223
|
-
start: (options) => this.track(() =>
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
// Work before connecting: signed out, nothing requested. Signing out
|
|
233
|
-
// never moves the person into browser-only work by itself.
|
|
234
|
-
const after = runtime.getNativeSnapshot();
|
|
235
|
-
if (this.unsyncedFirst && !this.unsyncedTried && after.status === "signed_out" && !after.unsynced && !after.signOutResult && selection.getSnapshot().requested.collectionId === null) {
|
|
236
|
-
this.unsyncedTried = true;
|
|
237
|
-
await runtime.queue(() => runtime.openUnsynced(options));
|
|
228
|
+
start: (options) => this.track(() => {
|
|
229
|
+
// Until this start settles, signed out is a step towards work before
|
|
230
|
+
// connecting, so the sign-in screen is not shown and then replaced.
|
|
231
|
+
// A start without a runtime installs one, which tries the unsynced open again.
|
|
232
|
+
const opens = this.unsyncedFirst && (!this.unsyncedTried || this.runtime === null);
|
|
233
|
+
if (opens) {
|
|
234
|
+
this.unsyncedOpening++;
|
|
235
|
+
this.revision++;
|
|
236
|
+
this.notify(false);
|
|
238
237
|
}
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
238
|
+
return this.call(async (runtime) => {
|
|
239
|
+
const native = runtime.getNativeSnapshot();
|
|
240
|
+
if (native.status === "blocked" && native.signIn && native.selectedCollectionId === null)
|
|
241
|
+
await runtime.queue(() => runtime.start(options));
|
|
242
|
+
else
|
|
243
|
+
await this.timing.time("session", () => this.started(runtime, options));
|
|
244
|
+
const selection = this.choose(), snapshot = selection.getSnapshot();
|
|
245
|
+
if (snapshot.state === "blocked" && snapshot.requested.approved && snapshot.requested.collectionId !== null)
|
|
246
|
+
await selection.select(snapshot.requested.collectionId, options);
|
|
247
|
+
// Work before connecting: signed out, nothing requested. Signing out
|
|
248
|
+
// never moves the person into browser-only work by itself.
|
|
249
|
+
const after = runtime.getNativeSnapshot();
|
|
250
|
+
if (this.unsyncedFirst && !this.unsyncedTried && after.status === "signed_out" && !after.unsynced && !after.signOutResult && selection.getSnapshot().requested.collectionId === null) {
|
|
251
|
+
this.unsyncedTried = true;
|
|
252
|
+
await this.timing.time("unsynced", () => runtime.queue(() => runtime.openUnsynced(options)));
|
|
253
|
+
}
|
|
254
|
+
}).catch(error => {
|
|
255
|
+
// Open in another tab is a wait, not a failure: the snapshot says so and
|
|
256
|
+
// this tab takes over by itself when the other one lets go.
|
|
257
|
+
const native = this.runtime?.getNativeSnapshot();
|
|
258
|
+
if (error?.code === "open_in_another_tab" && native?.status === "blocked" && native.problem === "open_in_another_tab")
|
|
259
|
+
return;
|
|
260
|
+
throw error;
|
|
261
|
+
}).finally(() => { if (opens) {
|
|
262
|
+
this.unsyncedOpening--;
|
|
263
|
+
this.revision++;
|
|
264
|
+
this.notify(false);
|
|
265
|
+
} });
|
|
266
|
+
}),
|
|
247
267
|
authorize: (options) => this.track(() => this.approve(undefined, options)),
|
|
248
268
|
approve: (id, options) => this.track(() => this.approve(id, options)),
|
|
249
269
|
reauthorize: (options) => this.track(() => {
|
|
@@ -288,6 +308,9 @@ export class MdbaseConnect {
|
|
|
288
308
|
if (selection.getSnapshot().requested.collectionId === id)
|
|
289
309
|
await selection.select(null, request);
|
|
290
310
|
}),
|
|
311
|
+
// A Private collection listed by the session (this device's own copy).
|
|
312
|
+
// One served by another computer is never locked here and is refused.
|
|
313
|
+
unlock: (id, secret, options) => this.track(() => this.call(runtime => runtime.queue(() => runtime.unlock(id, secret, options)))),
|
|
291
314
|
assess: (options) => this.privates?.isOpen() ? this.privates.assess() : this.call(runtime => runtime.queue(() => runtime.assess(options))),
|
|
292
315
|
configure: (options) => this.track(() => this.privates?.isOpen() ? this.privates.configure(options) : this.call(runtime => runtime.queue(() => runtime.configure(options)))),
|
|
293
316
|
setup: Object.freeze({
|
|
@@ -348,8 +371,10 @@ export class MdbaseConnect {
|
|
|
348
371
|
const base = hidden?.size && shown.collections.some(c => hidden.has(c.collectionId) && c.collectionId !== shown.selectedCollectionId)
|
|
349
372
|
? Object.freeze({ ...shown, collections: Object.freeze(shown.collections.filter(c => !hidden.has(c.collectionId) || c.collectionId === shown.selectedCollectionId)) }) : shown;
|
|
350
373
|
const id = base.selectedCollectionId, connection = id && !this.closed ? this.privates?.connection(id) ?? this.runtime?.connection(id) ?? null : null;
|
|
351
|
-
|
|
374
|
+
const openingUnsynced = this.unsyncedOpening > 0 && !base.unsynced && !base.signOutResult && selection.requested.collectionId === null;
|
|
375
|
+
let phase = applicationPhase({ ...base, selection }, { connection, previous: last?.value.phase ?? null, openingUnsynced, ...(this.cpOrigin ? { cpOrigin: this.cpOrigin } : {}) });
|
|
352
376
|
phase = this.trackOpening(phase);
|
|
377
|
+
this.timing.observe(phase);
|
|
353
378
|
const sync = this.trackSync(phase, base.problem, base.transport ?? null, base.live ?? null);
|
|
354
379
|
const writes = this.syncing?.writes() ?? null;
|
|
355
380
|
const saveWarning = this.trackSaveWarning();
|
|
@@ -570,7 +595,7 @@ export class MdbaseConnect {
|
|
|
570
595
|
}
|
|
571
596
|
check() { if (this.closed || this.hidden || this.lifetime.signal.aborted)
|
|
572
597
|
throw mdbaseError("cancelled", "Application entry fenced", "application_entry_fenced"); }
|
|
573
|
-
environment() { return selectAppEnvironment({ environment: this.declaration.environment, appOrigin: this.declaration.origin,
|
|
598
|
+
environment() { return selectAppEnvironment({ environment: this.declaration.environment, appOrigin: this.declaration.origin, release: appReleaseTrust() }); }
|
|
574
599
|
initialize() {
|
|
575
600
|
if (this.initialization)
|
|
576
601
|
return this.initialization;
|
|
@@ -584,19 +609,37 @@ export class MdbaseConnect {
|
|
|
584
609
|
const moduleUrl = new URL(import.meta.url);
|
|
585
610
|
if (urlOrigin(moduleUrl) !== this.declaration.origin || currentAppOrigin() !== this.declaration.origin)
|
|
586
611
|
throw mdbaseError("unavailable", "Application module binding unavailable", "application_worker_module_binding");
|
|
587
|
-
const environment = this.environment();
|
|
588
|
-
packagedApplicationAssets(this.declaration.environment, this.declaration.origin, this.declaration.manifest.platform === "native" ? "native" : undefined);
|
|
612
|
+
const environment = this.environment(), packaged = packagedApplicationAssets(this.declaration.environment, this.declaration.origin);
|
|
589
613
|
// A browser below the SDK's feature floor fails here, once, with a typed
|
|
590
614
|
// problem — before any registration, Worker, key or storage allocation.
|
|
591
|
-
const capabilities = await probeBrowserCapabilities();
|
|
615
|
+
const capabilities = await this.timing.time("capabilities", () => probeBrowserCapabilities());
|
|
592
616
|
this.check();
|
|
593
617
|
if (!capabilities.ok)
|
|
594
618
|
throw mdbaseError("unavailable", "This browser can't run mdbase", { reason: capabilities.problem, details: new Map([["missing", capabilities.missing.join(",")]]) });
|
|
595
619
|
// Registration resolves BEFORE any Worker, key, profile or DB allocation.
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
//
|
|
599
|
-
const
|
|
620
|
+
// A first visit registers over the network. Work before connecting opens
|
|
621
|
+
// right after, so the Worker's verified public assets are fetched during
|
|
622
|
+
// that wait: same loader, pins and cache as the Worker's own read.
|
|
623
|
+
const warm = () => {
|
|
624
|
+
if (!this.unsyncedFirst)
|
|
625
|
+
return;
|
|
626
|
+
const host = { origin: this.declaration.origin, environment: this.declaration.environment };
|
|
627
|
+
// A failure here is the Worker's to report, from its own read.
|
|
628
|
+
for (const asset of [packaged.runtime, packaged.sqlite])
|
|
629
|
+
try {
|
|
630
|
+
void applicationAssetLoader(asset, host)({ signal: this.lifetime.signal }).catch(() => { });
|
|
631
|
+
}
|
|
632
|
+
catch { /* as above */ }
|
|
633
|
+
};
|
|
634
|
+
// UI runtime/collection setup is only needed when activating a session;
|
|
635
|
+
// its module loads beside registration. A refused registration is still
|
|
636
|
+
// the error reported: the module's own failure only shows after it.
|
|
637
|
+
const loading = import("./runtime.js");
|
|
638
|
+
loading.catch(() => { });
|
|
639
|
+
const { registered, ApplicationRuntime } = await this.timing.time("registration", async () => {
|
|
640
|
+
const registered = await resolveApplicationRegistration({ declaration: this.declaration, signal: this.lifetime.signal, isCurrent: () => !this.closed, onRequest: warm });
|
|
641
|
+
return { registered, ApplicationRuntime: (await loading).ApplicationRuntime };
|
|
642
|
+
});
|
|
600
643
|
this.check();
|
|
601
644
|
// A pagehide during registration or loading superseded this start: no Worker for it.
|
|
602
645
|
if (incarnation !== this.incarnation)
|
|
@@ -619,7 +662,7 @@ export class MdbaseConnect {
|
|
|
619
662
|
const tabs = this.tabsFor(signInScope), election = new AbortController();
|
|
620
663
|
this.election?.abort();
|
|
621
664
|
this.election = election;
|
|
622
|
-
const role = tabs ? await tabs.elect(AbortSignal.any([this.lifetime.signal, election.signal])) : { kind: "leader" };
|
|
665
|
+
const role = tabs ? await this.timing.time("election", () => tabs.elect(AbortSignal.any([this.lifetime.signal, election.signal]))) : { kind: "leader" };
|
|
623
666
|
if (this.closed || this.hidden || incarnation !== this.incarnation || election.signal.aborted) {
|
|
624
667
|
if (role.kind === "follower")
|
|
625
668
|
role.leave();
|
|
@@ -695,7 +738,7 @@ export class MdbaseConnect {
|
|
|
695
738
|
reservePortal(options) {
|
|
696
739
|
this.check();
|
|
697
740
|
const environment = this.environment(), signal = options.signal ? AbortSignal.any([this.lifetime.signal, options.signal]) : this.lifetime.signal;
|
|
698
|
-
const lab =
|
|
741
|
+
const lab = serviceLoopbackAllowed(this.declaration.environment), current = () => !this.closed;
|
|
699
742
|
const host = this.signIn ? openerApplicationPortalHost(environment.cpOrigin, signal, current, this.signIn, lab) : browserApplicationPortalHost(environment.cpOrigin, signal, current, lab);
|
|
700
743
|
return { portal: reserveApplicationPortal(host), signal };
|
|
701
744
|
}
|