@quereus/quereus 0.18.0 → 1.0.2
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 +80 -14
- package/dist/src/common/type-inference.d.ts +1 -0
- package/dist/src/common/type-inference.d.ts.map +1 -1
- package/dist/src/common/type-inference.js +6 -1
- package/dist/src/common/type-inference.js.map +1 -1
- package/dist/src/common/types.d.ts +10 -2
- package/dist/src/common/types.d.ts.map +1 -1
- package/dist/src/common/types.js +13 -1
- package/dist/src/common/types.js.map +1 -1
- package/dist/src/emit/ast-stringify.d.ts.map +1 -1
- package/dist/src/emit/ast-stringify.js +5 -0
- package/dist/src/emit/ast-stringify.js.map +1 -1
- package/dist/src/func/builtins/conversion.d.ts +2 -2
- package/dist/src/func/builtins/conversion.js +3 -3
- package/dist/src/func/builtins/conversion.js.map +1 -1
- package/dist/src/func/builtins/index.d.ts.map +1 -1
- package/dist/src/func/builtins/index.js +2 -1
- package/dist/src/func/builtins/index.js.map +1 -1
- package/dist/src/func/builtins/json-helpers.d.ts +10 -0
- package/dist/src/func/builtins/json-helpers.d.ts.map +1 -1
- package/dist/src/func/builtins/json-helpers.js +26 -0
- package/dist/src/func/builtins/json-helpers.js.map +1 -1
- package/dist/src/func/builtins/json-tvf.d.ts.map +1 -1
- package/dist/src/func/builtins/json-tvf.js +9 -15
- package/dist/src/func/builtins/json-tvf.js.map +1 -1
- package/dist/src/func/builtins/json.d.ts.map +1 -1
- package/dist/src/func/builtins/json.js +100 -227
- package/dist/src/func/builtins/json.js.map +1 -1
- package/dist/src/func/builtins/schema.d.ts.map +1 -1
- package/dist/src/func/builtins/schema.js +9 -0
- package/dist/src/func/builtins/schema.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/parser/lexer.d.ts +1 -0
- package/dist/src/parser/lexer.d.ts.map +1 -1
- package/dist/src/parser/lexer.js +2 -1
- package/dist/src/parser/lexer.js.map +1 -1
- package/dist/src/parser/parser.d.ts +12 -0
- package/dist/src/parser/parser.d.ts.map +1 -1
- package/dist/src/parser/parser.js +54 -1
- package/dist/src/parser/parser.js.map +1 -1
- package/dist/src/planner/analysis/const-evaluator.d.ts +5 -0
- package/dist/src/planner/analysis/const-evaluator.d.ts.map +1 -1
- package/dist/src/planner/analysis/const-evaluator.js +106 -0
- package/dist/src/planner/analysis/const-evaluator.js.map +1 -1
- package/dist/src/planner/analysis/const-pass.d.ts +4 -2
- package/dist/src/planner/analysis/const-pass.d.ts.map +1 -1
- package/dist/src/planner/analysis/const-pass.js +23 -13
- package/dist/src/planner/analysis/const-pass.js.map +1 -1
- package/dist/src/planner/analysis/constraint-extractor.d.ts +19 -1
- package/dist/src/planner/analysis/constraint-extractor.d.ts.map +1 -1
- package/dist/src/planner/analysis/constraint-extractor.js +265 -14
- package/dist/src/planner/analysis/constraint-extractor.js.map +1 -1
- package/dist/src/planner/analysis/expression-fingerprint.d.ts +15 -0
- package/dist/src/planner/analysis/expression-fingerprint.d.ts.map +1 -0
- package/dist/src/planner/analysis/expression-fingerprint.js +126 -0
- package/dist/src/planner/analysis/expression-fingerprint.js.map +1 -0
- package/dist/src/planner/cost/index.d.ts +16 -0
- package/dist/src/planner/cost/index.d.ts.map +1 -1
- package/dist/src/planner/cost/index.js +22 -0
- package/dist/src/planner/cost/index.js.map +1 -1
- package/dist/src/planner/framework/pass.d.ts.map +1 -1
- package/dist/src/planner/framework/pass.js +4 -3
- package/dist/src/planner/framework/pass.js.map +1 -1
- package/dist/src/planner/nodes/hash-aggregate.d.ts +38 -0
- package/dist/src/planner/nodes/hash-aggregate.d.ts.map +1 -0
- package/dist/src/planner/nodes/hash-aggregate.js +213 -0
- package/dist/src/planner/nodes/hash-aggregate.js.map +1 -0
- package/dist/src/planner/nodes/plan-node-type.d.ts +1 -0
- package/dist/src/planner/nodes/plan-node-type.d.ts.map +1 -1
- package/dist/src/planner/nodes/plan-node-type.js +1 -0
- package/dist/src/planner/nodes/plan-node-type.js.map +1 -1
- package/dist/src/planner/nodes/stream-aggregate.js.map +1 -1
- package/dist/src/planner/nodes/table-access-nodes.d.ts +11 -0
- package/dist/src/planner/nodes/table-access-nodes.d.ts.map +1 -1
- package/dist/src/planner/nodes/table-access-nodes.js +32 -0
- package/dist/src/planner/nodes/table-access-nodes.js.map +1 -1
- package/dist/src/planner/nodes/values-node.d.ts +3 -1
- package/dist/src/planner/nodes/values-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/values-node.js +9 -2
- package/dist/src/planner/nodes/values-node.js.map +1 -1
- package/dist/src/planner/optimizer.d.ts.map +1 -1
- package/dist/src/planner/optimizer.js +35 -7
- package/dist/src/planner/optimizer.js.map +1 -1
- package/dist/src/planner/rules/access/rule-select-access-path.js +175 -5
- package/dist/src/planner/rules/access/rule-select-access-path.js.map +1 -1
- package/dist/src/planner/rules/aggregate/rule-aggregate-streaming.d.ts +9 -11
- package/dist/src/planner/rules/aggregate/rule-aggregate-streaming.d.ts.map +1 -1
- package/dist/src/planner/rules/aggregate/rule-aggregate-streaming.js +54 -67
- package/dist/src/planner/rules/aggregate/rule-aggregate-streaming.js.map +1 -1
- package/dist/src/planner/rules/cache/rule-scalar-cse.d.ts +19 -0
- package/dist/src/planner/rules/cache/rule-scalar-cse.d.ts.map +1 -0
- package/dist/src/planner/rules/cache/rule-scalar-cse.js +245 -0
- package/dist/src/planner/rules/cache/rule-scalar-cse.js.map +1 -0
- package/dist/src/planner/rules/predicate/rule-filter-merge.d.ts +15 -0
- package/dist/src/planner/rules/predicate/rule-filter-merge.d.ts.map +1 -0
- package/dist/src/planner/rules/predicate/rule-filter-merge.js +39 -0
- package/dist/src/planner/rules/predicate/rule-filter-merge.js.map +1 -0
- package/dist/src/planner/rules/predicate/rule-predicate-pushdown.d.ts +1 -0
- package/dist/src/planner/rules/predicate/rule-predicate-pushdown.d.ts.map +1 -1
- package/dist/src/planner/rules/predicate/rule-predicate-pushdown.js +9 -0
- package/dist/src/planner/rules/predicate/rule-predicate-pushdown.js.map +1 -1
- package/dist/src/planner/rules/retrieve/rule-projection-pruning.d.ts +17 -0
- package/dist/src/planner/rules/retrieve/rule-projection-pruning.d.ts.map +1 -0
- package/dist/src/planner/rules/retrieve/rule-projection-pruning.js +75 -0
- package/dist/src/planner/rules/retrieve/rule-projection-pruning.js.map +1 -0
- package/dist/src/runtime/emit/aggregate.d.ts +9 -0
- package/dist/src/runtime/emit/aggregate.d.ts.map +1 -1
- package/dist/src/runtime/emit/aggregate.js +2 -2
- package/dist/src/runtime/emit/aggregate.js.map +1 -1
- package/dist/src/runtime/emit/empty-result.d.ts +5 -0
- package/dist/src/runtime/emit/empty-result.d.ts.map +1 -0
- package/dist/src/runtime/emit/empty-result.js +11 -0
- package/dist/src/runtime/emit/empty-result.js.map +1 -0
- package/dist/src/runtime/emit/hash-aggregate.d.ts +5 -0
- package/dist/src/runtime/emit/hash-aggregate.d.ts.map +1 -0
- package/dist/src/runtime/emit/hash-aggregate.js +319 -0
- package/dist/src/runtime/emit/hash-aggregate.js.map +1 -0
- package/dist/src/runtime/register.d.ts.map +1 -1
- package/dist/src/runtime/register.js +4 -1
- package/dist/src/runtime/register.js.map +1 -1
- package/dist/src/types/json-type.d.ts +3 -3
- package/dist/src/types/json-type.d.ts.map +1 -1
- package/dist/src/types/json-type.js +44 -38
- package/dist/src/types/json-type.js.map +1 -1
- package/dist/src/types/logical-type.d.ts +2 -1
- package/dist/src/types/logical-type.d.ts.map +1 -1
- package/dist/src/types/logical-type.js +4 -0
- package/dist/src/types/logical-type.js.map +1 -1
- package/dist/src/util/comparison.d.ts +1 -1
- package/dist/src/util/comparison.d.ts.map +1 -1
- package/dist/src/util/comparison.js +22 -4
- package/dist/src/util/comparison.js.map +1 -1
- package/dist/src/vtab/best-access-plan.d.ts +1 -1
- package/dist/src/vtab/best-access-plan.d.ts.map +1 -1
- package/dist/src/vtab/memory/layer/base-cursor.d.ts.map +1 -1
- package/dist/src/vtab/memory/layer/base-cursor.js +81 -6
- package/dist/src/vtab/memory/layer/base-cursor.js.map +1 -1
- package/dist/src/vtab/memory/layer/scan-plan.d.ts +9 -0
- package/dist/src/vtab/memory/layer/scan-plan.d.ts.map +1 -1
- package/dist/src/vtab/memory/layer/scan-plan.js +76 -9
- package/dist/src/vtab/memory/layer/scan-plan.js.map +1 -1
- package/dist/src/vtab/memory/layer/transaction-cursor.d.ts.map +1 -1
- package/dist/src/vtab/memory/layer/transaction-cursor.js +79 -11
- package/dist/src/vtab/memory/layer/transaction-cursor.js.map +1 -1
- package/dist/src/vtab/memory/module.d.ts +4 -0
- package/dist/src/vtab/memory/module.d.ts.map +1 -1
- package/dist/src/vtab/memory/module.js +79 -11
- package/dist/src/vtab/memory/module.js.map +1 -1
- package/package.json +25 -5
|
@@ -17,6 +17,32 @@ export function safeJsonParse(jsonString) {
|
|
|
17
17
|
return null;
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
|
+
/**
|
|
21
|
+
* Coerces a SqlValue to a JSONValue, accepting both native objects and JSON strings.
|
|
22
|
+
* This is the primary entry point for json_* functions that accept JSON input.
|
|
23
|
+
*
|
|
24
|
+
* Returns `undefined` on parse/conversion failure (to distinguish from JSON null).
|
|
25
|
+
*
|
|
26
|
+
* @param input The SQL value to coerce
|
|
27
|
+
* @returns The JSON value (including null for SQL NULL / JSON null), or undefined on failure
|
|
28
|
+
*/
|
|
29
|
+
export function coerceToJsonValue(input) {
|
|
30
|
+
if (input === null)
|
|
31
|
+
return null;
|
|
32
|
+
if (typeof input === 'string') {
|
|
33
|
+
try {
|
|
34
|
+
return JSON.parse(input);
|
|
35
|
+
}
|
|
36
|
+
catch {
|
|
37
|
+
return undefined;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
if (typeof input === 'object' && !(input instanceof Uint8Array))
|
|
41
|
+
return input;
|
|
42
|
+
if (typeof input === 'number' || typeof input === 'boolean')
|
|
43
|
+
return input;
|
|
44
|
+
return undefined;
|
|
45
|
+
}
|
|
20
46
|
/**
|
|
21
47
|
* Parses a JSON path and returns information needed for modification
|
|
22
48
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-helpers.js","sourceRoot":"","sources":["../../../../src/func/builtins/json-helpers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"json-helpers.js","sourceRoot":"","sources":["../../../../src/func/builtins/json-helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-tvf.d.ts","sourceRoot":"","sources":["../../../../src/func/builtins/json-tvf.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"json-tvf.d.ts","sourceRoot":"","sources":["../../../../src/func/builtins/json-tvf.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,YAAY,8DA+FxB,CAAC;AAGF,eAAO,MAAM,YAAY,8DA4GxB,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createTableValuedFunction } from "../registration.js";
|
|
2
2
|
import { QuereusError } from "../../common/errors.js";
|
|
3
3
|
import { StatusCode } from "../../common/types.js";
|
|
4
|
-
import {
|
|
4
|
+
import { coerceToJsonValue, evaluateJsonPathBasic, getJsonType } from "./json-helpers.js";
|
|
5
5
|
import { jsonStringify } from "../../util/serialization.js";
|
|
6
6
|
import { INTEGER_TYPE, TEXT_TYPE } from "../../types/builtin-types.js";
|
|
7
7
|
// JSON Each table-valued function
|
|
@@ -26,13 +26,10 @@ export const jsonEachFunc = createTableValuedFunction({
|
|
|
26
26
|
keys: [],
|
|
27
27
|
rowConstraints: []
|
|
28
28
|
}
|
|
29
|
-
}, async function* (
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
const parsedJson = safeJsonParse(jsonText);
|
|
34
|
-
if (parsedJson === null && typeof jsonText === 'string') {
|
|
35
|
-
throw new QuereusError('Invalid JSON provided to json_each', StatusCode.ERROR);
|
|
29
|
+
}, async function* (jsonInput, rootPath) {
|
|
30
|
+
const parsedJson = coerceToJsonValue(jsonInput);
|
|
31
|
+
if (parsedJson === undefined) {
|
|
32
|
+
throw new QuereusError('json_each() requires a valid JSON value as first argument', StatusCode.ERROR);
|
|
36
33
|
}
|
|
37
34
|
const rootPathStr = (typeof rootPath === 'string' && rootPath) ? rootPath : null;
|
|
38
35
|
let startNode = parsedJson;
|
|
@@ -116,13 +113,10 @@ export const jsonTreeFunc = createTableValuedFunction({
|
|
|
116
113
|
keys: [],
|
|
117
114
|
rowConstraints: []
|
|
118
115
|
}
|
|
119
|
-
}, async function* (
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
const parsedJson = safeJsonParse(jsonText);
|
|
124
|
-
if (parsedJson === null && typeof jsonText === 'string') {
|
|
125
|
-
throw new QuereusError('Invalid JSON provided to json_tree', StatusCode.ERROR);
|
|
116
|
+
}, async function* (jsonInput, rootPath) {
|
|
117
|
+
const parsedJson = coerceToJsonValue(jsonInput);
|
|
118
|
+
if (parsedJson === undefined) {
|
|
119
|
+
throw new QuereusError('json_tree() requires a valid JSON value as first argument', StatusCode.ERROR);
|
|
126
120
|
}
|
|
127
121
|
const rootPathStr = (typeof rootPath === 'string' && rootPath) ? rootPath : null;
|
|
128
122
|
let startNode = parsedJson;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-tvf.js","sourceRoot":"","sources":["../../../../src/func/builtins/json-tvf.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"json-tvf.js","sourceRoot":"","sources":["../../../../src/func/builtins/json-tvf.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../../../src/func/builtins/json.ts"],"names":[],"mappings":"AAyBA,eAAO,MAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../../../src/func/builtins/json.ts"],"names":[],"mappings":"AAyBA,eAAO,MAAM,aAAa,yDASzB,CAAC;AA2DF,eAAO,MAAM,cAAc,yDAmB1B,CAAC;AAKF,eAAO,MAAM,YAAY,yDAexB,CAAC;AAGF,eAAO,MAAM,eAAe,yDA8B3B,CAAC;AAGF,eAAO,MAAM,aAAa,yDAyBzB,CAAC;AAGF,eAAO,MAAM,aAAa,yDAKzB,CAAC;AAGF,eAAO,MAAM,cAAc,yDAa1B,CAAC;AAKF,eAAO,MAAM,mBAAmB,yDAe/B,CAAC;AAGF,eAAO,MAAM,aAAa,yDAyBzB,CAAC;AAKF,eAAO,MAAM,cAAc,yDAuC1B,CAAC;AAGF,eAAO,MAAM,eAAe,yDAqC3B,CAAC;AAGF,eAAO,MAAM,WAAW,yDA4CvB,CAAC;AAGF,eAAO,MAAM,cAAc,yDAiC1B,CAAC;AAKF,eAAO,MAAM,kBAAkB,4DAS9B,CAAC;AAGF,eAAO,MAAM,mBAAmB,4DAa/B,CAAC"}
|