@dxos/client-services 0.10.0 → 0.11.1
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/chunk-client-services-layer.mjs +11425 -0
- package/dist/lib/chunk-client-services-layer.mjs.map +1 -0
- package/dist/lib/chunk-decorate.mjs +9 -0
- package/dist/lib/index.mjs +731 -0
- package/dist/lib/index.mjs.map +1 -0
- package/dist/lib/packlets/diagnostics/browser-diagnostics-broadcast.mjs +72 -0
- package/dist/lib/packlets/diagnostics/browser-diagnostics-broadcast.mjs.map +1 -0
- package/dist/lib/packlets/diagnostics/diagnostics-broadcast.mjs +14 -0
- package/dist/lib/packlets/diagnostics/diagnostics-broadcast.mjs.map +1 -0
- package/dist/lib/packlets/locks/browser.mjs +105 -0
- package/dist/lib/packlets/locks/browser.mjs.map +1 -0
- package/dist/lib/packlets/locks/node.mjs +53 -0
- package/dist/lib/packlets/locks/node.mjs.map +1 -0
- package/dist/lib/testing.mjs +570 -0
- package/dist/lib/testing.mjs.map +1 -0
- package/dist/types/src/index.d.ts +2 -0
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/packlets/agents/edge-agent-manager.d.ts +21 -4
- package/dist/types/src/packlets/agents/edge-agent-manager.d.ts.map +1 -1
- package/dist/types/src/packlets/agents/edge-agent-service.d.ts +8 -7
- package/dist/types/src/packlets/agents/edge-agent-service.d.ts.map +1 -1
- package/dist/types/src/packlets/devices/devices-service.d.ts +7 -5
- package/dist/types/src/packlets/devices/devices-service.d.ts.map +1 -1
- package/dist/types/src/packlets/devtools/devtools.d.ts +30 -29
- package/dist/types/src/packlets/devtools/devtools.d.ts.map +1 -1
- package/dist/types/src/packlets/devtools/feeds.d.ts +1 -1
- package/dist/types/src/packlets/devtools/feeds.d.ts.map +1 -1
- package/dist/types/src/packlets/devtools/network.d.ts +2 -1
- package/dist/types/src/packlets/devtools/network.d.ts.map +1 -1
- package/dist/types/src/packlets/devtools/spaces.d.ts.map +1 -1
- package/dist/types/src/packlets/diagnostics/diagnostics-broadcast.d.ts +2 -2
- package/dist/types/src/packlets/diagnostics/diagnostics-broadcast.d.ts.map +1 -1
- package/dist/types/src/packlets/diagnostics/diagnostics-collector.d.ts.map +1 -1
- package/dist/types/src/packlets/diagnostics/diagnostics.d.ts +1 -8
- package/dist/types/src/packlets/diagnostics/diagnostics.d.ts.map +1 -1
- package/dist/types/src/packlets/identity/authenticator.d.ts +1 -1
- package/dist/types/src/packlets/identity/authenticator.d.ts.map +1 -1
- package/dist/types/src/packlets/identity/contacts-service.d.ts +9 -6
- package/dist/types/src/packlets/identity/contacts-service.d.ts.map +1 -1
- package/dist/types/src/packlets/identity/identity-manager.d.ts +32 -3
- package/dist/types/src/packlets/identity/identity-manager.d.ts.map +1 -1
- package/dist/types/src/packlets/identity/identity-recovery-manager.d.ts +23 -4
- package/dist/types/src/packlets/identity/identity-recovery-manager.d.ts.map +1 -1
- package/dist/types/src/packlets/identity/identity-service.d.ts +15 -20
- package/dist/types/src/packlets/identity/identity-service.d.ts.map +1 -1
- package/dist/types/src/packlets/identity/identity.d.ts +2 -2
- package/dist/types/src/packlets/identity/identity.d.ts.map +1 -1
- package/dist/types/src/packlets/invitations/edge-invitation-handler.d.ts.map +1 -1
- package/dist/types/src/packlets/invitations/invitations-handler.d.ts +17 -0
- package/dist/types/src/packlets/invitations/invitations-handler.d.ts.map +1 -1
- package/dist/types/src/packlets/invitations/invitations-manager.d.ts +25 -4
- package/dist/types/src/packlets/invitations/invitations-manager.d.ts.map +1 -1
- package/dist/types/src/packlets/invitations/invitations-service.d.ts +11 -11
- package/dist/types/src/packlets/invitations/invitations-service.d.ts.map +1 -1
- package/dist/types/src/packlets/logging/logging-service.d.ts +14 -12
- package/dist/types/src/packlets/logging/logging-service.d.ts.map +1 -1
- package/dist/types/src/packlets/metadata/index.d.ts +3 -0
- package/dist/types/src/packlets/metadata/index.d.ts.map +1 -0
- package/dist/types/src/packlets/metadata/metadata-store.d.ts +107 -0
- package/dist/types/src/packlets/metadata/metadata-store.d.ts.map +1 -0
- package/dist/types/src/packlets/metadata/metadata-store.test.d.ts +2 -0
- package/dist/types/src/packlets/metadata/metadata-store.test.d.ts.map +1 -0
- package/dist/types/src/packlets/metadata/sqlite-metadata-store.d.ts +65 -0
- package/dist/types/src/packlets/metadata/sqlite-metadata-store.d.ts.map +1 -0
- package/dist/types/src/packlets/network/network-service.d.ts +15 -14
- package/dist/types/src/packlets/network/network-service.d.ts.map +1 -1
- package/dist/types/src/packlets/pipeline/codec.d.ts +11 -0
- package/dist/types/src/packlets/pipeline/codec.d.ts.map +1 -0
- package/dist/types/src/packlets/pipeline/feeds.d.ts +7 -0
- package/dist/types/src/packlets/pipeline/feeds.d.ts.map +1 -0
- package/dist/types/src/packlets/pipeline/index.d.ts +5 -0
- package/dist/types/src/packlets/pipeline/index.d.ts.map +1 -0
- package/dist/types/src/packlets/pipeline/message-selector.d.ts +11 -0
- package/dist/types/src/packlets/pipeline/message-selector.d.ts.map +1 -0
- package/dist/types/src/packlets/pipeline/pipeline-stress.test.d.ts +2 -0
- package/dist/types/src/packlets/pipeline/pipeline-stress.test.d.ts.map +1 -0
- package/dist/types/src/packlets/pipeline/pipeline.d.ts +131 -0
- package/dist/types/src/packlets/pipeline/pipeline.d.ts.map +1 -0
- package/dist/types/src/packlets/pipeline/pipeline.test.d.ts +2 -0
- package/dist/types/src/packlets/pipeline/pipeline.test.d.ts.map +1 -0
- package/dist/types/src/packlets/pipeline/testing/index.d.ts +2 -0
- package/dist/types/src/packlets/pipeline/testing/index.d.ts.map +1 -0
- package/dist/types/src/packlets/pipeline/testing/test-feed-builder.d.ts +9 -0
- package/dist/types/src/packlets/pipeline/testing/test-feed-builder.d.ts.map +1 -0
- package/dist/types/src/packlets/pipeline/timeframe-clock.d.ts +31 -0
- package/dist/types/src/packlets/pipeline/timeframe-clock.d.ts.map +1 -0
- package/dist/types/src/packlets/services/client-services-layer.d.ts +21 -0
- package/dist/types/src/packlets/services/client-services-layer.d.ts.map +1 -0
- package/dist/types/src/packlets/services/cross-device-space-synchronizer.d.ts +28 -0
- package/dist/types/src/packlets/services/cross-device-space-synchronizer.d.ts.map +1 -0
- package/dist/types/src/packlets/services/effect-rpc.test.d.ts +2 -0
- package/dist/types/src/packlets/services/effect-rpc.test.d.ts.map +1 -0
- package/dist/types/src/packlets/services/feed-syncer.d.ts +22 -2
- package/dist/types/src/packlets/services/feed-syncer.d.ts.map +1 -1
- package/dist/types/src/packlets/services/index.d.ts +2 -2
- package/dist/types/src/packlets/services/index.d.ts.map +1 -1
- package/dist/types/src/packlets/services/platform.d.ts.map +1 -1
- package/dist/types/src/packlets/services/service-context.d.ts +38 -57
- package/dist/types/src/packlets/services/service-context.d.ts.map +1 -1
- package/dist/types/src/packlets/services/service-host.d.ts +82 -31
- package/dist/types/src/packlets/services/service-host.d.ts.map +1 -1
- package/dist/types/src/packlets/services/sqlite-storage.d.ts +29 -0
- package/dist/types/src/packlets/services/sqlite-storage.d.ts.map +1 -1
- package/dist/types/src/packlets/services/sqlite-storage.test.d.ts +2 -0
- package/dist/types/src/packlets/services/sqlite-storage.test.d.ts.map +1 -0
- package/dist/types/src/packlets/space/admission-discovery-extension.d.ts +30 -0
- package/dist/types/src/packlets/space/admission-discovery-extension.d.ts.map +1 -0
- package/dist/types/src/packlets/space/auth.d.ts +24 -0
- package/dist/types/src/packlets/space/auth.d.ts.map +1 -0
- package/dist/types/src/packlets/space/control-pipeline.d.ts +46 -0
- package/dist/types/src/packlets/space/control-pipeline.d.ts.map +1 -0
- package/dist/types/src/packlets/space/control-pipeline.test.d.ts +2 -0
- package/dist/types/src/packlets/space/control-pipeline.test.d.ts.map +1 -0
- package/dist/types/src/packlets/space/index.d.ts +6 -0
- package/dist/types/src/packlets/space/index.d.ts.map +1 -0
- package/dist/types/src/packlets/space/replication.browser.test.d.ts +2 -0
- package/dist/types/src/packlets/space/replication.browser.test.d.ts.map +1 -0
- package/dist/types/src/packlets/space/space-manager.browser.test.d.ts +2 -0
- package/dist/types/src/packlets/space/space-manager.browser.test.d.ts.map +1 -0
- package/dist/types/src/packlets/space/space-manager.d.ts +72 -0
- package/dist/types/src/packlets/space/space-manager.d.ts.map +1 -0
- package/dist/types/src/packlets/space/space-protocol.browser.test.d.ts +2 -0
- package/dist/types/src/packlets/space/space-protocol.browser.test.d.ts.map +1 -0
- package/dist/types/src/packlets/space/space-protocol.d.ts +99 -0
- package/dist/types/src/packlets/space/space-protocol.d.ts.map +1 -0
- package/dist/types/src/packlets/space/space-protocol.test.d.ts +2 -0
- package/dist/types/src/packlets/space/space-protocol.test.d.ts.map +1 -0
- package/dist/types/src/packlets/space/space.d.ts +65 -0
- package/dist/types/src/packlets/space/space.d.ts.map +1 -0
- package/dist/types/src/packlets/space/space.test.d.ts +2 -0
- package/dist/types/src/packlets/space/space.test.d.ts.map +1 -0
- package/dist/types/src/packlets/space/testing/change-metadata.d.ts +8 -0
- package/dist/types/src/packlets/space/testing/change-metadata.d.ts.map +1 -0
- package/dist/types/src/packlets/space/testing/index.d.ts +4 -0
- package/dist/types/src/packlets/space/testing/index.d.ts.map +1 -0
- package/dist/types/src/packlets/space/testing/test-agent-builder.d.ts +62 -0
- package/dist/types/src/packlets/space/testing/test-agent-builder.d.ts.map +1 -0
- package/dist/types/src/packlets/space-export/serialized-space-reader.d.ts +1 -1
- package/dist/types/src/packlets/space-export/serialized-space-reader.d.ts.map +1 -1
- package/dist/types/src/packlets/space-export/serialized-space-writer.d.ts.map +1 -1
- package/dist/types/src/packlets/spaces/data-space-manager.d.ts +40 -7
- package/dist/types/src/packlets/spaces/data-space-manager.d.ts.map +1 -1
- package/dist/types/src/packlets/spaces/data-space.d.ts +3 -1
- package/dist/types/src/packlets/spaces/data-space.d.ts.map +1 -1
- package/dist/types/src/packlets/spaces/genesis.d.ts +1 -1
- package/dist/types/src/packlets/spaces/genesis.d.ts.map +1 -1
- package/dist/types/src/packlets/spaces/spaces-service.d.ts +25 -23
- package/dist/types/src/packlets/spaces/spaces-service.d.ts.map +1 -1
- package/dist/types/src/packlets/storage/level.d.ts.map +1 -1
- package/dist/types/src/packlets/system/system-service.d.ts +18 -18
- package/dist/types/src/packlets/system/system-service.d.ts.map +1 -1
- package/dist/types/src/packlets/testing/invitation-utils.d.ts +1 -1
- package/dist/types/src/packlets/testing/invitation-utils.d.ts.map +1 -1
- package/dist/types/src/packlets/testing/test-builder.d.ts +7 -6
- package/dist/types/src/packlets/testing/test-builder.d.ts.map +1 -1
- package/dist/types/src/packlets/worker/worker-runtime.d.ts +41 -58
- package/dist/types/src/packlets/worker/worker-runtime.d.ts.map +1 -1
- package/dist/types/src/packlets/worker/worker-session.d.ts +21 -8
- package/dist/types/src/packlets/worker/worker-session.d.ts.map +1 -1
- package/dist/types/src/testing/index.d.ts +1 -0
- package/dist/types/src/testing/index.d.ts.map +1 -1
- package/dist/types/src/version.d.ts +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +52 -48
- package/src/index.ts +2 -0
- package/src/packlets/agents/edge-agent-manager.ts +56 -15
- package/src/packlets/agents/edge-agent-service.ts +25 -15
- package/src/packlets/devices/devices-service.test.ts +20 -19
- package/src/packlets/devices/devices-service.ts +17 -17
- package/src/packlets/devtools/devtools.ts +133 -75
- package/src/packlets/devtools/feeds.ts +2 -1
- package/src/packlets/devtools/network.ts +42 -12
- package/src/packlets/devtools/spaces.ts +1 -1
- package/src/packlets/diagnostics/diagnostics-broadcast.ts +4 -2
- package/src/packlets/diagnostics/diagnostics-collector.ts +5 -18
- package/src/packlets/diagnostics/diagnostics.ts +0 -11
- package/src/packlets/identity/authenticator.ts +2 -1
- package/src/packlets/identity/contacts-service.ts +46 -37
- package/src/packlets/identity/identity-manager.test.ts +3 -1
- package/src/packlets/identity/identity-manager.ts +73 -5
- package/src/packlets/identity/identity-recovery-manager.ts +56 -7
- package/src/packlets/identity/identity-service.test.ts +27 -18
- package/src/packlets/identity/identity-service.ts +114 -71
- package/src/packlets/identity/identity.test.ts +4 -9
- package/src/packlets/identity/identity.ts +1 -2
- package/src/packlets/invitations/edge-invitation-handler.ts +0 -1
- package/src/packlets/invitations/invitations-handler.ts +39 -3
- package/src/packlets/invitations/invitations-manager.ts +52 -4
- package/src/packlets/invitations/invitations-service.ts +54 -28
- package/src/packlets/logging/logging-service.ts +41 -29
- package/src/packlets/logging/logging.test.ts +28 -15
- package/src/packlets/metadata/index.ts +6 -0
- package/src/packlets/metadata/metadata-store.test.ts +49 -0
- package/src/packlets/metadata/metadata-store.ts +446 -0
- package/src/packlets/metadata/sqlite-metadata-store.ts +409 -0
- package/src/packlets/network/network-service.test.ts +19 -12
- package/src/packlets/network/network-service.ts +96 -29
- package/src/packlets/pipeline/codec.ts +18 -0
- package/src/packlets/pipeline/feeds.ts +22 -0
- package/src/packlets/pipeline/index.ts +8 -0
- package/src/packlets/pipeline/message-selector.ts +35 -0
- package/src/packlets/pipeline/pipeline-stress.test.ts +230 -0
- package/src/packlets/pipeline/pipeline.test.ts +140 -0
- package/src/packlets/pipeline/pipeline.ts +439 -0
- package/src/packlets/pipeline/testing/index.ts +5 -0
- package/src/packlets/pipeline/testing/test-feed-builder.ts +19 -0
- package/src/packlets/pipeline/timeframe-clock.ts +81 -0
- package/src/packlets/services/client-services-layer.ts +186 -0
- package/src/packlets/services/cross-device-space-synchronizer.ts +132 -0
- package/src/packlets/services/effect-rpc.test.ts +314 -0
- package/src/packlets/services/feed-syncer.ts +57 -3
- package/src/packlets/services/index.ts +2 -2
- package/src/packlets/services/platform.ts +0 -6
- package/src/packlets/services/service-context.ts +219 -522
- package/src/packlets/services/service-host.test.ts +34 -11
- package/src/packlets/services/service-host.ts +693 -213
- package/src/packlets/services/spec.md +106 -0
- package/src/packlets/services/sqlite-storage.test.ts +48 -0
- package/src/packlets/services/sqlite-storage.ts +117 -20
- package/src/packlets/space/admission-discovery-extension.ts +91 -0
- package/src/packlets/space/auth.ts +92 -0
- package/src/packlets/space/control-pipeline.test.ts +165 -0
- package/src/packlets/space/control-pipeline.ts +229 -0
- package/src/packlets/space/index.ts +9 -0
- package/src/packlets/space/replication.browser.test.ts +58 -0
- package/src/packlets/space/space-manager.browser.test.ts +40 -0
- package/src/packlets/space/space-manager.ts +224 -0
- package/src/packlets/space/space-protocol.browser.test.ts +129 -0
- package/src/packlets/space/space-protocol.test.ts +158 -0
- package/src/packlets/space/space-protocol.ts +308 -0
- package/src/packlets/space/space.test.ts +181 -0
- package/src/packlets/space/space.ts +196 -0
- package/src/packlets/space/testing/change-metadata.ts +27 -0
- package/src/packlets/space/testing/index.ts +7 -0
- package/src/packlets/space/testing/test-agent-builder.ts +252 -0
- package/src/packlets/space-export/serialized-space-reader.ts +3 -1
- package/src/packlets/space-export/serialized-space-writer.ts +53 -30
- package/src/packlets/space-export/space-archive.test.ts +30 -0
- package/src/packlets/spaces/data-space-manager.test.ts +1 -1
- package/src/packlets/spaces/data-space-manager.ts +148 -33
- package/src/packlets/spaces/data-space.ts +29 -18
- package/src/packlets/spaces/edge-feed-replicator.test.ts +1 -1
- package/src/packlets/spaces/genesis.ts +1 -1
- package/src/packlets/spaces/spaces-service.test.ts +35 -22
- package/src/packlets/spaces/spaces-service.ts +259 -180
- package/src/packlets/storage/level.ts +3 -1
- package/src/packlets/system/system-service.test.ts +31 -13
- package/src/packlets/system/system-service.ts +65 -37
- package/src/packlets/testing/invitation-utils.ts +3 -3
- package/src/packlets/testing/test-builder.ts +35 -20
- package/src/packlets/worker/worker-runtime.ts +222 -260
- package/src/packlets/worker/worker-session.ts +108 -91
- package/src/testing/index.ts +1 -0
- package/src/version.ts +1 -1
- package/dist/lib/browser/chunk-QCWEHHJW.mjs +0 -24
- package/dist/lib/browser/chunk-QCWEHHJW.mjs.map +0 -7
- package/dist/lib/browser/chunk-XJRPB3GA.mjs +0 -22
- package/dist/lib/browser/chunk-XJRPB3GA.mjs.map +0 -7
- package/dist/lib/browser/chunk-XU5R2BMF.mjs +0 -8837
- package/dist/lib/browser/chunk-XU5R2BMF.mjs.map +0 -7
- package/dist/lib/browser/index.mjs +0 -876
- package/dist/lib/browser/index.mjs.map +0 -7
- package/dist/lib/browser/meta.json +0 -1
- package/dist/lib/browser/packlets/diagnostics/browser-diagnostics-broadcast.mjs +0 -88
- package/dist/lib/browser/packlets/diagnostics/browser-diagnostics-broadcast.mjs.map +0 -7
- package/dist/lib/browser/packlets/diagnostics/diagnostics-broadcast.mjs +0 -11
- package/dist/lib/browser/packlets/diagnostics/diagnostics-broadcast.mjs.map +0 -7
- package/dist/lib/browser/packlets/locks/browser.mjs +0 -86
- package/dist/lib/browser/packlets/locks/browser.mjs.map +0 -7
- package/dist/lib/browser/packlets/locks/node.mjs +0 -48
- package/dist/lib/browser/packlets/locks/node.mjs.map +0 -7
- package/dist/lib/browser/testing/index.mjs +0 -436
- package/dist/lib/browser/testing/index.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-2DT3MZRL.mjs +0 -22
- package/dist/lib/node-esm/chunk-2DT3MZRL.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-2SZHAWBN.mjs +0 -24
- package/dist/lib/node-esm/chunk-2SZHAWBN.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-H5YTUD35.mjs +0 -8837
- package/dist/lib/node-esm/chunk-H5YTUD35.mjs.map +0 -7
- package/dist/lib/node-esm/index.mjs +0 -876
- package/dist/lib/node-esm/index.mjs.map +0 -7
- package/dist/lib/node-esm/meta.json +0 -1
- package/dist/lib/node-esm/packlets/diagnostics/browser-diagnostics-broadcast.mjs +0 -88
- package/dist/lib/node-esm/packlets/diagnostics/browser-diagnostics-broadcast.mjs.map +0 -7
- package/dist/lib/node-esm/packlets/diagnostics/diagnostics-broadcast.mjs +0 -11
- package/dist/lib/node-esm/packlets/diagnostics/diagnostics-broadcast.mjs.map +0 -7
- package/dist/lib/node-esm/packlets/locks/browser.mjs +0 -86
- package/dist/lib/node-esm/packlets/locks/browser.mjs.map +0 -7
- package/dist/lib/node-esm/packlets/locks/node.mjs +0 -48
- package/dist/lib/node-esm/packlets/locks/node.mjs.map +0 -7
- package/dist/lib/node-esm/testing/index.mjs +0 -436
- package/dist/lib/node-esm/testing/index.mjs.map +0 -7
- package/dist/types/src/packlets/services/client-rpc-server.d.ts +0 -24
- package/dist/types/src/packlets/services/client-rpc-server.d.ts.map +0 -1
- package/dist/types/src/packlets/services/service-registry.d.ts +0 -15
- package/dist/types/src/packlets/services/service-registry.d.ts.map +0 -1
- package/dist/types/src/packlets/services/service-registry.test.d.ts +0 -2
- package/dist/types/src/packlets/services/service-registry.test.d.ts.map +0 -1
- package/dist/types/src/testing/setup.d.ts +0 -3
- package/dist/types/src/testing/setup.d.ts.map +0 -1
- package/src/packlets/services/client-rpc-server.ts +0 -111
- package/src/packlets/services/service-registry.test.ts +0 -78
- package/src/packlets/services/service-registry.ts +0 -36
- package/src/testing/setup.ts +0 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service-host.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/services/service-host.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"service-host.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/services/service-host.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,28 @@
|
|
|
1
1
|
import * as SqlClient from '@effect/sql/SqlClient';
|
|
2
2
|
import type * as SqlError from '@effect/sql/SqlError';
|
|
3
|
+
import * as EffectContext from 'effect/Context';
|
|
3
4
|
import * as Effect from 'effect/Effect';
|
|
5
|
+
import * as Layer from 'effect/Layer';
|
|
4
6
|
import { RuntimeProvider } from '@dxos/effect';
|
|
7
|
+
import { FeedStorageDirectoryService } from '@dxos/feed-store';
|
|
5
8
|
import { Directory, type Storage, StorageType } from '@dxos/random-access-storage';
|
|
6
9
|
import { SqlTransaction } from '@dxos/sql-sqlite';
|
|
7
10
|
type SqlTransactionTag = SqlTransaction.SqlTransaction;
|
|
11
|
+
/**
|
|
12
|
+
* True when a rejected SQL op failed because its connection was already closed — the message
|
|
13
|
+
* `The database connection is not open` (raised by `@effect/sql-sqlite-node`), which arrives
|
|
14
|
+
* wrapped as an effect `SqlError`, so walk the `cause` chain. Signals teardown, not a real fault.
|
|
15
|
+
*/
|
|
16
|
+
export declare const isClosedConnectionError: (err: unknown) => boolean;
|
|
8
17
|
export type SqliteStorageOptions = {
|
|
9
18
|
runtime: RuntimeProvider.RuntimeProvider<SqlClient.SqlClient | SqlTransactionTag>;
|
|
10
19
|
};
|
|
20
|
+
declare const SqliteStorageService_base: EffectContext.TagClass<SqliteStorageService, "@dxos/client-services/SqliteStorage", SqliteStorage>;
|
|
21
|
+
/**
|
|
22
|
+
* Effect service tag for {@link SqliteStorage}.
|
|
23
|
+
*/
|
|
24
|
+
export declare class SqliteStorageService extends SqliteStorageService_base {
|
|
25
|
+
}
|
|
11
26
|
/**
|
|
12
27
|
* SQLite-backed Storage implementation for hypercore feeds.
|
|
13
28
|
* Table: hypercore_files(path TEXT PRIMARY KEY, data BLOB NOT NULL DEFAULT x'').
|
|
@@ -23,5 +38,19 @@ export declare class SqliteStorage implements Storage {
|
|
|
23
38
|
reset(): Promise<void>;
|
|
24
39
|
close(): Promise<void>;
|
|
25
40
|
}
|
|
41
|
+
export type SqliteStorageLayerOptions = {
|
|
42
|
+
path?: string;
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* Effect Layer constructing a {@link SqliteStorage} from the ambient SQL runtime.
|
|
46
|
+
*/
|
|
47
|
+
export declare const SqliteStorageLayer: (options?: SqliteStorageLayerOptions) => Layer.Layer<SqliteStorageService, never, SqlClient.SqlClient | SqlTransactionTag>;
|
|
48
|
+
export type FeedStorageDirectoryLayerOptions = {
|
|
49
|
+
sub?: string;
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* Effect Layer providing the hypercore feeds root directory from {@link SqliteStorage}.
|
|
53
|
+
*/
|
|
54
|
+
export declare const FeedStorageDirectoryLayer: (options?: FeedStorageDirectoryLayerOptions) => Layer.Layer<FeedStorageDirectoryService, never, SqliteStorageService>;
|
|
26
55
|
export {};
|
|
27
56
|
//# sourceMappingURL=sqlite-storage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite-storage.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/services/sqlite-storage.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,KAAK,QAAQ,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"sqlite-storage.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/services/sqlite-storage.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,KAAK,QAAQ,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,aAAa,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAGtC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAE/D,OAAO,EAAE,SAAS,EAAa,KAAK,OAAO,EAAE,WAAW,EAAY,MAAM,6BAA6B,CAAC;AACxG,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,KAAK,iBAAiB,GAAG,cAAc,CAAC,cAAc,CAAC;AAEvD;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,QAAS,OAAO,KAAG,OAQtD,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,EAAE,eAAe,CAAC,eAAe,CAAC,SAAS,CAAC,SAAS,GAAG,iBAAiB,CAAC,CAAC;CACnF,CAAC;;AAEF;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,yBAGvC;CAAG;AA0SN;;;GAGG;AACH,qBAAa,aAAc,YAAW,OAAO;;IAC3C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,oBAAoB;IAOjC,YAAY,EAAE,OAAO,EAAE,EAAE,oBAAoB,EAAE,IAAI,SAAkB,EAGpE;IAED,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,SAAS,GAAG,iBAAiB,CAAC,CAW7F;IAEJ,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,eAAe,CAAC,GAAG,SAAK,GAAG,SAAS,CAuDnC;IAEK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAS3B;IAEK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAa3B;CACF;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,aACpB,yBAAyB,KACjC,KAAK,CAAC,KAAK,CAAC,oBAAoB,EAAE,KAAK,EAAE,SAAS,CAAC,SAAS,GAAG,iBAAiB,CAOhF,CAAC;AAEJ,MAAM,MAAM,gCAAgC,GAAG;IAC7C,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,yBAAyB,aAC3B,gCAAgC,KACxC,KAAK,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,EAAE,oBAAoB,CAOpE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sqlite-storage.test.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/services/sqlite-storage.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { type Trigger } from '@dxos/async';
|
|
2
|
+
import { type Credential } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
3
|
+
import { type AdmissionDiscoveryService, type GetAdmissionCredentialRequest } from '@dxos/protocols/proto/dxos/mesh/teleport';
|
|
4
|
+
import { type ExtensionContext, RpcExtension } from '@dxos/teleport';
|
|
5
|
+
import { type Space } from './space';
|
|
6
|
+
/**
|
|
7
|
+
* Guest's side for a connection to a concrete peer in p2p network during invitation.
|
|
8
|
+
*/
|
|
9
|
+
export declare class CredentialRetrieverExtension extends RpcExtension<{
|
|
10
|
+
AdmissionDiscoveryService: AdmissionDiscoveryService;
|
|
11
|
+
}, {}> {
|
|
12
|
+
private readonly _request;
|
|
13
|
+
private readonly _onResult;
|
|
14
|
+
private _ctx;
|
|
15
|
+
constructor(_request: GetAdmissionCredentialRequest, _onResult: Trigger<Credential>);
|
|
16
|
+
protected getHandlers(): Promise<{}>;
|
|
17
|
+
onOpen(context: ExtensionContext): Promise<void>;
|
|
18
|
+
onClose(): Promise<void>;
|
|
19
|
+
onAbort(): Promise<void>;
|
|
20
|
+
}
|
|
21
|
+
export declare class CredentialServerExtension extends RpcExtension<{}, {
|
|
22
|
+
AdmissionDiscoveryService: AdmissionDiscoveryService;
|
|
23
|
+
}> {
|
|
24
|
+
private readonly _space;
|
|
25
|
+
constructor(_space: Space);
|
|
26
|
+
protected getHandlers(): Promise<{
|
|
27
|
+
AdmissionDiscoveryService: AdmissionDiscoveryService;
|
|
28
|
+
}>;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=admission-discovery-extension.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admission-discovery-extension.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/space/admission-discovery-extension.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,OAAO,EAAgB,MAAM,aAAa,CAAC;AAIzD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,6CAA6C,CAAC;AAC9E,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,6BAA6B,EAEnC,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,KAAK,gBAAgB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAErE,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,SAAS,CAAC;AAErC;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,YAAY,CAC5D;IAAE,yBAAyB,EAAE,yBAAyB,CAAA;CAAE,EACxD,EAAE,CACH;IAIG,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAJ5B,OAAO,CAAC,IAAI,CAAiB;IAE7B,YACmB,QAAQ,EAAE,6BAA6B,EACvC,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,EAOhD;IAED,UAAyB,WAAW,IAAI,OAAO,CAAC,EAAE,CAAC,CAElD;IAEc,MAAM,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAU9D;IAEc,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAEtC;IAEc,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAEtC;CACF;AAED,qBAAa,yBAA0B,SAAQ,YAAY,CACzD,EAAE,EACF;IAAE,yBAAyB,EAAE,yBAAyB,CAAA;CAAE,CACzD;IACa,OAAO,CAAC,QAAQ,CAAC,MAAM;IAAnC,YAA6B,MAAM,EAAE,KAAK,EAMzC;IAED,UAAyB,WAAW,IAAI,OAAO,CAAC;QAAE,yBAAyB,EAAE,yBAAyB,CAAA;KAAE,CAAC,CAcxG;CACF"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { type AuthService } from '@dxos/protocols/proto/dxos/mesh/teleport/auth';
|
|
2
|
+
import { type ExtensionContext, RpcExtension } from '@dxos/teleport';
|
|
3
|
+
export type AuthProvider = (nonce: Uint8Array) => Promise<Uint8Array | undefined>;
|
|
4
|
+
export type AuthVerifier = (nonce: Uint8Array, credential: Uint8Array) => Promise<boolean>;
|
|
5
|
+
export type AuthExtensionProps = {
|
|
6
|
+
provider: AuthProvider;
|
|
7
|
+
verifier: AuthVerifier;
|
|
8
|
+
onAuthSuccess: () => void;
|
|
9
|
+
onAuthFailure: () => void;
|
|
10
|
+
};
|
|
11
|
+
export declare class AuthExtension extends RpcExtension<Services, Services> {
|
|
12
|
+
private readonly _authProps;
|
|
13
|
+
private readonly _ctx;
|
|
14
|
+
constructor(_authProps: AuthExtensionProps);
|
|
15
|
+
protected getHandlers(): Promise<Services>;
|
|
16
|
+
onOpen(context: ExtensionContext): Promise<void>;
|
|
17
|
+
onClose(): Promise<void>;
|
|
18
|
+
onAbort(): Promise<void>;
|
|
19
|
+
}
|
|
20
|
+
type Services = {
|
|
21
|
+
AuthService: AuthService;
|
|
22
|
+
};
|
|
23
|
+
export {};
|
|
24
|
+
//# sourceMappingURL=auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/space/auth.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,+CAA+C,CAAC;AACjF,OAAO,EAAE,KAAK,gBAAgB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAErE,MAAM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,UAAU,KAAK,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC;AAElF,MAAM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAE3F,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,YAAY,CAAC;IACvB,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,aAAa,EAAE,MAAM,IAAI,CAAC;CAC3B,CAAC;AAEF,qBAAa,aAAc,SAAQ,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAOrD,OAAO,CAAC,QAAQ,CAAC,UAAU;IANvC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAIlB;IAEH,YAA6B,UAAU,EAAE,kBAAkB,EAU1D;IAED,UAAgB,WAAW,IAAI,OAAO,CAAC,QAAQ,CAAC,CAiB/C;IAEc,MAAM,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB9D;IAEc,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAGtC;IAEc,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAGtC;CACF;AAED,KAAK,QAAQ,GAAG;IAAE,WAAW,EAAE,WAAW,CAAA;CAAE,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Context } from '@dxos/context';
|
|
2
|
+
import { type DelegateInvitationCredential, type FeedInfo, type MemberInfo, type SpaceState } from '@dxos/credentials';
|
|
3
|
+
import { type FeedWrapper } from '@dxos/feed-store';
|
|
4
|
+
import { PublicKey } from '@dxos/keys';
|
|
5
|
+
import type { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
6
|
+
import { type Credential } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
7
|
+
import { type AsyncCallback, Callback } from '@dxos/util';
|
|
8
|
+
import { type IMetadataStore } from '../metadata';
|
|
9
|
+
import { type PipelineAccessor } from '../pipeline';
|
|
10
|
+
export type ControlPipelineProps = {
|
|
11
|
+
spaceKey: PublicKey;
|
|
12
|
+
genesisFeed: FeedWrapper<FeedMessage>;
|
|
13
|
+
feedProvider: (feedKey: PublicKey) => Promise<FeedWrapper<FeedMessage>>;
|
|
14
|
+
metadataStore: IMetadataStore;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Processes HALO credentials, which include genesis and invitations.
|
|
18
|
+
*/
|
|
19
|
+
export declare class ControlPipeline {
|
|
20
|
+
private readonly _ctx;
|
|
21
|
+
private readonly _pipeline;
|
|
22
|
+
private readonly _spaceStateMachine;
|
|
23
|
+
private readonly _spaceKey;
|
|
24
|
+
private readonly _metadata;
|
|
25
|
+
private _targetTimeframe?;
|
|
26
|
+
private _lastTimeframeSaveTime;
|
|
27
|
+
readonly onFeedAdmitted: Callback<AsyncCallback<FeedInfo>>;
|
|
28
|
+
readonly onMemberRoleChanged: Callback<AsyncCallback<MemberInfo[]>>;
|
|
29
|
+
readonly onCredentialProcessed: Callback<AsyncCallback<Credential>>;
|
|
30
|
+
readonly onDelegatedInvitation: Callback<AsyncCallback<DelegateInvitationCredential>>;
|
|
31
|
+
readonly onDelegatedInvitationRemoved: Callback<AsyncCallback<DelegateInvitationCredential>>;
|
|
32
|
+
private _snapshotTask;
|
|
33
|
+
constructor({ spaceKey, genesisFeed, feedProvider, metadataStore }: ControlPipelineProps);
|
|
34
|
+
get spaceState(): SpaceState;
|
|
35
|
+
get pipeline(): PipelineAccessor;
|
|
36
|
+
setWriteFeed(feed: FeedWrapper<FeedMessage>): Promise<void>;
|
|
37
|
+
start(ctx: Context): Promise<void>;
|
|
38
|
+
private _processSnapshot;
|
|
39
|
+
private _saveSnapshot;
|
|
40
|
+
private _consumePipeline;
|
|
41
|
+
private _processMessage;
|
|
42
|
+
private _noteTargetStateIfNeeded;
|
|
43
|
+
stop(): Promise<void>;
|
|
44
|
+
private _saveTargetTimeframe;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=control-pipeline.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"control-pipeline.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/space/control-pipeline.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EACL,KAAK,4BAA4B,EACjC,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,UAAU,EAEhB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAGvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAExE,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,6CAA6C,CAAC;AAG5F,OAAO,EAAE,KAAK,aAAa,EAAE,QAAQ,EAAU,MAAM,YAAY,CAAC;AAElE,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAY,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE9D,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,EAAE,SAAS,CAAC;IACpB,WAAW,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IACtC,YAAY,EAAE,CAAC,OAAO,EAAE,SAAS,KAAK,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC;IACxE,aAAa,EAAE,cAAc,CAAC;CAC/B,CAAC;AAQF;;GAEG;AACH,qBACa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAoB;IAEvD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAiB;IAC3C,OAAO,CAAC,gBAAgB,CAAC,CAAY;IACrC,OAAO,CAAC,sBAAsB,CAAsB;IAEpD,SAAgB,cAAc,oCAA2C;IACzE,SAAgB,mBAAmB,EAAE,QAAQ,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAC3E,SAAgB,qBAAqB,EAAE,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC;IAC3E,SAAgB,qBAAqB,EAAE,QAAQ,CAAC,aAAa,CAAC,4BAA4B,CAAC,CAAC,CAAC;IAC7F,SAAgB,4BAA4B,EAAE,QAAQ,CAAC,aAAa,CAAC,4BAA4B,CAAC,CAAC,CAAC;IAEpG,OAAO,CAAC,aAAa,CAGlB;IAEH,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,EAAE,oBAAoB,EAmCvF;IAED,IAAI,UAAU,IAAI,UAAU,CAE3B;IAED,IAAI,QAAQ,IAAI,gBAAgB,CAE/B;IAEK,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAGhE;IAGK,KAAK,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAcvC;YAEa,gBAAgB;YAehB,aAAa;YAeb,gBAAgB;YAWhB,eAAe;YAmBf,wBAAwB;IAUhC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAM1B;YAEa,oBAAoB;CASnC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"control-pipeline.test.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/space/control-pipeline.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/space/index.ts"],"names":[],"mappings":"AAIA,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iCAAiC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"replication.browser.test.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/space/replication.browser.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"space-manager.browser.test.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/space/space-manager.browser.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import * as EffectContext from 'effect/Context';
|
|
2
|
+
import * as Layer from 'effect/Layer';
|
|
3
|
+
import { Context } from '@dxos/context';
|
|
4
|
+
import { type DelegateInvitationCredential, type MemberInfo } from '@dxos/credentials';
|
|
5
|
+
import { type FeedStore, FeedStoreService } from '@dxos/feed-store';
|
|
6
|
+
import { PublicKey } from '@dxos/keys';
|
|
7
|
+
import { type SwarmNetworkManager, SwarmNetworkManagerService } from '@dxos/network-manager';
|
|
8
|
+
import type { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
9
|
+
import { type SpaceMetadata } from '@dxos/protocols/proto/dxos/echo/metadata';
|
|
10
|
+
import type { Credential } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
11
|
+
import { type Teleport } from '@dxos/teleport';
|
|
12
|
+
import { type BlobStoreApi, BlobStoreApiService } from '@dxos/teleport-extension-object-sync';
|
|
13
|
+
import { ComplexMap } from '@dxos/util';
|
|
14
|
+
import { type IMetadataStore, IMetadataStoreService } from '../metadata';
|
|
15
|
+
import { Space } from './space';
|
|
16
|
+
import { type SwarmIdentity } from './space-protocol';
|
|
17
|
+
export type SpaceManagerProps = {
|
|
18
|
+
feedStore: FeedStore<FeedMessage>;
|
|
19
|
+
networkManager: SwarmNetworkManager;
|
|
20
|
+
metadataStore: IMetadataStore;
|
|
21
|
+
blobStore: BlobStoreApi;
|
|
22
|
+
disableP2pReplication?: boolean;
|
|
23
|
+
};
|
|
24
|
+
export type ConstructSpaceProps = {
|
|
25
|
+
metadata: SpaceMetadata;
|
|
26
|
+
swarmIdentity: SwarmIdentity;
|
|
27
|
+
memberKey: PublicKey;
|
|
28
|
+
/**
|
|
29
|
+
* Called when connection auth passed successful.
|
|
30
|
+
*/
|
|
31
|
+
onAuthorizedConnection: (session: Teleport) => void;
|
|
32
|
+
onAuthFailure?: (session: Teleport) => void;
|
|
33
|
+
onDelegatedInvitationStatusChange: (invitation: DelegateInvitationCredential, isActive: boolean) => Promise<void>;
|
|
34
|
+
onMemberRolesChanged: (member: MemberInfo[]) => Promise<void>;
|
|
35
|
+
};
|
|
36
|
+
export type RequestSpaceAdmissionCredentialProps = {
|
|
37
|
+
spaceKey: PublicKey;
|
|
38
|
+
identityKey: PublicKey;
|
|
39
|
+
swarmIdentity: SwarmIdentity;
|
|
40
|
+
timeout: number;
|
|
41
|
+
};
|
|
42
|
+
declare const SpaceManagerService_base: EffectContext.TagClass<SpaceManagerService, "@dxos/client-services/SpaceManager", SpaceManager>;
|
|
43
|
+
/**
|
|
44
|
+
* Effect service tag for {@link SpaceManager}.
|
|
45
|
+
*/
|
|
46
|
+
export declare class SpaceManagerService extends SpaceManagerService_base {
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Manages a collection of ECHO (Data) Spaces.
|
|
50
|
+
*/
|
|
51
|
+
export declare class SpaceManager {
|
|
52
|
+
private readonly _spaces;
|
|
53
|
+
private readonly _feedStore;
|
|
54
|
+
private readonly _networkManager;
|
|
55
|
+
private readonly _metadataStore;
|
|
56
|
+
private readonly _blobStore;
|
|
57
|
+
private readonly _disableP2pReplication;
|
|
58
|
+
constructor({ feedStore, networkManager, metadataStore, blobStore, disableP2pReplication }: SpaceManagerProps);
|
|
59
|
+
get spaces(): ComplexMap<PublicKey, Space>;
|
|
60
|
+
open(): Promise<void>;
|
|
61
|
+
close(): Promise<void>;
|
|
62
|
+
constructSpace({ metadata, swarmIdentity, onAuthorizedConnection, onAuthFailure, onDelegatedInvitationStatusChange, onMemberRolesChanged, memberKey }: ConstructSpaceProps): Promise<Space>;
|
|
63
|
+
requestSpaceAdmissionCredential(ctx: Context, params: RequestSpaceAdmissionCredentialProps): Promise<Credential>;
|
|
64
|
+
findSpaceByRootDocumentId(documentId: string): Space | undefined;
|
|
65
|
+
}
|
|
66
|
+
export type SpaceManagerLayerOptions = Pick<SpaceManagerProps, 'disableP2pReplication'>;
|
|
67
|
+
/**
|
|
68
|
+
* Effect Layer constructing a {@link SpaceManager} from ambient service dependencies.
|
|
69
|
+
*/
|
|
70
|
+
export declare const SpaceManagerLayer: (options?: SpaceManagerLayerOptions) => Layer.Layer<SpaceManagerService, never, FeedStoreService | SwarmNetworkManagerService | IMetadataStoreService | BlobStoreApiService>;
|
|
71
|
+
export {};
|
|
72
|
+
//# sourceMappingURL=space-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"space-manager.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/space/space-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"space-protocol.browser.test.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/space/space-protocol.browser.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { type Event } from '@dxos/async';
|
|
2
|
+
import { Context } from '@dxos/context';
|
|
3
|
+
import { type FeedWrapper } from '@dxos/feed-store';
|
|
4
|
+
import { PublicKey } from '@dxos/keys';
|
|
5
|
+
import { type SwarmNetworkManager, type WireProtocol, type WireProtocolProps } from '@dxos/network-manager';
|
|
6
|
+
import type { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
7
|
+
import { type MuxerStats, Teleport } from '@dxos/teleport';
|
|
8
|
+
import { type BlobStoreApi, BlobSync } from '@dxos/teleport-extension-object-sync';
|
|
9
|
+
import { ReplicatorExtension } from '@dxos/teleport-extension-replicator';
|
|
10
|
+
import { type AsyncCallback, CallbackCollection } from '@dxos/util';
|
|
11
|
+
import { type AuthProvider, type AuthVerifier } from './auth';
|
|
12
|
+
export declare const MOCK_AUTH_PROVIDER: AuthProvider;
|
|
13
|
+
export declare const MOCK_AUTH_VERIFIER: AuthVerifier;
|
|
14
|
+
export interface SwarmIdentity {
|
|
15
|
+
peerKey: PublicKey;
|
|
16
|
+
identityKey: PublicKey;
|
|
17
|
+
credentialProvider: AuthProvider;
|
|
18
|
+
credentialAuthenticator: AuthVerifier;
|
|
19
|
+
}
|
|
20
|
+
export type SpaceProtocolOptions = {
|
|
21
|
+
topic: PublicKey;
|
|
22
|
+
swarmIdentity: SwarmIdentity;
|
|
23
|
+
networkManager: SwarmNetworkManager;
|
|
24
|
+
blobStore: BlobStoreApi;
|
|
25
|
+
onFeed?: (feed: FeedWrapper<FeedMessage>) => Promise<void>;
|
|
26
|
+
/**
|
|
27
|
+
* Called when new session is authenticated.
|
|
28
|
+
* Additional extensions can be added here.
|
|
29
|
+
*/
|
|
30
|
+
onSessionAuth?: (session: Teleport) => void;
|
|
31
|
+
onAuthFailure?: (session: Teleport) => void;
|
|
32
|
+
disableP2pReplication?: boolean;
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Manages Teleport protocol stream creation and joining swarms with replication and presence extensions.
|
|
36
|
+
*/
|
|
37
|
+
export declare class SpaceProtocol {
|
|
38
|
+
private readonly _networkManager;
|
|
39
|
+
private readonly _swarmIdentity;
|
|
40
|
+
private readonly _onSessionAuth?;
|
|
41
|
+
private readonly _onAuthFailure?;
|
|
42
|
+
readonly blobSync: BlobSync;
|
|
43
|
+
private readonly _disableP2pReplication;
|
|
44
|
+
private readonly _topic;
|
|
45
|
+
private readonly _spaceKey;
|
|
46
|
+
private readonly _feeds;
|
|
47
|
+
private readonly _sessions;
|
|
48
|
+
private readonly _topology;
|
|
49
|
+
private _connection?;
|
|
50
|
+
readonly feedAdded: CallbackCollection<AsyncCallback<FeedWrapper<FeedMessage>>>;
|
|
51
|
+
get sessions(): ReadonlyMap<PublicKey, SpaceProtocolSession>;
|
|
52
|
+
get feeds(): ReadonlySet<FeedWrapper<FeedMessage>>;
|
|
53
|
+
private get _ownPeerKey();
|
|
54
|
+
constructor({ topic, swarmIdentity, networkManager, onSessionAuth, onAuthFailure, blobStore, disableP2pReplication }: SpaceProtocolOptions);
|
|
55
|
+
addFeed(feed: FeedWrapper<FeedMessage>): Promise<void>;
|
|
56
|
+
start(ctx: Context): Promise<void>;
|
|
57
|
+
updateTopology(): void;
|
|
58
|
+
stop(ctx: Context): Promise<void>;
|
|
59
|
+
private _createProtocolProvider;
|
|
60
|
+
}
|
|
61
|
+
export type SpaceProtocolSessionProps = {
|
|
62
|
+
wireProps: WireProtocolProps;
|
|
63
|
+
swarmIdentity: SwarmIdentity;
|
|
64
|
+
blobSync: BlobSync;
|
|
65
|
+
/**
|
|
66
|
+
* Called when new session is authenticated.
|
|
67
|
+
* Additional extensions can be added here.
|
|
68
|
+
*/
|
|
69
|
+
onSessionAuth?: (session: Teleport) => void;
|
|
70
|
+
onAuthFailure?: (session: Teleport) => void;
|
|
71
|
+
disableP2pReplication?: boolean;
|
|
72
|
+
};
|
|
73
|
+
export declare enum AuthStatus {
|
|
74
|
+
INITIAL = "INITIAL",
|
|
75
|
+
SUCCESS = "SUCCESS",
|
|
76
|
+
FAILURE = "FAILURE"
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Represents a single connection to a remote peer
|
|
80
|
+
*/
|
|
81
|
+
export declare class SpaceProtocolSession implements WireProtocol {
|
|
82
|
+
private readonly _wireProps;
|
|
83
|
+
private readonly _disableP2pReplication;
|
|
84
|
+
private readonly _onSessionAuth?;
|
|
85
|
+
private readonly _onAuthFailure?;
|
|
86
|
+
private readonly _swarmIdentity;
|
|
87
|
+
private readonly _blobSync;
|
|
88
|
+
private readonly _teleport;
|
|
89
|
+
readonly replicator: ReplicatorExtension;
|
|
90
|
+
private _authStatus;
|
|
91
|
+
get authStatus(): AuthStatus;
|
|
92
|
+
get stats(): Event<MuxerStats>;
|
|
93
|
+
constructor({ wireProps, swarmIdentity, onSessionAuth, onAuthFailure, blobSync, disableP2pReplication }: SpaceProtocolSessionProps);
|
|
94
|
+
get stream(): import("stream").Duplex;
|
|
95
|
+
open(sessionId?: PublicKey): Promise<void>;
|
|
96
|
+
close(): Promise<void>;
|
|
97
|
+
abort(): Promise<void>;
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=space-protocol.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"space-protocol.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/space/space-protocol.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"space-protocol.test.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/space/space-protocol.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { Event } from '@dxos/async';
|
|
2
|
+
import { type Context, Resource } from '@dxos/context';
|
|
3
|
+
import { type DelegateInvitationCredential, type FeedInfo, type MemberInfo } from '@dxos/credentials';
|
|
4
|
+
import { type FeedOptions, type FeedWrapper } from '@dxos/feed-store';
|
|
5
|
+
import { type PublicKey, type SpaceId } from '@dxos/keys';
|
|
6
|
+
import type { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
7
|
+
import { type Credential } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
8
|
+
import { type Timeframe } from '@dxos/timeframe';
|
|
9
|
+
import { type AsyncCallback, Callback } from '@dxos/util';
|
|
10
|
+
import { type IMetadataStore } from '../metadata';
|
|
11
|
+
import { type PipelineAccessor } from '../pipeline';
|
|
12
|
+
import { type SpaceProtocol } from './space-protocol';
|
|
13
|
+
type FeedProvider = (feedKey: PublicKey, opts?: FeedOptions) => Promise<FeedWrapper<FeedMessage>>;
|
|
14
|
+
export type SpaceProps = {
|
|
15
|
+
id: SpaceId;
|
|
16
|
+
spaceKey: PublicKey;
|
|
17
|
+
protocol: SpaceProtocol;
|
|
18
|
+
genesisFeed: FeedWrapper<FeedMessage>;
|
|
19
|
+
feedProvider: FeedProvider;
|
|
20
|
+
metadataStore: IMetadataStore;
|
|
21
|
+
memberKey: PublicKey;
|
|
22
|
+
snapshotId?: string | undefined;
|
|
23
|
+
onDelegatedInvitationStatusChange: (invitation: DelegateInvitationCredential, isActive: boolean) => Promise<void>;
|
|
24
|
+
onMemberRolesChanged: (member: MemberInfo[]) => Promise<void>;
|
|
25
|
+
};
|
|
26
|
+
export type CreatePipelineProps = {
|
|
27
|
+
start: Timeframe;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Spaces are globally addressable databases with access control.
|
|
31
|
+
*/
|
|
32
|
+
export declare class Space extends Resource {
|
|
33
|
+
readonly onCredentialProcessed: Callback<AsyncCallback<Credential>>;
|
|
34
|
+
readonly stateUpdate: Event<void>;
|
|
35
|
+
readonly protocol: SpaceProtocol;
|
|
36
|
+
private readonly _id;
|
|
37
|
+
private readonly _key;
|
|
38
|
+
private readonly _genesisFeedKey;
|
|
39
|
+
private readonly _feedProvider;
|
|
40
|
+
private readonly _controlPipeline;
|
|
41
|
+
private _controlFeed?;
|
|
42
|
+
private _dataFeed?;
|
|
43
|
+
constructor(params: SpaceProps);
|
|
44
|
+
get id(): SpaceId;
|
|
45
|
+
get key(): PublicKey;
|
|
46
|
+
get genesisFeedKey(): PublicKey;
|
|
47
|
+
get controlFeedKey(): PublicKey | undefined;
|
|
48
|
+
get dataFeedKey(): PublicKey | undefined;
|
|
49
|
+
get spaceState(): import("@dxos/credentials").SpaceState;
|
|
50
|
+
/**
|
|
51
|
+
* @test-only
|
|
52
|
+
*/
|
|
53
|
+
get controlPipeline(): PipelineAccessor;
|
|
54
|
+
setControlFeed(feed: FeedWrapper<FeedMessage>): Promise<this>;
|
|
55
|
+
setDataFeed(feed: FeedWrapper<FeedMessage>): Promise<this>;
|
|
56
|
+
/**
|
|
57
|
+
* Use for diagnostics.
|
|
58
|
+
*/
|
|
59
|
+
getControlFeeds(): FeedInfo[];
|
|
60
|
+
protected _open(ctx: Context): Promise<void>;
|
|
61
|
+
startProtocol(ctx: Context): Promise<void>;
|
|
62
|
+
protected _close(ctx: Context): Promise<void>;
|
|
63
|
+
}
|
|
64
|
+
export {};
|
|
65
|
+
//# sourceMappingURL=space.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"space.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/space/space.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"space.test.d.ts","sourceRoot":"","sources":["../../../../../src/packlets/space/space.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Storage } from '@dxos/random-access-storage';
|
|
2
|
+
/**
|
|
3
|
+
* This function will change the storage version in the metadata.
|
|
4
|
+
* This will break your storage and make it unusable.
|
|
5
|
+
* Use this only for testing purposes.
|
|
6
|
+
*/
|
|
7
|
+
export declare const changeStorageVersionInMetadata: (storage: Storage, version: number) => Promise<void>;
|
|
8
|
+
//# sourceMappingURL=change-metadata.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"change-metadata.d.ts","sourceRoot":"","sources":["../../../../../../src/packlets/space/testing/change-metadata.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAM3D;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,YAAmB,OAAO,WAAW,MAAM,kBASrF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/packlets/space/testing/index.ts"],"names":[],"mappings":"AAIA,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { type FeedStore } from '@dxos/feed-store';
|
|
2
|
+
import { type Keyring } from '@dxos/keyring';
|
|
3
|
+
import { PublicKey } from '@dxos/keys';
|
|
4
|
+
import { MemorySignalManagerContext } from '@dxos/messaging';
|
|
5
|
+
import { SwarmNetworkManager } from '@dxos/network-manager';
|
|
6
|
+
import { type FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
7
|
+
import { type Storage } from '@dxos/random-access-storage';
|
|
8
|
+
import { Gossip, Presence } from '@dxos/teleport-extension-gossip';
|
|
9
|
+
import { BlobStore } from '@dxos/teleport-extension-object-sync';
|
|
10
|
+
import { MetadataStore } from '../../metadata';
|
|
11
|
+
import { TestFeedBuilder } from '../../pipeline/testing';
|
|
12
|
+
import { type Space, SpaceManager, SpaceProtocol } from '../index';
|
|
13
|
+
export type NetworkManagerProvider = () => SwarmNetworkManager;
|
|
14
|
+
export declare const MemoryNetworkManagerProvider: (signalContext: MemorySignalManagerContext) => NetworkManagerProvider;
|
|
15
|
+
export type TestAgentBuilderOptions = {
|
|
16
|
+
storage?: Storage;
|
|
17
|
+
networkManagerProvider?: NetworkManagerProvider;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Factory for test agents.
|
|
21
|
+
*/
|
|
22
|
+
export declare class TestAgentBuilder {
|
|
23
|
+
private readonly _agents;
|
|
24
|
+
private readonly _storage;
|
|
25
|
+
private readonly _networkManagerProvider;
|
|
26
|
+
constructor({ storage, networkManagerProvider }?: TestAgentBuilderOptions);
|
|
27
|
+
close(): Promise<Space[][]>;
|
|
28
|
+
get agents(): TestAgent[];
|
|
29
|
+
getAgent(deviceKey: PublicKey): TestAgent | undefined;
|
|
30
|
+
createPeer(): Promise<TestAgent>;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Test agent that enables the creation and replication of multiple spaces.
|
|
34
|
+
*/
|
|
35
|
+
export declare class TestAgent {
|
|
36
|
+
private readonly _networkManagerProvider;
|
|
37
|
+
private readonly _feedBuilder;
|
|
38
|
+
readonly identityKey: PublicKey;
|
|
39
|
+
readonly deviceKey: PublicKey;
|
|
40
|
+
private readonly _spaces;
|
|
41
|
+
readonly storage: Storage;
|
|
42
|
+
readonly keyring: Keyring;
|
|
43
|
+
readonly feedStore: FeedStore<FeedMessage>;
|
|
44
|
+
private _metadataStore?;
|
|
45
|
+
get metadataStore(): MetadataStore;
|
|
46
|
+
private _blobStore?;
|
|
47
|
+
get blobStore(): BlobStore;
|
|
48
|
+
constructor(_networkManagerProvider: NetworkManagerProvider, _feedBuilder: TestFeedBuilder, identityKey: PublicKey, deviceKey: PublicKey);
|
|
49
|
+
close(): Promise<Space[]>;
|
|
50
|
+
get spaces(): Space[];
|
|
51
|
+
getSpace(spaceKey: PublicKey): Space | undefined;
|
|
52
|
+
private _networkManager?;
|
|
53
|
+
get networkManager(): SwarmNetworkManager;
|
|
54
|
+
private _spaceManager?;
|
|
55
|
+
get spaceManager(): SpaceManager;
|
|
56
|
+
createSpace(identityKey?: PublicKey, spaceKey?: PublicKey, genesisKey?: PublicKey, dataKey?: PublicKey, saveMetadata?: boolean): Promise<Space>;
|
|
57
|
+
createSpaceProtocol(topic: PublicKey, gossip?: Gossip): SpaceProtocol;
|
|
58
|
+
createGossip(): Gossip;
|
|
59
|
+
createPresence(gossip?: Gossip): Presence;
|
|
60
|
+
spaceGenesis(space: Space): Promise<void>;
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=test-agent-builder.d.ts.map
|