@dxos/client-services 0.1.56-main.5ff23aa → 0.1.56-main.6293c6e

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 (50) hide show
  1. package/dist/lib/browser/{chunk-MM7EFAUT.mjs → chunk-BD23GURE.mjs} +428 -366
  2. package/dist/lib/browser/chunk-BD23GURE.mjs.map +7 -0
  3. package/dist/lib/browser/index.mjs +20 -23
  4. package/dist/lib/browser/index.mjs.map +3 -3
  5. package/dist/lib/browser/meta.json +1 -1
  6. package/dist/lib/browser/packlets/testing/index.mjs +31 -46
  7. package/dist/lib/browser/packlets/testing/index.mjs.map +3 -3
  8. package/dist/lib/node/index.cjs +443 -384
  9. package/dist/lib/node/index.cjs.map +3 -3
  10. package/dist/lib/node/meta.json +1 -1
  11. package/dist/lib/node/packlets/testing/index.cjs +443 -392
  12. package/dist/lib/node/packlets/testing/index.cjs.map +3 -3
  13. package/dist/types/src/packlets/identity/identity-manager.d.ts +7 -1
  14. package/dist/types/src/packlets/identity/identity-manager.d.ts.map +1 -1
  15. package/dist/types/src/packlets/identity/identity-service.d.ts +7 -3
  16. package/dist/types/src/packlets/identity/identity-service.d.ts.map +1 -1
  17. package/dist/types/src/packlets/identity/identity.d.ts +3 -2
  18. package/dist/types/src/packlets/identity/identity.d.ts.map +1 -1
  19. package/dist/types/src/packlets/services/client-rpc-server.d.ts.map +1 -1
  20. package/dist/types/src/packlets/services/service-context.d.ts +2 -1
  21. package/dist/types/src/packlets/services/service-context.d.ts.map +1 -1
  22. package/dist/types/src/packlets/services/service-host.d.ts +3 -1
  23. package/dist/types/src/packlets/services/service-host.d.ts.map +1 -1
  24. package/dist/types/src/packlets/spaces/data-space.d.ts.map +1 -1
  25. package/dist/types/src/packlets/vault/iframe-host-runtime.d.ts.map +1 -1
  26. package/dist/types/src/packlets/vault/worker-runtime.d.ts.map +1 -1
  27. package/dist/types/src/version.d.ts +1 -1
  28. package/package.json +34 -33
  29. package/src/packlets/devices/devices-service.test.ts +2 -1
  30. package/src/packlets/identity/identity-manager.test.ts +15 -3
  31. package/src/packlets/identity/identity-manager.ts +27 -6
  32. package/src/packlets/identity/identity-service.test.ts +17 -2
  33. package/src/packlets/identity/identity-service.ts +23 -14
  34. package/src/packlets/identity/identity.test.ts +7 -6
  35. package/src/packlets/identity/identity.ts +8 -3
  36. package/src/packlets/invitations/device-invitation-protocol.test.ts +2 -1
  37. package/src/packlets/network/network-service.test.ts +2 -1
  38. package/src/packlets/services/client-rpc-server.ts +4 -4
  39. package/src/packlets/services/service-context.test.ts +59 -0
  40. package/src/packlets/services/service-context.ts +14 -6
  41. package/src/packlets/services/service-host.test.ts +6 -5
  42. package/src/packlets/services/service-host.ts +26 -10
  43. package/src/packlets/services/service-registry.test.ts +2 -1
  44. package/src/packlets/spaces/data-space.ts +17 -5
  45. package/src/packlets/spaces/spaces-service.test.ts +2 -1
  46. package/src/packlets/testing/test-builder.ts +1 -1
  47. package/src/packlets/vault/iframe-host-runtime.ts +2 -1
  48. package/src/packlets/vault/worker-runtime.ts +2 -1
  49. package/src/version.ts +1 -1
  50. package/dist/lib/browser/chunk-MM7EFAUT.mjs.map +0 -7
@@ -1,9 +1,11 @@
1
1
  import { Event } from '@dxos/async';
2
+ import { Context } from '@dxos/context';
2
3
  import { MetadataStore, SpaceManager } from '@dxos/echo-pipeline';
3
4
  import { FeedStore } from '@dxos/feed-store';
4
5
  import { Keyring } from '@dxos/keyring';
5
6
  import { PublicKey } from '@dxos/keys';
6
7
  import { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
8
+ import { ProfileDocument } from '@dxos/protocols/proto/dxos/halo/credentials';
7
9
  import { Timeframe } from '@dxos/timeframe';
8
10
  import { Identity } from './identity';
9
11
  export type JoinIdentityParams = {
@@ -31,13 +33,17 @@ export declare class IdentityManager {
31
33
  private _identity?;
32
34
  constructor(_metadataStore: MetadataStore, _keyring: Keyring, _feedStore: FeedStore<FeedMessage>, _spaceManager: SpaceManager);
33
35
  get identity(): Identity | undefined;
34
- open(): Promise<void>;
36
+ open(ctx: Context): Promise<void>;
35
37
  close(): Promise<void>;
36
38
  createIdentity({ displayName }?: CreateIdentityOptions): Promise<Identity>;
37
39
  /**
38
40
  * Accept an existing identity. Expects it's device key to be authorized (now or later).
39
41
  */
40
42
  acceptIdentity(params: JoinIdentityParams): Promise<Identity>;
43
+ /**
44
+ * Update the profile document of an existing identity.
45
+ */
46
+ updateProfile(profile: ProfileDocument): Promise<void>;
41
47
  private _constructIdentity;
42
48
  private _constructSpace;
43
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"identity-manager.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/identity/identity-manager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAiB,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAGvC,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAGnE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAI5C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAQtC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,WAAW,EAAE,SAAS,CAAC;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,YAAY,EAAE,SAAS,CAAC;IACxB,kBAAkB,EAAE,SAAS,CAAC;IAC9B,cAAc,EAAE,SAAS,CAAC;IAC1B,WAAW,EAAE,SAAS,CAAC;IAEvB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,SAAS,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAGF,qBAAa,eAAe;IAQxB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAVhC,QAAQ,CAAC,WAAW,cAAe;IAEnC,OAAO,CAAC,SAAS,CAAC,CAAW;gBAKV,cAAc,EAAE,aAAa,EAC7B,QAAQ,EAAE,OAAO,EACjB,UAAU,EAAE,SAAS,CAAC,WAAW,CAAC,EAClC,aAAa,EAAE,YAAY;IAG9C,IAAI,QAAQ,yBAEX;IAEK,IAAI;IAoBJ,KAAK;IAIL,cAAc,CAAC,EAAE,WAAW,EAAE,GAAE,qBAA0B;IAmEhE;;OAEG;IACG,cAAc,CAAC,MAAM,EAAE,kBAAkB;YA+BjC,kBAAkB;YA2ClB,eAAe;CAc9B"}
1
+ {"version":3,"file":"identity-manager.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/identity/identity-manager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAiB,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAGvC,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAEnE,OAAO,EAAgB,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAC5F,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAK5C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAQtC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,WAAW,EAAE,SAAS,CAAC;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,YAAY,EAAE,SAAS,CAAC;IACxB,kBAAkB,EAAE,SAAS,CAAC;IAC9B,cAAc,EAAE,SAAS,CAAC;IAC1B,WAAW,EAAE,SAAS,CAAC;IAEvB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,SAAS,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAGF,qBACa,eAAe;IAQxB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAVhC,QAAQ,CAAC,WAAW,cAAe;IAEnC,OAAO,CAAC,SAAS,CAAC,CAAW;gBAKV,cAAc,EAAE,aAAa,EAC7B,QAAQ,EAAE,OAAO,EACjB,UAAU,EAAE,SAAS,CAAC,WAAW,CAAC,EAClC,aAAa,EAAE,YAAY;IAG9C,IAAI,QAAQ,yBAEX;IAGK,IAAI,CAAC,GAAG,EAAE,OAAO;IAoBjB,KAAK;IAIL,cAAc,CAAC,EAAE,WAAW,EAAE,GAAE,qBAA0B;IAmEhE;;OAEG;IACG,cAAc,CAAC,MAAM,EAAE,kBAAkB;IA+B/C;;OAEG;IACG,aAAa,CAAC,OAAO,EAAE,eAAe;YAc9B,kBAAkB;YA2ClB,eAAe;CAc9B"}
@@ -1,14 +1,18 @@
1
1
  import { Stream } from '@dxos/codec-protobuf';
2
+ import { Keyring } from '@dxos/keyring';
2
3
  import { Identity, IdentityService, QueryIdentityResponse, RecoverIdentityRequest, SignPresentationRequest } from '@dxos/protocols/proto/dxos/client/services';
3
4
  import { Presentation, ProfileDocument } from '@dxos/protocols/proto/dxos/halo/credentials';
4
- import { ServiceContext } from '../services';
5
+ import { CreateIdentityOptions, IdentityManager } from './identity-manager';
5
6
  export declare class IdentityServiceImpl implements IdentityService {
6
- private readonly _serviceContext;
7
- constructor(_serviceContext: ServiceContext);
7
+ private readonly _createIdentity;
8
+ private readonly _identityManager;
9
+ private readonly _keyring;
10
+ constructor(_createIdentity: (params?: CreateIdentityOptions) => Promise<Identity>, _identityManager: IdentityManager, _keyring: Keyring);
8
11
  createIdentity(request: ProfileDocument): Promise<Identity>;
9
12
  recoverIdentity(request: RecoverIdentityRequest): Promise<Identity>;
10
13
  queryIdentity(): Stream<QueryIdentityResponse>;
11
14
  private _getIdentity;
15
+ updateProfile(profile: ProfileDocument): Promise<Identity>;
12
16
  signPresentation({ presentation, nonce }: SignPresentationRequest): Promise<Presentation>;
13
17
  }
14
18
  //# sourceMappingURL=identity-service.d.ts.map
@@ -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,EACL,QAAQ,EACR,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAE5F,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,qBAAa,mBAAoB,YAAW,eAAe;IAE7C,OAAO,CAAC,QAAQ,CAAC,eAAe;gBAAf,eAAe,EAAE,cAAc;IAEtD,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC;IAM3D,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIzE,aAAa,IAAI,MAAM,CAAC,qBAAqB,CAAC;IAS9C,OAAO,CAAC,YAAY;IAYd,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,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EACL,QAAQ,EACR,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAE5F,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE5E,qBAAa,mBAAoB,YAAW,eAAe;IAEvD,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAFR,eAAe,EAAE,CAAC,MAAM,CAAC,EAAE,qBAAqB,KAAK,OAAO,CAAC,QAAQ,CAAC,EACtE,gBAAgB,EAAE,eAAe,EACjC,QAAQ,EAAE,OAAO;IAG9B,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;IAM1D,gBAAgB,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,uBAAuB,GAAG,OAAO,CAAC,YAAY,CAAC;CAWhG"}
@@ -1,4 +1,5 @@
1
1
  import { Event } from '@dxos/async';
2
+ import { Context } from '@dxos/context';
2
3
  import { CredentialSigner } from '@dxos/credentials';
3
4
  import { Signer } from '@dxos/crypto';
4
5
  import { Space } from '@dxos/echo-pipeline';
@@ -27,8 +28,8 @@ export declare class Identity {
27
28
  readonly stateUpdate: Event<void>;
28
29
  constructor({ space, signer, identityKey, deviceKey }: IdentityParams);
29
30
  get authorizedDeviceKeys(): ComplexSet<PublicKey>;
30
- open(): Promise<void>;
31
- close(): Promise<void>;
31
+ open(ctx: Context): Promise<void>;
32
+ close(ctx: Context): Promise<void>;
32
33
  ready(): Promise<void>;
33
34
  get profileDocument(): ProfileDocument | undefined;
34
35
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/identity/identity.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAEL,gBAAgB,EAIjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAG5C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAGvC,OAAO,EAAgB,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAC5F,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAE5D,MAAM,MAAM,cAAc,GAAG;IAC3B,WAAW,EAAE,SAAS,CAAC;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,KAAK,CAAC;CACd,CAAC;AAEF;;GAEG;AACH,qBAAa,QAAQ;IACnB,SAAgB,KAAK,EAAE,KAAK,CAAC;IAC7B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAqB;IACzD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAsB;IAC3D,SAAgB,YAAY,EAAE,yBAAyB,CAAC;IAExD,SAAgB,WAAW,EAAE,SAAS,CAAC;IACvC,SAAgB,SAAS,EAAE,SAAS,CAAC;IAErC,SAAgB,WAAW,cAAe;gBAE9B,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,cAAc;IAyBrE,IAAI,oBAAoB,IAAI,UAAU,CAAC,SAAS,CAAC,CAEhD;IAEK,IAAI;IAMJ,KAAK;IAOL,KAAK;IAMX,IAAI,eAAe,IAAI,eAAe,GAAG,SAAS,CAEjD;IAED;;OAEG;IACH,IAAI,eAAe,mDAElB;IAED,IAAI,YAAY,cAEf;IAED,IAAI,kBAAkB,cAErB;IAED,IAAI,qBAAqB,4EAExB;IAED,uBAAuB,IAAI,sBAAsB;IAQjD;;;OAGG;IACH,2BAA2B,IAAI,gBAAgB;IAS/C;;OAEG;IACH,yBAAyB,IAAI,gBAAgB;IAIvC,WAAW,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,EAAE,sBAAsB;CA2CrF"}
1
+ {"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/identity/identity.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAEL,gBAAgB,EAIjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAG5C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAGvC,OAAO,EAAgB,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAC5F,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAErF,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAE5D,MAAM,MAAM,cAAc,GAAG;IAC3B,WAAW,EAAE,SAAS,CAAC;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,KAAK,CAAC;CACd,CAAC;AAEF;;GAEG;AACH,qBACa,QAAQ;IACnB,SAAgB,KAAK,EAAE,KAAK,CAAC;IAC7B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAqB;IACzD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAsB;IAC3D,SAAgB,YAAY,EAAE,yBAAyB,CAAC;IAExD,SAAgB,WAAW,EAAE,SAAS,CAAC;IACvC,SAAgB,SAAS,EAAE,SAAS,CAAC;IAErC,SAAgB,WAAW,cAAe;gBAE9B,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,cAAc;IAyBrE,IAAI,oBAAoB,IAAI,UAAU,CAAC,SAAS,CAAC,CAEhD;IAGK,IAAI,CAAC,GAAG,EAAE,OAAO;IAOjB,KAAK,CAAC,GAAG,EAAE,OAAO;IAOlB,KAAK;IAMX,IAAI,eAAe,IAAI,eAAe,GAAG,SAAS,CAEjD;IAED;;OAEG;IACH,IAAI,eAAe,mDAElB;IAED,IAAI,YAAY,cAEf;IAED,IAAI,kBAAkB,cAErB;IAED,IAAI,qBAAqB,4EAExB;IAED,uBAAuB,IAAI,sBAAsB;IAQjD;;;OAGG;IACH,2BAA2B,IAAI,gBAAgB;IAS/C;;OAEG;IACH,yBAAyB,IAAI,gBAAgB;IAIvC,WAAW,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,EAAE,sBAAsB;CA2CrF"}
@@ -1 +1 @@
1
- {"version":3,"file":"client-rpc-server.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/services/client-rpc-server.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,GAAG,EAAkB,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAEnE,OAAO,EAA4B,cAAc,EAAE,MAAM,WAAW,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,MAAM,qBAAqB,GAAG;IAClC,eAAe,EAAE,eAAe,CAAC,cAAc,CAAC,CAAC;IACjD,UAAU,CAAC,EAAE,CACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,GAAG,EACX,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,YAAY,CAAC,GAAG,CAAC,KACxD,OAAO,CAAC,GAAG,CAAC,CAAC;IAClB,YAAY,CAAC,EAAE,CACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,GAAG,EACX,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,MAAM,CAAC,GAAG,CAAC,KAClD,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;CAChC,GAAG,IAAI,CAAC,cAAc,EAAE,aAAa,GAAG,eAAe,CAAC,CAAC;AAE1D,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkC;IACnE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAU;IACnC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0C;IACxE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAsC;IAClE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAwC;gBAE1D,MAAM,EAAE,qBAAqB;IAgCnC,IAAI;IAIJ,KAAK;IAIX,OAAO,CAAC,kBAAkB;CAiB3B"}
1
+ {"version":3,"file":"client-rpc-server.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/services/client-rpc-server.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,GAAG,EAAkB,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAEnE,OAAO,EAA4B,cAAc,EAAiB,MAAM,WAAW,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,MAAM,qBAAqB,GAAG;IAClC,eAAe,EAAE,eAAe,CAAC,cAAc,CAAC,CAAC;IACjD,UAAU,CAAC,EAAE,CACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,GAAG,EACX,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,YAAY,CAAC,GAAG,CAAC,KACxD,OAAO,CAAC,GAAG,CAAC,CAAC;IAClB,YAAY,CAAC,EAAE,CACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,GAAG,EACX,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,MAAM,CAAC,GAAG,CAAC,KAClD,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;CAChC,GAAG,IAAI,CAAC,cAAc,EAAE,aAAa,GAAG,eAAe,CAAC,CAAC;AAE1D,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkC;IACnE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAU;IACnC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0C;IACxE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAsC;IAClE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAwC;gBAE1D,MAAM,EAAE,qBAAqB;IAgCnC,IAAI;IAIJ,KAAK;IAIX,OAAO,CAAC,kBAAkB;CAiB3B"}
@@ -1,4 +1,5 @@
1
1
  import { Trigger } from '@dxos/async';
2
+ import { Context } from '@dxos/context';
2
3
  import { MetadataStore, SpaceManager, DataServiceSubscriptions, SnapshotStore } from '@dxos/echo-pipeline';
3
4
  import { FeedStore } from '@dxos/feed-store';
4
5
  import { Keyring } from '@dxos/keyring';
@@ -38,7 +39,7 @@ export declare class ServiceContext {
38
39
  private _deviceSpaceSync?;
39
40
  private readonly _instanceId;
40
41
  constructor(storage: Storage, networkManager: NetworkManager, signalManager: SignalManager, modelFactory: ModelFactory);
41
- open(): Promise<void>;
42
+ open(ctx: Context): Promise<void>;
42
43
  close(): Promise<void>;
43
44
  createIdentity(params?: CreateIdentityOptions): Promise<import("../identity").Identity>;
44
45
  getInvitationHandler(invitation: Partial<Invitation> & Pick<Invitation, 'kind'>): InvitationProtocol;
@@ -1 +1 @@
1
- {"version":3,"file":"service-context.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/services/service-context.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAGtC,OAAO,EAEL,aAAa,EACb,YAAY,EACZ,wBAAwB,EACxB,aAAa,EACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAe,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE1D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAE,UAAU,EAAE,MAAM,4CAA4C,CAAC;AACxE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAExE,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAEjE,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAsB,MAAM,aAAa,CAAC;AACzF,OAAO,EAEL,kBAAkB,EAClB,kBAAkB,EAEnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAkB,MAAM,WAAW,CAAC;AAE7D;;GAEG;AAEH,qBAAa,cAAc;aA6BP,OAAO,EAAE,OAAO;aAChB,cAAc,EAAE,cAAc;aAC9B,aAAa,EAAE,aAAa;aAC5B,YAAY,EAAE,YAAY;IA/B5C,SAAgB,WAAW,gBAAiB;IAC5C,SAAgB,wBAAwB,2BAAkC;IAC1E,SAAgB,aAAa,EAAE,aAAa,CAAC;IAC7C;;OAEG;IACH,SAAgB,aAAa,EAAE,aAAa,CAAC;IAC7C,SAAgB,SAAS,EAAE,SAAS,CAAC;IACrC,SAAgB,SAAS,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;IAClD,SAAgB,OAAO,EAAE,OAAO,CAAC;IACjC,SAAgB,YAAY,EAAE,YAAY,CAAC;IAC3C,SAAgB,eAAe,EAAE,eAAe,CAAC;IACjD,SAAgB,WAAW,EAAE,kBAAkB,CAAC;IAGzC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAE3C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAG9B;IAEJ,OAAO,CAAC,gBAAgB,CAAC,CAAsB;IAE/C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8B;gBAIxC,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,cAAc,EAC9B,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,YAAY;IAiDtC,IAAI;IAgBJ,KAAK;IAeL,cAAc,CAAC,MAAM,GAAE,qBAA0B;IAOvD,oBAAoB,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,kBAAkB;YAMtF,eAAe;YAOf,oBAAoB;YASpB,WAAW;CA6D1B"}
1
+ {"version":3,"file":"service-context.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/services/service-context.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,OAAO,EAEL,aAAa,EACb,YAAY,EACZ,wBAAwB,EACxB,aAAa,EACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAe,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE1D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAE,UAAU,EAAE,MAAM,4CAA4C,CAAC;AACxE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAExE,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAIjE,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAsB,MAAM,aAAa,CAAC;AACzF,OAAO,EAEL,kBAAkB,EAClB,kBAAkB,EAEnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAkB,MAAM,WAAW,CAAC;AAE7D;;GAEG;AAGH,qBAEa,cAAc;aA6BP,OAAO,EAAE,OAAO;aAChB,cAAc,EAAE,cAAc;aAC9B,aAAa,EAAE,aAAa;aAC5B,YAAY,EAAE,YAAY;IA/B5C,SAAgB,WAAW,gBAAiB;IAC5C,SAAgB,wBAAwB,2BAAkC;IAC1E,SAAgB,aAAa,EAAE,aAAa,CAAC;IAC7C;;OAEG;IACH,SAAgB,aAAa,EAAE,aAAa,CAAC;IAC7C,SAAgB,SAAS,EAAE,SAAS,CAAC;IACrC,SAAgB,SAAS,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;IAClD,SAAgB,OAAO,EAAE,OAAO,CAAC;IACjC,SAAgB,YAAY,EAAE,YAAY,CAAC;IAC3C,SAAgB,eAAe,EAAE,eAAe,CAAC;IACjD,SAAgB,WAAW,EAAE,kBAAkB,CAAC;IAGzC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAE3C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAG9B;IAEJ,OAAO,CAAC,gBAAgB,CAAC,CAAsB;IAE/C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8B;gBAIxC,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,cAAc,EAC9B,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,YAAY;IAkDtC,IAAI,CAAC,GAAG,EAAE,OAAO;IAgBjB,KAAK;IAeL,cAAc,CAAC,MAAM,GAAE,qBAA0B;IAOvD,oBAAoB,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,kBAAkB;YAMtF,eAAe;YAOf,oBAAoB;YAUpB,WAAW;CA6D1B"}
@@ -1,5 +1,6 @@
1
1
  import { ClientServices } from '@dxos/client-protocol';
2
2
  import { Config } from '@dxos/config';
3
+ import { Context } from '@dxos/context';
3
4
  import { SignalManager } from '@dxos/messaging';
4
5
  import { ModelFactory } from '@dxos/model-factory';
5
6
  import { TransportFactory } from '@dxos/network-manager';
@@ -37,6 +38,7 @@ export declare class ClientServicesHost {
37
38
  private readonly _serviceRegistry;
38
39
  private readonly _systemService;
39
40
  private readonly _loggingService;
41
+ private readonly _tracingService;
40
42
  private _config?;
41
43
  private readonly _statusUpdate;
42
44
  private readonly _modelFactory;
@@ -60,7 +62,7 @@ export declare class ClientServicesHost {
60
62
  * Can only be called once.
61
63
  */
62
64
  initialize({ config, ...options }: InitializeOptions): void;
63
- open(): Promise<void>;
65
+ open(ctx: Context): Promise<void>;
64
66
  close(): Promise<void>;
65
67
  reset(): Promise<void>;
66
68
  }
@@ -1 +1 @@
1
- {"version":3,"file":"service-host.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/services/service-host.ts"],"names":[],"mappings":"AAKA,OAAO,EAAuB,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAMtC,OAAO,EAAE,aAAa,EAA0B,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAgD,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGvG,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AActD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,yBAAyB,oBAErC,CAAC;AAEF,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,qBAAa,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;IAErD,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;IAEjD,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,KAAK,CAAS;gBAEV,EACV,MAAM,EACN,YAA0C,EAC1C,gBAAgB,EAChB,aAAa,EACb,OAAO,EAEP,OAAO,EACP,SAAS,GACV,GAAE,wBAA6B;IA+ChC,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;IAgC9C,IAAI;IAuEJ,KAAK;IAeL,KAAK;CAWZ"}
1
+ {"version":3,"file":"service-host.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/services/service-host.ts"],"names":[],"mappings":"AAKA,OAAO,EAAuB,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAMxC,OAAO,EAAE,aAAa,EAA0B,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAgD,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGvG,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAetD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,yBAAyB,oBAErC,CAAC;AAEF,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;IAEjD,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;IAgDhC,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;IA6EjB,KAAK;IAeL,KAAK;CAWZ"}
@@ -1 +1 @@
1
- {"version":3,"file":"data-space.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/spaces/data-space.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data-space.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/spaces/data-space.ts"],"names":[],"mappings":"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"}
@@ -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,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAItC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAiB,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAMjD,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,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAKtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAiB,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAMjD,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 +1 @@
1
- {"version":3,"file":"worker-runtime.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/vault/worker-runtime.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAItC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAIjD,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;IAUtB,OAAO,CAAC,QAAQ,CAAC,eAAe;IATlC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAqC;IACvE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;IAC3D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4B;IACrD,OAAO,CAAC,qBAAqB,CAAC,CAAgB;IAC9C,OAAO,CAAC,eAAe,CAAsB;IAC7C,OAAO,CAAC,OAAO,CAAU;gBAIN,eAAe,EAAE,MAAM,YAAY,CAAC,MAAM,CAAC;IAK9D,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,MAAM,EAAE,MAAM,cAAc,CAAC;AAKtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAIjD,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;IAUtB,OAAO,CAAC,QAAQ,CAAC,eAAe;IATlC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAqC;IACvE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;IAC3D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4B;IACrD,OAAO,CAAC,qBAAqB,CAAC,CAAgB;IAC9C,OAAO,CAAC,eAAe,CAAsB;IAC7C,OAAO,CAAC,OAAO,CAAU;gBAIN,eAAe,EAAE,MAAM,YAAY,CAAC,MAAM,CAAC;IAK9D,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,2 +1,2 @@
1
- export declare const DXOS_VERSION = "0.1.56-main.5ff23aa";
1
+ export declare const DXOS_VERSION = "0.1.56-main.6293c6e";
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.1.56-main.5ff23aa",
3
+ "version": "0.1.56-main.6293c6e",
4
4
  "description": "DXOS client services implementation",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -21,41 +21,42 @@
21
21
  "src"
22
22
  ],
23
23
  "dependencies": {
24
- "@dxos/async": "0.1.56-main.5ff23aa",
25
- "@dxos/client-protocol": "0.1.56-main.5ff23aa",
26
- "@dxos/codec-protobuf": "0.1.56-main.5ff23aa",
27
- "@dxos/config": "0.1.56-main.5ff23aa",
28
- "@dxos/context": "0.1.56-main.5ff23aa",
29
- "@dxos/credentials": "0.1.56-main.5ff23aa",
30
- "@dxos/crypto": "0.1.56-main.5ff23aa",
31
- "@dxos/debug": "0.1.56-main.5ff23aa",
32
- "@dxos/document-model": "0.1.56-main.5ff23aa",
33
- "@dxos/echo-db": "0.1.56-main.5ff23aa",
34
- "@dxos/echo-pipeline": "0.1.56-main.5ff23aa",
35
- "@dxos/errors": "0.1.56-main.5ff23aa",
36
- "@dxos/feed-store": "0.1.56-main.5ff23aa",
37
- "@dxos/invariant": "0.1.56-main.5ff23aa",
38
- "@dxos/keyring": "0.1.56-main.5ff23aa",
39
- "@dxos/keys": "0.1.56-main.5ff23aa",
40
- "@dxos/lock-file": "0.1.56-main.5ff23aa",
41
- "@dxos/log": "0.1.56-main.5ff23aa",
42
- "@dxos/messaging": "0.1.56-main.5ff23aa",
43
- "@dxos/model-factory": "0.1.56-main.5ff23aa",
44
- "@dxos/network-manager": "0.1.56-main.5ff23aa",
45
- "@dxos/node-std": "0.1.56-main.5ff23aa",
46
- "@dxos/protocols": "0.1.56-main.5ff23aa",
47
- "@dxos/random-access-storage": "0.1.56-main.5ff23aa",
48
- "@dxos/rpc": "0.1.56-main.5ff23aa",
49
- "@dxos/teleport": "0.1.56-main.5ff23aa",
50
- "@dxos/teleport-extension-gossip": "0.1.56-main.5ff23aa",
51
- "@dxos/teleport-extension-object-sync": "0.1.56-main.5ff23aa",
52
- "@dxos/text-model": "0.1.56-main.5ff23aa",
53
- "@dxos/timeframe": "0.1.56-main.5ff23aa",
54
- "@dxos/util": "0.1.56-main.5ff23aa"
24
+ "@dxos/async": "0.1.56-main.6293c6e",
25
+ "@dxos/client-protocol": "0.1.56-main.6293c6e",
26
+ "@dxos/codec-protobuf": "0.1.56-main.6293c6e",
27
+ "@dxos/config": "0.1.56-main.6293c6e",
28
+ "@dxos/context": "0.1.56-main.6293c6e",
29
+ "@dxos/credentials": "0.1.56-main.6293c6e",
30
+ "@dxos/crypto": "0.1.56-main.6293c6e",
31
+ "@dxos/debug": "0.1.56-main.6293c6e",
32
+ "@dxos/document-model": "0.1.56-main.6293c6e",
33
+ "@dxos/echo-db": "0.1.56-main.6293c6e",
34
+ "@dxos/echo-pipeline": "0.1.56-main.6293c6e",
35
+ "@dxos/errors": "0.1.56-main.6293c6e",
36
+ "@dxos/feed-store": "0.1.56-main.6293c6e",
37
+ "@dxos/invariant": "0.1.56-main.6293c6e",
38
+ "@dxos/keyring": "0.1.56-main.6293c6e",
39
+ "@dxos/keys": "0.1.56-main.6293c6e",
40
+ "@dxos/lock-file": "0.1.56-main.6293c6e",
41
+ "@dxos/log": "0.1.56-main.6293c6e",
42
+ "@dxos/messaging": "0.1.56-main.6293c6e",
43
+ "@dxos/model-factory": "0.1.56-main.6293c6e",
44
+ "@dxos/network-manager": "0.1.56-main.6293c6e",
45
+ "@dxos/node-std": "0.1.56-main.6293c6e",
46
+ "@dxos/protocols": "0.1.56-main.6293c6e",
47
+ "@dxos/random-access-storage": "0.1.56-main.6293c6e",
48
+ "@dxos/rpc": "0.1.56-main.6293c6e",
49
+ "@dxos/teleport": "0.1.56-main.6293c6e",
50
+ "@dxos/teleport-extension-gossip": "0.1.56-main.6293c6e",
51
+ "@dxos/teleport-extension-object-sync": "0.1.56-main.6293c6e",
52
+ "@dxos/text-model": "0.1.56-main.6293c6e",
53
+ "@dxos/timeframe": "0.1.56-main.6293c6e",
54
+ "@dxos/tracing": "0.1.56-main.6293c6e",
55
+ "@dxos/util": "0.1.56-main.6293c6e"
55
56
  },
56
57
  "devDependencies": {
57
58
  "@types/readable-stream": "^2.3.9",
58
- "@dxos/signal": "0.1.56-main.5ff23aa"
59
+ "@dxos/signal": "0.1.56-main.6293c6e"
59
60
  },
60
61
  "publishConfig": {
61
62
  "access": "public"
@@ -5,6 +5,7 @@
5
5
  import { expect } from 'chai';
6
6
 
7
7
  import { Trigger } from '@dxos/async';
8
+ import { Context } from '@dxos/context';
8
9
  import { DevicesService, Device } from '@dxos/protocols/proto/dxos/client/services';
9
10
  import { afterEach, afterTest, beforeEach, describe, test } from '@dxos/test';
10
11
 
@@ -18,7 +19,7 @@ describe('DevicesService', () => {
18
19
 
19
20
  beforeEach(async () => {
20
21
  serviceContext = createServiceContext();
21
- await serviceContext.open();
22
+ await serviceContext.open(new Context());
22
23
  devicesService = new DevicesServiceImpl(serviceContext.identityManager);
23
24
  });
24
25
 
@@ -4,6 +4,7 @@
4
4
 
5
5
  import { expect } from 'chai';
6
6
 
7
+ import { Context } from '@dxos/context';
7
8
  import { valueEncoding, MetadataStore, SpaceManager, AuthStatus, SnapshotStore } from '@dxos/echo-pipeline';
8
9
  import { FeedFactory, FeedStore } from '@dxos/feed-store';
9
10
  import { Keyring } from '@dxos/keyring';
@@ -64,7 +65,7 @@ describe('identity/identity-manager', () => {
64
65
 
65
66
  test('creates identity', async () => {
66
67
  const { identityManager } = await setupPeer();
67
- await identityManager.open();
68
+ await identityManager.open(new Context());
68
69
  afterTest(() => identityManager.close());
69
70
 
70
71
  const identity = await identityManager.createIdentity();
@@ -75,13 +76,13 @@ describe('identity/identity-manager', () => {
75
76
  const storage = createStorage({ type: StorageType.RAM });
76
77
 
77
78
  const peer1 = await setupPeer({ storage });
78
- await peer1.identityManager.open();
79
+ await peer1.identityManager.open(new Context());
79
80
  const identity1 = await peer1.identityManager.createIdentity();
80
81
  await peer1.identityManager.close();
81
82
  await peer1.feedStore.close();
82
83
 
83
84
  const peer2 = await setupPeer({ storage });
84
- await peer2.identityManager.open();
85
+ await peer2.identityManager.open(new Context());
85
86
 
86
87
  expect(peer2.identityManager.identity).to.exist;
87
88
  expect(peer2.identityManager.identity!.identityKey).to.deep.eq(identity1.identityKey);
@@ -90,6 +91,17 @@ describe('identity/identity-manager', () => {
90
91
  // TODO(dmaretskyi): Check that identity is "alive" (space is working and can write mutations).
91
92
  });
92
93
 
94
+ test('update profile', async () => {
95
+ const { identityManager } = await setupPeer();
96
+ await identityManager.open(new Context());
97
+ afterTest(() => identityManager.close());
98
+
99
+ const identity = await identityManager.createIdentity();
100
+ expect(identity.profileDocument?.displayName).to.be.undefined;
101
+ await identityManager.updateProfile({ displayName: 'Example' });
102
+ expect(identity.profileDocument?.displayName).to.equal('Example');
103
+ });
104
+
93
105
  test('admit another device', async () => {
94
106
  const signalContext = new MemorySignalManagerContext();
95
107
 
@@ -3,6 +3,7 @@
3
3
  //
4
4
 
5
5
  import { Event } from '@dxos/async';
6
+ import { Context } from '@dxos/context';
6
7
  import { createCredentialSignerWithKey, CredentialGenerator } from '@dxos/credentials';
7
8
  import { MetadataStore, SpaceManager, SwarmIdentity } from '@dxos/echo-pipeline';
8
9
  import { FeedStore } from '@dxos/feed-store';
@@ -13,8 +14,9 @@ import { log } from '@dxos/log';
13
14
  import { trace } from '@dxos/protocols';
14
15
  import { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
15
16
  import { IdentityRecord, SpaceMetadata } from '@dxos/protocols/proto/dxos/echo/metadata';
16
- import { AdmittedFeed } from '@dxos/protocols/proto/dxos/halo/credentials';
17
+ import { AdmittedFeed, ProfileDocument } from '@dxos/protocols/proto/dxos/halo/credentials';
17
18
  import { Timeframe } from '@dxos/timeframe';
19
+ import { trace as Trace } from '@dxos/tracing';
18
20
  import { deferFunction } from '@dxos/util';
19
21
 
20
22
  import { createAuthProvider } from './authenticator';
@@ -46,6 +48,7 @@ export type CreateIdentityOptions = {
46
48
  };
47
49
 
48
50
  // TODO(dmaretskyi): Rename: represents the peer's state machine.
51
+ @Trace.resource()
49
52
  export class IdentityManager {
50
53
  readonly stateUpdate = new Event();
51
54
 
@@ -64,7 +67,8 @@ export class IdentityManager {
64
67
  return this._identity;
65
68
  }
66
69
 
67
- async open() {
70
+ @Trace.span()
71
+ async open(ctx: Context) {
68
72
  const traceId = PublicKey.random().toHex();
69
73
  log.trace('dxos.halo.identity-manager.open', trace.begin({ id: traceId }));
70
74
  await this._metadataStore.load();
@@ -73,7 +77,7 @@ export class IdentityManager {
73
77
  log('identity record', { identityRecord });
74
78
  if (identityRecord) {
75
79
  this._identity = await this._constructIdentity(identityRecord);
76
- await this._identity.open();
80
+ await this._identity.open(ctx);
77
81
  await this._identity.ready();
78
82
  log.trace('dxos.halo.identity', {
79
83
  identityKey: identityRecord.identityKey,
@@ -85,7 +89,7 @@ export class IdentityManager {
85
89
  }
86
90
 
87
91
  async close() {
88
- await this._identity?.close();
92
+ await this._identity?.close(new Context());
89
93
  }
90
94
 
91
95
  async createIdentity({ displayName }: CreateIdentityOptions = {}) {
@@ -105,7 +109,7 @@ export class IdentityManager {
105
109
  };
106
110
 
107
111
  const identity = await this._constructIdentity(identityRecord);
108
- await identity.open();
112
+ await identity.open(new Context());
109
113
 
110
114
  {
111
115
  const generator = new CredentialGenerator(this._keyring, identityRecord.identityKey, identityRecord.deviceKey);
@@ -175,7 +179,7 @@ export class IdentityManager {
175
179
  };
176
180
  const identity = await this._constructIdentity(identityRecord);
177
181
 
178
- await identity.open();
182
+ await identity.open(new Context());
179
183
  this._identity = identity;
180
184
  await this._metadataStore.setIdentityRecord(identityRecord);
181
185
  await this._identity.ready();
@@ -189,6 +193,23 @@ export class IdentityManager {
189
193
  return identity;
190
194
  }
191
195
 
196
+ /**
197
+ * Update the profile document of an existing identity.
198
+ */
199
+ async updateProfile(profile: ProfileDocument) {
200
+ invariant(this._identity, 'Identity not initialized.');
201
+ // TODO(wittjosiah): Use CredentialGenerator.
202
+ const credential = await this._identity.getIdentityCredentialSigner().createCredential({
203
+ subject: this._identity.identityKey,
204
+ assertion: {
205
+ '@type': 'dxos.halo.credentials.IdentityProfile',
206
+ profile,
207
+ },
208
+ });
209
+ const receipt = await this._identity.controlPipeline.writer.write({ credential: { credential } });
210
+ await this._identity.controlPipeline.state.waitUntilTimeframe(new Timeframe([[receipt.feedKey, receipt.seq]]));
211
+ }
212
+
192
213
  private async _constructIdentity(identityRecord: IdentityRecord) {
193
214
  invariant(!this._identity);
194
215
  log('constructing identity', { identityRecord });
@@ -6,6 +6,7 @@ import chai, { expect } from 'chai';
6
6
  import chaiAsPromised from 'chai-as-promised';
7
7
 
8
8
  import { Trigger } from '@dxos/async';
9
+ import { Context } from '@dxos/context';
9
10
  import { PublicKey } from '@dxos/keys';
10
11
  import { Identity, IdentityService } from '@dxos/protocols/proto/dxos/client/services';
11
12
  import { afterEach, afterTest, beforeEach, describe, test } from '@dxos/test';
@@ -22,8 +23,12 @@ describe('IdentityService', () => {
22
23
 
23
24
  beforeEach(async () => {
24
25
  serviceContext = createServiceContext();
25
- await serviceContext.open();
26
- identityService = new IdentityServiceImpl(serviceContext);
26
+ await serviceContext.open(new Context());
27
+ identityService = new IdentityServiceImpl(
28
+ (options) => serviceContext.createIdentity(options),
29
+ serviceContext.identityManager,
30
+ serviceContext.keyring,
31
+ );
27
32
  });
28
33
 
29
34
  afterEach(async () => {
@@ -54,6 +59,16 @@ describe('IdentityService', () => {
54
59
 
55
60
  describe.skip('recoverIdentity', () => {});
56
61
 
62
+ describe('updateProfile', () => {
63
+ test('updates profile', async () => {
64
+ const identity = await identityService.createIdentity({});
65
+ expect(identity.profile?.displayName).to.be.undefined;
66
+
67
+ const updatedIdentity = await identityService.updateProfile({ displayName: 'Example' });
68
+ expect(updatedIdentity.profile?.displayName).to.equal('Example');
69
+ });
70
+ });
71
+
57
72
  describe('queryIdentity', () => {
58
73
  test('returns undefined if no identity is available', async () => {
59
74
  const query = identityService.queryIdentity();
@@ -6,6 +6,7 @@ import { Stream } from '@dxos/codec-protobuf';
6
6
  import { signPresentation } from '@dxos/credentials';
7
7
  import { todo } from '@dxos/debug';
8
8
  import { invariant } from '@dxos/invariant';
9
+ import { Keyring } from '@dxos/keyring';
9
10
  import {
10
11
  Identity,
11
12
  IdentityService,
@@ -15,15 +16,17 @@ import {
15
16
  } from '@dxos/protocols/proto/dxos/client/services';
16
17
  import { Presentation, ProfileDocument } from '@dxos/protocols/proto/dxos/halo/credentials';
17
18
 
18
- import { ServiceContext } from '../services';
19
+ import { CreateIdentityOptions, IdentityManager } from './identity-manager';
19
20
 
20
21
  export class IdentityServiceImpl implements IdentityService {
21
- // TODO(wittjosiah): Remove dependency on service context.
22
- constructor(private readonly _serviceContext: ServiceContext) {}
22
+ constructor(
23
+ private readonly _createIdentity: (params?: CreateIdentityOptions) => Promise<Identity>,
24
+ private readonly _identityManager: IdentityManager,
25
+ private readonly _keyring: Keyring,
26
+ ) {}
23
27
 
24
28
  async createIdentity(request: ProfileDocument): Promise<Identity> {
25
- await this._serviceContext.createIdentity(request);
26
-
29
+ await this._createIdentity(request);
27
30
  return this._getIdentity()!;
28
31
  }
29
32
 
@@ -36,30 +39,36 @@ export class IdentityServiceImpl implements IdentityService {
36
39
  const emitNext = () => next({ identity: this._getIdentity() });
37
40
 
38
41
  emitNext();
39
- return this._serviceContext.identityManager.stateUpdate.on(emitNext);
42
+ return this._identityManager.stateUpdate.on(emitNext);
40
43
  });
41
44
  }
42
45
 
43
46
  private _getIdentity(): Identity | undefined {
44
- if (!this._serviceContext.identityManager.identity) {
47
+ if (!this._identityManager.identity) {
45
48
  return undefined;
46
49
  }
47
50
 
48
51
  return {
49
- identityKey: this._serviceContext.identityManager.identity.identityKey,
50
- spaceKey: this._serviceContext.identityManager.identity.space.key,
51
- profile: this._serviceContext.identityManager.identity.profileDocument,
52
+ identityKey: this._identityManager.identity.identityKey,
53
+ spaceKey: this._identityManager.identity.space.key,
54
+ profile: this._identityManager.identity.profileDocument,
52
55
  };
53
56
  }
54
57
 
58
+ async updateProfile(profile: ProfileDocument): Promise<Identity> {
59
+ invariant(this._identityManager.identity, 'Identity not initialized.');
60
+ await this._identityManager.updateProfile(profile);
61
+ return this._getIdentity()!;
62
+ }
63
+
55
64
  async signPresentation({ presentation, nonce }: SignPresentationRequest): Promise<Presentation> {
56
- invariant(this._serviceContext.identityManager.identity, 'Identity not initialized.');
65
+ invariant(this._identityManager.identity, 'Identity not initialized.');
57
66
 
58
67
  return await signPresentation({
59
68
  presentation,
60
- signer: this._serviceContext.keyring,
61
- signerKey: this._serviceContext.identityManager.identity.deviceKey,
62
- chain: this._serviceContext.identityManager.identity.deviceCredentialChain,
69
+ signer: this._keyring,
70
+ signerKey: this._identityManager.identity.deviceKey,
71
+ chain: this._identityManager.identity.deviceCredentialChain,
63
72
  nonce,
64
73
  });
65
74
  }
@@ -4,6 +4,7 @@
4
4
 
5
5
  import expect from 'expect';
6
6
 
7
+ import { Context } from '@dxos/context';
7
8
  import { CredentialGenerator, verifyCredential } from '@dxos/credentials';
8
9
  import {
9
10
  MetadataStore,
@@ -106,8 +107,8 @@ describe('identity/identity', () => {
106
107
  space,
107
108
  });
108
109
 
109
- await identity.open();
110
- afterTest(() => identity.close());
110
+ await identity.open(new Context());
111
+ afterTest(() => identity.close(new Context()));
111
112
 
112
113
  //
113
114
  // Identity genesis
@@ -219,8 +220,8 @@ describe('identity/identity', () => {
219
220
  space,
220
221
  }));
221
222
 
222
- await identity.open();
223
- afterTest(() => identity.close());
223
+ await identity.open(new Context());
224
+ afterTest(() => identity.close(new Context()));
224
225
 
225
226
  //
226
227
  // Identity genesis
@@ -310,8 +311,8 @@ describe('identity/identity', () => {
310
311
  space,
311
312
  }));
312
313
 
313
- await identity.open();
314
- afterTest(() => identity.close());
314
+ await identity.open(new Context());
315
+ afterTest(() => identity.close(new Context()));
315
316
  }
316
317
 
317
318
  //