@dxos/client-services 0.3.2-main.d77d2bc → 0.3.2-main.e5374ab
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/browser/{chunk-WOH6JPED.mjs → chunk-HQ4UBZ3F.mjs} +111 -164
- package/dist/lib/browser/chunk-HQ4UBZ3F.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +2 -2
- package/dist/lib/browser/index.mjs.map +2 -2
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/packlets/testing/index.mjs +1 -1
- package/dist/lib/browser/packlets/testing/index.mjs.map +2 -2
- package/dist/lib/node/index.cjs +155 -198
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/packlets/testing/index.cjs +130 -173
- package/dist/lib/node/packlets/testing/index.cjs.map +3 -3
- package/dist/types/src/packlets/devices/devices-service.d.ts +4 -4
- package/dist/types/src/packlets/devices/devices-service.d.ts.map +1 -1
- package/dist/types/src/packlets/devtools/devtools.d.ts +4 -4
- package/dist/types/src/packlets/devtools/devtools.d.ts.map +1 -1
- package/dist/types/src/packlets/devtools/feeds.d.ts +3 -3
- package/dist/types/src/packlets/devtools/feeds.d.ts.map +1 -1
- package/dist/types/src/packlets/devtools/keys.d.ts +2 -2
- package/dist/types/src/packlets/devtools/keys.d.ts.map +1 -1
- package/dist/types/src/packlets/devtools/metadata.d.ts +2 -2
- package/dist/types/src/packlets/devtools/metadata.d.ts.map +1 -1
- package/dist/types/src/packlets/devtools/network.d.ts +3 -3
- package/dist/types/src/packlets/devtools/network.d.ts.map +1 -1
- package/dist/types/src/packlets/devtools/spaces.d.ts +2 -2
- package/dist/types/src/packlets/devtools/spaces.d.ts.map +1 -1
- package/dist/types/src/packlets/identity/authenticator.d.ts +5 -5
- package/dist/types/src/packlets/identity/authenticator.d.ts.map +1 -1
- package/dist/types/src/packlets/identity/identity-manager.d.ts +5 -9
- package/dist/types/src/packlets/identity/identity-manager.d.ts.map +1 -1
- package/dist/types/src/packlets/identity/identity-service.d.ts +4 -4
- package/dist/types/src/packlets/identity/identity-service.d.ts.map +1 -1
- package/dist/types/src/packlets/identity/identity.d.ts +8 -8
- package/dist/types/src/packlets/identity/identity.d.ts.map +1 -1
- package/dist/types/src/packlets/invitations/device-invitation-protocol.d.ts +4 -4
- package/dist/types/src/packlets/invitations/device-invitation-protocol.d.ts.map +1 -1
- package/dist/types/src/packlets/invitations/invitation-extension.d.ts +3 -3
- package/dist/types/src/packlets/invitations/invitation-extension.d.ts.map +1 -1
- package/dist/types/src/packlets/invitations/invitation-protocol.d.ts +3 -3
- package/dist/types/src/packlets/invitations/invitation-protocol.d.ts.map +1 -1
- package/dist/types/src/packlets/invitations/invitations-handler.d.ts +1 -1
- package/dist/types/src/packlets/invitations/invitations-handler.d.ts.map +1 -1
- package/dist/types/src/packlets/invitations/invitations-service.d.ts +3 -3
- package/dist/types/src/packlets/invitations/invitations-service.d.ts.map +1 -1
- package/dist/types/src/packlets/invitations/space-invitation-protocol.d.ts +6 -6
- package/dist/types/src/packlets/invitations/space-invitation-protocol.d.ts.map +1 -1
- package/dist/types/src/packlets/locks/browser.d.ts +1 -1
- package/dist/types/src/packlets/locks/browser.d.ts.map +1 -1
- package/dist/types/src/packlets/locks/node.d.ts +1 -1
- package/dist/types/src/packlets/locks/node.d.ts.map +1 -1
- package/dist/types/src/packlets/locks/resource-lock.d.ts +1 -1
- package/dist/types/src/packlets/locks/resource-lock.d.ts.map +1 -1
- package/dist/types/src/packlets/logging/logging-service.d.ts +1 -1
- package/dist/types/src/packlets/logging/logging-service.d.ts.map +1 -1
- package/dist/types/src/packlets/network/network-service.d.ts +3 -3
- package/dist/types/src/packlets/network/network-service.d.ts.map +1 -1
- package/dist/types/src/packlets/services/client-rpc-server.d.ts +5 -5
- package/dist/types/src/packlets/services/client-rpc-server.d.ts.map +1 -1
- package/dist/types/src/packlets/services/diagnostics.d.ts +8 -8
- package/dist/types/src/packlets/services/diagnostics.d.ts.map +1 -1
- package/dist/types/src/packlets/services/service-context.d.ts +6 -6
- package/dist/types/src/packlets/services/service-context.d.ts.map +1 -1
- package/dist/types/src/packlets/services/service-host.d.ts +5 -5
- package/dist/types/src/packlets/services/service-host.d.ts.map +1 -1
- package/dist/types/src/packlets/services/service-registry.d.ts +1 -1
- package/dist/types/src/packlets/services/service-registry.d.ts.map +1 -1
- package/dist/types/src/packlets/spaces/data-space-manager.d.ts +7 -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 +9 -9
- package/dist/types/src/packlets/spaces/data-space.d.ts.map +1 -1
- package/dist/types/src/packlets/spaces/genesis.d.ts +3 -3
- package/dist/types/src/packlets/spaces/genesis.d.ts.map +1 -1
- package/dist/types/src/packlets/spaces/notarization-plugin.d.ts +5 -5
- package/dist/types/src/packlets/spaces/notarization-plugin.d.ts.map +1 -1
- package/dist/types/src/packlets/spaces/spaces-service.d.ts +7 -7
- package/dist/types/src/packlets/spaces/spaces-service.d.ts.map +1 -1
- package/dist/types/src/packlets/system/system-service.d.ts +5 -5
- package/dist/types/src/packlets/system/system-service.d.ts.map +1 -1
- package/dist/types/src/packlets/testing/credential-utils.d.ts +2 -2
- package/dist/types/src/packlets/testing/credential-utils.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 +4 -4
- package/dist/types/src/packlets/testing/test-builder.d.ts.map +1 -1
- package/dist/types/src/packlets/vault/iframe-host-runtime.d.ts +4 -4
- package/dist/types/src/packlets/vault/iframe-host-runtime.d.ts.map +1 -1
- package/dist/types/src/packlets/vault/iframe-proxy-runtime.d.ts +4 -4
- package/dist/types/src/packlets/vault/iframe-proxy-runtime.d.ts.map +1 -1
- package/dist/types/src/packlets/vault/shell-runtime.d.ts +4 -4
- package/dist/types/src/packlets/vault/shell-runtime.d.ts.map +1 -1
- package/dist/types/src/packlets/vault/worker-runtime.d.ts +3 -3
- package/dist/types/src/packlets/vault/worker-runtime.d.ts.map +1 -1
- package/dist/types/src/packlets/vault/worker-session.d.ts +3 -3
- package/dist/types/src/packlets/vault/worker-session.d.ts.map +1 -1
- package/dist/types/src/version.d.ts +1 -1
- package/package.json +37 -35
- package/src/packlets/devices/devices-service.test.ts +2 -2
- package/src/packlets/devices/devices-service.ts +10 -17
- package/src/packlets/devtools/devtools.ts +35 -35
- package/src/packlets/devtools/feeds.ts +6 -6
- package/src/packlets/devtools/keys.ts +2 -2
- package/src/packlets/devtools/metadata.ts +2 -2
- package/src/packlets/devtools/network.ts +8 -8
- package/src/packlets/devtools/spaces.ts +8 -5
- package/src/packlets/identity/authenticator.ts +5 -5
- package/src/packlets/identity/identity-manager.test.ts +7 -6
- package/src/packlets/identity/identity-manager.ts +18 -26
- package/src/packlets/identity/identity-service.test.ts +2 -2
- package/src/packlets/identity/identity-service.ts +8 -8
- package/src/packlets/identity/identity.test.ts +2 -2
- package/src/packlets/identity/identity.ts +13 -9
- package/src/packlets/invitations/device-invitation-protocol.test.ts +1 -1
- package/src/packlets/invitations/device-invitation-protocol.ts +8 -4
- package/src/packlets/invitations/invitation-extension.ts +6 -6
- package/src/packlets/invitations/invitation-protocol.ts +7 -3
- package/src/packlets/invitations/invitations-handler.ts +7 -2
- package/src/packlets/invitations/invitations-service.ts +5 -5
- package/src/packlets/invitations/space-invitation-protocol.test.ts +1 -1
- package/src/packlets/invitations/space-invitation-protocol.ts +12 -8
- package/src/packlets/locks/browser.ts +1 -1
- package/src/packlets/locks/node.ts +2 -2
- package/src/packlets/locks/resource-lock.ts +1 -1
- package/src/packlets/logging/logging-service.ts +14 -8
- package/src/packlets/logging/logging.test.ts +1 -1
- package/src/packlets/network/network-service.test.ts +2 -2
- package/src/packlets/network/network-service.ts +7 -3
- package/src/packlets/services/client-rpc-server.ts +5 -5
- package/src/packlets/services/diagnostics.ts +13 -13
- package/src/packlets/services/service-context.test.ts +2 -2
- package/src/packlets/services/service-context.ts +9 -9
- package/src/packlets/services/service-host.test.ts +3 -3
- package/src/packlets/services/service-host.ts +9 -9
- package/src/packlets/services/service-registry.test.ts +2 -2
- package/src/packlets/services/service-registry.ts +1 -1
- package/src/packlets/spaces/data-space-manager.test.ts +4 -4
- package/src/packlets/spaces/data-space-manager.ts +8 -8
- package/src/packlets/spaces/data-space.ts +10 -10
- package/src/packlets/spaces/genesis.ts +3 -3
- package/src/packlets/spaces/notarization-plugin.test.ts +2 -2
- package/src/packlets/spaces/notarization-plugin.ts +5 -5
- package/src/packlets/spaces/spaces-service.test.ts +2 -2
- package/src/packlets/spaces/spaces-service.ts +17 -17
- package/src/packlets/system/system-service.test.ts +1 -1
- package/src/packlets/system/system-service.ts +9 -9
- package/src/packlets/testing/credential-utils.ts +2 -2
- package/src/packlets/testing/invitation-utils.ts +1 -1
- package/src/packlets/testing/test-builder.ts +4 -4
- package/src/packlets/vault/iframe-host-runtime.ts +6 -6
- package/src/packlets/vault/iframe-proxy-runtime.ts +10 -5
- package/src/packlets/vault/shell-runtime.ts +4 -4
- package/src/packlets/vault/worker-runtime.ts +3 -3
- package/src/packlets/vault/worker-session.ts +5 -5
- package/src/version.ts +1 -1
- package/dist/lib/browser/chunk-WOH6JPED.mjs.map +0 -7
|
@@ -4,41 +4,41 @@
|
|
|
4
4
|
|
|
5
5
|
import { Event as AsyncEvent } from '@dxos/async';
|
|
6
6
|
import { Stream } from '@dxos/codec-protobuf';
|
|
7
|
-
import { Config } from '@dxos/config';
|
|
7
|
+
import { type Config } from '@dxos/config';
|
|
8
8
|
import {
|
|
9
|
-
ClearSnapshotsRequest,
|
|
10
|
-
DevtoolsHost, // TODO(burdon): Rename DevtoolsService
|
|
11
|
-
EnableDebugLoggingRequest,
|
|
12
|
-
EnableDebugLoggingResponse,
|
|
13
|
-
Event,
|
|
14
|
-
GetConfigResponse,
|
|
15
|
-
GetNetworkPeersRequest,
|
|
16
|
-
GetNetworkPeersResponse,
|
|
17
|
-
GetSpaceSnapshotRequest,
|
|
18
|
-
GetSpaceSnapshotResponse,
|
|
19
|
-
ResetStorageRequest,
|
|
20
|
-
SaveSpaceSnapshotRequest,
|
|
21
|
-
SaveSpaceSnapshotResponse,
|
|
22
|
-
SubscribeToCredentialMessagesRequest,
|
|
23
|
-
SubscribeToCredentialMessagesResponse,
|
|
24
|
-
SubscribeToFeedBlocksRequest,
|
|
25
|
-
SubscribeToFeedBlocksResponse,
|
|
26
|
-
SubscribeToFeedsRequest,
|
|
27
|
-
SubscribeToFeedsResponse,
|
|
28
|
-
SubscribeToItemsRequest,
|
|
29
|
-
SubscribeToItemsResponse,
|
|
30
|
-
SubscribeToKeyringKeysRequest,
|
|
31
|
-
SubscribeToKeyringKeysResponse,
|
|
32
|
-
SubscribeToNetworkTopicsResponse,
|
|
33
|
-
SubscribeToSpacesRequest,
|
|
34
|
-
SubscribeToSpacesResponse,
|
|
35
|
-
SubscribeToSignalStatusResponse,
|
|
36
|
-
SignalResponse,
|
|
37
|
-
SubscribeToSwarmInfoResponse,
|
|
38
|
-
StorageInfo,
|
|
39
|
-
GetSnapshotsResponse,
|
|
40
|
-
SubscribeToMetadataResponse,
|
|
41
|
-
GetBlobsResponse,
|
|
9
|
+
type ClearSnapshotsRequest,
|
|
10
|
+
type DevtoolsHost, // TODO(burdon): Rename DevtoolsService
|
|
11
|
+
type EnableDebugLoggingRequest,
|
|
12
|
+
type EnableDebugLoggingResponse,
|
|
13
|
+
type Event,
|
|
14
|
+
type GetConfigResponse,
|
|
15
|
+
type GetNetworkPeersRequest,
|
|
16
|
+
type GetNetworkPeersResponse,
|
|
17
|
+
type GetSpaceSnapshotRequest,
|
|
18
|
+
type GetSpaceSnapshotResponse,
|
|
19
|
+
type ResetStorageRequest,
|
|
20
|
+
type SaveSpaceSnapshotRequest,
|
|
21
|
+
type SaveSpaceSnapshotResponse,
|
|
22
|
+
type SubscribeToCredentialMessagesRequest,
|
|
23
|
+
type SubscribeToCredentialMessagesResponse,
|
|
24
|
+
type SubscribeToFeedBlocksRequest,
|
|
25
|
+
type SubscribeToFeedBlocksResponse,
|
|
26
|
+
type SubscribeToFeedsRequest,
|
|
27
|
+
type SubscribeToFeedsResponse,
|
|
28
|
+
type SubscribeToItemsRequest,
|
|
29
|
+
type SubscribeToItemsResponse,
|
|
30
|
+
type SubscribeToKeyringKeysRequest,
|
|
31
|
+
type SubscribeToKeyringKeysResponse,
|
|
32
|
+
type SubscribeToNetworkTopicsResponse,
|
|
33
|
+
type SubscribeToSpacesRequest,
|
|
34
|
+
type SubscribeToSpacesResponse,
|
|
35
|
+
type SubscribeToSignalStatusResponse,
|
|
36
|
+
type SignalResponse,
|
|
37
|
+
type SubscribeToSwarmInfoResponse,
|
|
38
|
+
type StorageInfo,
|
|
39
|
+
type GetSnapshotsResponse,
|
|
40
|
+
type SubscribeToMetadataResponse,
|
|
41
|
+
type GetBlobsResponse,
|
|
42
42
|
} from '@dxos/protocols/proto/dxos/devtools/host';
|
|
43
43
|
|
|
44
44
|
import { subscribeToFeedBlocks, subscribeToFeeds } from './feeds';
|
|
@@ -46,7 +46,7 @@ import { subscribeToKeyringKeys } from './keys';
|
|
|
46
46
|
import { subscribeToMetadata } from './metadata';
|
|
47
47
|
import { subscribeToNetworkStatus, subscribeToSignal, subscribeToSwarmInfo } from './network';
|
|
48
48
|
import { subscribeToSpaces } from './spaces';
|
|
49
|
-
import { ServiceContext } from '../services';
|
|
49
|
+
import { type ServiceContext } from '../services';
|
|
50
50
|
|
|
51
51
|
export class DevtoolsHostEvents {
|
|
52
52
|
readonly ready = new AsyncEvent();
|
|
@@ -4,15 +4,15 @@
|
|
|
4
4
|
|
|
5
5
|
import { EventSubscriptions } from '@dxos/async';
|
|
6
6
|
import { Stream } from '@dxos/codec-protobuf';
|
|
7
|
-
import { FeedIterator, FeedStore, FeedWrapper } from '@dxos/feed-store';
|
|
7
|
+
import { FeedIterator, type FeedStore, type FeedWrapper } from '@dxos/feed-store';
|
|
8
8
|
import { PublicKey } from '@dxos/keys';
|
|
9
9
|
import {
|
|
10
|
-
SubscribeToFeedsRequest,
|
|
11
|
-
SubscribeToFeedsResponse,
|
|
12
|
-
SubscribeToFeedBlocksRequest,
|
|
13
|
-
SubscribeToFeedBlocksResponse,
|
|
10
|
+
type SubscribeToFeedsRequest,
|
|
11
|
+
type SubscribeToFeedsResponse,
|
|
12
|
+
type SubscribeToFeedBlocksRequest,
|
|
13
|
+
type SubscribeToFeedBlocksResponse,
|
|
14
14
|
} from '@dxos/protocols/proto/dxos/devtools/host';
|
|
15
|
-
import { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
15
|
+
import { type FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
16
16
|
import { ComplexMap } from '@dxos/util';
|
|
17
17
|
|
|
18
18
|
export const subscribeToFeeds = (
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
|
|
5
5
|
import { scheduleTask } from '@dxos/async';
|
|
6
6
|
import { Stream } from '@dxos/codec-protobuf';
|
|
7
|
-
import { Keyring } from '@dxos/keyring';
|
|
8
|
-
import { SubscribeToKeyringKeysResponse } from '@dxos/protocols/proto/dxos/devtools/host';
|
|
7
|
+
import { type Keyring } from '@dxos/keyring';
|
|
8
|
+
import { type SubscribeToKeyringKeysResponse } from '@dxos/protocols/proto/dxos/devtools/host';
|
|
9
9
|
|
|
10
10
|
export const subscribeToKeyringKeys = ({ keyring }: { keyring: Keyring }) =>
|
|
11
11
|
new Stream<SubscribeToKeyringKeysResponse>(({ next, ctx }) => {
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
//
|
|
4
4
|
|
|
5
5
|
import { Stream } from '@dxos/codec-protobuf';
|
|
6
|
-
import { SubscribeToMetadataResponse } from '@dxos/protocols/proto/dxos/devtools/host';
|
|
6
|
+
import { type SubscribeToMetadataResponse } from '@dxos/protocols/proto/dxos/devtools/host';
|
|
7
7
|
|
|
8
|
-
import { ServiceContext } from '../services';
|
|
8
|
+
import { type ServiceContext } from '../services';
|
|
9
9
|
|
|
10
10
|
export const subscribeToMetadata = ({ context }: { context: ServiceContext }) =>
|
|
11
11
|
new Stream<SubscribeToMetadataResponse>(({ next, ctx }) => {
|
|
@@ -5,15 +5,15 @@
|
|
|
5
5
|
import { Stream } from '@dxos/codec-protobuf';
|
|
6
6
|
import { Context } from '@dxos/context';
|
|
7
7
|
import { PublicKey } from '@dxos/keys';
|
|
8
|
-
import { SignalManager } from '@dxos/messaging';
|
|
9
|
-
import { NetworkManager } from '@dxos/network-manager';
|
|
8
|
+
import { type SignalManager } from '@dxos/messaging';
|
|
9
|
+
import { type NetworkManager } from '@dxos/network-manager';
|
|
10
10
|
import {
|
|
11
|
-
GetNetworkPeersRequest,
|
|
12
|
-
GetNetworkPeersResponse,
|
|
13
|
-
SubscribeToNetworkTopicsResponse,
|
|
14
|
-
SubscribeToSignalStatusResponse,
|
|
15
|
-
SignalResponse,
|
|
16
|
-
SubscribeToSwarmInfoResponse,
|
|
11
|
+
type GetNetworkPeersRequest,
|
|
12
|
+
type GetNetworkPeersResponse,
|
|
13
|
+
type SubscribeToNetworkTopicsResponse,
|
|
14
|
+
type SubscribeToSignalStatusResponse,
|
|
15
|
+
type SignalResponse,
|
|
16
|
+
type SubscribeToSwarmInfoResponse,
|
|
17
17
|
} from '@dxos/protocols/proto/dxos/devtools/host';
|
|
18
18
|
|
|
19
19
|
export const subscribeToNetworkStatus = ({ signalManager }: { signalManager: SignalManager }) =>
|
|
@@ -3,11 +3,14 @@
|
|
|
3
3
|
//
|
|
4
4
|
|
|
5
5
|
import { Stream } from '@dxos/codec-protobuf';
|
|
6
|
-
import { Space } from '@dxos/echo-pipeline';
|
|
7
|
-
import {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
6
|
+
import { type Space } from '@dxos/echo-pipeline';
|
|
7
|
+
import {
|
|
8
|
+
type SubscribeToSpacesRequest,
|
|
9
|
+
type SubscribeToSpacesResponse,
|
|
10
|
+
} from '@dxos/protocols/proto/dxos/devtools/host';
|
|
11
|
+
import { type SpaceMetadata } from '@dxos/protocols/proto/dxos/echo/metadata';
|
|
12
|
+
|
|
13
|
+
import { type ServiceContext } from '../services';
|
|
11
14
|
|
|
12
15
|
export const subscribeToSpaces = (context: ServiceContext, { spaceKeys = [] }: SubscribeToSpacesRequest) => {
|
|
13
16
|
return new Stream<SubscribeToSpacesResponse>(({ next }) => {
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
// Copyright 2022 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import { Event, Trigger } from '@dxos/async';
|
|
5
|
+
import { type Event, Trigger } from '@dxos/async';
|
|
6
6
|
import { Context } from '@dxos/context';
|
|
7
|
-
import { verifyCredential, CredentialSigner } from '@dxos/credentials';
|
|
8
|
-
import { AuthProvider, AuthVerifier } from '@dxos/echo-pipeline';
|
|
9
|
-
import { PublicKey } from '@dxos/keys';
|
|
7
|
+
import { verifyCredential, type CredentialSigner } from '@dxos/credentials';
|
|
8
|
+
import { type AuthProvider, type AuthVerifier } from '@dxos/echo-pipeline';
|
|
9
|
+
import { type PublicKey } from '@dxos/keys';
|
|
10
10
|
import { log } from '@dxos/log';
|
|
11
11
|
import { schema } from '@dxos/protocols';
|
|
12
|
-
import { ComplexSet } from '@dxos/util';
|
|
12
|
+
import { type ComplexSet } from '@dxos/util';
|
|
13
13
|
|
|
14
14
|
const Credential = schema.getCodecForType('dxos.halo.credentials.Credential');
|
|
15
15
|
|
|
@@ -11,7 +11,7 @@ import { Keyring } from '@dxos/keyring';
|
|
|
11
11
|
import { MemorySignalManager, MemorySignalManagerContext } from '@dxos/messaging';
|
|
12
12
|
import { MemoryTransportFactory, NetworkManager } from '@dxos/network-manager';
|
|
13
13
|
import type { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
14
|
-
import { createStorage, Storage, StorageType } from '@dxos/random-access-storage';
|
|
14
|
+
import { createStorage, type Storage, StorageType } from '@dxos/random-access-storage';
|
|
15
15
|
import { BlobStore } from '@dxos/teleport-extension-object-sync';
|
|
16
16
|
import { describe, test, afterTest } from '@dxos/test';
|
|
17
17
|
|
|
@@ -152,14 +152,15 @@ describe('identity/identity-manager', () => {
|
|
|
152
152
|
expect(identity2.space.protocol.sessions.get(identity1.deviceKey)?.authStatus).to.equal(AuthStatus.SUCCESS);
|
|
153
153
|
});
|
|
154
154
|
|
|
155
|
-
test('
|
|
155
|
+
test('sets device profile', async () => {
|
|
156
156
|
const signalContext = new MemorySignalManagerContext();
|
|
157
157
|
|
|
158
|
-
const
|
|
159
|
-
const
|
|
158
|
+
const peer = await setupPeer({ signalContext });
|
|
159
|
+
const identity = await peer.identityManager.createIdentity();
|
|
160
160
|
|
|
161
|
-
|
|
161
|
+
// Note: Waiting for device profile credential to be processed.
|
|
162
|
+
await identity.stateUpdate.waitForCount(1);
|
|
162
163
|
|
|
163
|
-
expect(
|
|
164
|
+
expect(!!identity.authorizedDeviceKeys.get(identity.deviceKey)?.platform).is.true;
|
|
164
165
|
});
|
|
165
166
|
});
|
|
@@ -2,19 +2,21 @@
|
|
|
2
2
|
// Copyright 2022 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
+
import platform from 'platform';
|
|
6
|
+
|
|
5
7
|
import { Event } from '@dxos/async';
|
|
6
8
|
import { Context } from '@dxos/context';
|
|
7
9
|
import { createCredentialSignerWithKey, CredentialGenerator } from '@dxos/credentials';
|
|
8
|
-
import { MetadataStore, SpaceManager, SwarmIdentity } from '@dxos/echo-pipeline';
|
|
9
|
-
import { FeedStore } from '@dxos/feed-store';
|
|
10
|
+
import { type MetadataStore, type SpaceManager, type SwarmIdentity } from '@dxos/echo-pipeline';
|
|
11
|
+
import { type FeedStore } from '@dxos/feed-store';
|
|
10
12
|
import { invariant } from '@dxos/invariant';
|
|
11
|
-
import { Keyring } from '@dxos/keyring';
|
|
13
|
+
import { type Keyring } from '@dxos/keyring';
|
|
12
14
|
import { PublicKey } from '@dxos/keys';
|
|
13
15
|
import { log } from '@dxos/log';
|
|
14
16
|
import { trace } from '@dxos/protocols';
|
|
15
|
-
import { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
16
|
-
import { IdentityRecord, SpaceMetadata } from '@dxos/protocols/proto/dxos/echo/metadata';
|
|
17
|
-
import { AdmittedFeed, ProfileDocument } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
17
|
+
import { type FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
18
|
+
import { type IdentityRecord, type SpaceMetadata } from '@dxos/protocols/proto/dxos/echo/metadata';
|
|
19
|
+
import { AdmittedFeed, type ProfileDocument } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
18
20
|
import { Timeframe } from '@dxos/timeframe';
|
|
19
21
|
import { trace as Trace } from '@dxos/tracing';
|
|
20
22
|
import { deferFunction } from '@dxos/util';
|
|
@@ -134,6 +136,16 @@ export class IdentityManager {
|
|
|
134
136
|
// NOTE: This credential is written last. This is a hack to make sure that display name is set before identity is "ready".
|
|
135
137
|
credentials.push(await generator.createDeviceAuthorization(identityRecord.deviceKey));
|
|
136
138
|
|
|
139
|
+
// Write device metadata to profile.
|
|
140
|
+
credentials.push(
|
|
141
|
+
await generator.createDeviceProfile({
|
|
142
|
+
platform: platform.name,
|
|
143
|
+
platformVersion: platform.version,
|
|
144
|
+
architecture: typeof platform.os?.architecture === 'number' ? String(platform.os.architecture) : undefined,
|
|
145
|
+
os: platform.os?.family,
|
|
146
|
+
osVersion: platform.os?.version,
|
|
147
|
+
}),
|
|
148
|
+
);
|
|
137
149
|
for (const credential of credentials) {
|
|
138
150
|
await identity.controlPipeline.writer.write({
|
|
139
151
|
credential: { credential },
|
|
@@ -212,26 +224,6 @@ export class IdentityManager {
|
|
|
212
224
|
return profile;
|
|
213
225
|
}
|
|
214
226
|
|
|
215
|
-
async updateDevice({ deviceKey, profile }: { deviceKey: PublicKey; profile: ProfileDocument }) {
|
|
216
|
-
invariant(this._identity, 'Identity not initialized.');
|
|
217
|
-
|
|
218
|
-
invariant(this._identity.authorizedDeviceKeys.has(deviceKey), 'Device not authorized.');
|
|
219
|
-
|
|
220
|
-
const credential = await this._identity.getIdentityCredentialSigner().createCredential({
|
|
221
|
-
subject: this._identity.identityKey,
|
|
222
|
-
assertion: {
|
|
223
|
-
'@type': 'dxos.halo.credentials.DeviceProfile',
|
|
224
|
-
deviceKey,
|
|
225
|
-
profile,
|
|
226
|
-
},
|
|
227
|
-
});
|
|
228
|
-
|
|
229
|
-
const receipt = await this._identity.controlPipeline.writer.write({ credential: { credential } });
|
|
230
|
-
await this._identity.controlPipeline.state.waitUntilTimeframe(new Timeframe([[receipt.feedKey, receipt.seq]]));
|
|
231
|
-
this.stateUpdate.emit();
|
|
232
|
-
return profile;
|
|
233
|
-
}
|
|
234
|
-
|
|
235
227
|
private async _constructIdentity(identityRecord: IdentityRecord) {
|
|
236
228
|
invariant(!this._identity);
|
|
237
229
|
log('constructing identity', { identityRecord });
|
|
@@ -8,11 +8,11 @@ import chaiAsPromised from 'chai-as-promised';
|
|
|
8
8
|
import { Trigger } from '@dxos/async';
|
|
9
9
|
import { Context } from '@dxos/context';
|
|
10
10
|
import { PublicKey } from '@dxos/keys';
|
|
11
|
-
import { Identity, IdentityService } from '@dxos/protocols/proto/dxos/client/services';
|
|
11
|
+
import { type Identity, type IdentityService } from '@dxos/protocols/proto/dxos/client/services';
|
|
12
12
|
import { afterEach, afterTest, beforeEach, describe, test } from '@dxos/test';
|
|
13
13
|
|
|
14
14
|
import { IdentityServiceImpl } from './identity-service';
|
|
15
|
-
import { ServiceContext } from '../services';
|
|
15
|
+
import { type ServiceContext } from '../services';
|
|
16
16
|
import { createServiceContext } from '../testing';
|
|
17
17
|
|
|
18
18
|
chai.use(chaiAsPromised);
|
|
@@ -6,17 +6,17 @@ import { Stream } from '@dxos/codec-protobuf';
|
|
|
6
6
|
import { signPresentation } from '@dxos/credentials';
|
|
7
7
|
import { todo } from '@dxos/debug';
|
|
8
8
|
import { invariant } from '@dxos/invariant';
|
|
9
|
-
import { Keyring } from '@dxos/keyring';
|
|
9
|
+
import { type Keyring } from '@dxos/keyring';
|
|
10
10
|
import {
|
|
11
|
-
Identity,
|
|
12
|
-
IdentityService,
|
|
13
|
-
QueryIdentityResponse,
|
|
14
|
-
RecoverIdentityRequest,
|
|
15
|
-
SignPresentationRequest,
|
|
11
|
+
type Identity,
|
|
12
|
+
type IdentityService,
|
|
13
|
+
type QueryIdentityResponse,
|
|
14
|
+
type RecoverIdentityRequest,
|
|
15
|
+
type SignPresentationRequest,
|
|
16
16
|
} from '@dxos/protocols/proto/dxos/client/services';
|
|
17
|
-
import { Presentation, ProfileDocument } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
17
|
+
import { type Presentation, type ProfileDocument } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
18
18
|
|
|
19
|
-
import { CreateIdentityOptions, IdentityManager } from './identity-manager';
|
|
19
|
+
import { type CreateIdentityOptions, type IdentityManager } from './identity-manager';
|
|
20
20
|
|
|
21
21
|
export class IdentityServiceImpl implements IdentityService {
|
|
22
22
|
constructor(
|
|
@@ -18,10 +18,10 @@ import {
|
|
|
18
18
|
} from '@dxos/echo-pipeline';
|
|
19
19
|
import { FeedFactory, FeedStore } from '@dxos/feed-store';
|
|
20
20
|
import { Keyring } from '@dxos/keyring';
|
|
21
|
-
import { PublicKey } from '@dxos/keys';
|
|
21
|
+
import { type PublicKey } from '@dxos/keys';
|
|
22
22
|
import { MemorySignalManager, MemorySignalManagerContext } from '@dxos/messaging';
|
|
23
23
|
import { MemoryTransportFactory, NetworkManager } from '@dxos/network-manager';
|
|
24
|
-
import { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
24
|
+
import { type FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
25
25
|
import { AdmittedFeed } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
26
26
|
import { createStorage, StorageType } from '@dxos/random-access-storage';
|
|
27
27
|
import { BlobStore } from '@dxos/teleport-extension-object-sync';
|
|
@@ -4,26 +4,30 @@
|
|
|
4
4
|
|
|
5
5
|
import { Event } from '@dxos/async';
|
|
6
6
|
import { AUTH_TIMEOUT, LOAD_CONTROL_FEEDS_TIMEOUT } from '@dxos/client-protocol';
|
|
7
|
-
import { Context } from '@dxos/context';
|
|
7
|
+
import { type Context } from '@dxos/context';
|
|
8
8
|
import {
|
|
9
9
|
DeviceStateMachine,
|
|
10
|
-
CredentialSigner,
|
|
10
|
+
type CredentialSigner,
|
|
11
11
|
createCredentialSignerWithKey,
|
|
12
12
|
createCredentialSignerWithChain,
|
|
13
13
|
ProfileStateMachine,
|
|
14
14
|
} from '@dxos/credentials';
|
|
15
|
-
import { Signer } from '@dxos/crypto';
|
|
15
|
+
import { type Signer } from '@dxos/crypto';
|
|
16
16
|
import { failUndefined } from '@dxos/debug';
|
|
17
|
-
import { Space } from '@dxos/echo-pipeline';
|
|
17
|
+
import { type Space } from '@dxos/echo-pipeline';
|
|
18
18
|
import { writeMessages } from '@dxos/feed-store';
|
|
19
19
|
import { invariant } from '@dxos/invariant';
|
|
20
20
|
import { PublicKey } from '@dxos/keys';
|
|
21
21
|
import { log } from '@dxos/log';
|
|
22
|
-
import { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
23
|
-
import {
|
|
24
|
-
|
|
22
|
+
import { type FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
23
|
+
import {
|
|
24
|
+
AdmittedFeed,
|
|
25
|
+
type DeviceProfileDocument,
|
|
26
|
+
type ProfileDocument,
|
|
27
|
+
} from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
28
|
+
import { type DeviceAdmissionRequest } from '@dxos/protocols/proto/dxos/halo/invitations';
|
|
25
29
|
import { trace } from '@dxos/tracing';
|
|
26
|
-
import { ComplexMap, ComplexSet } from '@dxos/util';
|
|
30
|
+
import { type ComplexMap, ComplexSet } from '@dxos/util';
|
|
27
31
|
|
|
28
32
|
import { TrustedKeySetAuthVerifier } from './authenticator';
|
|
29
33
|
|
|
@@ -77,7 +81,7 @@ export class Identity {
|
|
|
77
81
|
}
|
|
78
82
|
|
|
79
83
|
// TODO(burdon): Expose state object?
|
|
80
|
-
get authorizedDeviceKeys(): ComplexMap<PublicKey,
|
|
84
|
+
get authorizedDeviceKeys(): ComplexMap<PublicKey, DeviceProfileDocument> {
|
|
81
85
|
return this._deviceStateMachine.authorizedDeviceKeys;
|
|
82
86
|
}
|
|
83
87
|
|
|
@@ -9,7 +9,7 @@ import { Context } from '@dxos/context';
|
|
|
9
9
|
import { Invitation } from '@dxos/protocols/proto/dxos/client/services';
|
|
10
10
|
import { describe, test, afterTest } from '@dxos/test';
|
|
11
11
|
|
|
12
|
-
import { ServiceContext } from '../services';
|
|
12
|
+
import { type ServiceContext } from '../services';
|
|
13
13
|
import { createPeers, createServiceContext, performInvitation } from '../testing';
|
|
14
14
|
|
|
15
15
|
const closeAfterTest = async (peer: ServiceContext) => {
|
|
@@ -3,12 +3,16 @@
|
|
|
3
3
|
//
|
|
4
4
|
|
|
5
5
|
import { invariant } from '@dxos/invariant';
|
|
6
|
-
import { Keyring } from '@dxos/keyring';
|
|
6
|
+
import { type Keyring } from '@dxos/keyring';
|
|
7
7
|
import { Invitation } from '@dxos/protocols/proto/dxos/client/services';
|
|
8
|
-
import {
|
|
8
|
+
import {
|
|
9
|
+
type AdmissionRequest,
|
|
10
|
+
type AdmissionResponse,
|
|
11
|
+
type IntroductionRequest,
|
|
12
|
+
} from '@dxos/protocols/proto/dxos/halo/invitations';
|
|
9
13
|
|
|
10
|
-
import { InvitationProtocol } from './invitation-protocol';
|
|
11
|
-
import { Identity, JoinIdentityParams } from '../identity';
|
|
14
|
+
import { type InvitationProtocol } from './invitation-protocol';
|
|
15
|
+
import { type Identity, type JoinIdentityParams } from '../identity';
|
|
12
16
|
|
|
13
17
|
export class DeviceInvitationProtocol implements InvitationProtocol {
|
|
14
18
|
constructor(
|
|
@@ -9,16 +9,16 @@ import { PublicKey } from '@dxos/keys';
|
|
|
9
9
|
import { log } from '@dxos/log';
|
|
10
10
|
import { InvalidInvitationExtensionRoleError, schema, trace } from '@dxos/protocols';
|
|
11
11
|
import { Invitation } from '@dxos/protocols/proto/dxos/client/services';
|
|
12
|
-
import { ProfileDocument } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
12
|
+
import { type ProfileDocument } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
13
13
|
import {
|
|
14
|
-
AdmissionRequest,
|
|
15
|
-
AdmissionResponse,
|
|
14
|
+
type AdmissionRequest,
|
|
15
|
+
type AdmissionResponse,
|
|
16
16
|
AuthenticationResponse,
|
|
17
|
-
IntroductionRequest,
|
|
18
|
-
InvitationHostService,
|
|
17
|
+
type IntroductionRequest,
|
|
18
|
+
type InvitationHostService,
|
|
19
19
|
Options,
|
|
20
20
|
} from '@dxos/protocols/proto/dxos/halo/invitations';
|
|
21
|
-
import { ExtensionContext, RpcExtension } from '@dxos/teleport';
|
|
21
|
+
import { type ExtensionContext, RpcExtension } from '@dxos/teleport';
|
|
22
22
|
|
|
23
23
|
/// Timeout for the options exchange.
|
|
24
24
|
const OPTIONS_TIMEOUT = 10_000;
|
|
@@ -2,9 +2,13 @@
|
|
|
2
2
|
// Copyright 2023 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import { Invitation } from '@dxos/protocols/proto/dxos/client/services';
|
|
6
|
-
import { ProfileDocument } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
7
|
-
import {
|
|
5
|
+
import { type Invitation } from '@dxos/protocols/proto/dxos/client/services';
|
|
6
|
+
import { type ProfileDocument } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
7
|
+
import {
|
|
8
|
+
type AdmissionRequest,
|
|
9
|
+
type AdmissionResponse,
|
|
10
|
+
type IntroductionRequest,
|
|
11
|
+
} from '@dxos/protocols/proto/dxos/halo/invitations';
|
|
8
12
|
|
|
9
13
|
export interface InvitationProtocol {
|
|
10
14
|
// Debugging
|
|
@@ -14,7 +14,12 @@ import { generatePasscode } from '@dxos/credentials';
|
|
|
14
14
|
import { invariant } from '@dxos/invariant';
|
|
15
15
|
import { PublicKey } from '@dxos/keys';
|
|
16
16
|
import { log } from '@dxos/log';
|
|
17
|
-
import {
|
|
17
|
+
import {
|
|
18
|
+
createTeleportProtocolFactory,
|
|
19
|
+
type NetworkManager,
|
|
20
|
+
StarTopology,
|
|
21
|
+
type SwarmConnection,
|
|
22
|
+
} from '@dxos/network-manager';
|
|
18
23
|
import { InvalidInvitationExtensionRoleError, trace } from '@dxos/protocols';
|
|
19
24
|
import { Invitation } from '@dxos/protocols/proto/dxos/client/services';
|
|
20
25
|
import { AuthenticationResponse } from '@dxos/protocols/proto/dxos/halo/invitations';
|
|
@@ -25,7 +30,7 @@ import {
|
|
|
25
30
|
isAuthenticationRequired,
|
|
26
31
|
MAX_OTP_ATTEMPTS,
|
|
27
32
|
} from './invitation-extension';
|
|
28
|
-
import { InvitationProtocol } from './invitation-protocol';
|
|
33
|
+
import { type InvitationProtocol } from './invitation-protocol';
|
|
29
34
|
|
|
30
35
|
/**
|
|
31
36
|
* Generic handler for Halo and Space invitations.
|
|
@@ -3,19 +3,19 @@
|
|
|
3
3
|
//
|
|
4
4
|
|
|
5
5
|
import { Event } from '@dxos/async';
|
|
6
|
-
import { AuthenticatingInvitation, CancellableInvitation } from '@dxos/client-protocol';
|
|
6
|
+
import { type AuthenticatingInvitation, type CancellableInvitation } from '@dxos/client-protocol';
|
|
7
7
|
import { Stream } from '@dxos/codec-protobuf';
|
|
8
8
|
import { invariant } from '@dxos/invariant';
|
|
9
9
|
import { log } from '@dxos/log';
|
|
10
10
|
import {
|
|
11
|
-
AuthenticationRequest,
|
|
11
|
+
type AuthenticationRequest,
|
|
12
12
|
Invitation,
|
|
13
|
-
InvitationsService,
|
|
13
|
+
type InvitationsService,
|
|
14
14
|
QueryInvitationsResponse,
|
|
15
15
|
} from '@dxos/protocols/proto/dxos/client/services';
|
|
16
16
|
|
|
17
|
-
import { InvitationProtocol } from './invitation-protocol';
|
|
18
|
-
import { InvitationsHandler } from './invitations-handler';
|
|
17
|
+
import { type InvitationProtocol } from './invitation-protocol';
|
|
18
|
+
import { type InvitationsHandler } from './invitations-handler';
|
|
19
19
|
|
|
20
20
|
/**
|
|
21
21
|
* Adapts invitation service observable to client/service stream.
|
|
@@ -10,7 +10,7 @@ import { testLocalDatabase } from '@dxos/echo-pipeline/testing';
|
|
|
10
10
|
import { Invitation } from '@dxos/protocols/proto/dxos/client/services';
|
|
11
11
|
import { afterTest, describe, test } from '@dxos/test';
|
|
12
12
|
|
|
13
|
-
import { ServiceContext } from '../services';
|
|
13
|
+
import { type ServiceContext } from '../services';
|
|
14
14
|
import { createIdentity, createPeers, syncItemsLocal } from '../testing';
|
|
15
15
|
import { performInvitation } from '../testing/invitation-utils';
|
|
16
16
|
|
|
@@ -5,16 +5,20 @@
|
|
|
5
5
|
import { createAdmissionCredentials, getCredentialAssertion } from '@dxos/credentials';
|
|
6
6
|
import { writeMessages } from '@dxos/feed-store';
|
|
7
7
|
import { invariant } from '@dxos/invariant';
|
|
8
|
-
import { Keyring } from '@dxos/keyring';
|
|
9
|
-
import { PublicKey } from '@dxos/keys';
|
|
8
|
+
import { type Keyring } from '@dxos/keyring';
|
|
9
|
+
import { type PublicKey } from '@dxos/keys';
|
|
10
10
|
import { log } from '@dxos/log';
|
|
11
11
|
import { Invitation } from '@dxos/protocols/proto/dxos/client/services';
|
|
12
|
-
import { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
13
|
-
import { ProfileDocument } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
14
|
-
import {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
12
|
+
import { type FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
13
|
+
import { type ProfileDocument } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
14
|
+
import {
|
|
15
|
+
type AdmissionRequest,
|
|
16
|
+
type AdmissionResponse,
|
|
17
|
+
type IntroductionRequest,
|
|
18
|
+
} from '@dxos/protocols/proto/dxos/halo/invitations';
|
|
19
|
+
|
|
20
|
+
import { type InvitationProtocol } from './invitation-protocol';
|
|
21
|
+
import { type DataSpaceManager, type SigningContext } from '../spaces';
|
|
18
22
|
|
|
19
23
|
export class SpaceInvitationProtocol implements InvitationProtocol {
|
|
20
24
|
constructor(
|
|
@@ -6,7 +6,7 @@ import { asyncTimeout, Trigger } from '@dxos/async';
|
|
|
6
6
|
import { RESOURCE_LOCK_TIMEOUT } from '@dxos/client-protocol';
|
|
7
7
|
import { log, logInfo } from '@dxos/log';
|
|
8
8
|
|
|
9
|
-
import { ResourceLock, ResourceLockOptions } from './resource-lock';
|
|
9
|
+
import { type ResourceLock, type ResourceLockOptions } from './resource-lock';
|
|
10
10
|
|
|
11
11
|
enum Message {
|
|
12
12
|
ACQUIRING = 'acquiring',
|
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
// Copyright 2023 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import { FileHandle } from 'node:fs/promises';
|
|
5
|
+
import { type FileHandle } from 'node:fs/promises';
|
|
6
6
|
|
|
7
7
|
import { invariant } from '@dxos/invariant';
|
|
8
8
|
import { LockFile } from '@dxos/lock-file';
|
|
9
9
|
import { log, logInfo } from '@dxos/log';
|
|
10
10
|
|
|
11
|
-
import { ResourceLock, ResourceLockOptions } from './resource-lock';
|
|
11
|
+
import { type ResourceLock, type ResourceLockOptions } from './resource-lock';
|
|
12
12
|
|
|
13
13
|
// TODO(mykola): Factor out.
|
|
14
14
|
export class Lock implements ResourceLock {
|
|
@@ -4,16 +4,22 @@
|
|
|
4
4
|
|
|
5
5
|
import { Event } from '@dxos/async';
|
|
6
6
|
import { Stream } from '@dxos/codec-protobuf';
|
|
7
|
-
import { LogLevel, LogProcessor, LogEntry as NaturalLogEntry, getContextFromEntry, log } from '@dxos/log';
|
|
8
7
|
import {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
type LogLevel,
|
|
9
|
+
type LogProcessor,
|
|
10
|
+
type LogEntry as NaturalLogEntry,
|
|
11
|
+
getContextFromEntry,
|
|
12
|
+
log,
|
|
13
|
+
} from '@dxos/log';
|
|
14
|
+
import {
|
|
15
|
+
type LogEntry,
|
|
16
|
+
type LoggingService,
|
|
17
|
+
type Metrics,
|
|
12
18
|
QueryLogsRequest,
|
|
13
|
-
ControlMetricsRequest,
|
|
14
|
-
ControlMetricsResponse,
|
|
15
|
-
QueryMetricsRequest,
|
|
16
|
-
QueryMetricsResponse,
|
|
19
|
+
type ControlMetricsRequest,
|
|
20
|
+
type ControlMetricsResponse,
|
|
21
|
+
type QueryMetricsRequest,
|
|
22
|
+
type QueryMetricsResponse,
|
|
17
23
|
} from '@dxos/protocols/proto/dxos/client/services';
|
|
18
24
|
import { jsonify, numericalValues, tracer } from '@dxos/util';
|
|
19
25
|
|