@react-querybuilder/core 8.21.1 → 8.21.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/react-querybuilder_core.cjs.development.d.ts +30 -1
- package/dist/cjs/react-querybuilder_core.cjs.development.js +37 -8
- package/dist/cjs/react-querybuilder_core.cjs.development.js.map +1 -1
- package/dist/cjs/react-querybuilder_core.cjs.production.d.ts +30 -1
- 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/formatQuery.d.mts +17 -2
- package/dist/formatQuery.d.ts +17 -2
- package/dist/formatQuery.js +23 -9
- package/dist/formatQuery.js.map +1 -1
- package/dist/formatQuery.mjs +22 -10
- package/dist/formatQuery.mjs.map +1 -1
- package/dist/{import-Ddc3d_8q.d.ts → import-6ExjhifL.d.ts} +2 -2
- package/dist/{import-BVdxeIBO.d.mts → import-DVWI7Fdh.d.mts} +2 -2
- package/dist/{index-BSwFvkeI.d.mts → index-CX9mehdL.d.mts} +15 -1
- package/dist/{index-BSwFvkeI.d.ts → index-CX9mehdL.d.ts} +15 -1
- package/dist/parseCEL.d.mts +2 -2
- package/dist/parseCEL.d.ts +2 -2
- package/dist/parseCEL.js +2 -2
- package/dist/parseCEL.mjs +2 -2
- package/dist/parseCypher.d.mts +1 -1
- package/dist/parseCypher.d.ts +1 -1
- package/dist/parseGremlin.d.mts +1 -1
- package/dist/parseGremlin.d.ts +1 -1
- package/dist/parseJSONata.d.mts +2 -2
- package/dist/parseJSONata.d.ts +2 -2
- package/dist/parseJSONata.js +1 -1
- package/dist/parseJSONata.mjs +1 -1
- package/dist/parseJsonLogic.d.mts +2 -2
- package/dist/parseJsonLogic.d.ts +2 -2
- package/dist/parseJsonLogic.js +2 -2
- package/dist/parseJsonLogic.mjs +2 -2
- package/dist/parseMongoDB.d.mts +2 -2
- package/dist/parseMongoDB.d.ts +2 -2
- package/dist/parseMongoDB.js +2 -2
- package/dist/parseMongoDB.mjs +2 -2
- package/dist/parseSPARQL.d.mts +1 -1
- package/dist/parseSPARQL.d.ts +1 -1
- package/dist/parseSQL.d.mts +2 -2
- package/dist/parseSQL.d.ts +2 -2
- package/dist/parseSQL.js +2 -2
- package/dist/parseSQL.mjs +2 -2
- package/dist/parseSpEL.d.mts +2 -2
- package/dist/parseSpEL.d.ts +2 -2
- package/dist/parseSpEL.js +2 -2
- package/dist/parseSpEL.mjs +2 -2
- package/dist/{prepareQueryObjects-Q18lHCKl.mjs → prepareQueryObjects-9emVAGYG.mjs} +2 -2
- package/dist/{prepareQueryObjects-Q18lHCKl.mjs.map → prepareQueryObjects-9emVAGYG.mjs.map} +1 -1
- package/dist/{prepareQueryObjects-C2-kTZvR.js → prepareQueryObjects-C5dHLhnC.js} +2 -2
- package/dist/{prepareQueryObjects-C2-kTZvR.js.map → prepareQueryObjects-C5dHLhnC.js.map} +1 -1
- package/dist/react-querybuilder_core.d.mts +30 -1
- package/dist/react-querybuilder_core.legacy-esm.d.ts +30 -1
- package/dist/react-querybuilder_core.legacy-esm.js +38 -9
- package/dist/react-querybuilder_core.legacy-esm.js.map +1 -1
- package/dist/react-querybuilder_core.mjs +36 -9
- package/dist/react-querybuilder_core.mjs.map +1 -1
- package/dist/react-querybuilder_core.production.d.mts +30 -1
- package/dist/react-querybuilder_core.production.mjs +1 -1
- package/dist/react-querybuilder_core.production.mjs.map +1 -1
- package/dist/transformQuery.d.mts +1 -1
- package/dist/transformQuery.d.ts +1 -1
- package/dist/{utils-Dt0D_DMV.mjs → utils-CxWs-N47.mjs} +17 -2
- package/dist/{utils-Dt0D_DMV.mjs.map → utils-CxWs-N47.mjs.map} +1 -1
- package/dist/{utils-DEwV7F6B.js → utils-SchkzSCN.js} +28 -1
- package/dist/{utils-DEwV7F6B.js.map → utils-SchkzSCN.js.map} +1 -1
- package/package.json +2 -2
package/dist/formatQuery.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { E as RuleGroupTypeAny, I as SetRequired, N as RuleType, S as ValueProcessorOptions, _ as RuleGroupProcessor, a as DiagnosticsResult, b as ValueProcessorByRule, c as ExportOperatorMap, d as NLTranslationKey, f as NLTranslations, h as RQBJsonLogic, i as ConstituentWordOrder, l as FormatQueryOptions, m as ParameterizedSQL, o as ExportFormat, p as ParameterizedNamedSQL, s as ExportObjectFormats, u as GroupVariantCondition, v as RuleProcessor, x as ValueProcessorLegacy, y as SQLPreset } from "./index-
|
|
1
|
+
import { E as RuleGroupTypeAny, I as SetRequired, N as RuleType, S as ValueProcessorOptions, _ as RuleGroupProcessor, a as DiagnosticsResult, b as ValueProcessorByRule, c as ExportOperatorMap, d as NLTranslationKey, f as NLTranslations, h as RQBJsonLogic, i as ConstituentWordOrder, l as FormatQueryOptions, m as ParameterizedSQL, o as ExportFormat, p as ParameterizedNamedSQL, s as ExportObjectFormats, u as GroupVariantCondition, v as RuleProcessor, x as ValueProcessorLegacy, y as SQLPreset } from "./index-CX9mehdL.mjs";
|
|
2
2
|
import { Column, Operators, SQL, Table } from "drizzle-orm";
|
|
3
3
|
import { WhereOptions } from "sequelize";
|
|
4
4
|
import { eq } from "@tanstack/db";
|
|
@@ -777,6 +777,21 @@ type ProcessedMatchMode = {
|
|
|
777
777
|
* 2. `value` is not a valid rule group.
|
|
778
778
|
*/
|
|
779
779
|
declare const processMatchMode: (rule: RuleType) => null | false | ProcessedMatchMode;
|
|
780
|
+
/**
|
|
781
|
+
* Base alias assigned to the element binding of a subquery generated for a rule's
|
|
782
|
+
* {@link MatchMode `match` mode} (e.g. `unnest(field) as elem_alias`).
|
|
783
|
+
*/
|
|
784
|
+
declare const subqueryElementAliasBase = "elem_alias";
|
|
785
|
+
/**
|
|
786
|
+
* Returns the element alias for a subquery at the given nesting depth. Depth 0 (the common,
|
|
787
|
+
* non-nested case) uses {@link subqueryElementAliasBase} unchanged; deeper levels are suffixed
|
|
788
|
+
* with the depth, so a subquery nested within a subquery cannot shadow its parent's binding.
|
|
789
|
+
*
|
|
790
|
+
* Deterministic by depth rather than randomized, so output remains stable and snapshot-friendly.
|
|
791
|
+
*
|
|
792
|
+
* @group Export
|
|
793
|
+
*/
|
|
794
|
+
declare const getSubqueryElementAlias: (subqueryDepth?: number) => string;
|
|
780
795
|
/**
|
|
781
796
|
* "Replacer" method for JSON.stringify's second argument. Converts `bigint` values to
|
|
782
797
|
* objects with a `$bigint` property having a value of a string representation of
|
|
@@ -843,5 +858,5 @@ declare const defaultValueProcessorMongoDBByRule: RuleProcessor;
|
|
|
843
858
|
*/
|
|
844
859
|
declare const defaultValueProcessorSpELByRule: RuleProcessor;
|
|
845
860
|
//#endregion
|
|
846
|
-
export { bigIntJsonParseReviver, bigIntJsonStringifyReplacer, celCombinatorMap, cypherCombinatorMap, defaultCELValueProcessor, defaultExportOperatorMap, defaultMongoDBValueProcessor, defaultNLTranslations, defaultOperatorProcessorNL, defaultOperatorProcessorSQL, defaultRuleGroupProcessorCEL, defaultRuleGroupProcessorCypher, defaultRuleGroupProcessorDiagnostics, defaultRuleGroupProcessorDrizzle, defaultRuleGroupProcessorElasticSearch, defaultRuleGroupProcessorGremlin, defaultRuleGroupProcessorJSONata, defaultRuleGroupProcessorJsonLogic, defaultRuleGroupProcessorLDAP, defaultRuleGroupProcessorMongoDB, defaultRuleGroupProcessorMongoDBQuery, defaultRuleGroupProcessorNL, defaultRuleGroupProcessorParameterized, defaultRuleGroupProcessorPrisma, defaultRuleGroupProcessorSPARQL, defaultRuleGroupProcessorSQL, defaultRuleGroupProcessorSequelize, defaultRuleGroupProcessorSpEL, defaultRuleGroupProcessorTanStackDB, defaultRuleProcessorCEL, defaultRuleProcessorCypher, defaultRuleProcessorDrizzle, defaultRuleProcessorElasticSearch, defaultRuleProcessorGremlin, defaultRuleProcessorJSONata, defaultRuleProcessorJsonLogic, defaultRuleProcessorLDAP, defaultRuleProcessorMongoDB, defaultRuleProcessorMongoDBQuery, defaultRuleProcessorNL, defaultRuleProcessorParameterized, defaultRuleProcessorPrisma, defaultRuleProcessorSPARQL, defaultRuleProcessorSQL, defaultRuleProcessorSequelize, defaultRuleProcessorSpEL, defaultRuleProcessorTanStackDB, defaultSpELValueProcessor, defaultValueProcessor, defaultValueProcessorByRule, defaultValueProcessorCELByRule, defaultValueProcessorMongoDBByRule, defaultValueProcessorNL, defaultValueProcessorSpELByRule, formatQuery, formatQueryOptionPresets, getLikeWildcards, getNLTranslataion, getQuoteFieldNamesWithArray, getQuotedFieldName, getSQLConcat, isValidValue, isValueProcessorLegacy, jsonLogicAdditionalOperators, mapSQLOperator, mongoDbFallback, mongoOperators, normalizeConstituentWordOrder, numerifyValues, prismaFallback, prismaOperators, processMatchMode, shouldRenderAsNumber, sparqlVar, sqlDialectPresets, stripParamPrefix, withParamPrefix, wrapLikeFragment };
|
|
861
|
+
export { bigIntJsonParseReviver, bigIntJsonStringifyReplacer, celCombinatorMap, cypherCombinatorMap, defaultCELValueProcessor, defaultExportOperatorMap, defaultMongoDBValueProcessor, defaultNLTranslations, defaultOperatorProcessorNL, defaultOperatorProcessorSQL, defaultRuleGroupProcessorCEL, defaultRuleGroupProcessorCypher, defaultRuleGroupProcessorDiagnostics, defaultRuleGroupProcessorDrizzle, defaultRuleGroupProcessorElasticSearch, defaultRuleGroupProcessorGremlin, defaultRuleGroupProcessorJSONata, defaultRuleGroupProcessorJsonLogic, defaultRuleGroupProcessorLDAP, defaultRuleGroupProcessorMongoDB, defaultRuleGroupProcessorMongoDBQuery, defaultRuleGroupProcessorNL, defaultRuleGroupProcessorParameterized, defaultRuleGroupProcessorPrisma, defaultRuleGroupProcessorSPARQL, defaultRuleGroupProcessorSQL, defaultRuleGroupProcessorSequelize, defaultRuleGroupProcessorSpEL, defaultRuleGroupProcessorTanStackDB, defaultRuleProcessorCEL, defaultRuleProcessorCypher, defaultRuleProcessorDrizzle, defaultRuleProcessorElasticSearch, defaultRuleProcessorGremlin, defaultRuleProcessorJSONata, defaultRuleProcessorJsonLogic, defaultRuleProcessorLDAP, defaultRuleProcessorMongoDB, defaultRuleProcessorMongoDBQuery, defaultRuleProcessorNL, defaultRuleProcessorParameterized, defaultRuleProcessorPrisma, defaultRuleProcessorSPARQL, defaultRuleProcessorSQL, defaultRuleProcessorSequelize, defaultRuleProcessorSpEL, defaultRuleProcessorTanStackDB, defaultSpELValueProcessor, defaultValueProcessor, defaultValueProcessorByRule, defaultValueProcessorCELByRule, defaultValueProcessorMongoDBByRule, defaultValueProcessorNL, defaultValueProcessorSpELByRule, formatQuery, formatQueryOptionPresets, getLikeWildcards, getNLTranslataion, getQuoteFieldNamesWithArray, getQuotedFieldName, getSQLConcat, getSubqueryElementAlias, isValidValue, isValueProcessorLegacy, jsonLogicAdditionalOperators, mapSQLOperator, mongoDbFallback, mongoOperators, normalizeConstituentWordOrder, numerifyValues, prismaFallback, prismaOperators, processMatchMode, shouldRenderAsNumber, sparqlVar, sqlDialectPresets, stripParamPrefix, subqueryElementAliasBase, withParamPrefix, wrapLikeFragment };
|
|
847
862
|
//# sourceMappingURL=formatQuery.d.mts.map
|
package/dist/formatQuery.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { E as RuleGroupTypeAny, I as SetRequired, N as RuleType, S as ValueProcessorOptions, _ as RuleGroupProcessor, a as DiagnosticsResult, b as ValueProcessorByRule, c as ExportOperatorMap, d as NLTranslationKey, f as NLTranslations, h as RQBJsonLogic, i as ConstituentWordOrder, l as FormatQueryOptions, m as ParameterizedSQL, o as ExportFormat, p as ParameterizedNamedSQL, s as ExportObjectFormats, u as GroupVariantCondition, v as RuleProcessor, x as ValueProcessorLegacy, y as SQLPreset } from "./index-
|
|
1
|
+
import { E as RuleGroupTypeAny, I as SetRequired, N as RuleType, S as ValueProcessorOptions, _ as RuleGroupProcessor, a as DiagnosticsResult, b as ValueProcessorByRule, c as ExportOperatorMap, d as NLTranslationKey, f as NLTranslations, h as RQBJsonLogic, i as ConstituentWordOrder, l as FormatQueryOptions, m as ParameterizedSQL, o as ExportFormat, p as ParameterizedNamedSQL, s as ExportObjectFormats, u as GroupVariantCondition, v as RuleProcessor, x as ValueProcessorLegacy, y as SQLPreset } from "./index-CX9mehdL.js";
|
|
2
2
|
import { Column, Operators, SQL, Table } from "drizzle-orm";
|
|
3
3
|
import { WhereOptions } from "sequelize";
|
|
4
4
|
import { eq } from "@tanstack/db";
|
|
@@ -777,6 +777,21 @@ type ProcessedMatchMode = {
|
|
|
777
777
|
* 2. `value` is not a valid rule group.
|
|
778
778
|
*/
|
|
779
779
|
declare const processMatchMode: (rule: RuleType) => null | false | ProcessedMatchMode;
|
|
780
|
+
/**
|
|
781
|
+
* Base alias assigned to the element binding of a subquery generated for a rule's
|
|
782
|
+
* {@link MatchMode `match` mode} (e.g. `unnest(field) as elem_alias`).
|
|
783
|
+
*/
|
|
784
|
+
declare const subqueryElementAliasBase = "elem_alias";
|
|
785
|
+
/**
|
|
786
|
+
* Returns the element alias for a subquery at the given nesting depth. Depth 0 (the common,
|
|
787
|
+
* non-nested case) uses {@link subqueryElementAliasBase} unchanged; deeper levels are suffixed
|
|
788
|
+
* with the depth, so a subquery nested within a subquery cannot shadow its parent's binding.
|
|
789
|
+
*
|
|
790
|
+
* Deterministic by depth rather than randomized, so output remains stable and snapshot-friendly.
|
|
791
|
+
*
|
|
792
|
+
* @group Export
|
|
793
|
+
*/
|
|
794
|
+
declare const getSubqueryElementAlias: (subqueryDepth?: number) => string;
|
|
780
795
|
/**
|
|
781
796
|
* "Replacer" method for JSON.stringify's second argument. Converts `bigint` values to
|
|
782
797
|
* objects with a `$bigint` property having a value of a string representation of
|
|
@@ -843,5 +858,5 @@ declare const defaultValueProcessorMongoDBByRule: RuleProcessor;
|
|
|
843
858
|
*/
|
|
844
859
|
declare const defaultValueProcessorSpELByRule: RuleProcessor;
|
|
845
860
|
//#endregion
|
|
846
|
-
export { bigIntJsonParseReviver, bigIntJsonStringifyReplacer, celCombinatorMap, cypherCombinatorMap, defaultCELValueProcessor, defaultExportOperatorMap, defaultMongoDBValueProcessor, defaultNLTranslations, defaultOperatorProcessorNL, defaultOperatorProcessorSQL, defaultRuleGroupProcessorCEL, defaultRuleGroupProcessorCypher, defaultRuleGroupProcessorDiagnostics, defaultRuleGroupProcessorDrizzle, defaultRuleGroupProcessorElasticSearch, defaultRuleGroupProcessorGremlin, defaultRuleGroupProcessorJSONata, defaultRuleGroupProcessorJsonLogic, defaultRuleGroupProcessorLDAP, defaultRuleGroupProcessorMongoDB, defaultRuleGroupProcessorMongoDBQuery, defaultRuleGroupProcessorNL, defaultRuleGroupProcessorParameterized, defaultRuleGroupProcessorPrisma, defaultRuleGroupProcessorSPARQL, defaultRuleGroupProcessorSQL, defaultRuleGroupProcessorSequelize, defaultRuleGroupProcessorSpEL, defaultRuleGroupProcessorTanStackDB, defaultRuleProcessorCEL, defaultRuleProcessorCypher, defaultRuleProcessorDrizzle, defaultRuleProcessorElasticSearch, defaultRuleProcessorGremlin, defaultRuleProcessorJSONata, defaultRuleProcessorJsonLogic, defaultRuleProcessorLDAP, defaultRuleProcessorMongoDB, defaultRuleProcessorMongoDBQuery, defaultRuleProcessorNL, defaultRuleProcessorParameterized, defaultRuleProcessorPrisma, defaultRuleProcessorSPARQL, defaultRuleProcessorSQL, defaultRuleProcessorSequelize, defaultRuleProcessorSpEL, defaultRuleProcessorTanStackDB, defaultSpELValueProcessor, defaultValueProcessor, defaultValueProcessorByRule, defaultValueProcessorCELByRule, defaultValueProcessorMongoDBByRule, defaultValueProcessorNL, defaultValueProcessorSpELByRule, formatQuery, formatQueryOptionPresets, getLikeWildcards, getNLTranslataion, getQuoteFieldNamesWithArray, getQuotedFieldName, getSQLConcat, isValidValue, isValueProcessorLegacy, jsonLogicAdditionalOperators, mapSQLOperator, mongoDbFallback, mongoOperators, normalizeConstituentWordOrder, numerifyValues, prismaFallback, prismaOperators, processMatchMode, shouldRenderAsNumber, sparqlVar, sqlDialectPresets, stripParamPrefix, withParamPrefix, wrapLikeFragment };
|
|
861
|
+
export { bigIntJsonParseReviver, bigIntJsonStringifyReplacer, celCombinatorMap, cypherCombinatorMap, defaultCELValueProcessor, defaultExportOperatorMap, defaultMongoDBValueProcessor, defaultNLTranslations, defaultOperatorProcessorNL, defaultOperatorProcessorSQL, defaultRuleGroupProcessorCEL, defaultRuleGroupProcessorCypher, defaultRuleGroupProcessorDiagnostics, defaultRuleGroupProcessorDrizzle, defaultRuleGroupProcessorElasticSearch, defaultRuleGroupProcessorGremlin, defaultRuleGroupProcessorJSONata, defaultRuleGroupProcessorJsonLogic, defaultRuleGroupProcessorLDAP, defaultRuleGroupProcessorMongoDB, defaultRuleGroupProcessorMongoDBQuery, defaultRuleGroupProcessorNL, defaultRuleGroupProcessorParameterized, defaultRuleGroupProcessorPrisma, defaultRuleGroupProcessorSPARQL, defaultRuleGroupProcessorSQL, defaultRuleGroupProcessorSequelize, defaultRuleGroupProcessorSpEL, defaultRuleGroupProcessorTanStackDB, defaultRuleProcessorCEL, defaultRuleProcessorCypher, defaultRuleProcessorDrizzle, defaultRuleProcessorElasticSearch, defaultRuleProcessorGremlin, defaultRuleProcessorJSONata, defaultRuleProcessorJsonLogic, defaultRuleProcessorLDAP, defaultRuleProcessorMongoDB, defaultRuleProcessorMongoDBQuery, defaultRuleProcessorNL, defaultRuleProcessorParameterized, defaultRuleProcessorPrisma, defaultRuleProcessorSPARQL, defaultRuleProcessorSQL, defaultRuleProcessorSequelize, defaultRuleProcessorSpEL, defaultRuleProcessorTanStackDB, defaultSpELValueProcessor, defaultValueProcessor, defaultValueProcessorByRule, defaultValueProcessorCELByRule, defaultValueProcessorMongoDBByRule, defaultValueProcessorNL, defaultValueProcessorSpELByRule, formatQuery, formatQueryOptionPresets, getLikeWildcards, getNLTranslataion, getQuoteFieldNamesWithArray, getQuotedFieldName, getSQLConcat, getSubqueryElementAlias, isValidValue, isValueProcessorLegacy, jsonLogicAdditionalOperators, mapSQLOperator, mongoDbFallback, mongoOperators, normalizeConstituentWordOrder, numerifyValues, prismaFallback, prismaOperators, processMatchMode, shouldRenderAsNumber, sparqlVar, sqlDialectPresets, stripParamPrefix, subqueryElementAliasBase, withParamPrefix, wrapLikeFragment };
|
|
847
862
|
//# sourceMappingURL=formatQuery.d.ts.map
|
package/dist/formatQuery.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_utils = require("./utils-
|
|
2
|
+
const require_utils = require("./utils-SchkzSCN.js");
|
|
3
3
|
const require_isRuleGroup = require("./isRuleGroup-0JNiQgLg.js");
|
|
4
4
|
const require_transformQuery = require("./transformQuery.js");
|
|
5
5
|
const require_convertQuery = require("./convertQuery-Cw76XFIn.js");
|
|
@@ -99,11 +99,15 @@ const defaultRuleProcessorCEL = (rule, opts = {}) => {
|
|
|
99
99
|
if (matchEval === false) return "";
|
|
100
100
|
else if (matchEval) {
|
|
101
101
|
const { mode, threshold } = matchEval;
|
|
102
|
-
const
|
|
102
|
+
const subqueryDepth = opts.subqueryDepth ?? 0;
|
|
103
|
+
const arrayElementAlias = require_utils.getSubqueryElementAlias(subqueryDepth);
|
|
103
104
|
const nestedArrayFilter = defaultRuleGroupProcessorCEL(require_transformQuery.transformQuery(rule.value, { ruleProcessor: (r) => ({
|
|
104
105
|
...r,
|
|
105
106
|
field: `${arrayElementAlias}${r.field ? `.${r.field}` : ""}`
|
|
106
|
-
}) }),
|
|
107
|
+
}) }), {
|
|
108
|
+
...opts,
|
|
109
|
+
subqueryDepth: subqueryDepth + 1
|
|
110
|
+
});
|
|
107
111
|
switch (mode) {
|
|
108
112
|
case "all": return `${field}.all(${arrayElementAlias}, ${nestedArrayFilter})`;
|
|
109
113
|
case "none":
|
|
@@ -1719,7 +1723,8 @@ const defaultRuleProcessorDrizzle = (rule, _options) => {
|
|
|
1719
1723
|
else if (matchEval) {
|
|
1720
1724
|
if (opts.preset !== "postgresql") return void 0;
|
|
1721
1725
|
const { mode, threshold } = matchEval;
|
|
1722
|
-
const
|
|
1726
|
+
const subqueryDepth = opts.subqueryDepth ?? 0;
|
|
1727
|
+
const arrayElementAlias = require_utils.getSubqueryElementAlias(subqueryDepth);
|
|
1723
1728
|
const nestedArrayFilter = defaultRuleGroupProcessorDrizzle(require_transformQuery.transformQuery(rule.value, { ruleProcessor: (r) => ({
|
|
1724
1729
|
...r,
|
|
1725
1730
|
field: arrayElementAlias
|
|
@@ -1728,7 +1733,8 @@ const defaultRuleProcessorDrizzle = (rule, _options) => {
|
|
|
1728
1733
|
context: {
|
|
1729
1734
|
...opts.context,
|
|
1730
1735
|
useRawFields: true
|
|
1731
|
-
}
|
|
1736
|
+
},
|
|
1737
|
+
subqueryDepth: subqueryDepth + 1
|
|
1732
1738
|
});
|
|
1733
1739
|
switch (mode) {
|
|
1734
1740
|
case "all": return sql`(select count(*) from unnest(${column}) as ${sql.raw(arrayElementAlias)} where ${nestedArrayFilter({}, drizzleOperators)}) = array_length(${column}, 1)`;
|
|
@@ -2442,11 +2448,15 @@ const defaultRuleProcessorSQL = (rule, opts = {}) => {
|
|
|
2442
2448
|
else if (matchEval) {
|
|
2443
2449
|
if (opts?.preset !== "postgresql") return "";
|
|
2444
2450
|
const { mode, threshold } = matchEval;
|
|
2445
|
-
const
|
|
2451
|
+
const subqueryDepth = opts.subqueryDepth ?? 0;
|
|
2452
|
+
const arrayElementAlias = require_utils.getSubqueryElementAlias(subqueryDepth);
|
|
2446
2453
|
const nestedArrayFilter = defaultRuleGroupProcessorSQL(require_transformQuery.transformQuery(rule.value, { ruleProcessor: (r) => ({
|
|
2447
2454
|
...r,
|
|
2448
2455
|
field: arrayElementAlias
|
|
2449
|
-
}) }),
|
|
2456
|
+
}) }), {
|
|
2457
|
+
...opts,
|
|
2458
|
+
subqueryDepth: subqueryDepth + 1
|
|
2459
|
+
});
|
|
2450
2460
|
switch (mode) {
|
|
2451
2461
|
case "all": return `(select count(*) from unnest(${ruleField}) as ${wrapFieldName(arrayElementAlias)} where ${nestedArrayFilter}) = array_length(${ruleField}, 1)`;
|
|
2452
2462
|
case "none": return `not exists (select 1 from unnest(${ruleField}) as ${wrapFieldName(arrayElementAlias)} where ${nestedArrayFilter})`;
|
|
@@ -2504,13 +2514,15 @@ const defaultRuleProcessorParameterized = (rule, opts, meta) => {
|
|
|
2504
2514
|
else if (matchEval) {
|
|
2505
2515
|
if (opts?.preset !== "postgresql") return finalize("");
|
|
2506
2516
|
const { mode, threshold } = matchEval;
|
|
2507
|
-
const
|
|
2517
|
+
const subqueryDepth = opts.subqueryDepth ?? 0;
|
|
2518
|
+
const arrayElementAlias = require_utils.getSubqueryElementAlias(subqueryDepth);
|
|
2508
2519
|
const { sql: nestedSQL, params: nestedParams } = defaultRuleGroupProcessorParameterized(require_transformQuery.transformQuery(rule.value, { ruleProcessor: (r) => ({
|
|
2509
2520
|
...r,
|
|
2510
2521
|
field: arrayElementAlias
|
|
2511
2522
|
}) }), {
|
|
2512
2523
|
...opts,
|
|
2513
|
-
fields: []
|
|
2524
|
+
fields: [],
|
|
2525
|
+
subqueryDepth: subqueryDepth + 1
|
|
2514
2526
|
});
|
|
2515
2527
|
if (Array.isArray(nestedParams)) params.push(...nestedParams);
|
|
2516
2528
|
else Object.assign(paramsNamed, nestedParams);
|
|
@@ -3238,6 +3250,7 @@ exports.getNLTranslataion = require_utils.getNLTranslataion;
|
|
|
3238
3250
|
exports.getQuoteFieldNamesWithArray = require_utils.getQuoteFieldNamesWithArray;
|
|
3239
3251
|
exports.getQuotedFieldName = require_utils.getQuotedFieldName;
|
|
3240
3252
|
exports.getSQLConcat = require_utils.getSQLConcat;
|
|
3253
|
+
exports.getSubqueryElementAlias = require_utils.getSubqueryElementAlias;
|
|
3241
3254
|
exports.isValidValue = require_utils.isValidValue;
|
|
3242
3255
|
exports.isValueProcessorLegacy = require_utils.isValueProcessorLegacy;
|
|
3243
3256
|
exports.jsonLogicAdditionalOperators = require_utils.jsonLogicAdditionalOperators;
|
|
@@ -3253,6 +3266,7 @@ exports.shouldRenderAsNumber = require_utils.shouldRenderAsNumber;
|
|
|
3253
3266
|
exports.sparqlVar = sparqlVar;
|
|
3254
3267
|
exports.sqlDialectPresets = sqlDialectPresets;
|
|
3255
3268
|
exports.stripParamPrefix = require_utils.stripParamPrefix;
|
|
3269
|
+
exports.subqueryElementAliasBase = require_utils.subqueryElementAliasBase;
|
|
3256
3270
|
exports.withParamPrefix = require_utils.withParamPrefix;
|
|
3257
3271
|
exports.wrapLikeFragment = require_utils.wrapLikeFragment;
|
|
3258
3272
|
|