@eslint-react/jsx 1.5.11-next.1 → 1.5.11-next.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -1,8 +1,6 @@
1
- import { is, NodeType, isOneOf, traverseUp, isJSXTagNameExpression, getNestedReturnStatements, traverseUpGuard, isStringLiteral, isMultiLine, ESLintCommunityESLintUtils } from '@eslint-react/ast';
2
- import { parseSchema, ESLintSettingsSchema } from '@eslint-react/shared';
3
- import memo from 'micro-memoize';
4
- import { findVariable, getVariableInit } from '@eslint-react/var';
5
1
  import { AST_NODE_TYPES } from '@typescript-eslint/types';
2
+ import { isOneOf, NodeType, isJSXTagNameExpression, getNestedReturnStatements, is, traverseUpGuard, isStringLiteral, isMultiLine, ESLintCommunityESLintUtils } from '@eslint-react/ast';
3
+ import { findVariable, getVariableInit } from '@eslint-react/var';
6
4
  import '@typescript-eslint/utils';
7
5
 
8
6
  var __defProp = Object.defineProperty;
@@ -10,8 +8,37 @@ var __export = (target, all3) => {
10
8
  for (var name in all3)
11
9
  __defProp(target, name, { get: all3[name], enumerable: true });
12
10
  };
11
+ function resolveMemberExpressions(object, property) {
12
+ if (object.type === AST_NODE_TYPES.JSXMemberExpression) {
13
+ return `${resolveMemberExpressions(object.object, object.property)}.${property.name}`;
14
+ }
15
+ if (object.type === AST_NODE_TYPES.JSXNamespacedName) {
16
+ return `${object.namespace.name}:${object.name.name}.${property.name}`;
17
+ }
18
+ return `${object.name}.${property.name}`;
19
+ }
20
+ function elementType(node) {
21
+ if (node.type === AST_NODE_TYPES.JSXOpeningFragment) {
22
+ return "<>";
23
+ }
24
+ const { name } = node;
25
+ if (name.type === AST_NODE_TYPES.JSXMemberExpression) {
26
+ const { object, property } = name;
27
+ return resolveMemberExpressions(object, property);
28
+ }
29
+ if (name.type === AST_NODE_TYPES.JSXNamespacedName) {
30
+ return `${name.namespace.name}:${name.name.name}`;
31
+ }
32
+ return name.name;
33
+ }
34
+ function isJSXElementOfUserDefinedComponent(node) {
35
+ return node.openingElement.name.type === NodeType.JSXIdentifier && /^[A-Z]/u.test(node.openingElement.name.name);
36
+ }
37
+ function isJSXElementOfBuiltinComponent(node) {
38
+ return node.openingElement.name.type === NodeType.JSXIdentifier && node.openingElement.name.name.toLowerCase() === node.openingElement.name.name && /^[a-z]/u.test(node.openingElement.name.name);
39
+ }
13
40
 
14
- // ../../../node_modules/.pnpm/effect@3.0.7/node_modules/effect/dist/esm/Function.js
41
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/Function.js
15
42
  var Function_exports = {};
16
43
  __export(Function_exports, {
17
44
  SK: () => SK,
@@ -186,14 +213,164 @@ function flow(ab, bc, cd, de, ef, fg, gh, hi, ij) {
186
213
  var hole = /* @__PURE__ */ unsafeCoerce(absurd);
187
214
  var SK = (_2, b2) => b2;
188
215
 
189
- // ../../../node_modules/.pnpm/effect@3.0.7/node_modules/effect/dist/esm/Equivalence.js
216
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/Array.js
217
+ var Array_exports = {};
218
+ __export(Array_exports, {
219
+ allocate: () => allocate,
220
+ append: () => append,
221
+ appendAll: () => appendAll,
222
+ cartesian: () => cartesian,
223
+ cartesianWith: () => cartesianWith,
224
+ chop: () => chop,
225
+ chunksOf: () => chunksOf,
226
+ contains: () => contains2,
227
+ containsWith: () => containsWith2,
228
+ copy: () => copy,
229
+ dedupe: () => dedupe,
230
+ dedupeAdjacent: () => dedupeAdjacent,
231
+ dedupeAdjacentWith: () => dedupeAdjacentWith,
232
+ dedupeWith: () => dedupeWith,
233
+ difference: () => difference,
234
+ differenceWith: () => differenceWith,
235
+ drop: () => drop,
236
+ dropRight: () => dropRight,
237
+ dropWhile: () => dropWhile,
238
+ empty: () => empty2,
239
+ every: () => every2,
240
+ extend: () => extend,
241
+ filter: () => filter2,
242
+ filterMap: () => filterMap2,
243
+ filterMapWhile: () => filterMapWhile,
244
+ findFirst: () => findFirst2,
245
+ findFirstIndex: () => findFirstIndex,
246
+ findLast: () => findLast,
247
+ findLastIndex: () => findLastIndex,
248
+ flatMap: () => flatMap2,
249
+ flatMapNullable: () => flatMapNullable2,
250
+ flatten: () => flatten2,
251
+ forEach: () => forEach,
252
+ fromIterable: () => fromIterable2,
253
+ fromNullable: () => fromNullable2,
254
+ fromOption: () => fromOption2,
255
+ fromRecord: () => fromRecord,
256
+ get: () => get,
257
+ getEquivalence: () => getEquivalence2,
258
+ getLefts: () => getLefts,
259
+ getOrder: () => getOrder2,
260
+ getRights: () => getRights,
261
+ getSomes: () => getSomes,
262
+ group: () => group,
263
+ groupBy: () => groupBy,
264
+ groupWith: () => groupWith,
265
+ head: () => head,
266
+ headNonEmpty: () => headNonEmpty,
267
+ init: () => init,
268
+ initNonEmpty: () => initNonEmpty,
269
+ insertAt: () => insertAt,
270
+ intersection: () => intersection,
271
+ intersectionWith: () => intersectionWith,
272
+ intersperse: () => intersperse,
273
+ isArray: () => isArray,
274
+ isEmptyArray: () => isEmptyArray,
275
+ isEmptyReadonlyArray: () => isEmptyReadonlyArray,
276
+ isNonEmptyArray: () => isNonEmptyArray2,
277
+ isNonEmptyReadonlyArray: () => isNonEmptyReadonlyArray,
278
+ join: () => join,
279
+ last: () => last,
280
+ lastNonEmpty: () => lastNonEmpty,
281
+ length: () => length,
282
+ liftEither: () => liftEither,
283
+ liftNullable: () => liftNullable2,
284
+ liftOption: () => liftOption,
285
+ liftPredicate: () => liftPredicate2,
286
+ make: () => make4,
287
+ makeBy: () => makeBy,
288
+ map: () => map2,
289
+ mapAccum: () => mapAccum,
290
+ match: () => match2,
291
+ matchLeft: () => matchLeft,
292
+ matchRight: () => matchRight,
293
+ max: () => max2,
294
+ min: () => min2,
295
+ modify: () => modify,
296
+ modifyNonEmptyHead: () => modifyNonEmptyHead,
297
+ modifyNonEmptyLast: () => modifyNonEmptyLast,
298
+ modifyOption: () => modifyOption,
299
+ of: () => of,
300
+ partition: () => partition,
301
+ partitionMap: () => partitionMap2,
302
+ prepend: () => prepend,
303
+ prependAll: () => prependAll,
304
+ range: () => range,
305
+ reduce: () => reduce,
306
+ reduceRight: () => reduceRight,
307
+ remove: () => remove,
308
+ replace: () => replace,
309
+ replaceOption: () => replaceOption,
310
+ replicate: () => replicate,
311
+ reverse: () => reverse,
312
+ rotate: () => rotate,
313
+ scan: () => scan,
314
+ scanRight: () => scanRight,
315
+ separate: () => separate,
316
+ setNonEmptyHead: () => setNonEmptyHead,
317
+ setNonEmptyLast: () => setNonEmptyLast,
318
+ some: () => some4,
319
+ sort: () => sort,
320
+ sortBy: () => sortBy,
321
+ sortWith: () => sortWith,
322
+ span: () => span,
323
+ split: () => split,
324
+ splitAt: () => splitAt,
325
+ splitNonEmptyAt: () => splitNonEmptyAt,
326
+ splitWhere: () => splitWhere,
327
+ tail: () => tail,
328
+ tailNonEmpty: () => tailNonEmpty,
329
+ take: () => take,
330
+ takeRight: () => takeRight,
331
+ takeWhile: () => takeWhile,
332
+ unappend: () => unappend,
333
+ unfold: () => unfold,
334
+ union: () => union,
335
+ unionWith: () => unionWith,
336
+ unprepend: () => unprepend,
337
+ unsafeGet: () => unsafeGet,
338
+ unzip: () => unzip,
339
+ zip: () => zip,
340
+ zipWith: () => zipWith2
341
+ });
342
+
343
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/Equivalence.js
190
344
  var make = (isEquivalent) => (self, that) => self === that || isEquivalent(self, that);
345
+ var array = (item) => make((self, that) => {
346
+ if (self.length !== that.length) {
347
+ return false;
348
+ }
349
+ for (let i2 = 0; i2 < self.length; i2++) {
350
+ const isEq = item(self[i2], that[i2]);
351
+ if (!isEq) {
352
+ return false;
353
+ }
354
+ }
355
+ return true;
356
+ });
191
357
 
192
- // ../../../node_modules/.pnpm/effect@3.0.7/node_modules/effect/dist/esm/internal/version.js
193
- var moduleVersion = "3.0.7";
358
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/internal/doNotation.js
359
+ var let_ = (map3) => dual(3, (self, name, f2) => map3(self, (a2) => Object.assign({}, a2, {
360
+ [name]: f2(a2)
361
+ })));
362
+ var bindTo = (map3) => dual(2, (self, name) => map3(self, (a2) => ({
363
+ [name]: a2
364
+ })));
365
+ var bind = (map3, flatMap3) => dual(3, (self, name, f2) => flatMap3(self, (a2) => map3(f2(a2), (b2) => Object.assign({}, a2, {
366
+ [name]: b2
367
+ }))));
368
+
369
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/internal/version.js
370
+ var moduleVersion = "3.1.2";
194
371
  var getCurrentVersion = () => moduleVersion;
195
372
 
196
- // ../../../node_modules/.pnpm/effect@3.0.7/node_modules/effect/dist/esm/GlobalValue.js
373
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/GlobalValue.js
197
374
  var globalStoreId = /* @__PURE__ */ Symbol.for(`effect/GlobalValue/globalStoreId/${/* @__PURE__ */ getCurrentVersion()}`);
198
375
  if (!(globalStoreId in globalThis)) {
199
376
  globalThis[globalStoreId] = /* @__PURE__ */ new Map();
@@ -206,7 +383,7 @@ var globalValue = (id, compute) => {
206
383
  return globalStore.get(id);
207
384
  };
208
385
 
209
- // ../../../node_modules/.pnpm/effect@3.0.7/node_modules/effect/dist/esm/Predicate.js
386
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/Predicate.js
210
387
  var Predicate_exports = {};
211
388
  __export(Predicate_exports, {
212
389
  all: () => all,
@@ -304,13 +481,13 @@ var all = (collection) => {
304
481
  };
305
482
  var productMany = (self, collection) => {
306
483
  const rest = all(collection);
307
- return ([head, ...tail]) => self(head) === false ? false : rest(tail);
484
+ return ([head2, ...tail2]) => self(head2) === false ? false : rest(tail2);
308
485
  };
309
486
  var tuple = (...elements) => all(elements);
310
487
  var struct = (fields) => {
311
- const keys = Object.keys(fields);
488
+ const keys2 = Object.keys(fields);
312
489
  return (a2) => {
313
- for (const key of keys) {
490
+ for (const key of keys2) {
314
491
  if (!fields[key](a2[key])) {
315
492
  return false;
316
493
  }
@@ -343,10 +520,10 @@ var some = (collection) => (a2) => {
343
520
  return false;
344
521
  };
345
522
 
346
- // ../../../node_modules/.pnpm/effect@3.0.7/node_modules/effect/dist/esm/internal/errors.js
523
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/internal/errors.js
347
524
  var getBugErrorMessage = (message) => `BUG: ${message} - please report an issue at https://github.com/Effect-TS/effect/issues`;
348
525
 
349
- // ../../../node_modules/.pnpm/effect@3.0.7/node_modules/effect/dist/esm/Utils.js
526
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/Utils.js
350
527
  var GenKindTypeId = /* @__PURE__ */ Symbol.for("effect/Gen/GenKind");
351
528
  var isGenKind = (u2) => isObject(u2) && GenKindTypeId in u2;
352
529
  var GenKindImpl = class {
@@ -492,19 +669,19 @@ var PCGRandom = class {
492
669
  * @category getter
493
670
  * @since 2.0.0
494
671
  */
495
- integer(max) {
496
- if (!max) {
672
+ integer(max3) {
673
+ if (!max3) {
497
674
  return this._next();
498
675
  }
499
- max = max >>> 0;
500
- if ((max & max - 1) === 0) {
501
- return this._next() & max - 1;
676
+ max3 = max3 >>> 0;
677
+ if ((max3 & max3 - 1) === 0) {
678
+ return this._next() & max3 - 1;
502
679
  }
503
680
  let num = 0;
504
- const skew = (-max >>> 0) % max >>> 0;
681
+ const skew = (-max3 >>> 0) % max3 >>> 0;
505
682
  for (num = this._next(); num < skew; num = this._next()) {
506
683
  }
507
- return num % max;
684
+ return num % max3;
508
685
  }
509
686
  /**
510
687
  * Get a uniformly distributed IEEE-754 double between 0.0 and 1.0, with
@@ -585,8 +762,12 @@ function yieldWrapGet(self) {
585
762
  }
586
763
  throw new Error(getBugErrorMessage("yieldWrapGet"));
587
764
  }
765
+ var structuralRegionState = /* @__PURE__ */ globalValue("effect/Utils/isStructuralRegion", () => ({
766
+ enabled: false,
767
+ tester: void 0
768
+ }));
588
769
 
589
- // ../../../node_modules/.pnpm/effect@3.0.7/node_modules/effect/dist/esm/Hash.js
770
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/Hash.js
590
771
  var randomHashCache = /* @__PURE__ */ globalValue(/* @__PURE__ */ Symbol.for("effect/Hash/randomHashCache"), () => /* @__PURE__ */ new WeakMap());
591
772
  var pcgr = /* @__PURE__ */ globalValue(/* @__PURE__ */ Symbol.for("effect/Hash/pcgr"), () => new PCGRandom());
592
773
  var symbol = /* @__PURE__ */ Symbol.for("effect/Hash");
@@ -620,6 +801,9 @@ var hash = (self) => {
620
801
  }
621
802
  };
622
803
  var random = (self) => {
804
+ if (structuralRegionState.enabled === true) {
805
+ return 0;
806
+ }
623
807
  if (!randomHashCache.has(self)) {
624
808
  randomHashCache.set(self, number(pcgr.integer(Number.MAX_SAFE_INTEGER)));
625
809
  }
@@ -652,27 +836,39 @@ var cached = function() {
652
836
  if (arguments.length === 1) {
653
837
  const self2 = arguments[0];
654
838
  return function(hash3) {
655
- Object.defineProperty(self2, symbol, {
656
- value() {
657
- return hash3;
658
- },
659
- enumerable: false
660
- });
839
+ const original2 = self2[symbol].bind(self2);
840
+ if (structuralRegionState.enabled === false) {
841
+ Object.defineProperty(self2, symbol, {
842
+ value() {
843
+ if (structuralRegionState.enabled === true) {
844
+ return original2();
845
+ }
846
+ return hash3;
847
+ },
848
+ enumerable: false
849
+ });
850
+ }
661
851
  return hash3;
662
852
  };
663
853
  }
664
854
  const self = arguments[0];
665
855
  const hash2 = arguments[1];
666
- Object.defineProperty(self, symbol, {
667
- value() {
668
- return hash2;
669
- },
670
- enumerable: false
671
- });
856
+ const original = self[symbol].bind(self);
857
+ if (structuralRegionState.enabled === false) {
858
+ Object.defineProperty(self, symbol, {
859
+ value() {
860
+ if (structuralRegionState.enabled === true) {
861
+ return original();
862
+ }
863
+ return hash2;
864
+ },
865
+ enumerable: false
866
+ });
867
+ }
672
868
  return hash2;
673
869
  };
674
870
 
675
- // ../../../node_modules/.pnpm/effect@3.0.7/node_modules/effect/dist/esm/Equal.js
871
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/Equal.js
676
872
  var symbol2 = /* @__PURE__ */ Symbol.for("effect/Equal");
677
873
  function equals() {
678
874
  if (arguments.length === 1) {
@@ -688,17 +884,37 @@ function compareBoth(self, that) {
688
884
  if (selfType !== typeof that) {
689
885
  return false;
690
886
  }
691
- if ((selfType === "object" || selfType === "function") && self !== null && that !== null) {
692
- if (isEqual(self) && isEqual(that)) {
693
- return hash(self) === hash(that) && self[symbol2](that);
887
+ if (selfType === "object" || selfType === "function") {
888
+ if (self !== null && that !== null) {
889
+ if (isEqual(self) && isEqual(that)) {
890
+ return hash(self) === hash(that) && self[symbol2](that);
891
+ }
892
+ }
893
+ if (structuralRegionState.enabled) {
894
+ if (Array.isArray(self) && Array.isArray(that)) {
895
+ return self.length === that.length && self.every((v2, i2) => compareBoth(v2, that[i2]));
896
+ }
897
+ if (Object.getPrototypeOf(self) === Object.prototype && Object.getPrototypeOf(self) === Object.prototype) {
898
+ const keysSelf = Object.keys(self);
899
+ const keysThat = Object.keys(that);
900
+ if (keysSelf.length === keysThat.length) {
901
+ for (const key of keysSelf) {
902
+ if (!(key in that && compareBoth(self[key], that[key]))) {
903
+ return structuralRegionState.tester ? structuralRegionState.tester(self, that) : false;
904
+ }
905
+ }
906
+ return true;
907
+ }
908
+ }
909
+ return structuralRegionState.tester ? structuralRegionState.tester(self, that) : false;
694
910
  }
695
911
  }
696
- return false;
912
+ return structuralRegionState.enabled && structuralRegionState.tester ? structuralRegionState.tester(self, that) : false;
697
913
  }
698
914
  var isEqual = (u2) => hasProperty(u2, symbol2);
699
915
  var equivalence = () => equals;
700
916
 
701
- // ../../../node_modules/.pnpm/effect@3.0.7/node_modules/effect/dist/esm/Inspectable.js
917
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/Inspectable.js
702
918
  var NodeInspectSymbol = /* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom");
703
919
  var toJSON = (x2) => {
704
920
  if (hasProperty(x2, "toJSON") && isFunction2(x2["toJSON"]) && x2["toJSON"].length === 0) {
@@ -710,7 +926,7 @@ var toJSON = (x2) => {
710
926
  };
711
927
  var format = (x2) => JSON.stringify(x2, null, 2);
712
928
 
713
- // ../../../node_modules/.pnpm/effect@3.0.7/node_modules/effect/dist/esm/Pipeable.js
929
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/Pipeable.js
714
930
  var pipeArguments = (self, args) => {
715
931
  switch (args.length) {
716
932
  case 1:
@@ -741,7 +957,7 @@ var pipeArguments = (self, args) => {
741
957
  }
742
958
  };
743
959
 
744
- // ../../../node_modules/.pnpm/effect@3.0.7/node_modules/effect/dist/esm/internal/effectable.js
960
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/internal/effectable.js
745
961
  var EffectTypeId = /* @__PURE__ */ Symbol.for("effect/Effect");
746
962
  var StreamTypeId = /* @__PURE__ */ Symbol.for("effect/Stream");
747
963
  var SinkTypeId = /* @__PURE__ */ Symbol.for("effect/Sink");
@@ -802,7 +1018,7 @@ var EffectPrototype = {
802
1018
  }
803
1019
  };
804
1020
 
805
- // ../../../node_modules/.pnpm/effect@3.0.7/node_modules/effect/dist/esm/internal/option.js
1021
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/internal/option.js
806
1022
  var TypeId = /* @__PURE__ */ Symbol.for("effect/Option");
807
1023
  var CommonProto = {
808
1024
  ...EffectPrototype,
@@ -860,7 +1076,7 @@ var some2 = (value) => {
860
1076
  return a2;
861
1077
  };
862
1078
 
863
- // ../../../node_modules/.pnpm/effect@3.0.7/node_modules/effect/dist/esm/internal/either.js
1079
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/internal/either.js
864
1080
  var TypeId2 = /* @__PURE__ */ Symbol.for("effect/Either");
865
1081
  var CommonProto2 = {
866
1082
  ...EffectPrototype,
@@ -924,7 +1140,14 @@ var right = (right2) => {
924
1140
  var getLeft = (self) => isRight(self) ? none : some2(self.left);
925
1141
  var getRight = (self) => isLeft(self) ? none : some2(self.right);
926
1142
 
927
- // ../../../node_modules/.pnpm/effect@3.0.7/node_modules/effect/dist/esm/Option.js
1143
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/Either.js
1144
+ var isLeft2 = isLeft;
1145
+ var isRight2 = isRight;
1146
+
1147
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/internal/array.js
1148
+ var isNonEmptyArray = (self) => self.length > 0;
1149
+
1150
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/Option.js
928
1151
  var Option_exports = {};
929
1152
  __export(Option_exports, {
930
1153
  Do: () => Do,
@@ -934,8 +1157,8 @@ __export(Option_exports, {
934
1157
  ap: () => ap,
935
1158
  as: () => as,
936
1159
  asVoid: () => asVoid,
937
- bind: () => bind,
938
- bindTo: () => bindTo,
1160
+ bind: () => bind2,
1161
+ bindTo: () => bindTo2,
939
1162
  composeK: () => composeK,
940
1163
  contains: () => contains,
941
1164
  containsWith: () => containsWith,
@@ -961,7 +1184,7 @@ __export(Option_exports, {
961
1184
  isNone: () => isNone2,
962
1185
  isOption: () => isOption2,
963
1186
  isSome: () => isSome2,
964
- let: () => let_,
1187
+ let: () => let_2,
965
1188
  lift2: () => lift2,
966
1189
  liftNullable: () => liftNullable,
967
1190
  liftPredicate: () => liftPredicate,
@@ -986,10 +1209,41 @@ __export(Option_exports, {
986
1209
  zipWith: () => zipWith
987
1210
  });
988
1211
 
989
- // ../../../node_modules/.pnpm/effect@3.0.7/node_modules/effect/dist/esm/Order.js
1212
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/Order.js
990
1213
  var make2 = (compare) => (self, that) => self === that ? 0 : compare(self, that);
1214
+ var number2 = /* @__PURE__ */ make2((self, that) => self < that ? -1 : 1);
1215
+ var combineMany = /* @__PURE__ */ dual(2, (self, collection) => make2((a1, a2) => {
1216
+ let out = self(a1, a2);
1217
+ if (out !== 0) {
1218
+ return out;
1219
+ }
1220
+ for (const O2 of collection) {
1221
+ out = O2(a1, a2);
1222
+ if (out !== 0) {
1223
+ return out;
1224
+ }
1225
+ }
1226
+ return out;
1227
+ }));
1228
+ var empty = () => make2(() => 0);
1229
+ var combineAll = (collection) => combineMany(empty(), collection);
1230
+ var mapInput2 = /* @__PURE__ */ dual(2, (self, f2) => make2((b1, b2) => self(f2(b1), f2(b2))));
1231
+ var array2 = (O2) => make2((self, that) => {
1232
+ const aLen = self.length;
1233
+ const bLen = that.length;
1234
+ const len = Math.min(aLen, bLen);
1235
+ for (let i2 = 0; i2 < len; i2++) {
1236
+ const o2 = O2(self[i2], that[i2]);
1237
+ if (o2 !== 0) {
1238
+ return o2;
1239
+ }
1240
+ }
1241
+ return number2(aLen, bLen);
1242
+ });
1243
+ var min = (O2) => dual(2, (self, that) => self === that || O2(self, that) < 1 ? self : that);
1244
+ var max = (O2) => dual(2, (self, that) => self === that || O2(self, that) > -1 ? self : that);
991
1245
 
992
- // ../../../node_modules/.pnpm/effect@3.0.7/node_modules/effect/dist/esm/Option.js
1246
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/Option.js
993
1247
  var TypeId3 = /* @__PURE__ */ Symbol.for("effect/Option");
994
1248
  var none2 = () => none;
995
1249
  var some3 = some2;
@@ -1119,15 +1373,9 @@ var containsWith = (isEquivalent) => dual(2, (self, a2) => isNone2(self) ? false
1119
1373
  var _equivalence = /* @__PURE__ */ equivalence();
1120
1374
  var contains = /* @__PURE__ */ containsWith(_equivalence);
1121
1375
  var exists = /* @__PURE__ */ dual(2, (self, refinement) => isNone2(self) ? false : refinement(self.value));
1122
- var bindTo = /* @__PURE__ */ dual(2, (self, name) => map(self, (a2) => ({
1123
- [name]: a2
1124
- })));
1125
- var let_ = /* @__PURE__ */ dual(3, (self, name, f2) => map(self, (a2) => Object.assign({}, a2, {
1126
- [name]: f2(a2)
1127
- })));
1128
- var bind = /* @__PURE__ */ dual(3, (self, name, f2) => flatMap(self, (a2) => map(f2(a2), (b2) => Object.assign({}, a2, {
1129
- [name]: b2
1130
- }))));
1376
+ var bindTo2 = /* @__PURE__ */ bindTo(map);
1377
+ var let_2 = /* @__PURE__ */ let_(map);
1378
+ var bind2 = /* @__PURE__ */ bind(map, flatMap);
1131
1379
  var Do = /* @__PURE__ */ some3({});
1132
1380
  var adapter2 = /* @__PURE__ */ adapter();
1133
1381
  var gen = (f2) => {
@@ -1162,32 +1410,585 @@ var gen = (f2) => {
1162
1410
  return some3(state.value);
1163
1411
  }
1164
1412
  };
1165
- var RE_JSX_ANNOTATION_REGEX = /@jsx\s+(\S+)/u;
1166
- var RE_JS_IDENTIFIER_REGEX = /^[$A-Z_a-z][\w$]*$/u;
1167
- function getFragmentFromContext(context) {
1168
- const settings = parseSchema(ESLintSettingsSchema, context.settings);
1169
- const fragment = settings.reactOptions?.jsxPragmaFrag;
1170
- if (Predicate_exports.isString(fragment) && RE_JS_IDENTIFIER_REGEX.test(fragment))
1171
- return fragment;
1172
- return "Fragment";
1173
- }
1174
- var getPragmaFromContext = memo(
1175
- (context) => {
1176
- const settings = parseSchema(ESLintSettingsSchema, context.settings);
1177
- const pragma = settings.reactOptions?.jsxPragma;
1178
- const { sourceCode } = context;
1179
- const pragmaNode = sourceCode.getAllComments().find((node) => RE_JSX_ANNOTATION_REGEX.test(node.value));
1180
- return Function_exports.pipe(
1181
- Option_exports.orElse(Option_exports.fromNullable(pragma), () => Function_exports.pipe(
1182
- Option_exports.fromNullable(pragmaNode),
1183
- Option_exports.map(({ value }) => RE_JSX_ANNOTATION_REGEX.exec(value)),
1184
- Option_exports.flatMapNullable((matches) => matches?.[1]?.split(".")[0])
1185
- )),
1186
- Option_exports.flatMap(Option_exports.liftPredicate((x2) => RE_JS_IDENTIFIER_REGEX.test(x2))),
1187
- Option_exports.getOrElse(Function_exports.constant("React"))
1188
- );
1413
+
1414
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/Tuple.js
1415
+ var make3 = (...elements) => elements;
1416
+
1417
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/Iterable.js
1418
+ var findFirst = /* @__PURE__ */ dual(2, (self, f2) => {
1419
+ let i2 = 0;
1420
+ for (const a2 of self) {
1421
+ const o2 = f2(a2, i2);
1422
+ if (isBoolean(o2)) {
1423
+ if (o2) {
1424
+ return some3(a2);
1425
+ }
1426
+ } else {
1427
+ if (isSome2(o2)) {
1428
+ return o2;
1429
+ }
1430
+ }
1431
+ i2++;
1432
+ }
1433
+ return none2();
1434
+ });
1435
+
1436
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/Record.js
1437
+ var collect = /* @__PURE__ */ dual(2, (self, f2) => {
1438
+ const out = [];
1439
+ for (const key of keys(self)) {
1440
+ out.push(f2(key, self[key]));
1189
1441
  }
1190
- );
1442
+ return out;
1443
+ });
1444
+ var toEntries = /* @__PURE__ */ collect((key, value) => [key, value]);
1445
+ var keys = (self) => Object.keys(self);
1446
+
1447
+ // ../../../node_modules/.pnpm/effect@3.1.2/node_modules/effect/dist/esm/Array.js
1448
+ var make4 = (...elements) => elements;
1449
+ var allocate = (n2) => new Array(n2);
1450
+ var makeBy = (n2, f2) => {
1451
+ const max3 = Math.max(1, Math.floor(n2));
1452
+ const out = new Array(max3);
1453
+ for (let i2 = 0; i2 < max3; i2++) {
1454
+ out[i2] = f2(i2);
1455
+ }
1456
+ return out;
1457
+ };
1458
+ var range = (start, end) => start <= end ? makeBy(end - start + 1, (i2) => start + i2) : [start];
1459
+ var replicate = /* @__PURE__ */ dual(2, (a2, n2) => makeBy(n2, () => a2));
1460
+ var fromIterable2 = (collection) => Array.isArray(collection) ? collection : Array.from(collection);
1461
+ var fromRecord = toEntries;
1462
+ var fromOption2 = toArray;
1463
+ var match2 = /* @__PURE__ */ dual(2, (self, {
1464
+ onEmpty,
1465
+ onNonEmpty
1466
+ }) => isNonEmptyReadonlyArray(self) ? onNonEmpty(self) : onEmpty());
1467
+ var matchLeft = /* @__PURE__ */ dual(2, (self, {
1468
+ onEmpty,
1469
+ onNonEmpty
1470
+ }) => isNonEmptyReadonlyArray(self) ? onNonEmpty(headNonEmpty(self), tailNonEmpty(self)) : onEmpty());
1471
+ var matchRight = /* @__PURE__ */ dual(2, (self, {
1472
+ onEmpty,
1473
+ onNonEmpty
1474
+ }) => isNonEmptyReadonlyArray(self) ? onNonEmpty(initNonEmpty(self), lastNonEmpty(self)) : onEmpty());
1475
+ var prepend = /* @__PURE__ */ dual(2, (self, head2) => [head2, ...self]);
1476
+ var prependAll = /* @__PURE__ */ dual(2, (self, that) => fromIterable2(that).concat(fromIterable2(self)));
1477
+ var append = /* @__PURE__ */ dual(2, (self, last2) => [...self, last2]);
1478
+ var appendAll = /* @__PURE__ */ dual(2, (self, that) => fromIterable2(self).concat(fromIterable2(that)));
1479
+ var scan = /* @__PURE__ */ dual(3, (self, b2, f2) => {
1480
+ const out = [b2];
1481
+ let i2 = 0;
1482
+ for (const a2 of self) {
1483
+ out[i2 + 1] = f2(out[i2], a2);
1484
+ i2++;
1485
+ }
1486
+ return out;
1487
+ });
1488
+ var scanRight = /* @__PURE__ */ dual(3, (self, b2, f2) => {
1489
+ const input = fromIterable2(self);
1490
+ const out = new Array(input.length + 1);
1491
+ out[input.length] = b2;
1492
+ for (let i2 = input.length - 1; i2 >= 0; i2--) {
1493
+ out[i2] = f2(out[i2 + 1], input[i2]);
1494
+ }
1495
+ return out;
1496
+ });
1497
+ var isArray = Array.isArray;
1498
+ var isEmptyArray = (self) => self.length === 0;
1499
+ var isEmptyReadonlyArray = isEmptyArray;
1500
+ var isNonEmptyArray2 = isNonEmptyArray;
1501
+ var isNonEmptyReadonlyArray = isNonEmptyArray;
1502
+ var length = (self) => self.length;
1503
+ var isOutOfBound = (i2, as2) => i2 < 0 || i2 >= as2.length;
1504
+ var clamp = (i2, as2) => Math.floor(Math.min(Math.max(0, i2), as2.length));
1505
+ var get = /* @__PURE__ */ dual(2, (self, index) => {
1506
+ const i2 = Math.floor(index);
1507
+ return isOutOfBound(i2, self) ? none2() : some3(self[i2]);
1508
+ });
1509
+ var unsafeGet = /* @__PURE__ */ dual(2, (self, index) => {
1510
+ const i2 = Math.floor(index);
1511
+ if (isOutOfBound(i2, self)) {
1512
+ throw new Error(`Index ${i2} out of bounds`);
1513
+ }
1514
+ return self[i2];
1515
+ });
1516
+ var unprepend = (self) => [headNonEmpty(self), tailNonEmpty(self)];
1517
+ var unappend = (self) => [initNonEmpty(self), lastNonEmpty(self)];
1518
+ var head = /* @__PURE__ */ get(0);
1519
+ var headNonEmpty = /* @__PURE__ */ unsafeGet(0);
1520
+ var last = (self) => isNonEmptyReadonlyArray(self) ? some3(lastNonEmpty(self)) : none2();
1521
+ var lastNonEmpty = (self) => self[self.length - 1];
1522
+ var tail = (self) => {
1523
+ const input = fromIterable2(self);
1524
+ return isNonEmptyReadonlyArray(input) ? some3(tailNonEmpty(input)) : none2();
1525
+ };
1526
+ var tailNonEmpty = (self) => self.slice(1);
1527
+ var init = (self) => {
1528
+ const input = fromIterable2(self);
1529
+ return isNonEmptyReadonlyArray(input) ? some3(initNonEmpty(input)) : none2();
1530
+ };
1531
+ var initNonEmpty = (self) => self.slice(0, -1);
1532
+ var take = /* @__PURE__ */ dual(2, (self, n2) => {
1533
+ const input = fromIterable2(self);
1534
+ return input.slice(0, clamp(n2, input));
1535
+ });
1536
+ var takeRight = /* @__PURE__ */ dual(2, (self, n2) => {
1537
+ const input = fromIterable2(self);
1538
+ const i2 = clamp(n2, input);
1539
+ return i2 === 0 ? [] : input.slice(-i2);
1540
+ });
1541
+ var takeWhile = /* @__PURE__ */ dual(2, (self, predicate) => {
1542
+ let i2 = 0;
1543
+ const out = [];
1544
+ for (const a2 of self) {
1545
+ if (!predicate(a2, i2)) {
1546
+ break;
1547
+ }
1548
+ out.push(a2);
1549
+ i2++;
1550
+ }
1551
+ return out;
1552
+ });
1553
+ var spanIndex = (self, predicate) => {
1554
+ let i2 = 0;
1555
+ for (const a2 of self) {
1556
+ if (!predicate(a2, i2)) {
1557
+ break;
1558
+ }
1559
+ i2++;
1560
+ }
1561
+ return i2;
1562
+ };
1563
+ var span = /* @__PURE__ */ dual(2, (self, predicate) => splitAt(self, spanIndex(self, predicate)));
1564
+ var drop = /* @__PURE__ */ dual(2, (self, n2) => {
1565
+ const input = fromIterable2(self);
1566
+ return input.slice(clamp(n2, input), input.length);
1567
+ });
1568
+ var dropRight = /* @__PURE__ */ dual(2, (self, n2) => {
1569
+ const input = fromIterable2(self);
1570
+ return input.slice(0, input.length - clamp(n2, input));
1571
+ });
1572
+ var dropWhile = /* @__PURE__ */ dual(2, (self, predicate) => fromIterable2(self).slice(spanIndex(self, predicate)));
1573
+ var findFirstIndex = /* @__PURE__ */ dual(2, (self, predicate) => {
1574
+ let i2 = 0;
1575
+ for (const a2 of self) {
1576
+ if (predicate(a2, i2)) {
1577
+ return some3(i2);
1578
+ }
1579
+ i2++;
1580
+ }
1581
+ return none2();
1582
+ });
1583
+ var findLastIndex = /* @__PURE__ */ dual(2, (self, predicate) => {
1584
+ const input = fromIterable2(self);
1585
+ for (let i2 = input.length - 1; i2 >= 0; i2--) {
1586
+ if (predicate(input[i2], i2)) {
1587
+ return some3(i2);
1588
+ }
1589
+ }
1590
+ return none2();
1591
+ });
1592
+ var findFirst2 = findFirst;
1593
+ var findLast = /* @__PURE__ */ dual(2, (self, f2) => {
1594
+ const input = fromIterable2(self);
1595
+ for (let i2 = input.length - 1; i2 >= 0; i2--) {
1596
+ const a2 = input[i2];
1597
+ const o2 = f2(a2, i2);
1598
+ if (isBoolean(o2)) {
1599
+ if (o2) {
1600
+ return some3(a2);
1601
+ }
1602
+ } else {
1603
+ if (isSome2(o2)) {
1604
+ return o2;
1605
+ }
1606
+ }
1607
+ }
1608
+ return none2();
1609
+ });
1610
+ var insertAt = /* @__PURE__ */ dual(3, (self, i2, b2) => {
1611
+ const out = Array.from(self);
1612
+ if (i2 < 0 || i2 > out.length) {
1613
+ return none2();
1614
+ }
1615
+ out.splice(i2, 0, b2);
1616
+ return some3(out);
1617
+ });
1618
+ var replace = /* @__PURE__ */ dual(3, (self, i2, b2) => modify(self, i2, () => b2));
1619
+ var replaceOption = /* @__PURE__ */ dual(3, (self, i2, b2) => modifyOption(self, i2, () => b2));
1620
+ var modify = /* @__PURE__ */ dual(3, (self, i2, f2) => getOrElse(modifyOption(self, i2, f2), () => Array.from(self)));
1621
+ var modifyOption = /* @__PURE__ */ dual(3, (self, i2, f2) => {
1622
+ const out = Array.from(self);
1623
+ if (isOutOfBound(i2, out)) {
1624
+ return none2();
1625
+ }
1626
+ const next = f2(out[i2]);
1627
+ out[i2] = next;
1628
+ return some3(out);
1629
+ });
1630
+ var remove = /* @__PURE__ */ dual(2, (self, i2) => {
1631
+ const out = Array.from(self);
1632
+ if (isOutOfBound(i2, out)) {
1633
+ return out;
1634
+ }
1635
+ out.splice(i2, 1);
1636
+ return out;
1637
+ });
1638
+ var reverse = (self) => Array.from(self).reverse();
1639
+ var sort = /* @__PURE__ */ dual(2, (self, O2) => {
1640
+ const out = Array.from(self);
1641
+ out.sort(O2);
1642
+ return out;
1643
+ });
1644
+ var sortWith = /* @__PURE__ */ dual(3, (self, f2, order) => sort(self, mapInput2(order, f2)));
1645
+ var sortBy = (...orders) => {
1646
+ const sortByAll = sort(combineAll(orders));
1647
+ return (self) => {
1648
+ const input = fromIterable2(self);
1649
+ if (isNonEmptyReadonlyArray(input)) {
1650
+ return sortByAll(input);
1651
+ }
1652
+ return [];
1653
+ };
1654
+ };
1655
+ var zip = /* @__PURE__ */ dual(2, (self, that) => zipWith2(self, that, make3));
1656
+ var zipWith2 = /* @__PURE__ */ dual(3, (self, that, f2) => {
1657
+ const as2 = fromIterable2(self);
1658
+ const bs = fromIterable2(that);
1659
+ if (isNonEmptyReadonlyArray(as2) && isNonEmptyReadonlyArray(bs)) {
1660
+ const out = [f2(headNonEmpty(as2), headNonEmpty(bs))];
1661
+ const len = Math.min(as2.length, bs.length);
1662
+ for (let i2 = 1; i2 < len; i2++) {
1663
+ out[i2] = f2(as2[i2], bs[i2]);
1664
+ }
1665
+ return out;
1666
+ }
1667
+ return [];
1668
+ });
1669
+ var unzip = (self) => {
1670
+ const input = fromIterable2(self);
1671
+ if (isNonEmptyReadonlyArray(input)) {
1672
+ const fa = [input[0][0]];
1673
+ const fb = [input[0][1]];
1674
+ for (let i2 = 1; i2 < input.length; i2++) {
1675
+ fa[i2] = input[i2][0];
1676
+ fb[i2] = input[i2][1];
1677
+ }
1678
+ return [fa, fb];
1679
+ }
1680
+ return [[], []];
1681
+ };
1682
+ var intersperse = /* @__PURE__ */ dual(2, (self, middle) => {
1683
+ const input = fromIterable2(self);
1684
+ if (isNonEmptyReadonlyArray(input)) {
1685
+ const out = [headNonEmpty(input)];
1686
+ const tail2 = tailNonEmpty(input);
1687
+ for (let i2 = 0; i2 < tail2.length; i2++) {
1688
+ if (i2 < tail2.length) {
1689
+ out.push(middle);
1690
+ }
1691
+ out.push(tail2[i2]);
1692
+ }
1693
+ return out;
1694
+ }
1695
+ return [];
1696
+ });
1697
+ var modifyNonEmptyHead = /* @__PURE__ */ dual(2, (self, f2) => [f2(headNonEmpty(self)), ...tailNonEmpty(self)]);
1698
+ var setNonEmptyHead = /* @__PURE__ */ dual(2, (self, b2) => modifyNonEmptyHead(self, () => b2));
1699
+ var modifyNonEmptyLast = /* @__PURE__ */ dual(2, (self, f2) => append(initNonEmpty(self), f2(lastNonEmpty(self))));
1700
+ var setNonEmptyLast = /* @__PURE__ */ dual(2, (self, b2) => modifyNonEmptyLast(self, () => b2));
1701
+ var rotate = /* @__PURE__ */ dual(2, (self, n2) => {
1702
+ const input = fromIterable2(self);
1703
+ if (isNonEmptyReadonlyArray(input)) {
1704
+ const len = input.length;
1705
+ const m2 = Math.round(n2) % len;
1706
+ if (isOutOfBound(Math.abs(m2), input) || m2 === 0) {
1707
+ return copy(input);
1708
+ }
1709
+ if (m2 < 0) {
1710
+ const [f2, s2] = splitNonEmptyAt(input, -m2);
1711
+ return appendAll(s2, f2);
1712
+ } else {
1713
+ return rotate(self, m2 - len);
1714
+ }
1715
+ }
1716
+ return [];
1717
+ });
1718
+ var containsWith2 = (isEquivalent) => dual(2, (self, a2) => {
1719
+ for (const i2 of self) {
1720
+ if (isEquivalent(a2, i2)) {
1721
+ return true;
1722
+ }
1723
+ }
1724
+ return false;
1725
+ });
1726
+ var _equivalence2 = /* @__PURE__ */ equivalence();
1727
+ var contains2 = /* @__PURE__ */ containsWith2(_equivalence2);
1728
+ var chop = /* @__PURE__ */ dual(2, (self, f2) => {
1729
+ const input = fromIterable2(self);
1730
+ if (isNonEmptyReadonlyArray(input)) {
1731
+ const [b2, rest] = f2(input);
1732
+ const out = [b2];
1733
+ let next = rest;
1734
+ while (isNonEmptyArray(next)) {
1735
+ const [b3, rest2] = f2(next);
1736
+ out.push(b3);
1737
+ next = rest2;
1738
+ }
1739
+ return out;
1740
+ }
1741
+ return [];
1742
+ });
1743
+ var splitAt = /* @__PURE__ */ dual(2, (self, n2) => {
1744
+ const input = Array.from(self);
1745
+ const _n = Math.floor(n2);
1746
+ if (isNonEmptyReadonlyArray(input)) {
1747
+ if (_n >= 1) {
1748
+ return splitNonEmptyAt(input, _n);
1749
+ }
1750
+ return [[], input];
1751
+ }
1752
+ return [input, []];
1753
+ });
1754
+ var splitNonEmptyAt = /* @__PURE__ */ dual(2, (self, n2) => {
1755
+ const _n = Math.max(1, Math.floor(n2));
1756
+ return _n >= self.length ? [copy(self), []] : [prepend(self.slice(1, _n), headNonEmpty(self)), self.slice(_n)];
1757
+ });
1758
+ var split = /* @__PURE__ */ dual(2, (self, n2) => {
1759
+ const input = fromIterable2(self);
1760
+ return chunksOf(input, Math.ceil(input.length / Math.floor(n2)));
1761
+ });
1762
+ var splitWhere = /* @__PURE__ */ dual(2, (self, predicate) => span(self, (a2, i2) => !predicate(a2, i2)));
1763
+ var copy = (self) => self.slice();
1764
+ var chunksOf = /* @__PURE__ */ dual(2, (self, n2) => {
1765
+ const input = fromIterable2(self);
1766
+ if (isNonEmptyReadonlyArray(input)) {
1767
+ return chop(input, splitNonEmptyAt(n2));
1768
+ }
1769
+ return [];
1770
+ });
1771
+ var groupWith = /* @__PURE__ */ dual(2, (self, isEquivalent) => chop(self, (as2) => {
1772
+ const h2 = headNonEmpty(as2);
1773
+ const out = [h2];
1774
+ let i2 = 1;
1775
+ for (; i2 < as2.length; i2++) {
1776
+ const a2 = as2[i2];
1777
+ if (isEquivalent(a2, h2)) {
1778
+ out.push(a2);
1779
+ } else {
1780
+ break;
1781
+ }
1782
+ }
1783
+ return [out, as2.slice(i2)];
1784
+ }));
1785
+ var group = /* @__PURE__ */ groupWith(/* @__PURE__ */ equivalence());
1786
+ var groupBy = /* @__PURE__ */ dual(2, (self, f2) => {
1787
+ const out = {};
1788
+ for (const a2 of self) {
1789
+ const k2 = f2(a2);
1790
+ if (Object.prototype.hasOwnProperty.call(out, k2)) {
1791
+ out[k2].push(a2);
1792
+ } else {
1793
+ out[k2] = [a2];
1794
+ }
1795
+ }
1796
+ return out;
1797
+ });
1798
+ var unionWith = /* @__PURE__ */ dual(3, (self, that, isEquivalent) => {
1799
+ const a2 = fromIterable2(self);
1800
+ const b2 = fromIterable2(that);
1801
+ if (isNonEmptyReadonlyArray(a2)) {
1802
+ if (isNonEmptyReadonlyArray(b2)) {
1803
+ const dedupe2 = dedupeWith(isEquivalent);
1804
+ return dedupe2(appendAll(a2, b2));
1805
+ }
1806
+ return a2;
1807
+ }
1808
+ return b2;
1809
+ });
1810
+ var union = /* @__PURE__ */ dual(2, (self, that) => unionWith(self, that, _equivalence2));
1811
+ var intersectionWith = (isEquivalent) => {
1812
+ const has = containsWith2(isEquivalent);
1813
+ return dual(2, (self, that) => fromIterable2(self).filter((a2) => has(that, a2)));
1814
+ };
1815
+ var intersection = /* @__PURE__ */ intersectionWith(_equivalence2);
1816
+ var differenceWith = (isEquivalent) => {
1817
+ const has = containsWith2(isEquivalent);
1818
+ return dual(2, (self, that) => fromIterable2(self).filter((a2) => !has(that, a2)));
1819
+ };
1820
+ var difference = /* @__PURE__ */ differenceWith(_equivalence2);
1821
+ var empty2 = () => [];
1822
+ var of = (a2) => [a2];
1823
+ var map2 = /* @__PURE__ */ dual(2, (self, f2) => self.map(f2));
1824
+ var flatMap2 = /* @__PURE__ */ dual(2, (self, f2) => {
1825
+ if (isEmptyReadonlyArray(self)) {
1826
+ return [];
1827
+ }
1828
+ const out = [];
1829
+ for (let i2 = 0; i2 < self.length; i2++) {
1830
+ const inner = f2(self[i2], i2);
1831
+ for (let j2 = 0; j2 < inner.length; j2++) {
1832
+ out.push(inner[j2]);
1833
+ }
1834
+ }
1835
+ return out;
1836
+ });
1837
+ var flatten2 = /* @__PURE__ */ flatMap2(identity);
1838
+ var filterMap2 = /* @__PURE__ */ dual(2, (self, f2) => {
1839
+ const as2 = fromIterable2(self);
1840
+ const out = [];
1841
+ for (let i2 = 0; i2 < as2.length; i2++) {
1842
+ const o2 = f2(as2[i2], i2);
1843
+ if (isSome2(o2)) {
1844
+ out.push(o2.value);
1845
+ }
1846
+ }
1847
+ return out;
1848
+ });
1849
+ var filterMapWhile = /* @__PURE__ */ dual(2, (self, f2) => {
1850
+ let i2 = 0;
1851
+ const out = [];
1852
+ for (const a2 of self) {
1853
+ const b2 = f2(a2, i2);
1854
+ if (isSome2(b2)) {
1855
+ out.push(b2.value);
1856
+ } else {
1857
+ break;
1858
+ }
1859
+ i2++;
1860
+ }
1861
+ return out;
1862
+ });
1863
+ var partitionMap2 = /* @__PURE__ */ dual(2, (self, f2) => {
1864
+ const left2 = [];
1865
+ const right2 = [];
1866
+ const as2 = fromIterable2(self);
1867
+ for (let i2 = 0; i2 < as2.length; i2++) {
1868
+ const e2 = f2(as2[i2], i2);
1869
+ if (isLeft2(e2)) {
1870
+ left2.push(e2.left);
1871
+ } else {
1872
+ right2.push(e2.right);
1873
+ }
1874
+ }
1875
+ return [left2, right2];
1876
+ });
1877
+ var getSomes = /* @__PURE__ */ filterMap2(identity);
1878
+ var getLefts = (self) => {
1879
+ const out = [];
1880
+ for (const a2 of self) {
1881
+ if (isLeft2(a2)) {
1882
+ out.push(a2.left);
1883
+ }
1884
+ }
1885
+ return out;
1886
+ };
1887
+ var getRights = (self) => {
1888
+ const out = [];
1889
+ for (const a2 of self) {
1890
+ if (isRight2(a2)) {
1891
+ out.push(a2.right);
1892
+ }
1893
+ }
1894
+ return out;
1895
+ };
1896
+ var filter2 = /* @__PURE__ */ dual(2, (self, predicate) => {
1897
+ const as2 = fromIterable2(self);
1898
+ const out = [];
1899
+ for (let i2 = 0; i2 < as2.length; i2++) {
1900
+ if (predicate(as2[i2], i2)) {
1901
+ out.push(as2[i2]);
1902
+ }
1903
+ }
1904
+ return out;
1905
+ });
1906
+ var partition = /* @__PURE__ */ dual(2, (self, predicate) => {
1907
+ const left2 = [];
1908
+ const right2 = [];
1909
+ const as2 = fromIterable2(self);
1910
+ for (let i2 = 0; i2 < as2.length; i2++) {
1911
+ if (predicate(as2[i2], i2)) {
1912
+ right2.push(as2[i2]);
1913
+ } else {
1914
+ left2.push(as2[i2]);
1915
+ }
1916
+ }
1917
+ return [left2, right2];
1918
+ });
1919
+ var separate = /* @__PURE__ */ partitionMap2(identity);
1920
+ var reduce = /* @__PURE__ */ dual(3, (self, b2, f2) => fromIterable2(self).reduce((b3, a2, i2) => f2(b3, a2, i2), b2));
1921
+ var reduceRight = /* @__PURE__ */ dual(3, (self, b2, f2) => fromIterable2(self).reduceRight((b3, a2, i2) => f2(b3, a2, i2), b2));
1922
+ var liftPredicate2 = (predicate) => (b2) => predicate(b2) ? [b2] : [];
1923
+ var liftOption = (f2) => (...a2) => fromOption2(f2(...a2));
1924
+ var fromNullable2 = (a2) => a2 == null ? empty2() : [a2];
1925
+ var liftNullable2 = (f2) => (...a2) => fromNullable2(f2(...a2));
1926
+ var flatMapNullable2 = /* @__PURE__ */ dual(2, (self, f2) => isNonEmptyReadonlyArray(self) ? fromNullable2(f2(headNonEmpty(self))) : empty2());
1927
+ var liftEither = (f2) => (...a2) => {
1928
+ const e2 = f2(...a2);
1929
+ return isLeft2(e2) ? [] : [e2.right];
1930
+ };
1931
+ var every2 = /* @__PURE__ */ dual(2, (self, refinement) => self.every(refinement));
1932
+ var some4 = /* @__PURE__ */ dual(2, (self, predicate) => self.some(predicate));
1933
+ var extend = /* @__PURE__ */ dual(2, (self, f2) => self.map((_2, i2, as2) => f2(as2.slice(i2))));
1934
+ var min2 = /* @__PURE__ */ dual(2, (self, O2) => self.reduce(min(O2)));
1935
+ var max2 = /* @__PURE__ */ dual(2, (self, O2) => self.reduce(max(O2)));
1936
+ var unfold = (b2, f2) => {
1937
+ const out = [];
1938
+ let next = b2;
1939
+ let o2;
1940
+ while (isSome2(o2 = f2(next))) {
1941
+ const [a2, b3] = o2.value;
1942
+ out.push(a2);
1943
+ next = b3;
1944
+ }
1945
+ return out;
1946
+ };
1947
+ var getOrder2 = array2;
1948
+ var getEquivalence2 = array;
1949
+ var forEach = /* @__PURE__ */ dual(2, (self, f2) => fromIterable2(self).forEach((a2, i2) => f2(a2, i2)));
1950
+ var dedupeWith = /* @__PURE__ */ dual(2, (self, isEquivalent) => {
1951
+ const input = fromIterable2(self);
1952
+ if (isNonEmptyReadonlyArray(input)) {
1953
+ const out = [headNonEmpty(input)];
1954
+ const rest = tailNonEmpty(input);
1955
+ for (const r2 of rest) {
1956
+ if (out.every((a2) => !isEquivalent(r2, a2))) {
1957
+ out.push(r2);
1958
+ }
1959
+ }
1960
+ return out;
1961
+ }
1962
+ return [];
1963
+ });
1964
+ var dedupe = (self) => dedupeWith(self, equivalence());
1965
+ var dedupeAdjacentWith = /* @__PURE__ */ dual(2, (self, isEquivalent) => {
1966
+ const out = [];
1967
+ let lastA = none2();
1968
+ for (const a2 of self) {
1969
+ if (isNone2(lastA) || !isEquivalent(a2, lastA.value)) {
1970
+ out.push(a2);
1971
+ lastA = some3(a2);
1972
+ }
1973
+ }
1974
+ return out;
1975
+ });
1976
+ var dedupeAdjacent = /* @__PURE__ */ dedupeAdjacentWith(/* @__PURE__ */ equivalence());
1977
+ var join = /* @__PURE__ */ dual(2, (self, sep) => fromIterable2(self).join(sep));
1978
+ var mapAccum = /* @__PURE__ */ dual(3, (self, s2, f2) => {
1979
+ let i2 = 0;
1980
+ let s1 = s2;
1981
+ const out = [];
1982
+ for (const a2 of self) {
1983
+ const r2 = f2(s1, a2, i2);
1984
+ s1 = r2[0];
1985
+ out.push(r2[1]);
1986
+ i2++;
1987
+ }
1988
+ return [s1, out];
1989
+ });
1990
+ var cartesianWith = /* @__PURE__ */ dual(3, (self, that, f2) => flatMap2(self, (a2) => map2(that, (b2) => f2(a2, b2))));
1991
+ var cartesian = /* @__PURE__ */ dual(2, (self, that) => cartesianWith(self, that, (a2, b2) => [a2, b2]));
1191
1992
 
1192
1993
  // ../../../node_modules/.pnpm/ts-pattern@5.1.1/node_modules/ts-pattern/dist/index.js
1193
1994
  var t = Symbol.for("@ts-pattern/matcher");
@@ -1464,177 +2265,7 @@ var z = class _z {
1464
2265
  }
1465
2266
  };
1466
2267
 
1467
- // src/pragma/is-from-pragma.ts
1468
- function isInitializedFromPragma(variableName, context, initialScope, pragma = getPragmaFromContext(context)) {
1469
- const maybeVariable = findVariable(variableName, initialScope);
1470
- const maybeLatestDef = Option_exports.flatMapNullable(maybeVariable, (variable) => variable.defs.at(-1));
1471
- if (Option_exports.isNone(maybeLatestDef))
1472
- return false;
1473
- const latestDef = maybeLatestDef.value;
1474
- const { node, parent } = latestDef;
1475
- if (node.type === NodeType.VariableDeclarator && node.init) {
1476
- const { init } = node;
1477
- if (a({ type: "MemberExpression", object: { type: "Identifier", name: pragma } }, init))
1478
- return true;
1479
- if (a({ type: "Identifier", name: pragma }, init))
1480
- return true;
1481
- const maybeRequireExpression = $(init).with({
1482
- type: NodeType.CallExpression,
1483
- callee: { type: NodeType.Identifier, name: "require" }
1484
- }, (exp) => Option_exports.some(exp)).with(
1485
- {
1486
- type: NodeType.MemberExpression,
1487
- object: {
1488
- type: NodeType.CallExpression,
1489
- callee: { type: NodeType.Identifier, name: "require" }
1490
- }
1491
- },
1492
- ({ object }) => Option_exports.some(object)
1493
- ).otherwise(Option_exports.none);
1494
- if (Option_exports.isNone(maybeRequireExpression))
1495
- return false;
1496
- const requireExpression = maybeRequireExpression.value;
1497
- const [firstArg] = requireExpression.arguments;
1498
- if (firstArg?.type !== NodeType.Literal)
1499
- return false;
1500
- return firstArg.value === pragma.toLowerCase();
1501
- }
1502
- return a({ type: "ImportDeclaration", source: { value: pragma.toLowerCase() } }, parent);
1503
- }
1504
- function isPropertyOfPragma(name, context, pragma = getPragmaFromContext(context)) {
1505
- const isMatch = a({
1506
- type: NodeType.MemberExpression,
1507
- object: {
1508
- type: NodeType.Identifier,
1509
- name: pragma
1510
- },
1511
- property: {
1512
- name
1513
- }
1514
- });
1515
- return isMatch;
1516
- }
1517
- function isFromPragma(name) {
1518
- return (node, context) => {
1519
- const initialScope = context.sourceCode.getScope(node);
1520
- if (node.type === NodeType.MemberExpression)
1521
- return isPropertyOfPragma(name, context)(node);
1522
- if (node.name === name)
1523
- return isInitializedFromPragma(name, context, initialScope);
1524
- return false;
1525
- };
1526
- }
1527
- function isFromPragmaMember(pragmaMemberName, name) {
1528
- return (node, context, pragma = getPragmaFromContext(context)) => {
1529
- const initialScope = context.sourceCode.getScope(node);
1530
- if (node.property.type !== NodeType.Identifier || node.property.name !== name)
1531
- return false;
1532
- if (node.object.type === NodeType.Identifier && node.object.name === pragmaMemberName) {
1533
- return isInitializedFromPragma(node.object.name, context, initialScope, pragma);
1534
- }
1535
- if (node.object.type === NodeType.MemberExpression && node.object.object.type === NodeType.Identifier && node.object.object.name === pragma && node.object.property.type === NodeType.Identifier) {
1536
- return node.object.property.name === pragmaMemberName;
1537
- }
1538
- return false;
1539
- };
1540
- }
1541
- function isCallFromPragma(name) {
1542
- return (node, context) => {
1543
- if (!isOneOf([NodeType.Identifier, NodeType.MemberExpression])(node.callee))
1544
- return false;
1545
- return isFromPragma(name)(node.callee, context);
1546
- };
1547
- }
1548
- function isCallFromPragmaMember(pragmaMemberName, name) {
1549
- return (node, context) => {
1550
- if (!is(NodeType.MemberExpression)(node.callee))
1551
- return false;
1552
- return isFromPragmaMember(pragmaMemberName, name)(node.callee, context);
1553
- };
1554
- }
1555
-
1556
- // src/element/api.ts
1557
- var isCreateElement = isFromPragma("createElement");
1558
- var isCreateElementCall = (node, context) => {
1559
- if (!isOneOf([NodeType.Identifier, NodeType.MemberExpression])(node.callee))
1560
- return false;
1561
- return isCreateElement(node.callee, context);
1562
- };
1563
- var isCloneElement = isFromPragma("cloneElement");
1564
- var isCloneElementCall = (node, context) => {
1565
- if (!isOneOf([NodeType.Identifier, NodeType.MemberExpression])(node.callee))
1566
- return false;
1567
- return isCloneElement(node.callee, context);
1568
- };
1569
- function resolveMemberExpressions(object, property) {
1570
- if (object.type === AST_NODE_TYPES.JSXMemberExpression) {
1571
- return `${resolveMemberExpressions(object.object, object.property)}.${property.name}`;
1572
- }
1573
- if (object.type === AST_NODE_TYPES.JSXNamespacedName) {
1574
- return `${object.namespace.name}:${object.name.name}.${property.name}`;
1575
- }
1576
- return `${object.name}.${property.name}`;
1577
- }
1578
- function elementType(node) {
1579
- if (node.type === AST_NODE_TYPES.JSXOpeningFragment) {
1580
- return "<>";
1581
- }
1582
- const { name } = node;
1583
- if (name.type === AST_NODE_TYPES.JSXMemberExpression) {
1584
- const { object, property } = name;
1585
- return resolveMemberExpressions(object, property);
1586
- }
1587
- if (name.type === AST_NODE_TYPES.JSXNamespacedName) {
1588
- return `${name.namespace.name}:${name.name.name}`;
1589
- }
1590
- return name.name;
1591
- }
1592
- function isInsideCreateElementProps(node, context) {
1593
- return Function_exports.pipe(
1594
- traverseUp(node, (n2) => is(NodeType.CallExpression)(n2) && isCreateElementCall(n2, context)),
1595
- Option_exports.filter(is(NodeType.CallExpression)),
1596
- Option_exports.flatMapNullable((c2) => c2.arguments.at(1)),
1597
- Option_exports.filter(is(NodeType.ObjectExpression)),
1598
- Option_exports.zipWith(traverseUp(node, is(NodeType.ObjectExpression)), (a2, b2) => a2 === b2),
1599
- Option_exports.getOrElse(Function_exports.constFalse)
1600
- );
1601
- }
1602
- function isChildrenOfCreateElement(node, context) {
1603
- return Function_exports.pipe(
1604
- Option_exports.fromNullable(node.parent),
1605
- Option_exports.filter(is(NodeType.CallExpression)),
1606
- Option_exports.filter((n2) => isCreateElementCall(n2, context)),
1607
- Option_exports.exists(
1608
- (n2) => n2.arguments.slice(2).some((arg) => arg === node)
1609
- )
1610
- );
1611
- }
1612
- function hasChildren(node, predicate) {
1613
- if (Predicate_exports.isFunction(predicate))
1614
- return node.children.some(predicate);
1615
- return node.children.length > 0;
1616
- }
1617
- function isChildOfJSXElement(node) {
1618
- return node.parent?.type === NodeType.JSXElement && node.parent.children.some((child) => child === node);
1619
- }
1620
- function isJSXElementOfUserDefinedComponent(node) {
1621
- return node.openingElement.name.type === NodeType.JSXIdentifier && /^[A-Z]/u.test(node.openingElement.name.name);
1622
- }
1623
- function isJSXElementOfBuiltinComponent(node) {
1624
- return node.openingElement.name.type === NodeType.JSXIdentifier && node.openingElement.name.name.toLowerCase() === node.openingElement.name.name && /^[a-z]/u.test(node.openingElement.name.name);
1625
- }
1626
- var isFragment = (node, pragma, fragment) => {
1627
- if (!isOneOf([NodeType.JSXElement, NodeType.JSXFragment])(node))
1628
- return false;
1629
- return isFragmentSyntax(node) || isFragmentElement(node, pragma, fragment);
1630
- };
1631
- var isFragmentSyntax = is(NodeType.JSXFragment);
1632
- function isFragmentElement(node, pragma, fragment) {
1633
- const { name } = node.openingElement;
1634
- if (name.type === NodeType.JSXIdentifier && name.name === fragment)
1635
- return true;
1636
- return name.type === NodeType.JSXMemberExpression && name.object.type === NodeType.JSXIdentifier && name.object.name === pragma && name.property.name === fragment;
1637
- }
2268
+ // src/value/is-jsx-value.ts
1638
2269
  var JSXValueHint = {
1639
2270
  None: 0n,
1640
2271
  SkipNullLiteral: 1n << 0n,
@@ -1682,7 +2313,7 @@ function isJSXValue(node, context, hint = DEFAULT_JSX_VALUE_HINT) {
1682
2313
  }).with({ type: NodeType.CallExpression }, (node2) => {
1683
2314
  if (hint & JSXValueHint.SkipCreateElement)
1684
2315
  return false;
1685
- return isCreateElementCall(node2, context);
2316
+ return $(node2.callee).with({ type: NodeType.Identifier, name: "createElement" }, Function_exports.constTrue).with({ type: NodeType.MemberExpression, property: { name: "createElement" } }, Function_exports.constTrue).otherwise(Function_exports.constFalse);
1686
2317
  }).with({ type: NodeType.Identifier }, (node2) => {
1687
2318
  const { name } = node2;
1688
2319
  if (name === "undefined")
@@ -1707,6 +2338,19 @@ function isFunctionReturningJSXValue(node, context, hint = DEFAULT_JSX_VALUE_HIN
1707
2338
  const statements = getNestedReturnStatements(node.body);
1708
2339
  return statements.some((statement) => isJSXValue(statement.argument, context, hint));
1709
2340
  }
2341
+
2342
+ // src/pragma.ts
2343
+ var RE_JSX_ANNOTATION_REGEX = /@jsx\s+(\S+)/u;
2344
+ var RE_JS_IDENTIFIER_REGEX = /^[$A-Z_a-z][\w$]*$/u;
2345
+ function getJSXPragmaFromContext(context) {
2346
+ const { sourceCode } = context;
2347
+ return Function_exports.pipe(
2348
+ Array_exports.findFirst(sourceCode.getAllComments(), (node) => RE_JSX_ANNOTATION_REGEX.test(node.value)),
2349
+ Option_exports.map(({ value }) => RE_JSX_ANNOTATION_REGEX.exec(value)),
2350
+ Option_exports.flatMapNullable((matches) => matches?.[1]),
2351
+ Option_exports.filter((pragma) => RE_JS_IDENTIFIER_REGEX.test(pragma))
2352
+ );
2353
+ }
1710
2354
  var { getStaticValue } = ESLintCommunityESLintUtils;
1711
2355
  function getPropName(node) {
1712
2356
  return $(node.name).when(is(NodeType.JSXIdentifier), (n2) => n2.name).when(is(NodeType.JSXNamespacedName), (n2) => `${n2.namespace.name}:${n2.name.name}`).exhaustive();
@@ -1744,13 +2388,13 @@ function findPropInProperties(properties, context, initialScope, seenProps = [])
1744
2388
  );
1745
2389
  if (Option_exports.isNone(maybeInit))
1746
2390
  return false;
1747
- const init = maybeInit.value;
1748
- if (init.type !== NodeType.ObjectExpression)
2391
+ const init2 = maybeInit.value;
2392
+ if (init2.type !== NodeType.ObjectExpression)
1749
2393
  return false;
1750
2394
  if (seenProps.includes(name))
1751
2395
  return false;
1752
2396
  return Option_exports.isSome(
1753
- findPropInProperties(init.properties, context, initialScope, [...seenProps, name])(propName)
2397
+ findPropInProperties(init2.properties, context, initialScope, [...seenProps, name])(propName)
1754
2398
  );
1755
2399
  }).when(is(NodeType.ObjectExpression), (argument) => {
1756
2400
  return Option_exports.isSome(findPropInProperties(argument.properties, context, initialScope, seenProps)(propName));
@@ -1777,10 +2421,10 @@ function findPropInAttributes(attributes, context, initialScope) {
1777
2421
  );
1778
2422
  if (Option_exports.isNone(maybeInit))
1779
2423
  return false;
1780
- const init = maybeInit.value;
1781
- if (!("properties" in init))
2424
+ const init2 = maybeInit.value;
2425
+ if (!("properties" in init2))
1782
2426
  return false;
1783
- return Option_exports.isSome(findPropInProperties(init.properties, context, initialScope)(propName));
2427
+ return Option_exports.isSome(findPropInProperties(init2.properties, context, initialScope)(propName));
1784
2428
  }).when(is(NodeType.ObjectExpression), (argument) => {
1785
2429
  return Option_exports.isSome(findPropInProperties(argument.properties, context, initialScope)(propName));
1786
2430
  }).when(is(NodeType.MemberExpression), () => {
@@ -1828,4 +2472,4 @@ function isPaddingSpaces(node) {
1828
2472
  return isLiteral(node) && isWhiteSpace(node) && node.raw.includes("\n");
1829
2473
  }
1830
2474
 
1831
- export { DEFAULT_JSX_VALUE_HINT, JSXValueHint, elementType, findPropInAttributes, findPropInProperties, getFragmentFromContext, getPragmaFromContext, getProp, getPropName, getPropValue, hasAnyProp, hasChildren, hasEveryProp, hasProp, isCallFromPragma, isCallFromPragmaMember, isChildOfJSXElement, isChildrenOfCreateElement, isCloneElement, isCloneElementCall, isCreateElement, isCreateElementCall, isFragment, isFragmentElement, isFragmentSyntax, isFromPragma, isFromPragmaMember, isFunctionReturningJSXValue, isInitializedFromPragma, isInsideCreateElementProps, isInsidePropValue, isJSXElementOfBuiltinComponent, isJSXElementOfUserDefinedComponent, isJSXValue, isLineBreak, isLiteral, isPaddingSpaces, isPropertyOfPragma, isWhiteSpace, traverseUpProp };
2475
+ export { DEFAULT_JSX_VALUE_HINT, JSXValueHint, elementType, findPropInAttributes, findPropInProperties, getJSXPragmaFromContext, getProp, getPropName, getPropValue, hasAnyProp, hasEveryProp, hasProp, isFunctionReturningJSXValue, isInsidePropValue, isJSXElementOfBuiltinComponent, isJSXElementOfUserDefinedComponent, isJSXValue, isLineBreak, isLiteral, isPaddingSpaces, isWhiteSpace, traverseUpProp };