@restura/core 1.9.2 → 1.10.0
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/dist/index.js +49 -5
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
package/dist/index.js
CHANGED
|
@@ -2530,7 +2530,15 @@ NullOperator
|
|
|
2530
2530
|
/ "null"i { return function(col) { return formatColumn(col) + ' IS NULL'; }; }
|
|
2531
2531
|
|
|
2532
2532
|
OperatorWithValue
|
|
2533
|
-
= "in"i _ "," _
|
|
2533
|
+
= "in"i _ "," _ vals:InValueList cast:TypeCast? { return function(col) {
|
|
2534
|
+
var formattedCol = formatColumn(col);
|
|
2535
|
+
var literals = vals.map(function(v) {
|
|
2536
|
+
var unescaped = unescapeValue(v);
|
|
2537
|
+
var formatted = formatValue(unescaped);
|
|
2538
|
+
return cast ? formatted + '::' + cast : formatted;
|
|
2539
|
+
});
|
|
2540
|
+
return formattedCol + ' IN (' + literals.join(', ') + ')';
|
|
2541
|
+
}; }
|
|
2534
2542
|
/ "ne"i _ "," _ val:CastedValue { return function(col) { return formatColumn(col) + ' <> ' + formatValueWithCast(val.value, val.cast); }; }
|
|
2535
2543
|
/ "gte"i _ "," _ val:CastedValue { return function(col) { return formatColumn(col) + ' >= ' + formatValueWithCast(val.value, val.cast); }; }
|
|
2536
2544
|
/ "gt"i _ "," _ val:CastedValue { return function(col) { return formatColumn(col) + ' > ' + formatValueWithCast(val.value, val.cast); }; }
|
|
@@ -2540,6 +2548,26 @@ OperatorWithValue
|
|
|
2540
2548
|
/ "sw"i _ "," _ val:CastedValue { return function(col) { var formatted = format.literal(unescapeValue(val.value) + '%'); return formatColumn(col) + ' ILIKE ' + (val.cast ? formatted + '::' + val.cast : formatted); }; }
|
|
2541
2549
|
/ "ew"i _ "," _ val:CastedValue { return function(col) { var formatted = format.literal('%' + unescapeValue(val.value)); return formatColumn(col) + ' ILIKE ' + (val.cast ? formatted + '::' + val.cast : formatted); }; }
|
|
2542
2550
|
|
|
2551
|
+
InValueList
|
|
2552
|
+
= first:InValue rest:("|" InValue)* {
|
|
2553
|
+
var values = [first];
|
|
2554
|
+
for (var i = 0; i < rest.length; i++) {
|
|
2555
|
+
values.push(rest[i][1]);
|
|
2556
|
+
}
|
|
2557
|
+
return values;
|
|
2558
|
+
}
|
|
2559
|
+
|
|
2560
|
+
InValue
|
|
2561
|
+
= QuotedString
|
|
2562
|
+
/ chars:InValueChar+ { return chars.join(''); }
|
|
2563
|
+
|
|
2564
|
+
InValueChar
|
|
2565
|
+
= "\\\\\\\\" { return '\\\\\\\\'; }
|
|
2566
|
+
/ "\\\\," { return '\\\\,'; }
|
|
2567
|
+
/ "\\\\|" { return '\\\\|'; }
|
|
2568
|
+
/ [a-zA-Z0-9_\\-!#/@$%^&*+=<>?~.;'" ]
|
|
2569
|
+
/ c:":" !":" { return c; }
|
|
2570
|
+
|
|
2543
2571
|
CastedValue
|
|
2544
2572
|
= val:Value cast:TypeCast? { return { value: val, cast: cast }; }
|
|
2545
2573
|
|
|
@@ -2550,24 +2578,40 @@ TypeCast
|
|
|
2550
2578
|
= "::" type:("timestamptz"i / "timestamp"i / "boolean"i / "numeric"i / "bigint"i / "text"i / "date"i / "int"i)
|
|
2551
2579
|
{ return type.toLowerCase(); }
|
|
2552
2580
|
|
|
2581
|
+
QuotedString
|
|
2582
|
+
= '"' chars:DoubleQuotedChar* '"' { return chars.join(''); }
|
|
2583
|
+
/ "'" chars:SingleQuotedChar* "'" { return chars.join(''); }
|
|
2584
|
+
|
|
2585
|
+
DoubleQuotedChar
|
|
2586
|
+
= '\\\\"' { return '"'; }
|
|
2587
|
+
/ '\\\\\\\\' { return '\\\\'; }
|
|
2588
|
+
/ [^"\\\\]
|
|
2589
|
+
|
|
2590
|
+
SingleQuotedChar
|
|
2591
|
+
= "\\\\'" { return "'"; }
|
|
2592
|
+
/ '\\\\\\\\' { return '\\\\'; }
|
|
2593
|
+
/ [^'\\\\]
|
|
2594
|
+
|
|
2553
2595
|
Value
|
|
2554
|
-
=
|
|
2596
|
+
= QuotedString
|
|
2597
|
+
/ chars:ValueChar+ { return chars.join(''); }
|
|
2555
2598
|
|
|
2556
2599
|
ValueChar
|
|
2557
2600
|
= "\\\\\\\\" { return '\\\\\\\\'; }
|
|
2558
2601
|
/ "\\\\," { return '\\\\,'; }
|
|
2559
2602
|
/ "\\\\|" { return '\\\\|'; }
|
|
2560
|
-
/ [
|
|
2603
|
+
/ [a-zA-Z0-9_\\-!#/@$%^&*+=<>?~.;'" ]
|
|
2561
2604
|
/ c:":" !":" { return c; }
|
|
2562
2605
|
|
|
2563
2606
|
ValueWithPipes
|
|
2564
|
-
=
|
|
2607
|
+
= QuotedString
|
|
2608
|
+
/ chars:ValueWithPipesChar+ { return chars.join(''); }
|
|
2565
2609
|
|
|
2566
2610
|
ValueWithPipesChar
|
|
2567
2611
|
= "\\\\\\\\" { return '\\\\\\\\'; }
|
|
2568
2612
|
/ "\\\\," { return '\\\\,'; }
|
|
2569
2613
|
/ "\\\\|" { return '\\\\|'; }
|
|
2570
|
-
/ [
|
|
2614
|
+
/ [a-zA-Z0-9_\\-!#/@$%^&*+=<>?~.;'" |]
|
|
2571
2615
|
/ c:":" !":" { return c; }
|
|
2572
2616
|
`;
|
|
2573
2617
|
var fullGrammar = entryGrammar + oldGrammar + newGrammar;
|