@dxos/client-services 0.1.2 → 0.1.3
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/src/index.d.ts +4 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +4 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/packlets/deprecated/index.d.ts +5 -0
- package/dist/src/packlets/deprecated/index.d.ts.map +1 -0
- package/dist/src/packlets/{services/impl → deprecated}/index.js +1 -3
- package/dist/src/packlets/deprecated/index.js.map +1 -0
- package/dist/src/packlets/{invitations/common.d.ts → deprecated/invitations.d.ts} +14 -2
- package/dist/src/packlets/deprecated/invitations.d.ts.map +1 -0
- package/dist/src/packlets/{invitations/common.js → deprecated/invitations.js} +1 -1
- package/dist/src/packlets/deprecated/invitations.js.map +1 -0
- package/dist/src/packlets/{services/impl → deprecated}/profile.d.ts +5 -5
- package/dist/src/packlets/deprecated/profile.d.ts.map +1 -0
- package/dist/src/packlets/{services/impl → deprecated}/profile.js +10 -10
- package/dist/src/packlets/deprecated/profile.js.map +1 -0
- package/dist/src/packlets/deprecated/space.d.ts +23 -0
- package/dist/src/packlets/deprecated/space.d.ts.map +1 -0
- package/dist/src/packlets/deprecated/space.js +206 -0
- package/dist/src/packlets/deprecated/space.js.map +1 -0
- package/dist/src/packlets/{services/impl → deprecated}/system.d.ts +2 -2
- package/dist/src/packlets/deprecated/system.d.ts.map +1 -0
- package/dist/src/packlets/{services/impl → deprecated}/system.js +3 -3
- package/dist/src/packlets/deprecated/system.js.map +1 -0
- package/dist/src/packlets/deprecated/tracing.d.ts +12 -0
- package/dist/src/packlets/deprecated/tracing.d.ts.map +1 -0
- package/dist/src/packlets/{services/impl → deprecated}/tracing.js +3 -3
- package/dist/src/packlets/deprecated/tracing.js.map +1 -0
- package/dist/src/packlets/{services/impl → devtools}/devtools.d.ts +11 -7
- package/dist/src/packlets/devtools/devtools.d.ts.map +1 -0
- package/dist/src/packlets/devtools/devtools.js +86 -0
- package/dist/src/packlets/devtools/devtools.js.map +1 -0
- package/dist/src/packlets/devtools/feeds.d.ts.map +1 -1
- package/dist/src/packlets/devtools/feeds.js +28 -26
- package/dist/src/packlets/devtools/feeds.js.map +1 -1
- package/dist/src/packlets/devtools/index.d.ts +1 -1
- package/dist/src/packlets/devtools/index.d.ts.map +1 -1
- package/dist/src/packlets/devtools/index.js +1 -1
- package/dist/src/packlets/devtools/index.js.map +1 -1
- package/dist/src/packlets/devtools/spaces.d.ts +2 -2
- package/dist/src/packlets/devtools/spaces.d.ts.map +1 -1
- package/dist/src/packlets/devtools/spaces.js +13 -13
- package/dist/src/packlets/devtools/spaces.js.map +1 -1
- package/dist/src/packlets/identity/devices-service-impl.d.ts +10 -0
- package/dist/src/packlets/identity/devices-service-impl.d.ts.map +1 -0
- package/dist/src/packlets/identity/devices-service-impl.js +47 -0
- package/dist/src/packlets/identity/devices-service-impl.js.map +1 -0
- package/dist/src/packlets/identity/identity-manager.test.js +7 -11
- package/dist/src/packlets/identity/identity-manager.test.js.map +1 -1
- package/dist/src/packlets/identity/identity.d.ts +2 -0
- package/dist/src/packlets/identity/identity.d.ts.map +1 -1
- package/dist/src/packlets/identity/identity.js +4 -1
- package/dist/src/packlets/identity/identity.js.map +1 -1
- package/dist/src/packlets/identity/identity.test.js +2 -3
- package/dist/src/packlets/identity/identity.test.js.map +1 -1
- package/dist/src/packlets/invitations/encoder.d.ts +9 -0
- package/dist/src/packlets/invitations/encoder.d.ts.map +1 -0
- package/dist/src/packlets/invitations/encoder.js +27 -0
- package/dist/src/packlets/invitations/encoder.js.map +1 -0
- package/dist/src/packlets/invitations/encoder.test.d.ts +2 -0
- package/dist/src/packlets/invitations/encoder.test.d.ts.map +1 -0
- package/dist/src/packlets/invitations/encoder.test.js +19 -0
- package/dist/src/packlets/invitations/encoder.test.js.map +1 -0
- package/dist/src/packlets/invitations/halo-invitations.d.ts +3 -3
- package/dist/src/packlets/invitations/halo-invitations.d.ts.map +1 -1
- package/dist/src/packlets/invitations/halo-invitations.js +14 -10
- package/dist/src/packlets/invitations/halo-invitations.js.map +1 -1
- package/dist/src/packlets/invitations/halo-invitations.test.d.ts +2 -0
- package/dist/src/packlets/invitations/halo-invitations.test.d.ts.map +1 -0
- package/dist/src/packlets/{services/testing/halo.test.js → invitations/halo-invitations.test.js} +6 -6
- package/dist/src/packlets/invitations/halo-invitations.test.js.map +1 -0
- package/dist/src/packlets/invitations/index.d.ts +6 -3
- package/dist/src/packlets/invitations/index.d.ts.map +1 -1
- package/dist/src/packlets/invitations/index.js +6 -3
- package/dist/src/packlets/invitations/index.js.map +1 -1
- package/dist/src/packlets/invitations/invitations-proxy.d.ts +14 -0
- package/dist/src/packlets/invitations/invitations-proxy.d.ts.map +1 -0
- package/dist/src/packlets/invitations/invitations-proxy.js +126 -0
- package/dist/src/packlets/invitations/invitations-proxy.js.map +1 -0
- package/dist/src/packlets/invitations/invitations.d.ts +90 -0
- package/dist/src/packlets/invitations/invitations.d.ts.map +1 -0
- package/dist/src/packlets/invitations/invitations.js +55 -0
- package/dist/src/packlets/invitations/invitations.js.map +1 -0
- package/dist/src/packlets/invitations/space-invitations-handler.d.ts +24 -0
- package/dist/src/packlets/invitations/space-invitations-handler.d.ts.map +1 -0
- package/dist/src/packlets/invitations/space-invitations-handler.js +232 -0
- package/dist/src/packlets/invitations/space-invitations-handler.js.map +1 -0
- package/dist/src/packlets/invitations/space-invitations-handler.test.d.ts +2 -0
- package/dist/src/packlets/invitations/space-invitations-handler.test.d.ts.map +1 -0
- package/dist/src/packlets/invitations/space-invitations-handler.test.js +131 -0
- package/dist/src/packlets/invitations/space-invitations-handler.test.js.map +1 -0
- package/dist/src/packlets/invitations/space-invitations-proxy.d.ts +11 -0
- package/dist/src/packlets/invitations/space-invitations-proxy.d.ts.map +1 -0
- package/dist/src/packlets/invitations/space-invitations-proxy.js +17 -0
- package/dist/src/packlets/invitations/space-invitations-proxy.js.map +1 -0
- package/dist/src/packlets/invitations/space-invitations-service.d.ts +22 -0
- package/dist/src/packlets/invitations/space-invitations-service.d.ts.map +1 -0
- package/dist/src/packlets/invitations/space-invitations-service.js +189 -0
- package/dist/src/packlets/invitations/space-invitations-service.js.map +1 -0
- package/dist/src/packlets/invitations/space-invitations-service.test.d.ts +2 -0
- package/dist/src/packlets/invitations/space-invitations-service.test.d.ts.map +1 -0
- package/dist/src/packlets/invitations/space-invitations-service.test.js +100 -0
- package/dist/src/packlets/invitations/space-invitations-service.test.js.map +1 -0
- package/dist/src/packlets/services/index.d.ts +3 -2
- package/dist/src/packlets/services/index.d.ts.map +1 -1
- package/dist/src/packlets/services/index.js +3 -2
- package/dist/src/packlets/services/index.js.map +1 -1
- package/dist/src/packlets/services/service-context.d.ts +4 -7
- package/dist/src/packlets/services/service-context.d.ts.map +1 -1
- package/dist/src/packlets/services/service-context.js +9 -25
- package/dist/src/packlets/services/service-context.js.map +1 -1
- package/dist/src/packlets/services/service-definitions.d.ts +30 -0
- package/dist/src/packlets/services/service-definitions.d.ts.map +1 -0
- package/dist/src/packlets/services/{services.js → service-definitions.js} +9 -5
- package/dist/src/packlets/services/service-definitions.js.map +1 -0
- package/dist/src/packlets/services/service-host.d.ts +9 -12
- package/dist/src/packlets/services/service-host.d.ts.map +1 -1
- package/dist/src/packlets/services/service-host.js +55 -54
- package/dist/src/packlets/services/service-host.js.map +1 -1
- package/dist/src/packlets/services/service-host.test.js +7 -17
- package/dist/src/packlets/services/service-host.test.js.map +1 -1
- package/dist/src/packlets/services/service-proxy.d.ts +17 -0
- package/dist/src/packlets/services/service-proxy.d.ts.map +1 -0
- package/dist/src/packlets/services/service-proxy.js +48 -0
- package/dist/src/packlets/services/service-proxy.js.map +1 -0
- package/dist/src/packlets/services/service-registry.d.ts +12 -0
- package/dist/src/packlets/services/service-registry.d.ts.map +1 -0
- package/dist/src/packlets/services/service-registry.js +24 -0
- package/dist/src/packlets/services/service-registry.js.map +1 -0
- package/dist/src/packlets/services/service-registry.test.d.ts +2 -0
- package/dist/src/packlets/services/service-registry.test.d.ts.map +1 -0
- package/dist/src/packlets/services/service-registry.test.js +75 -0
- package/dist/src/packlets/services/service-registry.test.js.map +1 -0
- package/dist/src/packlets/services/signer.d.ts +0 -3
- package/dist/src/packlets/services/signer.d.ts.map +1 -1
- package/dist/src/packlets/spaces/index.d.ts +2 -0
- package/dist/src/packlets/spaces/index.d.ts.map +1 -0
- package/dist/src/packlets/spaces/index.js +21 -0
- package/dist/src/packlets/spaces/index.js.map +1 -0
- package/dist/src/packlets/spaces/spaces-service.d.ts +11 -0
- package/dist/src/packlets/spaces/spaces-service.d.ts.map +1 -0
- package/dist/src/packlets/spaces/spaces-service.js +22 -0
- package/dist/src/packlets/spaces/spaces-service.js.map +1 -0
- package/dist/src/packlets/storage/storage.js +1 -1
- package/dist/src/packlets/storage/storage.js.map +1 -1
- package/dist/src/packlets/testing/index.d.ts +2 -0
- package/dist/src/packlets/testing/index.d.ts.map +1 -0
- package/dist/src/packlets/testing/index.js +21 -0
- package/dist/src/packlets/testing/index.js.map +1 -0
- package/dist/src/packlets/testing/test-builder.d.ts +14 -0
- package/dist/src/packlets/testing/test-builder.d.ts.map +1 -0
- package/dist/src/packlets/testing/test-builder.js +65 -0
- package/dist/src/packlets/testing/test-builder.js.map +1 -0
- package/dist/src/packlets/vault/iframe-runtime.d.ts +19 -0
- package/dist/src/packlets/vault/iframe-runtime.d.ts.map +1 -0
- package/dist/src/packlets/vault/iframe-runtime.js +54 -0
- package/dist/src/packlets/vault/iframe-runtime.js.map +1 -0
- package/dist/src/packlets/vault/index.d.ts +4 -0
- package/dist/src/packlets/vault/index.d.ts.map +1 -0
- package/dist/src/packlets/vault/index.js +23 -0
- package/dist/src/packlets/vault/index.js.map +1 -0
- package/dist/src/packlets/vault/services.d.ts +13 -0
- package/dist/src/packlets/vault/services.d.ts.map +1 -0
- package/dist/src/packlets/vault/services.js +15 -0
- package/dist/src/packlets/vault/services.js.map +1 -0
- package/dist/src/packlets/vault/worker-runtime.d.ts +32 -0
- package/dist/src/packlets/vault/worker-runtime.d.ts.map +1 -0
- package/dist/src/packlets/vault/worker-runtime.js +94 -0
- package/dist/src/packlets/vault/worker-runtime.js.map +1 -0
- package/dist/src/packlets/vault/worker-session.d.ts +29 -0
- package/dist/src/packlets/vault/worker-session.d.ts.map +1 -0
- package/dist/src/packlets/vault/worker-session.js +84 -0
- package/dist/src/packlets/vault/worker-session.js.map +1 -0
- package/package.json +26 -26
- package/src/index.ts +5 -2
- package/src/packlets/{services/impl → deprecated}/index.ts +1 -4
- package/src/packlets/{invitations/common.ts → deprecated/invitations.ts} +18 -3
- package/src/packlets/{services/impl → deprecated}/profile.ts +13 -13
- package/src/packlets/deprecated/space.ts +245 -0
- package/src/packlets/{services/impl → deprecated}/system.ts +2 -2
- package/src/packlets/{services/impl → deprecated}/tracing.ts +2 -2
- package/src/packlets/{services/impl → devtools}/devtools.ts +33 -34
- package/src/packlets/devtools/feeds.ts +31 -27
- package/src/packlets/devtools/index.ts +1 -1
- package/src/packlets/devtools/spaces.ts +19 -18
- package/src/packlets/identity/devices-service-impl.ts +54 -0
- package/src/packlets/identity/identity-manager.test.ts +7 -8
- package/src/packlets/identity/identity.test.ts +2 -3
- package/src/packlets/identity/identity.ts +5 -1
- package/src/packlets/invitations/encoder.test.ts +22 -0
- package/src/packlets/invitations/encoder.ts +26 -0
- package/src/packlets/{services/testing/halo.test.ts → invitations/halo-invitations.test.ts} +5 -5
- package/src/packlets/invitations/halo-invitations.ts +12 -10
- package/src/packlets/invitations/index.ts +6 -3
- package/src/packlets/invitations/invitations-proxy.ts +157 -0
- package/src/packlets/invitations/invitations.ts +149 -0
- package/src/packlets/invitations/space-invitations-handler.test.ts +154 -0
- package/src/packlets/invitations/space-invitations-handler.ts +266 -0
- package/src/packlets/invitations/space-invitations-proxy.ts +16 -0
- package/src/packlets/invitations/space-invitations-service.test.ts +129 -0
- package/src/packlets/invitations/space-invitations-service.ts +196 -0
- package/src/packlets/services/index.ts +3 -2
- package/src/packlets/services/service-context.ts +9 -31
- package/src/packlets/services/service-definitions.ts +54 -0
- package/src/packlets/services/service-host.test.ts +12 -24
- package/src/packlets/services/service-host.ts +64 -64
- package/src/packlets/services/service-proxy.ts +54 -0
- package/src/packlets/services/service-registry.test.ts +95 -0
- package/src/packlets/services/service-registry.ts +24 -0
- package/src/packlets/services/signer.ts +1 -3
- package/src/packlets/spaces/index.ts +5 -0
- package/src/packlets/spaces/spaces-service.ts +28 -0
- package/src/packlets/storage/storage.ts +1 -1
- package/src/packlets/testing/index.ts +5 -0
- package/src/packlets/testing/test-builder.ts +79 -0
- package/src/packlets/vault/iframe-runtime.ts +68 -0
- package/src/packlets/vault/index.ts +7 -0
- package/src/packlets/vault/services.ts +26 -0
- package/src/packlets/vault/worker-runtime.ts +111 -0
- package/src/packlets/vault/worker-session.ts +113 -0
- package/dist/src/packlets/devtools/devtools-host-events.d.ts +0 -5
- package/dist/src/packlets/devtools/devtools-host-events.d.ts.map +0 -1
- package/dist/src/packlets/devtools/devtools-host-events.js +0 -14
- package/dist/src/packlets/devtools/devtools-host-events.js.map +0 -1
- package/dist/src/packlets/invitations/common.d.ts.map +0 -1
- package/dist/src/packlets/invitations/common.js.map +0 -1
- package/dist/src/packlets/invitations/invitation-wrapper.d.ts +0 -36
- package/dist/src/packlets/invitations/invitation-wrapper.d.ts.map +0 -1
- package/dist/src/packlets/invitations/invitation-wrapper.js +0 -104
- package/dist/src/packlets/invitations/invitation-wrapper.js.map +0 -1
- package/dist/src/packlets/invitations/space-invitations.d.ts +0 -25
- package/dist/src/packlets/invitations/space-invitations.d.ts.map +0 -1
- package/dist/src/packlets/invitations/space-invitations.js +0 -136
- package/dist/src/packlets/invitations/space-invitations.js.map +0 -1
- package/dist/src/packlets/services/impl/devtools.d.ts.map +0 -1
- package/dist/src/packlets/services/impl/devtools.js +0 -77
- package/dist/src/packlets/services/impl/devtools.js.map +0 -1
- package/dist/src/packlets/services/impl/halo.d.ts +0 -20
- package/dist/src/packlets/services/impl/halo.d.ts.map +0 -1
- package/dist/src/packlets/services/impl/halo.js +0 -93
- package/dist/src/packlets/services/impl/halo.js.map +0 -1
- package/dist/src/packlets/services/impl/index.d.ts +0 -6
- package/dist/src/packlets/services/impl/index.d.ts.map +0 -1
- package/dist/src/packlets/services/impl/index.js.map +0 -1
- package/dist/src/packlets/services/impl/party.d.ts +0 -25
- package/dist/src/packlets/services/impl/party.d.ts.map +0 -1
- package/dist/src/packlets/services/impl/party.js +0 -265
- package/dist/src/packlets/services/impl/party.js.map +0 -1
- package/dist/src/packlets/services/impl/profile.d.ts.map +0 -1
- package/dist/src/packlets/services/impl/profile.js.map +0 -1
- package/dist/src/packlets/services/impl/system.d.ts.map +0 -1
- package/dist/src/packlets/services/impl/system.js.map +0 -1
- package/dist/src/packlets/services/impl/tracing.d.ts +0 -12
- package/dist/src/packlets/services/impl/tracing.d.ts.map +0 -1
- package/dist/src/packlets/services/impl/tracing.js.map +0 -1
- package/dist/src/packlets/services/service-factory.d.ts +0 -15
- package/dist/src/packlets/services/service-factory.d.ts.map +0 -1
- package/dist/src/packlets/services/service-factory.js +0 -25
- package/dist/src/packlets/services/service-factory.js.map +0 -1
- package/dist/src/packlets/services/services.d.ts +0 -19
- package/dist/src/packlets/services/services.d.ts.map +0 -1
- package/dist/src/packlets/services/services.js.map +0 -1
- package/dist/src/packlets/services/testing/halo.test.d.ts +0 -2
- package/dist/src/packlets/services/testing/halo.test.d.ts.map +0 -1
- package/dist/src/packlets/services/testing/halo.test.js.map +0 -1
- package/dist/src/packlets/services/testing/spaces.test.d.ts +0 -2
- package/dist/src/packlets/services/testing/spaces.test.d.ts.map +0 -1
- package/dist/src/packlets/services/testing/spaces.test.js +0 -68
- package/dist/src/packlets/services/testing/spaces.test.js.map +0 -1
- package/dist/src/packlets/services/testing/testing.d.ts +0 -8
- package/dist/src/packlets/services/testing/testing.d.ts.map +0 -1
- package/dist/src/packlets/services/testing/testing.js +0 -23
- package/dist/src/packlets/services/testing/testing.js.map +0 -1
- package/src/packlets/devtools/devtools-host-events.ts +0 -8
- package/src/packlets/invitations/invitation-wrapper.ts +0 -140
- package/src/packlets/invitations/space-invitations.ts +0 -159
- package/src/packlets/services/impl/halo.ts +0 -107
- package/src/packlets/services/impl/party.ts +0 -305
- package/src/packlets/services/service-factory.ts +0 -35
- package/src/packlets/services/services.ts +0 -39
- package/src/packlets/services/testing/spaces.test.ts +0 -87
- package/src/packlets/services/testing/testing.ts +0 -28
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Copyright 2022 DXOS.org
|
|
4
|
+
//
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.syncItems = exports.createIdentity = exports.createPeers = exports.createServiceContext = exports.createServiceHost = void 0;
|
|
7
|
+
const chai_1 = require("chai");
|
|
8
|
+
const messaging_1 = require("@dxos/messaging");
|
|
9
|
+
const network_manager_1 = require("@dxos/network-manager");
|
|
10
|
+
const random_access_storage_1 = require("@dxos/random-access-storage");
|
|
11
|
+
const services_1 = require("../services");
|
|
12
|
+
//
|
|
13
|
+
// TODO(burdon): Replace with test builder.
|
|
14
|
+
//
|
|
15
|
+
const createServiceHost = (config, signalManagerContext) => {
|
|
16
|
+
const networkManager = new network_manager_1.NetworkManager({
|
|
17
|
+
signalManager: new messaging_1.MemorySignalManager(signalManagerContext),
|
|
18
|
+
transportFactory: network_manager_1.MemoryTransportFactory
|
|
19
|
+
});
|
|
20
|
+
return new services_1.ClientServicesHost({
|
|
21
|
+
config,
|
|
22
|
+
networkManager
|
|
23
|
+
});
|
|
24
|
+
};
|
|
25
|
+
exports.createServiceHost = createServiceHost;
|
|
26
|
+
const createServiceContext = ({ signalContext = new messaging_1.MemorySignalManagerContext(), storage = (0, random_access_storage_1.createStorage)({ type: random_access_storage_1.StorageType.RAM }) } = {}) => {
|
|
27
|
+
const networkManager = new network_manager_1.NetworkManager({
|
|
28
|
+
signalManager: new messaging_1.MemorySignalManager(signalContext),
|
|
29
|
+
transportFactory: network_manager_1.MemoryTransportFactory
|
|
30
|
+
});
|
|
31
|
+
const modelFactory = (0, services_1.createDefaultModelFactory)();
|
|
32
|
+
return new services_1.ServiceContext(storage, networkManager, modelFactory);
|
|
33
|
+
};
|
|
34
|
+
exports.createServiceContext = createServiceContext;
|
|
35
|
+
const createPeers = async (numPeers) => {
|
|
36
|
+
const signalContext = new messaging_1.MemorySignalManagerContext();
|
|
37
|
+
return await Promise.all(Array.from(Array(numPeers)).map(async () => {
|
|
38
|
+
const peer = (0, exports.createServiceContext)({ signalContext });
|
|
39
|
+
await peer.open();
|
|
40
|
+
return peer;
|
|
41
|
+
}));
|
|
42
|
+
};
|
|
43
|
+
exports.createPeers = createPeers;
|
|
44
|
+
const createIdentity = async (peer) => {
|
|
45
|
+
await peer.createIdentity();
|
|
46
|
+
return peer;
|
|
47
|
+
};
|
|
48
|
+
exports.createIdentity = createIdentity;
|
|
49
|
+
// TODO(burdon): Create builder and make configurable.
|
|
50
|
+
const syncItems = async (space1, space2) => {
|
|
51
|
+
{
|
|
52
|
+
// Check item replicated from 1 => 2.
|
|
53
|
+
const item1 = await space1.database.createItem({ type: 'type-1' });
|
|
54
|
+
const item2 = await space2.database.waitForItem({ type: 'type-1' });
|
|
55
|
+
(0, chai_1.expect)(item1.id).to.eq(item2.id);
|
|
56
|
+
}
|
|
57
|
+
{
|
|
58
|
+
// Check item replicated from 2 => 1.
|
|
59
|
+
const item1 = await space2.database.createItem({ type: 'type-2' });
|
|
60
|
+
const item2 = await space1.database.waitForItem({ type: 'type-2' });
|
|
61
|
+
(0, chai_1.expect)(item1.id).to.eq(item2.id);
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
exports.syncItems = syncItems;
|
|
65
|
+
//# sourceMappingURL=test-builder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-builder.js","sourceRoot":"","sources":["../../../../src/packlets/testing/test-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { PortMuxer } from '@dxos/rpc-tunnel';
|
|
2
|
+
export declare type IframeRuntimeParams = {
|
|
3
|
+
portMuxer: PortMuxer;
|
|
4
|
+
};
|
|
5
|
+
/**
|
|
6
|
+
* Manages the client connection to the shared worker.
|
|
7
|
+
*/
|
|
8
|
+
export declare class IFrameRuntime {
|
|
9
|
+
private readonly _systemPort;
|
|
10
|
+
private readonly _windowAppPort;
|
|
11
|
+
private readonly _workerAppPort;
|
|
12
|
+
private readonly _systemRpc;
|
|
13
|
+
private readonly _transportService;
|
|
14
|
+
constructor({ portMuxer }: IframeRuntimeParams);
|
|
15
|
+
start(): void;
|
|
16
|
+
open(origin: string): Promise<void>;
|
|
17
|
+
close(): Promise<void>;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=iframe-runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iframe-runtime.d.ts","sourceRoot":"","sources":["../../../../src/packlets/vault/iframe-runtime.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAI7C,oBAAY,mBAAmB,GAAG;IAChC,SAAS,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAU;IACtC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAU;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAU;IACzC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoC;IAC/D,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAgC;gBAEtD,EAAE,SAAS,EAAE,EAAE,mBAAmB;IAwB9C,KAAK;IASC,IAAI,CAAC,MAAM,EAAE,MAAM;IAKnB,KAAK;CAIZ"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Copyright 2022 DXOS.org
|
|
4
|
+
//
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.IFrameRuntime = void 0;
|
|
7
|
+
const network_manager_1 = require("@dxos/network-manager");
|
|
8
|
+
const rpc_1 = require("@dxos/rpc");
|
|
9
|
+
const services_1 = require("./services");
|
|
10
|
+
/**
|
|
11
|
+
* Manages the client connection to the shared worker.
|
|
12
|
+
*/
|
|
13
|
+
class IFrameRuntime {
|
|
14
|
+
constructor({ portMuxer }) {
|
|
15
|
+
this._transportService = new network_manager_1.WebRTCTransportService();
|
|
16
|
+
this._systemPort = portMuxer.createWorkerPort({ channel: 'dxos:system' });
|
|
17
|
+
this._workerAppPort = portMuxer.createWorkerPort({ channel: 'dxos:app' });
|
|
18
|
+
this._windowAppPort = portMuxer.createIFramePort({
|
|
19
|
+
channel: 'dxos:app',
|
|
20
|
+
onOrigin: (origin) => this.open(origin)
|
|
21
|
+
});
|
|
22
|
+
this._systemRpc = (0, rpc_1.createProtoRpcPeer)({
|
|
23
|
+
requested: services_1.workerServiceBundle,
|
|
24
|
+
exposed: services_1.iframeServiceBundle,
|
|
25
|
+
handlers: {
|
|
26
|
+
BridgeService: this._transportService,
|
|
27
|
+
IframeService: {
|
|
28
|
+
async heartbeat() {
|
|
29
|
+
// Ok.
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
port: this._systemPort,
|
|
34
|
+
timeout: 200
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
start() {
|
|
38
|
+
this._workerAppPort.subscribe((msg) => this._windowAppPort.send(msg));
|
|
39
|
+
this._windowAppPort.subscribe((msg) => this._workerAppPort.send(msg));
|
|
40
|
+
window.addEventListener('beforeunload', () => {
|
|
41
|
+
this.close().catch((err) => console.error(err));
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
async open(origin) {
|
|
45
|
+
await this._systemRpc.open();
|
|
46
|
+
await this._systemRpc.rpc.WorkerService.start({ origin });
|
|
47
|
+
}
|
|
48
|
+
async close() {
|
|
49
|
+
await this._systemRpc.rpc.WorkerService.stop();
|
|
50
|
+
await this._systemRpc.close();
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
exports.IFrameRuntime = IFrameRuntime;
|
|
54
|
+
//# sourceMappingURL=iframe-runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iframe-runtime.js","sourceRoot":"","sources":["../../../../src/packlets/vault/iframe-runtime.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;AAEF,2DAA+D;AAE/D,mCAAsE;AAGtE,yCAA2F;AAM3F;;GAEG;AACH,MAAa,aAAa;IAOxB,YAAY,EAAE,SAAS,EAAuB;QAF7B,sBAAiB,GAAG,IAAI,wCAAsB,EAAE,CAAC;QAGhE,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC,gBAAgB,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC,gBAAgB,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC,gBAAgB,CAAC;YAC/C,OAAO,EAAE,UAAU;YACnB,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;SACxC,CAAC,CAAC;QAEH,IAAI,CAAC,UAAU,GAAG,IAAA,wBAAkB,EAAC;YACnC,SAAS,EAAE,8BAAmB;YAC9B,OAAO,EAAE,8BAAmB;YAC5B,QAAQ,EAAE;gBACR,aAAa,EAAE,IAAI,CAAC,iBAAkC;gBACtD,aAAa,EAAE;oBACb,KAAK,CAAC,SAAS;wBACb,MAAM;oBACR,CAAC;iBACF;aACF;YACD,IAAI,EAAE,IAAI,CAAC,WAAW;YACtB,OAAO,EAAE,GAAG;SACb,CAAC,CAAC;IACL,CAAC;IAED,KAAK;QACH,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACtE,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAEtE,MAAM,CAAC,gBAAgB,CAAC,cAAc,EAAE,GAAG,EAAE;YAC3C,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAc;QACvB,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;QAC7B,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAC/C,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAChC,CAAC;CACF;AAjDD,sCAiDC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/packlets/vault/index.ts"],"names":[],"mappings":"AAIA,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Copyright 2022 DXOS.org
|
|
4
|
+
//
|
|
5
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
8
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
9
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
10
|
+
}
|
|
11
|
+
Object.defineProperty(o, k2, desc);
|
|
12
|
+
}) : (function(o, m, k, k2) {
|
|
13
|
+
if (k2 === undefined) k2 = k;
|
|
14
|
+
o[k2] = m[k];
|
|
15
|
+
}));
|
|
16
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
17
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
18
|
+
};
|
|
19
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
+
__exportStar(require("./iframe-runtime"), exports);
|
|
21
|
+
__exportStar(require("./worker-runtime"), exports);
|
|
22
|
+
__exportStar(require("./worker-session"), exports);
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/packlets/vault/index.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;;;;;AAEF,mDAAiC;AACjC,mDAAiC;AACjC,mDAAiC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { IframeService, WorkerService } from '@dxos/protocols/proto/dxos/iframe';
|
|
2
|
+
import type { BridgeService } from '@dxos/protocols/proto/dxos/mesh/bridge';
|
|
3
|
+
import { ServiceBundle } from '@dxos/rpc';
|
|
4
|
+
export declare type IframeServiceBundle = {
|
|
5
|
+
IframeService: IframeService;
|
|
6
|
+
BridgeService: BridgeService;
|
|
7
|
+
};
|
|
8
|
+
export declare const iframeServiceBundle: ServiceBundle<IframeServiceBundle>;
|
|
9
|
+
export declare type WorkerServiceBundle = {
|
|
10
|
+
WorkerService: WorkerService;
|
|
11
|
+
};
|
|
12
|
+
export declare const workerServiceBundle: ServiceBundle<WorkerServiceBundle>;
|
|
13
|
+
//# sourceMappingURL=services.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../../../src/packlets/vault/services.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACtF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,oBAAY,mBAAmB,GAAG;IAChC,aAAa,EAAE,aAAa,CAAC;IAC7B,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAAa,CAAC,mBAAmB,CAGlE,CAAC;AAEF,oBAAY,mBAAmB,GAAG;IAChC,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAAa,CAAC,mBAAmB,CAElE,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Copyright 2022 DXOS.org
|
|
4
|
+
//
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.workerServiceBundle = exports.iframeServiceBundle = void 0;
|
|
7
|
+
const protocols_1 = require("@dxos/protocols");
|
|
8
|
+
exports.iframeServiceBundle = {
|
|
9
|
+
IframeService: protocols_1.schema.getService('dxos.iframe.IframeService'),
|
|
10
|
+
BridgeService: protocols_1.schema.getService('dxos.mesh.bridge.BridgeService')
|
|
11
|
+
};
|
|
12
|
+
exports.workerServiceBundle = {
|
|
13
|
+
WorkerService: protocols_1.schema.getService('dxos.iframe.WorkerService')
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=services.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"services.js","sourceRoot":"","sources":["../../../../src/packlets/vault/services.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;AAEF,+CAAyC;AAU5B,QAAA,mBAAmB,GAAuC;IACrE,aAAa,EAAE,kBAAM,CAAC,UAAU,CAAC,2BAA2B,CAAC;IAC7D,aAAa,EAAE,kBAAM,CAAC,UAAU,CAAC,gCAAgC,CAAC;CACnE,CAAC;AAMW,QAAA,mBAAmB,GAAuC;IACrE,aAAa,EAAE,kBAAM,CAAC,UAAU,CAAC,2BAA2B,CAAC;CAC9D,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Config } from '@dxos/config';
|
|
2
|
+
import { PortMuxer } from '@dxos/rpc-tunnel';
|
|
3
|
+
import { MaybePromise } from '@dxos/util';
|
|
4
|
+
export declare type CreateSessionParams = {
|
|
5
|
+
portMuxer: PortMuxer;
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* Runtime for the shared worker.
|
|
9
|
+
* Manages connections from proxies (in tabs).
|
|
10
|
+
* Tabs make requests to the `ClientServicesHost`, and provide a WebRTC gateway.
|
|
11
|
+
*/
|
|
12
|
+
export declare class WorkerRuntime {
|
|
13
|
+
private readonly _configProvider;
|
|
14
|
+
private readonly _transportFactory;
|
|
15
|
+
private readonly _ready;
|
|
16
|
+
private readonly sessions;
|
|
17
|
+
private _sessionForNetworking?;
|
|
18
|
+
private _clientServices;
|
|
19
|
+
private _config;
|
|
20
|
+
constructor(_configProvider: () => MaybePromise<Config>);
|
|
21
|
+
start(): Promise<void>;
|
|
22
|
+
stop(): Promise<void>;
|
|
23
|
+
/**
|
|
24
|
+
* Create a new session.
|
|
25
|
+
*/
|
|
26
|
+
createSession({ portMuxer }: CreateSessionParams): Promise<void>;
|
|
27
|
+
/**
|
|
28
|
+
* Selects one of the existing session fro WebRTC networking.
|
|
29
|
+
*/
|
|
30
|
+
private _reconnectWebrtc;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=worker-runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worker-runtime.d.ts","sourceRoot":"","sources":["../../../../src/packlets/vault/worker-runtime.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAK1C,oBAAY,mBAAmB,GAAG;IAChC,SAAS,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF;;;;GAIG;AACH,qBAAa,aAAa;IAUtB,OAAO,CAAC,QAAQ,CAAC,eAAe;IATlC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAqC;IACvE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4B;IACrD,OAAO,CAAC,qBAAqB,CAAC,CAAgB;IAC9C,OAAO,CAAC,eAAe,CAAsB;IAC7C,OAAO,CAAC,OAAO,CAAU;gBAIN,eAAe,EAAE,MAAM,YAAY,CAAC,MAAM,CAAC;IAGxD,KAAK;IAkBL,IAAI;IAKV;;OAEG;IACG,aAAa,CAAC,EAAE,SAAS,EAAE,EAAE,mBAAmB;IAwBtD;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAmBzB"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Copyright 2022 DXOS.org
|
|
4
|
+
//
|
|
5
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
6
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.WorkerRuntime = void 0;
|
|
10
|
+
const node_assert_1 = __importDefault(require("node:assert"));
|
|
11
|
+
const async_1 = require("@dxos/async");
|
|
12
|
+
const messaging_1 = require("@dxos/messaging");
|
|
13
|
+
const network_manager_1 = require("@dxos/network-manager");
|
|
14
|
+
const services_1 = require("../services");
|
|
15
|
+
const worker_session_1 = require("./worker-session");
|
|
16
|
+
/**
|
|
17
|
+
* Runtime for the shared worker.
|
|
18
|
+
* Manages connections from proxies (in tabs).
|
|
19
|
+
* Tabs make requests to the `ClientServicesHost`, and provide a WebRTC gateway.
|
|
20
|
+
*/
|
|
21
|
+
class WorkerRuntime {
|
|
22
|
+
// prettier-ignore
|
|
23
|
+
constructor(_configProvider) {
|
|
24
|
+
this._configProvider = _configProvider;
|
|
25
|
+
this._transportFactory = new network_manager_1.WebRTCTransportProxyFactory();
|
|
26
|
+
this._ready = new async_1.Trigger();
|
|
27
|
+
this.sessions = new Set();
|
|
28
|
+
}
|
|
29
|
+
async start() {
|
|
30
|
+
this._config = await this._configProvider();
|
|
31
|
+
const signalServer = this._config.get('runtime.services.signal.server');
|
|
32
|
+
// TODO(wittjosiah): Networking shouldn't be required.
|
|
33
|
+
(0, node_assert_1.default)(signalServer);
|
|
34
|
+
this._clientServices = new services_1.ClientServicesHost({
|
|
35
|
+
config: this._config,
|
|
36
|
+
networkManager: new network_manager_1.NetworkManager({
|
|
37
|
+
log: true,
|
|
38
|
+
signalManager: new messaging_1.WebsocketSignalManager([signalServer]),
|
|
39
|
+
transportFactory: this._transportFactory
|
|
40
|
+
})
|
|
41
|
+
});
|
|
42
|
+
await this._clientServices.open();
|
|
43
|
+
this._ready.wake();
|
|
44
|
+
}
|
|
45
|
+
async stop() {
|
|
46
|
+
// TODO(dmaretskyi): Terminate active sessions.
|
|
47
|
+
await this._clientServices.close();
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Create a new session.
|
|
51
|
+
*/
|
|
52
|
+
async createSession({ portMuxer }) {
|
|
53
|
+
const appPort = portMuxer.createWorkerPort({ channel: 'dxos:app' });
|
|
54
|
+
const systemPort = portMuxer.createWorkerPort({ channel: 'dxos:system' });
|
|
55
|
+
await this._ready.wait();
|
|
56
|
+
const session = new worker_session_1.WorkerSession({
|
|
57
|
+
clientServices: this._clientServices,
|
|
58
|
+
appPort,
|
|
59
|
+
systemPort
|
|
60
|
+
});
|
|
61
|
+
// When tab is closed.
|
|
62
|
+
session.onClose.set(async () => {
|
|
63
|
+
this.sessions.delete(session);
|
|
64
|
+
this._reconnectWebrtc();
|
|
65
|
+
});
|
|
66
|
+
await session.open();
|
|
67
|
+
this.sessions.add(session);
|
|
68
|
+
this._reconnectWebrtc();
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Selects one of the existing session fro WebRTC networking.
|
|
72
|
+
*/
|
|
73
|
+
_reconnectWebrtc() {
|
|
74
|
+
// Check if current session is already closed.
|
|
75
|
+
if (this._sessionForNetworking) {
|
|
76
|
+
if (!this.sessions.has(this._sessionForNetworking)) {
|
|
77
|
+
this._sessionForNetworking = undefined;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
// Select existing session.
|
|
81
|
+
if (!this._sessionForNetworking) {
|
|
82
|
+
const selected = Array.from(this.sessions).find((session) => session.bridgeService);
|
|
83
|
+
if (selected) {
|
|
84
|
+
this._sessionForNetworking = selected;
|
|
85
|
+
this._transportFactory.setBridgeService(selected.bridgeService);
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
this._transportFactory.setBridgeService(undefined);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
exports.WorkerRuntime = WorkerRuntime;
|
|
94
|
+
//# sourceMappingURL=worker-runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worker-runtime.js","sourceRoot":"","sources":["../../../../src/packlets/vault/worker-runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { BridgeService } from '@dxos/protocols/proto/dxos/mesh/bridge';
|
|
2
|
+
import { RpcPort } from '@dxos/rpc';
|
|
3
|
+
import { Callback } from '@dxos/util';
|
|
4
|
+
import { ClientServicesHost } from '../services';
|
|
5
|
+
export declare type WorkerSessionParams = {
|
|
6
|
+
clientServices: ClientServicesHost;
|
|
7
|
+
systemPort: RpcPort;
|
|
8
|
+
appPort: RpcPort;
|
|
9
|
+
options?: {
|
|
10
|
+
heartbeatInterval: number;
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Represents a tab connection within the worker.
|
|
15
|
+
*/
|
|
16
|
+
export declare class WorkerSession {
|
|
17
|
+
private readonly _clientRpc;
|
|
18
|
+
private readonly _systemRpc;
|
|
19
|
+
private readonly _startTrigger;
|
|
20
|
+
private readonly _options;
|
|
21
|
+
private _heartbeatTimer?;
|
|
22
|
+
readonly onClose: Callback<() => Promise<void>>;
|
|
23
|
+
origin?: string;
|
|
24
|
+
bridgeService?: BridgeService;
|
|
25
|
+
constructor({ clientServices, systemPort, appPort, options }: WorkerSessionParams);
|
|
26
|
+
open(): Promise<void>;
|
|
27
|
+
close(): Promise<void>;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=worker-session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worker-session.d.ts","sourceRoot":"","sources":["../../../../src/packlets/vault/worker-session.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,EAAoC,OAAO,EAAE,MAAM,WAAW,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGjD,oBAAY,mBAAmB,GAAG;IAChC,cAAc,EAAE,kBAAkB,CAAC;IACnC,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE;QACR,iBAAiB,EAAE,MAAM,CAAC;KAC3B,CAAC;CACH,CAAC;AAEF;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAmB;IAC9C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoC;IAC/D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiB;IAC/C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA8C;IACvE,OAAO,CAAC,eAAe,CAAC,CAAiB;IAEzC,SAAgB,OAAO,iBAAsB,QAAQ,IAAI,CAAC,EAAI;IAEvD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,aAAa,CAAC;gBAEzB,EACV,cAAc,EACd,UAAU,EACV,OAAO,EACP,OAEC,EACF,EAAE,mBAAmB;IAqChB,IAAI;IAkBJ,KAAK;CAaZ"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Copyright 2022 DXOS.org
|
|
4
|
+
//
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.WorkerSession = void 0;
|
|
7
|
+
const async_1 = require("@dxos/async");
|
|
8
|
+
const log_1 = require("@dxos/log");
|
|
9
|
+
const rpc_1 = require("@dxos/rpc");
|
|
10
|
+
const util_1 = require("@dxos/util");
|
|
11
|
+
const services_1 = require("./services");
|
|
12
|
+
/**
|
|
13
|
+
* Represents a tab connection within the worker.
|
|
14
|
+
*/
|
|
15
|
+
class WorkerSession {
|
|
16
|
+
constructor({ clientServices, systemPort, appPort, options = {
|
|
17
|
+
heartbeatInterval: 1000
|
|
18
|
+
} }) {
|
|
19
|
+
this._startTrigger = new async_1.Trigger();
|
|
20
|
+
this.onClose = new util_1.Callback();
|
|
21
|
+
this._options = options;
|
|
22
|
+
this._clientRpc = (0, rpc_1.createProtoRpcPeer)({
|
|
23
|
+
exposed: clientServices.descriptors,
|
|
24
|
+
handlers: clientServices.services,
|
|
25
|
+
port: appPort
|
|
26
|
+
});
|
|
27
|
+
this._systemRpc = (0, rpc_1.createProtoRpcPeer)({
|
|
28
|
+
requested: services_1.iframeServiceBundle,
|
|
29
|
+
exposed: services_1.workerServiceBundle,
|
|
30
|
+
handlers: {
|
|
31
|
+
WorkerService: {
|
|
32
|
+
start: async (request) => {
|
|
33
|
+
this.origin = request.origin;
|
|
34
|
+
this._startTrigger.wake();
|
|
35
|
+
},
|
|
36
|
+
stop: async () => {
|
|
37
|
+
setTimeout(async () => {
|
|
38
|
+
try {
|
|
39
|
+
await this.close();
|
|
40
|
+
}
|
|
41
|
+
catch (err) {
|
|
42
|
+
log_1.log.catch(err, {}, { file: "packages/sdk/client-services/src/packlets/vault/worker-session.ts", line: 69 });
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
port: systemPort,
|
|
49
|
+
timeout: 200
|
|
50
|
+
});
|
|
51
|
+
this.bridgeService = this._systemRpc.rpc.BridgeService;
|
|
52
|
+
}
|
|
53
|
+
async open() {
|
|
54
|
+
await Promise.all([this._clientRpc.open(), this._systemRpc.open()]);
|
|
55
|
+
await this._startTrigger.wait(); // TODO(dmaretskyi): Timeout.
|
|
56
|
+
this._heartbeatTimer = setInterval(async () => {
|
|
57
|
+
try {
|
|
58
|
+
await this._systemRpc.rpc.IframeService.heartbeat();
|
|
59
|
+
}
|
|
60
|
+
catch (err) {
|
|
61
|
+
try {
|
|
62
|
+
await this.close();
|
|
63
|
+
}
|
|
64
|
+
catch (err) {
|
|
65
|
+
log_1.log.catch(err, {}, { file: "packages/sdk/client-services/src/packlets/vault/worker-session.ts", line: 94 });
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}, this._options.heartbeatInterval);
|
|
69
|
+
}
|
|
70
|
+
async close() {
|
|
71
|
+
try {
|
|
72
|
+
await this.onClose.callIfSet();
|
|
73
|
+
}
|
|
74
|
+
catch (err) {
|
|
75
|
+
log_1.log.catch(err, {}, { file: "packages/sdk/client-services/src/packlets/vault/worker-session.ts", line: 104 });
|
|
76
|
+
}
|
|
77
|
+
if (this._heartbeatTimer !== undefined) {
|
|
78
|
+
clearInterval(this._heartbeatTimer);
|
|
79
|
+
}
|
|
80
|
+
await Promise.all([this._clientRpc.close(), this._systemRpc.close()]);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
exports.WorkerSession = WorkerSession;
|
|
84
|
+
//# sourceMappingURL=worker-session.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worker-session.js","sourceRoot":"","sources":["../../../../src/packlets/vault/worker-session.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxos/client-services",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.3",
|
|
4
4
|
"homepage": "https://dxos.org",
|
|
5
5
|
"bugs": "https://github.com/dxos/dxos/issues",
|
|
6
6
|
"license": "MIT",
|
|
@@ -15,39 +15,39 @@
|
|
|
15
15
|
"src"
|
|
16
16
|
],
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@dxos/async": "0.1.
|
|
19
|
-
"@dxos/codec-protobuf": "0.1.
|
|
20
|
-
"@dxos/config": "0.1.
|
|
21
|
-
"@dxos/credentials": "0.1.
|
|
22
|
-
"@dxos/crypto": "0.1.
|
|
23
|
-
"@dxos/debug": "0.1.
|
|
24
|
-
"@dxos/echo-db": "0.1.
|
|
25
|
-
"@dxos/feed-store": "0.1.
|
|
26
|
-
"@dxos/keyring": "0.1.
|
|
27
|
-
"@dxos/keys": "0.1.
|
|
28
|
-
"@dxos/log": "0.1.
|
|
29
|
-
"@dxos/messaging": "0.1.
|
|
30
|
-
"@dxos/model-factory": "0.1.
|
|
31
|
-
"@dxos/network-manager": "0.1.
|
|
32
|
-
"@dxos/object-model": "0.1.
|
|
33
|
-
"@dxos/protocol-plugin-rpc": "0.1.
|
|
34
|
-
"@dxos/protocols": "0.1.
|
|
35
|
-
"@dxos/random-access-storage": "0.1.
|
|
36
|
-
"@dxos/rpc": "0.1.
|
|
37
|
-
"@dxos/
|
|
38
|
-
"@dxos/
|
|
39
|
-
"@dxos/
|
|
18
|
+
"@dxos/async": "0.1.3",
|
|
19
|
+
"@dxos/codec-protobuf": "0.1.3",
|
|
20
|
+
"@dxos/config": "0.1.3",
|
|
21
|
+
"@dxos/credentials": "0.1.3",
|
|
22
|
+
"@dxos/crypto": "0.1.3",
|
|
23
|
+
"@dxos/debug": "0.1.3",
|
|
24
|
+
"@dxos/echo-db": "0.1.3",
|
|
25
|
+
"@dxos/feed-store": "0.1.3",
|
|
26
|
+
"@dxos/keyring": "0.1.3",
|
|
27
|
+
"@dxos/keys": "0.1.3",
|
|
28
|
+
"@dxos/log": "0.1.3",
|
|
29
|
+
"@dxos/messaging": "0.1.3",
|
|
30
|
+
"@dxos/model-factory": "0.1.3",
|
|
31
|
+
"@dxos/network-manager": "0.1.3",
|
|
32
|
+
"@dxos/object-model": "0.1.3",
|
|
33
|
+
"@dxos/protocol-plugin-rpc": "0.1.3",
|
|
34
|
+
"@dxos/protocols": "0.1.3",
|
|
35
|
+
"@dxos/random-access-storage": "0.1.3",
|
|
36
|
+
"@dxos/rpc": "0.1.3",
|
|
37
|
+
"@dxos/rpc-tunnel": "0.1.3",
|
|
38
|
+
"@dxos/text-model": "0.1.3",
|
|
39
|
+
"@dxos/timeframe": "0.1.3",
|
|
40
|
+
"@dxos/util": "0.1.3",
|
|
40
41
|
"abstract-leveldown": "~7.0.0",
|
|
41
42
|
"assert": "^2.0.0",
|
|
42
43
|
"base-x": "~3.0.9",
|
|
43
|
-
"json-stable-stringify": "^1.0.1",
|
|
44
44
|
"jsondown": "dxos/jsondown#main",
|
|
45
45
|
"level-js": "^5.0.2",
|
|
46
46
|
"memdown": "^5.1.0"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
|
-
"@dxos/signal": "0.1.
|
|
50
|
-
"@
|
|
49
|
+
"@dxos/signal": "0.1.3",
|
|
50
|
+
"@dxos/testutils": "0.1.3",
|
|
51
51
|
"@types/level-js": "~4.0.1",
|
|
52
52
|
"@types/memdown": "^3.0.0",
|
|
53
53
|
"@types/readable-stream": "^2.3.9"
|
package/src/index.ts
CHANGED
|
@@ -2,10 +2,13 @@
|
|
|
2
2
|
// Copyright 2020 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
+
export * from './errors';
|
|
6
|
+
|
|
7
|
+
export * from './packlets/deprecated';
|
|
5
8
|
export * from './packlets/devtools';
|
|
6
9
|
export * from './packlets/identity';
|
|
7
10
|
export * from './packlets/invitations';
|
|
8
11
|
export * from './packlets/services';
|
|
9
12
|
export * from './packlets/storage';
|
|
10
|
-
|
|
11
|
-
export * from './
|
|
13
|
+
export * from './packlets/testing';
|
|
14
|
+
export * from './packlets/vault';
|