@dxos/echo-query 0.8.4-main.03d5cd7b56 → 0.8.4-main.05e74ebcff
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/query-lite/index.d.ts +62 -15
- package/dist/query-lite/index.d.ts.map +1 -1
- package/dist/query-lite/index.js +17 -8
- package/dist/query-lite/index.js.map +1 -1
- package/dist/types/src/query-lite/query-lite.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +13 -13
- package/src/query-lite/query-lite.ts +19 -9
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxos/echo-query",
|
|
3
|
-
"version": "0.8.4-main.
|
|
3
|
+
"version": "0.8.4-main.05e74ebcff",
|
|
4
4
|
"description": "ECHO queries.",
|
|
5
5
|
"homepage": "https://dxos.org",
|
|
6
6
|
"bugs": "https://github.com/dxos/dxos/issues",
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"type": "git",
|
|
9
9
|
"url": "https://github.com/dxos/dxos"
|
|
10
10
|
},
|
|
11
|
-
"license": "
|
|
11
|
+
"license": "FSL-1.1-Apache-2.0",
|
|
12
12
|
"author": "info@dxos.org",
|
|
13
13
|
"sideEffects": false,
|
|
14
14
|
"type": "module",
|
|
@@ -32,22 +32,22 @@
|
|
|
32
32
|
"@lezer/common": "^1.2.2",
|
|
33
33
|
"@lezer/lezer": "^1.1.2",
|
|
34
34
|
"@lezer/lr": "^1.4.2",
|
|
35
|
-
"@dxos/
|
|
36
|
-
"@dxos/
|
|
37
|
-
"@dxos/
|
|
38
|
-
"@dxos/
|
|
39
|
-
"@dxos/
|
|
40
|
-
"@dxos/
|
|
41
|
-
"@dxos/
|
|
42
|
-
"@dxos/echo-protocol": "0.8.4-main.
|
|
43
|
-
"@dxos/
|
|
35
|
+
"@dxos/debug": "0.8.4-main.05e74ebcff",
|
|
36
|
+
"@dxos/context": "0.8.4-main.05e74ebcff",
|
|
37
|
+
"@dxos/echo": "0.8.4-main.05e74ebcff",
|
|
38
|
+
"@dxos/invariant": "0.8.4-main.05e74ebcff",
|
|
39
|
+
"@dxos/errors": "0.8.4-main.05e74ebcff",
|
|
40
|
+
"@dxos/util": "0.8.4-main.05e74ebcff",
|
|
41
|
+
"@dxos/node-std": "0.8.4-main.05e74ebcff",
|
|
42
|
+
"@dxos/echo-protocol": "0.8.4-main.05e74ebcff",
|
|
43
|
+
"@dxos/vendor-quickjs": "0.8.4-main.05e74ebcff"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"@lezer/generator": "^1.7.1",
|
|
47
47
|
"tsdown": "^0.16.7",
|
|
48
48
|
"typescript": "^6.0.3",
|
|
49
|
-
"@dxos/echo-generator": "0.8.4-main.
|
|
50
|
-
"@dxos/random": "0.8.4-main.
|
|
49
|
+
"@dxos/echo-generator": "0.8.4-main.05e74ebcff",
|
|
50
|
+
"@dxos/random": "0.8.4-main.05e74ebcff"
|
|
51
51
|
},
|
|
52
52
|
"publishConfig": {
|
|
53
53
|
"access": "public"
|
|
@@ -111,7 +111,7 @@ class FilterClass implements Filter$.Any {
|
|
|
111
111
|
}
|
|
112
112
|
return new FilterClass({
|
|
113
113
|
type: 'object',
|
|
114
|
-
typename:
|
|
114
|
+
typename: makeTypeDXN(schema),
|
|
115
115
|
...propsFilterToAst(props ?? {}),
|
|
116
116
|
});
|
|
117
117
|
}
|
|
@@ -119,7 +119,7 @@ class FilterClass implements Filter$.Any {
|
|
|
119
119
|
static typename(typename: string): Filter$.Any {
|
|
120
120
|
return new FilterClass({
|
|
121
121
|
type: 'object',
|
|
122
|
-
typename:
|
|
122
|
+
typename: makeTypeDXN(typename),
|
|
123
123
|
props: {},
|
|
124
124
|
});
|
|
125
125
|
}
|
|
@@ -139,6 +139,16 @@ class FilterClass implements Filter$.Any {
|
|
|
139
139
|
});
|
|
140
140
|
}
|
|
141
141
|
|
|
142
|
+
static key(key: string, options?: Filter$.KeyFilterOptions): Filter$.Any {
|
|
143
|
+
return new FilterClass({
|
|
144
|
+
type: 'object',
|
|
145
|
+
typename: null,
|
|
146
|
+
props: {},
|
|
147
|
+
metaKey: key,
|
|
148
|
+
metaVersion: options?.version,
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
|
|
142
152
|
static props<T>(props: Filter$.Props<T>): Filter$.Filter<T> {
|
|
143
153
|
return new FilterClass({
|
|
144
154
|
type: 'object',
|
|
@@ -451,7 +461,7 @@ class QueryClass implements Query$.Any {
|
|
|
451
461
|
from: {
|
|
452
462
|
_tag: 'scope',
|
|
453
463
|
scope: {
|
|
454
|
-
...(options?.includeFeeds ? {
|
|
464
|
+
...(options?.includeFeeds ? { allFeedsFromSpaces: true } : {}),
|
|
455
465
|
},
|
|
456
466
|
},
|
|
457
467
|
});
|
|
@@ -598,7 +608,7 @@ const isRef = (obj: any): obj is Ref.Ref<any> => {
|
|
|
598
608
|
return obj && typeof obj === 'object' && RefTypeId in obj;
|
|
599
609
|
};
|
|
600
610
|
|
|
601
|
-
const
|
|
611
|
+
const makeTypeDXN = (typename: string) => {
|
|
602
612
|
assertArgument(typeof typename === 'string', 'typename');
|
|
603
613
|
assertArgument(!typename.startsWith('dxn:'), 'typename');
|
|
604
614
|
return `dxn:type:${typename}`;
|
|
@@ -614,7 +624,7 @@ const isDxnLike = (value: unknown): value is DXN => {
|
|
|
614
624
|
);
|
|
615
625
|
};
|
|
616
626
|
|
|
617
|
-
const SCOPE_KEYS = new Set(['spaceIds', '
|
|
627
|
+
const SCOPE_KEYS = new Set(['spaceIds', 'feeds', 'allFeedsFromSpaces']);
|
|
618
628
|
|
|
619
629
|
const _isScopeLike = (value: unknown): value is QueryAST.Scope => {
|
|
620
630
|
if (typeof value !== 'object' || value === null || Array.isArray(value)) {
|
|
@@ -728,11 +738,11 @@ const prettyQuery = (query: QueryAST.Query): string => {
|
|
|
728
738
|
if (scope.spaceIds !== undefined) {
|
|
729
739
|
parts.push(`spaceIds: [${scope.spaceIds.join(', ')}]`);
|
|
730
740
|
}
|
|
731
|
-
if (scope.
|
|
732
|
-
parts.push(`
|
|
741
|
+
if (scope.feeds !== undefined) {
|
|
742
|
+
parts.push(`feeds: [${scope.feeds.join(', ')}]`);
|
|
733
743
|
}
|
|
734
|
-
if (scope.
|
|
735
|
-
parts.push(`
|
|
744
|
+
if (scope.allFeedsFromSpaces !== undefined) {
|
|
745
|
+
parts.push(`allFeedsFromSpaces: ${scope.allFeedsFromSpaces}`);
|
|
736
746
|
}
|
|
737
747
|
return `${prettyQuery(query.query)}.from({ ${parts.join(', ')} })`;
|
|
738
748
|
}
|