@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.
Files changed (66) hide show
  1. package/dist/cjs/react-querybuilder_core.cjs.development.d.ts +30 -1
  2. package/dist/cjs/react-querybuilder_core.cjs.development.js +37 -8
  3. package/dist/cjs/react-querybuilder_core.cjs.development.js.map +1 -1
  4. package/dist/cjs/react-querybuilder_core.cjs.production.d.ts +30 -1
  5. package/dist/cjs/react-querybuilder_core.cjs.production.js +1 -1
  6. package/dist/cjs/react-querybuilder_core.cjs.production.js.map +1 -1
  7. package/dist/formatQuery.d.mts +17 -2
  8. package/dist/formatQuery.d.ts +17 -2
  9. package/dist/formatQuery.js +23 -9
  10. package/dist/formatQuery.js.map +1 -1
  11. package/dist/formatQuery.mjs +22 -10
  12. package/dist/formatQuery.mjs.map +1 -1
  13. package/dist/{import-Ddc3d_8q.d.ts → import-6ExjhifL.d.ts} +2 -2
  14. package/dist/{import-BVdxeIBO.d.mts → import-DVWI7Fdh.d.mts} +2 -2
  15. package/dist/{index-BSwFvkeI.d.mts → index-CX9mehdL.d.mts} +15 -1
  16. package/dist/{index-BSwFvkeI.d.ts → index-CX9mehdL.d.ts} +15 -1
  17. package/dist/parseCEL.d.mts +2 -2
  18. package/dist/parseCEL.d.ts +2 -2
  19. package/dist/parseCEL.js +2 -2
  20. package/dist/parseCEL.mjs +2 -2
  21. package/dist/parseCypher.d.mts +1 -1
  22. package/dist/parseCypher.d.ts +1 -1
  23. package/dist/parseGremlin.d.mts +1 -1
  24. package/dist/parseGremlin.d.ts +1 -1
  25. package/dist/parseJSONata.d.mts +2 -2
  26. package/dist/parseJSONata.d.ts +2 -2
  27. package/dist/parseJSONata.js +1 -1
  28. package/dist/parseJSONata.mjs +1 -1
  29. package/dist/parseJsonLogic.d.mts +2 -2
  30. package/dist/parseJsonLogic.d.ts +2 -2
  31. package/dist/parseJsonLogic.js +2 -2
  32. package/dist/parseJsonLogic.mjs +2 -2
  33. package/dist/parseMongoDB.d.mts +2 -2
  34. package/dist/parseMongoDB.d.ts +2 -2
  35. package/dist/parseMongoDB.js +2 -2
  36. package/dist/parseMongoDB.mjs +2 -2
  37. package/dist/parseSPARQL.d.mts +1 -1
  38. package/dist/parseSPARQL.d.ts +1 -1
  39. package/dist/parseSQL.d.mts +2 -2
  40. package/dist/parseSQL.d.ts +2 -2
  41. package/dist/parseSQL.js +2 -2
  42. package/dist/parseSQL.mjs +2 -2
  43. package/dist/parseSpEL.d.mts +2 -2
  44. package/dist/parseSpEL.d.ts +2 -2
  45. package/dist/parseSpEL.js +2 -2
  46. package/dist/parseSpEL.mjs +2 -2
  47. package/dist/{prepareQueryObjects-Q18lHCKl.mjs → prepareQueryObjects-9emVAGYG.mjs} +2 -2
  48. package/dist/{prepareQueryObjects-Q18lHCKl.mjs.map → prepareQueryObjects-9emVAGYG.mjs.map} +1 -1
  49. package/dist/{prepareQueryObjects-C2-kTZvR.js → prepareQueryObjects-C5dHLhnC.js} +2 -2
  50. package/dist/{prepareQueryObjects-C2-kTZvR.js.map → prepareQueryObjects-C5dHLhnC.js.map} +1 -1
  51. package/dist/react-querybuilder_core.d.mts +30 -1
  52. package/dist/react-querybuilder_core.legacy-esm.d.ts +30 -1
  53. package/dist/react-querybuilder_core.legacy-esm.js +38 -9
  54. package/dist/react-querybuilder_core.legacy-esm.js.map +1 -1
  55. package/dist/react-querybuilder_core.mjs +36 -9
  56. package/dist/react-querybuilder_core.mjs.map +1 -1
  57. package/dist/react-querybuilder_core.production.d.mts +30 -1
  58. package/dist/react-querybuilder_core.production.mjs +1 -1
  59. package/dist/react-querybuilder_core.production.mjs.map +1 -1
  60. package/dist/transformQuery.d.mts +1 -1
  61. package/dist/transformQuery.d.ts +1 -1
  62. package/dist/{utils-Dt0D_DMV.mjs → utils-CxWs-N47.mjs} +17 -2
  63. package/dist/{utils-Dt0D_DMV.mjs.map → utils-CxWs-N47.mjs.map} +1 -1
  64. package/dist/{utils-DEwV7F6B.js → utils-SchkzSCN.js} +28 -1
  65. package/dist/{utils-DEwV7F6B.js.map → utils-SchkzSCN.js.map} +1 -1
  66. package/package.json +2 -2
@@ -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-BSwFvkeI.mjs";
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
@@ -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-BSwFvkeI.js";
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
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_utils = require("./utils-DEwV7F6B.js");
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 arrayElementAlias = "elem_alias";
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
- }) }), opts);
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 arrayElementAlias = "elem_alias";
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 arrayElementAlias = "elem_alias";
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
- }) }), opts);
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 arrayElementAlias = "elem_alias";
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