@dxos/client-services 0.5.1-next.c52d860 → 0.5.1-next.d0efa9a
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/browser/{chunk-HTUM6SUS.mjs → chunk-AZWKEPKJ.mjs} +144 -123
- package/dist/lib/browser/chunk-AZWKEPKJ.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +1 -1
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/packlets/testing/index.mjs +1 -1
- package/dist/lib/node/{chunk-MHA563HR.cjs → chunk-R5JDCL3F.cjs} +166 -145
- package/dist/lib/node/chunk-R5JDCL3F.cjs.map +7 -0
- package/dist/lib/node/index.cjs +43 -43
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/packlets/testing/index.cjs +8 -8
- package/dist/types/src/packlets/diagnostics/diagnostics-collector.d.ts.map +1 -1
- package/dist/types/src/packlets/diagnostics/diagnostics.d.ts.map +1 -1
- package/dist/types/src/packlets/invitations/invitations-manager.d.ts.map +1 -1
- package/dist/types/src/packlets/invitations/space-invitation-protocol.d.ts.map +1 -1
- package/dist/types/src/packlets/spaces/data-space.d.ts.map +1 -1
- package/dist/types/src/packlets/spaces/spaces-service.d.ts +2 -1
- package/dist/types/src/packlets/spaces/spaces-service.d.ts.map +1 -1
- package/dist/types/src/version.d.ts +1 -1
- package/package.json +36 -36
- package/src/packlets/diagnostics/diagnostics-collector.ts +14 -9
- package/src/packlets/diagnostics/diagnostics.ts +78 -68
- package/src/packlets/invitations/invitations-manager.ts +3 -0
- package/src/packlets/invitations/space-invitation-protocol.ts +4 -2
- package/src/packlets/services/service-host.ts +2 -2
- package/src/packlets/spaces/data-space.ts +2 -1
- package/src/packlets/spaces/genesis.ts +1 -1
- package/src/packlets/spaces/spaces-service.ts +12 -6
- package/src/version.ts +1 -1
- package/dist/lib/browser/chunk-HTUM6SUS.mjs.map +0 -7
- package/dist/lib/node/chunk-MHA563HR.cjs.map +0 -7
|
@@ -30,7 +30,7 @@ __export(testing_exports, {
|
|
|
30
30
|
sanitizeInvitation: () => sanitizeInvitation
|
|
31
31
|
});
|
|
32
32
|
module.exports = __toCommonJS(testing_exports);
|
|
33
|
-
var
|
|
33
|
+
var import_chunk_R5JDCL3F = require("../../chunk-R5JDCL3F.cjs");
|
|
34
34
|
var import_credentials = require("@dxos/credentials");
|
|
35
35
|
var import_keys = require("@dxos/keys");
|
|
36
36
|
var import_async = require("@dxos/async");
|
|
@@ -227,7 +227,7 @@ var createInvitation = async (host, options) => {
|
|
|
227
227
|
authMethod: import_services.Invitation.AuthMethod.NONE,
|
|
228
228
|
...options ?? {}
|
|
229
229
|
};
|
|
230
|
-
if (host instanceof
|
|
230
|
+
if (host instanceof import_chunk_R5JDCL3F.ServiceContext) {
|
|
231
231
|
return host.invitationsManager.createInvitation({
|
|
232
232
|
kind: import_services.Invitation.Kind.SPACE,
|
|
233
233
|
...options
|
|
@@ -237,7 +237,7 @@ var createInvitation = async (host, options) => {
|
|
|
237
237
|
};
|
|
238
238
|
var acceptInvitation = (guest, invitation, guestDeviceProfile) => {
|
|
239
239
|
invitation = sanitizeInvitation(invitation);
|
|
240
|
-
if (guest instanceof
|
|
240
|
+
if (guest instanceof import_chunk_R5JDCL3F.ServiceContext) {
|
|
241
241
|
return guest.invitationsManager.acceptInvitation({
|
|
242
242
|
invitation,
|
|
243
243
|
deviceProfile: guestDeviceProfile
|
|
@@ -246,7 +246,7 @@ var acceptInvitation = (guest, invitation, guestDeviceProfile) => {
|
|
|
246
246
|
return guest.join(invitation, guestDeviceProfile);
|
|
247
247
|
};
|
|
248
248
|
var createServiceHost = (config, signalManagerContext) => {
|
|
249
|
-
return new
|
|
249
|
+
return new import_chunk_R5JDCL3F.ClientServicesHost({
|
|
250
250
|
config,
|
|
251
251
|
signalManager: new import_messaging.MemorySignalManager(signalManagerContext),
|
|
252
252
|
transportFactory: import_network_manager.MemoryTransportFactory
|
|
@@ -262,7 +262,7 @@ var createServiceContext = async ({ signalContext = new import_messaging.MemoryS
|
|
|
262
262
|
});
|
|
263
263
|
const level = (0, import_testing.createTestLevel)();
|
|
264
264
|
await level.open();
|
|
265
|
-
return new
|
|
265
|
+
return new import_chunk_R5JDCL3F.ServiceContext(storage, level, networkManager, signalManager, {
|
|
266
266
|
invitationConnectionDefaultParams: {
|
|
267
267
|
controlHeartbeatInterval: 200
|
|
268
268
|
}
|
|
@@ -363,12 +363,12 @@ var TestPeer = class {
|
|
|
363
363
|
});
|
|
364
364
|
}
|
|
365
365
|
get dataSpaceManager() {
|
|
366
|
-
return this._props.dataSpaceManager ??= new
|
|
366
|
+
return this._props.dataSpaceManager ??= new import_chunk_R5JDCL3F.DataSpaceManager(this.spaceManager, this.metadataStore, this.keyring, this.identity, this.feedStore, this.echoHost, this.invitationsManager);
|
|
367
367
|
}
|
|
368
368
|
get invitationsManager() {
|
|
369
|
-
return this._props.invitationsManager ??= new
|
|
369
|
+
return this._props.invitationsManager ??= new import_chunk_R5JDCL3F.InvitationsManager(new import_chunk_R5JDCL3F.InvitationsHandler(this.networkManager), (invitation) => {
|
|
370
370
|
if (invitation.kind === import_services2.Invitation.Kind.SPACE) {
|
|
371
|
-
return new
|
|
371
|
+
return new import_chunk_R5JDCL3F.SpaceInvitationProtocol(this.dataSpaceManager, this.identity, this.keyring, invitation.spaceKey);
|
|
372
372
|
} else {
|
|
373
373
|
throw new Error("not implemented");
|
|
374
374
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostics-collector.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/diagnostics/diagnostics-collector.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,KAAK,MAAM,EAAkB,MAAM,cAAc,CAAC;AAG3D,OAAO,EAAE,KAAK,cAAc,EAAgC,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"diagnostics-collector.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/diagnostics/diagnostics-collector.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,KAAK,MAAM,EAAkB,MAAM,cAAc,CAAC;AAG3D,OAAO,EAAE,KAAK,cAAc,EAAgC,MAAM,YAAY,CAAC;AAO/E,MAAM,WAAW,iCAAiC;IAChD,2BAA2B,IAAI,GAAG,CAAC;CACpC;AAED,MAAM,WAAW,kCAAkC;IACjD,KAAK,IAAI,IAAI,CAAC;IACd,IAAI,IAAI,IAAI,CAAC;CACd;AAED,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,MAAM,CAAC,eAAe,CAA6C;WAEvD,OAAO,CACzB,MAAM,GAAE,MAAM,GAAG,MAAM,EAAkB,EACzC,QAAQ,GAAE,sBAAsB,GAAG,IAAkC,EACrE,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,GAAG,CAAC;CA2BhB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/diagnostics/diagnostics.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/diagnostics/diagnostics.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAG7D,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EACL,WAAW,EACX,KAAK,MAAM,EACX,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,OAAO,EACZ,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,KAAK,IAAI,UAAU,EACzB,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AACzF,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,2CAA2C,CAAC;AAC3E,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,6CAA6C,CAAC;AACzE,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAI9E,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAMlD,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE;QACN,MAAM,EAAE,WAAW,CAAC;QACpB,KAAK,EAAE,eAAe,CAAC;KACxB,CAAC;IACF,QAAQ,EAAE;QACR,KAAK,EAAE,eAAe,CAAC;QACvB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,QAAQ,CAAC;QACnB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,MAAM,EAAE;YACN,OAAO,EAAE,MAAM,CAAC;YAChB,OAAO,EAAE;gBACP,OAAO,EAAE,MAAM,CAAC;aACjB,CAAC;SACH,CAAC;QACF,QAAQ,CAAC,EAAE,QAAQ,CAAC;QACpB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;QACtB,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;QACrB,KAAK,CAAC,EAAE,OAAO,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE,CAAC;QACjD,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,OAAO,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;KAC7C,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACpC,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,IAAI,EAAE,QAAQ,EAAE,CAAC;CAClB,CAAC;AAGF,MAAM,MAAM,UAAU,GAAG;IACvB,GAAG,EAAE,SAAS,CAAC;IACf,UAAU,CAAC,EAAE;QACX,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,EAAE,CAAC,EAAE;QACH,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,GAAG;QAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,MAAM,CAAC,EAAE,CAAC,KAAK,GAAG;QAAE,EAAE,CAAC,EAAE,SAAS,CAAA;KAAE,CAAC,EAAE,CAAC;IACxC,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,UAAU,CAAC,aAAa,CAAC;CACrC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,mBACZ,QAAQ,cAAc,CAAC,kBACvB,cAAc,UACtB,MAAM,KACb,QAAQ,WAAW,CAAC,UAAU,CAAC,CA2EjC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"invitations-manager.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/invitations/invitations-manager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAqC,MAAM,aAAa,CAAC;AACvE,OAAO,EACL,wBAAwB,EAExB,qBAAqB,EAEtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAI/E,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,EAC1B,UAAU,EACX,MAAM,4CAA4C,CAAC;
|
|
1
|
+
{"version":3,"file":"invitations-manager.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/invitations/invitations-manager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAqC,MAAM,aAAa,CAAC;AACvE,OAAO,EACL,wBAAwB,EAExB,qBAAqB,EAEtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAI/E,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,EAC1B,UAAU,EACX,MAAM,4CAA4C,CAAC;AAGpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAA0B,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAExF;;;GAGG;AACH,qBAAa,kBAAkB;IAc3B,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAfjC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA4C;IAC/E,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA+C;IAElF,SAAgB,iBAAiB,oBAA2B;IAC5D,SAAgB,kBAAkB,oBAA2B;IAC7D,SAAgB,cAAc,oBAA2B;IACzD,SAAgB,eAAe,oBAA2B;IAC1D,SAAgB,KAAK,oBAA2B;IAEhD,OAAO,CAAC,QAAQ,CAAC,iCAAiC,CAAe;IACjE,OAAO,CAAC,4BAA4B,CAAS;gBAG1B,mBAAmB,EAAE,kBAAkB,EACvC,WAAW,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,kBAAkB,EAC/F,cAAc,EAAE,aAAa;IAG1C,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAoCzG,yBAAyB,IAAI,OAAO,CAAC;QAAE,WAAW,EAAE,UAAU,EAAE,CAAA;KAAE,CAAC;IA0BzE,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,wBAAwB;IAqBtE,YAAY,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAW9E,gBAAgB,CAAC,EAAE,YAAY,EAAE,EAAE;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA2BjF,qBAAqB,IAAI,UAAU,EAAE;IAIrC,sBAAsB,IAAI,UAAU,EAAE;IAItC,6BAA6B,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI;IAQhE,OAAO,CAAC,iBAAiB;IAuCzB,OAAO,CAAC,2BAA2B;IAuBnC,OAAO,CAAC,oCAAoC;YAkC9B,kBAAkB;YAclB,qBAAqB;IAQnC,OAAO,CAAC,qBAAqB;CAO9B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"space-invitation-protocol.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/invitations/space-invitation-protocol.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,4CAA4C,CAAC;AAExE,OAAO,EAAe,KAAK,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAChG,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACzB,MAAM,6CAA6C,CAAC;AAErD,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AAEvE,qBAAa,uBAAwB,YAAW,kBAAkB;IAE9D,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAHV,aAAa,EAAE,gBAAgB,EAC/B,eAAe,EAAE,cAAc,EAC/B,QAAQ,EAAE,OAAO,EACjB,SAAS,CAAC,uBAAW;IAGxC,MAAM,IAAI,MAAM;IAOhB,oBAAoB,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;IAOhE,KAAK,CACT,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,gBAAgB,EACzB,YAAY,CAAC,EAAE,eAAe,GAAG,SAAS,GACzC,OAAO,CAAC,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"space-invitation-protocol.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/invitations/space-invitation-protocol.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,4CAA4C,CAAC;AAExE,OAAO,EAAe,KAAK,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAChG,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACzB,MAAM,6CAA6C,CAAC;AAErD,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AAEvE,qBAAa,uBAAwB,YAAW,kBAAkB;IAE9D,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAHV,aAAa,EAAE,gBAAgB,EAC/B,eAAe,EAAE,cAAc,EAC/B,QAAQ,EAAE,OAAO,EACjB,SAAS,CAAC,uBAAW;IAGxC,MAAM,IAAI,MAAM;IAOhB,oBAAoB,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;IAOhE,KAAK,CACT,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,gBAAgB,EACzB,YAAY,CAAC,EAAE,eAAe,GAAG,SAAS,GACzC,OAAO,CAAC,iBAAiB,CAAC;IAoCvB,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IAiCpD,gBAAgB,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB7D,eAAe,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC;IAM/C,kBAAkB,IAAI,mBAAmB;IAMnC,sBAAsB,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAenD,MAAM,CAAC,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;CAuBxE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-space.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/spaces/data-space.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAA+D,MAAM,aAAa,CAAC;AAIjG,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,KAAK,EAA0B,MAAM,qBAAqB,CAAC;AAI7F,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAGvC,OAAO,EAAE,UAAU,EAAE,KAAK,KAAK,IAAI,UAAU,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AACtH,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,0CAA0C,CAAC;
|
|
1
|
+
{"version":3,"file":"data-space.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/spaces/data-space.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Stream } from '@dxos/codec-protobuf';
|
|
2
2
|
import { type SpaceManager } from '@dxos/echo-pipeline';
|
|
3
|
-
import { type CreateEpochRequest, type PostMessageRequest, type QueryCredentialsRequest, type QuerySpacesResponse, type Space, type SpacesService, type SubscribeMessagesRequest, type UpdateSpaceRequest, type WriteCredentialsRequest } from '@dxos/protocols/proto/dxos/client/services';
|
|
3
|
+
import { type CreateEpochRequest, type PostMessageRequest, type QueryCredentialsRequest, type QuerySpacesResponse, type Space, type SpacesService, type SubscribeMessagesRequest, type UpdateSpaceRequest, type WriteCredentialsRequest, type UpdateMemberRoleRequest } from '@dxos/protocols/proto/dxos/client/services';
|
|
4
4
|
import { type Credential } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
5
5
|
import { type GossipMessage } from '@dxos/protocols/proto/dxos/mesh/teleport/gossip';
|
|
6
6
|
import { type Provider } from '@dxos/util';
|
|
@@ -13,6 +13,7 @@ export declare class SpacesServiceImpl implements SpacesService {
|
|
|
13
13
|
constructor(_identityManager: IdentityManager, _spaceManager: SpaceManager, _getDataSpaceManager: Provider<Promise<DataSpaceManager>>);
|
|
14
14
|
createSpace(): Promise<Space>;
|
|
15
15
|
updateSpace({ spaceKey, state }: UpdateSpaceRequest): Promise<void>;
|
|
16
|
+
updateMemberRole(_: UpdateMemberRoleRequest): Promise<void>;
|
|
16
17
|
querySpaces(): Stream<QuerySpacesResponse>;
|
|
17
18
|
postMessage({ spaceKey, channel, message }: PostMessageRequest): Promise<void>;
|
|
18
19
|
subscribeMessages({ spaceKey, channel }: SubscribeMessagesRequest): Stream<GossipMessage>;
|
|
@@ -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;AAG9C,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAIxD,OAAO,EAGL,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,EACxB,KAAK,KAAK,EACV,KAAK,aAAa,EAClB,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC7B,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,KAAK,UAAU,
|
|
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;AAG9C,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAIxD,OAAO,EAGL,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,EACxB,KAAK,KAAK,EACV,KAAK,aAAa,EAClB,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC7B,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,KAAK,UAAU,EAAkC,MAAM,6CAA6C,CAAC;AAC9G,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,iDAAiD,CAAC;AACrF,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AAG3C,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,qBAAa,iBAAkB,YAAW,aAAa;IAEnD,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;gBAFpB,gBAAgB,EAAE,eAAe,EACjC,aAAa,EAAE,YAAY,EAC3B,oBAAoB,EAAE,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAGtE,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC;IAU7B,WAAW,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,kBAAkB;IAmBnD,gBAAgB,CAAC,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjE,WAAW,IAAI,MAAM,CAAC,mBAAmB,CAAC;IAkDpC,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,MAAM,EAAE,EAAE,uBAAuB,GAAG,MAAM,CAAC,UAAU,CAAC;IAmB7E,gBAAgB,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,uBAAuB;IAmBnE,WAAW,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,kBAAkB;IAM7D,OAAO,CAAC,eAAe;CA+CxB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const DXOS_VERSION = "0.5.1-next.
|
|
1
|
+
export declare const DXOS_VERSION = "0.5.1-next.d0efa9a";
|
|
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.5.1-next.
|
|
3
|
+
"version": "0.5.1-next.d0efa9a",
|
|
4
4
|
"description": "DXOS client services implementation",
|
|
5
5
|
"homepage": "https://dxos.org",
|
|
6
6
|
"bugs": "https://github.com/dxos/dxos/issues",
|
|
@@ -23,45 +23,45 @@
|
|
|
23
23
|
],
|
|
24
24
|
"dependencies": {
|
|
25
25
|
"platform": "^1.3.6",
|
|
26
|
-
"@dxos/
|
|
27
|
-
"@dxos/
|
|
28
|
-
"@dxos/
|
|
29
|
-
"@dxos/codec-protobuf": "0.5.1-next.
|
|
30
|
-
"@dxos/
|
|
31
|
-
"@dxos/
|
|
32
|
-
"@dxos/
|
|
33
|
-
"@dxos/
|
|
34
|
-
"@dxos/debug": "0.5.1-next.
|
|
35
|
-
"@dxos/echo-db": "0.5.1-next.
|
|
36
|
-
"@dxos/echo-
|
|
37
|
-
"@dxos/echo-schema": "0.5.1-next.
|
|
38
|
-
"@dxos/
|
|
39
|
-
"@dxos/
|
|
40
|
-
"@dxos/
|
|
41
|
-
"@dxos/
|
|
42
|
-
"@dxos/
|
|
43
|
-
"@dxos/keys": "0.5.1-next.
|
|
44
|
-
"@dxos/
|
|
45
|
-
"@dxos/
|
|
46
|
-
"@dxos/
|
|
47
|
-
"@dxos/
|
|
48
|
-
"@dxos/
|
|
49
|
-
"@dxos/
|
|
50
|
-
"@dxos/random-access-storage": "0.5.1-next.
|
|
51
|
-
"@dxos/
|
|
52
|
-
"@dxos/
|
|
53
|
-
"@dxos/
|
|
54
|
-
"@dxos/teleport-extension-
|
|
55
|
-
"@dxos/teleport-extension-
|
|
56
|
-
"@dxos/timeframe": "0.5.1-next.
|
|
57
|
-
"@dxos/
|
|
58
|
-
"@dxos/
|
|
59
|
-
"@dxos/websocket-rpc": "0.5.1-next.
|
|
26
|
+
"@dxos/async": "0.5.1-next.d0efa9a",
|
|
27
|
+
"@dxos/automerge": "0.5.1-next.d0efa9a",
|
|
28
|
+
"@dxos/client-protocol": "0.5.1-next.d0efa9a",
|
|
29
|
+
"@dxos/codec-protobuf": "0.5.1-next.d0efa9a",
|
|
30
|
+
"@dxos/config": "0.5.1-next.d0efa9a",
|
|
31
|
+
"@dxos/context": "0.5.1-next.d0efa9a",
|
|
32
|
+
"@dxos/crypto": "0.5.1-next.d0efa9a",
|
|
33
|
+
"@dxos/credentials": "0.5.1-next.d0efa9a",
|
|
34
|
+
"@dxos/debug": "0.5.1-next.d0efa9a",
|
|
35
|
+
"@dxos/echo-db": "0.5.1-next.d0efa9a",
|
|
36
|
+
"@dxos/echo-pipeline": "0.5.1-next.d0efa9a",
|
|
37
|
+
"@dxos/echo-schema": "0.5.1-next.d0efa9a",
|
|
38
|
+
"@dxos/feed-store": "0.5.1-next.d0efa9a",
|
|
39
|
+
"@dxos/echo-protocol": "0.5.1-next.d0efa9a",
|
|
40
|
+
"@dxos/invariant": "0.5.1-next.d0efa9a",
|
|
41
|
+
"@dxos/indexing": "0.5.1-next.d0efa9a",
|
|
42
|
+
"@dxos/keyring": "0.5.1-next.d0efa9a",
|
|
43
|
+
"@dxos/keys": "0.5.1-next.d0efa9a",
|
|
44
|
+
"@dxos/lock-file": "0.5.1-next.d0efa9a",
|
|
45
|
+
"@dxos/log": "0.5.1-next.d0efa9a",
|
|
46
|
+
"@dxos/kv-store": "0.5.1-next.d0efa9a",
|
|
47
|
+
"@dxos/network-manager": "0.5.1-next.d0efa9a",
|
|
48
|
+
"@dxos/messaging": "0.5.1-next.d0efa9a",
|
|
49
|
+
"@dxos/protocols": "0.5.1-next.d0efa9a",
|
|
50
|
+
"@dxos/random-access-storage": "0.5.1-next.d0efa9a",
|
|
51
|
+
"@dxos/node-std": "0.5.1-next.d0efa9a",
|
|
52
|
+
"@dxos/rpc": "0.5.1-next.d0efa9a",
|
|
53
|
+
"@dxos/teleport": "0.5.1-next.d0efa9a",
|
|
54
|
+
"@dxos/teleport-extension-object-sync": "0.5.1-next.d0efa9a",
|
|
55
|
+
"@dxos/teleport-extension-gossip": "0.5.1-next.d0efa9a",
|
|
56
|
+
"@dxos/timeframe": "0.5.1-next.d0efa9a",
|
|
57
|
+
"@dxos/util": "0.5.1-next.d0efa9a",
|
|
58
|
+
"@dxos/tracing": "0.5.1-next.d0efa9a",
|
|
59
|
+
"@dxos/websocket-rpc": "0.5.1-next.d0efa9a"
|
|
60
60
|
},
|
|
61
61
|
"devDependencies": {
|
|
62
62
|
"@types/platform": "^1.3.4",
|
|
63
63
|
"@types/readable-stream": "^2.3.9",
|
|
64
|
-
"@dxos/signal": "0.5.1-next.
|
|
64
|
+
"@dxos/signal": "0.5.1-next.d0efa9a"
|
|
65
65
|
},
|
|
66
66
|
"publishConfig": {
|
|
67
67
|
"access": "public"
|
|
@@ -11,6 +11,8 @@ import { type JsonKeyOptions, jsonKeyReplacer, nonNullable } from '@dxos/util';
|
|
|
11
11
|
import { createCollectDiagnosticsBroadcastSender } from './diagnostics-broadcast';
|
|
12
12
|
import { ClientServicesProviderResource } from '../services';
|
|
13
13
|
|
|
14
|
+
const GET_DIAGNOSTICS_RPC_TIMEOUT = 10_000;
|
|
15
|
+
|
|
14
16
|
export interface CollectDiagnosticsBroadcastSender {
|
|
15
17
|
broadcastDiagnosticsRequest(): any;
|
|
16
18
|
}
|
|
@@ -28,13 +30,16 @@ export class DiagnosticsCollector {
|
|
|
28
30
|
services: ClientServicesProvider | null = findSystemServiceProvider(),
|
|
29
31
|
options: JsonKeyOptions = {},
|
|
30
32
|
): Promise<any> {
|
|
31
|
-
const serviceDiagnostics = await services?.services?.SystemService?.getDiagnostics(
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
33
|
+
const serviceDiagnostics = await services?.services?.SystemService?.getDiagnostics(
|
|
34
|
+
{
|
|
35
|
+
keys: options.humanize
|
|
36
|
+
? GetDiagnosticsRequest.KEY_OPTION.HUMANIZE
|
|
37
|
+
: options.truncate
|
|
38
|
+
? GetDiagnosticsRequest.KEY_OPTION.TRUNCATE
|
|
39
|
+
: undefined,
|
|
40
|
+
},
|
|
41
|
+
{ timeout: GET_DIAGNOSTICS_RPC_TIMEOUT },
|
|
42
|
+
);
|
|
38
43
|
|
|
39
44
|
const clientDiagnostics = {
|
|
40
45
|
config,
|
|
@@ -54,12 +59,12 @@ export class DiagnosticsCollector {
|
|
|
54
59
|
}
|
|
55
60
|
|
|
56
61
|
const findSystemServiceProvider = (): ClientServicesProvider | null => {
|
|
57
|
-
const serviceProviders = TRACE_PROCESSOR.
|
|
62
|
+
const serviceProviders = TRACE_PROCESSOR.findResourcesByAnnotation(ClientServicesProviderResource);
|
|
58
63
|
const providerResource = serviceProviders.find((r) => r.instance.deref()?.services?.SystemService != null);
|
|
59
64
|
return providerResource?.instance?.deref() ?? null;
|
|
60
65
|
};
|
|
61
66
|
|
|
62
67
|
const findConfigs = (): Config[] => {
|
|
63
|
-
const configs = TRACE_PROCESSOR.
|
|
68
|
+
const configs = TRACE_PROCESSOR.findResourcesByAnnotation(ConfigResource);
|
|
64
69
|
return configs.map((r) => r.instance.deref()).filter(nonNullable);
|
|
65
70
|
};
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// Copyright 2022 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
+
import { asyncTimeout } from '@dxos/async';
|
|
5
6
|
import { type ClientServices } from '@dxos/client-protocol';
|
|
6
7
|
import { getFirstStreamValue } from '@dxos/codec-protobuf';
|
|
7
8
|
import { type Config, type ConfigProto } from '@dxos/config';
|
|
@@ -102,75 +103,64 @@ export const createDiagnostics = async (
|
|
|
102
103
|
trace: TRACE_PROCESSOR.getDiagnostics(),
|
|
103
104
|
};
|
|
104
105
|
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
}).catch(() => undefined);
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
if (typeof navigator !== 'undefined' && navigator.storage) {
|
|
115
|
-
const map = new Map();
|
|
116
|
-
const dir = await navigator.storage.getDirectory();
|
|
117
|
-
for await (const filename of (dir as any)?.keys()) {
|
|
118
|
-
const idx = filename.indexOf('-', filename.indexOf('-') + 1);
|
|
119
|
-
if (idx === -1) {
|
|
120
|
-
continue;
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
map.set(filename.slice(0, idx), (map.get(filename.slice(0, idx)) ?? 0) + 1);
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
diagnostics.storage = Array.from(map.entries())
|
|
127
|
-
.sort((a, b) => b[1] - a[1])
|
|
128
|
-
.map(([file, count]) => ({ file, count }));
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
const identity = serviceContext.identityManager.identity;
|
|
132
|
-
if (identity) {
|
|
133
|
-
// Identity.
|
|
134
|
-
diagnostics.identity = {
|
|
135
|
-
identityKey: identity.identityKey,
|
|
136
|
-
spaceKey: identity.space.key,
|
|
137
|
-
profile: identity.profileDocument,
|
|
138
|
-
};
|
|
139
|
-
|
|
140
|
-
// Devices.
|
|
141
|
-
const { devices } =
|
|
142
|
-
(await getFirstStreamValue(clientServices.DevicesService!.queryDevices(), {
|
|
143
|
-
timeout: DEFAULT_TIMEOUT,
|
|
144
|
-
}).catch(() => undefined)) ?? {};
|
|
145
|
-
diagnostics.devices = devices;
|
|
146
|
-
|
|
147
|
-
// TODO(dmaretskyi): Add metrics for halo space.
|
|
148
|
-
|
|
149
|
-
// Spaces.
|
|
150
|
-
if (serviceContext.dataSpaceManager) {
|
|
151
|
-
diagnostics.spaces = await Promise.all(
|
|
152
|
-
Array.from(serviceContext.dataSpaceManager.spaces.values()).map((space) => getSpaceStats(space)) ?? [],
|
|
153
|
-
);
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
// Feeds.
|
|
157
|
-
const { feeds = [] } =
|
|
158
|
-
(await getFirstStreamValue(clientServices.DevtoolsHost!.subscribeToFeeds({}), {
|
|
106
|
+
await Promise.all([
|
|
107
|
+
(async () => {
|
|
108
|
+
// Trace metrics.
|
|
109
|
+
// TODO(burdon): Move here from logging service?
|
|
110
|
+
invariant(clientServices.LoggingService, 'SystemService is not available.');
|
|
111
|
+
diagnostics.metrics = await getFirstStreamValue(clientServices.LoggingService.queryMetrics({}), {
|
|
159
112
|
timeout: DEFAULT_TIMEOUT,
|
|
160
|
-
}).catch(() => undefined)
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
113
|
+
}).catch(() => undefined);
|
|
114
|
+
})(),
|
|
115
|
+
(async () => {
|
|
116
|
+
diagnostics.storage = await asyncTimeout(getStorageDiagnostics(), DEFAULT_TIMEOUT).catch(() => undefined);
|
|
117
|
+
})(),
|
|
118
|
+
async () => {
|
|
119
|
+
const identity = serviceContext.identityManager.identity;
|
|
120
|
+
if (identity) {
|
|
121
|
+
// Identity.
|
|
122
|
+
diagnostics.identity = {
|
|
123
|
+
identityKey: identity.identityKey,
|
|
124
|
+
spaceKey: identity.space.key,
|
|
125
|
+
profile: identity.profileDocument,
|
|
126
|
+
};
|
|
127
|
+
|
|
128
|
+
// Devices.
|
|
129
|
+
const { devices } =
|
|
130
|
+
(await getFirstStreamValue(clientServices.DevicesService!.queryDevices(), {
|
|
131
|
+
timeout: DEFAULT_TIMEOUT,
|
|
132
|
+
}).catch(() => undefined)) ?? {};
|
|
133
|
+
diagnostics.devices = devices;
|
|
134
|
+
|
|
135
|
+
// TODO(dmaretskyi): Add metrics for halo space.
|
|
136
|
+
|
|
137
|
+
// Spaces.
|
|
138
|
+
if (serviceContext.dataSpaceManager) {
|
|
139
|
+
diagnostics.spaces = await Promise.all(
|
|
140
|
+
Array.from(serviceContext.dataSpaceManager.spaces.values()).map((space) => getSpaceStats(space)) ?? [],
|
|
141
|
+
);
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
// Feeds.
|
|
145
|
+
const { feeds = [] } =
|
|
146
|
+
(await getFirstStreamValue(clientServices.DevtoolsHost!.subscribeToFeeds({}), {
|
|
147
|
+
timeout: DEFAULT_TIMEOUT,
|
|
148
|
+
}).catch(() => undefined)) ?? {};
|
|
149
|
+
diagnostics.feeds = feeds.map(({ feedKey, bytes, length }) => ({ feedKey, bytes, length }));
|
|
150
|
+
|
|
151
|
+
// Signal servers.
|
|
152
|
+
|
|
153
|
+
const status = await getFirstStreamValue(clientServices.NetworkService!.queryStatus(), {
|
|
154
|
+
timeout: DEFAULT_TIMEOUT,
|
|
155
|
+
}).catch(() => undefined);
|
|
156
|
+
diagnostics.networkStatus = status;
|
|
157
|
+
|
|
158
|
+
// Networking.
|
|
159
|
+
|
|
160
|
+
diagnostics.swarms = serviceContext.networkManager.connectionLog?.swarms;
|
|
161
|
+
}
|
|
162
|
+
},
|
|
163
|
+
]);
|
|
174
164
|
|
|
175
165
|
diagnostics.config = config.values;
|
|
176
166
|
|
|
@@ -222,3 +212,23 @@ const getSpaceStats = async (space: DataSpace): Promise<SpaceStats> => {
|
|
|
222
212
|
|
|
223
213
|
return stats;
|
|
224
214
|
};
|
|
215
|
+
|
|
216
|
+
const getStorageDiagnostics = async () => {
|
|
217
|
+
if (typeof navigator === 'undefined' || !navigator.storage) {
|
|
218
|
+
return undefined;
|
|
219
|
+
}
|
|
220
|
+
const map = new Map();
|
|
221
|
+
const dir = await navigator.storage.getDirectory();
|
|
222
|
+
for await (const filename of (dir as any)?.keys()) {
|
|
223
|
+
const idx = filename.indexOf('-', filename.indexOf('-') + 1);
|
|
224
|
+
if (idx === -1) {
|
|
225
|
+
continue;
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
map.set(filename.slice(0, idx), (map.get(filename.slice(0, idx)) ?? 0) + 1);
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
return Array.from(map.entries())
|
|
232
|
+
.sort((a, b) => b[1] - a[1])
|
|
233
|
+
.map(([file, count]) => ({ file, count }));
|
|
234
|
+
};
|
|
@@ -20,6 +20,7 @@ import {
|
|
|
20
20
|
type AuthenticationRequest,
|
|
21
21
|
Invitation,
|
|
22
22
|
} from '@dxos/protocols/proto/dxos/client/services';
|
|
23
|
+
import { SpaceMember } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
23
24
|
|
|
24
25
|
import type { InvitationProtocol } from './invitation-protocol';
|
|
25
26
|
import { createAdmissionKeypair, type InvitationsHandler } from './invitations-handler';
|
|
@@ -195,6 +196,7 @@ export class InvitationsManager {
|
|
|
195
196
|
persistent = options?.authMethod !== Invitation.AuthMethod.KNOWN_PUBLIC_KEY, // default no not storing keypairs
|
|
196
197
|
created = new Date(),
|
|
197
198
|
guestKeypair = undefined,
|
|
199
|
+
role = SpaceMember.Role.ADMIN,
|
|
198
200
|
lifetime = 86400, // 1 day,
|
|
199
201
|
multiUse = false,
|
|
200
202
|
} = options ?? {};
|
|
@@ -215,6 +217,7 @@ export class InvitationsManager {
|
|
|
215
217
|
guestKeypair ?? (authMethod === Invitation.AuthMethod.KNOWN_PUBLIC_KEY ? createAdmissionKeypair() : undefined),
|
|
216
218
|
created,
|
|
217
219
|
lifetime,
|
|
220
|
+
role,
|
|
218
221
|
multiUse,
|
|
219
222
|
delegationCredentialId: options?.delegationCredentialId,
|
|
220
223
|
...protocol.getInvitationContext(),
|
|
@@ -54,7 +54,7 @@ export class SpaceInvitationProtocol implements InvitationProtocol {
|
|
|
54
54
|
guestProfile?: ProfileDocument | undefined,
|
|
55
55
|
): Promise<AdmissionResponse> {
|
|
56
56
|
invariant(this._spaceKey);
|
|
57
|
-
const space =
|
|
57
|
+
const space = this._spaceManager.spaces.get(this._spaceKey);
|
|
58
58
|
invariant(space);
|
|
59
59
|
|
|
60
60
|
invariant(request.space);
|
|
@@ -67,6 +67,8 @@ export class SpaceInvitationProtocol implements InvitationProtocol {
|
|
|
67
67
|
identityKey,
|
|
68
68
|
space.key,
|
|
69
69
|
space.inner.genesisFeedKey,
|
|
70
|
+
invitation.role ?? SpaceMember.Role.ADMIN,
|
|
71
|
+
space.inner.spaceState.membershipChainHeads,
|
|
70
72
|
guestProfile,
|
|
71
73
|
invitation.delegationCredentialId,
|
|
72
74
|
);
|
|
@@ -102,7 +104,7 @@ export class SpaceInvitationProtocol implements InvitationProtocol {
|
|
|
102
104
|
invitationId: invitation.invitationId,
|
|
103
105
|
authMethod: invitation.authMethod,
|
|
104
106
|
swarmKey: invitation.swarmKey,
|
|
105
|
-
role: SpaceMember.Role.ADMIN,
|
|
107
|
+
role: invitation.role ?? SpaceMember.Role.ADMIN,
|
|
106
108
|
expiresOn: invitation.lifetime
|
|
107
109
|
? new Date((invitation.created?.getTime() ?? Date.now()) + invitation.lifetime)
|
|
108
110
|
: undefined,
|
|
@@ -339,10 +339,10 @@ export class ClientServicesHost {
|
|
|
339
339
|
const traceId = PublicKey.random().toHex();
|
|
340
340
|
log.trace('dxos.sdk.client-services-host.reset', trace.begin({ id: traceId }));
|
|
341
341
|
|
|
342
|
-
log('resetting...');
|
|
342
|
+
log.info('resetting...');
|
|
343
343
|
await this._serviceContext?.close();
|
|
344
344
|
await this._storage!.reset();
|
|
345
|
-
log('reset');
|
|
345
|
+
log.info('reset');
|
|
346
346
|
log.trace('dxos.sdk.client-services-host.reset', trace.end({ id: traceId }));
|
|
347
347
|
await this._callbacks?.onReset?.();
|
|
348
348
|
}
|
|
@@ -20,6 +20,7 @@ import { CancelledError, SystemError } from '@dxos/protocols';
|
|
|
20
20
|
import { SpaceState, type Space as SpaceProto, CreateEpochRequest } from '@dxos/protocols/proto/dxos/client/services';
|
|
21
21
|
import { type FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
22
22
|
import { type SpaceCache } from '@dxos/protocols/proto/dxos/echo/metadata';
|
|
23
|
+
import { SpaceMember } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
23
24
|
import {
|
|
24
25
|
AdmittedFeed,
|
|
25
26
|
type ProfileDocument,
|
|
@@ -123,7 +124,7 @@ export class DataSpace {
|
|
|
123
124
|
new ComplexSet(
|
|
124
125
|
PublicKey.hash,
|
|
125
126
|
Array.from(this._inner.spaceState.members.values())
|
|
126
|
-
.filter((member) =>
|
|
127
|
+
.filter((member) => member.role !== SpaceMember.Role.REMOVED)
|
|
127
128
|
.map((member) => member.key),
|
|
128
129
|
),
|
|
129
130
|
update: this._inner.stateUpdate,
|
|
@@ -36,7 +36,7 @@ export const spaceGenesis = async (
|
|
|
36
36
|
assertion: {
|
|
37
37
|
'@type': 'dxos.halo.credentials.SpaceMember',
|
|
38
38
|
spaceKey: space.key,
|
|
39
|
-
role: SpaceMember.Role.
|
|
39
|
+
role: SpaceMember.Role.OWNER,
|
|
40
40
|
profile: signingContext.getProfile(),
|
|
41
41
|
genesisFeedKey: space.controlFeedKey ?? failUndefined(),
|
|
42
42
|
},
|
|
@@ -22,8 +22,9 @@ import {
|
|
|
22
22
|
type SubscribeMessagesRequest,
|
|
23
23
|
type UpdateSpaceRequest,
|
|
24
24
|
type WriteCredentialsRequest,
|
|
25
|
+
type UpdateMemberRoleRequest,
|
|
25
26
|
} from '@dxos/protocols/proto/dxos/client/services';
|
|
26
|
-
import { type Credential } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
27
|
+
import { type Credential, SpaceMember as HaloSpaceMember } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
27
28
|
import { type GossipMessage } from '@dxos/protocols/proto/dxos/mesh/teleport/gossip';
|
|
28
29
|
import { type Provider } from '@dxos/util';
|
|
29
30
|
|
|
@@ -67,6 +68,10 @@ export class SpacesServiceImpl implements SpacesService {
|
|
|
67
68
|
}
|
|
68
69
|
}
|
|
69
70
|
|
|
71
|
+
async updateMemberRole(_: UpdateMemberRoleRequest): Promise<void> {
|
|
72
|
+
throw new Error('not implemented');
|
|
73
|
+
}
|
|
74
|
+
|
|
70
75
|
querySpaces(): Stream<QuerySpacesResponse> {
|
|
71
76
|
return new Stream<QuerySpacesResponse>(({ next, ctx }) => {
|
|
72
77
|
const scheduler = new UpdateScheduler(
|
|
@@ -213,11 +218,12 @@ export class SpacesServiceImpl implements SpacesService {
|
|
|
213
218
|
identityKey: member.key,
|
|
214
219
|
profile: member.profile ?? {},
|
|
215
220
|
},
|
|
216
|
-
presence:
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
+
presence:
|
|
222
|
+
member.role === HaloSpaceMember.Role.REMOVED
|
|
223
|
+
? SpaceMember.PresenceState.REMOVED
|
|
224
|
+
: isMe || peers.length > 0
|
|
225
|
+
? SpaceMember.PresenceState.ONLINE
|
|
226
|
+
: SpaceMember.PresenceState.OFFLINE,
|
|
221
227
|
peerStates: peers,
|
|
222
228
|
};
|
|
223
229
|
}),
|
package/src/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const DXOS_VERSION = "0.5.1-next.
|
|
1
|
+
export const DXOS_VERSION = "0.5.1-next.d0efa9a";
|