@dereekb/firebase 13.12.9 → 13.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -243,7 +243,7 @@ import { parse as parse$2 } from '@typescript-eslint/parser';
243
243
  description: 'Reject function signatures with more than four positional parameters; require a single config object.'
244
244
  });
245
245
 
246
- function _array_like_to_array$h(arr, len) {
246
+ function _array_like_to_array$i(arr, len) {
247
247
  if (len == null || len > arr.length) len = arr.length;
248
248
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
249
249
  return arr2;
@@ -279,15 +279,15 @@ function _non_iterable_rest$a() {
279
279
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
280
280
  }
281
281
  function _sliced_to_array$a(arr, i) {
282
- return _array_with_holes$a(arr) || _iterable_to_array_limit$a(arr, i) || _unsupported_iterable_to_array$h(arr, i) || _non_iterable_rest$a();
282
+ return _array_with_holes$a(arr) || _iterable_to_array_limit$a(arr, i) || _unsupported_iterable_to_array$i(arr, i) || _non_iterable_rest$a();
283
283
  }
284
- function _unsupported_iterable_to_array$h(o, minLen) {
284
+ function _unsupported_iterable_to_array$i(o, minLen) {
285
285
  if (!o) return;
286
- if (typeof o === "string") return _array_like_to_array$h(o, minLen);
286
+ if (typeof o === "string") return _array_like_to_array$i(o, minLen);
287
287
  var n = Object.prototype.toString.call(o).slice(8, -1);
288
288
  if (n === "Object" && o.constructor) n = o.constructor.name;
289
289
  if (n === "Map" || n === "Set") return Array.from(n);
290
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$h(o, minLen);
290
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$i(o, minLen);
291
291
  }
292
292
  var TAG_LINE_REGEX = /^@([A-Za-z_]\w*)\s*(.*)$/;
293
293
  var TYPE_ANNOTATION_REGEX = /^\{([^}]*)\}\s*(.*)$/;
@@ -636,7 +636,7 @@ var LINE_PREFIX_REGEX = /^(\s*\*?\s?)(.*)$/;
636
636
  * companions are required/optional, what value format each accepts, and which
637
637
  * messageId to emit when a check fails. The rule body itself only wires the
638
638
  * visitors and message map; all value-format validation lives here.
639
- */ function _array_like_to_array$g(arr, len) {
639
+ */ function _array_like_to_array$h(arr, len) {
640
640
  if (len == null || len > arr.length) len = arr.length;
641
641
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
642
642
  return arr2;
@@ -672,15 +672,15 @@ function _non_iterable_rest$9() {
672
672
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
673
673
  }
674
674
  function _sliced_to_array$9(arr, i) {
675
- return _array_with_holes$9(arr) || _iterable_to_array_limit$9(arr, i) || _unsupported_iterable_to_array$g(arr, i) || _non_iterable_rest$9();
675
+ return _array_with_holes$9(arr) || _iterable_to_array_limit$9(arr, i) || _unsupported_iterable_to_array$h(arr, i) || _non_iterable_rest$9();
676
676
  }
677
- function _unsupported_iterable_to_array$g(o, minLen) {
677
+ function _unsupported_iterable_to_array$h(o, minLen) {
678
678
  if (!o) return;
679
- if (typeof o === "string") return _array_like_to_array$g(o, minLen);
679
+ if (typeof o === "string") return _array_like_to_array$h(o, minLen);
680
680
  var n = Object.prototype.toString.call(o).slice(8, -1);
681
681
  if (n === "Object" && o.constructor) n = o.constructor.name;
682
682
  if (n === "Map" || n === "Set") return Array.from(n);
683
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$g(o, minLen);
683
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$h(o, minLen);
684
684
  }
685
685
  /**
686
686
  * Kebab-case slug pattern: lowercase letters/digits, words separated by single hyphens,
@@ -1128,30 +1128,30 @@ function checkCompanion(input) {
1128
1128
  return result;
1129
1129
  }
1130
1130
 
1131
- function _array_like_to_array$f(arr, len) {
1131
+ function _array_like_to_array$g(arr, len) {
1132
1132
  if (len == null || len > arr.length) len = arr.length;
1133
1133
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
1134
1134
  return arr2;
1135
1135
  }
1136
- function _array_without_holes$a(arr) {
1137
- if (Array.isArray(arr)) return _array_like_to_array$f(arr);
1136
+ function _array_without_holes$b(arr) {
1137
+ if (Array.isArray(arr)) return _array_like_to_array$g(arr);
1138
1138
  }
1139
- function _iterable_to_array$a(iter) {
1139
+ function _iterable_to_array$b(iter) {
1140
1140
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
1141
1141
  }
1142
- function _non_iterable_spread$a() {
1142
+ function _non_iterable_spread$b() {
1143
1143
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
1144
1144
  }
1145
- function _to_consumable_array$a(arr) {
1146
- return _array_without_holes$a(arr) || _iterable_to_array$a(arr) || _unsupported_iterable_to_array$f(arr) || _non_iterable_spread$a();
1145
+ function _to_consumable_array$b(arr) {
1146
+ return _array_without_holes$b(arr) || _iterable_to_array$b(arr) || _unsupported_iterable_to_array$g(arr) || _non_iterable_spread$b();
1147
1147
  }
1148
- function _unsupported_iterable_to_array$f(o, minLen) {
1148
+ function _unsupported_iterable_to_array$g(o, minLen) {
1149
1149
  if (!o) return;
1150
- if (typeof o === "string") return _array_like_to_array$f(o, minLen);
1150
+ if (typeof o === "string") return _array_like_to_array$g(o, minLen);
1151
1151
  var n = Object.prototype.toString.call(o).slice(8, -1);
1152
1152
  if (n === "Object" && o.constructor) n = o.constructor.name;
1153
1153
  if (n === "Map" || n === "Set") return Array.from(n);
1154
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$f(o, minLen);
1154
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$g(o, minLen);
1155
1155
  }
1156
1156
  /**
1157
1157
  * Module that publishes the `@dereekb/firebase` Firestore constraint factories (`where`, `orderBy`, etc.).
@@ -1300,7 +1300,7 @@ function qualifiedNameTail(node) {
1300
1300
  * Combined list of every Firestore constraint factory exported from `@dereekb/firebase`. Used
1301
1301
  * by the body-coherence rule to ensure a tagged factory body contains at least one constraint
1302
1302
  * call of any kind (index-affecting or pagination) before warning that the marker is orphaned.
1303
- */ var DEFAULT_CONSTRAINT_FACTORY_NAMES = _to_consumable_array$a(DEFAULT_INDEX_AFFECTING_CONSTRAINT_NAMES).concat(_to_consumable_array$a(DEFAULT_PAGINATION_CONSTRAINT_NAMES));
1303
+ */ var DEFAULT_CONSTRAINT_FACTORY_NAMES = _to_consumable_array$b(DEFAULT_INDEX_AFFECTING_CONSTRAINT_NAMES).concat(_to_consumable_array$b(DEFAULT_PAGINATION_CONSTRAINT_NAMES));
1304
1304
  /**
1305
1305
  * Creates an empty {@link ImportRegistry}.
1306
1306
  *
@@ -1761,30 +1761,30 @@ function qualifiedNameTail(node) {
1761
1761
  });
1762
1762
  }
1763
1763
 
1764
- function _array_like_to_array$e(arr, len) {
1764
+ function _array_like_to_array$f(arr, len) {
1765
1765
  if (len == null || len > arr.length) len = arr.length;
1766
1766
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
1767
1767
  return arr2;
1768
1768
  }
1769
- function _array_without_holes$9(arr) {
1770
- if (Array.isArray(arr)) return _array_like_to_array$e(arr);
1769
+ function _array_without_holes$a(arr) {
1770
+ if (Array.isArray(arr)) return _array_like_to_array$f(arr);
1771
1771
  }
1772
- function _iterable_to_array$9(iter) {
1772
+ function _iterable_to_array$a(iter) {
1773
1773
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
1774
1774
  }
1775
- function _non_iterable_spread$9() {
1775
+ function _non_iterable_spread$a() {
1776
1776
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
1777
1777
  }
1778
- function _to_consumable_array$9(arr) {
1779
- return _array_without_holes$9(arr) || _iterable_to_array$9(arr) || _unsupported_iterable_to_array$e(arr) || _non_iterable_spread$9();
1778
+ function _to_consumable_array$a(arr) {
1779
+ return _array_without_holes$a(arr) || _iterable_to_array$a(arr) || _unsupported_iterable_to_array$f(arr) || _non_iterable_spread$a();
1780
1780
  }
1781
- function _unsupported_iterable_to_array$e(o, minLen) {
1781
+ function _unsupported_iterable_to_array$f(o, minLen) {
1782
1782
  if (!o) return;
1783
- if (typeof o === "string") return _array_like_to_array$e(o, minLen);
1783
+ if (typeof o === "string") return _array_like_to_array$f(o, minLen);
1784
1784
  var n = Object.prototype.toString.call(o).slice(8, -1);
1785
1785
  if (n === "Object" && o.constructor) n = o.constructor.name;
1786
1786
  if (n === "Map" || n === "Set") return Array.from(n);
1787
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$e(o, minLen);
1787
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$f(o, minLen);
1788
1788
  }
1789
1789
  /**
1790
1790
  * ESLint rule that forbids inline `@dereekb/firebase` Firestore constraint factory calls
@@ -1842,7 +1842,7 @@ function _unsupported_iterable_to_array$e(o, minLen) {
1842
1842
  var options = (_context_options_ = context.options[0]) !== null && _context_options_ !== void 0 ? _context_options_ : {};
1843
1843
  var sourceCode = context.sourceCode;
1844
1844
  var baseNames = (_options_constraintNames = options.constraintNames) !== null && _options_constraintNames !== void 0 ? _options_constraintNames : DEFAULT_INDEX_AFFECTING_CONSTRAINT_NAMES;
1845
- var constraintNames = new Set(_to_consumable_array$9(baseNames).concat(_to_consumable_array$9((_options_additionalConstraintNames = options.additionalConstraintNames) !== null && _options_additionalConstraintNames !== void 0 ? _options_additionalConstraintNames : [])));
1845
+ var constraintNames = new Set(_to_consumable_array$a(baseNames).concat(_to_consumable_array$a((_options_additionalConstraintNames = options.additionalConstraintNames) !== null && _options_additionalConstraintNames !== void 0 ? _options_additionalConstraintNames : [])));
1846
1846
  var allowedSources = new Set((_options_allowedImportSources = options.allowedImportSources) !== null && _options_allowedImportSources !== void 0 ? _options_allowedImportSources : [
1847
1847
  FIREBASE_MODULE
1848
1848
  ]);
@@ -2926,30 +2926,30 @@ function recordVariableDeclarator(node, emptyArrayDeclarators) {
2926
2926
  }
2927
2927
  };
2928
2928
 
2929
- function _array_like_to_array$d(arr, len) {
2929
+ function _array_like_to_array$e(arr, len) {
2930
2930
  if (len == null || len > arr.length) len = arr.length;
2931
2931
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
2932
2932
  return arr2;
2933
2933
  }
2934
- function _array_without_holes$8(arr) {
2935
- if (Array.isArray(arr)) return _array_like_to_array$d(arr);
2934
+ function _array_without_holes$9(arr) {
2935
+ if (Array.isArray(arr)) return _array_like_to_array$e(arr);
2936
2936
  }
2937
- function _iterable_to_array$8(iter) {
2937
+ function _iterable_to_array$9(iter) {
2938
2938
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
2939
2939
  }
2940
- function _non_iterable_spread$8() {
2940
+ function _non_iterable_spread$9() {
2941
2941
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
2942
2942
  }
2943
- function _to_consumable_array$8(arr) {
2944
- return _array_without_holes$8(arr) || _iterable_to_array$8(arr) || _unsupported_iterable_to_array$d(arr) || _non_iterable_spread$8();
2943
+ function _to_consumable_array$9(arr) {
2944
+ return _array_without_holes$9(arr) || _iterable_to_array$9(arr) || _unsupported_iterable_to_array$e(arr) || _non_iterable_spread$9();
2945
2945
  }
2946
- function _unsupported_iterable_to_array$d(o, minLen) {
2946
+ function _unsupported_iterable_to_array$e(o, minLen) {
2947
2947
  if (!o) return;
2948
- if (typeof o === "string") return _array_like_to_array$d(o, minLen);
2948
+ if (typeof o === "string") return _array_like_to_array$e(o, minLen);
2949
2949
  var n = Object.prototype.toString.call(o).slice(8, -1);
2950
2950
  if (n === "Object" && o.constructor) n = o.constructor.name;
2951
2951
  if (n === "Map" || n === "Set") return Array.from(n);
2952
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$d(o, minLen);
2952
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$e(o, minLen);
2953
2953
  }
2954
2954
  function hasTypeArgument(node) {
2955
2955
  var _node_typeArguments;
@@ -3009,7 +3009,7 @@ function hasTypeArgument(node) {
3009
3009
  var _context_options_, _options_constraintNames, _options_additionalConstraintNames, _options_allowedImportSources;
3010
3010
  var options = (_context_options_ = context.options[0]) !== null && _context_options_ !== void 0 ? _context_options_ : {};
3011
3011
  var baseNames = (_options_constraintNames = options.constraintNames) !== null && _options_constraintNames !== void 0 ? _options_constraintNames : DEFAULT_INDEX_AFFECTING_CONSTRAINT_NAMES;
3012
- var constraintNames = new Set(_to_consumable_array$8(baseNames).concat(_to_consumable_array$8((_options_additionalConstraintNames = options.additionalConstraintNames) !== null && _options_additionalConstraintNames !== void 0 ? _options_additionalConstraintNames : [])));
3012
+ var constraintNames = new Set(_to_consumable_array$9(baseNames).concat(_to_consumable_array$9((_options_additionalConstraintNames = options.additionalConstraintNames) !== null && _options_additionalConstraintNames !== void 0 ? _options_additionalConstraintNames : [])));
3013
3013
  var allowedSources = new Set((_options_allowedImportSources = options.allowedImportSources) !== null && _options_allowedImportSources !== void 0 ? _options_allowedImportSources : [
3014
3014
  FIREBASE_MODULE
3015
3015
  ]);
@@ -3050,7 +3050,7 @@ function hasTypeArgument(node) {
3050
3050
  }
3051
3051
  };
3052
3052
 
3053
- function _array_like_to_array$c(arr, len) {
3053
+ function _array_like_to_array$d(arr, len) {
3054
3054
  if (len == null || len > arr.length) len = arr.length;
3055
3055
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
3056
3056
  return arr2;
@@ -3086,15 +3086,15 @@ function _non_iterable_rest$8() {
3086
3086
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
3087
3087
  }
3088
3088
  function _sliced_to_array$8(arr, i) {
3089
- return _array_with_holes$8(arr) || _iterable_to_array_limit$8(arr, i) || _unsupported_iterable_to_array$c(arr, i) || _non_iterable_rest$8();
3089
+ return _array_with_holes$8(arr) || _iterable_to_array_limit$8(arr, i) || _unsupported_iterable_to_array$d(arr, i) || _non_iterable_rest$8();
3090
3090
  }
3091
- function _unsupported_iterable_to_array$c(o, minLen) {
3091
+ function _unsupported_iterable_to_array$d(o, minLen) {
3092
3092
  if (!o) return;
3093
- if (typeof o === "string") return _array_like_to_array$c(o, minLen);
3093
+ if (typeof o === "string") return _array_like_to_array$d(o, minLen);
3094
3094
  var n = Object.prototype.toString.call(o).slice(8, -1);
3095
3095
  if (n === "Object" && o.constructor) n = o.constructor.name;
3096
3096
  if (n === "Map" || n === "Set") return Array.from(n);
3097
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$c(o, minLen);
3097
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$d(o, minLen);
3098
3098
  }
3099
3099
  /**
3100
3100
  * Type-reference name that triggers this rule. Variables whose declared type is
@@ -4662,7 +4662,7 @@ var RESERVED = new Set([
4662
4662
  'prototype'
4663
4663
  ]);
4664
4664
 
4665
- function _array_like_to_array$b(arr, len) {
4665
+ function _array_like_to_array$c(arr, len) {
4666
4666
  if (len == null || len > arr.length) len = arr.length;
4667
4667
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
4668
4668
  return arr2;
@@ -4765,19 +4765,19 @@ function _non_iterable_rest$7() {
4765
4765
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
4766
4766
  }
4767
4767
  function _sliced_to_array$7(arr, i) {
4768
- return _array_with_holes$7(arr) || _iterable_to_array_limit$7(arr, i) || _unsupported_iterable_to_array$b(arr, i) || _non_iterable_rest$7();
4768
+ return _array_with_holes$7(arr) || _iterable_to_array_limit$7(arr, i) || _unsupported_iterable_to_array$c(arr, i) || _non_iterable_rest$7();
4769
4769
  }
4770
4770
  function _type_of$6(obj) {
4771
4771
  "@swc/helpers - typeof";
4772
4772
  return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
4773
4773
  }
4774
- function _unsupported_iterable_to_array$b(o, minLen) {
4774
+ function _unsupported_iterable_to_array$c(o, minLen) {
4775
4775
  if (!o) return;
4776
- if (typeof o === "string") return _array_like_to_array$b(o, minLen);
4776
+ if (typeof o === "string") return _array_like_to_array$c(o, minLen);
4777
4777
  var n = Object.prototype.toString.call(o).slice(8, -1);
4778
4778
  if (n === "Object" && o.constructor) n = o.constructor.name;
4779
4779
  if (n === "Map" || n === "Set") return Array.from(n);
4780
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$b(o, minLen);
4780
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$c(o, minLen);
4781
4781
  }
4782
4782
  var _value = /*#__PURE__*/ new WeakMap();
4783
4783
  var _Symbol_for = Symbol.for('nodejs.util.inspect.custom');
@@ -5432,7 +5432,7 @@ function stringSize(str) {
5432
5432
  return count;
5433
5433
  }
5434
5434
 
5435
- function _array_like_to_array$a(arr, len) {
5435
+ function _array_like_to_array$b(arr, len) {
5436
5436
  if (len == null || len > arr.length) len = arr.length;
5437
5437
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
5438
5438
  return arr2;
@@ -5440,8 +5440,8 @@ function _array_like_to_array$a(arr, len) {
5440
5440
  function _array_with_holes$6(arr) {
5441
5441
  if (Array.isArray(arr)) return arr;
5442
5442
  }
5443
- function _array_without_holes$7(arr) {
5444
- if (Array.isArray(arr)) return _array_like_to_array$a(arr);
5443
+ function _array_without_holes$8(arr) {
5444
+ if (Array.isArray(arr)) return _array_like_to_array$b(arr);
5445
5445
  }
5446
5446
  function _assert_this_initialized$2(self) {
5447
5447
  if (self === void 0) {
@@ -5597,7 +5597,7 @@ function _instanceof$6(left, right) {
5597
5597
  function _is_native_function(fn) {
5598
5598
  return Function.toString.call(fn).indexOf("[native code]") !== -1;
5599
5599
  }
5600
- function _iterable_to_array$7(iter) {
5600
+ function _iterable_to_array$8(iter) {
5601
5601
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
5602
5602
  }
5603
5603
  function _iterable_to_array_limit$6(arr, i) {
@@ -5627,7 +5627,7 @@ function _iterable_to_array_limit$6(arr, i) {
5627
5627
  function _non_iterable_rest$6() {
5628
5628
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
5629
5629
  }
5630
- function _non_iterable_spread$7() {
5630
+ function _non_iterable_spread$8() {
5631
5631
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
5632
5632
  }
5633
5633
  function _possible_constructor_return$2(self, call) {
@@ -5644,7 +5644,7 @@ function _set_prototype_of$2(o, p) {
5644
5644
  return _set_prototype_of$2(o, p);
5645
5645
  }
5646
5646
  function _sliced_to_array$6(arr, i) {
5647
- return _array_with_holes$6(arr) || _iterable_to_array_limit$6(arr, i) || _unsupported_iterable_to_array$a(arr, i) || _non_iterable_rest$6();
5647
+ return _array_with_holes$6(arr) || _iterable_to_array_limit$6(arr, i) || _unsupported_iterable_to_array$b(arr, i) || _non_iterable_rest$6();
5648
5648
  }
5649
5649
  function _super_prop_base(object, property) {
5650
5650
  while(!Object.prototype.hasOwnProperty.call(object, property)){
@@ -5653,20 +5653,20 @@ function _super_prop_base(object, property) {
5653
5653
  }
5654
5654
  return object;
5655
5655
  }
5656
- function _to_consumable_array$7(arr) {
5657
- return _array_without_holes$7(arr) || _iterable_to_array$7(arr) || _unsupported_iterable_to_array$a(arr) || _non_iterable_spread$7();
5656
+ function _to_consumable_array$8(arr) {
5657
+ return _array_without_holes$8(arr) || _iterable_to_array$8(arr) || _unsupported_iterable_to_array$b(arr) || _non_iterable_spread$8();
5658
5658
  }
5659
5659
  function _type_of$5(obj) {
5660
5660
  "@swc/helpers - typeof";
5661
5661
  return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
5662
5662
  }
5663
- function _unsupported_iterable_to_array$a(o, minLen) {
5663
+ function _unsupported_iterable_to_array$b(o, minLen) {
5664
5664
  if (!o) return;
5665
- if (typeof o === "string") return _array_like_to_array$a(o, minLen);
5665
+ if (typeof o === "string") return _array_like_to_array$b(o, minLen);
5666
5666
  var n = Object.prototype.toString.call(o).slice(8, -1);
5667
5667
  if (n === "Object" && o.constructor) n = o.constructor.name;
5668
5668
  if (n === "Map" || n === "Set") return Array.from(n);
5669
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$a(o, minLen);
5669
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$b(o, minLen);
5670
5670
  }
5671
5671
  function _wrap_native_super(Class) {
5672
5672
  var _cache = typeof Map === "function" ? new Map() : undefined;
@@ -6512,7 +6512,7 @@ var objTypesDecls = [
6512
6512
  TYPES.bytes,
6513
6513
  celTypes.bytes
6514
6514
  ]
6515
- ].concat(_to_consumable_array$7(typeof Buffer !== 'undefined' ? [
6515
+ ].concat(_to_consumable_array$8(typeof Buffer !== 'undefined' ? [
6516
6516
  [
6517
6517
  Buffer,
6518
6518
  'bytes',
@@ -7155,11 +7155,11 @@ function ensureCandiate(c, key) {
7155
7155
  }
7156
7156
  function getOperators() {
7157
7157
  if (_class_private_field_get$2(this, _operators)) return _class_private_field_get$2(this, _operators);
7158
- return _class_private_field_set$2(this, _operators, _to_consumable_array$7(_class_private_field_get$2(this, _others).operators));
7158
+ return _class_private_field_set$2(this, _operators, _to_consumable_array$8(_class_private_field_get$2(this, _others).operators));
7159
7159
  }
7160
7160
  function getFunctions() {
7161
7161
  if (_class_private_field_get$2(this, _functions)) return _class_private_field_get$2(this, _functions);
7162
- return _class_private_field_set$2(this, _functions, _to_consumable_array$7(_class_private_field_get$2(this, _others).functions));
7162
+ return _class_private_field_set$2(this, _functions, _to_consumable_array$8(_class_private_field_get$2(this, _others).functions));
7163
7163
  }
7164
7164
  function functionCandidates(key) {
7165
7165
  if (_class_private_field_get$2(this, _functionsByKey)) return _class_private_method_get$2(this, _ensureCandiate, ensureCandiate).call(this, _class_private_field_get$2(this, _functionsByKey), key);
@@ -7271,7 +7271,7 @@ function createDeclaration(creator, key) {
7271
7271
  for(var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++){
7272
7272
  args[_key - 2] = arguments[_key];
7273
7273
  }
7274
- return _class_private_field_get$2(this, _typeDeclarations).get(key) || _class_private_field_get$2(this, _typeDeclarations).set(key, creator.apply(void 0, _to_consumable_array$7(args))).get(key);
7274
+ return _class_private_field_get$2(this, _typeDeclarations).get(key) || _class_private_field_get$2(this, _typeDeclarations).set(key, creator.apply(void 0, _to_consumable_array$8(args))).get(key);
7275
7275
  }
7276
7276
  function toCelFieldType(field) {
7277
7277
  if (typeof field === 'string') return {
@@ -7724,7 +7724,7 @@ var OverlayContext = /*#__PURE__*/ function() {
7724
7724
  }
7725
7725
  }
7726
7726
 
7727
- function _array_like_to_array$9(arr, len) {
7727
+ function _array_like_to_array$a(arr, len) {
7728
7728
  if (len == null || len > arr.length) len = arr.length;
7729
7729
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
7730
7730
  return arr2;
@@ -7732,8 +7732,8 @@ function _array_like_to_array$9(arr, len) {
7732
7732
  function _array_with_holes$5(arr) {
7733
7733
  if (Array.isArray(arr)) return arr;
7734
7734
  }
7735
- function _array_without_holes$6(arr) {
7736
- if (Array.isArray(arr)) return _array_like_to_array$9(arr);
7735
+ function _array_without_holes$7(arr) {
7736
+ if (Array.isArray(arr)) return _array_like_to_array$a(arr);
7737
7737
  }
7738
7738
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
7739
7739
  try {
@@ -7803,7 +7803,7 @@ function _instanceof$5(left, right) {
7803
7803
  return left instanceof right;
7804
7804
  }
7805
7805
  }
7806
- function _iterable_to_array$6(iter) {
7806
+ function _iterable_to_array$7(iter) {
7807
7807
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
7808
7808
  }
7809
7809
  function _iterable_to_array_limit$5(arr, i) {
@@ -7833,26 +7833,26 @@ function _iterable_to_array_limit$5(arr, i) {
7833
7833
  function _non_iterable_rest$5() {
7834
7834
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
7835
7835
  }
7836
- function _non_iterable_spread$6() {
7836
+ function _non_iterable_spread$7() {
7837
7837
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
7838
7838
  }
7839
7839
  function _sliced_to_array$5(arr, i) {
7840
- return _array_with_holes$5(arr) || _iterable_to_array_limit$5(arr, i) || _unsupported_iterable_to_array$9(arr, i) || _non_iterable_rest$5();
7840
+ return _array_with_holes$5(arr) || _iterable_to_array_limit$5(arr, i) || _unsupported_iterable_to_array$a(arr, i) || _non_iterable_rest$5();
7841
7841
  }
7842
- function _to_consumable_array$6(arr) {
7843
- return _array_without_holes$6(arr) || _iterable_to_array$6(arr) || _unsupported_iterable_to_array$9(arr) || _non_iterable_spread$6();
7842
+ function _to_consumable_array$7(arr) {
7843
+ return _array_without_holes$7(arr) || _iterable_to_array$7(arr) || _unsupported_iterable_to_array$a(arr) || _non_iterable_spread$7();
7844
7844
  }
7845
7845
  function _type_of$4(obj) {
7846
7846
  "@swc/helpers - typeof";
7847
7847
  return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
7848
7848
  }
7849
- function _unsupported_iterable_to_array$9(o, minLen) {
7849
+ function _unsupported_iterable_to_array$a(o, minLen) {
7850
7850
  if (!o) return;
7851
- if (typeof o === "string") return _array_like_to_array$9(o, minLen);
7851
+ if (typeof o === "string") return _array_like_to_array$a(o, minLen);
7852
7852
  var n = Object.prototype.toString.call(o).slice(8, -1);
7853
7853
  if (n === "Object" && o.constructor) n = o.constructor.name;
7854
7854
  if (n === "Map" || n === "Set") return Array.from(n);
7855
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$9(o, minLen);
7855
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$a(o, minLen);
7856
7856
  }
7857
7857
  function _ts_generator(thisArg, body) {
7858
7858
  var f, y, t, _ = {
@@ -8242,8 +8242,8 @@ function comprehensionElementType(chk, iterable, ctx) {
8242
8242
  throw chk.createError('invalid_comprehension_range', "Expression of type '".concat(chk.formatType(iterType), "' cannot be range of a comprehension (must be list, map, or dynamic)."), iterable);
8243
8243
  }
8244
8244
  function toIterable(ev, args, coll) {
8245
- if (_instanceof$5(coll, Set)) return _to_consumable_array$6(coll);
8246
- if (_instanceof$5(coll, Map)) return _to_consumable_array$6(coll.keys());
8245
+ if (_instanceof$5(coll, Set)) return _to_consumable_array$7(coll);
8246
+ if (_instanceof$5(coll, Map)) return _to_consumable_array$7(coll.keys());
8247
8247
  if (coll && (typeof coll === "undefined" ? "undefined" : _type_of$4(coll)) === 'object') return objKeys(coll);
8248
8248
  throw ev.createError('invalid_comprehension_range', "Expression of type '".concat(ev.debugType(coll), "' cannot be range of a comprehension (must be list, map, or dynamic)."), args.iterable);
8249
8249
  }
@@ -8514,7 +8514,7 @@ var OPERATORS = {
8514
8514
  });
8515
8515
  ast.receiverWithArgs = [
8516
8516
  receiver
8517
- ].concat(_to_consumable_array$6(args));
8517
+ ].concat(_to_consumable_array$7(args));
8518
8518
  ast.handle = maybeAsync(ast.receiverWithArgs, false, callRecFn);
8519
8519
  if (receiverType.kind === 'dyn' && candidates.returnType) return candidates.returnType;
8520
8520
  var decl = candidates.findFunction(argTypes, receiverType);
@@ -8767,7 +8767,7 @@ try {
8767
8767
  }
8768
8768
  }
8769
8769
 
8770
- function _array_like_to_array$8(arr, len) {
8770
+ function _array_like_to_array$9(arr, len) {
8771
8771
  if (len == null || len > arr.length) len = arr.length;
8772
8772
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
8773
8773
  return arr2;
@@ -8816,15 +8816,15 @@ function _non_iterable_rest$4() {
8816
8816
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
8817
8817
  }
8818
8818
  function _sliced_to_array$4(arr, i) {
8819
- return _array_with_holes$4(arr) || _iterable_to_array_limit$4(arr, i) || _unsupported_iterable_to_array$8(arr, i) || _non_iterable_rest$4();
8819
+ return _array_with_holes$4(arr) || _iterable_to_array_limit$4(arr, i) || _unsupported_iterable_to_array$9(arr, i) || _non_iterable_rest$4();
8820
8820
  }
8821
- function _unsupported_iterable_to_array$8(o, minLen) {
8821
+ function _unsupported_iterable_to_array$9(o, minLen) {
8822
8822
  if (!o) return;
8823
- if (typeof o === "string") return _array_like_to_array$8(o, minLen);
8823
+ if (typeof o === "string") return _array_like_to_array$9(o, minLen);
8824
8824
  var n = Object.prototype.toString.call(o).slice(8, -1);
8825
8825
  if (n === "Object" && o.constructor) n = o.constructor.name;
8826
8826
  if (n === "Map" || n === "Set") return Array.from(n);
8827
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$8(o, minLen);
8827
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$9(o, minLen);
8828
8828
  }
8829
8829
  var identity = function identity(x) {
8830
8830
  return x;
@@ -9064,7 +9064,7 @@ function registerMacros(registry) {
9064
9064
  });
9065
9065
  }
9066
9066
 
9067
- function _array_like_to_array$7(arr, len) {
9067
+ function _array_like_to_array$8(arr, len) {
9068
9068
  if (len == null || len > arr.length) len = arr.length;
9069
9069
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
9070
9070
  return arr2;
@@ -9072,8 +9072,8 @@ function _array_like_to_array$7(arr, len) {
9072
9072
  function _array_with_holes$3(arr) {
9073
9073
  if (Array.isArray(arr)) return arr;
9074
9074
  }
9075
- function _array_without_holes$5(arr) {
9076
- if (Array.isArray(arr)) return _array_like_to_array$7(arr);
9075
+ function _array_without_holes$6(arr) {
9076
+ if (Array.isArray(arr)) return _array_like_to_array$8(arr);
9077
9077
  }
9078
9078
  function _instanceof$3(left, right) {
9079
9079
  "@swc/helpers - instanceof";
@@ -9083,7 +9083,7 @@ function _instanceof$3(left, right) {
9083
9083
  return left instanceof right;
9084
9084
  }
9085
9085
  }
9086
- function _iterable_to_array$5(iter) {
9086
+ function _iterable_to_array$6(iter) {
9087
9087
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
9088
9088
  }
9089
9089
  function _iterable_to_array_limit$3(arr, i) {
@@ -9113,26 +9113,26 @@ function _iterable_to_array_limit$3(arr, i) {
9113
9113
  function _non_iterable_rest$3() {
9114
9114
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
9115
9115
  }
9116
- function _non_iterable_spread$5() {
9116
+ function _non_iterable_spread$6() {
9117
9117
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
9118
9118
  }
9119
9119
  function _sliced_to_array$3(arr, i) {
9120
- return _array_with_holes$3(arr) || _iterable_to_array_limit$3(arr, i) || _unsupported_iterable_to_array$7(arr, i) || _non_iterable_rest$3();
9120
+ return _array_with_holes$3(arr) || _iterable_to_array_limit$3(arr, i) || _unsupported_iterable_to_array$8(arr, i) || _non_iterable_rest$3();
9121
9121
  }
9122
- function _to_consumable_array$5(arr) {
9123
- return _array_without_holes$5(arr) || _iterable_to_array$5(arr) || _unsupported_iterable_to_array$7(arr) || _non_iterable_spread$5();
9122
+ function _to_consumable_array$6(arr) {
9123
+ return _array_without_holes$6(arr) || _iterable_to_array$6(arr) || _unsupported_iterable_to_array$8(arr) || _non_iterable_spread$6();
9124
9124
  }
9125
9125
  function _type_of$3(obj) {
9126
9126
  "@swc/helpers - typeof";
9127
9127
  return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
9128
9128
  }
9129
- function _unsupported_iterable_to_array$7(o, minLen) {
9129
+ function _unsupported_iterable_to_array$8(o, minLen) {
9130
9130
  if (!o) return;
9131
- if (typeof o === "string") return _array_like_to_array$7(o, minLen);
9131
+ if (typeof o === "string") return _array_like_to_array$8(o, minLen);
9132
9132
  var n = Object.prototype.toString.call(o).slice(8, -1);
9133
9133
  if (n === "Object" && o.constructor) n = o.constructor.name;
9134
9134
  if (n === "Map" || n === "Set") return Array.from(n);
9135
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$7(o, minLen);
9135
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$8(o, minLen);
9136
9136
  }
9137
9137
  function registerOverloads(registry) {
9138
9138
  var unaryOverload = function unaryOverload(op, t, h, ret) {
@@ -9199,7 +9199,7 @@ function registerOverloads(registry) {
9199
9199
  return a + b;
9200
9200
  });
9201
9201
  binaryOverload('list<V>', '+', 'list<V>', function(a, b) {
9202
- return _to_consumable_array$5(a).concat(_to_consumable_array$5(b));
9202
+ return _to_consumable_array$6(a).concat(_to_consumable_array$6(b));
9203
9203
  });
9204
9204
  binaryOverload('bytes', '+', 'bytes', function(a, b) {
9205
9205
  if (!a.length) return b;
@@ -9672,13 +9672,13 @@ var toDynTypeBinding = new Map().set('A', 'dyn').set('T', 'dyn').set('K', 'dyn')
9672
9672
  return TypeChecker;
9673
9673
  }(Base);
9674
9674
 
9675
- function _array_like_to_array$6(arr, len) {
9675
+ function _array_like_to_array$7(arr, len) {
9676
9676
  if (len == null || len > arr.length) len = arr.length;
9677
9677
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
9678
9678
  return arr2;
9679
9679
  }
9680
- function _array_without_holes$4(arr) {
9681
- if (Array.isArray(arr)) return _array_like_to_array$6(arr);
9680
+ function _array_without_holes$5(arr) {
9681
+ if (Array.isArray(arr)) return _array_like_to_array$7(arr);
9682
9682
  }
9683
9683
  function _check_private_redeclaration$1(obj, privateCollection) {
9684
9684
  if (privateCollection.has(obj)) {
@@ -9769,22 +9769,22 @@ function _instanceof$2(left, right) {
9769
9769
  return left instanceof right;
9770
9770
  }
9771
9771
  }
9772
- function _iterable_to_array$4(iter) {
9772
+ function _iterable_to_array$5(iter) {
9773
9773
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
9774
9774
  }
9775
- function _non_iterable_spread$4() {
9775
+ function _non_iterable_spread$5() {
9776
9776
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
9777
9777
  }
9778
- function _to_consumable_array$4(arr) {
9779
- return _array_without_holes$4(arr) || _iterable_to_array$4(arr) || _unsupported_iterable_to_array$6(arr) || _non_iterable_spread$4();
9778
+ function _to_consumable_array$5(arr) {
9779
+ return _array_without_holes$5(arr) || _iterable_to_array$5(arr) || _unsupported_iterable_to_array$7(arr) || _non_iterable_spread$5();
9780
9780
  }
9781
- function _unsupported_iterable_to_array$6(o, minLen) {
9781
+ function _unsupported_iterable_to_array$7(o, minLen) {
9782
9782
  if (!o) return;
9783
- if (typeof o === "string") return _array_like_to_array$6(o, minLen);
9783
+ if (typeof o === "string") return _array_like_to_array$7(o, minLen);
9784
9784
  var n = Object.prototype.toString.call(o).slice(8, -1);
9785
9785
  if (n === "Object" && o.constructor) n = o.constructor.name;
9786
9786
  if (n === "Map" || n === "Set") return Array.from(n);
9787
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$6(o, minLen);
9787
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$7(o, minLen);
9788
9788
  }
9789
9789
  var TOKEN = {
9790
9790
  EOF: 0,
@@ -9981,7 +9981,7 @@ var ASTNode = /*#__PURE__*/ function() {
9981
9981
  ];
9982
9982
  return [
9983
9983
  this.op
9984
- ].concat(_to_consumable_array$4(args.map(function(a) {
9984
+ ].concat(_to_consumable_array$5(args.map(function(a) {
9985
9985
  return _instanceof$2(a, ASTNode) ? a.toOldStructure() : a;
9986
9986
  })));
9987
9987
  }
@@ -11326,7 +11326,7 @@ function parse(expression) {
11326
11326
  return globalEnvironment.parse(expression);
11327
11327
  }
11328
11328
 
11329
- function _array_like_to_array$5(arr, len) {
11329
+ function _array_like_to_array$6(arr, len) {
11330
11330
  if (len == null || len > arr.length) len = arr.length;
11331
11331
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
11332
11332
  return arr2;
@@ -11334,8 +11334,8 @@ function _array_like_to_array$5(arr, len) {
11334
11334
  function _array_with_holes$2(arr) {
11335
11335
  if (Array.isArray(arr)) return arr;
11336
11336
  }
11337
- function _array_without_holes$3(arr) {
11338
- if (Array.isArray(arr)) return _array_like_to_array$5(arr);
11337
+ function _array_without_holes$4(arr) {
11338
+ if (Array.isArray(arr)) return _array_like_to_array$6(arr);
11339
11339
  }
11340
11340
  function _instanceof(left, right) {
11341
11341
  "@swc/helpers - instanceof";
@@ -11345,7 +11345,7 @@ function _instanceof(left, right) {
11345
11345
  return left instanceof right;
11346
11346
  }
11347
11347
  }
11348
- function _iterable_to_array$3(iter) {
11348
+ function _iterable_to_array$4(iter) {
11349
11349
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
11350
11350
  }
11351
11351
  function _iterable_to_array_limit$2(arr, i) {
@@ -11375,26 +11375,26 @@ function _iterable_to_array_limit$2(arr, i) {
11375
11375
  function _non_iterable_rest$2() {
11376
11376
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
11377
11377
  }
11378
- function _non_iterable_spread$3() {
11378
+ function _non_iterable_spread$4() {
11379
11379
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
11380
11380
  }
11381
11381
  function _sliced_to_array$2(arr, i) {
11382
- return _array_with_holes$2(arr) || _iterable_to_array_limit$2(arr, i) || _unsupported_iterable_to_array$5(arr, i) || _non_iterable_rest$2();
11382
+ return _array_with_holes$2(arr) || _iterable_to_array_limit$2(arr, i) || _unsupported_iterable_to_array$6(arr, i) || _non_iterable_rest$2();
11383
11383
  }
11384
- function _to_consumable_array$3(arr) {
11385
- return _array_without_holes$3(arr) || _iterable_to_array$3(arr) || _unsupported_iterable_to_array$5(arr) || _non_iterable_spread$3();
11384
+ function _to_consumable_array$4(arr) {
11385
+ return _array_without_holes$4(arr) || _iterable_to_array$4(arr) || _unsupported_iterable_to_array$6(arr) || _non_iterable_spread$4();
11386
11386
  }
11387
11387
  function _type_of(obj) {
11388
11388
  "@swc/helpers - typeof";
11389
11389
  return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
11390
11390
  }
11391
- function _unsupported_iterable_to_array$5(o, minLen) {
11391
+ function _unsupported_iterable_to_array$6(o, minLen) {
11392
11392
  if (!o) return;
11393
- if (typeof o === "string") return _array_like_to_array$5(o, minLen);
11393
+ if (typeof o === "string") return _array_like_to_array$6(o, minLen);
11394
11394
  var n = Object.prototype.toString.call(o).slice(8, -1);
11395
11395
  if (n === "Object" && o.constructor) n = o.constructor.name;
11396
11396
  if (n === "Map" || n === "Set") return Array.from(n);
11397
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$5(o, minLen);
11397
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$6(o, minLen);
11398
11398
  }
11399
11399
  var REGEX_METACHARS_RE = /[.*+?^${}()|[\]\\]/;
11400
11400
  var HELPER_INLINE_MAX_DEPTH = 8;
@@ -11638,7 +11638,7 @@ function collectUniqueBranches(ast, helpers) {
11638
11638
  var result;
11639
11639
  if (node.op === '||') {
11640
11640
  var _node_args = _sliced_to_array$2(node.args, 2), l = _node_args[0], r = _node_args[1];
11641
- result = _to_consumable_array$3(toDnf(l)).concat(_to_consumable_array$3(toDnf(r)));
11641
+ result = _to_consumable_array$4(toDnf(l)).concat(_to_consumable_array$4(toDnf(r)));
11642
11642
  } else if (node.op === '&&') {
11643
11643
  var _node_args1 = _sliced_to_array$2(node.args, 2), l1 = _node_args1[0], r1 = _node_args1[1];
11644
11644
  var left = toDnf(l1);
@@ -11652,7 +11652,7 @@ function collectUniqueBranches(ast, helpers) {
11652
11652
  try {
11653
11653
  for(var _iterator1 = right[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true){
11654
11654
  var rd = _step1.value;
11655
- result.push(_to_consumable_array$3(ld).concat(_to_consumable_array$3(rd)));
11655
+ result.push(_to_consumable_array$4(ld).concat(_to_consumable_array$4(rd)));
11656
11656
  }
11657
11657
  } catch (err) {
11658
11658
  _didIteratorError1 = true;
@@ -11976,10 +11976,10 @@ function applyNumericBinaryOp(op, left, right) {
11976
11976
  * @param branch - The parsed branch.
11977
11977
  * @returns A signature string usable as a Map/Set key.
11978
11978
  */ function branchSignature(branch) {
11979
- var literals = _to_consumable_array$3(branch.allowedMimeLiterals).sort(function(a, b) {
11979
+ var literals = _to_consumable_array$4(branch.allowedMimeLiterals).sort(function(a, b) {
11980
11980
  return a.localeCompare(b);
11981
11981
  });
11982
- var regexes = _to_consumable_array$3(branch.allowedMimeRegexes).sort(function(a, b) {
11982
+ var regexes = _to_consumable_array$4(branch.allowedMimeRegexes).sort(function(a, b) {
11983
11983
  return a.localeCompare(b);
11984
11984
  });
11985
11985
  return "".concat(branch.maxFileSizeBytes, "|").concat(literals.join(','), "|").concat(regexes.join(','));
@@ -12581,30 +12581,30 @@ var ALLOW_WRITE_RE = /allow\s+(?:write|create|update)(?:\s*,\s*(?:write|create|u
12581
12581
  return ctx.results;
12582
12582
  }
12583
12583
 
12584
- function _array_like_to_array$4(arr, len) {
12584
+ function _array_like_to_array$5(arr, len) {
12585
12585
  if (len == null || len > arr.length) len = arr.length;
12586
12586
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
12587
12587
  return arr2;
12588
12588
  }
12589
- function _array_without_holes$2(arr) {
12590
- if (Array.isArray(arr)) return _array_like_to_array$4(arr);
12589
+ function _array_without_holes$3(arr) {
12590
+ if (Array.isArray(arr)) return _array_like_to_array$5(arr);
12591
12591
  }
12592
- function _iterable_to_array$2(iter) {
12592
+ function _iterable_to_array$3(iter) {
12593
12593
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
12594
12594
  }
12595
- function _non_iterable_spread$2() {
12595
+ function _non_iterable_spread$3() {
12596
12596
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
12597
12597
  }
12598
- function _to_consumable_array$2(arr) {
12599
- return _array_without_holes$2(arr) || _iterable_to_array$2(arr) || _unsupported_iterable_to_array$4(arr) || _non_iterable_spread$2();
12598
+ function _to_consumable_array$3(arr) {
12599
+ return _array_without_holes$3(arr) || _iterable_to_array$3(arr) || _unsupported_iterable_to_array$5(arr) || _non_iterable_spread$3();
12600
12600
  }
12601
- function _unsupported_iterable_to_array$4(o, minLen) {
12601
+ function _unsupported_iterable_to_array$5(o, minLen) {
12602
12602
  if (!o) return;
12603
- if (typeof o === "string") return _array_like_to_array$4(o, minLen);
12603
+ if (typeof o === "string") return _array_like_to_array$5(o, minLen);
12604
12604
  var n = Object.prototype.toString.call(o).slice(8, -1);
12605
12605
  if (n === "Object" && o.constructor) n = o.constructor.name;
12606
12606
  if (n === "Map" || n === "Set") return Array.from(n);
12607
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$4(o, minLen);
12607
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$5(o, minLen);
12608
12608
  }
12609
12609
  var MAX_FOLD_DEPTH = 24;
12610
12610
  var PATH_SEPARATOR = '/';
@@ -12819,7 +12819,7 @@ function foldTemplateLiteral(node, frame, depth) {
12819
12819
  var _ref;
12820
12820
  var _quasis_i_value, _quasis_i;
12821
12821
  var cooked = (_ref = (_quasis_i = quasis[i]) === null || _quasis_i === void 0 ? void 0 : (_quasis_i_value = _quasis_i.value) === null || _quasis_i_value === void 0 ? void 0 : _quasis_i_value.cooked) !== null && _ref !== void 0 ? _ref : '';
12822
- var next = _to_consumable_array$2(result).concat([
12822
+ var next = _to_consumable_array$3(result).concat([
12823
12823
  {
12824
12824
  kind: 'literal',
12825
12825
  value: cooked
@@ -12827,7 +12827,7 @@ function foldTemplateLiteral(node, frame, depth) {
12827
12827
  ]);
12828
12828
  if (i < expressions.length) {
12829
12829
  var exprFrags = foldFrags(expressions[i], frame, depth + 1);
12830
- result = exprFrags ? _to_consumable_array$2(next).concat(_to_consumable_array$2(exprFrags)) : null;
12830
+ result = exprFrags ? _to_consumable_array$3(next).concat(_to_consumable_array$3(exprFrags)) : null;
12831
12831
  } else {
12832
12832
  result = next;
12833
12833
  }
@@ -12839,7 +12839,7 @@ function foldStringConcat(node, frame, depth) {
12839
12839
  var left = foldFrags(node.left, frame, depth + 1);
12840
12840
  var right = foldFrags(node.right, frame, depth + 1);
12841
12841
  if (left && right) {
12842
- result = _to_consumable_array$2(left).concat(_to_consumable_array$2(right));
12842
+ result = _to_consumable_array$3(left).concat(_to_consumable_array$3(right));
12843
12843
  }
12844
12844
  return result;
12845
12845
  }
@@ -12932,7 +12932,7 @@ function foldStringConcat(node, frame, depth) {
12932
12932
  value: PATH_SEPARATOR
12933
12933
  });
12934
12934
  }
12935
- (_joined = joined).push.apply(_joined, _to_consumable_array$2(item));
12935
+ (_joined = joined).push.apply(_joined, _to_consumable_array$3(item));
12936
12936
  first = false;
12937
12937
  }
12938
12938
  }
@@ -13060,10 +13060,10 @@ function foldStringConcat(node, frame, depth) {
13060
13060
  }
13061
13061
  if ((arg === null || arg === void 0 ? void 0 : arg.type) === 'SpreadElement') {
13062
13062
  var list = foldSpreadOperand(arg.argument, frame, depth);
13063
- result = list ? _to_consumable_array$2(result).concat(_to_consumable_array$2(list)) : null;
13063
+ result = list ? _to_consumable_array$3(result).concat(_to_consumable_array$3(list)) : null;
13064
13064
  } else {
13065
13065
  var frags = foldFrags(arg, frame, depth + 1);
13066
- result = frags ? _to_consumable_array$2(result).concat([
13066
+ result = frags ? _to_consumable_array$3(result).concat([
13067
13067
  frags
13068
13068
  ]) : null;
13069
13069
  }
@@ -13128,10 +13128,10 @@ function foldStringConcat(node, frame, depth) {
13128
13128
  result = null;
13129
13129
  } else if (element.type === 'SpreadElement') {
13130
13130
  var list = foldSpreadOperand(element.argument, frame, depth);
13131
- result = list ? _to_consumable_array$2(result).concat(_to_consumable_array$2(list)) : null;
13131
+ result = list ? _to_consumable_array$3(result).concat(_to_consumable_array$3(list)) : null;
13132
13132
  } else {
13133
13133
  var frags = foldFrags(element, frame, depth + 1);
13134
- result = frags ? _to_consumable_array$2(result).concat([
13134
+ result = frags ? _to_consumable_array$3(result).concat([
13135
13135
  frags
13136
13136
  ]) : null;
13137
13137
  }
@@ -13518,7 +13518,7 @@ function fragListsToStrings(items) {
13518
13518
  break;
13519
13519
  }
13520
13520
  var str = fragsToConcreteString(item);
13521
- result = str != null ? _to_consumable_array$2(result).concat([
13521
+ result = str != null ? _to_consumable_array$3(result).concat([
13522
13522
  str
13523
13523
  ]) : null;
13524
13524
  }
@@ -14586,30 +14586,30 @@ function unwrapVariableDeclaration$1(statement) {
14586
14586
  }
14587
14587
  }
14588
14588
 
14589
- function _array_like_to_array$3(arr, len) {
14589
+ function _array_like_to_array$4(arr, len) {
14590
14590
  if (len == null || len > arr.length) len = arr.length;
14591
14591
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
14592
14592
  return arr2;
14593
14593
  }
14594
- function _array_without_holes$1(arr) {
14595
- if (Array.isArray(arr)) return _array_like_to_array$3(arr);
14594
+ function _array_without_holes$2(arr) {
14595
+ if (Array.isArray(arr)) return _array_like_to_array$4(arr);
14596
14596
  }
14597
- function _iterable_to_array$1(iter) {
14597
+ function _iterable_to_array$2(iter) {
14598
14598
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
14599
14599
  }
14600
- function _non_iterable_spread$1() {
14600
+ function _non_iterable_spread$2() {
14601
14601
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
14602
14602
  }
14603
- function _to_consumable_array$1(arr) {
14604
- return _array_without_holes$1(arr) || _iterable_to_array$1(arr) || _unsupported_iterable_to_array$3(arr) || _non_iterable_spread$1();
14603
+ function _to_consumable_array$2(arr) {
14604
+ return _array_without_holes$2(arr) || _iterable_to_array$2(arr) || _unsupported_iterable_to_array$4(arr) || _non_iterable_spread$2();
14605
14605
  }
14606
- function _unsupported_iterable_to_array$3(o, minLen) {
14606
+ function _unsupported_iterable_to_array$4(o, minLen) {
14607
14607
  if (!o) return;
14608
- if (typeof o === "string") return _array_like_to_array$3(o, minLen);
14608
+ if (typeof o === "string") return _array_like_to_array$4(o, minLen);
14609
14609
  var n = Object.prototype.toString.call(o).slice(8, -1);
14610
14610
  if (n === "Object" && o.constructor) n = o.constructor.name;
14611
14611
  if (n === "Map" || n === "Set") return Array.from(n);
14612
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$3(o, minLen);
14612
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$4(o, minLen);
14613
14613
  }
14614
14614
  var ALLOW_RE = /\ballow\s+([A-Za-z, \t]+?)\s*:\s*if\b/g;
14615
14615
  var COLLECTION_GROUP_PREFIX = /^\/\{[A-Za-z_]\w*=\*\*\}\//;
@@ -14653,7 +14653,7 @@ var BARE_IDENTIFIER_RE = /^[A-Za-z_]\w*$/;
14653
14653
  }
14654
14654
  match = ALLOW_RE.exec(body);
14655
14655
  }
14656
- return _to_consumable_array$1(seen);
14656
+ return _to_consumable_array$2(seen);
14657
14657
  }
14658
14658
  /**
14659
14659
  * Pulls the first bare-identifier collection token from a match path. Skips an optional
@@ -14815,7 +14815,7 @@ var BARE_IDENTIFIER_RE = /^[A-Za-z_]\w*$/;
14815
14815
  return walkBlock(masked, 0, source);
14816
14816
  }
14817
14817
 
14818
- function _array_like_to_array$2(arr, len) {
14818
+ function _array_like_to_array$3(arr, len) {
14819
14819
  if (len == null || len > arr.length) len = arr.length;
14820
14820
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
14821
14821
  return arr2;
@@ -14898,15 +14898,15 @@ function _object_spread_props(target, source) {
14898
14898
  return target;
14899
14899
  }
14900
14900
  function _sliced_to_array$1(arr, i) {
14901
- return _array_with_holes$1(arr) || _iterable_to_array_limit$1(arr, i) || _unsupported_iterable_to_array$2(arr, i) || _non_iterable_rest$1();
14901
+ return _array_with_holes$1(arr) || _iterable_to_array_limit$1(arr, i) || _unsupported_iterable_to_array$3(arr, i) || _non_iterable_rest$1();
14902
14902
  }
14903
- function _unsupported_iterable_to_array$2(o, minLen) {
14903
+ function _unsupported_iterable_to_array$3(o, minLen) {
14904
14904
  if (!o) return;
14905
- if (typeof o === "string") return _array_like_to_array$2(o, minLen);
14905
+ if (typeof o === "string") return _array_like_to_array$3(o, minLen);
14906
14906
  var n = Object.prototype.toString.call(o).slice(8, -1);
14907
14907
  if (n === "Object" && o.constructor) n = o.constructor.name;
14908
14908
  if (n === "Map" || n === "Set") return Array.from(n);
14909
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$2(o, minLen);
14909
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$3(o, minLen);
14910
14910
  }
14911
14911
  /**
14912
14912
  * Default file name searched relative to the lint root when `firestoreRulesPath` is omitted.
@@ -16235,30 +16235,30 @@ function reportModelKey(context, modelKey) {
16235
16235
  }
16236
16236
  };
16237
16237
 
16238
- function _array_like_to_array$1(arr, len) {
16238
+ function _array_like_to_array$2(arr, len) {
16239
16239
  if (len == null || len > arr.length) len = arr.length;
16240
16240
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
16241
16241
  return arr2;
16242
16242
  }
16243
- function _array_without_holes(arr) {
16244
- if (Array.isArray(arr)) return _array_like_to_array$1(arr);
16243
+ function _array_without_holes$1(arr) {
16244
+ if (Array.isArray(arr)) return _array_like_to_array$2(arr);
16245
16245
  }
16246
- function _iterable_to_array(iter) {
16246
+ function _iterable_to_array$1(iter) {
16247
16247
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
16248
16248
  }
16249
- function _non_iterable_spread() {
16249
+ function _non_iterable_spread$1() {
16250
16250
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
16251
16251
  }
16252
- function _to_consumable_array(arr) {
16253
- return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array$1(arr) || _non_iterable_spread();
16252
+ function _to_consumable_array$1(arr) {
16253
+ return _array_without_holes$1(arr) || _iterable_to_array$1(arr) || _unsupported_iterable_to_array$2(arr) || _non_iterable_spread$1();
16254
16254
  }
16255
- function _unsupported_iterable_to_array$1(o, minLen) {
16255
+ function _unsupported_iterable_to_array$2(o, minLen) {
16256
16256
  if (!o) return;
16257
- if (typeof o === "string") return _array_like_to_array$1(o, minLen);
16257
+ if (typeof o === "string") return _array_like_to_array$2(o, minLen);
16258
16258
  var n = Object.prototype.toString.call(o).slice(8, -1);
16259
16259
  if (n === "Object" && o.constructor) n = o.constructor.name;
16260
16260
  if (n === "Map" || n === "Set") return Array.from(n);
16261
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$1(o, minLen);
16261
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$2(o, minLen);
16262
16262
  }
16263
16263
  /**
16264
16264
  * Default glob pattern (relative to ESLint `cwd`) used to locate `@dbxModelServiceFactory` source
@@ -16532,7 +16532,7 @@ function extractFactoryModelTypes(text, factoryTag) {
16532
16532
  for(var _iterator = comments[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
16533
16533
  var comment = _step.value;
16534
16534
  var _out;
16535
- (_out = out).push.apply(_out, _to_consumable_array(modelTypesFromFactoryComment(comment, factoryTag)));
16535
+ (_out = out).push.apply(_out, _to_consumable_array$1(modelTypesFromFactoryComment(comment, factoryTag)));
16536
16536
  }
16537
16537
  } catch (err) {
16538
16538
  _didIteratorError = true;
@@ -16551,7 +16551,7 @@ function extractFactoryModelTypes(text, factoryTag) {
16551
16551
  return out;
16552
16552
  }
16553
16553
 
16554
- function _array_like_to_array(arr, len) {
16554
+ function _array_like_to_array$1(arr, len) {
16555
16555
  if (len == null || len > arr.length) len = arr.length;
16556
16556
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
16557
16557
  return arr2;
@@ -16587,15 +16587,15 @@ function _non_iterable_rest() {
16587
16587
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
16588
16588
  }
16589
16589
  function _sliced_to_array(arr, i) {
16590
- return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
16590
+ return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array$1(arr, i) || _non_iterable_rest();
16591
16591
  }
16592
- function _unsupported_iterable_to_array(o, minLen) {
16592
+ function _unsupported_iterable_to_array$1(o, minLen) {
16593
16593
  if (!o) return;
16594
- if (typeof o === "string") return _array_like_to_array(o, minLen);
16594
+ if (typeof o === "string") return _array_like_to_array$1(o, minLen);
16595
16595
  var n = Object.prototype.toString.call(o).slice(8, -1);
16596
16596
  if (n === "Object" && o.constructor) n = o.constructor.name;
16597
16597
  if (n === "Map" || n === "Set") return Array.from(n);
16598
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
16598
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$1(o, minLen);
16599
16599
  }
16600
16600
  var MODEL_MARKERS = new Set([
16601
16601
  'dbxModel',
@@ -17911,6 +17911,170 @@ function hasCrudSpec(groupDir, group) {
17911
17911
  }
17912
17912
  };
17913
17913
 
17914
+ function _array_like_to_array(arr, len) {
17915
+ if (len == null || len > arr.length) len = arr.length;
17916
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
17917
+ return arr2;
17918
+ }
17919
+ function _array_without_holes(arr) {
17920
+ if (Array.isArray(arr)) return _array_like_to_array(arr);
17921
+ }
17922
+ function _iterable_to_array(iter) {
17923
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
17924
+ }
17925
+ function _non_iterable_spread() {
17926
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
17927
+ }
17928
+ function _to_consumable_array(arr) {
17929
+ return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
17930
+ }
17931
+ function _unsupported_iterable_to_array(o, minLen) {
17932
+ if (!o) return;
17933
+ if (typeof o === "string") return _array_like_to_array(o, minLen);
17934
+ var n = Object.prototype.toString.call(o).slice(8, -1);
17935
+ if (n === "Object" && o.constructor) n = o.constructor.name;
17936
+ if (n === "Map" || n === "Set") return Array.from(n);
17937
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
17938
+ }
17939
+ /**
17940
+ * Default method names this rule inspects for a `roles` selection option.
17941
+ *
17942
+ * Matches `nest.useModel(...)` and the multi-model `nest.useMultipleModels(...)`,
17943
+ * both of which accept an optional `roles` selection option.
17944
+ */ var DEFAULT_USE_MODEL_METHOD_NAMES = [
17945
+ 'useModel',
17946
+ 'useMultipleModels'
17947
+ ];
17948
+ /**
17949
+ * Returns the called method name when the call is a non-computed member-expression call
17950
+ * (e.g. `nest.useModel(...)`, `this._nestContext.useMultipleModels(...)`) whose method is
17951
+ * in the tracked set, otherwise null.
17952
+ */ function trackedMethodName(node, methodNames) {
17953
+ var _callee_property;
17954
+ var result = null;
17955
+ var callee = node.callee;
17956
+ if ((callee === null || callee === void 0 ? void 0 : callee.type) === 'MemberExpression' && !callee.computed && ((_callee_property = callee.property) === null || _callee_property === void 0 ? void 0 : _callee_property.type) === 'Identifier') {
17957
+ var name = callee.property.name;
17958
+ if (methodNames.has(name)) {
17959
+ result = name;
17960
+ }
17961
+ }
17962
+ return result;
17963
+ }
17964
+ /**
17965
+ * Returns true when the object literal explicitly declares a `roles` property, or contains a
17966
+ * spread element (in which case `roles` may originate from the spread and cannot be ruled out).
17967
+ */ function hasRolesPropertyOrSpread(objectNode) {
17968
+ var _objectNode_properties;
17969
+ var result = false;
17970
+ var properties = (_objectNode_properties = objectNode.properties) !== null && _objectNode_properties !== void 0 ? _objectNode_properties : [];
17971
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
17972
+ try {
17973
+ for(var _iterator = properties[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
17974
+ var property = _step.value;
17975
+ if (property.type === 'SpreadElement' || property.type === 'ExperimentalSpreadProperty') {
17976
+ result = true;
17977
+ break;
17978
+ }
17979
+ if (property.type === 'Property' && !property.computed) {
17980
+ var key = property.key;
17981
+ var keyName = (key === null || key === void 0 ? void 0 : key.type) === 'Identifier' ? key.name : (key === null || key === void 0 ? void 0 : key.type) === 'Literal' ? String(key.value) : undefined;
17982
+ if (keyName === 'roles') {
17983
+ result = true;
17984
+ break;
17985
+ }
17986
+ }
17987
+ }
17988
+ } catch (err) {
17989
+ _didIteratorError = true;
17990
+ _iteratorError = err;
17991
+ } finally{
17992
+ try {
17993
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
17994
+ _iterator.return();
17995
+ }
17996
+ } finally{
17997
+ if (_didIteratorError) {
17998
+ throw _iteratorError;
17999
+ }
18000
+ }
18001
+ }
18002
+ return result;
18003
+ }
18004
+ /**
18005
+ * ESLint rule that warns when a `nest.useModel(...)` / `nest.useMultipleModels(...)` selection
18006
+ * does not specify a `roles` option. The `roles` option declares which granted roles the caller
18007
+ * requires for the selected model; omitting it silently runs the selection without an explicit
18008
+ * role assertion.
18009
+ *
18010
+ * Intentionally role-free selections are still allowed: pass `roles: []` to assert "no role
18011
+ * required", or add an inline eslint-disable for this rule. The rule only checks for the presence
18012
+ * of a `roles` property, so an empty array satisfies it.
18013
+ *
18014
+ * The rule matches by AST shape (member-expression method call) rather than receiver name, so it
18015
+ * covers `nest.useModel(...)`, `this._nestContext.useModel(...)`, etc. When the selection argument
18016
+ * is not an inline object literal (an identifier/variable, conditional, call result, or a literal
18017
+ * containing a spread), the rule skips it to avoid false positives.
18018
+ *
18019
+ * Not auto-fixable: the rule cannot infer the correct role(s) for a given selection.
18020
+ */ var FIREBASE_REQUIRE_USE_MODEL_ROLES_RULE = {
18021
+ meta: {
18022
+ type: 'suggestion',
18023
+ fixable: undefined,
18024
+ docs: {
18025
+ description: 'Require an explicit `roles` selection option on `useModel` / `useMultipleModels` calls so model access asserts the roles it requires. Pass `roles: []` to intentionally require no role.',
18026
+ recommended: true
18027
+ },
18028
+ messages: {
18029
+ missingRoles: "`{{name}}(...)` does not specify `roles`. Pass a `roles` value (e.g. `roles: 'read'`), or `roles: []` to intentionally require no role, or add an inline eslint-disable for this rule."
18030
+ },
18031
+ schema: [
18032
+ {
18033
+ type: 'object',
18034
+ additionalProperties: false,
18035
+ properties: {
18036
+ methodNames: {
18037
+ type: 'array',
18038
+ items: {
18039
+ type: 'string'
18040
+ }
18041
+ },
18042
+ additionalMethodNames: {
18043
+ type: 'array',
18044
+ items: {
18045
+ type: 'string'
18046
+ }
18047
+ }
18048
+ }
18049
+ }
18050
+ ]
18051
+ },
18052
+ create: function create(context) {
18053
+ var _context_options_, _options_methodNames, _options_additionalMethodNames;
18054
+ var options = (_context_options_ = context.options[0]) !== null && _context_options_ !== void 0 ? _context_options_ : {};
18055
+ var baseNames = (_options_methodNames = options.methodNames) !== null && _options_methodNames !== void 0 ? _options_methodNames : DEFAULT_USE_MODEL_METHOD_NAMES;
18056
+ var methodNames = new Set(_to_consumable_array(baseNames).concat(_to_consumable_array((_options_additionalMethodNames = options.additionalMethodNames) !== null && _options_additionalMethodNames !== void 0 ? _options_additionalMethodNames : [])));
18057
+ return {
18058
+ CallExpression: function CallExpression(node) {
18059
+ var name = trackedMethodName(node, methodNames);
18060
+ if (name) {
18061
+ var _node_arguments;
18062
+ var selection = (_node_arguments = node.arguments) === null || _node_arguments === void 0 ? void 0 : _node_arguments[1];
18063
+ if ((selection === null || selection === void 0 ? void 0 : selection.type) === 'ObjectExpression' && !hasRolesPropertyOrSpread(selection)) {
18064
+ context.report({
18065
+ node: node.callee,
18066
+ messageId: 'missingRoles',
18067
+ data: {
18068
+ name: name
18069
+ }
18070
+ });
18071
+ }
18072
+ }
18073
+ }
18074
+ };
18075
+ }
18076
+ };
18077
+
17914
18078
  /**
17915
18079
  * ESLint plugin for `@dereekb/firebase` rules.
17916
18080
  *
@@ -17933,7 +18097,8 @@ function hasCrudSpec(groupDir, group) {
17933
18097
  'require-dbx-model-companion-tags': FIREBASE_REQUIRE_DBX_MODEL_COMPANION_TAGS_RULE,
17934
18098
  'require-canonical-api-spec-filename': FIREBASE_REQUIRE_CANONICAL_API_SPEC_FILENAME_RULE,
17935
18099
  'require-api-crud-spec-for-group': FIREBASE_REQUIRE_API_CRUD_SPEC_FOR_GROUP_RULE,
17936
- 'require-dbx-model-api-params-tag': FIREBASE_REQUIRE_DBX_MODEL_API_PARAMS_TAG_RULE
18100
+ 'require-dbx-model-api-params-tag': FIREBASE_REQUIRE_DBX_MODEL_API_PARAMS_TAG_RULE,
18101
+ 'require-use-model-roles': FIREBASE_REQUIRE_USE_MODEL_ROLES_RULE
17937
18102
  }
17938
18103
  };
17939
18104
  /**
@@ -17942,4 +18107,4 @@ function hasCrudSpec(groupDir, group) {
17942
18107
  * @dbxAllowConstantName
17943
18108
  */ var firebaseESLintPlugin = FIREBASE_ESLINT_PLUGIN;
17944
18109
 
17945
- export { API_DETAILS_IMPORT_MODULE, DBX_MODEL_API_PARAMS_MARKER, DBX_MODEL_FIREBASE_INDEX_MARKER, DBX_MODEL_SERVICE_FACTORY_TAG, DEFAULT_API_DETAILS_FACTORY_NAME, DEFAULT_CONSTRAINT_FACTORY_NAMES, DEFAULT_CRUD_FUNCTIONS_CONFIG_SUFFIX, DEFAULT_CRUD_FUNCTION_TYPE_VERBS, DEFAULT_CRUD_VERB_NAMES, DEFAULT_DISCOVERY_EXCLUDED_DIRS, DEFAULT_FACTORY_SEARCH_ROOTS, DEFAULT_FACTORY_TAG, DEFAULT_FIRESTORE_RULES_FILENAME, DEFAULT_FUNCTION_DIR_SEGMENT, DEFAULT_FUNCTION_TYPE_MAP_SUFFIX, DEFAULT_IDENTITY_FACTORY_NAME, DEFAULT_INDEX_AFFECTING_CONSTRAINT_NAMES, DEFAULT_MODEL_MARKER_TAG, DEFAULT_MODEL_SEARCH_ROOTS, DEFAULT_PAGINATION_CONSTRAINT_NAMES, DEFAULT_REGISTRY_FACTORY_CALL_NAME, DEFAULT_STORAGE_FILE_UPLOAD_POLICY_TYPE_NAME, DEFAULT_STORAGE_RULES_FILENAME, FIREBASE_ESLINT_PLUGIN, FIREBASE_MODEL_SERVICE_FACTORY_MODULE, FIREBASE_MODEL_SERVICE_FACTORY_NAME, FIREBASE_MODULE, FIREBASE_REQUIRE_API_CRUD_SPEC_FOR_GROUP_RULE, FIREBASE_REQUIRE_API_DETAILS_FOR_CRUD_FUNCTION_RULE, FIREBASE_REQUIRE_CANONICAL_API_SPEC_FILENAME_RULE, FIREBASE_REQUIRE_COMPLETE_CRUD_FUNCTION_CONFIG_MAP_RULE, FIREBASE_REQUIRE_DBX_MODEL_API_PARAMS_TAG_RULE, FIREBASE_REQUIRE_DBX_MODEL_COMPANION_TAGS_RULE, FIREBASE_REQUIRE_DBX_MODEL_FIREBASE_INDEX_COMPANION_TAGS_RULE, FIREBASE_REQUIRE_DBX_MODEL_FIREBASE_INDEX_QUERY_SUFFIX_RULE, FIREBASE_REQUIRE_DBX_MODEL_FIREBASE_INDEX_VALID_DISPATCHER_RULE, FIREBASE_REQUIRE_DBX_MODEL_SERVICE_FACTORY_TAG_RULE, FIREBASE_REQUIRE_FIRESTORE_CONSTRAINT_TYPE_PARAMETER_RULE, FIREBASE_REQUIRE_FIRESTORE_RULE_FOR_SERVICE_MODEL_RULE, FIREBASE_REQUIRE_INPUT_TYPE_FOR_API_DETAILS_RULE, FIREBASE_REQUIRE_SERVICE_FACTORY_FOR_DBX_MODEL_RULE, FIREBASE_REQUIRE_STORAGEFILE_POLICY_MATCHES_RULES_RULE, FIREBASE_REQUIRE_TAGGED_FIRESTORE_CONSTRAINTS_RULE, INPUT_TYPE_PROPERTY_NAME, MIRRORS_POLICY_KEY_MARKER_REGEX, MODEL_FIREBASE_CRUD_FUNCTION_CONFIG_MAP_TYPE_NAME, QUERY_SUFFIX, discoveryGlobExcludeFilter, firebaseESLintPlugin, parseFirestoreRules, parseStorageRules };
18110
+ export { API_DETAILS_IMPORT_MODULE, DBX_MODEL_API_PARAMS_MARKER, DBX_MODEL_FIREBASE_INDEX_MARKER, DBX_MODEL_SERVICE_FACTORY_TAG, DEFAULT_API_DETAILS_FACTORY_NAME, DEFAULT_CONSTRAINT_FACTORY_NAMES, DEFAULT_CRUD_FUNCTIONS_CONFIG_SUFFIX, DEFAULT_CRUD_FUNCTION_TYPE_VERBS, DEFAULT_CRUD_VERB_NAMES, DEFAULT_DISCOVERY_EXCLUDED_DIRS, DEFAULT_FACTORY_SEARCH_ROOTS, DEFAULT_FACTORY_TAG, DEFAULT_FIRESTORE_RULES_FILENAME, DEFAULT_FUNCTION_DIR_SEGMENT, DEFAULT_FUNCTION_TYPE_MAP_SUFFIX, DEFAULT_IDENTITY_FACTORY_NAME, DEFAULT_INDEX_AFFECTING_CONSTRAINT_NAMES, DEFAULT_MODEL_MARKER_TAG, DEFAULT_MODEL_SEARCH_ROOTS, DEFAULT_PAGINATION_CONSTRAINT_NAMES, DEFAULT_REGISTRY_FACTORY_CALL_NAME, DEFAULT_STORAGE_FILE_UPLOAD_POLICY_TYPE_NAME, DEFAULT_STORAGE_RULES_FILENAME, DEFAULT_USE_MODEL_METHOD_NAMES, FIREBASE_ESLINT_PLUGIN, FIREBASE_MODEL_SERVICE_FACTORY_MODULE, FIREBASE_MODEL_SERVICE_FACTORY_NAME, FIREBASE_MODULE, FIREBASE_REQUIRE_API_CRUD_SPEC_FOR_GROUP_RULE, FIREBASE_REQUIRE_API_DETAILS_FOR_CRUD_FUNCTION_RULE, FIREBASE_REQUIRE_CANONICAL_API_SPEC_FILENAME_RULE, FIREBASE_REQUIRE_COMPLETE_CRUD_FUNCTION_CONFIG_MAP_RULE, FIREBASE_REQUIRE_DBX_MODEL_API_PARAMS_TAG_RULE, FIREBASE_REQUIRE_DBX_MODEL_COMPANION_TAGS_RULE, FIREBASE_REQUIRE_DBX_MODEL_FIREBASE_INDEX_COMPANION_TAGS_RULE, FIREBASE_REQUIRE_DBX_MODEL_FIREBASE_INDEX_QUERY_SUFFIX_RULE, FIREBASE_REQUIRE_DBX_MODEL_FIREBASE_INDEX_VALID_DISPATCHER_RULE, FIREBASE_REQUIRE_DBX_MODEL_SERVICE_FACTORY_TAG_RULE, FIREBASE_REQUIRE_FIRESTORE_CONSTRAINT_TYPE_PARAMETER_RULE, FIREBASE_REQUIRE_FIRESTORE_RULE_FOR_SERVICE_MODEL_RULE, FIREBASE_REQUIRE_INPUT_TYPE_FOR_API_DETAILS_RULE, FIREBASE_REQUIRE_SERVICE_FACTORY_FOR_DBX_MODEL_RULE, FIREBASE_REQUIRE_STORAGEFILE_POLICY_MATCHES_RULES_RULE, FIREBASE_REQUIRE_TAGGED_FIRESTORE_CONSTRAINTS_RULE, FIREBASE_REQUIRE_USE_MODEL_ROLES_RULE, INPUT_TYPE_PROPERTY_NAME, MIRRORS_POLICY_KEY_MARKER_REGEX, MODEL_FIREBASE_CRUD_FUNCTION_CONFIG_MAP_TYPE_NAME, QUERY_SUFFIX, discoveryGlobExcludeFilter, firebaseESLintPlugin, parseFirestoreRules, parseStorageRules };