@malloydata/malloy-filter 0.0.239-dev250227145856 → 0.0.239-dev250227193901

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/SAMPLES.md CHANGED
@@ -106,7 +106,7 @@ Output: {
106
106
  endValue: 82
107
107
  }
108
108
 
109
- Input: , notanumber,, "null", apple pear orange, nulle, nnull, >=,
109
+ Input: , notanumber,, "null", apple pear orange, nulle, nnull, >=, a(, |, ), ;
110
110
  Logs: {
111
111
  severity: 'error',
112
112
  message: 'Invalid expression: notanumber',
@@ -152,24 +152,31 @@ Logs: {
152
152
  message: 'Invalid expression: >=',
153
153
  startIndex: 56,
154
154
  endIndex: 58
155
- }
156
-
157
- Input: [cat, 100], <cat
158
- Logs: {
155
+ } {
159
156
  severity: 'error',
160
- message: 'Invalid number',
161
- startIndex: 1,
162
- endIndex: 4
157
+ message: 'Invalid expression: a',
158
+ startIndex: 60,
159
+ endIndex: 61
163
160
  } {
164
161
  severity: 'error',
165
- message: 'Invalid expression: <',
166
- startIndex: 12,
167
- endIndex: 13
162
+ message: 'Invalid range expression',
163
+ startIndex: 61,
164
+ endIndex: 62
168
165
  } {
169
166
  severity: 'error',
170
- message: 'Invalid expression: cat',
171
- startIndex: 13,
172
- endIndex: 16
167
+ message: 'Invalid expression: |',
168
+ startIndex: 64,
169
+ endIndex: 65
170
+ } {
171
+ severity: 'error',
172
+ message: 'Invalid expression: )',
173
+ startIndex: 67,
174
+ endIndex: 68
175
+ } {
176
+ severity: 'error',
177
+ message: 'Invalid expression: ;',
178
+ startIndex: 70,
179
+ endIndex: 71
173
180
  }
174
181
 
175
182
  Input: -5.5 to 10
@@ -306,6 +313,36 @@ Output: { operator: '!=', values: [ 'NULL' ] }
306
313
  Input: CA--,D-G
307
314
  Output: { operator: '=', values: [ 'CA--', 'D-G' ] }
308
315
 
316
+ Input: Escaped\;chars\|are\(allowed\)ok
317
+ Output: { operator: '=', values: [ 'Escaped;chars|are(allowed)ok' ] }
318
+
319
+ Input: No(parens, No)parens, No;semicolons, No|ors
320
+ Output: {
321
+ operator: '=',
322
+ values: [ 'No', 'parens', 'No', 'parens', 'No', 'semicolons', 'No', 'ors' ]
323
+ }
324
+ Logs: {
325
+ severity: 'error',
326
+ message: 'Invalid unescaped token: (',
327
+ startIndex: 2,
328
+ endIndex: 3
329
+ } {
330
+ severity: 'error',
331
+ message: 'Invalid unescaped token: )',
332
+ startIndex: 13,
333
+ endIndex: 14
334
+ } {
335
+ severity: 'error',
336
+ message: 'Invalid unescaped token: ;',
337
+ startIndex: 24,
338
+ endIndex: 25
339
+ } {
340
+ severity: 'error',
341
+ message: 'Invalid unescaped token: |',
342
+ startIndex: 39,
343
+ endIndex: 40
344
+ }
345
+
309
346
  Input: hello world, foo="bar baz" , qux=quux
310
347
  Output: {
311
348
  operator: '=',
@@ -441,13 +478,13 @@ Output: {
441
478
  }
442
479
  }
443
480
 
444
- Input: before 2025-08-30 08:30:20
481
+ Input: Before 2025-08-30 08:30:20
445
482
  Output: {
446
483
  operator: 'before',
447
484
  moment: { type: 'absolute', date: '2025-08-30 08:30:20', unit: 'second' }
448
485
  }
449
486
 
450
- Input: after 2025-10-05
487
+ Input: AFTER 2025-10-05
451
488
  Output: {
452
489
  operator: 'after',
453
490
  moment: { type: 'absolute', date: '2025-10-05', unit: 'day' }
@@ -460,19 +497,19 @@ Output: {
460
497
  to: { type: 'absolute', date: '2025-09-18 14:30', unit: 'minute' }
461
498
  }
462
499
 
463
- Input: this year
500
+ Input: this YEAR
464
501
  Output: {
465
502
  operator: 'on',
466
503
  moment: { type: 'interval', kind: 'this', unit: 'year' }
467
504
  }
468
505
 
469
- Input: next tuesday
506
+ Input: Next Tuesday
470
507
  Output: {
471
508
  operator: 'on',
472
509
  moment: { type: 'interval', kind: 'next', unit: 'tuesday' }
473
510
  }
474
511
 
475
- Input: 7 years from now
512
+ Input: 7 years from Now
476
513
  Output: {
477
514
  operator: 'on',
478
515
  moment: {
@@ -675,6 +712,13 @@ Logs: {
675
712
  endIndex: 18
676
713
  }
677
714
 
678
- Input:
715
+ Input: (2025)
716
+ Logs: {
717
+ severity: 'error',
718
+ message: 'Invalid token (2025)',
719
+ startIndex: 0,
720
+ endIndex: 6
721
+ }
679
722
 
723
+ Input:
680
724
  ```
@@ -261,6 +261,33 @@ Output: -NULL
261
261
  Input: CA--,D-G
262
262
  Output: CA--, D-G
263
263
 
264
+ Input: Escaped\;chars\|are\(allowed\)ok
265
+ Output: Escaped\;chars\|are\(allowed\)ok
266
+
267
+ Input: No(parens, No)parens, No;semicolons, No|ors
268
+ Output: No, parens, No, parens, No, semicolons, No, ors
269
+ Logs: {
270
+ severity: 'error',
271
+ message: 'Invalid unescaped token: (',
272
+ startIndex: 2,
273
+ endIndex: 3
274
+ } {
275
+ severity: 'error',
276
+ message: 'Invalid unescaped token: )',
277
+ startIndex: 13,
278
+ endIndex: 14
279
+ } {
280
+ severity: 'error',
281
+ message: 'Invalid unescaped token: ;',
282
+ startIndex: 24,
283
+ endIndex: 25
284
+ } {
285
+ severity: 'error',
286
+ message: 'Invalid unescaped token: |',
287
+ startIndex: 39,
288
+ endIndex: 40
289
+ }
290
+
264
291
  Input: hello world, foo="bar baz" , qux=quux
265
292
  Output: hello world, foo="bar baz", qux=quux
266
293
 
@@ -334,6 +361,21 @@ Logs: {
334
361
  endIndex: 6
335
362
  }
336
363
 
364
+ Input: (true)
365
+ Logs: {
366
+ severity: 'error',
367
+ message: 'Invalid token (true)',
368
+ startIndex: 0,
369
+ endIndex: 6
370
+ }
371
+
372
+ Input: false|true
373
+ Logs: {
374
+ severity: 'error',
375
+ message: 'Invalid token false|true',
376
+ startIndex: 0,
377
+ endIndex: 10
378
+ }
337
379
  ```
338
380
 
339
381
  -------------------------------------------------------------------------
@@ -512,6 +554,14 @@ Logs: {
512
554
  endIndex: 18
513
555
  }
514
556
 
557
+ Input: (2025)
558
+ Logs: {
559
+ severity: 'error',
560
+ message: 'Invalid token (2025)',
561
+ startIndex: 0,
562
+ endIndex: 6
563
+ }
564
+
515
565
  Input:
516
566
 
517
567
  ```
@@ -54,7 +54,7 @@ const numberExamples = [
54
54
  '[.12e-20, 20.0e3)',
55
55
  '[0,9],[20,29]',
56
56
  '[0,10], 20, NULL, ( 72, 82 ] ',
57
- ', notanumber,, "null", apple pear orange, nulle, nnull, >=,',
57
+ ', notanumber,, "null", apple pear orange, nulle, nnull, >=, a(, |, ), ;',
58
58
  '[cat, 100], <cat',
59
59
  '-5.5 to 10',
60
60
  ];
@@ -90,6 +90,8 @@ const stringExamples = [
90
90
  '\\-NULL',
91
91
  '-N\\ULL',
92
92
  'CA--,D-G',
93
+ 'Escaped\\;chars\\|are\\(allowed\\)ok',
94
+ 'No(parens, No)parens, No;semicolons, No|ors',
93
95
  ' hello world, foo="bar baz" , qux=quux',
94
96
  'one ,Null , Empty,E M P T Y Y,EEmpty, emptIEs',
95
97
  '',
@@ -106,6 +108,8 @@ const booleanExamples = [
106
108
  '10',
107
109
  'nnull',
108
110
  ' truee ',
111
+ '(true)',
112
+ 'false|true',
109
113
  ];
110
114
  const dateExamples = [
111
115
  'this month',
@@ -148,6 +152,7 @@ const dateExamples = [
148
152
  '2025-12-25 12:32:',
149
153
  '12:22',
150
154
  'after 2025 seconds',
155
+ '(2025)',
151
156
  '',
152
157
  ];
153
158
  /* eslint-disable @typescript-eslint/no-unused-vars */
@@ -1 +1 @@
1
- {"version":3,"file":"generate_samples.js","sourceRoot":"","sources":["../src/generate_samples.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate_samples.js","sourceRoot":"","sources":["../src/generate_samples.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ export declare class StringParser extends BaseParser {
7
7
  private static readonly percentEndRegex;
8
8
  private static readonly negatedStartRegex;
9
9
  private static readonly singleBackslashRegex;
10
+ private static readonly invalidTokens;
10
11
  constructor(input: string);
11
12
  private tokenize;
12
13
  parse(): StringParserResponse;
@@ -14,7 +14,25 @@ class StringParser extends base_parser_1.BaseParser {
14
14
  super(input);
15
15
  }
16
16
  tokenize() {
17
- const specialSubstrings = [{ type: ',', value: ',' }];
17
+ const specialSubstrings = [
18
+ { type: ',', value: ',' },
19
+ {
20
+ type: StringParser.invalidTokens[0],
21
+ value: StringParser.invalidTokens[0],
22
+ },
23
+ {
24
+ type: StringParser.invalidTokens[1],
25
+ value: StringParser.invalidTokens[1],
26
+ },
27
+ {
28
+ type: StringParser.invalidTokens[2],
29
+ value: StringParser.invalidTokens[2],
30
+ },
31
+ {
32
+ type: StringParser.invalidTokens[3],
33
+ value: StringParser.invalidTokens[3],
34
+ },
35
+ ];
18
36
  const specialWords = [
19
37
  { type: 'null', value: 'null', ignoreCase: true },
20
38
  { type: 'empty', value: 'empty', ignoreCase: true },
@@ -49,6 +67,15 @@ class StringParser extends base_parser_1.BaseParser {
49
67
  }
50
68
  this.index++;
51
69
  }
70
+ else if (StringParser.invalidTokens.includes(token.type)) {
71
+ logs.push({
72
+ severity: 'error',
73
+ message: 'Invalid unescaped token: ' + token.type,
74
+ startIndex: token.startIndex,
75
+ endIndex: token.endIndex,
76
+ });
77
+ this.index++;
78
+ }
52
79
  else if (token.type === 'null' ||
53
80
  token.type === 'not_null' ||
54
81
  token.type === 'empty' ||
@@ -163,4 +190,6 @@ StringParser.percentStartRegex = /^%/;
163
190
  StringParser.percentEndRegex = /(?<!\\)%$/;
164
191
  StringParser.negatedStartRegex = /^-(.+)$/;
165
192
  StringParser.singleBackslashRegex = /(?<!\\)\\(?!\\)/g;
193
+ // TODO: Replace the invalid tokens with support for conjunctive clauses.
194
+ StringParser.invalidTokens = ['|', ';', '(', ')'];
166
195
  //# sourceMappingURL=string_parser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"string_parser.js","sourceRoot":"","sources":["../src/string_parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"string_parser.js","sourceRoot":"","sources":["../src/string_parser.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,8 @@ class StringSerializer {
23
23
  operator === 'not_contains');
24
24
  }
25
25
  static escapeSpecialCharacters(input) {
26
- return input.replace(/[,\\]/g, match => `\\${match}`);
26
+ // TODO: remove conjunctive characters from this list after they are supported. ();|
27
+ return input.replace(/[,();|\\]/g, match => `\\${match}`);
27
28
  }
28
29
  static escapeWildcardCharacters(input) {
29
30
  return input.replace(/[_%]/g, match => `\\${match}`);
@@ -1 +1 @@
1
- {"version":3,"file":"string_serializer.js","sourceRoot":"","sources":["../src/string_serializer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"string_serializer.js","sourceRoot":"","sources":["../src/string_serializer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@malloydata/malloy-filter",
3
- "version": "0.0.239-dev250227145856",
3
+ "version": "0.0.239-dev250227193901",
4
4
  "license": "MIT",
5
5
  "description": "",
6
6
  "main": "dist/index.js",
@@ -31,7 +31,7 @@ const numberExamples = [
31
31
  '[.12e-20, 20.0e3)',
32
32
  '[0,9],[20,29]',
33
33
  '[0,10], 20, NULL, ( 72, 82 ] ',
34
- ', notanumber,, "null", apple pear orange, nulle, nnull, >=,',
34
+ ', notanumber,, "null", apple pear orange, nulle, nnull, >=, a(, |, ), ;',
35
35
  '[cat, 100], <cat',
36
36
  '-5.5 to 10',
37
37
  ];
@@ -68,6 +68,8 @@ const stringExamples = [
68
68
  '\\-NULL',
69
69
  '-N\\ULL',
70
70
  'CA--,D-G', // _ = 'CA--' OR _ = 'D-G'
71
+ 'Escaped\\;chars\\|are\\(allowed\\)ok',
72
+ 'No(parens, No)parens, No;semicolons, No|ors',
71
73
  ' hello world, foo="bar baz" , qux=quux',
72
74
  'one ,Null , Empty,E M P T Y Y,EEmpty, emptIEs',
73
75
  '',
@@ -85,6 +87,8 @@ const booleanExamples = [
85
87
  '10',
86
88
  'nnull',
87
89
  ' truee ',
90
+ '(true)',
91
+ 'false|true',
88
92
  ];
89
93
 
90
94
  const dateExamples = [
@@ -128,6 +132,7 @@ const dateExamples = [
128
132
  '2025-12-25 12:32:', // Bad syntax
129
133
  '12:22',
130
134
  'after 2025 seconds', // Bad syntax
135
+ '(2025)',
131
136
  '',
132
137
  ];
133
138
 
@@ -24,12 +24,33 @@ export class StringParser extends BaseParser {
24
24
  private static readonly negatedStartRegex: RegExp = /^-(.+)$/;
25
25
  private static readonly singleBackslashRegex: RegExp = /(?<!\\)\\(?!\\)/g;
26
26
 
27
+ // TODO: Replace the invalid tokens with support for conjunctive clauses.
28
+ private static readonly invalidTokens: string[] = ['|', ';', '(', ')'];
29
+
27
30
  constructor(input: string) {
28
31
  super(input);
29
32
  }
30
33
 
31
34
  private tokenize(): void {
32
- const specialSubstrings: SpecialToken[] = [{type: ',', value: ','}];
35
+ const specialSubstrings: SpecialToken[] = [
36
+ {type: ',', value: ','},
37
+ {
38
+ type: StringParser.invalidTokens[0],
39
+ value: StringParser.invalidTokens[0],
40
+ },
41
+ {
42
+ type: StringParser.invalidTokens[1],
43
+ value: StringParser.invalidTokens[1],
44
+ },
45
+ {
46
+ type: StringParser.invalidTokens[2],
47
+ value: StringParser.invalidTokens[2],
48
+ },
49
+ {
50
+ type: StringParser.invalidTokens[3],
51
+ value: StringParser.invalidTokens[3],
52
+ },
53
+ ];
33
54
  const specialWords: SpecialToken[] = [
34
55
  {type: 'null', value: 'null', ignoreCase: true},
35
56
  {type: 'empty', value: 'empty', ignoreCase: true},
@@ -65,6 +86,14 @@ export class StringParser extends BaseParser {
65
86
  });
66
87
  }
67
88
  this.index++;
89
+ } else if (StringParser.invalidTokens.includes(token.type)) {
90
+ logs.push({
91
+ severity: 'error',
92
+ message: 'Invalid unescaped token: ' + token.type,
93
+ startIndex: token.startIndex,
94
+ endIndex: token.endIndex,
95
+ });
96
+ this.index++;
68
97
  } else if (
69
98
  token.type === 'null' ||
70
99
  token.type === 'not_null' ||
@@ -33,7 +33,8 @@ export class StringSerializer {
33
33
  }
34
34
 
35
35
  private static escapeSpecialCharacters(input: string): string {
36
- return input.replace(/[,\\]/g, match => `\\${match}`);
36
+ // TODO: remove conjunctive characters from this list after they are supported. ();|
37
+ return input.replace(/[,();|\\]/g, match => `\\${match}`);
37
38
  }
38
39
 
39
40
  private static escapeWildcardCharacters(input: string): string {