@dxos/echo-pipeline 0.5.7 → 0.5.8-main.1e35f75
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-GANAND63.mjs → chunk-BE5QQHWH.mjs} +43 -15
- package/dist/lib/browser/{chunk-GANAND63.mjs.map → chunk-BE5QQHWH.mjs.map} +3 -3
- package/dist/lib/browser/index.mjs +13 -9
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +99 -4
- package/dist/lib/browser/testing/index.mjs.map +4 -4
- package/dist/lib/node/{chunk-M475BGBI.cjs → chunk-ZELCNJ3D.cjs} +54 -25
- package/dist/lib/node/chunk-ZELCNJ3D.cjs.map +7 -0
- package/dist/lib/node/index.cjs +34 -30
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/testing/index.cjs +107 -13
- package/dist/lib/node/testing/index.cjs.map +4 -4
- package/dist/types/src/automerge/automerge-host.d.ts.map +1 -1
- package/dist/types/src/automerge/migrations.d.ts.map +1 -1
- package/dist/types/src/space/space-manager.d.ts +2 -2
- package/dist/types/src/space/space-manager.d.ts.map +1 -1
- package/dist/types/src/space/space-protocol.d.ts +2 -2
- package/dist/types/src/space/space-protocol.d.ts.map +1 -1
- package/dist/types/src/space/space.d.ts +9 -1
- package/dist/types/src/space/space.d.ts.map +1 -1
- package/dist/types/src/testing/index.d.ts +1 -0
- package/dist/types/src/testing/index.d.ts.map +1 -1
- package/dist/types/src/testing/test-agent-builder.d.ts +2 -2
- package/dist/types/src/testing/test-agent-builder.d.ts.map +1 -1
- package/dist/types/src/testing/test-network-adapter.d.ts +18 -0
- package/dist/types/src/testing/test-network-adapter.d.ts.map +1 -0
- package/package.json +33 -33
- package/src/automerge/automerge-doc-loader.test.ts +2 -1
- package/src/automerge/automerge-doc-loader.ts +1 -1
- package/src/automerge/automerge-host.test.ts +1 -553
- package/src/automerge/automerge-host.ts +12 -5
- package/src/automerge/automerge-repo.test.ts +450 -2
- package/src/automerge/migrations.ts +2 -1
- package/src/automerge/storage-adapter.test.ts +81 -15
- package/src/space/space-manager.ts +6 -4
- package/src/space/space-protocol.test.ts +3 -3
- package/src/space/space-protocol.ts +3 -3
- package/src/space/space.ts +30 -1
- package/src/testing/index.ts +1 -0
- package/src/testing/test-agent-builder.ts +4 -4
- package/src/testing/test-network-adapter.ts +62 -0
- package/dist/lib/node/chunk-M475BGBI.cjs.map +0 -7
|
@@ -1150,7 +1150,9 @@ var AuthExtension = class extends RpcExtension {
|
|
|
1150
1150
|
// packages/core/echo/echo-pipeline/src/space/space.ts
|
|
1151
1151
|
import { Event as Event4, Mutex, synchronized as synchronized3, trackLeaks as trackLeaks2 } from "@dxos/async";
|
|
1152
1152
|
import { LifecycleState, Resource } from "@dxos/context";
|
|
1153
|
+
import { subtleCrypto as subtleCrypto2 } from "@dxos/crypto";
|
|
1153
1154
|
import { invariant as invariant6 } from "@dxos/invariant";
|
|
1155
|
+
import { SpaceId } from "@dxos/keys";
|
|
1154
1156
|
import { log as log7, logInfo } from "@dxos/log";
|
|
1155
1157
|
import { AdmittedFeed as AdmittedFeed2 } from "@dxos/protocols/proto/dxos/halo/credentials";
|
|
1156
1158
|
import { trace as trace2 } from "@dxos/tracing";
|
|
@@ -1439,13 +1441,14 @@ var Space = class extends Resource {
|
|
|
1439
1441
|
this.stateUpdate = new Event4();
|
|
1440
1442
|
invariant6(params.spaceKey && params.feedProvider, void 0, {
|
|
1441
1443
|
F: __dxlog_file8,
|
|
1442
|
-
L:
|
|
1444
|
+
L: 78,
|
|
1443
1445
|
S: this,
|
|
1444
1446
|
A: [
|
|
1445
1447
|
"params.spaceKey && params.feedProvider",
|
|
1446
1448
|
""
|
|
1447
1449
|
]
|
|
1448
1450
|
});
|
|
1451
|
+
this._id = params.id;
|
|
1449
1452
|
this._key = params.spaceKey;
|
|
1450
1453
|
this._genesisFeedKey = params.genesisFeed.key;
|
|
1451
1454
|
this._feedProvider = params.feedProvider;
|
|
@@ -1472,7 +1475,7 @@ var Space = class extends Resource {
|
|
|
1472
1475
|
credential
|
|
1473
1476
|
}, {
|
|
1474
1477
|
F: __dxlog_file8,
|
|
1475
|
-
L:
|
|
1478
|
+
L: 106,
|
|
1476
1479
|
S: this,
|
|
1477
1480
|
C: (f, a) => f(...a)
|
|
1478
1481
|
});
|
|
@@ -1483,7 +1486,7 @@ var Space = class extends Resource {
|
|
|
1483
1486
|
invitation
|
|
1484
1487
|
}, {
|
|
1485
1488
|
F: __dxlog_file8,
|
|
1486
|
-
L:
|
|
1489
|
+
L: 110,
|
|
1487
1490
|
S: this,
|
|
1488
1491
|
C: (f, a) => f(...a)
|
|
1489
1492
|
});
|
|
@@ -1494,7 +1497,7 @@ var Space = class extends Resource {
|
|
|
1494
1497
|
invitation
|
|
1495
1498
|
}, {
|
|
1496
1499
|
F: __dxlog_file8,
|
|
1497
|
-
L:
|
|
1500
|
+
L: 114,
|
|
1498
1501
|
S: this,
|
|
1499
1502
|
C: (f, a) => f(...a)
|
|
1500
1503
|
});
|
|
@@ -1508,7 +1511,7 @@ var Space = class extends Resource {
|
|
|
1508
1511
|
])
|
|
1509
1512
|
}), {
|
|
1510
1513
|
F: __dxlog_file8,
|
|
1511
|
-
L:
|
|
1514
|
+
L: 118,
|
|
1512
1515
|
S: this,
|
|
1513
1516
|
C: (f, a) => f(...a)
|
|
1514
1517
|
});
|
|
@@ -1517,6 +1520,9 @@ var Space = class extends Resource {
|
|
|
1517
1520
|
this.protocol = params.protocol;
|
|
1518
1521
|
this.protocol.addFeed(params.genesisFeed);
|
|
1519
1522
|
}
|
|
1523
|
+
get id() {
|
|
1524
|
+
return this._id;
|
|
1525
|
+
}
|
|
1520
1526
|
get key() {
|
|
1521
1527
|
return this._key;
|
|
1522
1528
|
}
|
|
@@ -1547,7 +1553,7 @@ var Space = class extends Resource {
|
|
|
1547
1553
|
async setControlFeed(feed) {
|
|
1548
1554
|
invariant6(!this._controlFeed, "Control feed already set.", {
|
|
1549
1555
|
F: __dxlog_file8,
|
|
1550
|
-
L:
|
|
1556
|
+
L: 171,
|
|
1551
1557
|
S: this,
|
|
1552
1558
|
A: [
|
|
1553
1559
|
"!this._controlFeed",
|
|
@@ -1561,7 +1567,7 @@ var Space = class extends Resource {
|
|
|
1561
1567
|
async setDataFeed(feed) {
|
|
1562
1568
|
invariant6(!this._dataFeed, "Data feed already set.", {
|
|
1563
1569
|
F: __dxlog_file8,
|
|
1564
|
-
L:
|
|
1570
|
+
L: 178,
|
|
1565
1571
|
S: this,
|
|
1566
1572
|
A: [
|
|
1567
1573
|
"!this._dataFeed",
|
|
@@ -1580,7 +1586,7 @@ var Space = class extends Resource {
|
|
|
1580
1586
|
async _open(ctx) {
|
|
1581
1587
|
log7("opening...", void 0, {
|
|
1582
1588
|
F: __dxlog_file8,
|
|
1583
|
-
L:
|
|
1589
|
+
L: 192,
|
|
1584
1590
|
S: this,
|
|
1585
1591
|
C: (f, a) => f(...a)
|
|
1586
1592
|
});
|
|
@@ -1588,7 +1594,7 @@ var Space = class extends Resource {
|
|
|
1588
1594
|
await this.protocol.start();
|
|
1589
1595
|
log7("opened", void 0, {
|
|
1590
1596
|
F: __dxlog_file8,
|
|
1591
|
-
L:
|
|
1597
|
+
L: 198,
|
|
1592
1598
|
S: this,
|
|
1593
1599
|
C: (f, a) => f(...a)
|
|
1594
1600
|
});
|
|
@@ -1598,7 +1604,7 @@ var Space = class extends Resource {
|
|
|
1598
1604
|
key: this._key
|
|
1599
1605
|
}, {
|
|
1600
1606
|
F: __dxlog_file8,
|
|
1601
|
-
L:
|
|
1607
|
+
L: 203,
|
|
1602
1608
|
S: this,
|
|
1603
1609
|
C: (f, a) => f(...a)
|
|
1604
1610
|
});
|
|
@@ -1606,7 +1612,7 @@ var Space = class extends Resource {
|
|
|
1606
1612
|
await this._controlPipeline.stop();
|
|
1607
1613
|
log7("closed", void 0, {
|
|
1608
1614
|
F: __dxlog_file8,
|
|
1609
|
-
L:
|
|
1615
|
+
L: 209,
|
|
1610
1616
|
S: this,
|
|
1611
1617
|
C: (f, a) => f(...a)
|
|
1612
1618
|
});
|
|
@@ -1618,6 +1624,10 @@ _ts_decorate5([
|
|
|
1618
1624
|
_ts_decorate5([
|
|
1619
1625
|
trace2.info()
|
|
1620
1626
|
], Space.prototype, "_controlPipeline", void 0);
|
|
1627
|
+
_ts_decorate5([
|
|
1628
|
+
logInfo,
|
|
1629
|
+
trace2.info()
|
|
1630
|
+
], Space.prototype, "id", null);
|
|
1621
1631
|
_ts_decorate5([
|
|
1622
1632
|
logInfo,
|
|
1623
1633
|
trace2.info()
|
|
@@ -1632,9 +1642,24 @@ Space = _ts_decorate5([
|
|
|
1632
1642
|
trackLeaks2("open", "close"),
|
|
1633
1643
|
trace2.resource()
|
|
1634
1644
|
], Space);
|
|
1645
|
+
var createIdFromSpaceKey = async (spaceKey) => {
|
|
1646
|
+
invariant6(spaceKey.length === EXPECTED_SPACE_KEY_LENGTH, void 0, {
|
|
1647
|
+
F: __dxlog_file8,
|
|
1648
|
+
L: 219,
|
|
1649
|
+
S: void 0,
|
|
1650
|
+
A: [
|
|
1651
|
+
"spaceKey.length === EXPECTED_SPACE_KEY_LENGTH",
|
|
1652
|
+
""
|
|
1653
|
+
]
|
|
1654
|
+
});
|
|
1655
|
+
const digest = await subtleCrypto2.digest("SHA-256", spaceKey.asUint8Array());
|
|
1656
|
+
const bytes = new Uint8Array(digest).slice(0, SpaceId.byteLength);
|
|
1657
|
+
return SpaceId.encode(bytes);
|
|
1658
|
+
};
|
|
1659
|
+
var EXPECTED_SPACE_KEY_LENGTH = 65;
|
|
1635
1660
|
|
|
1636
1661
|
// packages/core/echo/echo-pipeline/src/space/space-protocol.ts
|
|
1637
|
-
import { discoveryKey, subtleCrypto as
|
|
1662
|
+
import { discoveryKey, subtleCrypto as subtleCrypto3 } from "@dxos/crypto";
|
|
1638
1663
|
import { PublicKey as PublicKey5 } from "@dxos/keys";
|
|
1639
1664
|
import { log as log8, logInfo as logInfo2 } from "@dxos/log";
|
|
1640
1665
|
import { MMSTTopology } from "@dxos/network-manager";
|
|
@@ -1674,7 +1699,7 @@ var SpaceProtocol = class {
|
|
|
1674
1699
|
this.blobSync = new BlobSync({
|
|
1675
1700
|
blobStore
|
|
1676
1701
|
});
|
|
1677
|
-
this._topic =
|
|
1702
|
+
this._topic = subtleCrypto3.digest("SHA-256", topic.asBuffer()).then(discoveryKey).then(PublicKey5.from);
|
|
1678
1703
|
}
|
|
1679
1704
|
get sessions() {
|
|
1680
1705
|
return this._sessions;
|
|
@@ -1910,6 +1935,7 @@ var SpaceManager = class {
|
|
|
1910
1935
|
});
|
|
1911
1936
|
const genesisFeed = await this._feedStore.openFeed(metadata.genesisFeedKey ?? failUndefined2());
|
|
1912
1937
|
const spaceKey = metadata.key;
|
|
1938
|
+
const spaceId = await createIdFromSpaceKey(spaceKey);
|
|
1913
1939
|
const protocol = new SpaceProtocol({
|
|
1914
1940
|
topic: spaceKey,
|
|
1915
1941
|
swarmIdentity,
|
|
@@ -1920,6 +1946,7 @@ var SpaceManager = class {
|
|
|
1920
1946
|
});
|
|
1921
1947
|
const snapshotManager = new SnapshotManager(this._snapshotStore, this._blobStore, protocol.blobSync);
|
|
1922
1948
|
const space = new Space({
|
|
1949
|
+
id: spaceId,
|
|
1923
1950
|
spaceKey,
|
|
1924
1951
|
protocol,
|
|
1925
1952
|
genesisFeed,
|
|
@@ -1935,7 +1962,7 @@ var SpaceManager = class {
|
|
|
1935
1962
|
id: this._instanceId
|
|
1936
1963
|
}), {
|
|
1937
1964
|
F: __dxlog_file10,
|
|
1938
|
-
L:
|
|
1965
|
+
L: 126,
|
|
1939
1966
|
S: this,
|
|
1940
1967
|
C: (f, a) => f(...a)
|
|
1941
1968
|
});
|
|
@@ -1969,6 +1996,7 @@ export {
|
|
|
1969
1996
|
Pipeline,
|
|
1970
1997
|
AuthExtension,
|
|
1971
1998
|
Space,
|
|
1999
|
+
createIdFromSpaceKey,
|
|
1972
2000
|
MOCK_AUTH_PROVIDER,
|
|
1973
2001
|
MOCK_AUTH_VERIFIER,
|
|
1974
2002
|
SpaceProtocol,
|
|
@@ -1976,4 +2004,4 @@ export {
|
|
|
1976
2004
|
SpaceProtocolSession,
|
|
1977
2005
|
SpaceManager
|
|
1978
2006
|
};
|
|
1979
|
-
//# sourceMappingURL=chunk-
|
|
2007
|
+
//# sourceMappingURL=chunk-BE5QQHWH.mjs.map
|