@dxos/client-services 0.8.2-main.fbd8ed0 → 0.8.2-staging.7ac8446
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-I3QLQXQD.mjs → chunk-2TKMQ2UP.mjs} +167 -170
- package/dist/lib/browser/chunk-2TKMQ2UP.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +1 -1
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +1 -1
- package/dist/lib/node/{chunk-Y747YVDI.cjs → chunk-HUMVSL5Y.cjs} +336 -339
- package/dist/lib/node/chunk-HUMVSL5Y.cjs.map +7 -0
- package/dist/lib/node/index.cjs +47 -47
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/testing/index.cjs +8 -8
- package/dist/lib/node-esm/{chunk-XNCWQTDB.mjs → chunk-DQCPFIVI.mjs} +167 -170
- package/dist/lib/node-esm/chunk-DQCPFIVI.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +1 -1
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/testing/index.mjs +1 -1
- package/dist/types/src/packlets/agents/edge-agent-service.d.ts +1 -1
- package/dist/types/src/packlets/agents/edge-agent-service.d.ts.map +1 -1
- package/dist/types/src/packlets/devices/devices-service.d.ts.map +1 -1
- package/dist/types/src/packlets/devtools/feeds.d.ts.map +1 -1
- package/dist/types/src/packlets/devtools/keys.d.ts.map +1 -1
- package/dist/types/src/packlets/devtools/metadata.d.ts.map +1 -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/browser-diagnostics-broadcast.d.ts.map +1 -1
- package/dist/types/src/packlets/diagnostics/diagnostics-broadcast.d.ts.map +1 -1
- package/dist/types/src/packlets/diagnostics/diagnostics.d.ts.map +1 -1
- package/dist/types/src/packlets/identity/authenticator.d.ts.map +1 -1
- package/dist/types/src/packlets/invitations/invitation-host-extension.d.ts.map +1 -1
- package/dist/types/src/packlets/invitations/invitation-state.d.ts.map +1 -1
- package/dist/types/src/packlets/invitations/utils.d.ts.map +1 -1
- package/dist/types/src/packlets/locks/browser.d.ts.map +1 -1
- package/dist/types/src/packlets/locks/node.d.ts.map +1 -1
- package/dist/types/src/packlets/network/network-service.d.ts +1 -3
- package/dist/types/src/packlets/network/network-service.d.ts.map +1 -1
- package/dist/types/src/packlets/services/service-host.d.ts.map +1 -1
- package/dist/types/src/packlets/services/util.d.ts.map +1 -1
- package/dist/types/src/packlets/space-export/space-archive-reader.d.ts +1 -1
- package/dist/types/src/packlets/space-export/space-archive-reader.d.ts.map +1 -1
- package/dist/types/src/packlets/spaces/data-space-manager.d.ts +1 -1
- package/dist/types/src/packlets/spaces/data-space-manager.d.ts.map +1 -1
- package/dist/types/src/packlets/spaces/data-space.d.ts.map +1 -1
- package/dist/types/src/packlets/spaces/edge-feed-replicator.d.ts.map +1 -1
- package/dist/types/src/packlets/spaces/epoch-migrations.d.ts.map +1 -1
- package/dist/types/src/packlets/spaces/genesis.d.ts.map +1 -1
- 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/storage/profile-archive.d.ts.map +1 -1
- package/dist/types/src/packlets/storage/storage.d.ts.map +1 -1
- package/dist/types/src/packlets/storage/util.d.ts.map +1 -1
- package/dist/types/src/packlets/testing/credential-utils.d.ts.map +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.map +1 -1
- package/dist/types/src/version.d.ts +1 -1
- package/dist/types/src/version.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +38 -39
- package/src/packlets/agents/edge-agent-service.ts +11 -8
- package/src/packlets/devices/devices-service.ts +3 -5
- package/src/packlets/identity/identity.test.ts +6 -9
- package/src/packlets/network/network-service.ts +15 -9
- package/src/packlets/services/service-host.ts +1 -5
- package/src/packlets/space-export/space-archive-reader.ts +1 -2
- package/src/packlets/spaces/data-space-manager.ts +29 -35
- package/src/packlets/spaces/data-space.ts +4 -11
- package/src/packlets/spaces/edge-feed-replicator.test.ts +1 -2
- package/src/packlets/spaces/edge-feed-replicator.ts +1 -2
- package/src/packlets/spaces/epoch-migrations.ts +2 -3
- package/src/packlets/spaces/spaces-service.ts +1 -2
- package/src/packlets/storage/profile-archive.ts +1 -2
- package/src/version.ts +1 -1
- package/dist/lib/browser/chunk-I3QLQXQD.mjs.map +0 -7
- package/dist/lib/node/chunk-Y747YVDI.cjs.map +0 -7
- package/dist/lib/node-esm/chunk-XNCWQTDB.mjs.map +0 -7
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
//
|
|
4
4
|
|
|
5
5
|
import { Stream } from '@dxos/codec-protobuf/stream';
|
|
6
|
-
import { type EdgeConnection } from '@dxos/edge-client';
|
|
7
6
|
import { type SignalManager } from '@dxos/messaging';
|
|
8
7
|
import { type SwarmNetworkManager } from '@dxos/network-manager';
|
|
9
8
|
import {
|
|
@@ -24,11 +23,10 @@ export class NetworkServiceImpl implements NetworkService {
|
|
|
24
23
|
constructor(
|
|
25
24
|
private readonly networkManager: SwarmNetworkManager,
|
|
26
25
|
private readonly signalManager: SignalManager,
|
|
27
|
-
private readonly edgeConnection?: EdgeConnection,
|
|
28
26
|
) {}
|
|
29
27
|
|
|
30
28
|
queryStatus() {
|
|
31
|
-
return new Stream<NetworkStatus>(({
|
|
29
|
+
return new Stream<NetworkStatus>(({ next }) => {
|
|
32
30
|
const update = () => {
|
|
33
31
|
next({
|
|
34
32
|
swarm: this.networkManager.connectionState,
|
|
@@ -37,9 +35,14 @@ export class NetworkServiceImpl implements NetworkService {
|
|
|
37
35
|
});
|
|
38
36
|
};
|
|
39
37
|
|
|
40
|
-
this.networkManager.connectionStateChanged.on(
|
|
41
|
-
this.signalManager.statusChanged?.on(
|
|
38
|
+
const unsubscribeSwarm = this.networkManager.connectionStateChanged.on(() => update());
|
|
39
|
+
const unsubscribeSignal = this.signalManager.statusChanged?.on(() => update());
|
|
42
40
|
update();
|
|
41
|
+
|
|
42
|
+
return () => {
|
|
43
|
+
unsubscribeSwarm();
|
|
44
|
+
unsubscribeSignal?.();
|
|
45
|
+
};
|
|
43
46
|
});
|
|
44
47
|
}
|
|
45
48
|
|
|
@@ -60,12 +63,13 @@ export class NetworkServiceImpl implements NetworkService {
|
|
|
60
63
|
}
|
|
61
64
|
|
|
62
65
|
subscribeSwarmState(request: SubscribeSwarmStateRequest): Stream<SwarmResponse> {
|
|
63
|
-
return new Stream<SwarmResponse>(({
|
|
64
|
-
this.signalManager.swarmState?.on(
|
|
66
|
+
return new Stream<SwarmResponse>(({ next }) => {
|
|
67
|
+
const unsubscribe = this.signalManager.swarmState?.on((state) => {
|
|
65
68
|
if (request.topic.equals(state.swarmKey)) {
|
|
66
69
|
next(state);
|
|
67
70
|
}
|
|
68
71
|
});
|
|
72
|
+
return unsubscribe;
|
|
69
73
|
});
|
|
70
74
|
}
|
|
71
75
|
|
|
@@ -74,12 +78,14 @@ export class NetworkServiceImpl implements NetworkService {
|
|
|
74
78
|
}
|
|
75
79
|
|
|
76
80
|
subscribeMessages(peer: Peer): Stream<Message> {
|
|
77
|
-
return new Stream<Message>(({
|
|
78
|
-
this.signalManager.onMessage.on(
|
|
81
|
+
return new Stream<Message>(({ next }) => {
|
|
82
|
+
const unsubscribe = this.signalManager.onMessage.on((message) => {
|
|
79
83
|
if (message.recipient.peerKey === peer.peerKey) {
|
|
80
84
|
next(message);
|
|
81
85
|
}
|
|
82
86
|
});
|
|
87
|
+
|
|
88
|
+
return unsubscribe;
|
|
83
89
|
});
|
|
84
90
|
}
|
|
85
91
|
}
|
|
@@ -329,11 +329,7 @@ export class ClientServicesHost {
|
|
|
329
329
|
DataService: this._serviceContext.echoHost.dataService,
|
|
330
330
|
QueryService: this._serviceContext.echoHost.queryService,
|
|
331
331
|
|
|
332
|
-
NetworkService: new NetworkServiceImpl(
|
|
333
|
-
this._serviceContext.networkManager,
|
|
334
|
-
this._serviceContext.signalManager,
|
|
335
|
-
this._edgeConnection,
|
|
336
|
-
),
|
|
332
|
+
NetworkService: new NetworkServiceImpl(this._serviceContext.networkManager, this._serviceContext.signalManager),
|
|
337
333
|
|
|
338
334
|
LoggingService: this._loggingService,
|
|
339
335
|
TracingService: this._tracingService,
|
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
// Copyright 2025 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import type { DocumentId } from '@automerge/automerge-repo';
|
|
6
|
-
|
|
5
|
+
import type { DocumentId } from '@dxos/automerge/automerge-repo';
|
|
7
6
|
import { assertArgument, failedInvariant, invariant } from '@dxos/invariant';
|
|
8
7
|
import { log } from '@dxos/log';
|
|
9
8
|
import { SpaceArchiveFileStructure, type SpaceArchiveMetadata } from '@dxos/protocols';
|
|
@@ -2,10 +2,14 @@
|
|
|
2
2
|
// Copyright 2022 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import { type Doc } from '@automerge/automerge';
|
|
6
|
-
import { interpretAsDocumentId, type AutomergeUrl, type DocHandle, type DocumentId } from '@automerge/automerge-repo';
|
|
7
|
-
|
|
8
5
|
import { Event, synchronized, trackLeaks } from '@dxos/async';
|
|
6
|
+
import { type Doc } from '@dxos/automerge/automerge';
|
|
7
|
+
import {
|
|
8
|
+
interpretAsDocumentId,
|
|
9
|
+
type AutomergeUrl,
|
|
10
|
+
type DocHandle,
|
|
11
|
+
type DocumentId,
|
|
12
|
+
} from '@dxos/automerge/automerge-repo';
|
|
9
13
|
import { PropertiesType, TYPE_PROPERTIES } from '@dxos/client-protocol';
|
|
10
14
|
import { Context, LifecycleState, Resource, cancelWithContext } from '@dxos/context';
|
|
11
15
|
import {
|
|
@@ -28,7 +32,6 @@ import {
|
|
|
28
32
|
type SpaceManager,
|
|
29
33
|
type SpaceProtocol,
|
|
30
34
|
type SpaceProtocolSession,
|
|
31
|
-
FIND_PARAMS,
|
|
32
35
|
} from '@dxos/echo-pipeline';
|
|
33
36
|
import {
|
|
34
37
|
SpaceDocVersion,
|
|
@@ -37,7 +40,7 @@ import {
|
|
|
37
40
|
type ObjectStructure,
|
|
38
41
|
type SpaceDoc,
|
|
39
42
|
} from '@dxos/echo-protocol';
|
|
40
|
-
import {
|
|
43
|
+
import { createObjectId, getTypeReference } from '@dxos/echo-schema';
|
|
41
44
|
import type { EdgeConnection, EdgeHttpClient } from '@dxos/edge-client';
|
|
42
45
|
import { writeMessages, type FeedStore } from '@dxos/feed-store';
|
|
43
46
|
import { assertArgument, assertState, failedInvariant, invariant } from '@dxos/invariant';
|
|
@@ -174,29 +177,24 @@ export class DataSpaceManager extends Resource {
|
|
|
174
177
|
id: 'spaces',
|
|
175
178
|
name: 'Spaces',
|
|
176
179
|
fetch: async () => {
|
|
177
|
-
return
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
members: space.inner.spaceState.members.size,
|
|
196
|
-
rootUrl,
|
|
197
|
-
};
|
|
198
|
-
}),
|
|
199
|
-
);
|
|
180
|
+
return Array.from(this._spaces.values()).map((space) => {
|
|
181
|
+
const rootUrl = space.automergeSpaceState.rootUrl;
|
|
182
|
+
const rootHandle = rootUrl ? this._echoHost.automergeRepo.find(rootUrl as AutomergeUrl) : undefined;
|
|
183
|
+
const rootDoc = rootHandle?.docSync() as Doc<SpaceDoc> | undefined;
|
|
184
|
+
|
|
185
|
+
const properties = rootDoc && findInlineObjectOfType(rootDoc, TYPE_PROPERTIES);
|
|
186
|
+
|
|
187
|
+
return {
|
|
188
|
+
key: space.key.toHex(),
|
|
189
|
+
state: SpaceState[space.state],
|
|
190
|
+
name: properties?.[1].data.name ?? null,
|
|
191
|
+
inlineObjects: rootDoc ? Object.keys(rootDoc.objects ?? {}).length : null,
|
|
192
|
+
linkedObjects: rootDoc ? Object.keys(rootDoc.links ?? {}).length : null,
|
|
193
|
+
credentials: space.inner.spaceState.credentials.length,
|
|
194
|
+
members: space.inner.spaceState.members.size,
|
|
195
|
+
rootUrl,
|
|
196
|
+
};
|
|
197
|
+
});
|
|
200
198
|
},
|
|
201
199
|
});
|
|
202
200
|
}
|
|
@@ -321,11 +319,7 @@ export class DataSpaceManager extends Resource {
|
|
|
321
319
|
}
|
|
322
320
|
switch (space.databaseRoot.getVersion()) {
|
|
323
321
|
case SpaceDocVersion.CURRENT: {
|
|
324
|
-
|
|
325
|
-
log.warn('waiting for space root to be ready', { spaceId: space.id });
|
|
326
|
-
await space.databaseRoot.handle.whenReady();
|
|
327
|
-
}
|
|
328
|
-
const [_, properties] = findInlineObjectOfType(space.databaseRoot.doc()!, TYPE_PROPERTIES) ?? [];
|
|
322
|
+
const [_, properties] = findInlineObjectOfType(space.databaseRoot.docSync()!, TYPE_PROPERTIES) ?? [];
|
|
329
323
|
return properties?.data?.[DEFAULT_SPACE_KEY] === this._signingContext.identityKey.toHex();
|
|
330
324
|
}
|
|
331
325
|
case SpaceDocVersion.LEGACY: {
|
|
@@ -355,7 +349,7 @@ export class DataSpaceManager extends Resource {
|
|
|
355
349
|
},
|
|
356
350
|
};
|
|
357
351
|
|
|
358
|
-
const propertiesId =
|
|
352
|
+
const propertiesId = createObjectId();
|
|
359
353
|
document.change((doc: SpaceDoc) => {
|
|
360
354
|
setDeep(doc, ['objects', propertiesId], properties);
|
|
361
355
|
});
|
|
@@ -367,7 +361,7 @@ export class DataSpaceManager extends Resource {
|
|
|
367
361
|
private async _getSpaceRootDocument(space: DataSpace): Promise<DocHandle<SpaceDoc>> {
|
|
368
362
|
const automergeIndex = space.automergeSpaceState.rootUrl;
|
|
369
363
|
invariant(automergeIndex);
|
|
370
|
-
const document =
|
|
364
|
+
const document = this._echoHost.automergeRepo.find<SpaceDoc>(automergeIndex as any);
|
|
371
365
|
await document.whenReady();
|
|
372
366
|
return document;
|
|
373
367
|
}
|
|
@@ -2,10 +2,8 @@
|
|
|
2
2
|
// Copyright 2022 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import { save } from '@automerge/automerge';
|
|
6
|
-
import { type DocHandle } from '@automerge/automerge-repo';
|
|
7
|
-
|
|
8
5
|
import { Event, Mutex, scheduleTask, sleep, synchronized, trackLeaks } from '@dxos/async';
|
|
6
|
+
import { save } from '@dxos/automerge/automerge';
|
|
9
7
|
import { AUTH_TIMEOUT } from '@dxos/client-protocol';
|
|
10
8
|
import { Context, ContextDisposedError, cancelWithContext } from '@dxos/context';
|
|
11
9
|
import type { SpecificCredential } from '@dxos/credentials';
|
|
@@ -16,7 +14,6 @@ import {
|
|
|
16
14
|
createMappedFeedWriter,
|
|
17
15
|
type MetadataStore,
|
|
18
16
|
type Space,
|
|
19
|
-
FIND_PARAMS,
|
|
20
17
|
} from '@dxos/echo-pipeline';
|
|
21
18
|
import { SpaceDocVersion, type SpaceDoc } from '@dxos/echo-protocol';
|
|
22
19
|
import type { EdgeConnection, EdgeHttpClient } from '@dxos/edge-client';
|
|
@@ -355,7 +352,7 @@ export class DataSpace {
|
|
|
355
352
|
|
|
356
353
|
async *getAllDocuments(): AsyncIterable<[string, Uint8Array]> {
|
|
357
354
|
invariant(this._databaseRoot, 'Space is not ready');
|
|
358
|
-
const doc = this._databaseRoot.
|
|
355
|
+
const doc = this._databaseRoot.docSync() ?? failedInvariant();
|
|
359
356
|
const root = save(doc);
|
|
360
357
|
yield [this._databaseRoot.documentId, root];
|
|
361
358
|
|
|
@@ -462,16 +459,12 @@ export class DataSpace {
|
|
|
462
459
|
private _onNewAutomergeRoot(rootUrl: string) {
|
|
463
460
|
log('loading automerge root doc for space', { space: this.key, rootUrl });
|
|
464
461
|
|
|
465
|
-
|
|
462
|
+
const handle = this._echoHost.automergeRepo.find<SpaceDoc>(rootUrl as any);
|
|
466
463
|
|
|
467
464
|
// TODO(dmaretskyi): Make this single-threaded (but doc loading should still be parallel to not block epoch processing).
|
|
468
465
|
queueMicrotask(async () => {
|
|
469
466
|
try {
|
|
470
467
|
await warnAfterTimeout(5_000, 'Automerge root doc load timeout (DataSpace)', async () => {
|
|
471
|
-
handle = await cancelWithContext(
|
|
472
|
-
this._ctx,
|
|
473
|
-
this._echoHost.automergeRepo.find<SpaceDoc>(rootUrl as any, FIND_PARAMS),
|
|
474
|
-
);
|
|
475
468
|
await cancelWithContext(this._ctx, handle.whenReady());
|
|
476
469
|
});
|
|
477
470
|
if (this._ctx.disposed) {
|
|
@@ -482,7 +475,7 @@ export class DataSpace {
|
|
|
482
475
|
using _guard = await this._epochProcessingMutex.acquire();
|
|
483
476
|
|
|
484
477
|
// Attaching space keys to legacy documents.
|
|
485
|
-
const doc = handle.
|
|
478
|
+
const doc = handle.docSync() ?? failedInvariant();
|
|
486
479
|
if (!doc.access?.spaceKey) {
|
|
487
480
|
handle.change((doc: any) => {
|
|
488
481
|
doc.access = { spaceKey: this.key.toHex() };
|
|
@@ -14,7 +14,6 @@ import { createTestEdgeWsServer } from '@dxos/edge-client/testing';
|
|
|
14
14
|
import { FeedFactory, FeedStore, type FeedWrapper } from '@dxos/feed-store';
|
|
15
15
|
import { Keyring } from '@dxos/keyring';
|
|
16
16
|
import { SpaceId } from '@dxos/keys';
|
|
17
|
-
import { EdgeStatus } from '@dxos/protocols/proto/dxos/client/services';
|
|
18
17
|
import { type FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
19
18
|
import { createStorage } from '@dxos/random-access-storage';
|
|
20
19
|
import { openAndClose } from '@dxos/test-utils';
|
|
@@ -45,7 +44,7 @@ describe('EdgeFeedReplicator', () => {
|
|
|
45
44
|
const { endpoint, admitConnection, messageSink } = await createEdge();
|
|
46
45
|
const { messenger } = await createClient(endpoint);
|
|
47
46
|
admitConnection.wake();
|
|
48
|
-
await expect.poll(() => messenger.
|
|
47
|
+
await expect.poll(() => messenger.isConnected).toBeTruthy();
|
|
49
48
|
|
|
50
49
|
await attachReplicator(messenger);
|
|
51
50
|
await expect.poll(() => messageSink.length).toEqual(1);
|
|
@@ -19,7 +19,6 @@ import {
|
|
|
19
19
|
type Message as RouterMessage,
|
|
20
20
|
} from '@dxos/protocols/buf/dxos/edge/messenger_pb';
|
|
21
21
|
import type { FeedBlock, ProtocolMessage } from '@dxos/protocols/feed-replication';
|
|
22
|
-
import { EdgeStatus } from '@dxos/protocols/proto/dxos/client/services';
|
|
23
22
|
import { ComplexMap, arrayToBuffer, bufferToArray, defaultMap, rangeFromTo } from '@dxos/util';
|
|
24
23
|
|
|
25
24
|
export type EdgeFeedReplicatorParams = {
|
|
@@ -87,7 +86,7 @@ export class EdgeFeedReplicator extends Resource {
|
|
|
87
86
|
|
|
88
87
|
private async _handleReconnect() {
|
|
89
88
|
await this._resetConnection();
|
|
90
|
-
if (this._messenger.
|
|
89
|
+
if (this._messenger.isConnected) {
|
|
91
90
|
this._startReplication();
|
|
92
91
|
}
|
|
93
92
|
}
|
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
// Copyright 2024 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import type { AutomergeUrl } from '@automerge/automerge-repo';
|
|
6
|
-
|
|
5
|
+
import type { AutomergeUrl } from '@dxos/automerge/automerge-repo';
|
|
7
6
|
import { type Context } from '@dxos/context';
|
|
8
7
|
import { type EchoHost } from '@dxos/echo-pipeline';
|
|
9
8
|
import { invariant } from '@dxos/invariant';
|
|
@@ -48,7 +47,7 @@ export const runEpochMigration = async (ctx: Context, context: MigrationContext)
|
|
|
48
47
|
timeout: LOAD_DOC_TIMEOUT,
|
|
49
48
|
});
|
|
50
49
|
|
|
51
|
-
const newRoot = context.echoHost.createDoc(rootHandle.
|
|
50
|
+
const newRoot = context.echoHost.createDoc(rootHandle.docSync());
|
|
52
51
|
await context.echoHost.flush();
|
|
53
52
|
return { newRoot: newRoot.url };
|
|
54
53
|
}
|
|
@@ -2,9 +2,8 @@
|
|
|
2
2
|
// Copyright 2022 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import type { AutomergeUrl } from '@automerge/automerge-repo';
|
|
6
|
-
|
|
7
5
|
import { SubscriptionList, UpdateScheduler, scheduleTask } from '@dxos/async';
|
|
6
|
+
import type { AutomergeUrl } from '@dxos/automerge/automerge-repo';
|
|
8
7
|
import { Stream } from '@dxos/codec-protobuf/stream';
|
|
9
8
|
import {
|
|
10
9
|
type CredentialProcessor,
|
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
// Copyright 2024 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import { cbor } from '@automerge/automerge-repo';
|
|
6
|
-
|
|
5
|
+
import { cbor } from '@dxos/automerge/automerge-repo';
|
|
7
6
|
import { invariant } from '@dxos/invariant';
|
|
8
7
|
import type { LevelDB } from '@dxos/kv-store';
|
|
9
8
|
import { log } from '@dxos/log';
|
package/src/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const DXOS_VERSION = "0.8.2-
|
|
1
|
+
export const DXOS_VERSION = "0.8.2-staging.7ac8446";
|