@dxos/echo-query 0.8.4-main.dedc0f3 → 0.8.4-main.e00bdcdb52
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/README.md +1 -1
- package/dist/lib/neutral/index.mjs +917 -0
- package/dist/lib/neutral/index.mjs.map +7 -0
- package/dist/lib/neutral/meta.json +1 -0
- package/dist/query-lite/index.d.ts +9975 -0
- package/dist/query-lite/index.d.ts.map +1 -0
- package/dist/query-lite/index.js +548 -0
- package/dist/query-lite/index.js.map +1 -0
- package/dist/types/src/index.d.ts +2 -0
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/parser/gen/index.d.ts +8 -0
- package/dist/types/src/parser/gen/index.d.ts.map +1 -0
- package/dist/types/src/parser/gen/query.d.ts +3 -0
- package/dist/types/src/parser/gen/query.d.ts.map +1 -0
- package/dist/types/src/parser/gen/query.terms.d.ts +2 -0
- package/dist/types/src/parser/gen/query.terms.d.ts.map +1 -0
- package/dist/types/src/parser/index.d.ts +3 -0
- package/dist/types/src/parser/index.d.ts.map +1 -0
- package/dist/types/src/parser/query-builder.d.ts +89 -0
- package/dist/types/src/parser/query-builder.d.ts.map +1 -0
- package/dist/types/src/parser/query.test.d.ts +2 -0
- package/dist/types/src/parser/query.test.d.ts.map +1 -0
- package/dist/types/src/query-lite/index.d.ts +2 -0
- package/dist/types/src/query-lite/index.d.ts.map +1 -0
- package/dist/types/src/query-lite/query-lite.d.ts +8 -0
- package/dist/types/src/query-lite/query-lite.d.ts.map +1 -0
- package/dist/types/src/sandbox/index.d.ts +2 -0
- package/dist/types/src/sandbox/index.d.ts.map +1 -0
- package/dist/types/src/sandbox/query-sandbox.d.ts +21 -0
- package/dist/types/src/sandbox/query-sandbox.d.ts.map +1 -0
- package/dist/types/src/sandbox/query-sandbox.test.d.ts +2 -0
- package/dist/types/src/sandbox/query-sandbox.test.d.ts.map +1 -0
- package/dist/types/src/sandbox/quickjs.d.ts +8 -0
- package/dist/types/src/sandbox/quickjs.d.ts.map +1 -0
- package/dist/types/src/sandbox/quickjs.test.d.ts +2 -0
- package/dist/types/src/sandbox/quickjs.test.d.ts.map +1 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +29 -13
- package/src/env.d.ts +8 -0
- package/src/index.ts +3 -0
- package/src/parser/gen/index.ts +13 -0
- package/src/parser/gen/query.terms.ts +27 -0
- package/src/parser/gen/query.ts +18 -0
- package/src/parser/index.ts +6 -0
- package/src/parser/query-builder.ts +799 -0
- package/src/parser/query.grammar +130 -0
- package/src/parser/query.test.ts +529 -0
- package/src/query-lite/index.ts +5 -0
- package/src/query-lite/query-lite.ts +744 -0
- package/src/sandbox/index.ts +5 -0
- package/src/sandbox/query-sandbox.test.ts +53 -0
- package/src/sandbox/query-sandbox.ts +72 -0
- package/src/sandbox/quickjs.test.ts +67 -0
- package/src/sandbox/quickjs.ts +33 -0
- package/dist/lib/browser/index.mjs +0 -2
- package/dist/lib/browser/index.mjs.map +0 -7
- package/dist/lib/browser/meta.json +0 -1
- package/dist/lib/node-esm/index.mjs +0 -2
- package/dist/lib/node-esm/index.mjs.map +0 -7
- package/dist/lib/node-esm/meta.json +0 -1
- package/dist/types/src/search.test.d.ts +0 -2
- package/dist/types/src/search.test.d.ts.map +0 -1
- package/src/search.test.ts +0 -49
package/package.json
CHANGED
|
@@ -1,37 +1,53 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxos/echo-query",
|
|
3
|
-
"version": "0.8.4-main.
|
|
3
|
+
"version": "0.8.4-main.e00bdcdb52",
|
|
4
4
|
"description": "ECHO queries.",
|
|
5
5
|
"homepage": "https://dxos.org",
|
|
6
6
|
"bugs": "https://github.com/dxos/dxos/issues",
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "https://github.com/dxos/dxos"
|
|
10
|
+
},
|
|
7
11
|
"license": "MIT",
|
|
8
12
|
"author": "info@dxos.org",
|
|
9
|
-
"sideEffects":
|
|
13
|
+
"sideEffects": false,
|
|
10
14
|
"type": "module",
|
|
15
|
+
"imports": {
|
|
16
|
+
"#query-lite": "./dist/query-lite/index.js"
|
|
17
|
+
},
|
|
11
18
|
"exports": {
|
|
12
19
|
".": {
|
|
13
20
|
"source": "./src/index.ts",
|
|
14
21
|
"types": "./dist/types/src/index.d.ts",
|
|
15
|
-
"
|
|
16
|
-
|
|
17
|
-
|
|
22
|
+
"default": "./dist/lib/neutral/index.mjs"
|
|
23
|
+
},
|
|
24
|
+
"./api.d.ts": "./dist/query-lite/index.d.ts"
|
|
18
25
|
},
|
|
19
26
|
"types": "dist/types/src/index.d.ts",
|
|
20
|
-
"typesVersions": {
|
|
21
|
-
"*": {}
|
|
22
|
-
},
|
|
23
27
|
"files": [
|
|
24
28
|
"dist",
|
|
25
29
|
"src"
|
|
26
30
|
],
|
|
27
31
|
"dependencies": {
|
|
28
|
-
"@
|
|
29
|
-
"@
|
|
30
|
-
"@
|
|
32
|
+
"@lezer/common": "^1.2.2",
|
|
33
|
+
"@lezer/lezer": "^1.1.2",
|
|
34
|
+
"@lezer/lr": "^1.4.2",
|
|
35
|
+
"@dxos/context": "0.8.4-main.e00bdcdb52",
|
|
36
|
+
"@dxos/debug": "0.8.4-main.e00bdcdb52",
|
|
37
|
+
"@dxos/echo": "0.8.4-main.e00bdcdb52",
|
|
38
|
+
"@dxos/echo-protocol": "0.8.4-main.e00bdcdb52",
|
|
39
|
+
"@dxos/errors": "0.8.4-main.e00bdcdb52",
|
|
40
|
+
"@dxos/invariant": "0.8.4-main.e00bdcdb52",
|
|
41
|
+
"@dxos/util": "0.8.4-main.e00bdcdb52",
|
|
42
|
+
"@dxos/vendor-quickjs": "0.8.4-main.e00bdcdb52",
|
|
43
|
+
"@dxos/node-std": "0.8.4-main.e00bdcdb52"
|
|
31
44
|
},
|
|
32
45
|
"devDependencies": {
|
|
33
|
-
"@
|
|
34
|
-
"
|
|
46
|
+
"@lezer/generator": "^1.7.1",
|
|
47
|
+
"tsdown": "^0.16.7",
|
|
48
|
+
"typescript": "^6.0.3",
|
|
49
|
+
"@dxos/echo-generator": "0.8.4-main.e00bdcdb52",
|
|
50
|
+
"@dxos/random": "0.8.4-main.e00bdcdb52"
|
|
35
51
|
},
|
|
36
52
|
"publishConfig": {
|
|
37
53
|
"access": "public"
|
package/src/env.d.ts
ADDED
package/src/index.ts
CHANGED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
//
|
|
2
|
+
// Copyright 2025 DXOS.org
|
|
3
|
+
//
|
|
4
|
+
|
|
5
|
+
import { LRParser } from '@lezer/lr';
|
|
6
|
+
import { parser } from './query';
|
|
7
|
+
import * as terms from './query.terms';
|
|
8
|
+
|
|
9
|
+
export namespace QueryDSL {
|
|
10
|
+
export const Parser: LRParser = parser;
|
|
11
|
+
export const Node = terms;
|
|
12
|
+
export const Tokens = ['type:', 'AND', 'OR', 'NOT'];
|
|
13
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
// This file was generated by lezer-generator. You probably shouldn't edit it.
|
|
2
|
+
export const
|
|
3
|
+
Query = 1,
|
|
4
|
+
Assignment = 2,
|
|
5
|
+
Identifier = 3,
|
|
6
|
+
Filter = 7,
|
|
7
|
+
TagFilter = 8,
|
|
8
|
+
Tag = 9,
|
|
9
|
+
TextFilter = 10,
|
|
10
|
+
String = 11,
|
|
11
|
+
TypeFilter = 12,
|
|
12
|
+
TypeKeyword = 13,
|
|
13
|
+
PropertyFilter = 15,
|
|
14
|
+
PropertyPath = 16,
|
|
15
|
+
Value = 18,
|
|
16
|
+
Number = 19,
|
|
17
|
+
Boolean = 20,
|
|
18
|
+
Null = 21,
|
|
19
|
+
ObjectLiteral = 22,
|
|
20
|
+
ObjectProperty = 24,
|
|
21
|
+
ArrayLiteral = 27,
|
|
22
|
+
Not = 30,
|
|
23
|
+
And = 31,
|
|
24
|
+
Or = 32,
|
|
25
|
+
Relation = 33,
|
|
26
|
+
ArrowRight = 34,
|
|
27
|
+
ArrowLeft = 35
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// This file was generated by lezer-generator. You probably shouldn't edit it.
|
|
2
|
+
import {LRParser} from "@lezer/lr"
|
|
3
|
+
const spec_Identifier = {__proto__:null,type:26, NOT:86, not:86, "!":86, AND:88, and:88, OR:90, or:90}
|
|
4
|
+
export const parser = LRParser.deserialize({
|
|
5
|
+
version: 14,
|
|
6
|
+
states: "(jOVQPOOOnQPO'#ClOOQO'#Cd'#CdOOQO'#Cf'#CfOyQPO'#ChO!OQPO'#CrO!WQPO'#CkOOQO'#Cc'#CcOOQO'#Cz'#CzOOQO'#DW'#DWOVQPO'#DWQ!]QPOOOVQPO'#DWO!mQPO,58xO!rQPO'#DQO!wQPO,59WO#PQPO,59SO#UQPO'#CtOOQO,59^,59^O#ZQPO,59^O#cQQO,59VO#wQPO,59rOOQO'#C{'#C{OOQO'#C|'#C|OOQO'#C}'#C}OVQPO,59rOVQPO,59rOVQPO,59rO$rQPO,59rOVQPO1G.dOOQO,59l,59lOOQO-E7O-E7OOOQO1G.n1G.nO#cQQO,59`O%VQPO'#DRO%[QPO1G.xOOQO1G.x1G.xO%dQQO'#CwOOQO'#Cn'#CnOOQO1G.q1G.qO%kQPO1G/^O&RQPO1G/^O&iQPO1G/^OOQO1G/^1G/^O'PQPO7+$OOOQO1G.z1G.zOOQO,59m,59mOOQO-E7P-E7POOQO7+$d7+$dOOQO,59c,59cO'dQPO,59cOOQO<<Gj<<GjO#cQQO'#DSO'lQPO1G.}OOQO1G.}1G.}OOQO,59n,59nOOQO-E7Q-E7QOOQO7+$i7+$i",
|
|
7
|
+
stateData: "'t~OyOS~ORPOT[OXQOZRO]SOgTO{WO~OS]Oa^O^`X~O^`O~ORaOjbO~O^dO~OrhOshO|fO}gO~PVOTmO~ORnO~Oa^O^`a~ORpO~O^qO~OirOjtO~OZvOcvOdvOevOgTOluO~O{WORzaTzaXzaZza]zagzarzaszawza|za}zaUza~OU{OrhOshO|fO}gO~PVORaO~OirOj!QO~Om!RO~P#cOrzisziwzi|zi}ziUzi~PVO|fOrzisziwzi}ziUzi~PVO|fO}gOrzisziwziUzi~PVOU!TOrhOshO|fO}gO~PVOi!UOm!WO~Oi!UOm!ZO~O",
|
|
8
|
+
goto: "%h{PP|PPPP|!]P!]P!]PP!]!lP!{PPP#XP#nPP#hPP#t$U$]$cPP$h$n$tPPP$zkXOYZ[ijklmxyz|kVOYZ[ijklmxyz|kUOYZ[ijklmxyz|QwdQ}qQ!SuR!X!UjVOYZ[ijklmxyz|Xvdqu!UQcTR!OrmYOYZ[eijklmxyz|ZiZlyz|XjZlz|VkZl|Q_PRo_QscR!PsQ!V!SR!Y!VQZO`eYZelxyz|Ql[QxiQyjQzkR|m",
|
|
9
|
+
nodeNames: "⚠ Query Assignment Identifier = ( ) Filter TagFilter Tag TextFilter String TypeFilter TypeKeyword : PropertyFilter PropertyPath . Value Number Boolean Null ObjectLiteral { ObjectProperty , } ArrayLiteral [ ] Not And Or Relation ArrowRight ArrowLeft",
|
|
10
|
+
maxTerm: 45,
|
|
11
|
+
skippedNodes: [0],
|
|
12
|
+
repeatNodeCount: 3,
|
|
13
|
+
tokenData: "3P~RsX^#`pq#`rs$Tst%qwx&ixy(Qyz(V|}([}!O(a!O!P*Q!Q![(j![!]*V!^!_*[!_!`*g!c!}*l!}#O+W#P#Q+]#R#S*l#T#Y*l#Y#Z+b#Z#b*l#b#c.q#c#h*l#h#i1c#i#o*l#o#p2u#q#r2z#y#z#`$f$g#`#BY#BZ#`$IS$I_#`$I|$JO#`$JT$JU#`$KV$KW#`&FU&FV#`~#eYy~X^#`pq#`#y#z#`$f$g#`#BY#BZ#`$IS$I_#`$I|$JO#`$JT$JU#`$KV$KW#`&FU&FV#`~$WVOr$Trs$ms#O$T#O#P$r#P;'S$T;'S;=`%k<%lO$T~$rOZ~~$uRO;'S$T;'S;=`%O;=`O$T~%RWOr$Trs$ms#O$T#O#P$r#P;'S$T;'S;=`%k;=`<%l$T<%lO$T~%nP;=`<%l$T~%tT}!O&T!Q![&T!c!}&T#R#S&T#T#o&T~&YTX~}!O&T!Q![&T!c!}&T#R#S&T#T#o&T~&lVOw&iwx$mx#O&i#O#P'R#P;'S&i;'S;=`'z<%lO&i~'URO;'S&i;'S;=`'_;=`O&i~'bWOw&iwx$mx#O&i#O#P'R#P;'S&i;'S;=`'z;=`<%l&i<%lO&i~'}P;=`<%l&i~(VOT~~([OU~~(aOi~~(dQ!Q![(j!`!a){~(oSc~!O!P({!Q![(j!g!h)a#X#Y)a~)OP!Q![)R~)WRc~!Q![)R!g!h)a#X#Y)a~)dR{|)m}!O)m!Q![)s~)pP!Q![)s~)xPc~!Q![)s~*QOr~~*VOa~~*[O^~~*_P}!O*b~*gOs~~*lOS~P*qVRP}!O*l!O!P*l!P!Q*l!Q![*l!c!}*l#R#S*l#T#o*l~+]Ol~~+bOm~R+gWRP}!O*l!O!P*l!P!Q*l!Q![*l!c!}*l#R#S*l#T#U,P#U#o*lR,UXRP}!O*l!O!P*l!P!Q*l!Q![*l!c!}*l#R#S*l#T#`*l#`#a,q#a#o*lR,vXRP}!O*l!O!P*l!P!Q*l!Q![*l!c!}*l#R#S*l#T#g*l#g#h-c#h#o*lR-hXRP}!O*l!O!P*l!P!Q*l!Q![*l!c!}*l#R#S*l#T#X*l#X#Y.T#Y#o*lR.[VdQRP}!O*l!O!P*l!P!Q*l!Q![*l!c!}*l#R#S*l#T#o*lR.vXRP}!O*l!O!P*l!P!Q*l!Q![*l!c!}*l#R#S*l#T#i*l#i#j/c#j#o*lR/hXRP}!O*l!O!P*l!P!Q*l!Q![*l!c!}*l#R#S*l#T#`*l#`#a0T#a#o*lR0YXRP}!O*l!O!P*l!P!Q*l!Q![*l!c!}*l#R#S*l#T#`*l#`#a0u#a#o*lR0|VRPeQ}!O*l!O!P*l!P!Q*l!Q![*l!c!}*l#R#S*l#T#o*lR1hXRP}!O*l!O!P*l!P!Q*l!Q![*l!c!}*l#R#S*l#T#f*l#f#g2T#g#o*lR2YXRP}!O*l!O!P*l!P!Q*l!Q![*l!c!}*l#R#S*l#T#i*l#i#j-c#j#o*l~2zOg~~3POj~",
|
|
14
|
+
tokenizers: [0, 1],
|
|
15
|
+
topRules: {"Query":[0,1]},
|
|
16
|
+
specialized: [{term: 3, get: (value: keyof typeof spec_Identifier) => spec_Identifier[value] || -1}],
|
|
17
|
+
tokenPrec: 0
|
|
18
|
+
})
|