@react-querybuilder/core 8.20.2 → 8.21.1
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 +4 -0
- package/dist/cjs/react-querybuilder_core.cjs.development.d.ts +2261 -2113
- package/dist/cjs/react-querybuilder_core.cjs.development.js +319 -22
- package/dist/cjs/react-querybuilder_core.cjs.development.js.map +1 -1
- package/dist/cjs/react-querybuilder_core.cjs.production.d.ts +2261 -2113
- package/dist/cjs/react-querybuilder_core.cjs.production.js +1 -1
- package/dist/cjs/react-querybuilder_core.cjs.production.js.map +1 -1
- package/dist/{convertQuery-BJKNgecE.js → convertQuery-Cw76XFIn.js} +8 -8
- package/dist/{convertQuery-BJKNgecE.js.map → convertQuery-Cw76XFIn.js.map} +1 -1
- package/dist/{convertQuery-J1CaoDxe.mjs → convertQuery-D_4J7E-Z.mjs} +2 -2
- package/dist/{convertQuery-J1CaoDxe.mjs.map → convertQuery-D_4J7E-Z.mjs.map} +1 -1
- package/dist/formatQuery.d.mts +499 -459
- package/dist/formatQuery.d.ts +499 -459
- package/dist/formatQuery.js +170 -88
- package/dist/formatQuery.js.map +1 -1
- package/dist/formatQuery.mjs +97 -20
- package/dist/formatQuery.mjs.map +1 -1
- package/dist/import-BVdxeIBO.d.mts +26 -0
- package/dist/import-Ddc3d_8q.d.ts +26 -0
- package/dist/{index-DlVg-QXo.d.mts → index-BSwFvkeI.d.mts} +679 -648
- package/dist/{index-DlVg-QXo.d.ts → index-BSwFvkeI.d.ts} +679 -648
- package/dist/{objectUtils-DBJI82bl.js → isRuleGroup-0JNiQgLg.js} +1 -26
- package/dist/isRuleGroup-0JNiQgLg.js.map +1 -0
- package/dist/{objectUtils-ZvPkF6u6.mjs → isRuleGroup-CqLThsbu.mjs} +2 -15
- package/dist/isRuleGroup-CqLThsbu.mjs.map +1 -0
- package/dist/objectUtils-Cr02aGxb.js +27 -0
- package/dist/objectUtils-Cr02aGxb.js.map +1 -0
- package/dist/objectUtils-DBlmJgBf.mjs +16 -0
- package/dist/objectUtils-DBlmJgBf.mjs.map +1 -0
- package/dist/parseCEL.d.mts +64 -30
- package/dist/parseCEL.d.ts +64 -30
- package/dist/parseCEL.js +91 -12
- package/dist/parseCEL.js.map +1 -1
- package/dist/parseCEL.mjs +85 -8
- package/dist/parseCEL.mjs.map +1 -1
- package/dist/parseCypher.d.mts +24 -25
- package/dist/parseCypher.d.ts +24 -25
- package/dist/parseGremlin.d.mts +18 -19
- package/dist/parseGremlin.d.ts +18 -19
- package/dist/parseJSONata.d.mts +207 -20
- package/dist/parseJSONata.d.ts +207 -20
- package/dist/parseJSONata.js +92 -7
- package/dist/parseJSONata.js.map +1 -1
- package/dist/parseJSONata.mjs +80 -4
- package/dist/parseJSONata.mjs.map +1 -1
- package/dist/parseJsonLogic.d.mts +51 -18
- package/dist/parseJsonLogic.d.ts +51 -18
- package/dist/parseJsonLogic.js +95 -34
- package/dist/parseJsonLogic.js.map +1 -1
- package/dist/parseJsonLogic.mjs +65 -6
- package/dist/parseJsonLogic.mjs.map +1 -1
- package/dist/parseMongoDB.d.mts +89 -58
- package/dist/parseMongoDB.d.ts +89 -58
- package/dist/parseMongoDB.js +140 -15
- package/dist/parseMongoDB.js.map +1 -1
- package/dist/parseMongoDB.mjs +128 -5
- package/dist/parseMongoDB.mjs.map +1 -1
- package/dist/parseSPARQL.d.mts +17 -18
- package/dist/parseSPARQL.d.ts +17 -18
- package/dist/parseSPARQL.js.map +1 -1
- package/dist/parseSPARQL.mjs.map +1 -1
- package/dist/parseSQL.d.mts +266 -18
- package/dist/parseSQL.d.ts +266 -18
- package/dist/parseSQL.js +163 -10
- package/dist/parseSQL.js.map +1 -1
- package/dist/parseSQL.mjs +149 -7
- package/dist/parseSQL.mjs.map +1 -1
- package/dist/parseSpEL.d.mts +193 -19
- package/dist/parseSpEL.d.ts +193 -19
- package/dist/parseSpEL.js +166 -7
- package/dist/parseSpEL.js.map +1 -1
- package/dist/parseSpEL.mjs +142 -6
- package/dist/parseSpEL.mjs.map +1 -1
- package/dist/{prepareQueryObjects-Bni5VgYM.js → prepareQueryObjects-C2-kTZvR.js} +5 -5
- package/dist/prepareQueryObjects-C2-kTZvR.js.map +1 -0
- package/dist/{prepareQueryObjects-BCLU20Cg.mjs → prepareQueryObjects-Q18lHCKl.mjs} +3 -3
- package/dist/prepareQueryObjects-Q18lHCKl.mjs.map +1 -0
- package/dist/query-builder-layout.css.map +1 -1
- package/dist/query-builder.css.map +1 -1
- package/dist/react-querybuilder_core.d.mts +2261 -2113
- package/dist/react-querybuilder_core.legacy-esm.d.ts +2261 -2113
- package/dist/react-querybuilder_core.legacy-esm.js +335 -40
- package/dist/react-querybuilder_core.legacy-esm.js.map +1 -1
- package/dist/react-querybuilder_core.mjs +309 -23
- package/dist/react-querybuilder_core.mjs.map +1 -1
- package/dist/react-querybuilder_core.production.d.mts +2261 -2113
- package/dist/react-querybuilder_core.production.mjs +1 -1
- package/dist/react-querybuilder_core.production.mjs.map +1 -1
- package/dist/styles/_layout.scss +18 -14
- package/dist/styles/_main.scss +7 -2
- package/dist/transformQuery.d.mts +91 -92
- package/dist/transformQuery.d.ts +91 -92
- package/dist/transformQuery.js +4 -3
- package/dist/transformQuery.js.map +1 -1
- package/dist/transformQuery.mjs +2 -1
- package/dist/transformQuery.mjs.map +1 -1
- package/dist/{utils-BpaOtylk.js → utils-DEwV7F6B.js} +108 -12
- package/dist/utils-DEwV7F6B.js.map +1 -0
- package/dist/{utils-CJRGiPb-.mjs → utils-Dt0D_DMV.mjs} +69 -3
- package/dist/utils-Dt0D_DMV.mjs.map +1 -0
- package/package.json +16 -16
- package/dist/import-Qs1-kgv5.d.ts +0 -27
- package/dist/import-ShTj5IdB.d.mts +0 -27
- package/dist/objectUtils-DBJI82bl.js.map +0 -1
- package/dist/objectUtils-ZvPkF6u6.mjs.map +0 -1
- package/dist/prepareQueryObjects-BCLU20Cg.mjs.map +0 -1
- package/dist/prepareQueryObjects-Bni5VgYM.js.map +0 -1
- package/dist/utils-BpaOtylk.js.map +0 -1
- package/dist/utils-CJRGiPb-.mjs.map +0 -1
package/dist/formatQuery.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_utils = require("./utils-
|
|
3
|
-
const
|
|
2
|
+
const require_utils = require("./utils-DEwV7F6B.js");
|
|
3
|
+
const require_isRuleGroup = require("./isRuleGroup-0JNiQgLg.js");
|
|
4
4
|
const require_transformQuery = require("./transformQuery.js");
|
|
5
|
-
const require_convertQuery = require("./convertQuery-
|
|
5
|
+
const require_convertQuery = require("./convertQuery-Cw76XFIn.js");
|
|
6
6
|
//#region src/utils/isRuleOrGroupValid.ts
|
|
7
7
|
/**
|
|
8
8
|
* Determines if an object is useful as a validation result.
|
|
9
9
|
*/
|
|
10
|
-
const isValidationResult = (vr) =>
|
|
10
|
+
const isValidationResult = (vr) => require_isRuleGroup.isPojo(vr) && typeof vr.valid === "boolean";
|
|
11
11
|
/**
|
|
12
12
|
* Determines if a rule or group is valid based on a validation result (if defined)
|
|
13
13
|
* or a validator function. Returns `true` if neither are defined and the `muted`
|
|
@@ -17,7 +17,7 @@ const isRuleOrGroupValid = (rg, validationResult, validator) => {
|
|
|
17
17
|
if (rg.muted) return false;
|
|
18
18
|
if (typeof validationResult === "boolean") return validationResult;
|
|
19
19
|
if (isValidationResult(validationResult)) return validationResult.valid;
|
|
20
|
-
if (typeof validator === "function" && !
|
|
20
|
+
if (typeof validator === "function" && !require_isRuleGroup.isRuleGroup(rg)) {
|
|
21
21
|
const vr = validator(rg);
|
|
22
22
|
if (typeof vr === "boolean") return vr;
|
|
23
23
|
// v8 ignore else
|
|
@@ -44,7 +44,7 @@ const defaultRuleGroupProcessorCEL = (ruleGroup, options) => {
|
|
|
44
44
|
precedingCombinator = require_utils.celCombinatorMap[rule];
|
|
45
45
|
continue;
|
|
46
46
|
}
|
|
47
|
-
if (
|
|
47
|
+
if (require_isRuleGroup.isRuleGroup(rule)) {
|
|
48
48
|
const processedGroup = processRuleGroup(rule);
|
|
49
49
|
if (processedGroup) {
|
|
50
50
|
if (!firstRule && precedingCombinator) {
|
|
@@ -74,7 +74,7 @@ const defaultRuleGroupProcessorCEL = (ruleGroup, options) => {
|
|
|
74
74
|
processedRules.push(processedRule);
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
|
-
const expression = processedRules.join(
|
|
77
|
+
const expression = processedRules.join(require_isRuleGroup.isRuleGroupType(rg) ? ` ${require_utils.celCombinatorMap[rg.combinator]} ` : " ");
|
|
78
78
|
const [prefix, suffix] = rg.not || !outermost ? [`${rg.not ? "!" : ""}(`, ")"] : ["", ""];
|
|
79
79
|
return expression ? `${prefix}${expression}${suffix}` : fallbackExpression;
|
|
80
80
|
};
|
|
@@ -92,8 +92,8 @@ const escapeDoubleQuotes$1 = (v, escapeQuotes) => typeof v !== "string" || !esca
|
|
|
92
92
|
const defaultRuleProcessorCEL = (rule, opts = {}) => {
|
|
93
93
|
const { escapeQuotes, parseNumbers, preserveValueOrder } = opts;
|
|
94
94
|
const { field, operator, value, valueSource } = rule;
|
|
95
|
-
const valueIsField = valueSource === "field";
|
|
96
|
-
const operatorTL =
|
|
95
|
+
const valueIsField = valueSource === "field" || valueSource === "parameter";
|
|
96
|
+
const operatorTL = require_isRuleGroup.lc(operator === "=" ? "==" : operator);
|
|
97
97
|
const useBareValue = typeof value === "number" || typeof value === "boolean" || typeof value === "bigint" || require_utils.shouldRenderAsNumber(value, parseNumbers);
|
|
98
98
|
const matchEval = require_utils.processMatchMode(rule);
|
|
99
99
|
if (matchEval === false) return "";
|
|
@@ -142,7 +142,7 @@ const defaultRuleProcessorCEL = (rule, opts = {}) => {
|
|
|
142
142
|
case "between":
|
|
143
143
|
case "notbetween": {
|
|
144
144
|
const valueAsArray = require_utils.toArray(value);
|
|
145
|
-
if (valueAsArray.length >= 2 && !
|
|
145
|
+
if (valueAsArray.length >= 2 && !require_isRuleGroup.nullOrUndefinedOrEmpty(valueAsArray[0]) && !require_isRuleGroup.nullOrUndefinedOrEmpty(valueAsArray[1])) {
|
|
146
146
|
const [first, second] = valueAsArray;
|
|
147
147
|
const shouldParseNumbers = !(parseNumbers === false);
|
|
148
148
|
const firstNum = require_utils.shouldRenderAsNumber(first, shouldParseNumbers) ? require_utils.parseNumber(first, { parseNumbers: shouldParseNumbers }) : NaN;
|
|
@@ -178,10 +178,10 @@ const defaultRuleGroupProcessorMongoDBQuery = (ruleGroup, options, meta) => {
|
|
|
178
178
|
const { inExpressionContext } = context ?? {};
|
|
179
179
|
const processRuleGroup = (rg, outermost) => {
|
|
180
180
|
if (!isRuleOrGroupValid(rg, validationMap[rg.id ?? ""])) return outermost ? mongoDbFallback : false;
|
|
181
|
-
const combinator = `$${
|
|
181
|
+
const combinator = `$${require_isRuleGroup.lc(rg.combinator)}`;
|
|
182
182
|
let hasChildRules = false;
|
|
183
183
|
const expressions = rg.rules.map((rule) => {
|
|
184
|
-
if (
|
|
184
|
+
if (require_isRuleGroup.isRuleGroup(rule)) {
|
|
185
185
|
const processedRuleGroup = processRuleGroup(rule);
|
|
186
186
|
if (processedRuleGroup) {
|
|
187
187
|
hasChildRules = true;
|
|
@@ -263,7 +263,7 @@ const defaultRuleProcessorMongoDBQuery = (rule, options = {}) => {
|
|
|
263
263
|
}
|
|
264
264
|
}
|
|
265
265
|
if (operator === "=" && !valueIsField) return avoidFieldsAsKeys ? { $eq: [`$${field}`, processNumber$1(value, value, parseNumbers)] } : { [field]: processNumber$1(value, value, parseNumbers) };
|
|
266
|
-
const operatorLC =
|
|
266
|
+
const operatorLC = require_isRuleGroup.lc(operator);
|
|
267
267
|
switch (operatorLC) {
|
|
268
268
|
case "<":
|
|
269
269
|
case "<=":
|
|
@@ -364,7 +364,7 @@ const defaultRuleGroupProcessorSpEL = (ruleGroup, options) => {
|
|
|
364
364
|
precedingCombinator = rule;
|
|
365
365
|
continue;
|
|
366
366
|
}
|
|
367
|
-
if (
|
|
367
|
+
if (require_isRuleGroup.isRuleGroup(rule)) {
|
|
368
368
|
const processedGroup = processRuleGroup(rule);
|
|
369
369
|
if (processedGroup) {
|
|
370
370
|
if (!firstRule && precedingCombinator) {
|
|
@@ -394,7 +394,7 @@ const defaultRuleGroupProcessorSpEL = (ruleGroup, options) => {
|
|
|
394
394
|
processedRules.push(processedRule);
|
|
395
395
|
}
|
|
396
396
|
}
|
|
397
|
-
const expression = processedRules.join(
|
|
397
|
+
const expression = processedRules.join(require_isRuleGroup.isRuleGroupType(rg) ? ` ${rg.combinator} ` : " ");
|
|
398
398
|
const [prefix, suffix] = rg.not || !outermost ? [`${rg.not ? "!" : ""}(`, ")"] : ["", ""];
|
|
399
399
|
return expression ? `${prefix}${expression}${suffix}` : fallbackExpression;
|
|
400
400
|
};
|
|
@@ -413,8 +413,8 @@ const escapeSingleQuotes$2 = (v, escapeQuotes) => typeof v !== "string" || !esca
|
|
|
413
413
|
const defaultRuleProcessorSpEL = (rule, opts = {}) => {
|
|
414
414
|
const { field, operator, value, valueSource } = rule;
|
|
415
415
|
const { escapeQuotes, parseNumbers, preserveValueOrder } = opts;
|
|
416
|
-
const valueIsField = valueSource === "field";
|
|
417
|
-
const operatorTL =
|
|
416
|
+
const valueIsField = valueSource === "field" || valueSource === "parameter";
|
|
417
|
+
const operatorTL = require_isRuleGroup.lc(operator === "=" ? "==" : operator);
|
|
418
418
|
const useBareValue = typeof value === "number" || typeof value === "boolean" || typeof value === "bigint" || require_utils.shouldRenderAsNumber(value, parseNumbers);
|
|
419
419
|
const matchEval = require_utils.processMatchMode(rule);
|
|
420
420
|
if (matchEval === false) return "";
|
|
@@ -447,11 +447,20 @@ const defaultRuleProcessorSpEL = (rule, opts = {}) => {
|
|
|
447
447
|
case ">":
|
|
448
448
|
case ">=": return `${field} ${operatorTL} ${valueIsField || useBareValue ? require_utils.trimIfString(value) : `'${escapeSingleQuotes$2(value, escapeQuotes)}'`}`;
|
|
449
449
|
case "contains":
|
|
450
|
-
case "doesnotcontain":
|
|
450
|
+
case "doesnotcontain": {
|
|
451
|
+
const valueTL = valueIsField ? `'.*'.concat(${require_utils.trimIfString(value)}).concat('.*')` : `'.*${escapeSingleQuotes$2(value, escapeQuotes)}.*'`;
|
|
452
|
+
return wrapInNegation(`${field} matches ${valueTL}`, shouldNegate$1(operatorTL));
|
|
453
|
+
}
|
|
451
454
|
case "beginswith":
|
|
452
|
-
case "doesnotbeginwith":
|
|
455
|
+
case "doesnotbeginwith": {
|
|
456
|
+
const valueTL = valueIsField ? `'^'.concat(${require_utils.trimIfString(value)}).concat('.*')` : `'${typeof value === "string" && !value.startsWith("^") || useBareValue ? "^" : ""}${escapeSingleQuotes$2(value, escapeQuotes)}.*'`;
|
|
457
|
+
return wrapInNegation(`${field} matches ${valueTL}`, shouldNegate$1(operatorTL));
|
|
458
|
+
}
|
|
453
459
|
case "endswith":
|
|
454
|
-
case "doesnotendwith":
|
|
460
|
+
case "doesnotendwith": {
|
|
461
|
+
const valueTL = valueIsField ? `'.*'.concat(${require_utils.trimIfString(value)}).concat('$')` : `'.*${escapeSingleQuotes$2(value, escapeQuotes)}${typeof value === "string" && !value.endsWith("$") || useBareValue ? "$" : ""}'`;
|
|
462
|
+
return wrapInNegation(`${field} matches ${valueTL}`, shouldNegate$1(operatorTL));
|
|
463
|
+
}
|
|
455
464
|
case "null": return `${field} == null`;
|
|
456
465
|
case "notnull": return `${field} != null`;
|
|
457
466
|
case "in":
|
|
@@ -463,7 +472,7 @@ const defaultRuleProcessorSpEL = (rule, opts = {}) => {
|
|
|
463
472
|
case "between":
|
|
464
473
|
case "notbetween": {
|
|
465
474
|
const valueAsArray = require_utils.toArray(value);
|
|
466
|
-
if (valueAsArray.length >= 2 && !
|
|
475
|
+
if (valueAsArray.length >= 2 && !require_isRuleGroup.nullOrUndefinedOrEmpty(valueAsArray[0]) && !require_isRuleGroup.nullOrUndefinedOrEmpty(valueAsArray[1])) {
|
|
467
476
|
const [first, second] = valueAsArray;
|
|
468
477
|
const shouldParseNumbers = !(parseNumbers === false);
|
|
469
478
|
const firstNum = require_utils.shouldRenderAsNumber(first, shouldParseNumbers) ? require_utils.parseNumber(first, { parseNumbers: shouldParseNumbers }) : NaN;
|
|
@@ -489,9 +498,37 @@ const escapeStringValueQuotes$1 = (v, quoteChar, escapeQuotes) => escapeQuotes &
|
|
|
489
498
|
*
|
|
490
499
|
* @group Export
|
|
491
500
|
*/
|
|
492
|
-
const defaultValueProcessorByRule = ({ operator, value, valueSource }, { escapeQuotes, parseNumbers, preserveValueOrder, quoteFieldNamesWith, quoteValuesWith, concatOperator = "||", fieldIdentifierSeparator, wrapValueWith = ["", ""], translations } = {}) => {
|
|
501
|
+
const defaultValueProcessorByRule = ({ operator, value, valueSource }, { escapeQuotes, parseNumbers, preserveValueOrder, quoteFieldNamesWith, quoteValuesWith, concatOperator = "||", fieldIdentifierSeparator, paramPrefix, wrapValueWith = ["", ""], translations } = {}) => {
|
|
502
|
+
if (valueSource === "parameter") {
|
|
503
|
+
const operatorLowerCase = require_isRuleGroup.lc(operator);
|
|
504
|
+
if (operatorLowerCase === "between" || operatorLowerCase === "notbetween") {
|
|
505
|
+
const valueAsArray = require_utils.toArray(value, { retainEmptyStrings: true });
|
|
506
|
+
if (valueAsArray.length < 2 || !require_utils.isValidValue(valueAsArray[0]) || !require_utils.isValidValue(valueAsArray[1])) return "";
|
|
507
|
+
const [first, second] = valueAsArray;
|
|
508
|
+
return [require_utils.withParamPrefix(first, paramPrefix), require_utils.withParamPrefix(second, paramPrefix)].join(` ${translations?.betweenAnd ?? translations?.and ?? "and"} `);
|
|
509
|
+
}
|
|
510
|
+
if (operatorLowerCase === "in" || operatorLowerCase === "notin") {
|
|
511
|
+
const valueAsArray = require_utils.toArray(value);
|
|
512
|
+
if (valueAsArray.length === 0) return "";
|
|
513
|
+
return `(${valueAsArray.map((v) => require_utils.withParamPrefix(v, paramPrefix)).join(", ")})`;
|
|
514
|
+
}
|
|
515
|
+
const paramRef = require_utils.withParamPrefix(value, paramPrefix);
|
|
516
|
+
switch (operatorLowerCase) {
|
|
517
|
+
case "contains":
|
|
518
|
+
case "doesnotcontain":
|
|
519
|
+
case "beginswith":
|
|
520
|
+
case "doesnotbeginwith":
|
|
521
|
+
case "endswith":
|
|
522
|
+
case "doesnotendwith": return require_utils.wrapLikeFragment(paramRef, operatorLowerCase, {
|
|
523
|
+
concatOperator,
|
|
524
|
+
quoteValuesWith,
|
|
525
|
+
wrapValueWith
|
|
526
|
+
});
|
|
527
|
+
}
|
|
528
|
+
return paramRef;
|
|
529
|
+
}
|
|
493
530
|
const valueIsField = valueSource === "field";
|
|
494
|
-
const operatorLowerCase =
|
|
531
|
+
const operatorLowerCase = require_isRuleGroup.lc(operator);
|
|
495
532
|
const quoteChar = quoteValuesWith || "'";
|
|
496
533
|
const quoteValue = (v) => `${wrapValueWith[0]}${quoteChar}${v}${quoteChar}${wrapValueWith[1]}`;
|
|
497
534
|
const escapeValue = (v) => escapeStringValueQuotes$1(v, quoteChar, escapeQuotes);
|
|
@@ -500,7 +537,11 @@ const defaultValueProcessorByRule = ({ operator, value, valueSource }, { escapeQ
|
|
|
500
537
|
quoteFieldNamesWith,
|
|
501
538
|
fieldIdentifierSeparator
|
|
502
539
|
});
|
|
503
|
-
const
|
|
540
|
+
const likeOpts = {
|
|
541
|
+
concatOperator,
|
|
542
|
+
quoteValuesWith,
|
|
543
|
+
wrapValueWith
|
|
544
|
+
};
|
|
504
545
|
switch (operatorLowerCase) {
|
|
505
546
|
case "null":
|
|
506
547
|
case "notnull": return "";
|
|
@@ -527,11 +568,11 @@ const defaultValueProcessorByRule = ({ operator, value, valueSource }, { escapeQ
|
|
|
527
568
|
return (valueIsField ? valsOneAndTwoOnly.map((v) => wrapFieldName(v)) : valsOneAndTwoOnly.every((v) => require_utils.shouldRenderAsNumber(v, parseNumbers)) ? valsOneAndTwoOnly.map((v) => require_utils.parseNumber(v, { parseNumbers: "strict" })) : valsOneAndTwoOnly.map((v) => wrapAndEscape(v))).join(` ${translations?.betweenAnd ?? translations?.and ?? "and"} `);
|
|
528
569
|
}
|
|
529
570
|
case "contains":
|
|
530
|
-
case "doesnotcontain": return valueIsField ?
|
|
571
|
+
case "doesnotcontain": return valueIsField ? require_utils.wrapLikeFragment(wrapFieldName(value), operatorLowerCase, likeOpts) : quoteValue(`%${escapeValue(value)}%`);
|
|
531
572
|
case "beginswith":
|
|
532
|
-
case "doesnotbeginwith": return valueIsField ?
|
|
573
|
+
case "doesnotbeginwith": return valueIsField ? require_utils.wrapLikeFragment(wrapFieldName(value), operatorLowerCase, likeOpts) : quoteValue(`${escapeValue(value)}%`);
|
|
533
574
|
case "endswith":
|
|
534
|
-
case "doesnotendwith": return valueIsField ?
|
|
575
|
+
case "doesnotendwith": return valueIsField ? require_utils.wrapLikeFragment(wrapFieldName(value), operatorLowerCase, likeOpts) : quoteValue(`%${escapeValue(value)}`);
|
|
535
576
|
}
|
|
536
577
|
if (typeof value === "boolean") return value ? "TRUE" : "FALSE";
|
|
537
578
|
return valueIsField ? wrapFieldName(value) : require_utils.shouldRenderAsNumber(value, parseNumbers) ? `${require_utils.trimIfString(value)}` : `${wrapAndEscape(value)}`;
|
|
@@ -564,7 +605,7 @@ const defaultRuleGroupProcessorCypher = (ruleGroup, options) => {
|
|
|
564
605
|
precedingCombinator = cypherCombinatorMap[rule];
|
|
565
606
|
continue;
|
|
566
607
|
}
|
|
567
|
-
if (
|
|
608
|
+
if (require_isRuleGroup.isRuleGroup(rule)) {
|
|
568
609
|
const processedGroup = processRuleGroup(rule);
|
|
569
610
|
if (processedGroup) {
|
|
570
611
|
if (!firstRule && precedingCombinator) {
|
|
@@ -594,7 +635,7 @@ const defaultRuleGroupProcessorCypher = (ruleGroup, options) => {
|
|
|
594
635
|
processedRules.push(processedRule);
|
|
595
636
|
}
|
|
596
637
|
}
|
|
597
|
-
const expression = processedRules.join(
|
|
638
|
+
const expression = processedRules.join(require_isRuleGroup.isRuleGroupType(rg) ? ` ${cypherCombinatorMap[rg.combinator]} ` : " ");
|
|
598
639
|
const [prefix, suffix] = rg.not || !outermost ? [`${rg.not ? "NOT " : ""}(`, ")"] : ["", ""];
|
|
599
640
|
return expression ? `${prefix}${expression}${suffix}` : fallbackExpression;
|
|
600
641
|
};
|
|
@@ -621,7 +662,7 @@ const defaultRuleGroupProcessorDrizzle = (ruleGroup, options, _meta) => (columns
|
|
|
621
662
|
const processRuleGroup = (rg, _outermost) => {
|
|
622
663
|
if (!isRuleOrGroupValid(rg, validationMap[rg.id ?? ""])) return;
|
|
623
664
|
const processedRules = rg.rules.map((rule) => {
|
|
624
|
-
if (
|
|
665
|
+
if (require_isRuleGroup.isRuleGroup(rule)) return processRuleGroup(rule);
|
|
625
666
|
const [validationResult, fieldValidator] = validateRule(rule);
|
|
626
667
|
if (!isRuleOrGroupValid(rule, validationResult, fieldValidator) || rule.field === placeholderFieldName || rule.operator === placeholderOperatorName || placeholderValueName !== void 0 && rule.value === placeholderValueName) return;
|
|
627
668
|
const fieldData = require_utils.getOption(fields, rule.field);
|
|
@@ -654,7 +695,7 @@ const defaultRuleGroupProcessorElasticSearch = (ruleGroup, options) => {
|
|
|
654
695
|
const processRuleGroup = (rg) => {
|
|
655
696
|
if (!isRuleOrGroupValid(rg, validationMap[rg.id ?? ""])) return false;
|
|
656
697
|
const processedRules = rg.rules.map((rule) => {
|
|
657
|
-
if (
|
|
698
|
+
if (require_isRuleGroup.isRuleGroup(rule)) return processRuleGroup(rule);
|
|
658
699
|
const [validationResult, fieldValidator] = validateRule(rule);
|
|
659
700
|
if (!isRuleOrGroupValid(rule, validationResult, fieldValidator) || rule.field === placeholderFieldName || rule.operator === placeholderOperatorName || placeholderValueName !== void 0 && rule.value === placeholderValueName) return false;
|
|
660
701
|
const fieldData = require_utils.getOption(fields, rule.field);
|
|
@@ -685,7 +726,7 @@ const defaultRuleGroupProcessorGremlin = (ruleGroup, options) => {
|
|
|
685
726
|
const { fields, fallbackExpression, getParseNumberBoolean, placeholderFieldName, placeholderOperatorName, placeholderValueName, ruleProcessor, validateRule, validationMap } = options;
|
|
686
727
|
const validateAndProcess = (rule) => {
|
|
687
728
|
// v8 ignore next -- @preserve
|
|
688
|
-
if (typeof rule === "string" ||
|
|
729
|
+
if (typeof rule === "string" || require_isRuleGroup.isRuleGroup(rule)) return void 0;
|
|
689
730
|
const [validationResult, fieldValidator] = validateRule(rule);
|
|
690
731
|
if (!isRuleOrGroupValid(rule, validationResult, fieldValidator) || rule.field === placeholderFieldName || rule.operator === placeholderOperatorName || placeholderValueName !== void 0 && rule.value === placeholderValueName) return;
|
|
691
732
|
const fieldData = require_utils.getOption(fields, rule.field);
|
|
@@ -702,7 +743,7 @@ const defaultRuleGroupProcessorGremlin = (ruleGroup, options) => {
|
|
|
702
743
|
const predicates = [];
|
|
703
744
|
for (const rule of rg.rules) {
|
|
704
745
|
if (typeof rule === "string") continue;
|
|
705
|
-
if (
|
|
746
|
+
if (require_isRuleGroup.isRuleGroup(rule)) {
|
|
706
747
|
const nested = processNested(rule);
|
|
707
748
|
if (nested) predicates.push(nested);
|
|
708
749
|
continue;
|
|
@@ -720,7 +761,7 @@ const defaultRuleGroupProcessorGremlin = (ruleGroup, options) => {
|
|
|
720
761
|
const steps = [];
|
|
721
762
|
for (const rule of ruleGroup.rules) {
|
|
722
763
|
if (typeof rule === "string") continue;
|
|
723
|
-
if (
|
|
764
|
+
if (require_isRuleGroup.isRuleGroup(rule)) {
|
|
724
765
|
const compound = processNested(rule);
|
|
725
766
|
if (compound) steps.push(compound);
|
|
726
767
|
continue;
|
|
@@ -750,7 +791,7 @@ const defaultRuleGroupProcessorJSONata = (ruleGroup, options) => {
|
|
|
750
791
|
precedingCombinator = rule;
|
|
751
792
|
continue;
|
|
752
793
|
}
|
|
753
|
-
if (
|
|
794
|
+
if (require_isRuleGroup.isRuleGroup(rule)) {
|
|
754
795
|
const processedGroup = processRuleGroup(rule);
|
|
755
796
|
if (processedGroup) {
|
|
756
797
|
if (!firstRule && precedingCombinator) {
|
|
@@ -780,7 +821,7 @@ const defaultRuleGroupProcessorJSONata = (ruleGroup, options) => {
|
|
|
780
821
|
processedRules.push(processedRule);
|
|
781
822
|
}
|
|
782
823
|
}
|
|
783
|
-
const expression = processedRules.join(
|
|
824
|
+
const expression = processedRules.join(require_isRuleGroup.isRuleGroupType(rg) ? ` ${rg.combinator} ` : " ");
|
|
784
825
|
const [prefix, suffix] = rg.not || !outermost ? [`${rg.not ? "$not" : ""}(`, ")"] : ["", ""];
|
|
785
826
|
return expression ? `${prefix}${expression}${suffix}` : fallbackExpression;
|
|
786
827
|
};
|
|
@@ -799,7 +840,7 @@ const defaultRuleGroupProcessorJsonLogic = (ruleGroup, options) => {
|
|
|
799
840
|
const processRuleGroup = (rg, _outermost) => {
|
|
800
841
|
if (!isRuleOrGroupValid(rg, validationMap[rg.id ?? ""])) return false;
|
|
801
842
|
const processedRules = rg.rules.map((rule) => {
|
|
802
|
-
if (
|
|
843
|
+
if (require_isRuleGroup.isRuleGroup(rule)) return processRuleGroup(rule);
|
|
803
844
|
const [validationResult, fieldValidator] = validateRule(rule);
|
|
804
845
|
if (!isRuleOrGroupValid(rule, validationResult, fieldValidator) || rule.field === placeholderFieldName || rule.operator === placeholderOperatorName || placeholderValueName !== void 0 && rule.value === placeholderValueName) return false;
|
|
805
846
|
const fieldData = require_utils.getOption(fields, rule.field);
|
|
@@ -827,7 +868,7 @@ const defaultRuleGroupProcessorLDAP = (ruleGroup, options) => {
|
|
|
827
868
|
const processRuleGroup = (rg, outermost) => {
|
|
828
869
|
if (!isRuleOrGroupValid(rg, validationMap[rg.id ?? ""])) return outermost ? fallbackExpression : "";
|
|
829
870
|
const rules = rg.rules.map((rule) => {
|
|
830
|
-
if (
|
|
871
|
+
if (require_isRuleGroup.isRuleGroup(rule)) return processRuleGroup(rule);
|
|
831
872
|
const [validationResult, fieldValidator] = validateRule(rule);
|
|
832
873
|
if (!isRuleOrGroupValid(rule, validationResult, fieldValidator) || rule.field === placeholderFieldName || rule.operator === placeholderOperatorName || placeholderValueName !== void 0 && rule.value === placeholderValueName) return "";
|
|
833
874
|
const fieldData = require_utils.getOption(fields, rule.field);
|
|
@@ -859,10 +900,10 @@ const defaultRuleGroupProcessorMongoDB = (ruleGroup, options, meta) => {
|
|
|
859
900
|
const { fields, fallbackExpression, getParseNumberBoolean, placeholderFieldName, placeholderOperatorName, placeholderValueName, ruleProcessor, validateRule, validationMap } = options;
|
|
860
901
|
const processRuleGroup = (rg, outermost) => {
|
|
861
902
|
if (!isRuleOrGroupValid(rg, validationMap[rg.id ?? ""])) return outermost ? fallbackExpression : "";
|
|
862
|
-
const combinator = `"$${
|
|
903
|
+
const combinator = `"$${require_isRuleGroup.lc(rg.combinator)}"`;
|
|
863
904
|
let hasChildRules = false;
|
|
864
905
|
const expressions = rg.rules.map((rule) => {
|
|
865
|
-
if (
|
|
906
|
+
if (require_isRuleGroup.isRuleGroup(rule)) {
|
|
866
907
|
const processedRuleGroup = processRuleGroup(rule);
|
|
867
908
|
if (processedRuleGroup) {
|
|
868
909
|
hasChildRules = true;
|
|
@@ -896,7 +937,7 @@ const defaultRuleGroupProcessorNL = (ruleGroup, options) => {
|
|
|
896
937
|
const { fields, fallbackExpression, getParseNumberBoolean, placeholderFieldName, placeholderOperatorName, placeholderValueName, ruleProcessor, translations, validateRule, validationMap } = options;
|
|
897
938
|
const processRuleGroup = (rg, outermostOrLonelyInGroup) => {
|
|
898
939
|
if (!isRuleOrGroupValid(rg, validationMap[rg.id ?? ""])) return outermostOrLonelyInGroup ? fallbackExpression : "";
|
|
899
|
-
const rg2 =
|
|
940
|
+
const rg2 = require_isRuleGroup.isRuleGroupTypeIC(rg) && rg.rules.some((r) => typeof r === "string" && require_isRuleGroup.lc(r) === "xor") ? require_convertQuery.convertFromIC(rg) : rg;
|
|
900
941
|
const processedRules = [];
|
|
901
942
|
let precedingCombinator = "";
|
|
902
943
|
let firstRule = true;
|
|
@@ -905,7 +946,7 @@ const defaultRuleGroupProcessorNL = (ruleGroup, options) => {
|
|
|
905
946
|
precedingCombinator = `${translations.ruleSeparator ?? ", "}${translations[rule] ?? rule} `;
|
|
906
947
|
continue;
|
|
907
948
|
}
|
|
908
|
-
if (
|
|
949
|
+
if (require_isRuleGroup.isRuleGroup(rule)) {
|
|
909
950
|
const processedGroup = processRuleGroup(rule, rg2.rules.length === 1 && !(rg2.not || /^xor$/i.test(rg2.combinator ?? "")));
|
|
910
951
|
// v8 ignore else
|
|
911
952
|
if (processedGroup) {
|
|
@@ -938,14 +979,14 @@ const defaultRuleGroupProcessorNL = (ruleGroup, options) => {
|
|
|
938
979
|
}
|
|
939
980
|
}
|
|
940
981
|
if (processedRules.length === 0) return fallbackExpression;
|
|
941
|
-
const isXOR =
|
|
982
|
+
const isXOR = require_isRuleGroup.lc(rg2.combinator ?? "") === "xor";
|
|
942
983
|
const combinator = isXOR ? rg2.combinator.slice(1) : rg2.combinator;
|
|
943
984
|
const mustWrap = rg2.not || !outermostOrLonelyInGroup || isXOR && processedRules.length > 1;
|
|
944
985
|
const [prefixTL, suffixTL] = ["groupPrefix", "groupSuffix"].map((key) => rg2.not ? isXOR ? require_utils.getNLTranslataion(key, translations, ["not", "xor"]) : require_utils.getNLTranslataion(key, translations, ["not"]) : isXOR ? require_utils.getNLTranslataion(key, translations, ["xor"]) : require_utils.getNLTranslataion(key, translations));
|
|
945
986
|
const prefix = mustWrap ? `${prefixTL} (`.trim() : "";
|
|
946
987
|
const suffix = mustWrap ? `) ${suffixTL}`.trim() : "";
|
|
947
988
|
const sep = translations.ruleSeparator ?? ", ";
|
|
948
|
-
return `${prefix}${processedRules.join(
|
|
989
|
+
return `${prefix}${processedRules.join(require_isRuleGroup.isRuleGroupType(rg2) ? `${sep}${translations[combinator] ?? combinator} ` : "")}${suffix}`;
|
|
949
990
|
};
|
|
950
991
|
return processRuleGroup(ruleGroup, true);
|
|
951
992
|
};
|
|
@@ -981,12 +1022,12 @@ const defaultRuleGroupProcessorParameterized = (ruleGroup, options) => {
|
|
|
981
1022
|
fieldParamNames,
|
|
982
1023
|
fieldData
|
|
983
1024
|
}, { processedParams: params });
|
|
984
|
-
if (!
|
|
1025
|
+
if (!require_isRuleGroup.isPojo(processedRule)) return "";
|
|
985
1026
|
const { sql, params: customParams } = processedRule;
|
|
986
1027
|
if (typeof sql !== "string" || !sql) return "";
|
|
987
1028
|
// v8 ignore else
|
|
988
1029
|
if (format === "parameterized" && Array.isArray(customParams)) params.push(...customParams);
|
|
989
|
-
else if (format === "parameterized_named" &&
|
|
1030
|
+
else if (format === "parameterized_named" && require_isRuleGroup.isPojo(customParams)) {
|
|
990
1031
|
Object.assign(paramsNamed, customParams);
|
|
991
1032
|
for (const p of Object.keys(customParams)) fieldParams.get(rule.field)?.add(p);
|
|
992
1033
|
}
|
|
@@ -1002,7 +1043,7 @@ const defaultRuleGroupProcessorParameterized = (ruleGroup, options) => {
|
|
|
1002
1043
|
precedingCombinator = rule;
|
|
1003
1044
|
continue;
|
|
1004
1045
|
}
|
|
1005
|
-
if (
|
|
1046
|
+
if (require_isRuleGroup.isRuleGroup(rule)) {
|
|
1006
1047
|
const processedGroup = processRuleGroup(rule, rg.rules.length === 1);
|
|
1007
1048
|
// v8 ignore else
|
|
1008
1049
|
if (processedGroup) {
|
|
@@ -1026,7 +1067,7 @@ const defaultRuleGroupProcessorParameterized = (ruleGroup, options) => {
|
|
|
1026
1067
|
}
|
|
1027
1068
|
}
|
|
1028
1069
|
if (processedRules.length === 0) return fallbackExpression;
|
|
1029
|
-
return `${rg.not ? "NOT " : ""}(${processedRules.join(
|
|
1070
|
+
return `${rg.not ? "NOT " : ""}(${processedRules.join(require_isRuleGroup.isRuleGroupType(rg) ? ` ${rg.combinator} ` : " ")})`;
|
|
1030
1071
|
};
|
|
1031
1072
|
if (parameterized) return {
|
|
1032
1073
|
sql: processRuleGroup(ruleGroup, true),
|
|
@@ -1057,7 +1098,7 @@ const defaultRuleGroupProcessorPrisma = (ruleGroup, options) => {
|
|
|
1057
1098
|
const combinator = rg.combinator.toUpperCase();
|
|
1058
1099
|
let hasChildRules = false;
|
|
1059
1100
|
const expressions = rg.rules.map((rule) => {
|
|
1060
|
-
if (
|
|
1101
|
+
if (require_isRuleGroup.isRuleGroup(rule)) {
|
|
1061
1102
|
const processedRuleGroup = processRuleGroup(rule);
|
|
1062
1103
|
if (processedRuleGroup) {
|
|
1063
1104
|
hasChildRules = true;
|
|
@@ -1096,7 +1137,7 @@ const defaultRuleGroupProcessorSequelize = (ruleGroup, options) => {
|
|
|
1096
1137
|
const combinator = rg.combinator.toUpperCase();
|
|
1097
1138
|
let hasChildRules = false;
|
|
1098
1139
|
const expressions = rg.rules.map((rule) => {
|
|
1099
|
-
if (
|
|
1140
|
+
if (require_isRuleGroup.isRuleGroup(rule)) {
|
|
1100
1141
|
const processedRuleGroup = processRuleGroup(rule);
|
|
1101
1142
|
if (processedRuleGroup) {
|
|
1102
1143
|
hasChildRules = true;
|
|
@@ -1114,7 +1155,7 @@ const defaultRuleGroupProcessorSequelize = (ruleGroup, options) => {
|
|
|
1114
1155
|
});
|
|
1115
1156
|
}).filter(Boolean);
|
|
1116
1157
|
if (expressions.length === 0) return void 0;
|
|
1117
|
-
const result = expressions.length === 1 && !hasChildRules ? expressions[0] : { [
|
|
1158
|
+
const result = expressions.length === 1 && !hasChildRules ? expressions[0] : { [require_isRuleGroup.lc(combinator) === "or" ? Op.or : Op.and]: expressions };
|
|
1118
1159
|
return rg.not ? { [Op.not]: result } : result;
|
|
1119
1160
|
};
|
|
1120
1161
|
return processRuleGroup(require_convertQuery.convertFromIC(ruleGroup), true);
|
|
@@ -1140,7 +1181,7 @@ const defaultRuleGroupProcessorSPARQL = (ruleGroup, options) => {
|
|
|
1140
1181
|
precedingCombinator = require_utils.celCombinatorMap[rule];
|
|
1141
1182
|
continue;
|
|
1142
1183
|
}
|
|
1143
|
-
if (
|
|
1184
|
+
if (require_isRuleGroup.isRuleGroup(rule)) {
|
|
1144
1185
|
const processedGroup = processRuleGroup(rule);
|
|
1145
1186
|
if (processedGroup) {
|
|
1146
1187
|
if (!firstRule && precedingCombinator) {
|
|
@@ -1170,7 +1211,7 @@ const defaultRuleGroupProcessorSPARQL = (ruleGroup, options) => {
|
|
|
1170
1211
|
processedRules.push(processedRule);
|
|
1171
1212
|
}
|
|
1172
1213
|
}
|
|
1173
|
-
const expression = processedRules.join(
|
|
1214
|
+
const expression = processedRules.join(require_isRuleGroup.isRuleGroupType(rg) ? ` ${require_utils.celCombinatorMap[rg.combinator]} ` : " ");
|
|
1174
1215
|
const [prefix, suffix] = rg.not || !outermost ? [`${rg.not ? "!" : ""}(`, ")"] : ["", ""];
|
|
1175
1216
|
return expression ? `${prefix}${expression}${suffix}` : fallbackExpression;
|
|
1176
1217
|
};
|
|
@@ -1195,7 +1236,7 @@ const defaultRuleGroupProcessorSQL = (ruleGroup, options) => {
|
|
|
1195
1236
|
precedingCombinator = rule;
|
|
1196
1237
|
continue;
|
|
1197
1238
|
}
|
|
1198
|
-
if (
|
|
1239
|
+
if (require_isRuleGroup.isRuleGroup(rule)) {
|
|
1199
1240
|
const processedGroup = processRuleGroup(rule, rg.rules.length === 1);
|
|
1200
1241
|
// v8 ignore else
|
|
1201
1242
|
if (processedGroup) {
|
|
@@ -1228,7 +1269,7 @@ const defaultRuleGroupProcessorSQL = (ruleGroup, options) => {
|
|
|
1228
1269
|
}
|
|
1229
1270
|
}
|
|
1230
1271
|
if (processedRules.length === 0) return fallbackExpression;
|
|
1231
|
-
return `${rg.not ? "NOT " : ""}(${processedRules.join(
|
|
1272
|
+
return `${rg.not ? "NOT " : ""}(${processedRules.join(require_isRuleGroup.isRuleGroupType(rg) ? ` ${rg.combinator} ` : " ")})`;
|
|
1232
1273
|
};
|
|
1233
1274
|
return processRuleGroup(ruleGroup, true);
|
|
1234
1275
|
};
|
|
@@ -1256,7 +1297,7 @@ const defaultRuleGroupProcessorTanStackDB = (ruleGroup, options) => (refs) => {
|
|
|
1256
1297
|
const processRuleGroup = (rg) => {
|
|
1257
1298
|
if (!isRuleOrGroupValid(rg, validationMap[rg.id ?? ""])) return;
|
|
1258
1299
|
const processedRules = rg.rules.map((rule) => {
|
|
1259
|
-
if (
|
|
1300
|
+
if (require_isRuleGroup.isRuleGroup(rule)) return processRuleGroup(rule);
|
|
1260
1301
|
const [validationResult, fieldValidator] = validateRule(rule);
|
|
1261
1302
|
if (!isRuleOrGroupValid(rule, validationResult, fieldValidator) || rule.field === placeholderFieldName || rule.operator === placeholderOperatorName || placeholderValueName !== void 0 && rule.value === placeholderValueName) return;
|
|
1262
1303
|
const fieldData = require_utils.getOption(fields, rule.field);
|
|
@@ -1310,7 +1351,7 @@ const checkValueTypeMismatch = (value, inputType) => {
|
|
|
1310
1351
|
if (numericInputTypes.has(inputType)) {
|
|
1311
1352
|
const v = typeof value === "string" ? value.trim() : value;
|
|
1312
1353
|
if (typeof v === "number" || typeof v === "bigint") return void 0;
|
|
1313
|
-
if (typeof v === "string" &&
|
|
1354
|
+
if (typeof v === "string" && require_isRuleGroup.numericRegex.test(v)) return void 0;
|
|
1314
1355
|
return "VALUE_TYPE_MISMATCH";
|
|
1315
1356
|
}
|
|
1316
1357
|
if (inputType === "date") {
|
|
@@ -1426,7 +1467,7 @@ const defaultRuleGroupProcessorDiagnostics = (ruleGroup, options) => {
|
|
|
1426
1467
|
continue;
|
|
1427
1468
|
}
|
|
1428
1469
|
const childPath = [...path, ruleIndex];
|
|
1429
|
-
if (
|
|
1470
|
+
if (require_isRuleGroup.isRuleGroup(rule)) {
|
|
1430
1471
|
const annotatedGroup = processRuleGroup(rule, childPath);
|
|
1431
1472
|
if (!annotatedGroup.valid) allChildrenValid = false;
|
|
1432
1473
|
annotatedRules.push(annotatedGroup);
|
|
@@ -1463,7 +1504,7 @@ const defaultRuleGroupProcessorDiagnostics = (ruleGroup, options) => {
|
|
|
1463
1504
|
const groupValid = groupSelfValid && allChildrenValid;
|
|
1464
1505
|
if (groupValid) stats.validGroups++;
|
|
1465
1506
|
else stats.invalidGroups++;
|
|
1466
|
-
if (
|
|
1507
|
+
if (require_isRuleGroup.isRuleGroupType(rg)) return {
|
|
1467
1508
|
...rg,
|
|
1468
1509
|
valid: groupValid,
|
|
1469
1510
|
...groupReasons ? { reasons: groupReasons } : null,
|
|
@@ -1665,7 +1706,7 @@ const defaultRuleProcessorDrizzle = (rule, _options) => {
|
|
|
1665
1706
|
const { between, eq, gt, gte, inArray, isNotNull, isNull, like, lt, lte, ne, notBetween, notInArray, notLike, sql } = drizzleOperators;
|
|
1666
1707
|
const { field, operator, value, valueSource } = rule;
|
|
1667
1708
|
const column = useRawFields && /^[a-z_][a-z0-9_.]*$/i.test(field) ? sql.raw(field) : columns[field];
|
|
1668
|
-
const operatorLC =
|
|
1709
|
+
const operatorLC = require_isRuleGroup.lc(operator);
|
|
1669
1710
|
const valueIsField = valueSource === "field";
|
|
1670
1711
|
const asFieldOrValue = (v) => valueIsField ? columns[v] : v;
|
|
1671
1712
|
const maybeParseNumber = (v) => {
|
|
@@ -1779,7 +1820,7 @@ const valueRenderer = (v, parseNumbers) => typeof v === "boolean" ? v : require_
|
|
|
1779
1820
|
const defaultRuleProcessorElasticSearch = (rule, options = {}) => {
|
|
1780
1821
|
const { field, operator, value, valueSource } = rule;
|
|
1781
1822
|
const { parseNumbers, preserveValueOrder } = options;
|
|
1782
|
-
const operatorLC =
|
|
1823
|
+
const operatorLC = require_isRuleGroup.lc(operator);
|
|
1783
1824
|
const matchEval = require_utils.processMatchMode(rule);
|
|
1784
1825
|
if (matchEval === false) return false;
|
|
1785
1826
|
else if (matchEval) {
|
|
@@ -2004,7 +2045,7 @@ const defaultRuleProcessorJSONata = (rule, options = {}) => {
|
|
|
2004
2045
|
}
|
|
2005
2046
|
}
|
|
2006
2047
|
}
|
|
2007
|
-
const operatorLC =
|
|
2048
|
+
const operatorLC = require_isRuleGroup.lc(operator);
|
|
2008
2049
|
switch (operatorLC) {
|
|
2009
2050
|
case "<":
|
|
2010
2051
|
case "<=":
|
|
@@ -2028,7 +2069,7 @@ const defaultRuleProcessorJSONata = (rule, options = {}) => {
|
|
|
2028
2069
|
case "between":
|
|
2029
2070
|
case "notbetween": {
|
|
2030
2071
|
const valueAsArray = require_utils.toArray(value);
|
|
2031
|
-
if (valueAsArray.length < 2 ||
|
|
2072
|
+
if (valueAsArray.length < 2 || require_isRuleGroup.nullOrUndefinedOrEmpty(valueAsArray[0]) || require_isRuleGroup.nullOrUndefinedOrEmpty(valueAsArray[1])) return "";
|
|
2032
2073
|
const [first, second] = valueAsArray;
|
|
2033
2074
|
const shouldParseNumbers = !(parseNumbers === false);
|
|
2034
2075
|
const firstNum = require_utils.shouldRenderAsNumber(first, shouldParseNumbers) ? require_utils.parseNumber(first, { parseNumbers: shouldParseNumbers }) : NaN;
|
|
@@ -2070,13 +2111,13 @@ const defaultRuleProcessorJsonLogic = (rule, options = {}) => {
|
|
|
2070
2111
|
switch (mode) {
|
|
2071
2112
|
case "all":
|
|
2072
2113
|
case "none":
|
|
2073
|
-
case "some": return { [mode]: [{ var: field }, value.rules.length === 1 && !
|
|
2114
|
+
case "some": return { [mode]: [{ var: field }, value.rules.length === 1 && !require_isRuleGroup.isRuleGroup(value.rules[0]) ? defaultRuleProcessorJsonLogic(value.rules[0], options) : defaultRuleGroupProcessorJsonLogic(value, options)] };
|
|
2074
2115
|
case "atleast":
|
|
2075
2116
|
case "atmost":
|
|
2076
2117
|
case "exactly": {
|
|
2077
2118
|
const op = mode === "atleast" ? ">=" : mode === "atmost" ? "<=" : "==";
|
|
2078
2119
|
const filteredCount = { reduce: [
|
|
2079
|
-
{ filter: [{ var: field }, value.rules.length === 1 && !
|
|
2120
|
+
{ filter: [{ var: field }, value.rules.length === 1 && !require_isRuleGroup.isRuleGroup(value.rules[0]) ? defaultRuleProcessorJsonLogic(value.rules[0], options) : defaultRuleGroupProcessorJsonLogic(value, options)] },
|
|
2080
2121
|
{ "+": [1, { var: "accumulator" }] },
|
|
2081
2122
|
0
|
|
2082
2123
|
] };
|
|
@@ -2092,7 +2133,7 @@ const defaultRuleProcessorJsonLogic = (rule, options = {}) => {
|
|
|
2092
2133
|
}
|
|
2093
2134
|
}
|
|
2094
2135
|
}
|
|
2095
|
-
const operatorLC =
|
|
2136
|
+
const operatorLC = require_isRuleGroup.lc(operator);
|
|
2096
2137
|
switch (operatorLC) {
|
|
2097
2138
|
case "<":
|
|
2098
2139
|
case "<=":
|
|
@@ -2103,7 +2144,10 @@ const defaultRuleProcessorJsonLogic = (rule, options = {}) => {
|
|
|
2103
2144
|
case "null":
|
|
2104
2145
|
case "notnull": return { [`${operatorLC === "notnull" ? "!" : "="}=`]: [fieldObject, null] };
|
|
2105
2146
|
case "in":
|
|
2106
|
-
case "notin":
|
|
2147
|
+
case "notin": {
|
|
2148
|
+
const valueAsArray = require_utils.toArray(value).map((v) => fieldOrNumberRenderer(v));
|
|
2149
|
+
return negateIfNotOp(operatorLC, { in: [fieldObject, valueAsArray] });
|
|
2150
|
+
}
|
|
2107
2151
|
case "between":
|
|
2108
2152
|
case "notbetween": {
|
|
2109
2153
|
const valueAsArray = require_utils.toArray(value);
|
|
@@ -2134,11 +2178,20 @@ const defaultRuleProcessorJsonLogic = (rule, options = {}) => {
|
|
|
2134
2178
|
return false;
|
|
2135
2179
|
}
|
|
2136
2180
|
case "contains":
|
|
2137
|
-
case "doesnotcontain":
|
|
2181
|
+
case "doesnotcontain": {
|
|
2182
|
+
const jsonRule = { in: [fieldOrNumberRenderer(value), fieldObject] };
|
|
2183
|
+
return negateIfNotOp(operatorLC, jsonRule);
|
|
2184
|
+
}
|
|
2138
2185
|
case "beginswith":
|
|
2139
|
-
case "doesnotbeginwith":
|
|
2186
|
+
case "doesnotbeginwith": {
|
|
2187
|
+
const jsonRule = { startsWith: [fieldObject, fieldOrNumberRenderer(value)] };
|
|
2188
|
+
return negateIfNotOp(operatorLC, jsonRule);
|
|
2189
|
+
}
|
|
2140
2190
|
case "endswith":
|
|
2141
|
-
case "doesnotendwith":
|
|
2191
|
+
case "doesnotendwith": {
|
|
2192
|
+
const jsonRule = { endsWith: [fieldObject, fieldOrNumberRenderer(value)] };
|
|
2193
|
+
return negateIfNotOp(operatorLC, jsonRule);
|
|
2194
|
+
}
|
|
2142
2195
|
}
|
|
2143
2196
|
return false;
|
|
2144
2197
|
};
|
|
@@ -2154,8 +2207,8 @@ const ldapEscape = (s) => `${require_utils.trimIfString(s)}`.replaceAll(/[()&|=<
|
|
|
2154
2207
|
const defaultRuleProcessorLDAP = (rule, options = {}) => {
|
|
2155
2208
|
const { field, operator, value, valueSource } = rule;
|
|
2156
2209
|
const { preserveValueOrder } = options;
|
|
2157
|
-
const operatorLC =
|
|
2158
|
-
if (valueSource === "field" ||
|
|
2210
|
+
const operatorLC = require_isRuleGroup.lc(operator);
|
|
2211
|
+
if (valueSource === "field" || require_isRuleGroup.nullOrUndefinedOrEmpty(value) && operatorLC !== "null" && operatorLC !== "notnull" || require_utils.processMatchMode(rule)) return "";
|
|
2159
2212
|
switch (operatorLC) {
|
|
2160
2213
|
case "=":
|
|
2161
2214
|
case "!=": return negateIf(`(${field}=${ldapEscape(value)})`, operatorLC === "!=");
|
|
@@ -2172,11 +2225,14 @@ const defaultRuleProcessorLDAP = (rule, options = {}) => {
|
|
|
2172
2225
|
case "null":
|
|
2173
2226
|
case "notnull": return negateIf(`(${field}=*)`, operatorLC === "notnull");
|
|
2174
2227
|
case "in":
|
|
2175
|
-
case "notin":
|
|
2228
|
+
case "notin": {
|
|
2229
|
+
const valueAsArray = require_utils.toArray(value);
|
|
2230
|
+
return negateIf(`(|${valueAsArray.map((val) => `(${field}=${ldapEscape(val)})`).join("")})`, operatorLC === "notin");
|
|
2231
|
+
}
|
|
2176
2232
|
case "between":
|
|
2177
2233
|
case "notbetween": {
|
|
2178
2234
|
const valueAsArray = require_utils.toArray(value);
|
|
2179
|
-
if (valueAsArray.length < 2 ||
|
|
2235
|
+
if (valueAsArray.length < 2 || require_isRuleGroup.nullOrUndefinedOrEmpty(valueAsArray[0]) || require_isRuleGroup.nullOrUndefinedOrEmpty(valueAsArray[1])) return "";
|
|
2180
2236
|
const [first, second] = valueAsArray;
|
|
2181
2237
|
const firstNum = require_utils.shouldRenderAsNumber(first, true) ? require_utils.parseNumber(first, { parseNumbers: true }) : NaN;
|
|
2182
2238
|
const secondNum = require_utils.shouldRenderAsNumber(second, true) ? require_utils.parseNumber(second, { parseNumbers: true }) : NaN;
|
|
@@ -2204,7 +2260,7 @@ const escapeStringValueQuotes = (v, quoteChar, escapeQuotes) => escapeQuotes &&
|
|
|
2204
2260
|
const defaultValueProcessorNL = (rule, opts = {}) => {
|
|
2205
2261
|
const { escapeQuotes, fields, parseNumbers, quoteFieldNamesWith, quoteValuesWith, fieldIdentifierSeparator, translations } = opts;
|
|
2206
2262
|
const valueIsField = rule.valueSource === "field";
|
|
2207
|
-
const operatorLowerCase =
|
|
2263
|
+
const operatorLowerCase = require_isRuleGroup.lc(rule.operator);
|
|
2208
2264
|
const quoteChar = quoteValuesWith || "'";
|
|
2209
2265
|
const quoteValue = (v) => `${quoteChar}${v}${quoteChar}`;
|
|
2210
2266
|
const escapeValue = (v) => escapeStringValueQuotes(v, quoteChar, escapeQuotes);
|
|
@@ -2284,9 +2340,9 @@ const defaultOperatorProcessorNL = (rule, opts = {}) => {
|
|
|
2284
2340
|
// v8 ignore next
|
|
2285
2341
|
const { getOperators = defaultGetOperators, operatorMap: operatorMapParam = defaultExportOperatorMap } = opts;
|
|
2286
2342
|
const mergedOperatorMap = new Map(Object.entries(defaultExportOperatorMap));
|
|
2287
|
-
for (const [key, value] of Object.entries(operatorMapParam)) mergedOperatorMap.set(
|
|
2343
|
+
for (const [key, value] of Object.entries(operatorMapParam)) mergedOperatorMap.set(require_isRuleGroup.lc(key), value);
|
|
2288
2344
|
const operatorMap = Object.fromEntries(mergedOperatorMap);
|
|
2289
|
-
const operatorLC =
|
|
2345
|
+
const operatorLC = require_isRuleGroup.lc(operator);
|
|
2290
2346
|
var normalizedOperator = operator;
|
|
2291
2347
|
const hasSingleValue = require_utils.toArray(rule.value).length === 1;
|
|
2292
2348
|
if (operatorLC === "in" && hasSingleValue) normalizedOperator = "=";
|
|
@@ -2300,7 +2356,7 @@ const defaultOperatorProcessorNL = (rule, opts = {}) => {
|
|
|
2300
2356
|
value: normalizedOperator,
|
|
2301
2357
|
label: normalizedOperator
|
|
2302
2358
|
};
|
|
2303
|
-
const operatorTL = operatorMap[operatorNL] ?? operatorMap[
|
|
2359
|
+
const operatorTL = operatorMap[operatorNL] ?? operatorMap[require_isRuleGroup.lc(operatorNL)] ?? [label, label];
|
|
2304
2360
|
return typeof operatorTL === "string" ? operatorTL : operatorTL[valueSource === "field" ? 1 : 0];
|
|
2305
2361
|
};
|
|
2306
2362
|
/**
|
|
@@ -2345,7 +2401,7 @@ const defaultRuleProcessorNL = (rule, opts) => {
|
|
|
2345
2401
|
quoteValuesWith,
|
|
2346
2402
|
concatOperator
|
|
2347
2403
|
});
|
|
2348
|
-
const operatorLC =
|
|
2404
|
+
const operatorLC = require_isRuleGroup.lc(operator);
|
|
2349
2405
|
if ((operatorLC === "in" || operatorLC === "notin" || operatorLC === "between" || operatorLC === "notbetween") && !value) return "";
|
|
2350
2406
|
const wordOrderMap = {
|
|
2351
2407
|
S: processedField,
|
|
@@ -2368,7 +2424,7 @@ const defaultRuleProcessorNL = (rule, opts) => {
|
|
|
2368
2424
|
*
|
|
2369
2425
|
* @group Export
|
|
2370
2426
|
*/
|
|
2371
|
-
const defaultOperatorProcessorSQL = (rule) =>
|
|
2427
|
+
const defaultOperatorProcessorSQL = (rule) => require_isRuleGroup.lc(require_utils.mapSQLOperator(rule.operator));
|
|
2372
2428
|
/**
|
|
2373
2429
|
* Default rule processor used by {@link formatQuery} for "sql" format.
|
|
2374
2430
|
*
|
|
@@ -2411,7 +2467,7 @@ const defaultRuleProcessorSQL = (rule, opts = {}) => {
|
|
|
2411
2467
|
concatOperator
|
|
2412
2468
|
});
|
|
2413
2469
|
const operator = operatorProcessor(rule, opts);
|
|
2414
|
-
const operatorLowerCase =
|
|
2470
|
+
const operatorLowerCase = require_isRuleGroup.lc(operator);
|
|
2415
2471
|
if ((operatorLowerCase === "in" || operatorLowerCase === "not in" || operatorLowerCase === "between" || operatorLowerCase === "not between") && !value) return "";
|
|
2416
2472
|
return `${ruleField} ${operator} ${value}`.trim();
|
|
2417
2473
|
};
|
|
@@ -2479,11 +2535,26 @@ const defaultRuleProcessorParameterized = (rule, opts, meta) => {
|
|
|
2479
2535
|
format
|
|
2480
2536
|
});
|
|
2481
2537
|
const sqlOperator = operatorProcessor(rule, opts);
|
|
2482
|
-
const sqlOperatorLowerCase =
|
|
2538
|
+
const sqlOperatorLowerCase = require_isRuleGroup.lc(sqlOperator);
|
|
2483
2539
|
const [qPre, qPost] = quoteFieldNamesWith;
|
|
2484
2540
|
if ((sqlOperatorLowerCase === "in" || sqlOperatorLowerCase === "not in" || sqlOperatorLowerCase === "between" || sqlOperatorLowerCase === "not between") && !value) return finalize("");
|
|
2485
2541
|
else if (sqlOperatorLowerCase === "is null" || sqlOperatorLowerCase === "is not null") return finalize(`${qPre}${rule.field}${qPost} ${sqlOperator}`);
|
|
2486
|
-
else if (rule.valueSource === "
|
|
2542
|
+
else if (rule.valueSource === "parameter") {
|
|
2543
|
+
const registerParam = (v) => {
|
|
2544
|
+
const ref = require_utils.withParamPrefix(v, paramPrefix);
|
|
2545
|
+
if (!parameterized) paramsNamed[paramsKeepPrefix ? ref : require_utils.stripParamPrefix(v, paramPrefix)] = null;
|
|
2546
|
+
return ref;
|
|
2547
|
+
};
|
|
2548
|
+
if (sqlOperatorLowerCase === "between" || sqlOperatorLowerCase === "not between") {
|
|
2549
|
+
const [first, second] = require_utils.toArray(rule.value, { retainEmptyStrings: true }).slice(0, 2);
|
|
2550
|
+
return finalize(`${qPre}${rule.field}${qPost} ${sqlOperator} ${registerParam(first)} and ${registerParam(second)}`.trim());
|
|
2551
|
+
}
|
|
2552
|
+
if (sqlOperatorLowerCase === "in" || sqlOperatorLowerCase === "not in") {
|
|
2553
|
+
const splitValue = require_utils.toArray(rule.value);
|
|
2554
|
+
return finalize(`${qPre}${rule.field}${qPost} ${sqlOperator} (${splitValue.map((v) => registerParam(v)).join(", ")})`);
|
|
2555
|
+
}
|
|
2556
|
+
return finalize(`${qPre}${rule.field}${qPost} ${sqlOperator} ${require_utils.wrapLikeFragment(registerParam(rule.value), require_isRuleGroup.lc(rule.operator), { concatOperator })}`.trim());
|
|
2557
|
+
} else if (rule.valueSource === "field") return finalize(`${qPre}${rule.field}${qPost} ${sqlOperator} ${value}`.trim());
|
|
2487
2558
|
else if (sqlOperatorLowerCase === "in" || sqlOperatorLowerCase === "not in") {
|
|
2488
2559
|
const splitValue = require_utils.toArray(rule.value);
|
|
2489
2560
|
if (parameterized) {
|
|
@@ -2533,7 +2604,7 @@ const defaultRuleProcessorPrisma = (rule, options = {}) => {
|
|
|
2533
2604
|
// v8 ignore next
|
|
2534
2605
|
const { parseNumbers, preserveValueOrder } = options;
|
|
2535
2606
|
if (valueSource === "field" || require_utils.processMatchMode(rule)) return void 0;
|
|
2536
|
-
const operatorLC =
|
|
2607
|
+
const operatorLC = require_isRuleGroup.lc(operator);
|
|
2537
2608
|
switch (operatorLC) {
|
|
2538
2609
|
case "=": return { [field]: processNumber(value, value, parseNumbers) };
|
|
2539
2610
|
case "!=":
|
|
@@ -2593,7 +2664,7 @@ const defaultRuleProcessorSequelize = (rule, { parseNumbers, preserveValueOrder,
|
|
|
2593
2664
|
if (require_utils.processMatchMode(rule)) return void 0;
|
|
2594
2665
|
const { field, operator, value, valueSource } = rule;
|
|
2595
2666
|
const valueIsField = valueSource === "field";
|
|
2596
|
-
const operatorLC =
|
|
2667
|
+
const operatorLC = require_isRuleGroup.lc(operator);
|
|
2597
2668
|
if (!Op || valueIsField && (!col || !fn && [
|
|
2598
2669
|
"contains",
|
|
2599
2670
|
"doesnotcontain",
|
|
@@ -2675,7 +2746,9 @@ const defaultRuleProcessorSPARQL = (rule, opts = {}) => {
|
|
|
2675
2746
|
if (typeof v === "bigint") return String(v);
|
|
2676
2747
|
if (valueIsField) return sparqlVar(require_utils.trimIfString(v));
|
|
2677
2748
|
if (typeof v === "number" || require_utils.shouldRenderAsNumber(v, parseNumbers)) return require_utils.trimIfString(v);
|
|
2749
|
+
/* v8 ignore start -- @preserve */
|
|
2678
2750
|
const s = typeof v === "string" ? v : JSON.stringify(v) ?? "";
|
|
2751
|
+
/* v8 ignore stop -- @preserve */
|
|
2679
2752
|
if (s.startsWith("?") || s.startsWith("<") || s.includes(":")) return s;
|
|
2680
2753
|
return `"${escapeDoubleQuotes(s, escapeQuotes)}"`;
|
|
2681
2754
|
};
|
|
@@ -2743,7 +2816,7 @@ const defaultRuleProcessorTanStackDB = (rule, _options) => {
|
|
|
2743
2816
|
};
|
|
2744
2817
|
const { field, operator, value, valueSource } = rule;
|
|
2745
2818
|
const column = resolveField(field);
|
|
2746
|
-
const operatorLC =
|
|
2819
|
+
const operatorLC = require_isRuleGroup.lc(operator);
|
|
2747
2820
|
const valueIsField = valueSource === "field";
|
|
2748
2821
|
const asFieldOrValue = (v) => valueIsField ? resolveField(v) : v;
|
|
2749
2822
|
const maybeParseNumber = (v) => {
|
|
@@ -2942,14 +3015,14 @@ const sqlFormats = /* @__PURE__ */ new Set([
|
|
|
2942
3015
|
"sequelize"
|
|
2943
3016
|
]);
|
|
2944
3017
|
function formatQuery(ruleGroup, optionParam = {}) {
|
|
2945
|
-
const options = typeof optionParam === "string" ? { format:
|
|
3018
|
+
const options = typeof optionParam === "string" ? { format: require_isRuleGroup.lc(optionParam) } : optionParam;
|
|
2946
3019
|
const optObj = {
|
|
2947
3020
|
...defaultFormatQueryOptions,
|
|
2948
3021
|
...!options.format || sqlFormats.has(options.format) ? sqlDialectPresets[options.preset ?? "ansi"] ?? null : null,
|
|
2949
3022
|
...options,
|
|
2950
3023
|
...!options.format && (Object.keys(sqlDialectPresets).includes(options.preset ?? "") ? { format: "sql" } : null)
|
|
2951
3024
|
};
|
|
2952
|
-
const format =
|
|
3025
|
+
const format = require_isRuleGroup.lc(optObj.format);
|
|
2953
3026
|
const { fallbackExpression: fallbackExpression_option, getOperators: getOperators_option, operatorProcessor: operatorProcessor_option, parseNumbers, quoteFieldNamesWith: quoteFieldNamesWith_option, ruleGroupProcessor: ruleGroupProcessor_option, ruleProcessor: ruleProcessor_option, validator, valueProcessor: valueProcessor_option, context } = optObj;
|
|
2954
3027
|
const getParseNumberBoolean = (inputType) => {
|
|
2955
3028
|
return typeof require_utils.getParseNumberMethod({
|
|
@@ -2998,6 +3071,10 @@ function formatQuery(ruleGroup, optionParam = {}) {
|
|
|
2998
3071
|
if (typeof field.validator === "function") fieldValidator = field.validator;
|
|
2999
3072
|
}
|
|
3000
3073
|
}
|
|
3074
|
+
if (rule.valueSource === "parameter" && typeof optObj.getParameters === "function") {
|
|
3075
|
+
const fieldData = require_utils.getOption(fields, rule.field);
|
|
3076
|
+
if (!new Set(require_utils.toFlatOptionArray(require_utils.toFullOptionList(optObj.getParameters(rule.field, rule.operator, { fieldData }))).map((p) => require_utils.stripParamPrefix(p.value, optObj.paramPrefix))).has(require_utils.stripParamPrefix(rule.value, optObj.paramPrefix))) validationResult = false;
|
|
3077
|
+
}
|
|
3001
3078
|
return [validationResult, fieldValidator];
|
|
3002
3079
|
};
|
|
3003
3080
|
const finalOptions = {
|
|
@@ -3156,9 +3233,11 @@ exports.defaultValueProcessorNL = defaultValueProcessorNL;
|
|
|
3156
3233
|
exports.defaultValueProcessorSpELByRule = defaultValueProcessorSpELByRule;
|
|
3157
3234
|
exports.formatQuery = formatQuery;
|
|
3158
3235
|
exports.formatQueryOptionPresets = formatQueryOptionPresets;
|
|
3236
|
+
exports.getLikeWildcards = require_utils.getLikeWildcards;
|
|
3159
3237
|
exports.getNLTranslataion = require_utils.getNLTranslataion;
|
|
3160
3238
|
exports.getQuoteFieldNamesWithArray = require_utils.getQuoteFieldNamesWithArray;
|
|
3161
3239
|
exports.getQuotedFieldName = require_utils.getQuotedFieldName;
|
|
3240
|
+
exports.getSQLConcat = require_utils.getSQLConcat;
|
|
3162
3241
|
exports.isValidValue = require_utils.isValidValue;
|
|
3163
3242
|
exports.isValueProcessorLegacy = require_utils.isValueProcessorLegacy;
|
|
3164
3243
|
exports.jsonLogicAdditionalOperators = require_utils.jsonLogicAdditionalOperators;
|
|
@@ -3173,5 +3252,8 @@ exports.processMatchMode = require_utils.processMatchMode;
|
|
|
3173
3252
|
exports.shouldRenderAsNumber = require_utils.shouldRenderAsNumber;
|
|
3174
3253
|
exports.sparqlVar = sparqlVar;
|
|
3175
3254
|
exports.sqlDialectPresets = sqlDialectPresets;
|
|
3255
|
+
exports.stripParamPrefix = require_utils.stripParamPrefix;
|
|
3256
|
+
exports.withParamPrefix = require_utils.withParamPrefix;
|
|
3257
|
+
exports.wrapLikeFragment = require_utils.wrapLikeFragment;
|
|
3176
3258
|
|
|
3177
3259
|
//# sourceMappingURL=formatQuery.js.map
|