@dxos/echo-pipeline 0.8.4-main.ae835ea → 0.8.4-main.bc2380dfbc
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/LICENSE +102 -5
- package/README.md +1 -1
- package/dist/lib/{browser/chunk-WJJXJTNS.mjs → neutral/chunk-46DCRDA7.mjs} +44 -13
- package/dist/lib/neutral/chunk-46DCRDA7.mjs.map +7 -0
- package/dist/lib/{browser/chunk-FR6GJ4S4.mjs → neutral/chunk-LR7UFVQX.mjs} +145 -618
- package/dist/lib/neutral/chunk-LR7UFVQX.mjs.map +7 -0
- package/dist/lib/{browser → neutral}/filter/index.mjs +1 -2
- package/dist/lib/neutral/index.mjs +7332 -0
- package/dist/lib/neutral/index.mjs.map +7 -0
- package/dist/lib/neutral/meta.json +1 -0
- package/dist/lib/{browser → neutral}/testing/index.mjs +49 -292
- package/dist/lib/neutral/testing/index.mjs.map +7 -0
- package/dist/types/src/automerge/automerge-host-subduction.test.d.ts +2 -0
- package/dist/types/src/automerge/automerge-host-subduction.test.d.ts.map +1 -0
- package/dist/types/src/automerge/automerge-host.d.ts +105 -27
- package/dist/types/src/automerge/automerge-host.d.ts.map +1 -1
- package/dist/types/src/automerge/automerge-repo-subduction.test.d.ts +2 -0
- package/dist/types/src/automerge/automerge-repo-subduction.test.d.ts.map +1 -0
- package/dist/types/src/automerge/automerge-repo.test.d.ts +1 -1
- package/dist/types/src/automerge/automerge-repo.test.d.ts.map +1 -1
- package/dist/types/src/automerge/automerge-subduction.test.d.ts +2 -0
- package/dist/types/src/automerge/automerge-subduction.test.d.ts.map +1 -0
- package/dist/types/src/automerge/collection-synchronizer.d.ts +22 -2
- package/dist/types/src/automerge/collection-synchronizer.d.ts.map +1 -1
- package/dist/types/src/automerge/echo-data-monitor.d.ts.map +1 -1
- package/dist/types/src/automerge/echo-network-adapter.d.ts +17 -11
- package/dist/types/src/automerge/echo-network-adapter.d.ts.map +1 -1
- package/dist/types/src/automerge/echo-replicator.d.ts +28 -16
- package/dist/types/src/automerge/echo-replicator.d.ts.map +1 -1
- package/dist/types/src/automerge/errors.d.ts +35 -0
- package/dist/types/src/automerge/errors.d.ts.map +1 -0
- package/dist/types/src/automerge/handle-state.d.ts +52 -0
- package/dist/types/src/automerge/handle-state.d.ts.map +1 -0
- package/dist/types/src/automerge/heads-store.d.ts +9 -2
- package/dist/types/src/automerge/heads-store.d.ts.map +1 -1
- package/dist/types/src/automerge/index.d.ts +2 -0
- package/dist/types/src/automerge/index.d.ts.map +1 -1
- package/dist/types/src/automerge/leveldb-storage-adapter.d.ts +10 -4
- package/dist/types/src/automerge/leveldb-storage-adapter.d.ts.map +1 -1
- package/dist/types/src/automerge/mesh-echo-replicator-connection.d.ts +8 -8
- package/dist/types/src/automerge/mesh-echo-replicator-connection.d.ts.map +1 -1
- package/dist/types/src/automerge/mesh-echo-replicator.d.ts +6 -5
- package/dist/types/src/automerge/mesh-echo-replicator.d.ts.map +1 -1
- package/dist/types/src/automerge/network-protocol.d.ts.map +1 -1
- package/dist/types/src/automerge/space-collection.d.ts.map +1 -1
- package/dist/types/src/common/feeds.d.ts.map +1 -1
- package/dist/types/src/common/space-id.d.ts.map +1 -1
- package/dist/types/src/db-host/automerge-data-source.d.ts +35 -0
- package/dist/types/src/db-host/automerge-data-source.d.ts.map +1 -0
- package/dist/types/src/db-host/automerge-data-source.test.d.ts +2 -0
- package/dist/types/src/db-host/automerge-data-source.test.d.ts.map +1 -0
- package/dist/types/src/db-host/automerge-metrics.d.ts.map +1 -1
- package/dist/types/src/db-host/data-service.d.ts +12 -6
- package/dist/types/src/db-host/data-service.d.ts.map +1 -1
- package/dist/types/src/db-host/database-root.d.ts +9 -3
- package/dist/types/src/db-host/database-root.d.ts.map +1 -1
- package/dist/types/src/db-host/documents-synchronizer.d.ts +30 -8
- package/dist/types/src/db-host/documents-synchronizer.d.ts.map +1 -1
- package/dist/types/src/db-host/echo-host.d.ts +74 -28
- package/dist/types/src/db-host/echo-host.d.ts.map +1 -1
- package/dist/types/src/db-host/index.d.ts +2 -0
- package/dist/types/src/db-host/index.d.ts.map +1 -1
- package/dist/types/src/db-host/invalidation-hint.d.ts +19 -0
- package/dist/types/src/db-host/invalidation-hint.d.ts.map +1 -0
- package/dist/types/src/db-host/local-queue-service.d.ts +19 -0
- package/dist/types/src/db-host/local-queue-service.d.ts.map +1 -0
- package/dist/types/src/db-host/query-invalidation.test.d.ts +2 -0
- package/dist/types/src/db-host/query-invalidation.test.d.ts.map +1 -0
- package/dist/types/src/db-host/query-service.d.ts +18 -10
- package/dist/types/src/db-host/query-service.d.ts.map +1 -1
- package/dist/types/src/db-host/queue-data-source.d.ts +38 -0
- package/dist/types/src/db-host/queue-data-source.d.ts.map +1 -0
- package/dist/types/src/db-host/queue-service.test.d.ts +2 -0
- package/dist/types/src/db-host/queue-service.test.d.ts.map +1 -0
- package/dist/types/src/db-host/space-state-manager.d.ts +3 -2
- package/dist/types/src/db-host/space-state-manager.d.ts.map +1 -1
- package/dist/types/src/db-host/stub.d.ts +11 -0
- package/dist/types/src/db-host/stub.d.ts.map +1 -0
- package/dist/types/src/edge/echo-edge-replicator.d.ts +7 -6
- package/dist/types/src/edge/echo-edge-replicator.d.ts.map +1 -1
- package/dist/types/src/edge/echo-edge-subduction-replicator.d.ts +39 -0
- package/dist/types/src/edge/echo-edge-subduction-replicator.d.ts.map +1 -0
- package/dist/types/src/edge/echo-edge-subduction-replicator.test.d.ts +2 -0
- package/dist/types/src/edge/echo-edge-subduction-replicator.test.d.ts.map +1 -0
- package/dist/types/src/edge/index.d.ts +1 -0
- package/dist/types/src/edge/index.d.ts.map +1 -1
- package/dist/types/src/edge/inflight-request-limiter.d.ts.map +1 -1
- package/dist/types/src/filter/filter-match.d.ts +1 -1
- package/dist/types/src/filter/filter-match.d.ts.map +1 -1
- package/dist/types/src/metadata/metadata-store.d.ts.map +1 -1
- package/dist/types/src/pipeline/message-selector.d.ts.map +1 -1
- package/dist/types/src/pipeline/pipeline.d.ts +2 -2
- package/dist/types/src/pipeline/pipeline.d.ts.map +1 -1
- package/dist/types/src/pipeline/timeframe-clock.d.ts.map +1 -1
- package/dist/types/src/query/errors.d.ts +16 -20
- package/dist/types/src/query/errors.d.ts.map +1 -1
- package/dist/types/src/query/plan.d.ts +59 -8
- package/dist/types/src/query/plan.d.ts.map +1 -1
- package/dist/types/src/query/query-executor.d.ts +55 -12
- package/dist/types/src/query/query-executor.d.ts.map +1 -1
- package/dist/types/src/query/query-planner.d.ts +10 -1
- package/dist/types/src/query/query-planner.d.ts.map +1 -1
- package/dist/types/src/space/admission-discovery-extension.d.ts.map +1 -1
- package/dist/types/src/space/auth.d.ts +3 -3
- package/dist/types/src/space/auth.d.ts.map +1 -1
- package/dist/types/src/space/control-pipeline.d.ts +4 -3
- package/dist/types/src/space/control-pipeline.d.ts.map +1 -1
- package/dist/types/src/space/space-manager.d.ts +7 -7
- package/dist/types/src/space/space-manager.d.ts.map +1 -1
- package/dist/types/src/space/space-protocol.d.ts +9 -8
- package/dist/types/src/space/space-protocol.d.ts.map +1 -1
- package/dist/types/src/space/space.d.ts +5 -5
- package/dist/types/src/space/space.d.ts.map +1 -1
- package/dist/types/src/testing/change-metadata.d.ts.map +1 -1
- package/dist/types/src/testing/index.d.ts +0 -2
- package/dist/types/src/testing/index.d.ts.map +1 -1
- package/dist/types/src/testing/test-agent-builder.d.ts.map +1 -1
- package/dist/types/src/testing/test-feed-builder.d.ts.map +1 -1
- package/dist/types/src/testing/test-network-adapter.d.ts +1 -1
- package/dist/types/src/testing/test-network-adapter.d.ts.map +1 -1
- package/dist/types/src/testing/test-replicator.d.ts +13 -13
- package/dist/types/src/testing/test-replicator.d.ts.map +1 -1
- package/dist/types/src/util.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +56 -54
- package/src/automerge/automerge-host-subduction.test.ts +263 -0
- package/src/automerge/automerge-host.test.ts +145 -32
- package/src/automerge/automerge-host.ts +442 -163
- package/src/automerge/automerge-repo-subduction.test.ts +1054 -0
- package/src/automerge/automerge-repo.test.ts +284 -77
- package/src/automerge/automerge-subduction.test.ts +330 -0
- package/src/automerge/collection-synchronizer.test.ts +96 -16
- package/src/automerge/collection-synchronizer.ts +125 -26
- package/src/automerge/echo-network-adapter.test.ts +2 -1
- package/src/automerge/echo-network-adapter.ts +44 -32
- package/src/automerge/echo-replicator.ts +30 -16
- package/src/automerge/errors.ts +10 -0
- package/src/automerge/handle-state.ts +62 -0
- package/src/automerge/heads-store.ts +42 -3
- package/src/automerge/index.ts +2 -0
- package/src/automerge/leveldb-storage-adapter.ts +70 -4
- package/src/automerge/mesh-echo-replicator-connection.ts +8 -8
- package/src/automerge/mesh-echo-replicator.ts +14 -11
- package/src/db-host/automerge-data-source.test.ts +299 -0
- package/src/db-host/automerge-data-source.ts +187 -0
- package/src/db-host/data-service.ts +27 -10
- package/src/db-host/database-root.ts +19 -7
- package/src/db-host/documents-synchronizer.test.ts +145 -14
- package/src/db-host/documents-synchronizer.ts +158 -59
- package/src/db-host/echo-host.ts +376 -90
- package/src/db-host/index.ts +2 -0
- package/src/db-host/invalidation-hint.ts +50 -0
- package/src/db-host/local-queue-service.ts +127 -0
- package/src/db-host/query-invalidation.test.ts +270 -0
- package/src/db-host/query-service.ts +108 -111
- package/src/db-host/queue-data-source.ts +160 -0
- package/src/db-host/queue-service.test.ts +145 -0
- package/src/db-host/space-state-manager.ts +11 -9
- package/src/db-host/stub.ts +33 -0
- package/src/edge/echo-edge-replicator.test.ts +9 -9
- package/src/edge/echo-edge-replicator.ts +50 -42
- package/src/edge/echo-edge-subduction-replicator.test.ts +158 -0
- package/src/edge/echo-edge-subduction-replicator.ts +377 -0
- package/src/edge/index.ts +1 -0
- package/src/filter/filter-match.test.ts +41 -25
- package/src/filter/filter-match.ts +75 -20
- package/src/metadata/metadata-store.ts +8 -5
- package/src/pipeline/pipeline-stress.test.ts +1 -3
- package/src/pipeline/pipeline.test.ts +0 -1
- package/src/pipeline/pipeline.ts +2 -3
- package/src/query/errors.ts +2 -2
- package/src/query/plan.ts +73 -9
- package/src/query/query-executor.ts +1064 -172
- package/src/query/query-planner.test.ts +854 -86
- package/src/query/query-planner.ts +444 -38
- package/src/space/admission-discovery-extension.ts +1 -1
- package/src/space/auth.ts +6 -6
- package/src/space/control-pipeline.test.ts +2 -2
- package/src/space/control-pipeline.ts +7 -7
- package/src/space/space-manager.ts +12 -17
- package/src/space/space-protocol.browser.test.ts +13 -12
- package/src/space/space-protocol.test.ts +13 -13
- package/src/space/space-protocol.ts +16 -15
- package/src/space/space.test.ts +2 -2
- package/src/space/space.ts +9 -10
- package/src/testing/index.ts +0 -2
- package/src/testing/test-agent-builder.ts +0 -1
- package/src/testing/test-network-adapter.ts +24 -3
- package/src/testing/test-replicator.ts +15 -20
- package/src/util.ts +7 -3
- package/dist/lib/browser/chunk-CGS2ULMK.mjs +0 -11
- package/dist/lib/browser/chunk-CGS2ULMK.mjs.map +0 -7
- package/dist/lib/browser/chunk-FR6GJ4S4.mjs.map +0 -7
- package/dist/lib/browser/chunk-WJJXJTNS.mjs.map +0 -7
- package/dist/lib/browser/index.mjs +0 -5492
- package/dist/lib/browser/index.mjs.map +0 -7
- package/dist/lib/browser/meta.json +0 -1
- package/dist/lib/browser/testing/index.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +0 -11
- package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-JQCCVDLT.mjs +0 -2144
- package/dist/lib/node-esm/chunk-JQCCVDLT.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-LEQ77KAT.mjs +0 -240
- package/dist/lib/node-esm/chunk-LEQ77KAT.mjs.map +0 -7
- package/dist/lib/node-esm/filter/index.mjs +0 -13
- package/dist/lib/node-esm/filter/index.mjs.map +0 -7
- package/dist/lib/node-esm/index.mjs +0 -5492
- package/dist/lib/node-esm/index.mjs.map +0 -7
- package/dist/lib/node-esm/meta.json +0 -1
- package/dist/lib/node-esm/testing/index.mjs +0 -764
- package/dist/lib/node-esm/testing/index.mjs.map +0 -7
- package/dist/types/src/db-host/documents-iterator.d.ts +0 -7
- package/dist/types/src/db-host/documents-iterator.d.ts.map +0 -1
- package/dist/types/src/testing/test-data.d.ts +0 -18
- package/dist/types/src/testing/test-data.d.ts.map +0 -1
- package/dist/types/src/testing/test-schema.d.ts +0 -37
- package/dist/types/src/testing/test-schema.d.ts.map +0 -1
- package/src/db-host/documents-iterator.ts +0 -74
- package/src/testing/test-data.ts +0 -127
- package/src/testing/test-schema.ts +0 -53
- /package/dist/lib/{browser → neutral}/filter/index.mjs.map +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/db-host/index.ts"],"names":[],"mappings":"AAIA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,0BAA0B,CAAC;AACzC,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/db-host/index.ts"],"names":[],"mappings":"AAIA,cAAc,yBAAyB,CAAC;AACxC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,0BAA0B,CAAC;AACzC,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { IndexingResult } from '@dxos/index-core';
|
|
2
|
+
import type { ObjectId, SpaceId } from '@dxos/keys';
|
|
3
|
+
export type InvalidationHint = {
|
|
4
|
+
spaceIds?: ReadonlySet<SpaceId>;
|
|
5
|
+
queueIds?: ReadonlySet<ObjectId>;
|
|
6
|
+
typenames?: ReadonlySet<string>;
|
|
7
|
+
objectIds?: ReadonlySet<ObjectId>;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Converts an IndexingResult to an InvalidationHint.
|
|
11
|
+
* Returns undefined when nothing was indexed (no need to invalidate).
|
|
12
|
+
*/
|
|
13
|
+
export declare const hintFromIndexingResult: (r: IndexingResult) => InvalidationHint | undefined;
|
|
14
|
+
/**
|
|
15
|
+
* Merges two hints for the same tick.
|
|
16
|
+
* If either side leaves a dimension unconstrained (undefined), the merged result is also unconstrained on that dimension.
|
|
17
|
+
*/
|
|
18
|
+
export declare const mergeHints: (a: InvalidationHint, b: InvalidationHint) => InvalidationHint;
|
|
19
|
+
//# sourceMappingURL=invalidation-hint.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invalidation-hint.d.ts","sourceRoot":"","sources":["../../../../src/db-host/invalidation-hint.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAEpD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAChC,QAAQ,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IACjC,SAAS,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAChC,SAAS,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;CACnC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,sBAAsB,MAAO,cAAc,KAAG,gBAAgB,GAAG,SAU7E,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,MAAO,gBAAgB,KAAK,gBAAgB,KAAG,gBAKpE,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type * as SqlClient from '@effect/sql/SqlClient';
|
|
2
|
+
import { type RequestOptions } from '@dxos/codec-protobuf';
|
|
3
|
+
import { Context } from '@dxos/context';
|
|
4
|
+
import { RuntimeProvider } from '@dxos/effect';
|
|
5
|
+
import { type FeedStore } from '@dxos/feed';
|
|
6
|
+
import { type DeleteFromQueueRequest, type InsertIntoQueueRequest, type QueryQueueRequest, type QueueQueryResult, type QueueService, type SyncQueueRequest } from '@dxos/protocols/proto/dxos/client/services';
|
|
7
|
+
import type { SqlTransaction } from '@dxos/sql-sqlite';
|
|
8
|
+
/**
|
|
9
|
+
* Writes queue data to a local FeedStore.
|
|
10
|
+
*/
|
|
11
|
+
export declare class LocalQueueServiceImpl implements QueueService {
|
|
12
|
+
#private;
|
|
13
|
+
constructor(runtime: RuntimeProvider.RuntimeProvider<SqlClient.SqlClient | SqlTransaction.SqlTransaction>, feedStore: FeedStore, syncQueue?: (ctx: Context, request: SyncQueueRequest) => Promise<void>);
|
|
14
|
+
queryQueue(request: QueryQueueRequest): Promise<QueueQueryResult>;
|
|
15
|
+
insertIntoQueue(request: InsertIntoQueueRequest): Promise<void>;
|
|
16
|
+
deleteFromQueue(request: DeleteFromQueueRequest): Promise<void>;
|
|
17
|
+
syncQueue(request: SyncQueueRequest, options?: RequestOptions): Promise<void>;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=local-queue-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-queue-service.d.ts","sourceRoot":"","sources":["../../../../src/db-host/local-queue-service.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,SAAS,MAAM,uBAAuB,CAAC;AAIxD,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAI5C,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACtB,MAAM,4CAA4C,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD;;GAEG;AACH,qBAAa,qBAAsB,YAAW,YAAY;;IAKxD,YACE,OAAO,EAAE,eAAe,CAAC,eAAe,CAAC,SAAS,CAAC,SAAS,GAAG,cAAc,CAAC,cAAc,CAAC,EAC7F,SAAS,EAAE,SAAS,EACpB,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,EAKvE;IAED,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAgChE;IAED,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoB9D;IAED,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoB9D;IAEK,SAAS,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAElF;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-invalidation.test.d.ts","sourceRoot":"","sources":["../../../../src/db-host/query-invalidation.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,32 +1,40 @@
|
|
|
1
|
+
import type * as SqlClient from '@effect/sql/SqlClient';
|
|
1
2
|
import { Stream } from '@dxos/codec-protobuf/stream';
|
|
2
3
|
import { Resource } from '@dxos/context';
|
|
3
|
-
import { type
|
|
4
|
-
import { type
|
|
4
|
+
import { type RuntimeProvider } from '@dxos/effect';
|
|
5
|
+
import { type IndexEngine } from '@dxos/index-core';
|
|
5
6
|
import { type QueryRequest, type QueryResponse, type QueryService } from '@dxos/protocols/proto/dxos/echo/query';
|
|
6
7
|
import { type AutomergeHost } from '../automerge';
|
|
8
|
+
import { type InvalidationHint } from './invalidation-hint';
|
|
7
9
|
import type { SpaceStateManager } from './space-state-manager';
|
|
8
|
-
export type
|
|
9
|
-
|
|
10
|
+
export type QueryServiceProps = {
|
|
11
|
+
indexEngine: IndexEngine;
|
|
12
|
+
runtime: RuntimeProvider.RuntimeProvider<SqlClient.SqlClient>;
|
|
10
13
|
automergeHost: AutomergeHost;
|
|
11
14
|
spaceStateManager: SpaceStateManager;
|
|
12
15
|
};
|
|
13
16
|
export declare class QueryServiceImpl extends Resource implements QueryService {
|
|
17
|
+
#private;
|
|
14
18
|
private readonly _params;
|
|
15
19
|
private readonly _queries;
|
|
16
20
|
private _updateQueries;
|
|
17
|
-
constructor(_params:
|
|
21
|
+
constructor(_params: QueryServiceProps);
|
|
18
22
|
_open(): Promise<void>;
|
|
19
23
|
_close(): Promise<void>;
|
|
20
|
-
setConfig(config: IndexConfig): Promise<void>;
|
|
21
|
-
execQuery(request: QueryRequest): Stream<QueryResponse>;
|
|
22
24
|
/**
|
|
23
|
-
*
|
|
25
|
+
* @deprecated No longer needed with SQL-based indexing.
|
|
26
|
+
*/
|
|
27
|
+
setConfig(): Promise<void>;
|
|
28
|
+
/**
|
|
29
|
+
* @deprecated No longer needed with SQL-based indexing.
|
|
24
30
|
*/
|
|
25
31
|
reindex(): Promise<void>;
|
|
32
|
+
execQuery(request: QueryRequest): Stream<QueryResponse>;
|
|
26
33
|
/**
|
|
27
|
-
* Schedule re-execution of
|
|
34
|
+
* Schedule re-execution of queries, optionally guided by a targeted hint.
|
|
35
|
+
* When called without a hint, all queries are marked dirty (catch-all invalidation).
|
|
28
36
|
*/
|
|
29
|
-
invalidateQueries(): void;
|
|
37
|
+
invalidateQueries(hint?: InvalidationHint): void;
|
|
30
38
|
private _createQuery;
|
|
31
39
|
private _executeQueries;
|
|
32
40
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-service.d.ts","sourceRoot":"","sources":["../../../../src/db-host/query-service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"query-service.d.ts","sourceRoot":"","sources":["../../../../src/db-host/query-service.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,SAAS,MAAM,uBAAuB,CAAC;AAIxD,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AACrD,OAAO,EAAgB,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGvD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,aAAa,EAElB,KAAK,YAAY,EAClB,MAAM,uCAAuC,CAAC;AAG/C,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,EAAE,KAAK,gBAAgB,EAAc,MAAM,qBAAqB,CAAC;AACxE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,eAAe,CAAC,eAAe,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAC9D,aAAa,EAAE,aAAa,CAAC;IAC7B,iBAAiB,EAAE,iBAAiB,CAAC;CACtC,CAAC;AAgCF,qBACa,gBAAiB,SAAQ,QAAS,YAAW,YAAY;;IAqBxD,OAAO,CAAC,QAAQ,CAAC,OAAO;IAnBpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA0B;IAEnD,OAAO,CAAC,cAAc,CAAgB;IAiBtC,YAA6B,OAAO,EAAE,iBAAiB,EAsBtD;IAEc,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAEpC;IAGc,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAGrC;IAED;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAE/B;IAED;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAG7B;IAED,SAAS,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,CAAC,aAAa,CAAC,CAUtD;IAED;;;OAGG;IACH,iBAAiB,CAAC,IAAI,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAY/C;IAED,OAAO,CAAC,YAAY;YAuCN,eAAe;CA2D9B"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type * as SqlClient from '@effect/sql/SqlClient';
|
|
2
|
+
import * as Effect from 'effect/Effect';
|
|
3
|
+
import { type Context } from '@dxos/context';
|
|
4
|
+
import { RuntimeProvider } from '@dxos/effect';
|
|
5
|
+
import { type FeedStore } from '@dxos/feed';
|
|
6
|
+
import { type DataSourceCursor, type IndexDataSource, type IndexerObject } from '@dxos/index-core';
|
|
7
|
+
import type { SpaceId } from '@dxos/keys';
|
|
8
|
+
export type QueueDataSourceOptions = {
|
|
9
|
+
feedStore: FeedStore;
|
|
10
|
+
runtime: RuntimeProvider.RuntimeProvider<SqlClient.SqlClient>;
|
|
11
|
+
/**
|
|
12
|
+
* Callback to get the list of space IDs that should be indexed.
|
|
13
|
+
*/
|
|
14
|
+
getSpaceIds: () => SpaceId[];
|
|
15
|
+
/**
|
|
16
|
+
* Feed namespaces to index.
|
|
17
|
+
* @default [WellKnownNamespaces.data, WellKnownNamespaces.trace]
|
|
18
|
+
*/
|
|
19
|
+
feedNamespaces?: string[];
|
|
20
|
+
};
|
|
21
|
+
export declare class QueueDataSource implements IndexDataSource {
|
|
22
|
+
readonly sourceName = "queue";
|
|
23
|
+
/**
|
|
24
|
+
* Feed namespaces to index.
|
|
25
|
+
*/
|
|
26
|
+
private readonly _feedNamespaces;
|
|
27
|
+
private readonly _feedStore;
|
|
28
|
+
private readonly _runtime;
|
|
29
|
+
private readonly _getSpaceIds;
|
|
30
|
+
constructor(options: QueueDataSourceOptions);
|
|
31
|
+
getChangedObjects(_ctx: Context, cursors: DataSourceCursor[], opts?: {
|
|
32
|
+
limit?: number;
|
|
33
|
+
}): Effect.Effect<{
|
|
34
|
+
objects: IndexerObject[];
|
|
35
|
+
cursors: DataSourceCursor[];
|
|
36
|
+
}>;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=queue-data-source.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue-data-source.d.ts","sourceRoot":"","sources":["../../../../src/db-host/queue-data-source.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,SAAS,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAG7C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,eAAe,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEnG,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAI1C,MAAM,MAAM,sBAAsB,GAAG;IACnC,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,eAAe,CAAC,eAAe,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAC9D;;OAEG;IACH,WAAW,EAAE,MAAM,OAAO,EAAE,CAAC;IAE7B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B,CAAC;AAEF,qBAAa,eAAgB,YAAW,eAAe;IACrD,QAAQ,CAAC,UAAU,WAAW;IAE9B;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAW;IAC3C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;IACvC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuD;IAChF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkB;IAE/C,YAAY,OAAO,EAAE,sBAAsB,EAQ1C;IAED,iBAAiB,CACf,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,gBAAgB,EAAE,EAC3B,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GACxB,MAAM,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,aAAa,EAAE,CAAC;QAAC,OAAO,EAAE,gBAAgB,EAAE,CAAA;KAAE,CAAC,CAoG1E;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue-service.test.d.ts","sourceRoot":"","sources":["../../../../src/db-host/queue-service.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type DocumentId, type DocumentQuery } from '@automerge/automerge-repo';
|
|
2
2
|
import { Event } from '@dxos/async';
|
|
3
3
|
import { Context, Resource } from '@dxos/context';
|
|
4
4
|
import { type DatabaseDirectory } from '@dxos/echo-protocol';
|
|
@@ -12,10 +12,11 @@ export declare class SpaceStateManager extends Resource {
|
|
|
12
12
|
readonly spaceDocumentListUpdated: Event<SpaceDocumentListUpdatedEvent>;
|
|
13
13
|
protected _close(ctx: Context): Promise<void>;
|
|
14
14
|
get roots(): ReadonlyMap<DocumentId, DatabaseRoot>;
|
|
15
|
+
get spaceIds(): SpaceId[];
|
|
15
16
|
getRootByDocumentId(documentId: DocumentId): DatabaseRoot | undefined;
|
|
16
17
|
getSpaceRootDocumentId(spaceId: SpaceId): DocumentId | undefined;
|
|
17
18
|
getRootBySpaceId(spaceId: SpaceId): DatabaseRoot | undefined;
|
|
18
|
-
assignRootToSpace(spaceId: SpaceId,
|
|
19
|
+
assignRootToSpace(spaceId: SpaceId, query: DocumentQuery<DatabaseDirectory>): Promise<DatabaseRoot>;
|
|
19
20
|
}
|
|
20
21
|
export declare class SpaceDocumentListUpdatedEvent {
|
|
21
22
|
readonly spaceId: SpaceId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"space-state-manager.d.ts","sourceRoot":"","sources":["../../../../src/db-host/space-state-manager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"space-state-manager.d.ts","sourceRoot":"","sources":["../../../../src/db-host/space-state-manager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,aAAa,EAAyB,MAAM,2BAA2B,CAAC;AAGvG,OAAO,EAAE,KAAK,EAAmB,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,OAAO,EAAkB,QAAQ,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,qBAAa,iBAAkB,SAAQ,QAAQ;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuC;IAC9D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkC;IAC/D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkC;IAClE,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAoC;IAE3E,SAAgB,wBAAwB,uCAA8C;IAEtF,UAAyB,MAAM,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAK3D;IAED,IAAI,KAAK,IAAI,WAAW,CAAC,UAAU,EAAE,YAAY,CAAC,CAEjD;IAED,IAAI,QAAQ,IAAI,OAAO,EAAE,CAExB;IAED,mBAAmB,CAAC,UAAU,EAAE,UAAU,GAAG,YAAY,GAAG,SAAS,CAEpE;IAED,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS,CAE/D;IAED,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,YAAY,GAAG,SAAS,CAO3D;IAEK,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,CAAC,iBAAiB,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CA4CxG;CACF;AAED,qBAAa,6BAA6B;aAEtB,OAAO,EAAE,OAAO;aAChB,WAAW,EAAE,UAAU;aACvB,cAAc,EAAE,UAAU,GAAG,SAAS;aACtC,WAAW,EAAE,UAAU,EAAE;IAJ3C,YACkB,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,UAAU,EACvB,cAAc,EAAE,UAAU,GAAG,SAAS,EACtC,WAAW,EAAE,UAAU,EAAE,EACvC;CACL"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { DeleteFromQueueRequest, InsertIntoQueueRequest, QueryQueueRequest, QueueQueryResult, QueueService, SyncQueueRequest } from '@dxos/protocols/proto/dxos/client/services';
|
|
2
|
+
/**
|
|
3
|
+
* Stub implementation for when Edge is not available.
|
|
4
|
+
*/
|
|
5
|
+
export declare class QueueServiceStub implements QueueService {
|
|
6
|
+
queryQueue(request: QueryQueueRequest): Promise<QueueQueryResult>;
|
|
7
|
+
insertIntoQueue(request: InsertIntoQueueRequest): Promise<void>;
|
|
8
|
+
deleteFromQueue(request: DeleteFromQueueRequest): Promise<void>;
|
|
9
|
+
syncQueue(request: SyncQueueRequest): Promise<void>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=stub.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stub.d.ts","sourceRoot":"","sources":["../../../../src/db-host/stub.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,sBAAsB,EACtB,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EACjB,MAAM,4CAA4C,CAAC;AAEpD;;GAEG;AACH,qBAAa,gBAAiB,YAAW,YAAY;IACnD,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAEhE;IAED,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE9D;IAED,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE9D;IAED,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAElD;CACF"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
+
import { Context } from '@dxos/context';
|
|
1
2
|
import { type EdgeConnection, type EdgeHttpClient } from '@dxos/edge-client';
|
|
2
3
|
import type { SpaceId } from '@dxos/keys';
|
|
3
|
-
import { type
|
|
4
|
-
export type
|
|
4
|
+
import { type AutomergeReplicatorContext, type EdgeAutomergeReplicator } from '../automerge';
|
|
5
|
+
export type EchoEdgeReplicatorProps = {
|
|
5
6
|
edgeConnection: EdgeConnection;
|
|
6
7
|
edgeHttpClient: EdgeHttpClient;
|
|
7
8
|
disableSharePolicy?: boolean;
|
|
8
9
|
};
|
|
9
|
-
export declare class EchoEdgeReplicator implements
|
|
10
|
+
export declare class EchoEdgeReplicator implements EdgeAutomergeReplicator {
|
|
10
11
|
private readonly _edgeConnection;
|
|
11
12
|
private readonly _edgeHttpClient;
|
|
12
13
|
private readonly _mutex;
|
|
@@ -15,11 +16,11 @@ export declare class EchoEdgeReplicator implements EchoReplicator {
|
|
|
15
16
|
private _connectedSpaces;
|
|
16
17
|
private _connections;
|
|
17
18
|
private _sharePolicyEnabled;
|
|
18
|
-
constructor({ edgeConnection, edgeHttpClient, disableSharePolicy }:
|
|
19
|
-
connect(context:
|
|
19
|
+
constructor({ edgeConnection, edgeHttpClient, disableSharePolicy }: EchoEdgeReplicatorProps);
|
|
20
|
+
connect(ctx: Context, context: AutomergeReplicatorContext): Promise<void>;
|
|
20
21
|
private _handleReconnect;
|
|
21
22
|
disconnect(): Promise<void>;
|
|
22
|
-
connectToSpace(spaceId: SpaceId): Promise<void>;
|
|
23
|
+
connectToSpace(ctx: Context, spaceId: SpaceId): Promise<void>;
|
|
23
24
|
disconnectFromSpace(spaceId: SpaceId): Promise<void>;
|
|
24
25
|
private _openConnection;
|
|
25
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"echo-edge-replicator.d.ts","sourceRoot":"","sources":["../../../../src/edge/echo-edge-replicator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"echo-edge-replicator.d.ts","sourceRoot":"","sources":["../../../../src/edge/echo-edge-replicator.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,OAAO,EAAY,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAE7E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAmB1C,OAAO,EAEL,KAAK,0BAA0B,EAC/B,KAAK,uBAAuB,EAI7B,MAAM,cAAc,CAAC;AAUtB,MAAM,MAAM,uBAAuB,GAAG;IACpC,cAAc,EAAE,cAAc,CAAC;IAC/B,cAAc,EAAE,cAAc,CAAC;IAC/B,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,CAAC;AAEF,qBACa,kBAAmB,YAAW,uBAAuB;IAChE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiB;IACjD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiB;IACjD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IAEtC,OAAO,CAAC,IAAI,CAAC,CAAsB;IACnC,OAAO,CAAC,QAAQ,CAA2C;IAC3D,OAAO,CAAC,gBAAgB,CAAsB;IAC9C,OAAO,CAAC,YAAY,CAAgD;IACpE,OAAO,CAAC,mBAAmB,CAAQ;IAEnC,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAE,uBAAuB,EAI1F;IAEK,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,IAAI,CAAC,CAS9E;YAEa,gBAAgB;IAgBxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAQhC;IAGK,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAYlE;IAEK,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAUzD;YAGa,eAAe;CAwD9B"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Context } from '@dxos/context';
|
|
2
|
+
import { type EdgeConnection, type EdgeHttpClient } from '@dxos/edge-client';
|
|
3
|
+
import type { SpaceId } from '@dxos/keys';
|
|
4
|
+
import { type AutomergeReplicatorContext, type EdgeAutomergeReplicator } from '../automerge';
|
|
5
|
+
export type EchoEdgeSubductionReplicatorProps = {
|
|
6
|
+
edgeConnection: EdgeConnection;
|
|
7
|
+
edgeHttpClient: EdgeHttpClient;
|
|
8
|
+
disableSharePolicy?: boolean;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Edge replicator for the Subduction transport.
|
|
12
|
+
*
|
|
13
|
+
* Subduction byte tunnel over the Edge router WebSocket. Every inbound router message
|
|
14
|
+
* targeting the subduction service is forwarded verbatim to the local Repo via an
|
|
15
|
+
* {@link AutomergeReplicatorConnection}. Outbound repo messages are wrapped in a router
|
|
16
|
+
* frame and sent to the edge.
|
|
17
|
+
*
|
|
18
|
+
* No classical automerge-repo sync, collection-query/state, bundle sync, or rate-limiting
|
|
19
|
+
* runs through this class — Subduction's sedimentree protocol replaces those
|
|
20
|
+
* responsibilities. For the classical sync path see {@link EchoEdgeReplicator}.
|
|
21
|
+
*/
|
|
22
|
+
export declare class EchoEdgeSubductionReplicator implements EdgeAutomergeReplicator {
|
|
23
|
+
private readonly _edgeConnection;
|
|
24
|
+
private readonly _edgeHttpClient;
|
|
25
|
+
private readonly _mutex;
|
|
26
|
+
private readonly _disableSharePolicy;
|
|
27
|
+
private _ctx?;
|
|
28
|
+
private _context;
|
|
29
|
+
private _connectedSpaces;
|
|
30
|
+
private _connections;
|
|
31
|
+
constructor({ edgeConnection, edgeHttpClient, disableSharePolicy }: EchoEdgeSubductionReplicatorProps);
|
|
32
|
+
connect(ctx: Context, context: AutomergeReplicatorContext): Promise<void>;
|
|
33
|
+
private _handleReconnect;
|
|
34
|
+
disconnect(): Promise<void>;
|
|
35
|
+
connectToSpace(ctx: Context, spaceId: SpaceId): Promise<void>;
|
|
36
|
+
disconnectFromSpace(spaceId: SpaceId): Promise<void>;
|
|
37
|
+
private _openConnection;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=echo-edge-subduction-replicator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"echo-edge-subduction-replicator.d.ts","sourceRoot":"","sources":["../../../../src/edge/echo-edge-subduction-replicator.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAY,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAE7E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAW1C,OAAO,EAEL,KAAK,0BAA0B,EAC/B,KAAK,uBAAuB,EAI7B,MAAM,cAAc,CAAC;AAStB,MAAM,MAAM,iCAAiC,GAAG;IAC9C,cAAc,EAAE,cAAc,CAAC;IAC/B,cAAc,EAAE,cAAc,CAAC;IAC/B,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,qBACa,4BAA6B,YAAW,uBAAuB;IAC1E,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiB;IACjD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiB;IACjD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IACtC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAU;IAE9C,OAAO,CAAC,IAAI,CAAC,CAAsB;IACnC,OAAO,CAAC,QAAQ,CAA2C;IAC3D,OAAO,CAAC,gBAAgB,CAAsB;IAC9C,OAAO,CAAC,YAAY,CAA0D;IAE9E,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAE,iCAAiC,EAIpG;IAEK,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,IAAI,CAAC,CAS9E;YAEa,gBAAgB;IAgBxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAQhC;IAGK,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAYlE;IAEK,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAUzD;YAEa,eAAe;CAuD9B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"echo-edge-subduction-replicator.test.d.ts","sourceRoot":"","sources":["../../../../src/edge/echo-edge-subduction-replicator.test.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/edge/index.ts"],"names":[],"mappings":"AAIA,cAAc,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/edge/index.ts"],"names":[],"mappings":"AAIA,cAAc,wBAAwB,CAAC;AACvC,cAAc,mCAAmC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inflight-request-limiter.d.ts","sourceRoot":"","sources":["../../../../src/edge/inflight-request-limiter.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAEhE,KAAK,4BAA4B,GAAG;IAClC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,qBAAqB,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,qBAAa,sBAAuB,SAAQ,QAAQ;IAUtC,OAAO,CAAC,QAAQ,CAAC,OAAO;IATpC;;;;OAIG;IACH,OAAO,CAAC,uBAAuB,CAAK;IACpC,OAAO,CAAC,eAAe,CAAiB;IACxC,OAAO,CAAC,oBAAoB,CAA6B;
|
|
1
|
+
{"version":3,"file":"inflight-request-limiter.d.ts","sourceRoot":"","sources":["../../../../src/edge/inflight-request-limiter.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAEhE,KAAK,4BAA4B,GAAG;IAClC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,qBAAqB,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,qBAAa,sBAAuB,SAAQ,QAAQ;IAUtC,OAAO,CAAC,QAAQ,CAAC,OAAO;IATpC;;;;OAIG;IACH,OAAO,CAAC,uBAAuB,CAAK;IACpC,OAAO,CAAC,eAAe,CAAiB;IACxC,OAAO,CAAC,oBAAoB,CAA6B;IAEzD,YAA6B,OAAO,EAAE,4BAA4B,EAEjE;IAED,UAAyB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAI9C;IAED,UAAyB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAI/C;IAEY,SAAS,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBvE;IAEM,cAAc,CAAC,OAAO,EAAE,wBAAwB,GAAG,IAAI,CAS7D;CACF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { type ObjectJSON } from '@dxos/echo/internal';
|
|
2
1
|
import { ObjectStructure, type QueryAST } from '@dxos/echo-protocol';
|
|
2
|
+
import { type ObjectJSON } from '@dxos/echo/internal';
|
|
3
3
|
import { type ObjectId, type SpaceId } from '@dxos/keys';
|
|
4
4
|
export type MatchedObject = {
|
|
5
5
|
id: ObjectId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter-match.d.ts","sourceRoot":"","sources":["../../../../src/filter/filter-match.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"filter-match.d.ts","sourceRoot":"","sources":["../../../../src/filter/filter-match.ts"],"names":[],"mappings":"AAMA,OAAO,EAAoB,eAAe,EAAE,KAAK,QAAQ,EAAsB,MAAM,qBAAqB,CAAC;AAC3G,OAAO,EAAa,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAO,KAAK,QAAQ,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AAE9D,MAAM,MAAM,aAAa,GAAG;IAC1B,EAAE,EAAE,QAAQ,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,eAAe,CAAC;CACtB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,WAAY,QAAQ,CAAC,MAAM,OAAO,aAAa,KAAG,OAuF/E,CAAC;AA8BF,eAAO,MAAM,qBAAqB,WAAY,QAAQ,CAAC,MAAM,OAAO,UAAU,KAAG,OA2FhF,CAAC;AAsCF,eAAO,MAAM,gBAAgB,WAAY,QAAQ,CAAC,MAAM,SAAS,OAAO,KAAG,OA4E1E,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata-store.d.ts","sourceRoot":"","sources":["../../../../src/metadata/metadata-store.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAsC,MAAM,aAAa,CAAC;AAIxE,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAIvC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,YAAY,EACjB,KAAK,sBAAsB,EAC3B,KAAK,cAAc,EAEnB,KAAK,UAAU,EACf,KAAK,aAAa,EACnB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,KAAK,SAAS,EAAa,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAKjD,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,SAAS,CAAC;IACf,WAAW,EAAE,SAAS,CAAC;CACxB;AAWD,QAAA,MAAM,YAAY,yDAA4D,CAAC;AAG/E,qBAAa,aAAa;IACxB,OAAO,CAAC,SAAS,CAAqC;IACtD,OAAO,CAAC,mBAAmB,CAAiE;IAE5F,OAAO,CAAC,aAAa,CAAC,CAAmB;IAEzC,SAAgB,MAAM,sBAA6B;IACnD,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;
|
|
1
|
+
{"version":3,"file":"metadata-store.d.ts","sourceRoot":"","sources":["../../../../src/metadata/metadata-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-selector.d.ts","sourceRoot":"","sources":["../../../../src/pipeline/message-selector.ts"],"names":[],"mappings":"AAIA,OAAO,EAAkB,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAG1E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAExE,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,
|
|
1
|
+
{"version":3,"file":"message-selector.d.ts","sourceRoot":"","sources":["../../../../src/pipeline/message-selector.ts"],"names":[],"mappings":"AAIA,OAAO,EAAkB,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAG1E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAExE,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,mBAAoB,cAAc,KAAG,iBAAiB,CAAC,WAAW,CAiBnG,CAAC"}
|
|
@@ -7,7 +7,7 @@ import type { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
|
7
7
|
import { Timeframe } from '@dxos/timeframe';
|
|
8
8
|
import { ComplexMap } from '@dxos/util';
|
|
9
9
|
import { TimeframeClock } from './timeframe-clock';
|
|
10
|
-
export type
|
|
10
|
+
export type WaitUntilReachedTargetProps = {
|
|
11
11
|
/**
|
|
12
12
|
* For cancellation.
|
|
13
13
|
*/
|
|
@@ -51,7 +51,7 @@ export declare class PipelineState {
|
|
|
51
51
|
*
|
|
52
52
|
* @param timeout Timeout in milliseconds to specify the maximum wait time.
|
|
53
53
|
*/
|
|
54
|
-
waitUntilReachedTargetTimeframe({ ctx, timeout, breakOnStall
|
|
54
|
+
waitUntilReachedTargetTimeframe({ ctx, timeout, breakOnStall }?: WaitUntilReachedTargetProps): Promise<void>;
|
|
55
55
|
}
|
|
56
56
|
export interface PipelineAccessor {
|
|
57
57
|
state: PipelineState;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../../../src/pipeline/pipeline.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAA2C,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAmB,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAmB,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEtF,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../../../src/pipeline/pipeline.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeframe-clock.d.ts","sourceRoot":"","sources":["../../../../src/pipeline/timeframe-clock.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,eAAO,MAAM,yBAAyB,
|
|
1
|
+
{"version":3,"file":"timeframe-clock.d.ts","sourceRoot":"","sources":["../../../../src/pipeline/timeframe-clock.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,eAAO,MAAM,yBAAyB,cAAe,SAAS,KAAG,SAAS,EACN,CAAC;AAErE,eAAO,MAAM,yBAAyB,YAAa,SAAS,EAAE,KAAG,SACK,CAAC;AAEvE,eAAO,MAAM,UAAU,cAAe,SAAS,KAAG,SAAS,EACoB,CAAC;AAEhF;;GAEG;AACH,qBAAa,cAAc;IAKb,OAAO,CAAC,UAAU;IAJ9B,QAAQ,CAAC,MAAM,mBAA0B;IAEzC,OAAO,CAAC,iBAAiB,CAAY;IAErC,YAAoB,UAAU,YAAkB,EAE/C;IAED;;OAEG;IACH,IAAI,SAAS,cAEZ;IAED;;;OAGG;IACH,IAAI,gBAAgB,cAEnB;IAED,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI,CAIvC;IAED,sBAAsB,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAExD;IAED,eAAe,IAAI,IAAI,CAGtB;IAED,OAAO,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAGrC;IAGK,gBAAgB,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAWvD;CACF"}
|
|
@@ -1,31 +1,27 @@
|
|
|
1
1
|
import { BaseError } from '@dxos/errors';
|
|
2
2
|
declare const QueryError_base: {
|
|
3
3
|
new (options?: import("@dxos/errors").BaseErrorOptions): {
|
|
4
|
-
"__#private@#code": "QUERY_ERROR";
|
|
5
|
-
"__#private@#context": Record<string, unknown>;
|
|
6
|
-
readonly name: "QUERY_ERROR";
|
|
7
|
-
readonly message: string;
|
|
8
|
-
readonly code: "QUERY_ERROR";
|
|
9
|
-
readonly _tag: "QUERY_ERROR";
|
|
10
|
-
readonly context: Record<string, unknown>;
|
|
11
|
-
stack?: string;
|
|
12
4
|
cause?: unknown;
|
|
5
|
+
stack?: string;
|
|
6
|
+
name: "QueryError";
|
|
7
|
+
context: Record<string, unknown>;
|
|
8
|
+
readonly message: string;
|
|
9
|
+
readonly _tag: "QueryError";
|
|
13
10
|
};
|
|
14
|
-
|
|
11
|
+
isError(error: unknown): error is Error;
|
|
12
|
+
name: "QueryError";
|
|
15
13
|
is(error: unknown): error is BaseError;
|
|
16
|
-
wrap(options?: Omit<import("@dxos/errors").BaseErrorOptions,
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
readonly name: "QUERY_ERROR";
|
|
20
|
-
readonly message: string;
|
|
21
|
-
readonly code: "QUERY_ERROR";
|
|
22
|
-
readonly _tag: "QUERY_ERROR";
|
|
23
|
-
readonly context: Record<string, unknown>;
|
|
24
|
-
stack?: string;
|
|
14
|
+
wrap(options?: Omit<import("@dxos/errors").BaseErrorOptions, 'cause'> & {
|
|
15
|
+
ifTypeDiffers?: boolean;
|
|
16
|
+
}): (error: unknown) => {
|
|
25
17
|
cause?: unknown;
|
|
18
|
+
stack?: string;
|
|
19
|
+
name: "QueryError";
|
|
20
|
+
context: Record<string, unknown>;
|
|
21
|
+
readonly message: string;
|
|
22
|
+
readonly _tag: "QueryError";
|
|
26
23
|
};
|
|
27
|
-
extend<
|
|
28
|
-
isError(error: unknown): error is Error;
|
|
24
|
+
extend<Name extends string = string>(name: Name, message?: string): any;
|
|
29
25
|
captureStackTrace(targetObject: object, constructorOpt?: Function): void;
|
|
30
26
|
prepareStackTrace?: ((err: Error, stackTraces: NodeJS.CallSite[]) => any) | undefined;
|
|
31
27
|
stackTraceLimit: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../src/query/errors.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../src/query/errors.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEzC,qBAAa,UAAW,SAAQ,eAA8B;CAAG;;AAEjE,qBAAa,iBAAkB,SAAQ,sBAAsC;CAAG"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { QueryAST } from '@dxos/echo-protocol';
|
|
2
|
-
import type { EscapedPropPath } from '@dxos/
|
|
3
|
-
import type { DXN, ObjectId
|
|
2
|
+
import type { EscapedPropPath } from '@dxos/index-core';
|
|
3
|
+
import type { DXN, ObjectId } from '@dxos/keys';
|
|
4
4
|
export declare namespace QueryPlan {
|
|
5
5
|
type TextSearchKind = 'full-text' | 'vector' | 'hybrid';
|
|
6
6
|
/**
|
|
@@ -17,7 +17,7 @@ export declare namespace QueryPlan {
|
|
|
17
17
|
const Plan: Readonly<{
|
|
18
18
|
make: (steps: Step[]) => Plan;
|
|
19
19
|
}>;
|
|
20
|
-
type Step = ClearWorkingSetStep | SelectStep | FilterStep | FilterDeletedStep | TraverseStep | UnionStep | SetDifferenceStep | OrderStep;
|
|
20
|
+
type Step = ClearWorkingSetStep | SelectStep | FilterStep | FilterDeletedStep | TraverseStep | UnionStep | SetDifferenceStep | OrderStep | LimitStep;
|
|
21
21
|
/**
|
|
22
22
|
* Clear the current working set.
|
|
23
23
|
*/
|
|
@@ -26,18 +26,30 @@ export declare namespace QueryPlan {
|
|
|
26
26
|
};
|
|
27
27
|
/**
|
|
28
28
|
* Select objects based on id, typename, or other predicates.
|
|
29
|
-
* Specifies the spaces to select from.
|
|
29
|
+
* Specifies the spaces and/or queues to select from.
|
|
30
|
+
* The results from spaces and queues are unioned together.
|
|
30
31
|
*/
|
|
31
32
|
type SelectStep = {
|
|
32
33
|
_tag: 'SelectStep';
|
|
33
|
-
|
|
34
|
+
/**
|
|
35
|
+
* What to select from the scope.
|
|
36
|
+
*/
|
|
34
37
|
selector: Selector;
|
|
38
|
+
/**
|
|
39
|
+
* Where to select from.
|
|
40
|
+
*/
|
|
41
|
+
scope: QueryAST.Scope;
|
|
42
|
+
/**
|
|
43
|
+
* Optional limit on the number of results to select.
|
|
44
|
+
* When set, the index scan can be optimized to stop early.
|
|
45
|
+
*/
|
|
46
|
+
limit?: number;
|
|
35
47
|
};
|
|
36
48
|
/**
|
|
37
49
|
* Specifier to scan the database for objects.
|
|
38
50
|
* Optimized to utilize database indexes.
|
|
39
51
|
*/
|
|
40
|
-
type Selector = WildcardSelector | IdSelector | TypeSelector | TextSelector;
|
|
52
|
+
type Selector = WildcardSelector | IdSelector | TypeSelector | TextSelector | TimestampSelector;
|
|
41
53
|
type WildcardSelector = {
|
|
42
54
|
_tag: 'WildcardSelector';
|
|
43
55
|
};
|
|
@@ -64,6 +76,21 @@ export declare namespace QueryPlan {
|
|
|
64
76
|
_tag: 'TextSelector';
|
|
65
77
|
text: string;
|
|
66
78
|
searchKind: TextSearchKind;
|
|
79
|
+
/**
|
|
80
|
+
* Optionally select only objects of the given typenames.
|
|
81
|
+
*/
|
|
82
|
+
typename: DXN.String[] | null;
|
|
83
|
+
};
|
|
84
|
+
/**
|
|
85
|
+
* Select objects by timestamp range (createdAt / updatedAt).
|
|
86
|
+
* Uses the ObjectMetaIndex timestamp columns.
|
|
87
|
+
*/
|
|
88
|
+
type TimestampSelector = {
|
|
89
|
+
_tag: 'TimestampSelector';
|
|
90
|
+
updatedAfter?: number;
|
|
91
|
+
updatedBefore?: number;
|
|
92
|
+
createdAfter?: number;
|
|
93
|
+
createdBefore?: number;
|
|
67
94
|
};
|
|
68
95
|
/**
|
|
69
96
|
* Filter objects in the current working set based on a predicate.
|
|
@@ -92,7 +119,7 @@ export declare namespace QueryPlan {
|
|
|
92
119
|
/**
|
|
93
120
|
* Describes a traversal of the object graph.
|
|
94
121
|
*/
|
|
95
|
-
type Traversal = ReferenceTraversal | RelationTraversal;
|
|
122
|
+
type Traversal = ReferenceTraversal | RelationTraversal | HierarchyTraversal;
|
|
96
123
|
/**
|
|
97
124
|
* Traverse a reference connection.
|
|
98
125
|
*/
|
|
@@ -100,8 +127,9 @@ export declare namespace QueryPlan {
|
|
|
100
127
|
_tag: 'ReferenceTraversal';
|
|
101
128
|
/**
|
|
102
129
|
* Property path where the reference is located.
|
|
130
|
+
* If null, matches references from any property (only valid for incoming direction).
|
|
103
131
|
*/
|
|
104
|
-
property: EscapedPropPath;
|
|
132
|
+
property: EscapedPropPath | null;
|
|
105
133
|
/**
|
|
106
134
|
* outgoing: the reference points from the anchor object to the target.
|
|
107
135
|
* incoming: the reference points to the anchor object from the target.
|
|
@@ -119,6 +147,17 @@ export declare namespace QueryPlan {
|
|
|
119
147
|
*/
|
|
120
148
|
direction: 'source-to-relation' | 'relation-to-source' | 'target-to-relation' | 'relation-to-target';
|
|
121
149
|
};
|
|
150
|
+
/**
|
|
151
|
+
* Traverse parent-child hierarchy.
|
|
152
|
+
*/
|
|
153
|
+
type HierarchyTraversal = {
|
|
154
|
+
_tag: 'HierarchyTraversal';
|
|
155
|
+
/**
|
|
156
|
+
* to-parent: traverse from child to parent.
|
|
157
|
+
* to-children: traverse from parent to children.
|
|
158
|
+
*/
|
|
159
|
+
direction: 'to-parent' | 'to-children';
|
|
160
|
+
};
|
|
122
161
|
/**
|
|
123
162
|
* Combine results from multiple plans.
|
|
124
163
|
* Each of the plans starts with a copy of the current working set.
|
|
@@ -142,6 +181,18 @@ export declare namespace QueryPlan {
|
|
|
142
181
|
type OrderStep = {
|
|
143
182
|
_tag: 'OrderStep';
|
|
144
183
|
order: readonly QueryAST.Order[];
|
|
184
|
+
/**
|
|
185
|
+
* Optional limit on the number of results to return after ordering.
|
|
186
|
+
* When set, the sorting can be optimized to only track the top N elements.
|
|
187
|
+
*/
|
|
188
|
+
limit?: number;
|
|
189
|
+
};
|
|
190
|
+
/**
|
|
191
|
+
* Limit the number of results.
|
|
192
|
+
*/
|
|
193
|
+
type LimitStep = {
|
|
194
|
+
_tag: 'LimitStep';
|
|
195
|
+
limit: number;
|
|
145
196
|
};
|
|
146
197
|
}
|
|
147
198
|
//# sourceMappingURL=plan.d.ts.map
|