@dxos/echo-pipeline 0.4.8-main.ac78619 → 0.4.8-main.c4e8b01
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/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +3 -3
- package/dist/lib/browser/testing/index.mjs.map +2 -2
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/testing/index.cjs +3 -3
- package/dist/lib/node/testing/index.cjs.map +2 -2
- package/dist/types/src/testing/database-test-rig.d.ts.map +1 -1
- package/package.json +33 -33
- package/src/testing/database-test-rig.ts +2 -0
- package/dist/types/src/tests/database-unit.test.d.ts +0 -2
- package/dist/types/src/tests/database-unit.test.d.ts.map +0 -1
- package/src/tests/database-unit.test.ts +0 -325
package/dist/lib/node/meta.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"inputs":{"packages/core/echo/echo-pipeline/src/common/codec.ts":{"bytes":1650,"imports":[{"path":"@dxos/hypercore","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/common/feeds.ts":{"bytes":2138,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/common/index.ts":{"bytes":553,"imports":[{"path":"packages/core/echo/echo-pipeline/src/common/codec.ts","kind":"import-statement","original":"./codec"},{"path":"packages/core/echo/echo-pipeline/src/common/feeds.ts","kind":"import-statement","original":"./feeds"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/db-host/data-service-host.ts":{"bytes":25586,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/codec-protobuf","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/echo/service","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/db-host/database-host.ts":{"bytes":5732,"imports":[{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/db-host/data-service-host.ts","kind":"import-statement","original":"./data-service-host"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/db-host/snapshot-manager.ts":{"bytes":6376,"imports":[{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/echo/blob","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/db-host/snapshot-store.ts":{"bytes":6075,"imports":[{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/db-host/data-service.ts":{"bytes":10586,"imports":[{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/db-host/index.ts":{"bytes":920,"imports":[{"path":"packages/core/echo/echo-pipeline/src/db-host/data-service-host.ts","kind":"import-statement","original":"./data-service-host"},{"path":"packages/core/echo/echo-pipeline/src/db-host/database-host.ts","kind":"import-statement","original":"./database-host"},{"path":"packages/core/echo/echo-pipeline/src/db-host/snapshot-manager.ts","kind":"import-statement","original":"./snapshot-manager"},{"path":"packages/core/echo/echo-pipeline/src/db-host/snapshot-store.ts","kind":"import-statement","original":"./snapshot-store"},{"path":"packages/core/echo/echo-pipeline/src/db-host/data-service.ts","kind":"import-statement","original":"./data-service"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/metadata/metadata-store.ts":{"bytes":38251,"imports":[{"path":"crc-32","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/metadata/index.ts":{"bytes":499,"imports":[{"path":"packages/core/echo/echo-pipeline/src/metadata/metadata-store.ts","kind":"import-statement","original":"./metadata-store"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/pipeline/message-selector.ts":{"bytes":3785,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/pipeline/timeframe-clock.ts":{"bytes":9606,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/pipeline/pipeline.ts":{"bytes":46626,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/feed-store","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/pipeline/message-selector.ts","kind":"import-statement","original":"./message-selector"},{"path":"packages/core/echo/echo-pipeline/src/pipeline/timeframe-clock.ts","kind":"import-statement","original":"./timeframe-clock"},{"path":"packages/core/echo/echo-pipeline/src/common/index.ts","kind":"import-statement","original":"../common"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/pipeline/index.ts":{"bytes":675,"imports":[{"path":"packages/core/echo/echo-pipeline/src/pipeline/pipeline.ts","kind":"import-statement","original":"./pipeline"},{"path":"packages/core/echo/echo-pipeline/src/pipeline/timeframe-clock.ts","kind":"import-statement","original":"./timeframe-clock"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/space/auth.ts":{"bytes":10491,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/teleport","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/space/control-pipeline.ts":{"bytes":28032,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/credentials","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/pipeline/index.ts","kind":"import-statement","original":"../pipeline"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/space/data-pipeline.ts":{"bytes":51752,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/credentials","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/db-host/index.ts","kind":"import-statement","original":"../db-host"},{"path":"packages/core/echo/echo-pipeline/src/pipeline/index.ts","kind":"import-statement","original":"../pipeline"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/space/space.ts":{"bytes":27926,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/space/control-pipeline.ts","kind":"import-statement","original":"./control-pipeline"},{"path":"packages/core/echo/echo-pipeline/src/space/data-pipeline.ts","kind":"import-statement","original":"./data-pipeline"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/space/space-protocol.ts":{"bytes":26463,"imports":[{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/network-manager","kind":"import-statement","external":true},{"path":"@dxos/teleport","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-object-sync","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-replicator","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/space/auth.ts","kind":"import-statement","original":"./auth"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/space/space-manager.ts":{"bytes":13339,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/space/space.ts","kind":"import-statement","original":"./space"},{"path":"packages/core/echo/echo-pipeline/src/space/space-protocol.ts","kind":"import-statement","original":"./space-protocol"},{"path":"packages/core/echo/echo-pipeline/src/db-host/index.ts","kind":"import-statement","original":"../db-host"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/space/index.ts":{"bytes":859,"imports":[{"path":"packages/core/echo/echo-pipeline/src/space/auth.ts","kind":"import-statement","original":"./auth"},{"path":"packages/core/echo/echo-pipeline/src/space/space.ts","kind":"import-statement","original":"./space"},{"path":"packages/core/echo/echo-pipeline/src/space/space-manager.ts","kind":"import-statement","original":"./space-manager"},{"path":"packages/core/echo/echo-pipeline/src/space/space-protocol.ts","kind":"import-statement","original":"./space-protocol"},{"path":"packages/core/echo/echo-pipeline/src/space/data-pipeline.ts","kind":"import-statement","original":"./data-pipeline"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/automerge/automerge-storage-adapter.ts":{"bytes":11518,"imports":[{"path":"@dxos/automerge/automerge-repo","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/automerge/automerge-storage–wrapper.ts":{"bytes":5020,"imports":[{"path":"packages/core/echo/echo-pipeline/src/automerge/automerge-storage-adapter.ts","kind":"import-statement","original":"./automerge-storage-adapter"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/automerge/local-host-network-adapter.ts":{"bytes":11172,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge-repo","kind":"import-statement","external":true},{"path":"@dxos/codec-protobuf","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/automerge/mesh-network-adapter.ts":{"bytes":13712,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge-repo","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-automerge-replicator","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/automerge/automerge-host.ts":{"bytes":32916,"imports":[{"path":"@dxos/automerge/automerge","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge-repo","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge-repo-storage-indexeddb","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/random-access-storage","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/automerge/automerge-storage-adapter.ts","kind":"import-statement","original":"./automerge-storage-adapter"},{"path":"packages/core/echo/echo-pipeline/src/automerge/automerge-storage–wrapper.ts","kind":"import-statement","original":"./automerge-storage–wrapper"},{"path":"packages/core/echo/echo-pipeline/src/automerge/local-host-network-adapter.ts","kind":"import-statement","original":"./local-host-network-adapter"},{"path":"packages/core/echo/echo-pipeline/src/automerge/mesh-network-adapter.ts","kind":"import-statement","original":"./mesh-network-adapter"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/automerge/index.ts":{"bytes":883,"imports":[{"path":"packages/core/echo/echo-pipeline/src/automerge/automerge-host.ts","kind":"import-statement","original":"./automerge-host"},{"path":"packages/core/echo/echo-pipeline/src/automerge/automerge-storage-adapter.ts","kind":"import-statement","original":"./automerge-storage-adapter"},{"path":"packages/core/echo/echo-pipeline/src/automerge/local-host-network-adapter.ts","kind":"import-statement","original":"./local-host-network-adapter"},{"path":"packages/core/echo/echo-pipeline/src/automerge/mesh-network-adapter.ts","kind":"import-statement","original":"./mesh-network-adapter"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/index.ts":{"bytes":903,"imports":[{"path":"packages/core/echo/echo-pipeline/src/common/index.ts","kind":"import-statement","original":"./common"},{"path":"packages/core/echo/echo-pipeline/src/db-host/index.ts","kind":"import-statement","original":"./db-host"},{"path":"packages/core/echo/echo-pipeline/src/metadata/index.ts","kind":"import-statement","original":"./metadata"},{"path":"packages/core/echo/echo-pipeline/src/pipeline/index.ts","kind":"import-statement","original":"./pipeline"},{"path":"packages/core/echo/echo-pipeline/src/space/index.ts","kind":"import-statement","original":"./space"},{"path":"packages/core/echo/echo-pipeline/src/automerge/index.ts","kind":"import-statement","original":"./automerge"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/testing/change-metadata.ts":{"bytes":3594,"imports":[{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/metadata/index.ts","kind":"import-statement","original":"../metadata"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/testing/test-feed-builder.ts":{"bytes":1474,"imports":[{"path":"@dxos/feed-store/testing","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/common/index.ts","kind":"import-statement","original":"../common"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/testing/test-agent-builder.ts":{"bytes":29261,"imports":[{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/credentials","kind":"import-statement","external":true},{"path":"@dxos/document-model","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/model-factory","kind":"import-statement","external":true},{"path":"@dxos/network-manager","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/random-access-storage","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-gossip","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-object-sync","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/testing/test-feed-builder.ts","kind":"import-statement","original":"./test-feed-builder"},{"path":"packages/core/echo/echo-pipeline/src/db-host/index.ts","kind":"import-statement","original":"../db-host"},{"path":"packages/core/echo/echo-pipeline/src/metadata/index.ts","kind":"import-statement","original":"../metadata"},{"path":"packages/core/echo/echo-pipeline/src/space/index.ts","kind":"import-statement","original":"../space"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/testing/util.ts":{"bytes":10008,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/document-model","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/feed-store/testing","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/model-factory","kind":"import-statement","external":true},{"path":"@dxos/random-access-storage","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/automerge/index.ts","kind":"import-statement","original":"../automerge"},{"path":"packages/core/echo/echo-pipeline/src/db-host/index.ts","kind":"import-statement","original":"../db-host"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/testing/database-test-rig.ts":{"bytes":30699,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/document-model","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/model-factory","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/text-model","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/db-host/index.ts","kind":"import-statement","original":"../db-host"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/testing/index.ts":{"bytes":915,"imports":[{"path":"packages/core/echo/echo-pipeline/src/testing/change-metadata.ts","kind":"import-statement","original":"./change-metadata"},{"path":"packages/core/echo/echo-pipeline/src/testing/test-agent-builder.ts","kind":"import-statement","original":"./test-agent-builder"},{"path":"packages/core/echo/echo-pipeline/src/testing/test-feed-builder.ts","kind":"import-statement","original":"./test-feed-builder"},{"path":"packages/core/echo/echo-pipeline/src/testing/util.ts","kind":"import-statement","original":"./util"},{"path":"packages/core/echo/echo-pipeline/src/testing/database-test-rig.ts","kind":"import-statement","original":"./database-test-rig"}],"format":"esm"}},"outputs":{"packages/core/echo/echo-pipeline/dist/lib/node/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/core/echo/echo-pipeline/dist/lib/node/index.cjs":{"imports":[{"path":"packages/core/echo/echo-pipeline/dist/lib/node/chunk-UKREXVZX.cjs","kind":"import-statement"}],"exports":["AuthExtension","AuthStatus","AutomergeHost","AutomergeStorageAdapter","DataPipeline","DataServiceHost","DataServiceImpl","DataServiceSubscriptions","DatabaseHost","LocalHostNetworkAdapter","MOCK_AUTH_PROVIDER","MOCK_AUTH_VERIFIER","MeshNetworkAdapter","MetadataStore","Pipeline","SnapshotManager","SnapshotStore","Space","SpaceManager","SpaceProtocol","SpaceProtocolSession","TimeframeClock","codec","createMappedFeedWriter","mapFeedIndexesToTimeframe","mapTimeframeToFeedIndexes","startAfter","valueEncoding"],"entryPoint":"packages/core/echo/echo-pipeline/src/index.ts","inputs":{"packages/core/echo/echo-pipeline/src/index.ts":{"bytesInOutput":0}},"bytes":1163},"packages/core/echo/echo-pipeline/dist/lib/node/testing/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":37810},"packages/core/echo/echo-pipeline/dist/lib/node/testing/index.cjs":{"imports":[{"path":"packages/core/echo/echo-pipeline/dist/lib/node/chunk-UKREXVZX.cjs","kind":"import-statement"},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/credentials","kind":"import-statement","external":true},{"path":"@dxos/document-model","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/model-factory","kind":"import-statement","external":true},{"path":"@dxos/network-manager","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/random-access-storage","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-gossip","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-object-sync","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/feed-store/testing","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/document-model","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/feed-store/testing","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/model-factory","kind":"import-statement","external":true},{"path":"@dxos/random-access-storage","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/document-model","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/model-factory","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/text-model","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["DatabaseTestBuilder","DatabaseTestPeer","MemoryNetworkManagerProvider","TestAgent","TestAgentBuilder","TestFeedBuilder","WebsocketNetworkManagerProvider","changeStorageVersionInMetadata","createMemoryDatabase","createRemoteDatabaseFromDataServiceHost","testLocalDatabase"],"entryPoint":"packages/core/echo/echo-pipeline/src/testing/index.ts","inputs":{"packages/core/echo/echo-pipeline/src/testing/change-metadata.ts":{"bytesInOutput":843},"packages/core/echo/echo-pipeline/src/testing/index.ts":{"bytesInOutput":0},"packages/core/echo/echo-pipeline/src/testing/test-agent-builder.ts":{"bytesInOutput":6548},"packages/core/echo/echo-pipeline/src/testing/test-feed-builder.ts":{"bytesInOutput":171},"packages/core/echo/echo-pipeline/src/testing/util.ts":{"bytesInOutput":2350},"packages/core/echo/echo-pipeline/src/testing/database-test-rig.ts":{"bytesInOutput":7638}},"bytes":18535},"packages/core/echo/echo-pipeline/dist/lib/node/chunk-UKREXVZX.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":184998},"packages/core/echo/echo-pipeline/dist/lib/node/chunk-UKREXVZX.cjs":{"imports":[{"path":"@dxos/hypercore","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/codec-protobuf","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/echo/service","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/echo/blob","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"crc-32","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/feed-store","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/teleport","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/credentials","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/credentials","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/network-manager","kind":"import-statement","external":true},{"path":"@dxos/teleport","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-object-sync","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-replicator","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge-repo","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge-repo","kind":"import-statement","external":true},{"path":"@dxos/codec-protobuf","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge-repo","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-automerge-replicator","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge-repo","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge-repo-storage-indexeddb","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/random-access-storage","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["AuthExtension","AuthStatus","AutomergeHost","AutomergeStorageAdapter","DataPipeline","DataServiceHost","DataServiceImpl","DataServiceSubscriptions","DatabaseHost","LocalHostNetworkAdapter","MOCK_AUTH_PROVIDER","MOCK_AUTH_VERIFIER","MeshNetworkAdapter","MetadataStore","Pipeline","SnapshotManager","SnapshotStore","Space","SpaceManager","SpaceProtocol","SpaceProtocolSession","TimeframeClock","codec","createMappedFeedWriter","mapFeedIndexesToTimeframe","mapTimeframeToFeedIndexes","startAfter","valueEncoding"],"inputs":{"packages/core/echo/echo-pipeline/src/common/codec.ts":{"bytesInOutput":211},"packages/core/echo/echo-pipeline/src/common/feeds.ts":{"bytesInOutput":548},"packages/core/echo/echo-pipeline/src/common/index.ts":{"bytesInOutput":0},"packages/core/echo/echo-pipeline/src/db-host/data-service-host.ts":{"bytesInOutput":6395},"packages/core/echo/echo-pipeline/src/db-host/database-host.ts":{"bytesInOutput":871},"packages/core/echo/echo-pipeline/src/db-host/snapshot-manager.ts":{"bytesInOutput":1298},"packages/core/echo/echo-pipeline/src/db-host/snapshot-store.ts":{"bytesInOutput":1292},"packages/core/echo/echo-pipeline/src/db-host/data-service.ts":{"bytesInOutput":2942},"packages/core/echo/echo-pipeline/src/db-host/index.ts":{"bytesInOutput":0},"packages/core/echo/echo-pipeline/src/metadata/metadata-store.ts":{"bytesInOutput":10633},"packages/core/echo/echo-pipeline/src/metadata/index.ts":{"bytesInOutput":0},"packages/core/echo/echo-pipeline/src/pipeline/timeframe-clock.ts":{"bytesInOutput":2919},"packages/core/echo/echo-pipeline/src/pipeline/pipeline.ts":{"bytesInOutput":12601},"packages/core/echo/echo-pipeline/src/pipeline/message-selector.ts":{"bytesInOutput":769},"packages/core/echo/echo-pipeline/src/pipeline/index.ts":{"bytesInOutput":0},"packages/core/echo/echo-pipeline/src/space/auth.ts":{"bytesInOutput":3001},"packages/core/echo/echo-pipeline/src/space/data-pipeline.ts":{"bytesInOutput":13887},"packages/core/echo/echo-pipeline/src/space/space.ts":{"bytesInOutput":7711},"packages/core/echo/echo-pipeline/src/space/control-pipeline.ts":{"bytesInOutput":8113},"packages/core/echo/echo-pipeline/src/space/space-protocol.ts":{"bytesInOutput":6885},"packages/core/echo/echo-pipeline/src/space/space-manager.ts":{"bytesInOutput":3434},"packages/core/echo/echo-pipeline/src/space/index.ts":{"bytesInOutput":0},"packages/core/echo/echo-pipeline/src/automerge/automerge-storage-adapter.ts":{"bytesInOutput":2459},"packages/core/echo/echo-pipeline/src/automerge/local-host-network-adapter.ts":{"bytesInOutput":2827},"packages/core/echo/echo-pipeline/src/automerge/mesh-network-adapter.ts":{"bytesInOutput":3211},"packages/core/echo/echo-pipeline/src/automerge/automerge-host.ts":{"bytesInOutput":8794},"packages/core/echo/echo-pipeline/src/automerge/automerge-storage–wrapper.ts":{"bytesInOutput":725},"packages/core/echo/echo-pipeline/src/automerge/index.ts":{"bytesInOutput":0}},"bytes":103785}}}
|
|
1
|
+
{"inputs":{"packages/core/echo/echo-pipeline/src/common/codec.ts":{"bytes":1650,"imports":[{"path":"@dxos/hypercore","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/common/feeds.ts":{"bytes":2138,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/common/index.ts":{"bytes":553,"imports":[{"path":"packages/core/echo/echo-pipeline/src/common/codec.ts","kind":"import-statement","original":"./codec"},{"path":"packages/core/echo/echo-pipeline/src/common/feeds.ts","kind":"import-statement","original":"./feeds"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/db-host/data-service-host.ts":{"bytes":25586,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/codec-protobuf","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/echo/service","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/db-host/database-host.ts":{"bytes":5732,"imports":[{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/db-host/data-service-host.ts","kind":"import-statement","original":"./data-service-host"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/db-host/snapshot-manager.ts":{"bytes":6376,"imports":[{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/echo/blob","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/db-host/snapshot-store.ts":{"bytes":6075,"imports":[{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/db-host/data-service.ts":{"bytes":10586,"imports":[{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/db-host/index.ts":{"bytes":920,"imports":[{"path":"packages/core/echo/echo-pipeline/src/db-host/data-service-host.ts","kind":"import-statement","original":"./data-service-host"},{"path":"packages/core/echo/echo-pipeline/src/db-host/database-host.ts","kind":"import-statement","original":"./database-host"},{"path":"packages/core/echo/echo-pipeline/src/db-host/snapshot-manager.ts","kind":"import-statement","original":"./snapshot-manager"},{"path":"packages/core/echo/echo-pipeline/src/db-host/snapshot-store.ts","kind":"import-statement","original":"./snapshot-store"},{"path":"packages/core/echo/echo-pipeline/src/db-host/data-service.ts","kind":"import-statement","original":"./data-service"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/metadata/metadata-store.ts":{"bytes":38251,"imports":[{"path":"crc-32","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/metadata/index.ts":{"bytes":499,"imports":[{"path":"packages/core/echo/echo-pipeline/src/metadata/metadata-store.ts","kind":"import-statement","original":"./metadata-store"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/pipeline/message-selector.ts":{"bytes":3785,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/pipeline/timeframe-clock.ts":{"bytes":9606,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/pipeline/pipeline.ts":{"bytes":46626,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/feed-store","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/pipeline/message-selector.ts","kind":"import-statement","original":"./message-selector"},{"path":"packages/core/echo/echo-pipeline/src/pipeline/timeframe-clock.ts","kind":"import-statement","original":"./timeframe-clock"},{"path":"packages/core/echo/echo-pipeline/src/common/index.ts","kind":"import-statement","original":"../common"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/pipeline/index.ts":{"bytes":675,"imports":[{"path":"packages/core/echo/echo-pipeline/src/pipeline/pipeline.ts","kind":"import-statement","original":"./pipeline"},{"path":"packages/core/echo/echo-pipeline/src/pipeline/timeframe-clock.ts","kind":"import-statement","original":"./timeframe-clock"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/space/auth.ts":{"bytes":10491,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/teleport","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/space/control-pipeline.ts":{"bytes":28032,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/credentials","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/pipeline/index.ts","kind":"import-statement","original":"../pipeline"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/space/data-pipeline.ts":{"bytes":51752,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/credentials","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/db-host/index.ts","kind":"import-statement","original":"../db-host"},{"path":"packages/core/echo/echo-pipeline/src/pipeline/index.ts","kind":"import-statement","original":"../pipeline"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/space/space.ts":{"bytes":27926,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/space/control-pipeline.ts","kind":"import-statement","original":"./control-pipeline"},{"path":"packages/core/echo/echo-pipeline/src/space/data-pipeline.ts","kind":"import-statement","original":"./data-pipeline"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/space/space-protocol.ts":{"bytes":26463,"imports":[{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/network-manager","kind":"import-statement","external":true},{"path":"@dxos/teleport","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-object-sync","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-replicator","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/space/auth.ts","kind":"import-statement","original":"./auth"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/space/space-manager.ts":{"bytes":13339,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/space/space.ts","kind":"import-statement","original":"./space"},{"path":"packages/core/echo/echo-pipeline/src/space/space-protocol.ts","kind":"import-statement","original":"./space-protocol"},{"path":"packages/core/echo/echo-pipeline/src/db-host/index.ts","kind":"import-statement","original":"../db-host"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/space/index.ts":{"bytes":859,"imports":[{"path":"packages/core/echo/echo-pipeline/src/space/auth.ts","kind":"import-statement","original":"./auth"},{"path":"packages/core/echo/echo-pipeline/src/space/space.ts","kind":"import-statement","original":"./space"},{"path":"packages/core/echo/echo-pipeline/src/space/space-manager.ts","kind":"import-statement","original":"./space-manager"},{"path":"packages/core/echo/echo-pipeline/src/space/space-protocol.ts","kind":"import-statement","original":"./space-protocol"},{"path":"packages/core/echo/echo-pipeline/src/space/data-pipeline.ts","kind":"import-statement","original":"./data-pipeline"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/automerge/automerge-storage-adapter.ts":{"bytes":11518,"imports":[{"path":"@dxos/automerge/automerge-repo","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/automerge/automerge-storage–wrapper.ts":{"bytes":5020,"imports":[{"path":"packages/core/echo/echo-pipeline/src/automerge/automerge-storage-adapter.ts","kind":"import-statement","original":"./automerge-storage-adapter"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/automerge/local-host-network-adapter.ts":{"bytes":11172,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge-repo","kind":"import-statement","external":true},{"path":"@dxos/codec-protobuf","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/automerge/mesh-network-adapter.ts":{"bytes":13712,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge-repo","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-automerge-replicator","kind":"import-statement","external":true}],"format":"esm"},"packages/core/echo/echo-pipeline/src/automerge/automerge-host.ts":{"bytes":32916,"imports":[{"path":"@dxos/automerge/automerge","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge-repo","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge-repo-storage-indexeddb","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/random-access-storage","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/automerge/automerge-storage-adapter.ts","kind":"import-statement","original":"./automerge-storage-adapter"},{"path":"packages/core/echo/echo-pipeline/src/automerge/automerge-storage–wrapper.ts","kind":"import-statement","original":"./automerge-storage–wrapper"},{"path":"packages/core/echo/echo-pipeline/src/automerge/local-host-network-adapter.ts","kind":"import-statement","original":"./local-host-network-adapter"},{"path":"packages/core/echo/echo-pipeline/src/automerge/mesh-network-adapter.ts","kind":"import-statement","original":"./mesh-network-adapter"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/automerge/index.ts":{"bytes":883,"imports":[{"path":"packages/core/echo/echo-pipeline/src/automerge/automerge-host.ts","kind":"import-statement","original":"./automerge-host"},{"path":"packages/core/echo/echo-pipeline/src/automerge/automerge-storage-adapter.ts","kind":"import-statement","original":"./automerge-storage-adapter"},{"path":"packages/core/echo/echo-pipeline/src/automerge/local-host-network-adapter.ts","kind":"import-statement","original":"./local-host-network-adapter"},{"path":"packages/core/echo/echo-pipeline/src/automerge/mesh-network-adapter.ts","kind":"import-statement","original":"./mesh-network-adapter"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/index.ts":{"bytes":903,"imports":[{"path":"packages/core/echo/echo-pipeline/src/common/index.ts","kind":"import-statement","original":"./common"},{"path":"packages/core/echo/echo-pipeline/src/db-host/index.ts","kind":"import-statement","original":"./db-host"},{"path":"packages/core/echo/echo-pipeline/src/metadata/index.ts","kind":"import-statement","original":"./metadata"},{"path":"packages/core/echo/echo-pipeline/src/pipeline/index.ts","kind":"import-statement","original":"./pipeline"},{"path":"packages/core/echo/echo-pipeline/src/space/index.ts","kind":"import-statement","original":"./space"},{"path":"packages/core/echo/echo-pipeline/src/automerge/index.ts","kind":"import-statement","original":"./automerge"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/testing/change-metadata.ts":{"bytes":3594,"imports":[{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/metadata/index.ts","kind":"import-statement","original":"../metadata"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/testing/test-feed-builder.ts":{"bytes":1474,"imports":[{"path":"@dxos/feed-store/testing","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/common/index.ts","kind":"import-statement","original":"../common"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/testing/test-agent-builder.ts":{"bytes":29261,"imports":[{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/credentials","kind":"import-statement","external":true},{"path":"@dxos/document-model","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/model-factory","kind":"import-statement","external":true},{"path":"@dxos/network-manager","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/random-access-storage","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-gossip","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-object-sync","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/testing/test-feed-builder.ts","kind":"import-statement","original":"./test-feed-builder"},{"path":"packages/core/echo/echo-pipeline/src/db-host/index.ts","kind":"import-statement","original":"../db-host"},{"path":"packages/core/echo/echo-pipeline/src/metadata/index.ts","kind":"import-statement","original":"../metadata"},{"path":"packages/core/echo/echo-pipeline/src/space/index.ts","kind":"import-statement","original":"../space"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/testing/util.ts":{"bytes":10008,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/document-model","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/feed-store/testing","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/model-factory","kind":"import-statement","external":true},{"path":"@dxos/random-access-storage","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/automerge/index.ts","kind":"import-statement","original":"../automerge"},{"path":"packages/core/echo/echo-pipeline/src/db-host/index.ts","kind":"import-statement","original":"../db-host"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/testing/database-test-rig.ts":{"bytes":30864,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/document-model","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/model-factory","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/text-model","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/core/echo/echo-pipeline/src/db-host/index.ts","kind":"import-statement","original":"../db-host"}],"format":"esm"},"packages/core/echo/echo-pipeline/src/testing/index.ts":{"bytes":915,"imports":[{"path":"packages/core/echo/echo-pipeline/src/testing/change-metadata.ts","kind":"import-statement","original":"./change-metadata"},{"path":"packages/core/echo/echo-pipeline/src/testing/test-agent-builder.ts","kind":"import-statement","original":"./test-agent-builder"},{"path":"packages/core/echo/echo-pipeline/src/testing/test-feed-builder.ts","kind":"import-statement","original":"./test-feed-builder"},{"path":"packages/core/echo/echo-pipeline/src/testing/util.ts","kind":"import-statement","original":"./util"},{"path":"packages/core/echo/echo-pipeline/src/testing/database-test-rig.ts","kind":"import-statement","original":"./database-test-rig"}],"format":"esm"}},"outputs":{"packages/core/echo/echo-pipeline/dist/lib/node/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/core/echo/echo-pipeline/dist/lib/node/index.cjs":{"imports":[{"path":"packages/core/echo/echo-pipeline/dist/lib/node/chunk-UKREXVZX.cjs","kind":"import-statement"}],"exports":["AuthExtension","AuthStatus","AutomergeHost","AutomergeStorageAdapter","DataPipeline","DataServiceHost","DataServiceImpl","DataServiceSubscriptions","DatabaseHost","LocalHostNetworkAdapter","MOCK_AUTH_PROVIDER","MOCK_AUTH_VERIFIER","MeshNetworkAdapter","MetadataStore","Pipeline","SnapshotManager","SnapshotStore","Space","SpaceManager","SpaceProtocol","SpaceProtocolSession","TimeframeClock","codec","createMappedFeedWriter","mapFeedIndexesToTimeframe","mapTimeframeToFeedIndexes","startAfter","valueEncoding"],"entryPoint":"packages/core/echo/echo-pipeline/src/index.ts","inputs":{"packages/core/echo/echo-pipeline/src/index.ts":{"bytesInOutput":0}},"bytes":1163},"packages/core/echo/echo-pipeline/dist/lib/node/testing/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":37874},"packages/core/echo/echo-pipeline/dist/lib/node/testing/index.cjs":{"imports":[{"path":"packages/core/echo/echo-pipeline/dist/lib/node/chunk-UKREXVZX.cjs","kind":"import-statement"},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/credentials","kind":"import-statement","external":true},{"path":"@dxos/document-model","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/messaging","kind":"import-statement","external":true},{"path":"@dxos/model-factory","kind":"import-statement","external":true},{"path":"@dxos/network-manager","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/random-access-storage","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-gossip","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-object-sync","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/feed-store/testing","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/document-model","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/feed-store/testing","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/model-factory","kind":"import-statement","external":true},{"path":"@dxos/random-access-storage","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/document-model","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/model-factory","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/text-model","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["DatabaseTestBuilder","DatabaseTestPeer","MemoryNetworkManagerProvider","TestAgent","TestAgentBuilder","TestFeedBuilder","WebsocketNetworkManagerProvider","changeStorageVersionInMetadata","createMemoryDatabase","createRemoteDatabaseFromDataServiceHost","testLocalDatabase"],"entryPoint":"packages/core/echo/echo-pipeline/src/testing/index.ts","inputs":{"packages/core/echo/echo-pipeline/src/testing/change-metadata.ts":{"bytesInOutput":843},"packages/core/echo/echo-pipeline/src/testing/index.ts":{"bytesInOutput":0},"packages/core/echo/echo-pipeline/src/testing/test-agent-builder.ts":{"bytesInOutput":6548},"packages/core/echo/echo-pipeline/src/testing/test-feed-builder.ts":{"bytesInOutput":171},"packages/core/echo/echo-pipeline/src/testing/util.ts":{"bytesInOutput":2350},"packages/core/echo/echo-pipeline/src/testing/database-test-rig.ts":{"bytesInOutput":7638}},"bytes":18535},"packages/core/echo/echo-pipeline/dist/lib/node/chunk-UKREXVZX.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":184998},"packages/core/echo/echo-pipeline/dist/lib/node/chunk-UKREXVZX.cjs":{"imports":[{"path":"@dxos/hypercore","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/codec-protobuf","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/echo/service","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/echo/blob","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"crc-32","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/feed-store","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/teleport","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/credentials","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/credentials","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/halo/credentials","kind":"import-statement","external":true},{"path":"@dxos/timeframe","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/network-manager","kind":"import-statement","external":true},{"path":"@dxos/teleport","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-object-sync","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-replicator","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge-repo","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge-repo","kind":"import-statement","external":true},{"path":"@dxos/codec-protobuf","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge-repo","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/teleport-extension-automerge-replicator","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge-repo","kind":"import-statement","external":true},{"path":"@dxos/automerge/automerge-repo-storage-indexeddb","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@dxos/random-access-storage","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["AuthExtension","AuthStatus","AutomergeHost","AutomergeStorageAdapter","DataPipeline","DataServiceHost","DataServiceImpl","DataServiceSubscriptions","DatabaseHost","LocalHostNetworkAdapter","MOCK_AUTH_PROVIDER","MOCK_AUTH_VERIFIER","MeshNetworkAdapter","MetadataStore","Pipeline","SnapshotManager","SnapshotStore","Space","SpaceManager","SpaceProtocol","SpaceProtocolSession","TimeframeClock","codec","createMappedFeedWriter","mapFeedIndexesToTimeframe","mapTimeframeToFeedIndexes","startAfter","valueEncoding"],"inputs":{"packages/core/echo/echo-pipeline/src/common/codec.ts":{"bytesInOutput":211},"packages/core/echo/echo-pipeline/src/common/feeds.ts":{"bytesInOutput":548},"packages/core/echo/echo-pipeline/src/common/index.ts":{"bytesInOutput":0},"packages/core/echo/echo-pipeline/src/db-host/data-service-host.ts":{"bytesInOutput":6395},"packages/core/echo/echo-pipeline/src/db-host/database-host.ts":{"bytesInOutput":871},"packages/core/echo/echo-pipeline/src/db-host/snapshot-manager.ts":{"bytesInOutput":1298},"packages/core/echo/echo-pipeline/src/db-host/snapshot-store.ts":{"bytesInOutput":1292},"packages/core/echo/echo-pipeline/src/db-host/data-service.ts":{"bytesInOutput":2942},"packages/core/echo/echo-pipeline/src/db-host/index.ts":{"bytesInOutput":0},"packages/core/echo/echo-pipeline/src/metadata/metadata-store.ts":{"bytesInOutput":10633},"packages/core/echo/echo-pipeline/src/metadata/index.ts":{"bytesInOutput":0},"packages/core/echo/echo-pipeline/src/pipeline/timeframe-clock.ts":{"bytesInOutput":2919},"packages/core/echo/echo-pipeline/src/pipeline/pipeline.ts":{"bytesInOutput":12601},"packages/core/echo/echo-pipeline/src/pipeline/message-selector.ts":{"bytesInOutput":769},"packages/core/echo/echo-pipeline/src/pipeline/index.ts":{"bytesInOutput":0},"packages/core/echo/echo-pipeline/src/space/auth.ts":{"bytesInOutput":3001},"packages/core/echo/echo-pipeline/src/space/data-pipeline.ts":{"bytesInOutput":13887},"packages/core/echo/echo-pipeline/src/space/space.ts":{"bytesInOutput":7711},"packages/core/echo/echo-pipeline/src/space/control-pipeline.ts":{"bytesInOutput":8113},"packages/core/echo/echo-pipeline/src/space/space-protocol.ts":{"bytesInOutput":6885},"packages/core/echo/echo-pipeline/src/space/space-manager.ts":{"bytesInOutput":3434},"packages/core/echo/echo-pipeline/src/space/index.ts":{"bytesInOutput":0},"packages/core/echo/echo-pipeline/src/automerge/automerge-storage-adapter.ts":{"bytesInOutput":2459},"packages/core/echo/echo-pipeline/src/automerge/local-host-network-adapter.ts":{"bytesInOutput":2827},"packages/core/echo/echo-pipeline/src/automerge/mesh-network-adapter.ts":{"bytesInOutput":3211},"packages/core/echo/echo-pipeline/src/automerge/automerge-host.ts":{"bytesInOutput":8794},"packages/core/echo/echo-pipeline/src/automerge/automerge-storage–wrapper.ts":{"bytesInOutput":725},"packages/core/echo/echo-pipeline/src/automerge/index.ts":{"bytesInOutput":0}},"bytes":103785}}}
|
|
@@ -515,7 +515,7 @@ var DatabaseTestPeer = class {
|
|
|
515
515
|
}
|
|
516
516
|
(0, import_invariant.invariant)(item.modelMeta, void 0, {
|
|
517
517
|
F: __dxlog_file2,
|
|
518
|
-
L:
|
|
518
|
+
L: 267,
|
|
519
519
|
S: this,
|
|
520
520
|
A: [
|
|
521
521
|
"item.modelMeta",
|
|
@@ -525,7 +525,7 @@ var DatabaseTestPeer = class {
|
|
|
525
525
|
const ModelConstructor = this.modelFactory.getModel(item.modelMeta.type)?.constructor;
|
|
526
526
|
(0, import_invariant.invariant)(ModelConstructor, void 0, {
|
|
527
527
|
F: __dxlog_file2,
|
|
528
|
-
L:
|
|
528
|
+
L: 269,
|
|
529
529
|
S: this,
|
|
530
530
|
A: [
|
|
531
531
|
"ModelConstructor",
|
|
@@ -535,7 +535,7 @@ var DatabaseTestPeer = class {
|
|
|
535
535
|
const model = new ModelConstructor(item.modelMeta, item.id, () => item.state, async (mutation) => {
|
|
536
536
|
(0, import_invariant.invariant)(item.modelMeta, void 0, {
|
|
537
537
|
F: __dxlog_file2,
|
|
538
|
-
L:
|
|
538
|
+
L: 276,
|
|
539
539
|
S: this,
|
|
540
540
|
A: [
|
|
541
541
|
"item.modelMeta",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/testing/change-metadata.ts", "../../../../src/testing/test-agent-builder.ts", "../../../../src/testing/test-feed-builder.ts", "../../../../src/testing/util.ts", "../../../../src/testing/database-test-rig.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { log } from '@dxos/log';\nimport { schema } from '@dxos/protocols';\nimport type { Storage } from '@dxos/random-access-storage';\n\nimport { MetadataStore } from '../metadata';\n\nconst EchoMetadata = schema.getCodecForType('dxos.echo.metadata.EchoMetadata');\n\n/**\n * This function will change the storage version in the metadata.\n * This will break your storage and make it unusable.\n * Use this only for testing purposes.\n */\nexport const changeStorageVersionInMetadata = async (storage: Storage, version: number) => {\n log.info('Changing storage version in metadata. USE ONLY FOR TESTING.');\n const metadata = new MetadataStore(storage.createDirectory('metadata'));\n await metadata.load();\n const echoMetadata = metadata.metadata;\n echoMetadata.version = version;\n const file = metadata._directory.getOrCreateFile('EchoMetadata');\n await metadata._writeFile(file, EchoMetadata, echoMetadata);\n await metadata._directory.flush();\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { Context } from '@dxos/context';\nimport { CredentialGenerator } from '@dxos/credentials';\nimport { DocumentModel } from '@dxos/document-model';\nimport { type FeedStore } from '@dxos/feed-store';\nimport { type Keyring } from '@dxos/keyring';\nimport { PublicKey } from '@dxos/keys';\nimport { MemorySignalManager, MemorySignalManagerContext, WebsocketSignalManager } from '@dxos/messaging';\nimport { ModelFactory } from '@dxos/model-factory';\nimport { createSimplePeerTransportFactory, MemoryTransportFactory, NetworkManager } from '@dxos/network-manager';\nimport type { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';\nimport { type SpaceMetadata } from '@dxos/protocols/proto/dxos/echo/metadata';\nimport { AdmittedFeed } from '@dxos/protocols/proto/dxos/halo/credentials';\nimport { createStorage, type Storage, StorageType } from '@dxos/random-access-storage';\nimport { Gossip, Presence } from '@dxos/teleport-extension-gossip';\nimport { BlobStore } from '@dxos/teleport-extension-object-sync';\nimport { ComplexMap } from '@dxos/util';\n\nimport { TestFeedBuilder } from './test-feed-builder';\nimport { SnapshotStore } from '../db-host';\nimport { MetadataStore } from '../metadata';\nimport { MOCK_AUTH_PROVIDER, MOCK_AUTH_VERIFIER, type Space, SpaceManager, SpaceProtocol } from '../space';\n\nexport type NetworkManagerProvider = () => NetworkManager;\n\nexport const MemoryNetworkManagerProvider =\n (signalContext: MemorySignalManagerContext): NetworkManagerProvider =>\n () =>\n new NetworkManager({\n signalManager: new MemorySignalManager(signalContext),\n transportFactory: MemoryTransportFactory,\n });\n\nexport const WebsocketNetworkManagerProvider =\n (signalUrl: string): NetworkManagerProvider =>\n () =>\n new NetworkManager({\n signalManager: new WebsocketSignalManager([{ server: signalUrl }]),\n transportFactory: createSimplePeerTransportFactory(),\n });\n\nexport type TestAgentBuilderOptions = {\n storage?: Storage;\n networkManagerProvider?: NetworkManagerProvider;\n};\n\n/**\n * Factory for test agents.\n */\nexport class TestAgentBuilder {\n private readonly _agents = new ComplexMap<PublicKey, TestAgent>(PublicKey.hash);\n private readonly _storage: Storage;\n private readonly _networkManagerProvider: NetworkManagerProvider;\n\n constructor({ storage, networkManagerProvider }: TestAgentBuilderOptions = {}) {\n this._storage = storage ?? createStorage({ type: StorageType.RAM });\n this._networkManagerProvider =\n networkManagerProvider ?? MemoryNetworkManagerProvider(new MemorySignalManagerContext());\n }\n\n async close() {\n return Promise.all(this.agents.map((agent) => agent.close()));\n }\n\n get agents() {\n return Array.from(this._agents.values());\n }\n\n getAgent(deviceKey: PublicKey) {\n return this._agents.get(deviceKey);\n }\n\n async createPeer(): Promise<TestAgent> {\n // prettier-ignore\n const feedBuilder = new TestFeedBuilder()\n .setStorage(this._storage, `agent-${this._agents.size}`);\n\n const identityKey = await feedBuilder.keyring.createKey();\n const deviceKey = await feedBuilder.keyring.createKey();\n\n const agent = new TestAgent(this._networkManagerProvider, feedBuilder, identityKey, deviceKey);\n this._agents.set(deviceKey, agent);\n return agent;\n }\n}\n\n/**\n * Test agent that enables the creation and replication of multiple spaces.\n */\nexport class TestAgent {\n private readonly _spaces = new ComplexMap<PublicKey, Space>(PublicKey.hash);\n\n public readonly storage: Storage;\n public readonly keyring: Keyring;\n public readonly feedStore: FeedStore<FeedMessage>;\n\n private _metadataStore?: MetadataStore;\n get metadataStore() {\n return (this._metadataStore ??= new MetadataStore(this.storage.createDirectory('metadata')));\n }\n\n private _snapshotStore?: SnapshotStore;\n get snapshotStore() {\n return (this._snapshotStore ??= new SnapshotStore(this.storage.createDirectory('snapshots')));\n }\n\n private _blobStore?: BlobStore;\n get blobStore() {\n return (this._blobStore ??= new BlobStore(this.storage.createDirectory('blobs')));\n }\n\n public modelFactory = new ModelFactory().registerModel(DocumentModel);\n\n constructor(\n private readonly _networkManagerProvider: NetworkManagerProvider,\n private readonly _feedBuilder: TestFeedBuilder,\n public readonly identityKey: PublicKey,\n public readonly deviceKey: PublicKey,\n ) {\n this.storage = this._feedBuilder.storage;\n this.keyring = this._feedBuilder.keyring;\n this.feedStore = this._feedBuilder.createFeedStore();\n }\n\n async close() {\n return Promise.all([...this.spaces.map((space) => space.close())]);\n }\n\n get spaces() {\n return Array.from(this._spaces.values());\n }\n\n getSpace(spaceKey: PublicKey) {\n return this._spaces.get(spaceKey);\n }\n\n private _spaceManager?: SpaceManager;\n get spaceManager() {\n return (this._spaceManager ??= new SpaceManager({\n feedStore: this.feedStore,\n networkManager: this._networkManagerProvider(),\n modelFactory: this.modelFactory,\n metadataStore: this.metadataStore,\n snapshotStore: this.snapshotStore,\n blobStore: this.blobStore,\n }));\n }\n\n async createSpace(\n identityKey: PublicKey = this.identityKey,\n spaceKey?: PublicKey,\n genesisKey?: PublicKey,\n dataKey?: PublicKey,\n saveMetadata = false,\n ): Promise<Space> {\n if (!spaceKey) {\n saveMetadata = true;\n spaceKey = await this.keyring.createKey();\n }\n if (!genesisKey) {\n genesisKey = await this.keyring.createKey();\n }\n\n const controlFeed = await this.feedStore.openFeed(genesisKey, { writable: true });\n const dataFeed = await this.feedStore.openFeed(dataKey ?? (await this.keyring.createKey()), {\n writable: true,\n sparse: true,\n });\n\n const metadata: SpaceMetadata = {\n key: spaceKey,\n genesisFeedKey: genesisKey,\n controlFeedKey: controlFeed.key,\n dataFeedKey: dataFeed.key,\n };\n if (saveMetadata) {\n await this.metadataStore.addSpace(metadata);\n }\n\n await this.spaceManager.open();\n const space = await this.spaceManager.constructSpace({\n metadata,\n swarmIdentity: {\n peerKey: this.deviceKey,\n credentialProvider: MOCK_AUTH_PROVIDER,\n credentialAuthenticator: MOCK_AUTH_VERIFIER,\n },\n memberKey: identityKey,\n onAuthorizedConnection: (session) => {\n session.addExtension(\n 'dxos.mesh.teleport.gossip',\n this.createGossip().createExtension({ remotePeerId: session.remotePeerId }),\n );\n },\n });\n await space.setControlFeed(controlFeed);\n await space.setDataFeed(dataFeed);\n\n await space.open(new Context());\n\n this._spaces.set(spaceKey, space);\n return space;\n }\n\n createSpaceProtocol(topic: PublicKey, gossip?: Gossip) {\n return new SpaceProtocol({\n topic,\n swarmIdentity: {\n peerKey: this.deviceKey,\n credentialProvider: MOCK_AUTH_PROVIDER,\n credentialAuthenticator: MOCK_AUTH_VERIFIER,\n },\n networkManager: this._networkManagerProvider(),\n blobStore: this.blobStore,\n onSessionAuth: (session) => {\n session.addExtension(\n 'dxos.mesh.teleport.gossip',\n (gossip ?? this.createGossip()).createExtension({ remotePeerId: session.remotePeerId }),\n );\n },\n });\n }\n\n createGossip() {\n return new Gossip({\n localPeerId: this.deviceKey,\n });\n }\n\n createPresence(gossip?: Gossip) {\n return new Presence({\n announceInterval: 30,\n offlineTimeout: 200,\n identityKey: this.identityKey,\n gossip: gossip ?? this.createGossip(),\n });\n }\n\n async spaceGenesis(space: Space) {\n const generator = new CredentialGenerator(this.keyring, this.identityKey, this.deviceKey);\n const credentials = [\n ...(await generator.createSpaceGenesis(space.key, space.controlFeedKey!)),\n await generator.createFeedAdmission(space.key, space.dataFeedKey!, AdmittedFeed.Designation.DATA),\n await generator.createEpochCredential(space.key),\n ];\n\n for (const credential of credentials) {\n await space.controlPipeline.writer.write({\n credential: { credential },\n });\n }\n }\n}\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { TestBuilder } from '@dxos/feed-store/testing';\nimport type { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';\n\nimport { valueEncoding } from '../common';\n\n/**\n * Builder with default encoder and generator.\n */\nexport class TestFeedBuilder extends TestBuilder<FeedMessage> {\n constructor() {\n super({\n valueEncoding,\n });\n }\n}\n", "//\n// Copyright 2021 DXOS.org\n//\n\nimport { asyncTimeout } from '@dxos/async';\nimport { DocumentModel } from '@dxos/document-model';\nimport { DatabaseProxy, ItemManager } from '@dxos/echo-db';\nimport { MockFeedWriter } from '@dxos/feed-store/testing';\nimport { PublicKey } from '@dxos/keys';\nimport { ModelFactory } from '@dxos/model-factory';\nimport { type DataMessage } from '@dxos/protocols/proto/dxos/echo/feed';\nimport { StorageType, createStorage } from '@dxos/random-access-storage';\nimport { Timeframe } from '@dxos/timeframe';\n\nimport { AutomergeHost } from '../automerge';\nimport { DatabaseHost, type DataServiceHost, DataServiceImpl, DataServiceSubscriptions } from '../db-host';\nimport { type DataPipeline } from '../space';\n\nexport const createMemoryDatabase = async (modelFactory: ModelFactory) => {\n const feed = new MockFeedWriter<DataMessage>();\n const backend = new DatabaseHost(feed, async () => {\n // No-op.\n });\n\n feed.written.on(([data, meta]) =>\n backend.echoProcessor({\n batch: data.batch,\n meta: {\n ...meta,\n memberKey: PublicKey.random(),\n timeframe: new Timeframe([[meta.feedKey, meta.seq]]),\n },\n }),\n );\n\n const itemManager = new ItemManager(modelFactory);\n await backend.open(itemManager, new ModelFactory().registerModel(DocumentModel));\n return {\n backend,\n itemManager,\n };\n};\n\nexport const createRemoteDatabaseFromDataServiceHost = async (\n modelFactory: ModelFactory,\n dataServiceHost: DataServiceHost,\n) => {\n const dataServiceSubscriptions = new DataServiceSubscriptions();\n const automergeHost = new AutomergeHost({\n directory: createStorage({ type: StorageType.RAM }).createDirectory(),\n });\n const dataService = new DataServiceImpl(dataServiceSubscriptions, automergeHost);\n\n const spaceKey = PublicKey.random();\n await dataServiceSubscriptions.registerSpace(spaceKey, dataServiceHost);\n\n const itemManager = new ItemManager(modelFactory);\n const backend = new DatabaseProxy({ service: dataService, itemManager, spaceKey });\n await backend.open(new ModelFactory().registerModel(DocumentModel));\n return {\n itemManager,\n backend,\n };\n};\n\nexport const testLocalDatabase = async (create: DataPipeline, check: DataPipeline = create) => {\n const objectId = PublicKey.random().toHex();\n await create.databaseHost!.getWriteStream()?.write({\n batch: {\n objects: [\n {\n objectId,\n genesis: {\n modelType: DocumentModel.meta.type,\n },\n },\n ],\n },\n });\n\n await asyncTimeout(\n check.databaseHost!._itemDemuxer.mutation.waitForCondition(() => check.itemManager.entities.has(objectId)),\n 2000,\n );\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { Event, Trigger } from '@dxos/async';\nimport { DocumentModel } from '@dxos/document-model';\nimport { DatabaseProxy, ItemManager, createModelMutation, encodeModelMutation } from '@dxos/echo-db';\nimport { type WriteOptions, type WriteReceipt } from '@dxos/feed-store';\nimport { invariant } from '@dxos/invariant';\nimport { PublicKey } from '@dxos/keys';\nimport { ModelFactory } from '@dxos/model-factory';\nimport { type FeedMessageBlock, schema } from '@dxos/protocols';\nimport { type FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';\nimport { type EchoSnapshot, type SpaceSnapshot } from '@dxos/protocols/proto/dxos/echo/snapshot';\nimport { type Epoch } from '@dxos/protocols/proto/dxos/halo/credentials';\nimport { TextModel } from '@dxos/text-model';\nimport { Timeframe } from '@dxos/timeframe';\nimport { ComplexMap, isNotNullOrUndefined } from '@dxos/util';\n\nimport { DatabaseHost } from '../db-host';\n\nconst SPACE_KEY = PublicKey.random();\n\nexport class DatabaseTestBuilder {\n public readonly peers = new ComplexMap<PublicKey, DatabaseTestPeer>(PublicKey.hash);\n\n async createPeer(spaceKey = SPACE_KEY): Promise<DatabaseTestPeer> {\n const peer = new DatabaseTestPeer(this, spaceKey);\n this.peers.set(peer.key, peer);\n await peer.open();\n return peer;\n }\n}\n\ntype WriteRequest = {\n receipt: WriteReceipt;\n options: WriteOptions;\n trigger: Trigger;\n};\n\nexport class DatabaseTestPeer {\n public readonly modelFactory = new ModelFactory().registerModel(DocumentModel).registerModel(TextModel);\n\n public items!: ItemManager;\n public proxy!: DatabaseProxy;\n\n public host!: DatabaseHost;\n public hostItems!: ItemManager;\n\n //\n // Test state.\n //\n\n public readonly key = PublicKey.random();\n\n public feedMessages: FeedMessage[] = [];\n\n public readonly snapshots = new Map<string, SpaceSnapshot>();\n private currentEpoch?: Epoch;\n\n /**\n * Sequence number of the last mutation confirmed to be written to the feed store.\n */\n public confirmed = -1;\n\n /**\n * Current position of the peer's pipeline.\n */\n public timeframe = new Timeframe();\n\n public snapshot: SpaceSnapshot | undefined;\n\n private readonly _onConfirm = new Event();\n\n private readonly _writes = new Set<WriteRequest>();\n\n constructor(\n public readonly rig: DatabaseTestBuilder,\n public readonly spaceKey: PublicKey,\n ) {}\n\n async open() {\n this.hostItems = new ItemManager(this.modelFactory);\n this.host = new DatabaseHost(\n {\n write: async (message, { afterWrite }: WriteOptions) => {\n const seq =\n this.feedMessages.push({\n timeframe: this.timeframe,\n payload: {\n data: message,\n },\n }) - 1;\n\n const request: WriteRequest = {\n receipt: {\n seq,\n feedKey: this.key,\n },\n options: { afterWrite },\n trigger: new Trigger(),\n };\n this._writes.add(request);\n await request.trigger.wait();\n return request.receipt;\n },\n },\n async () => {\n // No-op.\n },\n );\n\n await this.host.open(this.hostItems, this.modelFactory);\n if (this.snapshot) {\n this.host._itemDemuxer.restoreFromSnapshot(this.snapshot.database);\n }\n\n this.items = new ItemManager(this.modelFactory);\n this.proxy = new DatabaseProxy({\n service: this.host.createDataServiceHost({ deferEvents: false }),\n itemManager: this.items,\n spaceKey: this.spaceKey,\n });\n await this.proxy.open(this.modelFactory);\n }\n\n /**\n * Confirm mutations written to the local feed.\n * @param seq Sequence number of the mutation to confirm. If not specified, all mutations will be confirmed.\n */\n async confirm(seq?: number) {\n this.confirmed = seq ?? this.feedMessages.length - 1;\n this._onConfirm.emit();\n\n for (const request of [...this._writes]) {\n if (this.confirmed >= request.receipt.seq) {\n this._writes.delete(request);\n await request.options.afterWrite?.(request.receipt);\n request.trigger.wake();\n }\n }\n\n this._processMessages(Timeframe.merge(this.timeframe, new Timeframe([[this.key, this.confirmed]])));\n }\n\n /**\n * Replicate the database to the specified timeframe.\n * @param to Timeframe to replicate to. If not specified, the database will be replicated to the latest timeframe (based on all other peers).\n */\n replicate(to?: Timeframe) {\n const toTimeframe = Timeframe.merge(\n to ?? new Timeframe(Array.from(this.rig.peers.values()).map((peer) => [peer.key, peer.confirmed])),\n this.timeframe,\n );\n toTimeframe.set(this.key, this.confirmed);\n\n this._processMessages(toTimeframe);\n }\n\n /**\n * Reload data from the feed. Wipes unconfirmed mutations.\n */\n async reload() {\n await this.open();\n const timeframe = this.timeframe;\n this.timeframe = this.snapshot?.timeframe ?? new Timeframe();\n this._processMessages(timeframe);\n }\n\n /**\n * Create snapshot and use it for the next reload.\n */\n makeSnapshot(): SpaceSnapshot {\n this.snapshot = {\n spaceKey: SPACE_KEY.asUint8Array(),\n database: this.host.createSnapshot(),\n timeframe: this.timeframe,\n };\n return this.snapshot;\n }\n\n createEpoch(mockSnapshot?: EchoSnapshot) {\n const snapshot = this.makeSnapshot();\n // Substitute snapshot with the mock one for test purposes (e.g. to test with empty snapshot).\n mockSnapshot && (snapshot.database = mockSnapshot);\n const snapshotCid = PublicKey.from(\n schema.getCodecForType('dxos.echo.snapshot.SpaceSnapshot').encode(snapshot),\n ).toHex();\n this.snapshots.set(snapshotCid, snapshot);\n\n const epoch: Epoch = {\n previousId: PublicKey.random(),\n timeframe: this.timeframe,\n number: this.currentEpoch ? this.currentEpoch.number + 1 : 0,\n snapshotCid,\n };\n\n this.currentEpoch = epoch;\n\n this.host._itemDemuxer.restoreFromSnapshot(snapshot.database);\n }\n\n /**\n * Gets all candidate messages according to the current timeframe.\n * Does not take into account the current snapshot, timeframe dependencies, or the confirmed, or replicated state.\n */\n private _getHeads(): FeedMessageBlock[] {\n return Array.from(this.rig.peers.values())\n .map((peer): FeedMessageBlock => {\n const seq = this.timeframe.get(peer.key) ?? -1;\n const message = peer.feedMessages[seq + 1];\n return (\n message && {\n feedKey: peer.key,\n seq: seq + 1,\n data: message,\n }\n );\n })\n .filter(isNotNullOrUndefined);\n }\n\n private _processMessages(to: Timeframe) {\n let run = true;\n while (run) {\n run = false;\n\n const heads = this._getHeads();\n for (const candidate of heads) {\n const toSeq = to.get(candidate.feedKey) ?? -1;\n if (toSeq < candidate.seq) {\n continue;\n }\n\n const snapshotSeq = this.snapshot?.timeframe?.get(candidate.feedKey) ?? -1;\n if (candidate.seq <= snapshotSeq) {\n continue;\n }\n\n if (!Timeframe.dependencies(candidate.data.timeframe, this.timeframe).isEmpty()) {\n continue;\n }\n\n run = true;\n this.host.echoProcessor({\n batch: candidate.data.payload.data!.batch,\n meta: {\n feedKey: candidate.feedKey,\n seq: candidate.seq,\n memberKey: candidate.feedKey,\n timeframe: candidate.data.timeframe,\n },\n });\n this.timeframe = Timeframe.merge(this.timeframe, new Timeframe([[candidate.feedKey, candidate.seq]]));\n }\n }\n }\n\n getModel(id: string): DocumentModel | TextModel | undefined {\n const item = this.items.getItem(id);\n if (!item) {\n return;\n }\n\n invariant(item.modelMeta);\n const ModelConstructor = this.modelFactory.getModel(item.modelMeta.type)?.constructor;\n invariant(ModelConstructor);\n\n const model = new ModelConstructor(\n item.modelMeta,\n item.id,\n () => item.state,\n async (mutation) => {\n invariant(item.modelMeta);\n this.proxy.mutate(createModelMutation(id, encodeModelMutation(item.modelMeta, mutation)));\n return {\n feedKey: PublicKey.from('00'),\n seq: 0,\n waitToBeProcessed: () => Promise.resolve(),\n };\n },\n );\n model.initialize();\n\n return model;\n }\n}\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,iBAAoB;AACpB,uBAAuB;ACDvB,qBAAwB;AACxB,yBAAoC;AACpC,4BAA8B;AAG9B,kBAA0B;AAC1B,uBAAwF;AACxF,2BAA6B;AAC7B,6BAAyF;AAGzF,IAAAA,sBAA6B;AAC7B,mCAAyD;AACzD,uCAAiC;AACjC,4CAA0B;AAC1B,kBAA2B;ACf3B,qBAA4B;ACA5B,mBAA6B;AAC7B,IAAAC,yBAA8B;AAC9B,qBAA2C;AAC3C,IAAAC,kBAA+B;AAC/B,IAAAC,eAA0B;AAC1B,IAAAC,wBAA6B;AAE7B,IAAAC,gCAA2C;AAC3C,uBAA0B;ACR1B,IAAAC,gBAA+B;AAC/B,IAAAL,yBAA8B;AAC9B,IAAAM,kBAAqF;AAErF,uBAA0B;AAC1B,IAAAJ,eAA0B;AAC1B,IAAAC,wBAA6B;AAC7B,IAAAI,oBAA8C;AAI9C,wBAA0B;AAC1B,IAAAC,oBAA0B;AAC1B,IAAAC,eAAiD;;AJPjD,IAAMC,eAAeC,wBAAOC,gBAAgB,iCAAA;AAOrC,IAAMC,iCAAiC,OAAOC,SAAkBC,YAAAA;AACrEC,iBAAIC,KAAK,+DAAA,QAAA;;;;;;AACT,QAAMC,WAAW,IAAIC,oCAAcL,QAAQM,gBAAgB,UAAA,CAAA;AAC3D,QAAMF,SAASG,KAAI;AACnB,QAAMC,eAAeJ,SAASA;AAC9BI,eAAaP,UAAUA;AACvB,QAAMQ,OAAOL,SAASM,WAAWC,gBAAgB,cAAA;AACjD,QAAMP,SAASQ,WAAWH,MAAMb,cAAcY,YAAAA;AAC9C,QAAMJ,SAASM,WAAWG,MAAK;AACjC;AEdO,IAAMC,kBAAN,cAA8BC,2BAAAA;EACnCC,cAAc;AACZ,UAAM;MACJC;IACF,CAAA;EACF;AACF;ADUO,IAAMC,+BACX,CAACC,kBACD,MACE,IAAIC,sCAAe;EACjBC,eAAe,IAAIC,qCAAoBH,aAAAA;EACvCI,kBAAkBC;AACpB,CAAA;AAEG,IAAMC,kCACX,CAACC,cACD,MACE,IAAIN,sCAAe;EACjBC,eAAe,IAAIM,wCAAuB;IAAC;MAAEC,QAAQF;IAAU;GAAE;EACjEH,sBAAkBM,yDAAAA;AACpB,CAAA;AAUG,IAAMC,mBAAN,MAAMA;EAKXd,YAAY,EAAEhB,SAAS+B,uBAAsB,IAA8B,CAAC,GAAG;AAJ9DC,SAAAA,UAAU,IAAIC,uBAAiCC,sBAAUC,IAAI;AAK5E,SAAKC,WAAWpC,eAAWqC,4CAAc;MAAEC,MAAMC,yCAAYC;IAAI,CAAA;AACjE,SAAKC,0BACHV,0BAA0Bb,6BAA6B,IAAIwB,4CAAAA,CAAAA;EAC/D;EAEA,MAAMC,QAAQ;AACZ,WAAOC,QAAQC,IAAI,KAAKC,OAAOC,IAAI,CAACC,UAAUA,MAAML,MAAK,CAAA,CAAA;EAC3D;EAEA,IAAIG,SAAS;AACX,WAAOG,MAAMC,KAAK,KAAKlB,QAAQmB,OAAM,CAAA;EACvC;EAEAC,SAASC,WAAsB;AAC7B,WAAO,KAAKrB,QAAQsB,IAAID,SAAAA;EAC1B;EAEA,MAAME,aAAiC;AAErC,UAAMC,cAAc,IAAI1C,gBAAAA,EACrB2C,WAAW,KAAKrB,UAAU,SAAS,KAAKJ,QAAQ0B,IAAI,EAAE;AAEzD,UAAMC,cAAc,MAAMH,YAAYI,QAAQC,UAAS;AACvD,UAAMR,YAAY,MAAMG,YAAYI,QAAQC,UAAS;AAErD,UAAMb,QAAQ,IAAIc,UAAU,KAAKrB,yBAAyBe,aAAaG,aAAaN,SAAAA;AACpF,SAAKrB,QAAQ+B,IAAIV,WAAWL,KAAAA;AAC5B,WAAOA;EACT;AACF;AAKO,IAAMc,YAAN,MAAMA;EAQX,IAAIE,gBAAgB;AAClB,WAAQ,KAAKC,mBAAmB,IAAI5D,oCAAc,KAAKL,QAAQM,gBAAgB,UAAA,CAAA;EACjF;EAGA,IAAI4D,gBAAgB;AAClB,WAAQ,KAAKC,mBAAmB,IAAIC,oCAAc,KAAKpE,QAAQM,gBAAgB,WAAA,CAAA;EACjF;EAGA,IAAI+D,YAAY;AACd,WAAQ,KAAKC,eAAe,IAAIC,gDAAU,KAAKvE,QAAQM,gBAAgB,OAAA,CAAA;EACzE;EAIAU,YACmByB,yBACA+B,cACDb,aACAN,WAChB;SAJiBZ,0BAAAA;SACA+B,eAAAA;SACDb,cAAAA;SACAN,YAAAA;SA3BDoB,UAAU,IAAIxC,uBAA6BC,sBAAUC,IAAI;SAqBnEuC,eAAe,IAAIC,kCAAAA,EAAeC,cAAcC,mCAAAA;AAQrD,SAAK7E,UAAU,KAAKwE,aAAaxE;AACjC,SAAK4D,UAAU,KAAKY,aAAaZ;AACjC,SAAKkB,YAAY,KAAKN,aAAaO,gBAAe;EACpD;EAEA,MAAMpC,QAAQ;AACZ,WAAOC,QAAQC,IAAI;SAAI,KAAKmC,OAAOjC,IAAI,CAACkC,UAAUA,MAAMtC,MAAK,CAAA;KAAI;EACnE;EAEA,IAAIqC,SAAS;AACX,WAAO/B,MAAMC,KAAK,KAAKuB,QAAQtB,OAAM,CAAA;EACvC;EAEA+B,SAASC,UAAqB;AAC5B,WAAO,KAAKV,QAAQnB,IAAI6B,QAAAA;EAC1B;EAGA,IAAIC,eAAe;AACjB,WAAQ,KAAKC,kBAAkB,IAAIC,mCAAa;MAC9CR,WAAW,KAAKA;MAChBS,gBAAgB,KAAK9C,wBAAuB;MAC5CiC,cAAc,KAAKA;MACnBV,eAAe,KAAKA;MACpBE,eAAe,KAAKA;MACpBG,WAAW,KAAKA;IAClB,CAAA;EACF;EAEA,MAAMmB,YACJ7B,cAAyB,KAAKA,aAC9BwB,UACAM,YACAC,SACAC,eAAe,OACC;AAChB,QAAI,CAACR,UAAU;AACbQ,qBAAe;AACfR,iBAAW,MAAM,KAAKvB,QAAQC,UAAS;IACzC;AACA,QAAI,CAAC4B,YAAY;AACfA,mBAAa,MAAM,KAAK7B,QAAQC,UAAS;IAC3C;AAEA,UAAM+B,cAAc,MAAM,KAAKd,UAAUe,SAASJ,YAAY;MAAEK,UAAU;IAAK,CAAA;AAC/E,UAAMC,WAAW,MAAM,KAAKjB,UAAUe,SAASH,WAAY,MAAM,KAAK9B,QAAQC,UAAS,GAAK;MAC1FiC,UAAU;MACVE,QAAQ;IACV,CAAA;AAEA,UAAM5F,WAA0B;MAC9B6F,KAAKd;MACLe,gBAAgBT;MAChBU,gBAAgBP,YAAYK;MAC5BG,aAAaL,SAASE;IACxB;AACA,QAAIN,cAAc;AAChB,YAAM,KAAK3B,cAAcqC,SAASjG,QAAAA;IACpC;AAEA,UAAM,KAAKgF,aAAakB,KAAI;AAC5B,UAAMrB,QAAQ,MAAM,KAAKG,aAAamB,eAAe;MACnDnG;MACAoG,eAAe;QACbC,SAAS,KAAKpD;QACdqD,oBAAoBC;QACpBC,yBAAyBC;MAC3B;MACAC,WAAWnD;MACXoD,wBAAwB,CAACC,YAAAA;AACvBA,gBAAQC,aACN,6BACA,KAAKC,aAAY,EAAGC,gBAAgB;UAAEC,cAAcJ,QAAQI;QAAa,CAAA,CAAA;MAE7E;IACF,CAAA;AACA,UAAMnC,MAAMoC,eAAezB,WAAAA;AAC3B,UAAMX,MAAMqC,YAAYvB,QAAAA;AAExB,UAAMd,MAAMqB,KAAK,IAAIiB,uBAAAA,CAAAA;AAErB,SAAK9C,QAAQV,IAAIoB,UAAUF,KAAAA;AAC3B,WAAOA;EACT;EAEAuC,oBAAoBC,OAAkBC,QAAiB;AACrD,WAAO,IAAIC,oCAAc;MACvBF;MACAjB,eAAe;QACbC,SAAS,KAAKpD;QACdqD,oBAAoBC;QACpBC,yBAAyBC;MAC3B;MACAtB,gBAAgB,KAAK9C,wBAAuB;MAC5C4B,WAAW,KAAKA;MAChBuD,eAAe,CAACZ,YAAAA;AACdA,gBAAQC,aACN,8BACCS,UAAU,KAAKR,aAAY,GAAIC,gBAAgB;UAAEC,cAAcJ,QAAQI;QAAa,CAAA,CAAA;MAEzF;IACF,CAAA;EACF;EAEAF,eAAe;AACb,WAAO,IAAIW,wCAAO;MAChBC,aAAa,KAAKzE;IACpB,CAAA;EACF;EAEA0E,eAAeL,QAAiB;AAC9B,WAAO,IAAIM,0CAAS;MAClBC,kBAAkB;MAClBC,gBAAgB;MAChBvE,aAAa,KAAKA;MAClB+D,QAAQA,UAAU,KAAKR,aAAY;IACrC,CAAA;EACF;EAEA,MAAMiB,aAAalD,OAAc;AAC/B,UAAMmD,YAAY,IAAIC,uCAAoB,KAAKzE,SAAS,KAAKD,aAAa,KAAKN,SAAS;AACxF,UAAMiF,cAAc;SACd,MAAMF,UAAUG,mBAAmBtD,MAAMgB,KAAKhB,MAAMkB,cAAc;MACtE,MAAMiC,UAAUI,oBAAoBvD,MAAMgB,KAAKhB,MAAMmB,aAAcqC,iCAAaC,YAAYC,IAAI;MAChG,MAAMP,UAAUQ,sBAAsB3D,MAAMgB,GAAG;;AAGjD,eAAW4C,cAAcP,aAAa;AACpC,YAAMrD,MAAM6D,gBAAgBC,OAAOC,MAAM;QACvCH,YAAY;UAAEA;QAAW;MAC3B,CAAA;IACF;EACF;AACF;AE7OO,IAAMI,uBAAuB,OAAOvE,iBAAAA;AACzC,QAAMwE,OAAO,IAAIC,+BAAAA;AACjB,QAAMC,UAAU,IAAIC,mCAAaH,MAAM,YAAA;EAEvC,CAAA;AAEAA,OAAKI,QAAQC,GAAG,CAAC,CAACC,MAAMC,IAAAA,MACtBL,QAAQM,cAAc;IACpBC,OAAOH,KAAKG;IACZF,MAAM;MACJ,GAAGA;MACH3C,WAAW5E,aAAAA,UAAU0H,OAAM;MAC3BC,WAAW,IAAIC,2BAAU;QAAC;UAACL,KAAKM;UAASN,KAAKO;;OAAK;IACrD;EACF,CAAA,CAAA;AAGF,QAAMC,cAAc,IAAIC,2BAAYxF,YAAAA;AACpC,QAAM0E,QAAQ9C,KAAK2D,aAAa,IAAItF,sBAAAA,aAAAA,EAAeC,cAAcC,uBAAAA,aAAAA,CAAAA;AACjE,SAAO;IACLuE;IACAa;EACF;AACF;AAEO,IAAME,0CAA0C,OACrDzF,cACA0F,oBAAAA;AAEA,QAAMC,2BAA2B,IAAIC,+CAAAA;AACrC,QAAMC,gBAAgB,IAAIC,oCAAc;IACtCC,eAAWpI,8BAAAA,eAAc;MAAEC,MAAMC,8BAAAA,YAAYC;IAAI,CAAA,EAAGlC,gBAAe;EACrE,CAAA;AACA,QAAMoK,cAAc,IAAIC,sCAAgBN,0BAA0BE,aAAAA;AAElE,QAAMpF,WAAWjD,aAAAA,UAAU0H,OAAM;AACjC,QAAMS,yBAAyBO,cAAczF,UAAUiF,eAAAA;AAEvD,QAAMH,cAAc,IAAIC,2BAAYxF,YAAAA;AACpC,QAAM0E,UAAU,IAAIyB,6BAAc;IAAEC,SAASJ;IAAaT;IAAa9E;EAAS,CAAA;AAChF,QAAMiE,QAAQ9C,KAAK,IAAI3B,sBAAAA,aAAAA,EAAeC,cAAcC,uBAAAA,aAAAA,CAAAA;AACpD,SAAO;IACLoF;IACAb;EACF;AACF;AAEO,IAAM2B,oBAAoB,OAAOC,QAAsBC,QAAsBD,WAAM;AACxF,QAAME,WAAWhJ,aAAAA,UAAU0H,OAAM,EAAGuB,MAAK;AACzC,QAAMH,OAAOI,aAAcC,eAAc,GAAIrC,MAAM;IACjDW,OAAO;MACL2B,SAAS;QACP;UACEJ;UACAK,SAAS;YACPC,WAAW3G,uBAAAA,cAAc4E,KAAKnH;UAChC;QACF;;IAEJ;EACF,CAAA;AAEA,YAAMmJ,2BACJR,MAAMG,aAAcM,aAAaC,SAASC,iBAAiB,MAAMX,MAAMhB,YAAY4B,SAASC,IAAIZ,QAAAA,CAAAA,GAChG,GAAA;AAEJ;;AC/DA,IAAMa,YAAY7J,aAAAA,UAAU0H,OAAM;AAE3B,IAAMoC,sBAAN,MAAMA;EAAN,cAAA;AACWC,SAAAA,QAAQ,IAAIhK,aAAAA,WAAwCC,aAAAA,UAAUC,IAAI;;EAElF,MAAMoB,WAAW4B,WAAW4G,WAAsC;AAChE,UAAMG,OAAO,IAAIC,iBAAiB,MAAMhH,QAAAA;AACxC,SAAK8G,MAAMlI,IAAImI,KAAKjG,KAAKiG,IAAAA;AACzB,UAAMA,KAAK5F,KAAI;AACf,WAAO4F;EACT;AACF;AAQO,IAAMC,mBAAN,MAAMA;EAoCXnL,YACkBoL,KACAjH,UAChB;SAFgBiH,MAAAA;SACAjH,WAAAA;SArCFT,eAAe,IAAIC,sBAAAA,aAAAA,EAAeC,cAAcC,uBAAAA,aAAAA,EAAeD,cAAcyH,2BAAAA;SAY7EpG,MAAM/D,aAAAA,UAAU0H,OAAM;SAE/B0C,eAA8B,CAAA;SAErBC,YAAY,oBAAIC,IAAAA;SAMzBC,YAAY;SAKZ5C,YAAY,IAAIC,kBAAAA,UAAAA;SAIN4C,aAAa,IAAIC,oBAAAA;SAEjBC,UAAU,oBAAIC,IAAAA;EAK5B;EAEH,MAAMvG,OAAO;AACX,SAAKwG,YAAY,IAAI5C,gBAAAA,YAAY,KAAKxF,YAAY;AAClD,SAAKqI,OAAO,IAAI1D,mCACd;MACEL,OAAO,OAAOgE,SAAS,EAAEC,WAAU,MAAgB;AACjD,cAAMjD,MACJ,KAAKsC,aAAaY,KAAK;UACrBrD,WAAW,KAAKA;UAChBsD,SAAS;YACP3D,MAAMwD;UACR;QACF,CAAA,IAAK;AAEP,cAAMI,UAAwB;UAC5BC,SAAS;YACPrD;YACAD,SAAS,KAAK9D;UAChB;UACAqH,SAAS;YAAEL;UAAW;UACtBM,SAAS,IAAIC,sBAAAA;QACf;AACA,aAAKZ,QAAQa,IAAIL,OAAAA;AACjB,cAAMA,QAAQG,QAAQG,KAAI;AAC1B,eAAON,QAAQC;MACjB;IACF,GACA,YAAA;IAEA,CAAA;AAGF,UAAM,KAAKN,KAAKzG,KAAK,KAAKwG,WAAW,KAAKpI,YAAY;AACtD,QAAI,KAAKiJ,UAAU;AACjB,WAAKZ,KAAKrB,aAAakC,oBAAoB,KAAKD,SAASE,QAAQ;IACnE;AAEA,SAAKC,QAAQ,IAAI5D,gBAAAA,YAAY,KAAKxF,YAAY;AAC9C,SAAKqJ,QAAQ,IAAIlD,gBAAAA,cAAc;MAC7BC,SAAS,KAAKiC,KAAKiB,sBAAsB;QAAEC,aAAa;MAAM,CAAA;MAC9DhE,aAAa,KAAK6D;MAClB3I,UAAU,KAAKA;IACjB,CAAA;AACA,UAAM,KAAK4I,MAAMzH,KAAK,KAAK5B,YAAY;EACzC;;;;;EAMA,MAAMwJ,QAAQlE,KAAc;AAC1B,SAAKyC,YAAYzC,OAAO,KAAKsC,aAAa6B,SAAS;AACnD,SAAKzB,WAAW0B,KAAI;AAEpB,eAAWhB,WAAW;SAAI,KAAKR;OAAU;AACvC,UAAI,KAAKH,aAAaW,QAAQC,QAAQrD,KAAK;AACzC,aAAK4C,QAAQyB,OAAOjB,OAAAA;AACpB,cAAMA,QAAQE,QAAQL,aAAaG,QAAQC,OAAO;AAClDD,gBAAQG,QAAQe,KAAI;MACtB;IACF;AAEA,SAAKC,iBAAiBzE,kBAAAA,UAAU0E,MAAM,KAAK3E,WAAW,IAAIC,kBAAAA,UAAU;MAAC;QAAC,KAAK7D;QAAK,KAAKwG;;KAAW,CAAA,CAAA;EAClG;;;;;EAMAgC,UAAUC,IAAgB;AACxB,UAAMC,cAAc7E,kBAAAA,UAAU0E,MAC5BE,MAAM,IAAI5E,kBAAAA,UAAU7G,MAAMC,KAAK,KAAKkJ,IAAIH,MAAM9I,OAAM,CAAA,EAAIJ,IAAI,CAACmJ,SAAS;MAACA,KAAKjG;MAAKiG,KAAKO;KAAU,CAAA,GAChG,KAAK5C,SAAS;AAEhB8E,gBAAY5K,IAAI,KAAKkC,KAAK,KAAKwG,SAAS;AAExC,SAAK8B,iBAAiBI,WAAAA;EACxB;;;;EAKA,MAAMC,SAAS;AACb,UAAM,KAAKtI,KAAI;AACf,UAAMuD,YAAY,KAAKA;AACvB,SAAKA,YAAY,KAAK8D,UAAU9D,aAAa,IAAIC,kBAAAA,UAAAA;AACjD,SAAKyE,iBAAiB1E,SAAAA;EACxB;;;;EAKAgF,eAA8B;AAC5B,SAAKlB,WAAW;MACdxI,UAAU4G,UAAU+C,aAAY;MAChCjB,UAAU,KAAKd,KAAKgC,eAAc;MAClClF,WAAW,KAAKA;IAClB;AACA,WAAO,KAAK8D;EACd;EAEAqB,YAAYC,cAA6B;AACvC,UAAMtB,WAAW,KAAKkB,aAAY;AAElCI,qBAAiBtB,SAASE,WAAWoB;AACrC,UAAMC,cAAchN,aAAAA,UAAUgB,KAC5BrD,kBAAAA,OAAOC,gBAAgB,kCAAA,EAAoCqP,OAAOxB,QAAAA,CAAAA,EAClExC,MAAK;AACP,SAAKoB,UAAUxI,IAAImL,aAAavB,QAAAA;AAEhC,UAAMyB,QAAe;MACnBC,YAAYnN,aAAAA,UAAU0H,OAAM;MAC5BC,WAAW,KAAKA;MAChByF,QAAQ,KAAKC,eAAe,KAAKA,aAAaD,SAAS,IAAI;MAC3DJ;IACF;AAEA,SAAKK,eAAeH;AAEpB,SAAKrC,KAAKrB,aAAakC,oBAAoBD,SAASE,QAAQ;EAC9D;;;;;EAMQ2B,YAAgC;AACtC,WAAOvM,MAAMC,KAAK,KAAKkJ,IAAIH,MAAM9I,OAAM,CAAA,EACpCJ,IAAI,CAACmJ,SAAAA;AACJ,YAAMlC,MAAM,KAAKH,UAAUvG,IAAI4I,KAAKjG,GAAG,KAAK;AAC5C,YAAM+G,UAAUd,KAAKI,aAAatC,MAAM,CAAA;AACxC,aACEgD,WAAW;QACTjD,SAASmC,KAAKjG;QACd+D,KAAKA,MAAM;QACXR,MAAMwD;MACR;IAEJ,CAAA,EACCyC,OAAOC,iCAAAA;EACZ;EAEQnB,iBAAiBG,IAAe;AACtC,QAAIiB,MAAM;AACV,WAAOA,KAAK;AACVA,YAAM;AAEN,YAAMC,QAAQ,KAAKJ,UAAS;AAC5B,iBAAWK,aAAaD,OAAO;AAC7B,cAAME,QAAQpB,GAAGpL,IAAIuM,UAAU9F,OAAO,KAAK;AAC3C,YAAI+F,QAAQD,UAAU7F,KAAK;AACzB;QACF;AAEA,cAAM+F,cAAc,KAAKpC,UAAU9D,WAAWvG,IAAIuM,UAAU9F,OAAO,KAAK;AACxE,YAAI8F,UAAU7F,OAAO+F,aAAa;AAChC;QACF;AAEA,YAAI,CAACjG,kBAAAA,UAAUkG,aAAaH,UAAUrG,KAAKK,WAAW,KAAKA,SAAS,EAAEoG,QAAO,GAAI;AAC/E;QACF;AAEAN,cAAM;AACN,aAAK5C,KAAKrD,cAAc;UACtBC,OAAOkG,UAAUrG,KAAK2D,QAAQ3D,KAAMG;UACpCF,MAAM;YACJM,SAAS8F,UAAU9F;YACnBC,KAAK6F,UAAU7F;YACflD,WAAW+I,UAAU9F;YACrBF,WAAWgG,UAAUrG,KAAKK;UAC5B;QACF,CAAA;AACA,aAAKA,YAAYC,kBAAAA,UAAU0E,MAAM,KAAK3E,WAAW,IAAIC,kBAAAA,UAAU;UAAC;YAAC+F,UAAU9F;YAAS8F,UAAU7F;;SAAK,CAAA;MACrG;IACF;EACF;EAEAkG,SAASC,IAAmD;AAC1D,UAAMC,OAAO,KAAKtC,MAAMuC,QAAQF,EAAAA;AAChC,QAAI,CAACC,MAAM;AACT;IACF;AAEAE,oCAAUF,KAAKG,WAAS,QAAA;;;;;;;;;AACxB,UAAMC,mBAAmB,KAAK9L,aAAawL,SAASE,KAAKG,UAAUjO,IAAI,GAAGtB;AAC1EsP,oCAAUE,kBAAAA,QAAAA;;;;;;;;;AAEV,UAAMC,QAAQ,IAAID,iBAChBJ,KAAKG,WACLH,KAAKD,IACL,MAAMC,KAAKM,OACX,OAAO/E,aAAAA;AACL2E,sCAAUF,KAAKG,WAAS,QAAA;;;;;;;;;AACxB,WAAKxC,MAAM4C,WAAOC,qCAAoBT,QAAIU,qCAAoBT,KAAKG,WAAW5E,QAAAA,CAAAA,CAAAA;AAC9E,aAAO;QACL5B,SAAS7H,aAAAA,UAAUgB,KAAK,IAAA;QACxB8G,KAAK;QACL8G,mBAAmB,MAAMlO,QAAQmO,QAAO;MAC1C;IACF,CAAA;AAEFN,UAAMO,WAAU;AAEhB,WAAOP;EACT;AACF;",
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { log } from '@dxos/log';\nimport { schema } from '@dxos/protocols';\nimport type { Storage } from '@dxos/random-access-storage';\n\nimport { MetadataStore } from '../metadata';\n\nconst EchoMetadata = schema.getCodecForType('dxos.echo.metadata.EchoMetadata');\n\n/**\n * This function will change the storage version in the metadata.\n * This will break your storage and make it unusable.\n * Use this only for testing purposes.\n */\nexport const changeStorageVersionInMetadata = async (storage: Storage, version: number) => {\n log.info('Changing storage version in metadata. USE ONLY FOR TESTING.');\n const metadata = new MetadataStore(storage.createDirectory('metadata'));\n await metadata.load();\n const echoMetadata = metadata.metadata;\n echoMetadata.version = version;\n const file = metadata._directory.getOrCreateFile('EchoMetadata');\n await metadata._writeFile(file, EchoMetadata, echoMetadata);\n await metadata._directory.flush();\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { Context } from '@dxos/context';\nimport { CredentialGenerator } from '@dxos/credentials';\nimport { DocumentModel } from '@dxos/document-model';\nimport { type FeedStore } from '@dxos/feed-store';\nimport { type Keyring } from '@dxos/keyring';\nimport { PublicKey } from '@dxos/keys';\nimport { MemorySignalManager, MemorySignalManagerContext, WebsocketSignalManager } from '@dxos/messaging';\nimport { ModelFactory } from '@dxos/model-factory';\nimport { createSimplePeerTransportFactory, MemoryTransportFactory, NetworkManager } from '@dxos/network-manager';\nimport type { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';\nimport { type SpaceMetadata } from '@dxos/protocols/proto/dxos/echo/metadata';\nimport { AdmittedFeed } from '@dxos/protocols/proto/dxos/halo/credentials';\nimport { createStorage, type Storage, StorageType } from '@dxos/random-access-storage';\nimport { Gossip, Presence } from '@dxos/teleport-extension-gossip';\nimport { BlobStore } from '@dxos/teleport-extension-object-sync';\nimport { ComplexMap } from '@dxos/util';\n\nimport { TestFeedBuilder } from './test-feed-builder';\nimport { SnapshotStore } from '../db-host';\nimport { MetadataStore } from '../metadata';\nimport { MOCK_AUTH_PROVIDER, MOCK_AUTH_VERIFIER, type Space, SpaceManager, SpaceProtocol } from '../space';\n\nexport type NetworkManagerProvider = () => NetworkManager;\n\nexport const MemoryNetworkManagerProvider =\n (signalContext: MemorySignalManagerContext): NetworkManagerProvider =>\n () =>\n new NetworkManager({\n signalManager: new MemorySignalManager(signalContext),\n transportFactory: MemoryTransportFactory,\n });\n\nexport const WebsocketNetworkManagerProvider =\n (signalUrl: string): NetworkManagerProvider =>\n () =>\n new NetworkManager({\n signalManager: new WebsocketSignalManager([{ server: signalUrl }]),\n transportFactory: createSimplePeerTransportFactory(),\n });\n\nexport type TestAgentBuilderOptions = {\n storage?: Storage;\n networkManagerProvider?: NetworkManagerProvider;\n};\n\n/**\n * Factory for test agents.\n */\nexport class TestAgentBuilder {\n private readonly _agents = new ComplexMap<PublicKey, TestAgent>(PublicKey.hash);\n private readonly _storage: Storage;\n private readonly _networkManagerProvider: NetworkManagerProvider;\n\n constructor({ storage, networkManagerProvider }: TestAgentBuilderOptions = {}) {\n this._storage = storage ?? createStorage({ type: StorageType.RAM });\n this._networkManagerProvider =\n networkManagerProvider ?? MemoryNetworkManagerProvider(new MemorySignalManagerContext());\n }\n\n async close() {\n return Promise.all(this.agents.map((agent) => agent.close()));\n }\n\n get agents() {\n return Array.from(this._agents.values());\n }\n\n getAgent(deviceKey: PublicKey) {\n return this._agents.get(deviceKey);\n }\n\n async createPeer(): Promise<TestAgent> {\n // prettier-ignore\n const feedBuilder = new TestFeedBuilder()\n .setStorage(this._storage, `agent-${this._agents.size}`);\n\n const identityKey = await feedBuilder.keyring.createKey();\n const deviceKey = await feedBuilder.keyring.createKey();\n\n const agent = new TestAgent(this._networkManagerProvider, feedBuilder, identityKey, deviceKey);\n this._agents.set(deviceKey, agent);\n return agent;\n }\n}\n\n/**\n * Test agent that enables the creation and replication of multiple spaces.\n */\nexport class TestAgent {\n private readonly _spaces = new ComplexMap<PublicKey, Space>(PublicKey.hash);\n\n public readonly storage: Storage;\n public readonly keyring: Keyring;\n public readonly feedStore: FeedStore<FeedMessage>;\n\n private _metadataStore?: MetadataStore;\n get metadataStore() {\n return (this._metadataStore ??= new MetadataStore(this.storage.createDirectory('metadata')));\n }\n\n private _snapshotStore?: SnapshotStore;\n get snapshotStore() {\n return (this._snapshotStore ??= new SnapshotStore(this.storage.createDirectory('snapshots')));\n }\n\n private _blobStore?: BlobStore;\n get blobStore() {\n return (this._blobStore ??= new BlobStore(this.storage.createDirectory('blobs')));\n }\n\n public modelFactory = new ModelFactory().registerModel(DocumentModel);\n\n constructor(\n private readonly _networkManagerProvider: NetworkManagerProvider,\n private readonly _feedBuilder: TestFeedBuilder,\n public readonly identityKey: PublicKey,\n public readonly deviceKey: PublicKey,\n ) {\n this.storage = this._feedBuilder.storage;\n this.keyring = this._feedBuilder.keyring;\n this.feedStore = this._feedBuilder.createFeedStore();\n }\n\n async close() {\n return Promise.all([...this.spaces.map((space) => space.close())]);\n }\n\n get spaces() {\n return Array.from(this._spaces.values());\n }\n\n getSpace(spaceKey: PublicKey) {\n return this._spaces.get(spaceKey);\n }\n\n private _spaceManager?: SpaceManager;\n get spaceManager() {\n return (this._spaceManager ??= new SpaceManager({\n feedStore: this.feedStore,\n networkManager: this._networkManagerProvider(),\n modelFactory: this.modelFactory,\n metadataStore: this.metadataStore,\n snapshotStore: this.snapshotStore,\n blobStore: this.blobStore,\n }));\n }\n\n async createSpace(\n identityKey: PublicKey = this.identityKey,\n spaceKey?: PublicKey,\n genesisKey?: PublicKey,\n dataKey?: PublicKey,\n saveMetadata = false,\n ): Promise<Space> {\n if (!spaceKey) {\n saveMetadata = true;\n spaceKey = await this.keyring.createKey();\n }\n if (!genesisKey) {\n genesisKey = await this.keyring.createKey();\n }\n\n const controlFeed = await this.feedStore.openFeed(genesisKey, { writable: true });\n const dataFeed = await this.feedStore.openFeed(dataKey ?? (await this.keyring.createKey()), {\n writable: true,\n sparse: true,\n });\n\n const metadata: SpaceMetadata = {\n key: spaceKey,\n genesisFeedKey: genesisKey,\n controlFeedKey: controlFeed.key,\n dataFeedKey: dataFeed.key,\n };\n if (saveMetadata) {\n await this.metadataStore.addSpace(metadata);\n }\n\n await this.spaceManager.open();\n const space = await this.spaceManager.constructSpace({\n metadata,\n swarmIdentity: {\n peerKey: this.deviceKey,\n credentialProvider: MOCK_AUTH_PROVIDER,\n credentialAuthenticator: MOCK_AUTH_VERIFIER,\n },\n memberKey: identityKey,\n onAuthorizedConnection: (session) => {\n session.addExtension(\n 'dxos.mesh.teleport.gossip',\n this.createGossip().createExtension({ remotePeerId: session.remotePeerId }),\n );\n },\n });\n await space.setControlFeed(controlFeed);\n await space.setDataFeed(dataFeed);\n\n await space.open(new Context());\n\n this._spaces.set(spaceKey, space);\n return space;\n }\n\n createSpaceProtocol(topic: PublicKey, gossip?: Gossip) {\n return new SpaceProtocol({\n topic,\n swarmIdentity: {\n peerKey: this.deviceKey,\n credentialProvider: MOCK_AUTH_PROVIDER,\n credentialAuthenticator: MOCK_AUTH_VERIFIER,\n },\n networkManager: this._networkManagerProvider(),\n blobStore: this.blobStore,\n onSessionAuth: (session) => {\n session.addExtension(\n 'dxos.mesh.teleport.gossip',\n (gossip ?? this.createGossip()).createExtension({ remotePeerId: session.remotePeerId }),\n );\n },\n });\n }\n\n createGossip() {\n return new Gossip({\n localPeerId: this.deviceKey,\n });\n }\n\n createPresence(gossip?: Gossip) {\n return new Presence({\n announceInterval: 30,\n offlineTimeout: 200,\n identityKey: this.identityKey,\n gossip: gossip ?? this.createGossip(),\n });\n }\n\n async spaceGenesis(space: Space) {\n const generator = new CredentialGenerator(this.keyring, this.identityKey, this.deviceKey);\n const credentials = [\n ...(await generator.createSpaceGenesis(space.key, space.controlFeedKey!)),\n await generator.createFeedAdmission(space.key, space.dataFeedKey!, AdmittedFeed.Designation.DATA),\n await generator.createEpochCredential(space.key),\n ];\n\n for (const credential of credentials) {\n await space.controlPipeline.writer.write({\n credential: { credential },\n });\n }\n }\n}\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { TestBuilder } from '@dxos/feed-store/testing';\nimport type { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';\n\nimport { valueEncoding } from '../common';\n\n/**\n * Builder with default encoder and generator.\n */\nexport class TestFeedBuilder extends TestBuilder<FeedMessage> {\n constructor() {\n super({\n valueEncoding,\n });\n }\n}\n", "//\n// Copyright 2021 DXOS.org\n//\n\nimport { asyncTimeout } from '@dxos/async';\nimport { DocumentModel } from '@dxos/document-model';\nimport { DatabaseProxy, ItemManager } from '@dxos/echo-db';\nimport { MockFeedWriter } from '@dxos/feed-store/testing';\nimport { PublicKey } from '@dxos/keys';\nimport { ModelFactory } from '@dxos/model-factory';\nimport { type DataMessage } from '@dxos/protocols/proto/dxos/echo/feed';\nimport { StorageType, createStorage } from '@dxos/random-access-storage';\nimport { Timeframe } from '@dxos/timeframe';\n\nimport { AutomergeHost } from '../automerge';\nimport { DatabaseHost, type DataServiceHost, DataServiceImpl, DataServiceSubscriptions } from '../db-host';\nimport { type DataPipeline } from '../space';\n\nexport const createMemoryDatabase = async (modelFactory: ModelFactory) => {\n const feed = new MockFeedWriter<DataMessage>();\n const backend = new DatabaseHost(feed, async () => {\n // No-op.\n });\n\n feed.written.on(([data, meta]) =>\n backend.echoProcessor({\n batch: data.batch,\n meta: {\n ...meta,\n memberKey: PublicKey.random(),\n timeframe: new Timeframe([[meta.feedKey, meta.seq]]),\n },\n }),\n );\n\n const itemManager = new ItemManager(modelFactory);\n await backend.open(itemManager, new ModelFactory().registerModel(DocumentModel));\n return {\n backend,\n itemManager,\n };\n};\n\nexport const createRemoteDatabaseFromDataServiceHost = async (\n modelFactory: ModelFactory,\n dataServiceHost: DataServiceHost,\n) => {\n const dataServiceSubscriptions = new DataServiceSubscriptions();\n const automergeHost = new AutomergeHost({\n directory: createStorage({ type: StorageType.RAM }).createDirectory(),\n });\n const dataService = new DataServiceImpl(dataServiceSubscriptions, automergeHost);\n\n const spaceKey = PublicKey.random();\n await dataServiceSubscriptions.registerSpace(spaceKey, dataServiceHost);\n\n const itemManager = new ItemManager(modelFactory);\n const backend = new DatabaseProxy({ service: dataService, itemManager, spaceKey });\n await backend.open(new ModelFactory().registerModel(DocumentModel));\n return {\n itemManager,\n backend,\n };\n};\n\nexport const testLocalDatabase = async (create: DataPipeline, check: DataPipeline = create) => {\n const objectId = PublicKey.random().toHex();\n await create.databaseHost!.getWriteStream()?.write({\n batch: {\n objects: [\n {\n objectId,\n genesis: {\n modelType: DocumentModel.meta.type,\n },\n },\n ],\n },\n });\n\n await asyncTimeout(\n check.databaseHost!._itemDemuxer.mutation.waitForCondition(() => check.itemManager.entities.has(objectId)),\n 2000,\n );\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { Event, Trigger } from '@dxos/async';\nimport { DocumentModel } from '@dxos/document-model';\nimport { DatabaseProxy, ItemManager, createModelMutation, encodeModelMutation } from '@dxos/echo-db';\nimport { type WriteOptions, type WriteReceipt } from '@dxos/feed-store';\nimport { invariant } from '@dxos/invariant';\nimport { PublicKey } from '@dxos/keys';\nimport { ModelFactory } from '@dxos/model-factory';\nimport { type FeedMessageBlock, schema } from '@dxos/protocols';\nimport { type FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';\nimport { type EchoSnapshot, type SpaceSnapshot } from '@dxos/protocols/proto/dxos/echo/snapshot';\nimport { type Epoch } from '@dxos/protocols/proto/dxos/halo/credentials';\nimport { TextModel } from '@dxos/text-model';\nimport { Timeframe } from '@dxos/timeframe';\nimport { ComplexMap, isNotNullOrUndefined } from '@dxos/util';\n\nimport { DatabaseHost } from '../db-host';\n\nconst SPACE_KEY = PublicKey.random();\n\nexport class DatabaseTestBuilder {\n public readonly peers = new ComplexMap<PublicKey, DatabaseTestPeer>(PublicKey.hash);\n\n async createPeer(spaceKey = SPACE_KEY): Promise<DatabaseTestPeer> {\n const peer = new DatabaseTestPeer(this, spaceKey);\n this.peers.set(peer.key, peer);\n await peer.open();\n return peer;\n }\n}\n\ntype WriteRequest = {\n receipt: WriteReceipt;\n options: WriteOptions;\n trigger: Trigger;\n};\n\n// TODO(dmaretskyi): Still used in echo-schema test builder.\n\nexport class DatabaseTestPeer {\n public readonly modelFactory = new ModelFactory().registerModel(DocumentModel).registerModel(TextModel);\n\n public items!: ItemManager;\n public proxy!: DatabaseProxy;\n\n public host!: DatabaseHost;\n public hostItems!: ItemManager;\n\n //\n // Test state.\n //\n\n public readonly key = PublicKey.random();\n\n public feedMessages: FeedMessage[] = [];\n\n public readonly snapshots = new Map<string, SpaceSnapshot>();\n private currentEpoch?: Epoch;\n\n /**\n * Sequence number of the last mutation confirmed to be written to the feed store.\n */\n public confirmed = -1;\n\n /**\n * Current position of the peer's pipeline.\n */\n public timeframe = new Timeframe();\n\n public snapshot: SpaceSnapshot | undefined;\n\n private readonly _onConfirm = new Event();\n\n private readonly _writes = new Set<WriteRequest>();\n\n constructor(\n public readonly rig: DatabaseTestBuilder,\n public readonly spaceKey: PublicKey,\n ) {}\n\n async open() {\n this.hostItems = new ItemManager(this.modelFactory);\n this.host = new DatabaseHost(\n {\n write: async (message, { afterWrite }: WriteOptions) => {\n const seq =\n this.feedMessages.push({\n timeframe: this.timeframe,\n payload: {\n data: message,\n },\n }) - 1;\n\n const request: WriteRequest = {\n receipt: {\n seq,\n feedKey: this.key,\n },\n options: { afterWrite },\n trigger: new Trigger(),\n };\n this._writes.add(request);\n await request.trigger.wait();\n return request.receipt;\n },\n },\n async () => {\n // No-op.\n },\n );\n\n await this.host.open(this.hostItems, this.modelFactory);\n if (this.snapshot) {\n this.host._itemDemuxer.restoreFromSnapshot(this.snapshot.database);\n }\n\n this.items = new ItemManager(this.modelFactory);\n this.proxy = new DatabaseProxy({\n service: this.host.createDataServiceHost({ deferEvents: false }),\n itemManager: this.items,\n spaceKey: this.spaceKey,\n });\n await this.proxy.open(this.modelFactory);\n }\n\n /**\n * Confirm mutations written to the local feed.\n * @param seq Sequence number of the mutation to confirm. If not specified, all mutations will be confirmed.\n */\n async confirm(seq?: number) {\n this.confirmed = seq ?? this.feedMessages.length - 1;\n this._onConfirm.emit();\n\n for (const request of [...this._writes]) {\n if (this.confirmed >= request.receipt.seq) {\n this._writes.delete(request);\n await request.options.afterWrite?.(request.receipt);\n request.trigger.wake();\n }\n }\n\n this._processMessages(Timeframe.merge(this.timeframe, new Timeframe([[this.key, this.confirmed]])));\n }\n\n /**\n * Replicate the database to the specified timeframe.\n * @param to Timeframe to replicate to. If not specified, the database will be replicated to the latest timeframe (based on all other peers).\n */\n replicate(to?: Timeframe) {\n const toTimeframe = Timeframe.merge(\n to ?? new Timeframe(Array.from(this.rig.peers.values()).map((peer) => [peer.key, peer.confirmed])),\n this.timeframe,\n );\n toTimeframe.set(this.key, this.confirmed);\n\n this._processMessages(toTimeframe);\n }\n\n /**\n * Reload data from the feed. Wipes unconfirmed mutations.\n */\n async reload() {\n await this.open();\n const timeframe = this.timeframe;\n this.timeframe = this.snapshot?.timeframe ?? new Timeframe();\n this._processMessages(timeframe);\n }\n\n /**\n * Create snapshot and use it for the next reload.\n */\n makeSnapshot(): SpaceSnapshot {\n this.snapshot = {\n spaceKey: SPACE_KEY.asUint8Array(),\n database: this.host.createSnapshot(),\n timeframe: this.timeframe,\n };\n return this.snapshot;\n }\n\n createEpoch(mockSnapshot?: EchoSnapshot) {\n const snapshot = this.makeSnapshot();\n // Substitute snapshot with the mock one for test purposes (e.g. to test with empty snapshot).\n mockSnapshot && (snapshot.database = mockSnapshot);\n const snapshotCid = PublicKey.from(\n schema.getCodecForType('dxos.echo.snapshot.SpaceSnapshot').encode(snapshot),\n ).toHex();\n this.snapshots.set(snapshotCid, snapshot);\n\n const epoch: Epoch = {\n previousId: PublicKey.random(),\n timeframe: this.timeframe,\n number: this.currentEpoch ? this.currentEpoch.number + 1 : 0,\n snapshotCid,\n };\n\n this.currentEpoch = epoch;\n\n this.host._itemDemuxer.restoreFromSnapshot(snapshot.database);\n }\n\n /**\n * Gets all candidate messages according to the current timeframe.\n * Does not take into account the current snapshot, timeframe dependencies, or the confirmed, or replicated state.\n */\n private _getHeads(): FeedMessageBlock[] {\n return Array.from(this.rig.peers.values())\n .map((peer): FeedMessageBlock => {\n const seq = this.timeframe.get(peer.key) ?? -1;\n const message = peer.feedMessages[seq + 1];\n return (\n message && {\n feedKey: peer.key,\n seq: seq + 1,\n data: message,\n }\n );\n })\n .filter(isNotNullOrUndefined);\n }\n\n private _processMessages(to: Timeframe) {\n let run = true;\n while (run) {\n run = false;\n\n const heads = this._getHeads();\n for (const candidate of heads) {\n const toSeq = to.get(candidate.feedKey) ?? -1;\n if (toSeq < candidate.seq) {\n continue;\n }\n\n const snapshotSeq = this.snapshot?.timeframe?.get(candidate.feedKey) ?? -1;\n if (candidate.seq <= snapshotSeq) {\n continue;\n }\n\n if (!Timeframe.dependencies(candidate.data.timeframe, this.timeframe).isEmpty()) {\n continue;\n }\n\n run = true;\n this.host.echoProcessor({\n batch: candidate.data.payload.data!.batch,\n meta: {\n feedKey: candidate.feedKey,\n seq: candidate.seq,\n memberKey: candidate.feedKey,\n timeframe: candidate.data.timeframe,\n },\n });\n this.timeframe = Timeframe.merge(this.timeframe, new Timeframe([[candidate.feedKey, candidate.seq]]));\n }\n }\n }\n\n getModel(id: string): DocumentModel | TextModel | undefined {\n const item = this.items.getItem(id);\n if (!item) {\n return;\n }\n\n invariant(item.modelMeta);\n const ModelConstructor = this.modelFactory.getModel(item.modelMeta.type)?.constructor;\n invariant(ModelConstructor);\n\n const model = new ModelConstructor(\n item.modelMeta,\n item.id,\n () => item.state,\n async (mutation) => {\n invariant(item.modelMeta);\n this.proxy.mutate(createModelMutation(id, encodeModelMutation(item.modelMeta, mutation)));\n return {\n feedKey: PublicKey.from('00'),\n seq: 0,\n waitToBeProcessed: () => Promise.resolve(),\n };\n },\n );\n model.initialize();\n\n return model;\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["import_credentials", "import_document_model", "import_testing", "import_keys", "import_model_factory", "import_random_access_storage", "import_async", "import_echo_db", "import_protocols", "import_timeframe", "import_util", "EchoMetadata", "schema", "getCodecForType", "changeStorageVersionInMetadata", "storage", "version", "log", "info", "metadata", "MetadataStore", "createDirectory", "load", "echoMetadata", "file", "_directory", "getOrCreateFile", "_writeFile", "flush", "TestFeedBuilder", "TestBuilder", "constructor", "valueEncoding", "MemoryNetworkManagerProvider", "signalContext", "NetworkManager", "signalManager", "MemorySignalManager", "transportFactory", "MemoryTransportFactory", "WebsocketNetworkManagerProvider", "signalUrl", "WebsocketSignalManager", "server", "createSimplePeerTransportFactory", "TestAgentBuilder", "networkManagerProvider", "_agents", "ComplexMap", "PublicKey", "hash", "_storage", "createStorage", "type", "StorageType", "RAM", "_networkManagerProvider", "MemorySignalManagerContext", "close", "Promise", "all", "agents", "map", "agent", "Array", "from", "values", "getAgent", "deviceKey", "get", "createPeer", "feedBuilder", "setStorage", "size", "identityKey", "keyring", "createKey", "TestAgent", "set", "metadataStore", "_metadataStore", "snapshotStore", "_snapshotStore", "SnapshotStore", "blobStore", "_blobStore", "BlobStore", "_feedBuilder", "_spaces", "modelFactory", "ModelFactory", "registerModel", "DocumentModel", "feedStore", "createFeedStore", "spaces", "space", "getSpace", "spaceKey", "spaceManager", "_spaceManager", "SpaceManager", "networkManager", "createSpace", "genesisKey", "dataKey", "saveMetadata", "controlFeed", "openFeed", "writable", "dataFeed", "sparse", "key", "genesisFeedKey", "controlFeedKey", "dataFeedKey", "addSpace", "open", "constructSpace", "swarmIdentity", "peerKey", "credentialProvider", "MOCK_AUTH_PROVIDER", "credentialAuthenticator", "MOCK_AUTH_VERIFIER", "memberKey", "onAuthorizedConnection", "session", "addExtension", "createGossip", "createExtension", "remotePeerId", "setControlFeed", "setDataFeed", "Context", "createSpaceProtocol", "topic", "gossip", "SpaceProtocol", "onSessionAuth", "Gossip", "localPeerId", "createPresence", "Presence", "announceInterval", "offlineTimeout", "spaceGenesis", "generator", "CredentialGenerator", "credentials", "createSpaceGenesis", "createFeedAdmission", "AdmittedFeed", "Designation", "DATA", "createEpochCredential", "credential", "controlPipeline", "writer", "write", "createMemoryDatabase", "feed", "MockFeedWriter", "backend", "DatabaseHost", "written", "on", "data", "meta", "echoProcessor", "batch", "random", "timeframe", "Timeframe", "feedKey", "seq", "itemManager", "ItemManager", "createRemoteDatabaseFromDataServiceHost", "dataServiceHost", "dataServiceSubscriptions", "DataServiceSubscriptions", "automergeHost", "AutomergeHost", "directory", "dataService", "DataServiceImpl", "registerSpace", "DatabaseProxy", "service", "testLocalDatabase", "create", "check", "objectId", "toHex", "databaseHost", "getWriteStream", "objects", "genesis", "modelType", "asyncTimeout", "_itemDemuxer", "mutation", "waitForCondition", "entities", "has", "SPACE_KEY", "DatabaseTestBuilder", "peers", "peer", "DatabaseTestPeer", "rig", "TextModel", "feedMessages", "snapshots", "Map", "confirmed", "_onConfirm", "Event", "_writes", "Set", "hostItems", "host", "message", "afterWrite", "push", "payload", "request", "receipt", "options", "trigger", "Trigger", "add", "wait", "snapshot", "restoreFromSnapshot", "database", "items", "proxy", "createDataServiceHost", "deferEvents", "confirm", "length", "emit", "delete", "wake", "_processMessages", "merge", "replicate", "to", "toTimeframe", "reload", "makeSnapshot", "asUint8Array", "createSnapshot", "createEpoch", "mockSnapshot", "snapshotCid", "encode", "epoch", "previousId", "number", "currentEpoch", "_getHeads", "filter", "isNotNullOrUndefined", "run", "heads", "candidate", "toSeq", "snapshotSeq", "dependencies", "isEmpty", "getModel", "id", "item", "getItem", "invariant", "modelMeta", "ModelConstructor", "model", "state", "mutate", "createModelMutation", "encodeModelMutation", "waitToBeProcessed", "resolve", "initialize"]
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database-test-rig.d.ts","sourceRoot":"","sources":["../../../../src/testing/database-test-rig.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,WAAW,EAA4C,MAAM,eAAe,CAAC;AAGrG,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,0CAA0C,CAAC;AAEjG,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAwB,MAAM,YAAY,CAAC;AAE9D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAI1C,qBAAa,mBAAmB;IAC9B,SAAgB,KAAK,0CAA+D;IAE9E,UAAU,CAAC,QAAQ,YAAY,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAMlE;
|
|
1
|
+
{"version":3,"file":"database-test-rig.d.ts","sourceRoot":"","sources":["../../../../src/testing/database-test-rig.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,WAAW,EAA4C,MAAM,eAAe,CAAC;AAGrG,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,0CAA0C,CAAC;AAEjG,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAwB,MAAM,YAAY,CAAC;AAE9D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAI1C,qBAAa,mBAAmB;IAC9B,SAAgB,KAAK,0CAA+D;IAE9E,UAAU,CAAC,QAAQ,YAAY,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAMlE;AAUD,qBAAa,gBAAgB;aAqCT,GAAG,EAAE,mBAAmB;aACxB,QAAQ,EAAE,SAAS;IArCrC,SAAgB,YAAY,eAA4E;IAEjG,KAAK,EAAG,WAAW,CAAC;IACpB,KAAK,EAAG,aAAa,CAAC;IAEtB,IAAI,EAAG,YAAY,CAAC;IACpB,SAAS,EAAG,WAAW,CAAC;IAM/B,SAAgB,GAAG,YAAsB;IAElC,YAAY,EAAE,WAAW,EAAE,CAAM;IAExC,SAAgB,SAAS,6BAAoC;IAC7D,OAAO,CAAC,YAAY,CAAC,CAAQ;IAE7B;;OAEG;IACI,SAAS,SAAM;IAEtB;;OAEG;IACI,SAAS,YAAmB;IAE5B,QAAQ,EAAE,aAAa,GAAG,SAAS,CAAC;IAE3C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAe;IAE1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA2B;gBAGjC,GAAG,EAAE,mBAAmB,EACxB,QAAQ,EAAE,SAAS;IAG/B,IAAI;IA6CV;;;OAGG;IACG,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM;IAe1B;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,EAAE,SAAS;IAUxB;;OAEG;IACG,MAAM;IAOZ;;OAEG;IACH,YAAY,IAAI,aAAa;IAS7B,WAAW,CAAC,YAAY,CAAC,EAAE,YAAY;IAqBvC;;;OAGG;IACH,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,gBAAgB;IAoCxB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,GAAG,SAAS;CA4B5D"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxos/echo-pipeline",
|
|
3
|
-
"version": "0.4.8-main.
|
|
3
|
+
"version": "0.4.8-main.c4e8b01",
|
|
4
4
|
"description": "ECHO database.",
|
|
5
5
|
"homepage": "https://dxos.org",
|
|
6
6
|
"bugs": "https://github.com/dxos/dxos/issues",
|
|
@@ -36,38 +36,38 @@
|
|
|
36
36
|
],
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"crc-32": "^1.2.2",
|
|
39
|
-
"@dxos/async": "0.4.8-main.
|
|
40
|
-
"@dxos/automerge": "0.4.8-main.
|
|
41
|
-
"@dxos/codec-protobuf": "0.4.8-main.
|
|
42
|
-
"@dxos/
|
|
43
|
-
"@dxos/
|
|
44
|
-
"@dxos/
|
|
45
|
-
"@dxos/
|
|
46
|
-
"@dxos/document-model": "0.4.8-main.
|
|
47
|
-
"@dxos/echo-db": "0.4.8-main.
|
|
48
|
-
"@dxos/feed-store": "0.4.8-main.
|
|
49
|
-
"@dxos/hypercore": "0.4.8-main.
|
|
50
|
-
"@dxos/invariant": "0.4.8-main.
|
|
51
|
-
"@dxos/keyring": "0.4.8-main.
|
|
52
|
-
"@dxos/keys": "0.4.8-main.
|
|
53
|
-
"@dxos/
|
|
54
|
-
"@dxos/
|
|
55
|
-
"@dxos/
|
|
56
|
-
"@dxos/
|
|
57
|
-
"@dxos/node-std": "0.4.8-main.
|
|
58
|
-
"@dxos/protocols": "0.4.8-main.
|
|
59
|
-
"@dxos/
|
|
60
|
-
"@dxos/
|
|
61
|
-
"@dxos/
|
|
62
|
-
"@dxos/teleport": "0.4.8-main.
|
|
63
|
-
"@dxos/teleport-extension-gossip": "0.4.8-main.
|
|
64
|
-
"@dxos/teleport-extension-
|
|
65
|
-
"@dxos/
|
|
66
|
-
"@dxos/
|
|
67
|
-
"@dxos/
|
|
68
|
-
"@dxos/
|
|
69
|
-
"@dxos/
|
|
70
|
-
"@dxos/
|
|
39
|
+
"@dxos/async": "0.4.8-main.c4e8b01",
|
|
40
|
+
"@dxos/automerge": "0.4.8-main.c4e8b01",
|
|
41
|
+
"@dxos/codec-protobuf": "0.4.8-main.c4e8b01",
|
|
42
|
+
"@dxos/credentials": "0.4.8-main.c4e8b01",
|
|
43
|
+
"@dxos/context": "0.4.8-main.c4e8b01",
|
|
44
|
+
"@dxos/crypto": "0.4.8-main.c4e8b01",
|
|
45
|
+
"@dxos/debug": "0.4.8-main.c4e8b01",
|
|
46
|
+
"@dxos/document-model": "0.4.8-main.c4e8b01",
|
|
47
|
+
"@dxos/echo-db": "0.4.8-main.c4e8b01",
|
|
48
|
+
"@dxos/feed-store": "0.4.8-main.c4e8b01",
|
|
49
|
+
"@dxos/hypercore": "0.4.8-main.c4e8b01",
|
|
50
|
+
"@dxos/invariant": "0.4.8-main.c4e8b01",
|
|
51
|
+
"@dxos/keyring": "0.4.8-main.c4e8b01",
|
|
52
|
+
"@dxos/keys": "0.4.8-main.c4e8b01",
|
|
53
|
+
"@dxos/log": "0.4.8-main.c4e8b01",
|
|
54
|
+
"@dxos/messaging": "0.4.8-main.c4e8b01",
|
|
55
|
+
"@dxos/network-manager": "0.4.8-main.c4e8b01",
|
|
56
|
+
"@dxos/model-factory": "0.4.8-main.c4e8b01",
|
|
57
|
+
"@dxos/node-std": "0.4.8-main.c4e8b01",
|
|
58
|
+
"@dxos/protocols": "0.4.8-main.c4e8b01",
|
|
59
|
+
"@dxos/rpc": "0.4.8-main.c4e8b01",
|
|
60
|
+
"@dxos/teleport": "0.4.8-main.c4e8b01",
|
|
61
|
+
"@dxos/random-access-storage": "0.4.8-main.c4e8b01",
|
|
62
|
+
"@dxos/teleport-extension-automerge-replicator": "0.4.8-main.c4e8b01",
|
|
63
|
+
"@dxos/teleport-extension-gossip": "0.4.8-main.c4e8b01",
|
|
64
|
+
"@dxos/teleport-extension-object-sync": "0.4.8-main.c4e8b01",
|
|
65
|
+
"@dxos/text-model": "0.4.8-main.c4e8b01",
|
|
66
|
+
"@dxos/tracing": "0.4.8-main.c4e8b01",
|
|
67
|
+
"@dxos/typings": "0.4.8-main.c4e8b01",
|
|
68
|
+
"@dxos/teleport-extension-replicator": "0.4.8-main.c4e8b01",
|
|
69
|
+
"@dxos/util": "0.4.8-main.c4e8b01",
|
|
70
|
+
"@dxos/timeframe": "0.4.8-main.c4e8b01"
|
|
71
71
|
},
|
|
72
72
|
"devDependencies": {
|
|
73
73
|
"fast-check": "^3.15.1",
|