@dxos/client-services 0.3.11-main.bd26370 → 0.3.11-main.c244d7e

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 (42) hide show
  1. package/dist/lib/browser/{chunk-X5Z3WL7N.mjs → chunk-XLOJ4YJA.mjs} +49 -28
  2. package/dist/lib/browser/chunk-XLOJ4YJA.mjs.map +7 -0
  3. package/dist/lib/browser/index.mjs +42 -33
  4. package/dist/lib/browser/index.mjs.map +4 -4
  5. package/dist/lib/browser/meta.json +1 -1
  6. package/dist/lib/browser/packlets/testing/index.mjs +1 -1
  7. package/dist/lib/browser/packlets/testing/index.mjs.map +1 -1
  8. package/dist/lib/node/{chunk-OLCLRX7U.cjs → chunk-ABS6362A.cjs} +49 -28
  9. package/dist/lib/node/chunk-ABS6362A.cjs.map +7 -0
  10. package/dist/lib/node/index.cjs +77 -68
  11. package/dist/lib/node/index.cjs.map +4 -4
  12. package/dist/lib/node/meta.json +1 -1
  13. package/dist/lib/node/packlets/testing/index.cjs +8 -8
  14. package/dist/lib/node/packlets/testing/index.cjs.map +1 -1
  15. package/dist/types/src/packlets/identity/identity-service.d.ts +3 -3
  16. package/dist/types/src/packlets/identity/identity-service.d.ts.map +1 -1
  17. package/dist/types/src/packlets/services/service-host.d.ts.map +1 -1
  18. package/dist/types/src/packlets/vault/iframe-host-runtime.d.ts +2 -0
  19. package/dist/types/src/packlets/vault/iframe-host-runtime.d.ts.map +1 -1
  20. package/dist/types/src/packlets/vault/index.d.ts +1 -1
  21. package/dist/types/src/packlets/vault/index.d.ts.map +1 -1
  22. package/dist/types/src/packlets/vault/{iframe-proxy-runtime.d.ts → shared-worker-connection.d.ts} +12 -5
  23. package/dist/types/src/packlets/vault/shared-worker-connection.d.ts.map +1 -0
  24. package/dist/types/src/packlets/vault/worker-runtime.d.ts +10 -3
  25. package/dist/types/src/packlets/vault/worker-runtime.d.ts.map +1 -1
  26. package/dist/types/src/packlets/vault/worker-session.d.ts +2 -2
  27. package/dist/types/src/packlets/vault/worker-session.d.ts.map +1 -1
  28. package/dist/types/src/version.d.ts +1 -1
  29. package/package.json +35 -35
  30. package/src/packlets/identity/identity-service.test.ts +1 -1
  31. package/src/packlets/identity/identity-service.ts +6 -3
  32. package/src/packlets/invitations/invitations-handler.ts +1 -1
  33. package/src/packlets/services/service-host.ts +27 -12
  34. package/src/packlets/vault/iframe-host-runtime.ts +2 -0
  35. package/src/packlets/vault/index.ts +1 -1
  36. package/src/packlets/vault/{iframe-proxy-runtime.ts → shared-worker-connection.ts} +18 -6
  37. package/src/packlets/vault/worker-runtime.ts +27 -9
  38. package/src/packlets/vault/worker-session.ts +11 -8
  39. package/src/version.ts +1 -1
  40. package/dist/lib/browser/chunk-X5Z3WL7N.mjs.map +0 -7
  41. package/dist/lib/node/chunk-OLCLRX7U.cjs.map +0 -7
  42. package/dist/types/src/packlets/vault/iframe-proxy-runtime.d.ts.map +0 -1
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/packlets/testing/credential-utils.ts", "../../../../../src/packlets/testing/invitation-utils.ts", "../../../../../src/packlets/testing/test-builder.ts"],
4
4
  "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { createCredential } from '@dxos/credentials';\nimport { type Signer } from '@dxos/crypto';\nimport { PublicKey } from '@dxos/keys';\nimport { type Credential } from '@dxos/protocols/proto/dxos/halo/credentials';\n\nexport const createMockCredential = async ({\n signer,\n issuer,\n}: {\n signer: Signer;\n issuer: PublicKey;\n}): Promise<Credential> =>\n createCredential({\n signer,\n issuer,\n subject: new PublicKey(Buffer.from('test')),\n assertion: {\n '@type': 'example.testing.rpc.MessageWithAny',\n payload: {\n '@type': 'google.protobuf.Any',\n value: Buffer.from('test'),\n },\n },\n });\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { Trigger } from '@dxos/async';\nimport { type AuthenticatingInvitation, type CancellableInvitation } from '@dxos/client-protocol';\nimport { invariant } from '@dxos/invariant';\nimport { Invitation } from '@dxos/protocols/proto/dxos/client/services';\n\nimport { ServiceContext } from '../services';\n\n/**\n * Strip secrets from invitation before giving it to the peer.\n */\nexport const sanitizeInvitation = (invitation: Invitation): Invitation => {\n return {\n invitationId: invitation.invitationId,\n type: invitation.type,\n kind: invitation.kind,\n authMethod: invitation.authMethod,\n swarmKey: invitation.swarmKey,\n state: invitation.state,\n timeout: invitation.timeout,\n };\n};\n\nexport type InvitationHost = {\n share(options?: Partial<Invitation>): CancellableInvitation;\n};\n\nexport type InvitationGuest = {\n join(invitation: Invitation | string): AuthenticatingInvitation;\n};\n\nexport type PerformInvitationCallbacks<T> = {\n onConnecting?: (value: T) => boolean | void;\n onConnected?: (value: T) => boolean | void;\n onReady?: (value: T) => boolean | void;\n onAuthenticating?: (value: T) => boolean | void;\n onSuccess?: (value: T) => boolean | void;\n onCancelled?: (value: T) => boolean | void;\n onTimeout?: (value: T) => boolean | void;\n onError?: (value: T) => boolean | void;\n};\n\nexport type PerformInvitationParams = {\n host: ServiceContext | InvitationHost;\n guest: ServiceContext | InvitationGuest;\n options?: Partial<Invitation>;\n hooks?: {\n host?: PerformInvitationCallbacks<CancellableInvitation>;\n guest?: PerformInvitationCallbacks<AuthenticatingInvitation>;\n };\n};\n\nexport type Result = { invitation?: Invitation; error?: Error };\n\nexport const performInvitation = ({\n host,\n guest,\n options,\n hooks,\n}: PerformInvitationParams): [Promise<Result>, Promise<Result>] => {\n const hostComplete = new Trigger<Result>();\n const guestComplete = new Trigger<Result>();\n const authCode = new Trigger<string>();\n\n const hostObservable = createInvitation(host, options);\n hostObservable.subscribe(\n async (hostInvitation: Invitation) => {\n switch (hostInvitation.state) {\n case Invitation.State.CONNECTING: {\n if (hooks?.host?.onConnecting?.(hostObservable)) {\n break;\n }\n const guestObservable = acceptInvitation(guest, hostInvitation);\n guestObservable.subscribe(\n async (guestInvitation: Invitation) => {\n switch (guestInvitation.state) {\n case Invitation.State.CONNECTING: {\n if (hooks?.guest?.onConnecting?.(guestObservable)) {\n break;\n }\n invariant(hostInvitation.swarmKey!.equals(guestInvitation.swarmKey!));\n break;\n }\n\n case Invitation.State.CONNECTED: {\n hooks?.guest?.onConnected?.(guestObservable);\n break;\n }\n\n case Invitation.State.READY_FOR_AUTHENTICATION: {\n if (hooks?.guest?.onReady?.(guestObservable)) {\n break;\n }\n await guestObservable.authenticate(await authCode.wait());\n break;\n }\n\n case Invitation.State.AUTHENTICATING: {\n hooks?.guest?.onAuthenticating?.(guestObservable);\n break;\n }\n\n case Invitation.State.SUCCESS: {\n if (hooks?.guest?.onSuccess?.(guestObservable)) {\n break;\n }\n guestComplete.wake({ invitation: guestInvitation });\n break;\n }\n\n case Invitation.State.CANCELLED: {\n if (hooks?.guest?.onCancelled?.(guestObservable)) {\n break;\n }\n guestComplete.wake({ invitation: guestInvitation });\n break;\n }\n\n case Invitation.State.TIMEOUT: {\n if (hooks?.guest?.onTimeout?.(guestObservable)) {\n return;\n }\n guestComplete.wake({ invitation: guestInvitation });\n }\n }\n },\n (error: Error) => {\n if (hooks?.guest?.onError?.(guestObservable)) {\n return;\n }\n guestComplete.wake({ error });\n },\n );\n break;\n }\n\n case Invitation.State.CONNECTED: {\n hooks?.host?.onConnected?.(hostObservable);\n break;\n }\n\n case Invitation.State.READY_FOR_AUTHENTICATION: {\n if (hooks?.host?.onReady?.(hostObservable)) {\n break;\n }\n if (hostInvitation.authCode) {\n authCode.wake(hostInvitation.authCode);\n }\n break;\n }\n\n case Invitation.State.AUTHENTICATING: {\n hooks?.host?.onAuthenticating?.(hostObservable);\n break;\n }\n\n case Invitation.State.SUCCESS: {\n if (hooks?.host?.onSuccess?.(hostObservable)) {\n break;\n }\n hostComplete.wake({ invitation: hostInvitation });\n break;\n }\n\n case Invitation.State.CANCELLED: {\n if (hooks?.host?.onCancelled?.(hostObservable)) {\n break;\n }\n hostComplete.wake({ invitation: hostInvitation });\n break;\n }\n\n case Invitation.State.TIMEOUT: {\n if (hooks?.host?.onTimeout?.(hostObservable)) {\n break;\n }\n hostComplete.wake({ invitation: hostInvitation });\n break;\n }\n }\n },\n (error: Error) => {\n if (hooks?.host?.onError?.(hostObservable)) {\n return;\n }\n hostComplete.wake({ error });\n },\n );\n\n return [hostComplete.wait(), guestComplete.wait()];\n};\n\nconst createInvitation = (\n host: ServiceContext | InvitationHost,\n options?: Partial<Invitation>,\n): CancellableInvitation => {\n options ??= {\n authMethod: Invitation.AuthMethod.NONE,\n ...(options ?? {}),\n };\n\n if (host instanceof ServiceContext) {\n const hostHandler = host.getInvitationHandler({ kind: Invitation.Kind.SPACE, ...options });\n return host.invitations.createInvitation(hostHandler, options);\n }\n\n return host.share(options);\n};\n\nconst acceptInvitation = (\n guest: ServiceContext | InvitationGuest,\n invitation: Invitation,\n): AuthenticatingInvitation => {\n invitation = sanitizeInvitation(invitation);\n\n if (guest instanceof ServiceContext) {\n const guestHandler = guest.getInvitationHandler({ kind: invitation.kind });\n return guest.invitations.acceptInvitation(guestHandler, invitation);\n }\n\n return guest.join(invitation);\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { type Config } from '@dxos/config';\nimport { Context } from '@dxos/context';\nimport { createCredentialSignerWithChain, CredentialGenerator } from '@dxos/credentials';\nimport { failUndefined } from '@dxos/debug';\nimport {\n SnapshotStore,\n type DataPipeline,\n MetadataStore,\n SpaceManager,\n valueEncoding,\n DataServiceSubscriptions,\n AutomergeHost,\n} from '@dxos/echo-pipeline';\nimport { testLocalDatabase } from '@dxos/echo-pipeline/testing';\nimport { FeedFactory, FeedStore } from '@dxos/feed-store';\nimport { Keyring } from '@dxos/keyring';\nimport { MemorySignalManager, MemorySignalManagerContext } from '@dxos/messaging';\nimport { MemoryTransportFactory, NetworkManager } from '@dxos/network-manager';\nimport { createStorage, type Storage, StorageType } from '@dxos/random-access-storage';\nimport { BlobStore } from '@dxos/teleport-extension-object-sync';\n\nimport { ClientServicesHost, createDefaultModelFactory, ServiceContext } from '../services';\nimport { DataSpaceManager, type SigningContext } from '../spaces';\n\n//\n// TODO(burdon): Replace with test builder.\n//\n\nexport const createServiceHost = (config: Config, signalManagerContext: MemorySignalManagerContext) => {\n return new ClientServicesHost({\n config,\n signalManager: new MemorySignalManager(signalManagerContext),\n transportFactory: MemoryTransportFactory,\n });\n};\n\nexport const createServiceContext = ({\n signalContext = new MemorySignalManagerContext(),\n storage = createStorage({ type: StorageType.RAM }),\n}: {\n signalContext?: MemorySignalManagerContext;\n storage?: Storage;\n} = {}) => {\n const signalManager = new MemorySignalManager(signalContext);\n const networkManager = new NetworkManager({\n signalManager,\n transportFactory: MemoryTransportFactory,\n });\n\n const modelFactory = createDefaultModelFactory();\n return new ServiceContext(storage, networkManager, signalManager, modelFactory);\n};\n\nexport const createPeers = async (numPeers: number) => {\n const signalContext = new MemorySignalManagerContext();\n\n return await Promise.all(\n Array.from(Array(numPeers)).map(async () => {\n const peer = createServiceContext({ signalContext });\n await peer.open(new Context());\n return peer;\n }),\n );\n};\n\nexport const createIdentity = async (peer: ServiceContext) => {\n await peer.createIdentity();\n return peer;\n};\n\n// TODO(burdon): Remove @dxos/client-testing.\n// TODO(burdon): Create builder and make configurable.\nexport const syncItemsLocal = async (db1: DataPipeline, db2: DataPipeline) => {\n await testLocalDatabase(db1, db2);\n await testLocalDatabase(db2, db1);\n};\n\nexport class TestBuilder {\n public readonly signalContext = new MemorySignalManagerContext();\n private readonly _ctx = new Context();\n\n createPeer(peerOptions?: TestPeerOpts): TestPeer {\n const peer = new TestPeer(this.signalContext, peerOptions);\n this._ctx.onDispose(async () => peer.destroy());\n return peer;\n }\n\n async destroy() {\n await this._ctx.dispose();\n }\n}\n\nexport type TestPeerOpts = {\n dataStore?: StorageType;\n};\n\nexport type TestPeerProps = {\n storage?: Storage;\n feedStore?: FeedStore<any>;\n metadataStore?: MetadataStore;\n keyring?: Keyring;\n networkManager?: NetworkManager;\n spaceManager?: SpaceManager;\n dataSpaceManager?: DataSpaceManager;\n snapshotStore?: SnapshotStore;\n signingContext?: SigningContext;\n blobStore?: BlobStore;\n automergeHost?: AutomergeHost;\n};\n\nexport class TestPeer {\n private _props: TestPeerProps = {};\n\n constructor(\n private readonly signalContext: MemorySignalManagerContext,\n private readonly opts: TestPeerOpts = { dataStore: StorageType.RAM },\n ) {}\n\n get props() {\n return this._props;\n }\n\n get storage() {\n return (this._props.storage ??= createStorage({ type: this.opts.dataStore }));\n }\n\n get keyring() {\n return (this._props.keyring ??= new Keyring(this.storage.createDirectory('keyring')));\n }\n\n get feedStore() {\n return (this._props.feedStore ??= new FeedStore({\n factory: new FeedFactory({\n root: this.storage.createDirectory('feeds'),\n signer: this.keyring,\n hypercore: {\n valueEncoding,\n },\n }),\n }));\n }\n\n get metadataStore() {\n return (this._props.metadataStore ??= new MetadataStore(this.storage.createDirectory('metadata')));\n }\n\n get blobStore() {\n return (this._props.blobStore ??= new BlobStore(this.storage.createDirectory('blobs')));\n }\n\n get snapshotStore() {\n return (this._props.snapshotStore ??= new SnapshotStore(this.storage.createDirectory('snapshots')));\n }\n\n get networkManager() {\n return (this._props.networkManager ??= new NetworkManager({\n signalManager: new MemorySignalManager(this.signalContext),\n transportFactory: MemoryTransportFactory,\n }));\n }\n\n get spaceManager() {\n return (this._props.spaceManager ??= new SpaceManager({\n feedStore: this.feedStore,\n networkManager: this.networkManager,\n metadataStore: this.metadataStore,\n modelFactory: createDefaultModelFactory(),\n snapshotStore: this.snapshotStore,\n blobStore: this.blobStore,\n }));\n }\n\n get identity() {\n return this._props.signingContext ?? failUndefined();\n }\n\n get automergeHost() {\n return (this._props.automergeHost ??= new AutomergeHost(this.storage.createDirectory('automerge')));\n }\n\n get dataSpaceManager() {\n return (this._props.dataSpaceManager ??= new DataSpaceManager(\n this.spaceManager,\n this.metadataStore,\n new DataServiceSubscriptions(),\n this.keyring,\n this.identity,\n this.feedStore,\n this.automergeHost,\n ));\n }\n\n async createIdentity() {\n this._props.signingContext ??= await createSigningContext(this.keyring);\n }\n\n async destroy() {\n await this.storage.reset();\n }\n}\n\nexport const createSigningContext = async (keyring: Keyring): Promise<SigningContext> => {\n const identityKey = await keyring.createKey();\n const deviceKey = await keyring.createKey();\n\n return {\n identityKey,\n deviceKey,\n credentialSigner: createCredentialSignerWithChain(\n keyring,\n {\n credential: await new CredentialGenerator(keyring, identityKey, deviceKey).createDeviceAuthorization(deviceKey),\n },\n deviceKey,\n ),\n recordCredential: async () => {}, // No-op.\n getProfile: () => undefined,\n };\n};\n"],
5
- "mappings": "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",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,yBAAiC;AAEjC,kBAA0B;ACF1B,mBAAwB;AAExB,uBAA0B;AAC1B,sBAA2B;ACF3B,qBAAwB;AACxB,IAAAA,sBAAqE;AACrE,mBAA8B;AAC9B,2BAQO;AACP,qBAAkC;AAClC,wBAAuC;AACvC,qBAAwB;AACxB,uBAAgE;AAChE,6BAAuD;AACvD,mCAAyD;AACzD,4CAA0B;AFdnB,IAAMC,uBAAuB,OAAO,EACzCC,QACAC,OAAM,UAKNC,qCAAiB;EACfF;EACAC;EACAE,SAAS,IAAIC,sBAAUC,OAAOC,KAAK,MAAA,CAAA;EACnCC,WAAW;IACT,SAAS;IACTC,SAAS;MACP,SAAS;MACTC,OAAOJ,OAAOC,KAAK,MAAA;IACrB;EACF;AACF,CAAA;;ACbK,IAAMI,qBAAqB,CAACC,eAAAA;AACjC,SAAO;IACLC,cAAcD,WAAWC;IACzBC,MAAMF,WAAWE;IACjBC,MAAMH,WAAWG;IACjBC,YAAYJ,WAAWI;IACvBC,UAAUL,WAAWK;IACrBC,OAAON,WAAWM;IAClBC,SAASP,WAAWO;EACtB;AACF;AAiCO,IAAMC,oBAAoB,CAAC,EAChCC,MACAC,OACAC,SACAC,MAAK,MACmB;AACxB,QAAMC,eAAe,IAAIC,qBAAAA;AACzB,QAAMC,gBAAgB,IAAID,qBAAAA;AAC1B,QAAME,WAAW,IAAIF,qBAAAA;AAErB,QAAMG,iBAAiBC,iBAAiBT,MAAME,OAAAA;AAC9CM,iBAAeE,UACb,OAAOC,mBAAAA;AACL,YAAQA,eAAed,OAAK;MAC1B,KAAKe,2BAAWC,MAAMC,YAAY;AAChC,YAAIX,OAAOH,MAAMe,eAAeP,cAAAA,GAAiB;AAC/C;QACF;AACA,cAAMQ,kBAAkBC,iBAAiBhB,OAAOU,cAAAA;AAChDK,wBAAgBN,UACd,OAAOQ,oBAAAA;AACL,kBAAQA,gBAAgBrB,OAAK;YAC3B,KAAKe,2BAAWC,MAAMC,YAAY;AAChC,kBAAIX,OAAOF,OAAOc,eAAeC,eAAAA,GAAkB;AACjD;cACF;AACAG,8CAAUR,eAAef,SAAUwB,OAAOF,gBAAgBtB,QAAQ,GAAA,QAAA;;;;;;;;;AAClE;YACF;YAEA,KAAKgB,2BAAWC,MAAMQ,WAAW;AAC/BlB,qBAAOF,OAAOqB,cAAcN,eAAAA;AAC5B;YACF;YAEA,KAAKJ,2BAAWC,MAAMU,0BAA0B;AAC9C,kBAAIpB,OAAOF,OAAOuB,UAAUR,eAAAA,GAAkB;AAC5C;cACF;AACA,oBAAMA,gBAAgBS,aAAa,MAAMlB,SAASmB,KAAI,CAAA;AACtD;YACF;YAEA,KAAKd,2BAAWC,MAAMc,gBAAgB;AACpCxB,qBAAOF,OAAO2B,mBAAmBZ,eAAAA;AACjC;YACF;YAEA,KAAKJ,2BAAWC,MAAMgB,SAAS;AAC7B,kBAAI1B,OAAOF,OAAO6B,YAAYd,eAAAA,GAAkB;AAC9C;cACF;AACAV,4BAAcyB,KAAK;gBAAExC,YAAY2B;cAAgB,CAAA;AACjD;YACF;YAEA,KAAKN,2BAAWC,MAAMmB,WAAW;AAC/B,kBAAI7B,OAAOF,OAAOgC,cAAcjB,eAAAA,GAAkB;AAChD;cACF;AACAV,4BAAcyB,KAAK;gBAAExC,YAAY2B;cAAgB,CAAA;AACjD;YACF;YAEA,KAAKN,2BAAWC,MAAMqB,SAAS;AAC7B,kBAAI/B,OAAOF,OAAOkC,YAAYnB,eAAAA,GAAkB;AAC9C;cACF;AACAV,4BAAcyB,KAAK;gBAAExC,YAAY2B;cAAgB,CAAA;YACnD;UACF;QACF,GACA,CAACkB,UAAAA;AACC,cAAIjC,OAAOF,OAAOoC,UAAUrB,eAAAA,GAAkB;AAC5C;UACF;AACAV,wBAAcyB,KAAK;YAAEK;UAAM,CAAA;QAC7B,CAAA;AAEF;MACF;MAEA,KAAKxB,2BAAWC,MAAMQ,WAAW;AAC/BlB,eAAOH,MAAMsB,cAAcd,cAAAA;AAC3B;MACF;MAEA,KAAKI,2BAAWC,MAAMU,0BAA0B;AAC9C,YAAIpB,OAAOH,MAAMwB,UAAUhB,cAAAA,GAAiB;AAC1C;QACF;AACA,YAAIG,eAAeJ,UAAU;AAC3BA,mBAASwB,KAAKpB,eAAeJ,QAAQ;QACvC;AACA;MACF;MAEA,KAAKK,2BAAWC,MAAMc,gBAAgB;AACpCxB,eAAOH,MAAM4B,mBAAmBpB,cAAAA;AAChC;MACF;MAEA,KAAKI,2BAAWC,MAAMgB,SAAS;AAC7B,YAAI1B,OAAOH,MAAM8B,YAAYtB,cAAAA,GAAiB;AAC5C;QACF;AACAJ,qBAAa2B,KAAK;UAAExC,YAAYoB;QAAe,CAAA;AAC/C;MACF;MAEA,KAAKC,2BAAWC,MAAMmB,WAAW;AAC/B,YAAI7B,OAAOH,MAAMiC,cAAczB,cAAAA,GAAiB;AAC9C;QACF;AACAJ,qBAAa2B,KAAK;UAAExC,YAAYoB;QAAe,CAAA;AAC/C;MACF;MAEA,KAAKC,2BAAWC,MAAMqB,SAAS;AAC7B,YAAI/B,OAAOH,MAAMmC,YAAY3B,cAAAA,GAAiB;AAC5C;QACF;AACAJ,qBAAa2B,KAAK;UAAExC,YAAYoB;QAAe,CAAA;AAC/C;MACF;IACF;EACF,GACA,CAACyB,UAAAA;AACC,QAAIjC,OAAOH,MAAMqC,UAAU7B,cAAAA,GAAiB;AAC1C;IACF;AACAJ,iBAAa2B,KAAK;MAAEK;IAAM,CAAA;EAC5B,CAAA;AAGF,SAAO;IAAChC,aAAasB,KAAI;IAAIpB,cAAcoB,KAAI;;AACjD;AAEA,IAAMjB,mBAAmB,CACvBT,MACAE,YAAAA;AAEAA,cAAY;IACVP,YAAYiB,2BAAW0B,WAAWC;IAClC,GAAIrC,WAAW,CAAC;EAClB;AAEA,MAAIF,gBAAgBwC,sCAAgB;AAClC,UAAMC,cAAczC,KAAK0C,qBAAqB;MAAEhD,MAAMkB,2BAAW+B,KAAKC;MAAO,GAAG1C;IAAQ,CAAA;AACxF,WAAOF,KAAK6C,YAAYpC,iBAAiBgC,aAAavC,OAAAA;EACxD;AAEA,SAAOF,KAAK8C,MAAM5C,OAAAA;AACpB;AAEA,IAAMe,mBAAmB,CACvBhB,OACAV,eAAAA;AAEAA,eAAaD,mBAAmBC,UAAAA;AAEhC,MAAIU,iBAAiBuC,sCAAgB;AACnC,UAAMO,eAAe9C,MAAMyC,qBAAqB;MAAEhD,MAAMH,WAAWG;IAAK,CAAA;AACxE,WAAOO,MAAM4C,YAAY5B,iBAAiB8B,cAAcxD,UAAAA;EAC1D;AAEA,SAAOU,MAAM+C,KAAKzD,UAAAA;AACpB;AChMO,IAAM0D,oBAAoB,CAACC,QAAgBC,yBAAAA;AAChD,SAAO,IAAIC,yCAAmB;IAC5BF;IACAG,eAAe,IAAIC,qCAAoBH,oBAAAA;IACvCI,kBAAkBC;EACpB,CAAA;AACF;AAEO,IAAMC,uBAAuB,CAAC,EACnCC,gBAAgB,IAAIC,4CAAAA,GACpBC,cAAUC,4CAAc;EAAEpE,MAAMqE,yCAAYC;AAAI,CAAA,EAAE,IAIhD,CAAC,MAAC;AACJ,QAAMV,gBAAgB,IAAIC,qCAAoBI,aAAAA;AAC9C,QAAMM,iBAAiB,IAAIC,sCAAe;IACxCZ;IACAE,kBAAkBC;EACpB,CAAA;AAEA,QAAMU,mBAAeC,iDAAAA;AACrB,SAAO,IAAI3B,qCAAeoB,SAASI,gBAAgBX,eAAea,YAAAA;AACpE;AAEO,IAAME,cAAc,OAAOC,aAAAA;AAChC,QAAMX,gBAAgB,IAAIC,4CAAAA;AAE1B,SAAO,MAAMW,QAAQC,IACnBC,MAAMtF,KAAKsF,MAAMH,QAAAA,CAAAA,EAAWI,IAAI,YAAA;AAC9B,UAAMC,OAAOjB,qBAAqB;MAAEC;IAAc,CAAA;AAClD,UAAMgB,KAAKC,KAAK,IAAIC,uBAAAA,CAAAA;AACpB,WAAOF;EACT,CAAA,CAAA;AAEJ;AAEO,IAAMG,iBAAiB,OAAOH,SAAAA;AACnC,QAAMA,KAAKG,eAAc;AACzB,SAAOH;AACT;AAIO,IAAMI,iBAAiB,OAAOC,KAAmBC,QAAAA;AACtD,YAAMC,kCAAkBF,KAAKC,GAAAA;AAC7B,YAAMC,kCAAkBD,KAAKD,GAAAA;AAC/B;AAEO,IAAMG,cAAN,MAAMA;EAAN,cAAA;AACWxB,SAAAA,gBAAgB,IAAIC,4CAAAA;AACnBwB,SAAAA,OAAO,IAAIP,uBAAAA;;EAE5BQ,WAAWC,aAAsC;AAC/C,UAAMX,OAAO,IAAIY,SAAS,KAAK5B,eAAe2B,WAAAA;AAC9C,SAAKF,KAAKI,UAAU,YAAYb,KAAKc,QAAO,CAAA;AAC5C,WAAOd;EACT;EAEA,MAAMc,UAAU;AACd,UAAM,KAAKL,KAAKM,QAAO;EACzB;AACF;AAoBO,IAAMH,WAAN,MAAMA;EAGXI,YACmBhC,eACAiC,OAAqB;IAAEC,WAAW9B,yCAAYC;EAAI,GACnE;SAFiBL,gBAAAA;SACAiC,OAAAA;SAJXE,SAAwB,CAAC;EAK9B;EAEH,IAAIC,QAAQ;AACV,WAAO,KAAKD;EACd;EAEA,IAAIjC,UAAU;AACZ,WAAQ,KAAKiC,OAAOjC,gBAAYC,4CAAc;MAAEpE,MAAM,KAAKkG,KAAKC;IAAU,CAAA;EAC5E;EAEA,IAAIG,UAAU;AACZ,WAAQ,KAAKF,OAAOE,YAAY,IAAIC,uBAAQ,KAAKpC,QAAQqC,gBAAgB,SAAA,CAAA;EAC3E;EAEA,IAAIC,YAAY;AACd,WAAQ,KAAKL,OAAOK,cAAc,IAAIC,4BAAU;MAC9CC,SAAS,IAAIC,8BAAY;QACvBC,MAAM,KAAK1C,QAAQqC,gBAAgB,OAAA;QACnCrH,QAAQ,KAAKmH;QACbQ,WAAW;UACTC;QACF;MACF,CAAA;IACF,CAAA;EACF;EAEA,IAAIC,gBAAgB;AAClB,WAAQ,KAAKZ,OAAOY,kBAAkB,IAAIC,mCAAc,KAAK9C,QAAQqC,gBAAgB,UAAA,CAAA;EACvF;EAEA,IAAIU,YAAY;AACd,WAAQ,KAAKd,OAAOc,cAAc,IAAIC,gDAAU,KAAKhD,QAAQqC,gBAAgB,OAAA,CAAA;EAC/E;EAEA,IAAIY,gBAAgB;AAClB,WAAQ,KAAKhB,OAAOgB,kBAAkB,IAAIC,mCAAc,KAAKlD,QAAQqC,gBAAgB,WAAA,CAAA;EACvF;EAEA,IAAIjC,iBAAiB;AACnB,WAAQ,KAAK6B,OAAO7B,mBAAmB,IAAIC,sCAAe;MACxDZ,eAAe,IAAIC,qCAAoB,KAAKI,aAAa;MACzDH,kBAAkBC;IACpB,CAAA;EACF;EAEA,IAAIuD,eAAe;AACjB,WAAQ,KAAKlB,OAAOkB,iBAAiB,IAAIC,kCAAa;MACpDd,WAAW,KAAKA;MAChBlC,gBAAgB,KAAKA;MACrByC,eAAe,KAAKA;MACpBvC,kBAAcC,iDAAAA;MACd0C,eAAe,KAAKA;MACpBF,WAAW,KAAKA;IAClB,CAAA;EACF;EAEA,IAAIM,WAAW;AACb,WAAO,KAAKpB,OAAOqB,sBAAkBC,4BAAAA;EACvC;EAEA,IAAIC,gBAAgB;AAClB,WAAQ,KAAKvB,OAAOuB,kBAAkB,IAAIC,mCAAc,KAAKzD,QAAQqC,gBAAgB,WAAA,CAAA;EACvF;EAEA,IAAIqB,mBAAmB;AACrB,WAAQ,KAAKzB,OAAOyB,qBAAqB,IAAIC,uCAC3C,KAAKR,cACL,KAAKN,eACL,IAAIe,8CAAAA,GACJ,KAAKzB,SACL,KAAKkB,UACL,KAAKf,WACL,KAAKkB,aAAa;EAEtB;EAEA,MAAMvC,iBAAiB;AACrB,SAAKgB,OAAOqB,mBAAmB,MAAMO,qBAAqB,KAAK1B,OAAO;EACxE;EAEA,MAAMP,UAAU;AACd,UAAM,KAAK5B,QAAQ8D,MAAK;EAC1B;AACF;AAEO,IAAMD,uBAAuB,OAAO1B,YAAAA;AACzC,QAAM4B,cAAc,MAAM5B,QAAQ6B,UAAS;AAC3C,QAAMC,YAAY,MAAM9B,QAAQ6B,UAAS;AAEzC,SAAO;IACLD;IACAE;IACAC,sBAAkBC,qDAChBhC,SACA;MACEiC,YAAY,MAAM,IAAIC,wCAAoBlC,SAAS4B,aAAaE,SAAAA,EAAWK,0BAA0BL,SAAAA;IACvG,GACAA,SAAAA;IAEFM,kBAAkB,YAAA;IAAa;IAC/BC,YAAY,MAAMC;EACpB;AACF;",
6
6
  "names": ["import_credentials", "createMockCredential", "signer", "issuer", "createCredential", "subject", "PublicKey", "Buffer", "from", "assertion", "payload", "value", "sanitizeInvitation", "invitation", "invitationId", "type", "kind", "authMethod", "swarmKey", "state", "timeout", "performInvitation", "host", "guest", "options", "hooks", "hostComplete", "Trigger", "guestComplete", "authCode", "hostObservable", "createInvitation", "subscribe", "hostInvitation", "Invitation", "State", "CONNECTING", "onConnecting", "guestObservable", "acceptInvitation", "guestInvitation", "invariant", "equals", "CONNECTED", "onConnected", "READY_FOR_AUTHENTICATION", "onReady", "authenticate", "wait", "AUTHENTICATING", "onAuthenticating", "SUCCESS", "onSuccess", "wake", "CANCELLED", "onCancelled", "TIMEOUT", "onTimeout", "error", "onError", "AuthMethod", "NONE", "ServiceContext", "hostHandler", "getInvitationHandler", "Kind", "SPACE", "invitations", "share", "guestHandler", "join", "createServiceHost", "config", "signalManagerContext", "ClientServicesHost", "signalManager", "MemorySignalManager", "transportFactory", "MemoryTransportFactory", "createServiceContext", "signalContext", "MemorySignalManagerContext", "storage", "createStorage", "StorageType", "RAM", "networkManager", "NetworkManager", "modelFactory", "createDefaultModelFactory", "createPeers", "numPeers", "Promise", "all", "Array", "map", "peer", "open", "Context", "createIdentity", "syncItemsLocal", "db1", "db2", "testLocalDatabase", "TestBuilder", "_ctx", "createPeer", "peerOptions", "TestPeer", "onDispose", "destroy", "dispose", "constructor", "opts", "dataStore", "_props", "props", "keyring", "Keyring", "createDirectory", "feedStore", "FeedStore", "factory", "FeedFactory", "root", "hypercore", "valueEncoding", "metadataStore", "MetadataStore", "blobStore", "BlobStore", "snapshotStore", "SnapshotStore", "spaceManager", "SpaceManager", "identity", "signingContext", "failUndefined", "automergeHost", "AutomergeHost", "dataSpaceManager", "DataSpaceManager", "DataServiceSubscriptions", "createSigningContext", "reset", "identityKey", "createKey", "deviceKey", "credentialSigner", "createCredentialSignerWithChain", "credential", "CredentialGenerator", "createDeviceAuthorization", "recordCredential", "getProfile", "undefined"]
7
7
  }
@@ -1,6 +1,6 @@
1
1
  import { Stream } from '@dxos/codec-protobuf';
2
2
  import { type Keyring } from '@dxos/keyring';
3
- import { type Identity, type IdentityService, type QueryIdentityResponse, type RecoverIdentityRequest, type SignPresentationRequest } from '@dxos/protocols/proto/dxos/client/services';
3
+ import { type CreateIdentityRequest, type Identity, type IdentityService, type QueryIdentityResponse, type RecoverIdentityRequest, type SignPresentationRequest } from '@dxos/protocols/proto/dxos/client/services';
4
4
  import { type Presentation, type ProfileDocument } from '@dxos/protocols/proto/dxos/halo/credentials';
5
5
  import { type CreateIdentityOptions, type IdentityManager } from './identity-manager';
6
6
  export declare class IdentityServiceImpl implements IdentityService {
@@ -8,8 +8,8 @@ export declare class IdentityServiceImpl implements IdentityService {
8
8
  private readonly _identityManager;
9
9
  private readonly _keyring;
10
10
  private readonly _onProfileUpdate?;
11
- constructor(_createIdentity: (params?: CreateIdentityOptions) => Promise<Identity>, _identityManager: IdentityManager, _keyring: Keyring, _onProfileUpdate?: ((profile: ProfileDocument | undefined) => Promise<void>) | undefined);
12
- createIdentity(request: ProfileDocument): Promise<Identity>;
11
+ constructor(_createIdentity: (params: CreateIdentityOptions, useAutomerge: boolean) => Promise<Identity>, _identityManager: IdentityManager, _keyring: Keyring, _onProfileUpdate?: ((profile: ProfileDocument | undefined) => Promise<void>) | undefined);
12
+ createIdentity(request: CreateIdentityRequest): Promise<Identity>;
13
13
  recoverIdentity(request: RecoverIdentityRequest): Promise<Identity>;
14
14
  queryIdentity(): Stream<QueryIdentityResponse>;
15
15
  private _getIdentity;
@@ -1 +1 @@
1
- {"version":3,"file":"identity-service.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/identity/identity-service.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAI9C,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC7B,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAEtG,OAAO,EAAE,KAAK,qBAAqB,EAAE,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAEtF,qBAAa,mBAAoB,YAAW,eAAe;IAEvD,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBAHjB,eAAe,EAAE,CAAC,MAAM,CAAC,EAAE,qBAAqB,KAAK,OAAO,CAAC,QAAQ,CAAC,EACtE,gBAAgB,EAAE,eAAe,EACjC,QAAQ,EAAE,OAAO,EACjB,gBAAgB,CAAC,aAAY,eAAe,GAAG,SAAS,KAAK,QAAQ,IAAI,CAAC,aAAA;IAGvF,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC;IAK3D,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIzE,aAAa,IAAI,MAAM,CAAC,qBAAqB,CAAC;IAS9C,OAAO,CAAC,YAAY;IAYd,aAAa,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC;IAO1D,gBAAgB,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,uBAAuB,GAAG,OAAO,CAAC,YAAY,CAAC;CAWhG"}
1
+ {"version":3,"file":"identity-service.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/identity/identity-service.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAI9C,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC7B,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAEtG,OAAO,EAAE,KAAK,qBAAqB,EAAE,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAItF,qBAAa,mBAAoB,YAAW,eAAe;IAEvD,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBAHjB,eAAe,EAAE,CAAC,MAAM,EAAE,qBAAqB,EAAE,YAAY,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,EAC5F,gBAAgB,EAAE,eAAe,EACjC,QAAQ,EAAE,OAAO,EACjB,gBAAgB,CAAC,aAAY,eAAe,GAAG,SAAS,KAAK,QAAQ,IAAI,CAAC,aAAA;IAGvF,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAKjE,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIzE,aAAa,IAAI,MAAM,CAAC,qBAAqB,CAAC;IAS9C,OAAO,CAAC,YAAY;IAYd,aAAa,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC;IAO1D,gBAAgB,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,uBAAuB,GAAG,OAAO,CAAC,YAAY,CAAC;CAWhG"}
@@ -1 +1 @@
1
- {"version":3,"file":"service-host.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/services/service-host.ts"],"names":[],"mappings":"AAKA,OAAO,EAAuB,KAAK,cAAc,EAA0B,MAAM,uBAAuB,CAAC;AACzG,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAOxC,OAAO,EAAE,KAAK,aAAa,EAA0B,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAoD,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAIhH,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAM3D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAarD,eAAO,MAAM,yBAAyB,oBAErC,CAAC;AAiBF,MAAM,MAAM,wBAAwB,GAAG;IACrC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,2BAA2B,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF;;GAEG;AACH,qBACa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAe;IAC9C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkC;IACnE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAoB;IACnD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAqB;IACrD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAuC;IAEvE,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAqB;IACnD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,cAAc,CAAC,CAAgB;IACvC,OAAO,CAAC,eAAe,CAAC,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,CAAU;IAC3B,OAAO,CAAC,UAAU,CAAC,CAA8B;IACjD,OAAO,CAAC,cAAc,CAAC,CAAyC;IAEhE,OAAO,CAAC,eAAe,CAAkB;IAGzC,OAAO,CAAC,QAAQ,CAAS;IAGzB,OAAO,CAAC,KAAK,CAAS;gBAEV,EACV,MAAM,EACN,YAA0C,EAC1C,gBAAgB,EAChB,aAAa,EACb,OAAO,EAEP,OAAO,EACP,SAAS,GACV,GAAE,wBAA6B;IAiDhC,IAAI,MAAM,YAET;IAED,IAAI,MAAM,uBAET;IAED,IAAI,OAAO,mBAEV;IAED,IAAI,eAAe,oCAElB;IAED,IAAI,WAAW,sDAEd;IAED,IAAI,QAAQ,4BAEX;IAED;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,EAAE,iBAAiB;IAiC9C,IAAI,CAAC,GAAG,EAAE,OAAO;IA6FjB,KAAK;IAgBL,KAAK;YAYG,eAAe;CAkB9B"}
1
+ {"version":3,"file":"service-host.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/services/service-host.ts"],"names":[],"mappings":"AAKA,OAAO,EAAuB,KAAK,cAAc,EAA0B,MAAM,uBAAuB,CAAC;AACzG,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAOxC,OAAO,EAAE,KAAK,aAAa,EAA0B,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAoD,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAIhH,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAM3D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAarD,eAAO,MAAM,yBAAyB,oBAErC,CAAC;AAiBF,MAAM,MAAM,wBAAwB,GAAG;IACrC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,2BAA2B,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF;;GAEG;AACH,qBACa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAe;IAC9C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkC;IACnE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAoB;IACnD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAqB;IACrD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAuC;IAEvE,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAqB;IACnD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,cAAc,CAAC,CAAgB;IACvC,OAAO,CAAC,eAAe,CAAC,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,CAAU;IAC3B,OAAO,CAAC,UAAU,CAAC,CAA8B;IACjD,OAAO,CAAC,cAAc,CAAC,CAAyC;IAEhE,OAAO,CAAC,eAAe,CAAkB;IAGzC,OAAO,CAAC,QAAQ,CAAS;IAGzB,OAAO,CAAC,KAAK,CAAS;gBAEV,EACV,MAAM,EACN,YAA0C,EAC1C,gBAAgB,EAChB,aAAa,EACb,OAAO,EAEP,OAAO,EACP,SAAS,GACV,GAAE,wBAA6B;IAiDhC,IAAI,MAAM,YAET;IAED,IAAI,MAAM,uBAET;IAED,IAAI,OAAO,mBAEV;IAED,IAAI,eAAe,oCAElB;IAED,IAAI,WAAW,sDAEd;IAED,IAAI,QAAQ,4BAEX;IAED;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,EAAE,iBAAiB;IAiC9C,IAAI,CAAC,GAAG,EAAE,OAAO;IA6FjB,KAAK;IAgBL,KAAK;YAYG,eAAe;CAiC9B"}
@@ -14,6 +14,8 @@ export type IFrameHostRuntimeParams = {
14
14
  *
15
15
  * Holds a lock over the client services such that only one instance can run at a time.
16
16
  * This should only be used when SharedWorker is not available.
17
+ *
18
+ * @deprecated
17
19
  */
18
20
  export declare class IFrameHostRuntime {
19
21
  private readonly _configProvider;
@@ -1 +1 @@
1
- {"version":3,"file":"iframe-host-runtime.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/vault/iframe-host-runtime.ts"],"names":[],"mappings":"AAKA,OAAO,EAA4B,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACpF,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAK3C,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAiB,KAAK,YAAY,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AAG7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAKjD,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;IAChD,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF;;;;;GAKG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAoC;IACpE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;IAE3D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAU;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAU;IACtC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,iBAAiB,CAAoB;IAG7C,OAAO,CAAC,eAAe,CAAsB;IAC7C,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,aAAa,CAAC,CAAmB;IAGlC,MAAM,EAAE,MAAM,CAAC;gBAEV,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,uBAAuB;IAW3E,IAAI,QAAQ,uBAEX;IAED,IAAI,KAAK,IAAI,YAAY,GAAG,SAAS,CAEpC;IAEK,KAAK;IAmDL,IAAI;CAOX"}
1
+ {"version":3,"file":"iframe-host-runtime.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/vault/iframe-host-runtime.ts"],"names":[],"mappings":"AAKA,OAAO,EAA4B,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACpF,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAK3C,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAiB,KAAK,YAAY,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AAG7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAKjD,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;IAChD,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF;;;;;;;GAOG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAoC;IACpE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;IAE3D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAU;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAU;IACtC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,iBAAiB,CAAoB;IAG7C,OAAO,CAAC,eAAe,CAAsB;IAC7C,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,aAAa,CAAC,CAAmB;IAGlC,MAAM,EAAE,MAAM,CAAC;gBAEV,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,uBAAuB;IAW3E,IAAI,QAAQ,uBAEX;IAED,IAAI,KAAK,IAAI,YAAY,GAAG,SAAS,CAEpC;IAEK,KAAK;IAmDL,IAAI;CAOX"}
@@ -1,5 +1,5 @@
1
1
  export * from './iframe-host-runtime';
2
- export * from './iframe-proxy-runtime';
2
+ export * from './shared-worker-connection';
3
3
  export * from './shell-runtime';
4
4
  export * from './worker-runtime';
5
5
  export * from './worker-session';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/vault/index.ts"],"names":[],"mappings":"AAIA,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/vault/index.ts"],"names":[],"mappings":"AAIA,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC"}
@@ -2,15 +2,18 @@ import { type ShellRuntime } from '@dxos/client-protocol';
2
2
  import { type Config } from '@dxos/config';
3
3
  import { type RpcPort } from '@dxos/rpc';
4
4
  import { type MaybePromise, type Provider } from '@dxos/util';
5
- export type IFrameProxyRuntimeParams = {
5
+ export type SharedWorkerConnectionOptions = {
6
6
  config: Config | Provider<MaybePromise<Config>>;
7
7
  systemPort: RpcPort;
8
+ /**
9
+ * @deprecated Only used with iframes.
10
+ */
8
11
  shellPort?: RpcPort;
9
12
  };
10
13
  /**
11
14
  * Manages the client connection to the shared worker.
12
15
  */
13
- export declare class IFrameProxyRuntime {
16
+ export declare class SharedWorkerConnection {
14
17
  private readonly _id;
15
18
  private readonly _configProvider;
16
19
  private readonly _systemPort;
@@ -20,10 +23,14 @@ export declare class IFrameProxyRuntime {
20
23
  private _transportService;
21
24
  private _systemRpc;
22
25
  private _shellRuntime?;
23
- constructor({ config, systemPort, shellPort }: IFrameProxyRuntimeParams);
26
+ constructor({ config, systemPort, shellPort }: SharedWorkerConnectionOptions);
24
27
  get shell(): ShellRuntime | undefined;
25
- open(origin: string): Promise<void>;
28
+ open(
29
+ /**
30
+ * @deprecated Only used with iframes.
31
+ */
32
+ origin: string): Promise<void>;
26
33
  close(): Promise<void>;
27
34
  private _lockKey;
28
35
  }
29
- //# sourceMappingURL=iframe-proxy-runtime.d.ts.map
36
+ //# sourceMappingURL=shared-worker-connection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared-worker-connection.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/vault/shared-worker-connection.ts"],"names":[],"mappings":"AAKA,OAAO,EAEL,KAAK,YAAY,EAGlB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAK3C,OAAO,EAAyC,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAChF,OAAO,EAAiB,KAAK,YAAY,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AAK7E,MAAM,MAAM,6BAA6B,GAAG;IAC1C,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;IAChD,UAAU,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA+C;IACnE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA0C;IAC1E,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAU;IACtC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAU;IACtC,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,iBAAiB,CAAiB;IAC1C,OAAO,CAAC,UAAU,CAAqC;IACvD,OAAO,CAAC,aAAa,CAAC,CAAmB;gBAE7B,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,6BAA6B;IAU5E,IAAI,KAAK,IAAI,YAAY,GAAG,SAAS,CAEpC;IAEK,IAAI;IACR;;OAEG;IACH,MAAM,EAAE,MAAM;IAwCV,KAAK;IAWX,OAAO,CAAC,QAAQ;CAGjB"}
@@ -5,7 +5,12 @@ import { ClientServicesHost } from '../services';
5
5
  export type CreateSessionParams = {
6
6
  appPort: RpcPort;
7
7
  systemPort: RpcPort;
8
- shellPort: RpcPort;
8
+ shellPort?: RpcPort;
9
+ };
10
+ export type WorkerRuntimeCallbacks = {
11
+ acquireLock: () => Promise<void>;
12
+ releaseLock: () => void;
13
+ onReset: () => Promise<void>;
9
14
  };
10
15
  /**
11
16
  * Runtime for the shared worker.
@@ -14,13 +19,15 @@ export type CreateSessionParams = {
14
19
  */
15
20
  export declare class WorkerRuntime {
16
21
  private readonly _configProvider;
22
+ private readonly _acquireLock;
23
+ private readonly _releaseLock;
17
24
  private readonly _transportFactory;
18
25
  private readonly _ready;
19
26
  private readonly _sessions;
20
27
  private readonly _clientServices;
21
28
  private _sessionForNetworking?;
22
29
  private _config;
23
- constructor(_configProvider: () => MaybePromise<Config>);
30
+ constructor(_configProvider: () => MaybePromise<Config>, { acquireLock, releaseLock, onReset }: WorkerRuntimeCallbacks);
24
31
  get host(): ClientServicesHost;
25
32
  start(): Promise<void>;
26
33
  stop(): Promise<void>;
@@ -29,7 +36,7 @@ export declare class WorkerRuntime {
29
36
  */
30
37
  createSession({ appPort, systemPort, shellPort }: CreateSessionParams): Promise<void>;
31
38
  /**
32
- * Selects one of the existing session fro WebRTC networking.
39
+ * Selects one of the existing session for WebRTC networking.
33
40
  */
34
41
  private _reconnectWebrtc;
35
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"worker-runtime.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/vault/worker-runtime.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAK3C,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAG/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGjD,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF;;;;GAIG;AACH,qBAAa,aAAa;IAQZ,OAAO,CAAC,QAAQ,CAAC,eAAe;IAP5C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAyC;IAC3E,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;IAC3D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA4B;IACtD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAsB;IACtD,OAAO,CAAC,qBAAqB,CAAC,CAAgB;IAC9C,OAAO,CAAC,OAAO,CAAU;gBAEI,eAAe,EAAE,MAAM,YAAY,CAAC,MAAM,CAAC;IAUxE,IAAI,IAAI,uBAEP;IAEK,KAAK;IAsBL,IAAI;IAKV;;OAEG;IACG,aAAa,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,mBAAmB;IAqB3E;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAoBzB"}
1
+ {"version":3,"file":"worker-runtime.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/vault/worker-runtime.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAK3C,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAG/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGjD,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B,CAAC;AAEF;;;;GAIG;AACH,qBAAa,aAAa;IAWtB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAVlC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IACnD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAa;IAC1C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAyC;IAC3E,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;IAC3D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA4B;IACtD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAsB;IACtD,OAAO,CAAC,qBAAqB,CAAC,CAAgB;IAC9C,OAAO,CAAC,OAAO,CAAU;gBAGN,eAAe,EAAE,MAAM,YAAY,CAAC,MAAM,CAAC,EAC5D,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,sBAAsB;IAW/D,IAAI,IAAI,uBAEP;IAEK,KAAK;IAuBL,IAAI;IAMV;;OAEG;IACG,aAAa,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,mBAAmB;IA0B3E;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAoBzB"}
@@ -7,7 +7,7 @@ export type WorkerSessionParams = {
7
7
  serviceHost: ClientServicesHost;
8
8
  systemPort: RpcPort;
9
9
  appPort: RpcPort;
10
- shellPort: RpcPort;
10
+ shellPort?: RpcPort;
11
11
  readySignal: Trigger<Error | undefined>;
12
12
  };
13
13
  /**
@@ -15,7 +15,7 @@ export type WorkerSessionParams = {
15
15
  */
16
16
  export declare class WorkerSession {
17
17
  private readonly _clientRpc;
18
- private readonly _shellClientRpc;
18
+ private readonly _shellClientRpc?;
19
19
  private readonly _iframeRpc;
20
20
  private readonly _startTrigger;
21
21
  private readonly _serviceHost;
@@ -1 +1 @@
1
- {"version":3,"file":"worker-session.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/vault/worker-session.ts"],"names":[],"mappings":"AAIA,OAAO,EAAgB,OAAO,EAAE,MAAM,aAAa,CAAC;AASpD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAyC,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAqB,MAAM,YAAY,CAAC;AAEzD,OAAO,EAAE,KAAK,kBAAkB,EAA+C,MAAM,aAAa,CAAC;AAEnG,MAAM,MAAM,mBAAmB,GAAG;IAChC,WAAW,EAAE,kBAAkB,CAAC;IAChC,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC;CACzC,CAAC;AAEF;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAC7C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAClD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoC;IAC/D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiB;IAC/C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAqB;IAElD,SAAgB,OAAO,iBAAsB,QAAQ,IAAI,CAAC,EAAI;IAGvD,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,aAAa,CAAC,EAAE,aAAa,CAAC;gBAEzB,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,mBAAmB;IAgEvF,IAAI;IAeJ,KAAK;YAYG,eAAe;IAQ7B,OAAO,CAAC,kBAAkB;CAO3B"}
1
+ {"version":3,"file":"worker-session.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/vault/worker-session.ts"],"names":[],"mappings":"AAIA,OAAO,EAAgB,OAAO,EAAE,MAAM,aAAa,CAAC;AASpD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAyC,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAqB,MAAM,YAAY,CAAC;AAEzD,OAAO,EAAE,KAAK,kBAAkB,EAA+C,MAAM,aAAa,CAAC;AAEnG,MAAM,MAAM,mBAAmB,GAAG;IAChC,WAAW,EAAE,kBAAkB,CAAC;IAChC,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IAEjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC;CACzC,CAAC;AAEF;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAC7C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAkB;IACnD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoC;IAC/D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiB;IAC/C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAqB;IAElD,SAAgB,OAAO,iBAAsB,QAAQ,IAAI,CAAC,EAAI;IAGvD,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,aAAa,CAAC,EAAE,aAAa,CAAC;gBAEzB,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,mBAAmB;IAkEvF,IAAI;IAeJ,KAAK;YAYG,eAAe;IAQ7B,OAAO,CAAC,kBAAkB;CAO3B"}
@@ -1,2 +1,2 @@
1
- export declare const DXOS_VERSION = "0.3.11-main.bd26370";
1
+ export declare const DXOS_VERSION = "0.3.11-main.c244d7e";
2
2
  //# sourceMappingURL=version.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/client-services",
3
- "version": "0.3.11-main.bd26370",
3
+ "version": "0.3.11-main.c244d7e",
4
4
  "description": "DXOS client services implementation",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -22,44 +22,44 @@
22
22
  ],
23
23
  "dependencies": {
24
24
  "platform": "^1.3.6",
25
- "@dxos/async": "0.3.11-main.bd26370",
26
- "@dxos/client-protocol": "0.3.11-main.bd26370",
27
- "@dxos/codec-protobuf": "0.3.11-main.bd26370",
28
- "@dxos/context": "0.3.11-main.bd26370",
29
- "@dxos/config": "0.3.11-main.bd26370",
30
- "@dxos/credentials": "0.3.11-main.bd26370",
31
- "@dxos/crypto": "0.3.11-main.bd26370",
32
- "@dxos/document-model": "0.3.11-main.bd26370",
33
- "@dxos/echo-pipeline": "0.3.11-main.bd26370",
34
- "@dxos/debug": "0.3.11-main.bd26370",
35
- "@dxos/echo-db": "0.3.11-main.bd26370",
36
- "@dxos/echo-schema": "0.3.11-main.bd26370",
37
- "@dxos/feed-store": "0.3.11-main.bd26370",
38
- "@dxos/invariant": "0.3.11-main.bd26370",
39
- "@dxos/keyring": "0.3.11-main.bd26370",
40
- "@dxos/keys": "0.3.11-main.bd26370",
41
- "@dxos/log": "0.3.11-main.bd26370",
42
- "@dxos/messaging": "0.3.11-main.bd26370",
43
- "@dxos/model-factory": "0.3.11-main.bd26370",
44
- "@dxos/lock-file": "0.3.11-main.bd26370",
45
- "@dxos/node-std": "0.3.11-main.bd26370",
46
- "@dxos/protocols": "0.3.11-main.bd26370",
47
- "@dxos/random-access-storage": "0.3.11-main.bd26370",
48
- "@dxos/network-manager": "0.3.11-main.bd26370",
49
- "@dxos/rpc": "0.3.11-main.bd26370",
50
- "@dxos/teleport-extension-gossip": "0.3.11-main.bd26370",
51
- "@dxos/teleport": "0.3.11-main.bd26370",
52
- "@dxos/teleport-extension-object-sync": "0.3.11-main.bd26370",
53
- "@dxos/timeframe": "0.3.11-main.bd26370",
54
- "@dxos/text-model": "0.3.11-main.bd26370",
55
- "@dxos/tracing": "0.3.11-main.bd26370",
56
- "@dxos/util": "0.3.11-main.bd26370",
57
- "@dxos/websocket-rpc": "0.3.11-main.bd26370"
25
+ "@dxos/async": "0.3.11-main.c244d7e",
26
+ "@dxos/client-protocol": "0.3.11-main.c244d7e",
27
+ "@dxos/codec-protobuf": "0.3.11-main.c244d7e",
28
+ "@dxos/context": "0.3.11-main.c244d7e",
29
+ "@dxos/credentials": "0.3.11-main.c244d7e",
30
+ "@dxos/crypto": "0.3.11-main.c244d7e",
31
+ "@dxos/config": "0.3.11-main.c244d7e",
32
+ "@dxos/debug": "0.3.11-main.c244d7e",
33
+ "@dxos/document-model": "0.3.11-main.c244d7e",
34
+ "@dxos/echo-db": "0.3.11-main.c244d7e",
35
+ "@dxos/echo-pipeline": "0.3.11-main.c244d7e",
36
+ "@dxos/feed-store": "0.3.11-main.c244d7e",
37
+ "@dxos/echo-schema": "0.3.11-main.c244d7e",
38
+ "@dxos/invariant": "0.3.11-main.c244d7e",
39
+ "@dxos/keyring": "0.3.11-main.c244d7e",
40
+ "@dxos/lock-file": "0.3.11-main.c244d7e",
41
+ "@dxos/log": "0.3.11-main.c244d7e",
42
+ "@dxos/keys": "0.3.11-main.c244d7e",
43
+ "@dxos/messaging": "0.3.11-main.c244d7e",
44
+ "@dxos/model-factory": "0.3.11-main.c244d7e",
45
+ "@dxos/network-manager": "0.3.11-main.c244d7e",
46
+ "@dxos/protocols": "0.3.11-main.c244d7e",
47
+ "@dxos/random-access-storage": "0.3.11-main.c244d7e",
48
+ "@dxos/rpc": "0.3.11-main.c244d7e",
49
+ "@dxos/teleport": "0.3.11-main.c244d7e",
50
+ "@dxos/node-std": "0.3.11-main.c244d7e",
51
+ "@dxos/teleport-extension-gossip": "0.3.11-main.c244d7e",
52
+ "@dxos/teleport-extension-object-sync": "0.3.11-main.c244d7e",
53
+ "@dxos/text-model": "0.3.11-main.c244d7e",
54
+ "@dxos/timeframe": "0.3.11-main.c244d7e",
55
+ "@dxos/tracing": "0.3.11-main.c244d7e",
56
+ "@dxos/util": "0.3.11-main.c244d7e",
57
+ "@dxos/websocket-rpc": "0.3.11-main.c244d7e"
58
58
  },
59
59
  "devDependencies": {
60
60
  "@types/platform": "^1.3.4",
61
61
  "@types/readable-stream": "^2.3.9",
62
- "@dxos/signal": "0.3.11-main.bd26370"
62
+ "@dxos/signal": "0.3.11-main.c244d7e"
63
63
  },
64
64
  "publishConfig": {
65
65
  "access": "public"
@@ -44,7 +44,7 @@ describe('IdentityService', () => {
44
44
  });
45
45
 
46
46
  test('creates a new identity with a display name', async () => {
47
- const identity = await identityService.createIdentity({ displayName: 'Example' });
47
+ const identity = await identityService.createIdentity({ profile: { displayName: 'Example' } });
48
48
 
49
49
  expect(identity.identityKey).to.be.instanceof(PublicKey);
50
50
  expect(identity.spaceKey).to.be.instanceof(PublicKey);
@@ -8,6 +8,7 @@ import { todo } from '@dxos/debug';
8
8
  import { invariant } from '@dxos/invariant';
9
9
  import { type Keyring } from '@dxos/keyring';
10
10
  import {
11
+ type CreateIdentityRequest,
11
12
  type Identity,
12
13
  type IdentityService,
13
14
  type QueryIdentityResponse,
@@ -18,16 +19,18 @@ import { type Presentation, type ProfileDocument } from '@dxos/protocols/proto/d
18
19
 
19
20
  import { type CreateIdentityOptions, type IdentityManager } from './identity-manager';
20
21
 
22
+ const CREATE_PROFILE_WITH_AUTOMERGE_DEFAULT = true;
23
+
21
24
  export class IdentityServiceImpl implements IdentityService {
22
25
  constructor(
23
- private readonly _createIdentity: (params?: CreateIdentityOptions) => Promise<Identity>,
26
+ private readonly _createIdentity: (params: CreateIdentityOptions, useAutomerge: boolean) => Promise<Identity>,
24
27
  private readonly _identityManager: IdentityManager,
25
28
  private readonly _keyring: Keyring,
26
29
  private readonly _onProfileUpdate?: (profile: ProfileDocument | undefined) => Promise<void>,
27
30
  ) {}
28
31
 
29
- async createIdentity(request: ProfileDocument): Promise<Identity> {
30
- await this._createIdentity(request);
32
+ async createIdentity(request: CreateIdentityRequest): Promise<Identity> {
33
+ await this._createIdentity(request.profile ?? {}, request.useAutomerge ?? CREATE_PROFILE_WITH_AUTOMERGE_DEFAULT);
31
34
  return this._getIdentity()!;
32
35
  }
33
36
 
@@ -321,7 +321,7 @@ export class InvitationsHandler {
321
321
 
322
322
  // 5. Success.
323
323
  log('admitted by host', { ...protocol.toJSON() });
324
- setState({ ...result, state: Invitation.State.SUCCESS });
324
+ setState({ ...result, target: invitation.target, state: Invitation.State.SUCCESS });
325
325
  log.trace('dxos.sdk.invitations-handler.guest.onOpen', trace.end({ id: traceId }));
326
326
  } catch (err: any) {
327
327
  if (err instanceof TimeoutError) {
@@ -8,7 +8,7 @@ import { type Config } from '@dxos/config';
8
8
  import { Context } from '@dxos/context';
9
9
  import { DocumentModel } from '@dxos/document-model';
10
10
  import { DataServiceImpl } from '@dxos/echo-pipeline';
11
- import { type TypedObject, base } from '@dxos/echo-schema';
11
+ import { type TypedObject, base, getRawDoc } from '@dxos/echo-schema';
12
12
  import { invariant } from '@dxos/invariant';
13
13
  import { PublicKey } from '@dxos/keys';
14
14
  import { log } from '@dxos/log';
@@ -28,7 +28,7 @@ import { ServiceContext } from './service-context';
28
28
  import { ServiceRegistry } from './service-registry';
29
29
  import { DevicesServiceImpl } from '../devices';
30
30
  import { DevtoolsServiceImpl, DevtoolsHostEvents } from '../devtools';
31
- import { type CreateIdentityOptions, IdentityServiceImpl } from '../identity';
31
+ import { IdentityServiceImpl, type CreateIdentityOptions } from '../identity';
32
32
  import { InvitationsServiceImpl } from '../invitations';
33
33
  import { Lock, type ResourceLock } from '../locks';
34
34
  import { LoggingServiceImpl } from '../logging';
@@ -260,7 +260,7 @@ export class ClientServicesHost {
260
260
  SystemService: this._systemService,
261
261
 
262
262
  IdentityService: new IdentityServiceImpl(
263
- (params) => this._createIdentity(params),
263
+ (params, useAutomerge) => this._createIdentity(params, useAutomerge),
264
264
  this._serviceContext.identityManager,
265
265
  this._serviceContext.keyring,
266
266
  (profile) => this._serviceContext.broadcastProfileUpdate(profile),
@@ -351,21 +351,36 @@ export class ClientServicesHost {
351
351
  await this._callbacks?.onReset?.();
352
352
  }
353
353
 
354
- private async _createIdentity(params?: CreateIdentityOptions) {
354
+ private async _createIdentity(params: CreateIdentityOptions, useAutomerge: boolean) {
355
355
  const identity = await this._serviceContext.createIdentity(params);
356
356
 
357
357
  // Setup default space.
358
358
  await this._serviceContext.initialized.wait();
359
359
  const space = await this._serviceContext.dataSpaceManager!.createSpace();
360
- const obj: TypedObject = new Properties(undefined, { automerge: false });
360
+
361
+ const obj: TypedObject = new Properties(undefined, { automerge: useAutomerge });
361
362
  obj[defaultKey] = identity.identityKey.toHex();
362
- await this._serviceRegistry.services.DataService!.write({
363
- spaceKey: space.key,
364
- batch: {
365
- objects: [createGenesisMutationFromTypedObject(obj)],
366
- },
367
- });
368
- await this._serviceRegistry.services.DataService!.flush({ spaceKey: space.key });
363
+
364
+ if (!useAutomerge) {
365
+ await this._serviceRegistry.services.DataService!.write({
366
+ spaceKey: space.key,
367
+ batch: {
368
+ objects: [createGenesisMutationFromTypedObject(obj)],
369
+ },
370
+ });
371
+ await this._serviceRegistry.services.DataService!.flush({ spaceKey: space.key });
372
+ } else {
373
+ // TODO(dmaretskyi): Refactor this.
374
+ const automergeIndex = space.automergeSpaceState.rootUrl;
375
+ invariant(automergeIndex);
376
+ const document = await this._serviceContext.automergeHost.repo.find(automergeIndex as any);
377
+ await document.whenReady();
378
+
379
+ document.change((doc: any) => {
380
+ doc.objects ??= {};
381
+ doc.objects[obj[base]._id] = getRawDoc(obj).handle.docSync();
382
+ });
383
+ }
369
384
 
370
385
  return identity;
371
386
  }
@@ -30,6 +30,8 @@ export type IFrameHostRuntimeParams = {
30
30
  *
31
31
  * Holds a lock over the client services such that only one instance can run at a time.
32
32
  * This should only be used when SharedWorker is not available.
33
+ *
34
+ * @deprecated
33
35
  */
34
36
  export class IFrameHostRuntime {
35
37
  private readonly _configProvider: IFrameHostRuntimeParams['config'];
@@ -3,7 +3,7 @@
3
3
  //
4
4
 
5
5
  export * from './iframe-host-runtime';
6
- export * from './iframe-proxy-runtime';
6
+ export * from './shared-worker-connection';
7
7
  export * from './shell-runtime';
8
8
  export * from './worker-runtime';
9
9
  export * from './worker-session';
@@ -20,18 +20,21 @@ import { getAsyncValue, type MaybePromise, type Provider } from '@dxos/util';
20
20
  import { ShellRuntimeImpl } from './shell-runtime';
21
21
 
22
22
  // NOTE: Keep as RpcPorts to avoid dependency on @dxos/rpc-tunnel so we don't depend on browser-specific apis.
23
- export type IFrameProxyRuntimeParams = {
23
+ export type SharedWorkerConnectionOptions = {
24
24
  config: Config | Provider<MaybePromise<Config>>;
25
25
  systemPort: RpcPort;
26
+ /**
27
+ * @deprecated Only used with iframes.
28
+ */
26
29
  shellPort?: RpcPort;
27
30
  };
28
31
 
29
32
  /**
30
33
  * Manages the client connection to the shared worker.
31
34
  */
32
- export class IFrameProxyRuntime {
35
+ export class SharedWorkerConnection {
33
36
  private readonly _id = String(Math.floor(Math.random() * 1000000));
34
- private readonly _configProvider: IFrameProxyRuntimeParams['config'];
37
+ private readonly _configProvider: SharedWorkerConnectionOptions['config'];
35
38
  private readonly _systemPort: RpcPort;
36
39
  private readonly _shellPort?: RpcPort;
37
40
  private _release = new Trigger();
@@ -40,7 +43,7 @@ export class IFrameProxyRuntime {
40
43
  private _systemRpc!: ProtoRpcPeer<WorkerServiceBundle>;
41
44
  private _shellRuntime?: ShellRuntimeImpl;
42
45
 
43
- constructor({ config, systemPort, shellPort }: IFrameProxyRuntimeParams) {
46
+ constructor({ config, systemPort, shellPort }: SharedWorkerConnectionOptions) {
44
47
  this._configProvider = config;
45
48
  this._systemPort = systemPort;
46
49
  this._shellPort = shellPort;
@@ -54,7 +57,12 @@ export class IFrameProxyRuntime {
54
57
  return this._shellRuntime;
55
58
  }
56
59
 
57
- async open(origin: string) {
60
+ async open(
61
+ /**
62
+ * @deprecated Only used with iframes.
63
+ */
64
+ origin: string,
65
+ ) {
58
66
  this._config = await getAsyncValue(this._configProvider);
59
67
 
60
68
  this._transportService = new SimplePeerTransportService({
@@ -96,7 +104,11 @@ export class IFrameProxyRuntime {
96
104
  async close() {
97
105
  this._release.wake();
98
106
  await this._shellRuntime?.close();
99
- await this._systemRpc.rpc.WorkerService.stop();
107
+ try {
108
+ await this._systemRpc.rpc.WorkerService.stop();
109
+ } catch {
110
+ // If this fails, the worker is probably already gone.
111
+ }
100
112
  await this._systemRpc.close();
101
113
  }
102
114