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