@webda/ql 4.0.0-beta.7 → 4.0.0-beta.8

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/lib/query.js CHANGED
@@ -4,6 +4,151 @@ import { WebdaQLLexer } from "./WebdaQLLexer.js";
4
4
  import { CountAllItemContext, CountDistinctItemContext, FieldItemContext, MetricItemContext, OrderFieldExpressionContext, SubExpressionContext, WebdaQLParserParser } from "./WebdaQLParserParser.js";
5
5
  import { checkAlias, validateAggregation } from "./aggregation-query.js";
6
6
  import { escapeValue, WebdaQLError } from "./webdaql-string.js";
7
+ /**
8
+ * A value computed at evaluation time
9
+ */
10
+ export class DynamicValue {
11
+ }
12
+ /**
13
+ * Dynamic value representing the current timestamp (in milliseconds since epoch) with an optional duration offset
14
+ */
15
+ export class NowValue extends DynamicValue {
16
+ offsetMs;
17
+ raw;
18
+ name = "NOW";
19
+ /**
20
+ * @param offsetMs - offset in milliseconds to add to Date.now()
21
+ * @param raw - original duration string literal (if parsed from one)
22
+ */
23
+ constructor(offsetMs = 0, raw) {
24
+ super();
25
+ this.offsetMs = offsetMs;
26
+ this.raw = raw;
27
+ }
28
+ /**
29
+ * Resolve to current timestamp + offset
30
+ * @returns timestamp in milliseconds
31
+ */
32
+ resolve() {
33
+ return Date.now() + this.offsetMs;
34
+ }
35
+ /**
36
+ * String representation of NOW function call
37
+ * @returns WQL NOW function string
38
+ */
39
+ toString() {
40
+ if (this.raw !== undefined && this.raw !== "") {
41
+ return `NOW('${this.raw}')`;
42
+ }
43
+ if (this.offsetMs !== 0) {
44
+ if (this.offsetMs % 1000 === 0) {
45
+ return `NOW('${this.offsetMs / 1000}s')`;
46
+ }
47
+ return `NOW('${this.offsetMs}ms')`;
48
+ }
49
+ return "NOW()";
50
+ }
51
+ }
52
+ /**
53
+ * Supported duration units and their factor in seconds
54
+ */
55
+ const DURATION_UNITS = {
56
+ s: 1,
57
+ sec: 1,
58
+ secs: 1,
59
+ second: 1,
60
+ seconds: 1,
61
+ m: 60,
62
+ min: 60,
63
+ mins: 60,
64
+ minute: 60,
65
+ minutes: 60,
66
+ h: 3600,
67
+ hr: 3600,
68
+ hour: 3600,
69
+ hours: 3600,
70
+ d: 86400,
71
+ day: 86400,
72
+ days: 86400,
73
+ mo: 86400 * 30,
74
+ mon: 86400 * 30,
75
+ month: 86400 * 30,
76
+ months: 86400 * 30,
77
+ y: 86400 * 365,
78
+ yr: 86400 * 365,
79
+ year: 86400 * 365,
80
+ years: 86400 * 365,
81
+ ms: 0.001,
82
+ msec: 0.001,
83
+ msecs: 0.001,
84
+ millisecond: 0.001,
85
+ milliseconds: 0.001
86
+ };
87
+ /**
88
+ * Parse a duration string or numeric seconds into milliseconds.
89
+ *
90
+ * Supports an optional leading sign (`+` or `-`), and composite parts like `1d2h`, `10m`, `30`, `1.5h`.
91
+ * Numeric inputs are treated as seconds.
92
+ *
93
+ * @param input - duration string or numeric seconds
94
+ * @returns duration offset in milliseconds
95
+ * @throws {WebdaQLError} if the format or unit is invalid
96
+ */
97
+ export function parseDurationToMs(input) {
98
+ if (typeof input === "number") {
99
+ if (!Number.isFinite(input)) {
100
+ throw new WebdaQLError(`Invalid duration: ${input}`);
101
+ }
102
+ return Math.round(input * 1000);
103
+ }
104
+ const raw = String(input).trim();
105
+ if (!raw) {
106
+ throw new WebdaQLError("Duration value cannot be empty");
107
+ }
108
+ let sign = 1;
109
+ let rest = raw;
110
+ if (rest.startsWith("-")) {
111
+ sign = -1;
112
+ rest = rest.slice(1).trim();
113
+ }
114
+ else if (rest.startsWith("+")) {
115
+ rest = rest.slice(1).trim();
116
+ }
117
+ if (!rest) {
118
+ throw new WebdaQLError(`Invalid duration format: ${raw}`);
119
+ }
120
+ const re = /(\d+(?:\.\d+)?)\s*([a-zA-Z]+)?/g;
121
+ let totalSeconds = 0;
122
+ let matched = false;
123
+ let lastIndex = 0;
124
+ let m;
125
+ while ((m = re.exec(rest)) !== null) {
126
+ const skipped = rest.slice(lastIndex, m.index).trim();
127
+ if (skipped) {
128
+ throw new WebdaQLError(`Invalid duration format: ${raw}`);
129
+ }
130
+ matched = true;
131
+ lastIndex = re.lastIndex;
132
+ const num = parseFloat(m[1]);
133
+ const unitStr = m[2];
134
+ if (unitStr) {
135
+ const u = unitStr.toLowerCase();
136
+ const factor = DURATION_UNITS[u];
137
+ if (factor === undefined) {
138
+ throw new WebdaQLError(`Unsupported duration unit: ${unitStr}`);
139
+ }
140
+ totalSeconds += num * factor;
141
+ }
142
+ else {
143
+ totalSeconds += num;
144
+ }
145
+ }
146
+ const trailing = rest.slice(lastIndex).trim();
147
+ if (!matched || trailing) {
148
+ throw new WebdaQLError(`Invalid duration format: ${raw}`);
149
+ }
150
+ return Math.round(sign * totalSeconds * 1000);
151
+ }
7
152
  /**
8
153
  * Strip the quotes of a WebdaQL string literal and unescape its contents.
9
154
  *
@@ -244,9 +389,19 @@ export class ExpressionBuilder extends AbstractParseTreeVisitor {
244
389
  * @returns the assignment
245
390
  */
246
391
  visitAssignment(ctx) {
392
+ const raw = this.visit(ctx.getChild(2));
393
+ if (raw instanceof DynamicValue) {
394
+ return {
395
+ field: ctx.identifier().text,
396
+ rawValue: raw,
397
+ get value() {
398
+ return raw.resolve();
399
+ }
400
+ };
401
+ }
247
402
  return {
248
403
  field: ctx.identifier().text,
249
- value: this.visit(ctx.getChild(2))
404
+ value: raw
250
405
  };
251
406
  }
252
407
  /**
@@ -329,7 +484,6 @@ export class ExpressionBuilder extends AbstractParseTreeVisitor {
329
484
  */
330
485
  getComparison(ctx) {
331
486
  const res = [];
332
- // eslint-disable-next-line prefer-const
333
487
  let left = ctx.getChild(0);
334
488
  let right = ctx.getChild(2);
335
489
  if (right instanceof SubExpressionContext) {
@@ -488,6 +642,34 @@ export class ExpressionBuilder extends AbstractParseTreeVisitor {
488
642
  visitNumberLiteral(ctx) {
489
643
  return parseFloat(ctx.text);
490
644
  }
645
+ /**
646
+ * Visit a NOW() function call with optional duration offset
647
+ * @param ctx - the now function context
648
+ * @returns the NowValue
649
+ */
650
+ visitNowFunction(ctx) {
651
+ const stringLiteral = ctx.stringLiteral();
652
+ if (stringLiteral) {
653
+ const raw = unescapeStringLiteral(stringLiteral.text);
654
+ const offsetMs = parseDurationToMs(raw);
655
+ return new NowValue(offsetMs, raw);
656
+ }
657
+ const integerLiteral = ctx.integerLiteral();
658
+ if (integerLiteral) {
659
+ const seconds = parseInt(integerLiteral.text);
660
+ return new NowValue(seconds * 1000, integerLiteral.text);
661
+ }
662
+ const numberLiteral = ctx.numberLiteral();
663
+ if (numberLiteral) {
664
+ const seconds = parseFloat(numberLiteral.text);
665
+ return new NowValue(Math.round(seconds * 1000), numberLiteral.text);
666
+ }
667
+ const parameter = ctx.parameter();
668
+ if (parameter) {
669
+ return this.visitParameter(parameter);
670
+ }
671
+ return new NowValue(0);
672
+ }
491
673
  /**
492
674
  * A `?` or `:name` placeholder reaching evaluation was never bound
493
675
  * @param ctx - the parameter context
@@ -522,9 +704,9 @@ export const UNARY_COMPARISON_OPERATORS = ["IS NULL", "IS NOT NULL"];
522
704
  */
523
705
  export class ComparisonExpression extends Expression {
524
706
  /**
525
- * Right side of the comparison
707
+ * Right side of the comparison (raw parsed value, possibly DynamicValue)
526
708
  */
527
- value;
709
+ rawValue;
528
710
  /**
529
711
  * Attribute to read from the object (split by .)
530
712
  */
@@ -532,13 +714,45 @@ export class ComparisonExpression extends Expression {
532
714
  /**
533
715
  * @param operator - comparison operator
534
716
  * @param attribute - dot-notation path to the object property (e.g. `"user.name"`)
535
- * @param value - literal value or array of values (for IN operator) to compare against
717
+ * @param rawValue - literal value, DynamicValue, or array of values (for IN operator) to compare against
536
718
  */
537
- constructor(operator, attribute, value) {
719
+ constructor(operator, attribute, rawValue) {
538
720
  super(operator);
539
- this.value = value;
721
+ this.rawValue = rawValue;
540
722
  this.attribute = attribute.split(".");
541
723
  }
724
+ /**
725
+ * Resolved value at evaluation time
726
+ * @returns the resolved scalar or array value
727
+ */
728
+ get value() {
729
+ if (this.rawValue instanceof DynamicValue) {
730
+ return this.rawValue.resolve();
731
+ }
732
+ if (Array.isArray(this.rawValue)) {
733
+ return this.rawValue.map(v => (v instanceof DynamicValue ? v.resolve() : v));
734
+ }
735
+ return this.rawValue;
736
+ }
737
+ /**
738
+ * Set the raw value
739
+ * @param val - new value
740
+ */
741
+ set value(val) {
742
+ this.rawValue = val;
743
+ }
744
+ /**
745
+ * @override
746
+ */
747
+ isDynamic() {
748
+ if (this.rawValue instanceof DynamicValue) {
749
+ return true;
750
+ }
751
+ if (Array.isArray(this.rawValue)) {
752
+ return this.rawValue.some(v => v instanceof DynamicValue);
753
+ }
754
+ return false;
755
+ }
542
756
  /**
543
757
  * Convert a SQL LIKE pattern to a JavaScript RegExp
544
758
  *
@@ -654,10 +868,14 @@ export class ComparisonExpression extends Expression {
654
868
  * Serialize a value to its WebdaQL string representation
655
869
  *
656
870
  * Strings are double-quoted, booleans are uppercased, arrays are bracket-wrapped.
871
+ * Dynamic values serialize to their canonical function call string (e.g. `NOW('-10m')`).
657
872
  * @param value - the value to serialize
658
873
  * @returns the serialized string
659
874
  */
660
875
  toStringValue(value) {
876
+ if (value instanceof DynamicValue) {
877
+ return value.toString();
878
+ }
661
879
  if (Array.isArray(value)) {
662
880
  return `[${value.map(v => this.toStringValue(v)).join(", ")}]`;
663
881
  }
@@ -690,7 +908,7 @@ export class ComparisonExpression extends Expression {
690
908
  if (UNARY_COMPARISON_OPERATORS.includes(this.operator)) {
691
909
  return `${this.toStringAttribute()} ${this.toStringOperator()}`;
692
910
  }
693
- return `${this.toStringAttribute()} ${this.toStringOperator()} ${this.toStringValue(this.value)}`;
911
+ return `${this.toStringAttribute()} ${this.toStringOperator()} ${this.toStringValue(this.rawValue)}`;
694
912
  }
695
913
  }
696
914
  /**
@@ -720,6 +938,12 @@ export class LogicalExpression extends Expression {
720
938
  }
721
939
  return this.children.map(c => c.toString(depth + 1)).join(` ${this.operator} `);
722
940
  }
941
+ /**
942
+ * @override
943
+ */
944
+ isDynamic() {
945
+ return this.children.some(c => c.isDynamic());
946
+ }
723
947
  }
724
948
  /**
725
949
  * Logical AND expression — evaluates to `true` only if all children are `true`
@@ -802,6 +1026,12 @@ export class BooleanExpression extends Expression {
802
1026
  toString() {
803
1027
  return this.operator;
804
1028
  }
1029
+ /**
1030
+ * @override
1031
+ */
1032
+ isDynamic() {
1033
+ return false;
1034
+ }
805
1035
  }
806
1036
  /**
807
1037
  * Build an AND / OR expression, folding `TRUE` / `FALSE` constants away
@@ -855,18 +1085,32 @@ function throwingErrorListener(sql) {
855
1085
  };
856
1086
  }
857
1087
  /**
858
- * Create a lexer and a parser for a query, both throwing on errors
1088
+ * Create a lexer and a parser for a query
859
1089
  * @param sql - the query string
860
- * @returns the lexer and the parser
1090
+ * @param options - parser options
1091
+ * @returns the lexer, parser and token stream
861
1092
  */
862
- function createParser(sql) {
1093
+ export function createParser(sql, options) {
863
1094
  const lexer = new WebdaQLLexer(CharStreams.fromString(sql || ""));
864
1095
  lexer.removeErrorListeners();
865
- lexer.addErrorListener(throwingErrorListener(sql));
866
- const parser = new WebdaQLParserParser(new CommonTokenStream(lexer));
1096
+ if (!options?.tolerant) {
1097
+ lexer.addErrorListener(throwingErrorListener(sql));
1098
+ }
1099
+ const tokens = new CommonTokenStream(lexer);
1100
+ const parser = new WebdaQLParserParser(tokens);
867
1101
  parser.removeErrorListeners();
868
- parser.addErrorListener(throwingErrorListener(sql));
869
- return { lexer, parser };
1102
+ if (!options?.tolerant) {
1103
+ parser.addErrorListener(throwingErrorListener(sql));
1104
+ }
1105
+ return { lexer, parser, tokens };
1106
+ }
1107
+ /**
1108
+ * Create a tolerant lexer and parser that do not throw on syntax errors
1109
+ * @param sql - the query string
1110
+ * @returns the lexer, parser and token stream
1111
+ */
1112
+ export function createTolerantParser(sql) {
1113
+ return createParser(sql, { tolerant: true });
870
1114
  }
871
1115
  /**
872
1116
  * Check a query against the WebdaQL grammar without evaluating it
@@ -1026,6 +1270,13 @@ export class QueryValidator {
1026
1270
  eval(target) {
1027
1271
  return this.query.filter.eval(target);
1028
1272
  }
1273
+ /**
1274
+ * Check whether this query's filter contains any dynamic values
1275
+ * @returns true if any child comparison holds a DynamicValue
1276
+ */
1277
+ isDynamic() {
1278
+ return this.query.filter.isDynamic();
1279
+ }
1029
1280
  /**
1030
1281
  * Display parse tree back as query
1031
1282
  * @param tree - the parse tree to display
@@ -1303,7 +1554,7 @@ export function stringifyQuery(query) {
1303
1554
  head = "DELETE";
1304
1555
  }
1305
1556
  else if (query.type === "UPDATE") {
1306
- head = `UPDATE SET ${(query.assignments ?? []).map(a => new ComparisonExpression("=", a.field, a.value).toString()).join(", ")}`;
1557
+ head = `UPDATE SET ${(query.assignments ?? []).map(a => new ComparisonExpression("=", a.field, a.rawValue ?? a.value).toString()).join(", ")}`;
1307
1558
  }
1308
1559
  else if (query.aggregation) {
1309
1560
  const metrics = Object.entries(query.aggregation.metrics).map(([alias, metric]) => {
@@ -1370,6 +1621,9 @@ function snapshot(value) {
1370
1621
  * @throws {WebdaQLError} for anything but a string, a finite number or a boolean
1371
1622
  */
1372
1623
  function checkScalar(value) {
1624
+ if (value instanceof DynamicValue) {
1625
+ return value.toString();
1626
+ }
1373
1627
  if (typeof value !== "string" && typeof value !== "number" && typeof value !== "boolean") {
1374
1628
  throw new WebdaQLError(`Invalid value in WebdaQL query: ${typeof value}`);
1375
1629
  }
@@ -1408,7 +1662,7 @@ function printExpression(expression, nested) {
1408
1662
  if (expression instanceof ComparisonExpression) {
1409
1663
  const attribute = checkFieldPath(expression.attribute);
1410
1664
  const operator = expression.operator;
1411
- const value = expression.value;
1665
+ const value = expression.rawValue !== undefined ? expression.rawValue : expression.value;
1412
1666
  if (typeof operator !== "string") {
1413
1667
  throw new WebdaQLError("Invalid operator in WebdaQL query");
1414
1668
  }
@@ -1469,7 +1723,7 @@ export function normalizeQuery(query) {
1469
1723
  head = `UPDATE SET ${assignments
1470
1724
  .map(a => {
1471
1725
  const field = a?.field;
1472
- const value = a?.value;
1726
+ const value = a?.rawValue ?? a?.value;
1473
1727
  return `${checkFieldPath(field)} = ${checkScalar(value)}`;
1474
1728
  })
1475
1729
  .join(", ")}`;
package/lib/query.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","sourceRoot":"","sources":["../src/query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../src/query.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webda/ql",
3
- "version": "4.0.0-beta.7",
3
+ "version": "4.0.0-beta.8",
4
4
  "description": "WebdaQL module",
5
5
  "keywords": [
6
6
  "webda"
@@ -14,6 +14,7 @@
14
14
  "main": "lib/index.js",
15
15
  "typings": "lib/index.d.ts",
16
16
  "dependencies": {
17
+ "antlr4-c3": "3.1.1",
17
18
  "antlr4ts": "0.5.0-alpha.4"
18
19
  },
19
20
  "devDependencies": {