@dxos/client-services 0.1.48 → 0.1.49-next.7ec9d52

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 (36) hide show
  1. package/dist/lib/browser/{chunk-KN2NX2RP.mjs → chunk-YLH4UYUT.mjs} +84 -74
  2. package/dist/lib/browser/chunk-YLH4UYUT.mjs.map +7 -0
  3. package/dist/lib/browser/index.mjs +1 -1
  4. package/dist/lib/browser/meta.json +1 -1
  5. package/dist/lib/browser/packlets/testing/index.mjs +18 -5
  6. package/dist/lib/browser/packlets/testing/index.mjs.map +3 -3
  7. package/dist/lib/node/index.cjs +90 -80
  8. package/dist/lib/node/index.cjs.map +4 -4
  9. package/dist/lib/node/meta.json +1 -1
  10. package/dist/lib/node/packlets/testing/index.cjs +104 -81
  11. package/dist/lib/node/packlets/testing/index.cjs.map +4 -4
  12. package/dist/types/src/packlets/devtools/devtools.d.ts +2 -1
  13. package/dist/types/src/packlets/devtools/devtools.d.ts.map +1 -1
  14. package/dist/types/src/packlets/devtools/metadata.d.ts +7 -0
  15. package/dist/types/src/packlets/devtools/metadata.d.ts.map +1 -0
  16. package/dist/types/src/packlets/services/service-context.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/spaces/data-space.d.ts +1 -1
  19. package/dist/types/src/packlets/spaces/notarization-plugin.d.ts.map +1 -1
  20. package/dist/types/src/packlets/spaces/spaces-service.d.ts +0 -3
  21. package/dist/types/src/packlets/spaces/spaces-service.d.ts.map +1 -1
  22. package/dist/types/src/packlets/testing/test-builder.d.ts +10 -3
  23. package/dist/types/src/packlets/testing/test-builder.d.ts.map +1 -1
  24. package/dist/types/src/packlets/vault/vault-resource-lock.d.ts.map +1 -1
  25. package/package.json +30 -30
  26. package/src/packlets/devtools/devtools.ts +6 -0
  27. package/src/packlets/devtools/feeds.ts +1 -1
  28. package/src/packlets/devtools/metadata.ts +14 -0
  29. package/src/packlets/services/service-context.ts +1 -2
  30. package/src/packlets/services/service-host.ts +1 -0
  31. package/src/packlets/spaces/data-space-manager.test.ts +43 -0
  32. package/src/packlets/spaces/notarization-plugin.ts +7 -3
  33. package/src/packlets/spaces/spaces-service.ts +0 -3
  34. package/src/packlets/testing/test-builder.ts +23 -4
  35. package/src/packlets/vault/vault-resource-lock.ts +1 -0
  36. package/dist/lib/browser/chunk-KN2NX2RP.mjs.map +0 -7
@@ -2,7 +2,7 @@ import { Event as AsyncEvent } from '@dxos/async';
2
2
  import { Stream } from '@dxos/codec-protobuf';
3
3
  import { Config } from '@dxos/config';
4
4
  import { ClearSnapshotsRequest, DevtoolsHost, // TODO(burdon): Rename DevtoolsService
5
- EnableDebugLoggingRequest, EnableDebugLoggingResponse, Event, GetConfigResponse, GetNetworkPeersRequest, GetNetworkPeersResponse, GetSpaceSnapshotRequest, GetSpaceSnapshotResponse, ResetStorageRequest, SaveSpaceSnapshotRequest, SaveSpaceSnapshotResponse, SubscribeToCredentialMessagesRequest, SubscribeToCredentialMessagesResponse, SubscribeToFeedBlocksRequest, SubscribeToFeedBlocksResponse, SubscribeToFeedsRequest, SubscribeToFeedsResponse, SubscribeToItemsRequest, SubscribeToItemsResponse, SubscribeToKeyringKeysRequest, SubscribeToKeyringKeysResponse, SubscribeToNetworkTopicsResponse, SubscribeToSpacesRequest, SubscribeToSpacesResponse, SubscribeToSignalStatusResponse, SignalResponse, SubscribeToSwarmInfoResponse, StorageInfo, GetSnapshotsResponse } from '@dxos/protocols/proto/dxos/devtools/host';
5
+ EnableDebugLoggingRequest, EnableDebugLoggingResponse, Event, GetConfigResponse, GetNetworkPeersRequest, GetNetworkPeersResponse, GetSpaceSnapshotRequest, GetSpaceSnapshotResponse, ResetStorageRequest, SaveSpaceSnapshotRequest, SaveSpaceSnapshotResponse, SubscribeToCredentialMessagesRequest, SubscribeToCredentialMessagesResponse, SubscribeToFeedBlocksRequest, SubscribeToFeedBlocksResponse, SubscribeToFeedsRequest, SubscribeToFeedsResponse, SubscribeToItemsRequest, SubscribeToItemsResponse, SubscribeToKeyringKeysRequest, SubscribeToKeyringKeysResponse, SubscribeToNetworkTopicsResponse, SubscribeToSpacesRequest, SubscribeToSpacesResponse, SubscribeToSignalStatusResponse, SignalResponse, SubscribeToSwarmInfoResponse, StorageInfo, GetSnapshotsResponse, SubscribeToMetadataResponse } from '@dxos/protocols/proto/dxos/devtools/host';
6
6
  import { ServiceContext } from '../services';
7
7
  export declare class DevtoolsHostEvents {
8
8
  readonly ready: AsyncEvent<void>;
@@ -39,5 +39,6 @@ export declare class DevtoolsServiceImpl implements DevtoolsHost {
39
39
  subscribeToSignalStatus(request: void): Stream<SubscribeToSignalStatusResponse>;
40
40
  subscribeToSignal(): Stream<SignalResponse>;
41
41
  subscribeToSwarmInfo(): Stream<SubscribeToSwarmInfoResponse>;
42
+ subscribeToMetadata(): Stream<SubscribeToMetadataResponse>;
42
43
  }
43
44
  //# sourceMappingURL=devtools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"devtools.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/devtools/devtools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"devtools.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/devtools/devtools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { Stream } from '@dxos/codec-protobuf';
2
+ import { SubscribeToMetadataResponse } from '@dxos/protocols/proto/dxos/devtools/host';
3
+ import { ServiceContext } from '../services';
4
+ export declare const subscribeToMetadata: ({ context }: {
5
+ context: ServiceContext;
6
+ }) => Stream<SubscribeToMetadataResponse>;
7
+ //# sourceMappingURL=metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/devtools/metadata.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,2BAA2B,EAAE,MAAM,0CAA0C,CAAC;AAEvF,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,eAAO,MAAM,mBAAmB;aAA4B,cAAc;yCAItE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"service-context.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/services/service-context.ts"],"names":[],"mappings":"AAMA,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;AAC1D,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;AAEtD,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;aAyBP,OAAO,EAAE,OAAO;aAChB,cAAc,EAAE,cAAc;aAC9B,aAAa,EAAE,aAAa;aAC5B,YAAY,EAAE,YAAY;IA3B5C,SAAgB,WAAW,gBAAiB;IAC5C,SAAgB,wBAAwB,2BAAkC;IAC1E,SAAgB,aAAa,EAAE,aAAa,CAAC;IAC7C,SAAgB,aAAa,EAAE,aAAa,CAAC;IAC7C,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,CAA0B;IAEnD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8B;gBAIxC,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,cAAc,EAC9B,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,YAAY;IA+CtC,IAAI;IAiBJ,KAAK;IAaL,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
+ {"version":3,"file":"service-context.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/services/service-context.ts"],"names":[],"mappings":"AAMA,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;AAC1D,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;AAEtD,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;aAyBP,OAAO,EAAE,OAAO;aAChB,cAAc,EAAE,cAAc;aAC9B,aAAa,EAAE,aAAa;aAC5B,YAAY,EAAE,YAAY;IA3B5C,SAAgB,WAAW,gBAAiB;IAC5C,SAAgB,wBAAwB,2BAAkC;IAC1E,SAAgB,aAAa,EAAE,aAAa,CAAC;IAC7C,SAAgB,aAAa,EAAE,aAAa,CAAC;IAC7C,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,CAA0B;IAEnD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8B;gBAIxC,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,cAAc,EAC9B,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,YAAY;IA+CtC,IAAI;IAiBJ,KAAK;IAaL,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 +1 @@
1
- {"version":3,"file":"service-host.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/services/service-host.ts"],"names":[],"mappings":"AAOA,OAAO,EAAuB,cAAc,EAA6B,MAAM,uBAAuB,CAAC;AACvG,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAItC,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;AAYtD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,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;CAClB,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,CAAoB;IACnD,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;IAE3B,eAAe,EAAG,cAAc,CAAC;IACjC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,KAAK,CAAS;gBAEV,EACV,MAAM,EACN,YAA0C,EAE1C,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,OAAO,EAEP,OAAO,GACR,GAAE,wBAA6B;IAgDhC,IAAI,MAAM,YAET;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;IA6B9C,IAAI;IAwEJ,KAAK;IAeL,KAAK;CAUZ"}
1
+ {"version":3,"file":"service-host.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/services/service-host.ts"],"names":[],"mappings":"AAOA,OAAO,EAAuB,cAAc,EAA6B,MAAM,uBAAuB,CAAC;AACvG,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAItC,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;AAYtD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,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;CAClB,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,CAAoB;IACnD,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;IAE3B,eAAe,EAAG,cAAc,CAAC;IACjC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,KAAK,CAAS;gBAEV,EACV,MAAM,EACN,YAA0C,EAE1C,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,OAAO,EAEP,OAAO,GACR,GAAE,wBAA6B;IAgDhC,IAAI,MAAM,YAET;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;IA6B9C,IAAI;IAyEJ,KAAK;IAeL,KAAK;CAUZ"}
@@ -63,7 +63,7 @@ export declare class DataSpace {
63
63
  get cache(): SpaceCache | undefined;
64
64
  open(): Promise<void>;
65
65
  close(): Promise<void>;
66
- postMessage(channel: string, message: any): Promise<void[]>;
66
+ postMessage(channel: string, message: any): Promise<void>;
67
67
  listen(channel: string, callback: (message: GossipMessage) => void): {
68
68
  unsubscribe: () => void;
69
69
  };
@@ -1 +1 @@
1
- {"version":3,"file":"notarization-plugin.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/spaces/notarization-plugin.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAmB,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAI9C,OAAO,EAAE,UAAU,EAAE,MAAM,6CAA6C,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,uDAAuD,CAAC;AAC7G,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAShE,MAAM,MAAM,cAAc,GAAG;IAC3B;;OAEG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd;;OAEG;IACH,WAAW,EAAE,UAAU,EAAE,CAAC;IAE1B;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,qBAAa,kBAAmB,YAAW,mBAAmB;IAC5D,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;IACtC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAe;IAEhD,OAAO,CAAC,OAAO,CAAqC;IACpD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA4C;IACxE,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA6C;IACnF,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAsD;IAE5F,IAAI;IAEJ,KAAK;IAIX;;OAEG;IACG,QAAQ,CAAC,EACb,GAAG,EAAE,KAAK,EACV,WAAW,EACX,OAAkC,EAClC,YAAoC,EACpC,YAAoC,GACrC,EAAE,cAAc;IA6EjB;;OAEG;IACG,OAAO,CAAC,UAAU,EAAE,UAAU;IASpC,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC;YAK1B,mBAAmB;IAOjC;;OAEG;YACW,WAAW;IAazB,eAAe;CAehB;AAED,MAAM,MAAM,mCAAmC,GAAG;IAChD,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,UAAU,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACzD,CAAC;AAEF,qBAAa,6BAA8B,SAAQ,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACrE,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,mCAAmC;cAWzD,WAAW,IAAI,OAAO,CAAC,QAAQ,CAAC;IAUjC,MAAM,CAAC,GAAG,EAAE,gBAAgB;IAK5B,OAAO,CAAC,GAAG,CAAC,EAAE,KAAK,GAAG,SAAS;CAI/C;AAED,KAAK,QAAQ,GAAG;IACd,mBAAmB,EAAE,mBAAmB,CAAC;CAC1C,CAAC"}
1
+ {"version":3,"file":"notarization-plugin.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/spaces/notarization-plugin.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAmB,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAI9C,OAAO,EAAE,UAAU,EAAE,MAAM,6CAA6C,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,uDAAuD,CAAC;AAC7G,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAWhE,MAAM,MAAM,cAAc,GAAG;IAC3B;;OAEG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd;;OAEG;IACH,WAAW,EAAE,UAAU,EAAE,CAAC;IAE1B;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,qBAAa,kBAAmB,YAAW,mBAAmB;IAC5D,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;IACtC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAe;IAEhD,OAAO,CAAC,OAAO,CAAqC;IACpD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA4C;IACxE,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA6C;IACnF,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAsD;IAE5F,IAAI;IAEJ,KAAK;IAIX;;OAEG;IACG,QAAQ,CAAC,EACb,GAAG,EAAE,KAAK,EACV,WAAW,EACX,OAAkC,EAClC,YAAoC,EACpC,YAAoC,GACrC,EAAE,cAAc;IA+EjB;;OAEG;IACG,OAAO,CAAC,UAAU,EAAE,UAAU;IASpC,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC;YAK1B,mBAAmB;IAOjC;;OAEG;YACW,WAAW;IAazB,eAAe;CAehB;AAED,MAAM,MAAM,mCAAmC,GAAG;IAChD,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,UAAU,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACzD,CAAC;AAEF,qBAAa,6BAA8B,SAAQ,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACrE,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,mCAAmC;cAWzD,WAAW,IAAI,OAAO,CAAC,QAAQ,CAAC;IAUjC,MAAM,CAAC,GAAG,EAAE,gBAAgB;IAK5B,OAAO,CAAC,GAAG,CAAC,EAAE,KAAK,GAAG,SAAS;CAI/C;AAED,KAAK,QAAQ,GAAG;IACd,mBAAmB,EAAE,mBAAmB,CAAC;CAC1C,CAAC"}
@@ -6,9 +6,6 @@ import { GossipMessage } from '@dxos/protocols/proto/dxos/mesh/teleport/gossip';
6
6
  import { Provider } from '@dxos/util';
7
7
  import { IdentityManager } from '../identity';
8
8
  import { DataSpaceManager } from './data-space-manager';
9
- /**
10
- *
11
- */
12
9
  export declare class SpacesServiceImpl implements SpacesService {
13
10
  private readonly _identityManager;
14
11
  private readonly _spaceManager;
@@ -1 +1 @@
1
- {"version":3,"file":"spaces-service.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/spaces/spaces-service.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,OAAO,EAAE,wBAAwB,EAAE,YAAY,EAAsB,MAAM,qBAAqB,CAAC;AAGjG,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,mBAAmB,EACnB,KAAK,EAEL,aAAa,EACb,wBAAwB,EACxB,kBAAkB,EAClB,uBAAuB,EACxB,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,6CAA6C,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAY,MAAM,YAAY,CAAC;AAEhD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAIxD;;GAEG;AACH,qBAAa,iBAAkB,YAAW,aAAa;IAEnD,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,yBAAyB;IAC1C,OAAO,CAAC,QAAQ,CAAC,oBAAoB;gBAHpB,gBAAgB,EAAE,eAAe,EACjC,aAAa,EAAE,YAAY,EAC3B,yBAAyB,EAAE,wBAAwB,EACnD,oBAAoB,EAAE,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAGtE,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC;IAS7B,WAAW,CAAC,OAAO,EAAE,kBAAkB;IAI7C,WAAW,IAAI,MAAM,CAAC,mBAAmB,CAAC;IAoDpC,WAAW,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,kBAAkB;IAMpE,iBAAiB,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,wBAAwB;IAajE,gBAAgB,CAAC,EAAE,QAAQ,EAAE,EAAE,uBAAuB,GAAG,MAAM,CAAC,UAAU,CAAC;IAcrE,gBAAgB,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,uBAAuB;IAOnE,WAAW,CAAC,EAAE,QAAQ,EAAE,EAAE,kBAAkB;IAMlD,OAAO,CAAC,eAAe;CAiCxB"}
1
+ {"version":3,"file":"spaces-service.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/spaces/spaces-service.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,OAAO,EAAE,wBAAwB,EAAE,YAAY,EAAsB,MAAM,qBAAqB,CAAC;AAGjG,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,mBAAmB,EACnB,KAAK,EAEL,aAAa,EACb,wBAAwB,EACxB,kBAAkB,EAClB,uBAAuB,EACxB,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,6CAA6C,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAY,MAAM,YAAY,CAAC;AAEhD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAIxD,qBAAa,iBAAkB,YAAW,aAAa;IAEnD,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,yBAAyB;IAC1C,OAAO,CAAC,QAAQ,CAAC,oBAAoB;gBAHpB,gBAAgB,EAAE,eAAe,EACjC,aAAa,EAAE,YAAY,EAC3B,yBAAyB,EAAE,wBAAwB,EACnD,oBAAoB,EAAE,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAGtE,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC;IAS7B,WAAW,CAAC,OAAO,EAAE,kBAAkB;IAI7C,WAAW,IAAI,MAAM,CAAC,mBAAmB,CAAC;IAoDpC,WAAW,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,kBAAkB;IAMpE,iBAAiB,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,wBAAwB;IAajE,gBAAgB,CAAC,EAAE,QAAQ,EAAE,EAAE,uBAAuB,GAAG,MAAM,CAAC,UAAU,CAAC;IAcrE,gBAAgB,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,uBAAuB;IAOnE,WAAW,CAAC,EAAE,QAAQ,EAAE,EAAE,kBAAkB;IAMlD,OAAO,CAAC,eAAe;CAiCxB"}
@@ -4,7 +4,7 @@ import { FeedStore } from '@dxos/feed-store';
4
4
  import { Keyring } from '@dxos/keyring';
5
5
  import { MemorySignalManagerContext } from '@dxos/messaging';
6
6
  import { NetworkManager } from '@dxos/network-manager';
7
- import { Storage } from '@dxos/random-access-storage';
7
+ import { Storage, StorageType } from '@dxos/random-access-storage';
8
8
  import { ClientServicesHost, ServiceContext } from '../services';
9
9
  import { SigningContext } from '../spaces';
10
10
  export declare const createServiceHost: (config: Config, signalManagerContext: MemorySignalManagerContext) => ClientServicesHost;
@@ -17,8 +17,13 @@ export declare const createIdentity: (peer: ServiceContext) => Promise<ServiceCo
17
17
  export declare const syncItemsLocal: (db1: DataPipeline, db2: DataPipeline) => Promise<void>;
18
18
  export declare class TestBuilder {
19
19
  readonly signalContext: MemorySignalManagerContext;
20
- createPeer(): TestPeer;
20
+ private readonly _ctx;
21
+ createPeer(peerOptions?: TestPeerOpts): TestPeer;
22
+ destroy(): Promise<void>;
21
23
  }
24
+ export type TestPeerOpts = {
25
+ storageType?: StorageType;
26
+ };
22
27
  export type TestPeerProps = {
23
28
  storage?: Storage;
24
29
  feedStore?: FeedStore<any>;
@@ -30,8 +35,9 @@ export type TestPeerProps = {
30
35
  };
31
36
  export declare class TestPeer {
32
37
  private readonly signalContext;
38
+ private readonly opts;
33
39
  private _props;
34
- constructor(signalContext: MemorySignalManagerContext);
40
+ constructor(signalContext: MemorySignalManagerContext, opts?: TestPeerOpts);
35
41
  get storage(): Storage;
36
42
  get keyring(): Keyring;
37
43
  get feedStore(): FeedStore<any>;
@@ -39,6 +45,7 @@ export declare class TestPeer {
39
45
  get snapshotStore(): SnapshotStore;
40
46
  get networkManager(): NetworkManager;
41
47
  get spaceManager(): SpaceManager;
48
+ destroy(): Promise<void>;
42
49
  }
43
50
  export declare const createSigningContext: (keyring: Keyring) => Promise<SigningContext>;
44
51
  //# sourceMappingURL=test-builder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"test-builder.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/testing/test-builder.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAiB,MAAM,qBAAqB,CAAC;AAE9G,OAAO,EAAe,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAuB,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAClF,OAAO,EAA0B,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAiB,OAAO,EAAe,MAAM,6BAA6B,CAAC;AAElF,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAM3C,eAAO,MAAM,iBAAiB,WAAY,MAAM,wBAAwB,0BAA0B,uBAMjG,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;oBAehC,CAAC;AAEF,eAAO,MAAM,WAAW,aAAoB,MAAM,8BAUjD,CAAC;AAEF,eAAO,MAAM,cAAc,SAAgB,cAAc,4BAGxD,CAAC;AAIF,eAAO,MAAM,cAAc,QAAe,YAAY,OAAO,YAAY,kBAGxE,CAAC;AAEF,qBAAa,WAAW;IACtB,SAAgB,aAAa,6BAAoC;IAEjE,UAAU,IAAI,QAAQ;CAGvB;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;IAC3B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B,CAAC;AAEF,qBAAa,QAAQ;IAGP,OAAO,CAAC,QAAQ,CAAC,aAAa;IAF1C,OAAO,CAAC,MAAM,CAAqB;gBAEN,aAAa,EAAE,0BAA0B;IAEtE,IAAI,OAAO,YAEV;IAED,IAAI,OAAO,YAEV;IAED,IAAI,SAAS,mBAUZ;IAED,IAAI,aAAa,kBAEhB;IAED,IAAI,aAAa,kBAEhB;IAED,IAAI,cAAc,mBAKjB;IAED,IAAI,YAAY,iBAQf;CACF;AAED,eAAO,MAAM,oBAAoB,YAAmB,OAAO,KAAG,QAAQ,cAAc,CAgBnF,CAAC"}
1
+ {"version":3,"file":"test-builder.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/testing/test-builder.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAiB,MAAM,qBAAqB,CAAC;AAE9G,OAAO,EAAe,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAuB,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAClF,OAAO,EAA0B,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAiB,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAElF,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAM3C,eAAO,MAAM,iBAAiB,WAAY,MAAM,wBAAwB,0BAA0B,uBAMjG,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;oBAehC,CAAC;AAEF,eAAO,MAAM,WAAW,aAAoB,MAAM,8BAUjD,CAAC;AAEF,eAAO,MAAM,cAAc,SAAgB,cAAc,4BAGxD,CAAC;AAIF,eAAO,MAAM,cAAc,QAAe,YAAY,OAAO,YAAY,kBAGxE,CAAC;AAEF,qBAAa,WAAW;IACtB,SAAgB,aAAa,6BAAoC;IACjE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;IAEtC,UAAU,CAAC,WAAW,CAAC,EAAE,YAAY,GAAG,QAAQ;IAM1C,OAAO;CAGd;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;IAC3B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B,CAAC;AAEF,qBAAa,QAAQ;IAIjB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,IAAI;IAJvB,OAAO,CAAC,MAAM,CAAqB;gBAGhB,aAAa,EAAE,0BAA0B,EACzC,IAAI,GAAE,YAA+C;IAGxE,IAAI,OAAO,YAEV;IAED,IAAI,OAAO,YAEV;IAED,IAAI,SAAS,mBAUZ;IAED,IAAI,aAAa,kBAEhB;IAED,IAAI,aAAa,kBAEhB;IAED,IAAI,cAAc,mBAKjB;IAED,IAAI,YAAY,iBAQf;IAEK,OAAO;CAGd;AAED,eAAO,MAAM,oBAAoB,YAAmB,OAAO,KAAG,QAAQ,cAAc,CAgBnF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"vault-resource-lock.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/vault/vault-resource-lock.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAM1C,MAAM,MAAM,wBAAwB,GAAG;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;CACtC,CAAC;AAEF,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA+C;IACjF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAwC;IACnE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAwC;IACnE,OAAO,CAAC,eAAe,CAAiB;gBAE5B,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,wBAAwB;IAOvE,IACI,OAAO,WAEV;IAEK,OAAO;IAgBP,OAAO;IAIb,OAAO,CAAC,UAAU;YAMJ,YAAY;CAqB3B"}
1
+ {"version":3,"file":"vault-resource-lock.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/vault/vault-resource-lock.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAM1C,MAAM,MAAM,wBAAwB,GAAG;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;CACtC,CAAC;AAGF,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA+C;IACjF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAwC;IACnE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAwC;IACnE,OAAO,CAAC,eAAe,CAAiB;gBAE5B,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,wBAAwB;IAOvE,IACI,OAAO,WAEV;IAEK,OAAO;IAgBP,OAAO;IAIb,OAAO,CAAC,UAAU;YAMJ,YAAY;CAqB3B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/client-services",
3
- "version": "0.1.48",
3
+ "version": "0.1.49-next.7ec9d52",
4
4
  "description": "DXOS client services implementation",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -20,38 +20,38 @@
20
20
  "src"
21
21
  ],
22
22
  "dependencies": {
23
- "@dxos/async": "0.1.48",
24
- "@dxos/client-protocol": "0.1.48",
25
- "@dxos/codec-protobuf": "0.1.48",
26
- "@dxos/config": "0.1.48",
27
- "@dxos/context": "0.1.48",
28
- "@dxos/credentials": "0.1.48",
29
- "@dxos/crypto": "0.1.48",
30
- "@dxos/debug": "0.1.48",
31
- "@dxos/document-model": "0.1.48",
32
- "@dxos/echo-db": "0.1.48",
33
- "@dxos/echo-pipeline": "0.1.48",
34
- "@dxos/errors": "0.1.48",
35
- "@dxos/feed-store": "0.1.48",
36
- "@dxos/keyring": "0.1.48",
37
- "@dxos/keys": "0.1.48",
38
- "@dxos/log": "0.1.48",
39
- "@dxos/messaging": "0.1.48",
40
- "@dxos/model-factory": "0.1.48",
41
- "@dxos/network-manager": "0.1.48",
42
- "@dxos/node-std": "0.1.48",
43
- "@dxos/protocols": "0.1.48",
44
- "@dxos/random-access-storage": "0.1.48",
45
- "@dxos/rpc": "0.1.48",
46
- "@dxos/teleport": "0.1.48",
47
- "@dxos/teleport-extension-gossip": "0.1.48",
48
- "@dxos/text-model": "0.1.48",
49
- "@dxos/timeframe": "0.1.48",
50
- "@dxos/util": "0.1.48"
23
+ "@dxos/async": "0.1.49-next.7ec9d52",
24
+ "@dxos/client-protocol": "0.1.49-next.7ec9d52",
25
+ "@dxos/codec-protobuf": "0.1.49-next.7ec9d52",
26
+ "@dxos/config": "0.1.49-next.7ec9d52",
27
+ "@dxos/context": "0.1.49-next.7ec9d52",
28
+ "@dxos/credentials": "0.1.49-next.7ec9d52",
29
+ "@dxos/crypto": "0.1.49-next.7ec9d52",
30
+ "@dxos/debug": "0.1.49-next.7ec9d52",
31
+ "@dxos/document-model": "0.1.49-next.7ec9d52",
32
+ "@dxos/echo-db": "0.1.49-next.7ec9d52",
33
+ "@dxos/echo-pipeline": "0.1.49-next.7ec9d52",
34
+ "@dxos/errors": "0.1.49-next.7ec9d52",
35
+ "@dxos/feed-store": "0.1.49-next.7ec9d52",
36
+ "@dxos/keyring": "0.1.49-next.7ec9d52",
37
+ "@dxos/keys": "0.1.49-next.7ec9d52",
38
+ "@dxos/log": "0.1.49-next.7ec9d52",
39
+ "@dxos/messaging": "0.1.49-next.7ec9d52",
40
+ "@dxos/model-factory": "0.1.49-next.7ec9d52",
41
+ "@dxos/network-manager": "0.1.49-next.7ec9d52",
42
+ "@dxos/node-std": "0.1.49-next.7ec9d52",
43
+ "@dxos/protocols": "0.1.49-next.7ec9d52",
44
+ "@dxos/random-access-storage": "0.1.49-next.7ec9d52",
45
+ "@dxos/rpc": "0.1.49-next.7ec9d52",
46
+ "@dxos/teleport": "0.1.49-next.7ec9d52",
47
+ "@dxos/teleport-extension-gossip": "0.1.49-next.7ec9d52",
48
+ "@dxos/text-model": "0.1.49-next.7ec9d52",
49
+ "@dxos/timeframe": "0.1.49-next.7ec9d52",
50
+ "@dxos/util": "0.1.49-next.7ec9d52"
51
51
  },
52
52
  "devDependencies": {
53
53
  "@types/readable-stream": "^2.3.9",
54
- "@dxos/signal": "0.1.48"
54
+ "@dxos/signal": "0.1.49-next.7ec9d52"
55
55
  },
56
56
  "publishConfig": {
57
57
  "access": "public"
@@ -37,11 +37,13 @@ import {
37
37
  SubscribeToSwarmInfoResponse,
38
38
  StorageInfo,
39
39
  GetSnapshotsResponse,
40
+ SubscribeToMetadataResponse,
40
41
  } from '@dxos/protocols/proto/dxos/devtools/host';
41
42
 
42
43
  import { ServiceContext } from '../services';
43
44
  import { subscribeToFeedBlocks, subscribeToFeeds } from './feeds';
44
45
  import { subscribeToKeyringKeys } from './keys';
46
+ import { subscribeToMetadata } from './metadata';
45
47
  import { subscribeToNetworkStatus, subscribeToSignal, subscribeToSwarmInfo } from './network';
46
48
  import { subscribeToSpaces } from './spaces';
47
49
 
@@ -161,4 +163,8 @@ export class DevtoolsServiceImpl implements DevtoolsHost {
161
163
  subscribeToSwarmInfo(): Stream<SubscribeToSwarmInfoResponse> {
162
164
  return subscribeToSwarmInfo({ networkManager: this.params.context.networkManager });
163
165
  }
166
+
167
+ subscribeToMetadata(): Stream<SubscribeToMetadataResponse> {
168
+ return subscribeToMetadata({ context: this.params.context });
169
+ }
164
170
  }
@@ -39,7 +39,7 @@ export const subscribeToFeeds = (
39
39
  feeds: Array.from(feedMap.values()).map((feed) => ({
40
40
  feedKey: feed.key,
41
41
  length: feed.properties.length,
42
- diskUsage: feed.core.byteLength,
42
+ bytes: feed.core.byteLength,
43
43
  })),
44
44
  });
45
45
  };
@@ -0,0 +1,14 @@
1
+ //
2
+ // Copyright 2023 DXOS.org
3
+ //
4
+
5
+ import { Stream } from '@dxos/codec-protobuf';
6
+ import { SubscribeToMetadataResponse } from '@dxos/protocols/proto/dxos/devtools/host';
7
+
8
+ import { ServiceContext } from '../services';
9
+
10
+ export const subscribeToMetadata = ({ context }: { context: ServiceContext }) =>
11
+ new Stream<SubscribeToMetadataResponse>(({ next, ctx }) => {
12
+ context.metadataStore.update.on(ctx, (data) => next({ metadata: data }));
13
+ next({ metadata: context.metadataStore.metadata });
14
+ });
@@ -168,9 +168,8 @@ export class ServiceContext {
168
168
  private async _checkStorageVersion() {
169
169
  await this.metadataStore.load();
170
170
  if (this.metadataStore.version !== STORAGE_VERSION) {
171
- log.error('Invalid storage version', { current: this.metadataStore.version, expected: STORAGE_VERSION });
171
+ throw new Error(`Invalid storage version: current=${this.metadataStore.version}, expected=${STORAGE_VERSION}`);
172
172
  // TODO(mykola): Migrate storage to a new version if incompatibility is detected.
173
- await this.metadataStore.clear();
174
173
  }
175
174
  }
176
175
 
@@ -182,6 +182,7 @@ export class ClientServicesHost {
182
182
  if (this._open) {
183
183
  return;
184
184
  }
185
+
185
186
  const traceId = PublicKey.random().toHex();
186
187
  log.trace('dxos.sdk.client-services-host.open', trace.begin({ id: traceId }));
187
188
 
@@ -3,13 +3,17 @@
3
3
  //
4
4
 
5
5
  import { expect } from 'chai';
6
+ import path from 'node:path';
6
7
 
7
8
  import { latch } from '@dxos/async';
8
9
  import { createAdmissionCredentials } from '@dxos/credentials';
9
10
  import { AuthStatus, DataServiceSubscriptions } from '@dxos/echo-pipeline';
11
+ import { testLocalDatabase } from '@dxos/echo-pipeline/testing';
10
12
  import { writeMessages } from '@dxos/feed-store';
11
13
  import { log } from '@dxos/log';
14
+ import { StorageType } from '@dxos/random-access-storage';
12
15
  import { afterTest, describe, test } from '@dxos/test';
16
+ import { range } from '@dxos/util';
13
17
 
14
18
  import { createSigningContext, TestBuilder, syncItemsLocal } from '../testing';
15
19
  import { DataSpaceManager } from './data-space-manager';
@@ -191,4 +195,43 @@ describe('DataSpaceManager', () => {
191
195
  await space1.postMessage('test', { '@type': 'google.protobuf.Any', test: true });
192
196
  await receivedMessage();
193
197
  });
198
+
199
+ describe('Epochs', () => {
200
+ test('Epoch truncates feeds', async () => {
201
+ const builder = new TestBuilder();
202
+ afterTest(async () => builder.destroy());
203
+
204
+ const peer = builder.createPeer({
205
+ storageType: typeof window === 'undefined' ? StorageType.NODE : StorageType.WEBFS,
206
+ });
207
+ const identity = await createSigningContext(peer.keyring);
208
+ const dataSpaceManager = new DataSpaceManager(
209
+ peer.spaceManager,
210
+ peer.metadataStore,
211
+ new DataServiceSubscriptions(),
212
+ peer.keyring,
213
+ identity,
214
+ peer.feedStore,
215
+ );
216
+ await dataSpaceManager.open();
217
+ afterTest(() => dataSpaceManager.close());
218
+ const space = await dataSpaceManager.createSpace();
219
+ await space.inner.controlPipeline.state.waitUntilTimeframe(space.inner.controlPipeline.state.endTimeframe);
220
+
221
+ const feedDataPath = path.join(space.inner.dataPipeline.pipelineState!.feeds[0].key.toHex(), 'data');
222
+ const directory = peer.storage.createDirectory('feeds');
223
+ const file = directory.getOrCreateFile(feedDataPath);
224
+ afterTest(() => file.close());
225
+
226
+ expect((await file.stat()).size === 0).to.be.true;
227
+
228
+ for (const _ in range(10)) {
229
+ await testLocalDatabase(space.dataPipeline);
230
+ }
231
+
232
+ expect((await file.stat()).size !== 0).to.be.true;
233
+ await space.createEpoch();
234
+ expect((await file.stat()).size === 0).to.be.true;
235
+ }).onlyEnvironments('nodejs', 'chromium', 'firefox');
236
+ });
194
237
  });
@@ -22,6 +22,8 @@ const DEFAULT_SUCCESS_DELAY = 1_000;
22
22
 
23
23
  const DEFAULT_NOTARIZE_TIMEOUT = 10_000;
24
24
 
25
+ const WRITER_NOT_SET_ERROR_CODE = 'WRITER_NOT_SET';
26
+
25
27
  export type NotarizeParams = {
26
28
  /**
27
29
  * For cancellation.
@@ -141,8 +143,10 @@ export class NotarizationPlugin implements CredentialProcessor {
141
143
  });
142
144
  log('success');
143
145
  await sleep(successDelay); // wait before trying with a new peer
144
- } catch (err) {
145
- log.warn('error notarizing (recoverable)', err);
146
+ } catch (err: any) {
147
+ if (!ctx.disposed && !err.message.includes(WRITER_NOT_SET_ERROR_CODE)) {
148
+ log.warn('error notarizing (recoverable)', err);
149
+ }
146
150
  notarizeTask.schedule(); // retry immediately with next peer
147
151
  }
148
152
  });
@@ -187,7 +191,7 @@ export class NotarizationPlugin implements CredentialProcessor {
187
191
  */
188
192
  private async _onNotarize(request: NotarizeRequest) {
189
193
  if (!this._writer) {
190
- throw new Error('Writer not set');
194
+ throw new Error(WRITER_NOT_SET_ERROR_CODE);
191
195
  }
192
196
  for (const credential of request.credentials ?? []) {
193
197
  assert(credential.id, 'Credential must have an id');
@@ -30,9 +30,6 @@ import { DataSpaceManager } from './data-space-manager';
30
30
 
31
31
  const TIMEFRAME_UPDATE_DEBOUNCE_TIME = 500;
32
32
 
33
- /**
34
- *
35
- */
36
33
  export class SpacesServiceImpl implements SpacesService {
37
34
  constructor(
38
35
  private readonly _identityManager: IdentityManager,
@@ -4,6 +4,7 @@
4
4
 
5
5
  import { createDefaultModelFactory } from '@dxos/client-protocol';
6
6
  import { Config } from '@dxos/config';
7
+ import { Context } from '@dxos/context';
7
8
  import { createCredentialSignerWithChain, CredentialGenerator } from '@dxos/credentials';
8
9
  import { SnapshotStore, DataPipeline, MetadataStore, SpaceManager, valueEncoding } from '@dxos/echo-pipeline';
9
10
  import { testLocalDatabase } from '@dxos/echo-pipeline/testing';
@@ -71,12 +72,23 @@ export const syncItemsLocal = async (db1: DataPipeline, db2: DataPipeline) => {
71
72
 
72
73
  export class TestBuilder {
73
74
  public readonly signalContext = new MemorySignalManagerContext();
75
+ private readonly _ctx = new Context();
74
76
 
75
- createPeer(): TestPeer {
76
- return new TestPeer(this.signalContext);
77
+ createPeer(peerOptions?: TestPeerOpts): TestPeer {
78
+ const peer = new TestPeer(this.signalContext, peerOptions);
79
+ this._ctx.onDispose(async () => peer.destroy());
80
+ return peer;
81
+ }
82
+
83
+ async destroy() {
84
+ await this._ctx.dispose();
77
85
  }
78
86
  }
79
87
 
88
+ export type TestPeerOpts = {
89
+ storageType?: StorageType;
90
+ };
91
+
80
92
  export type TestPeerProps = {
81
93
  storage?: Storage;
82
94
  feedStore?: FeedStore<any>;
@@ -90,10 +102,13 @@ export type TestPeerProps = {
90
102
  export class TestPeer {
91
103
  private _props: TestPeerProps = {};
92
104
 
93
- constructor(private readonly signalContext: MemorySignalManagerContext) {}
105
+ constructor(
106
+ private readonly signalContext: MemorySignalManagerContext,
107
+ private readonly opts: TestPeerOpts = { storageType: StorageType.RAM },
108
+ ) {}
94
109
 
95
110
  get storage() {
96
- return (this._props.storage ??= createStorage({ type: StorageType.RAM }));
111
+ return (this._props.storage ??= createStorage({ type: this.opts.storageType }));
97
112
  }
98
113
 
99
114
  get keyring() {
@@ -136,6 +151,10 @@ export class TestPeer {
136
151
  snapshotStore: this.snapshotStore,
137
152
  }));
138
153
  }
154
+
155
+ async destroy() {
156
+ await this.storage.reset();
157
+ }
139
158
  }
140
159
 
141
160
  export const createSigningContext = async (keyring: Keyring): Promise<SigningContext> => {
@@ -17,6 +17,7 @@ export type VaultResourceLockOptions = {
17
17
  onRelease?: () => MaybePromise<void>;
18
18
  };
19
19
 
20
+ // TODO(burdon): Extend to support locking for web and NodeJS (use npm lockfile). Use to lock agents.
20
21
  export class VaultResourceLock {
21
22
  private readonly _broadcastChannel = new BroadcastChannel('vault-resource-lock');
22
23
  private readonly _lockKey: string;