@eslint-react/jsx 1.5.11-next.1 → 1.5.11-next.11
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.d.mts +4 -66
- package/dist/index.d.ts +4 -66
- package/dist/index.js +907 -285
- package/dist/index.mjs +908 -264
- package/package.json +7 -7
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.
|
|
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.
|
|
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.
|
|
193
|
-
var
|
|
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.
|
|
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.
|
|
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 ([
|
|
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
|
|
488
|
+
const keys2 = Object.keys(fields);
|
|
312
489
|
return (a2) => {
|
|
313
|
-
for (const key of
|
|
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.
|
|
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.
|
|
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(
|
|
496
|
-
if (!
|
|
672
|
+
integer(max3) {
|
|
673
|
+
if (!max3) {
|
|
497
674
|
return this._next();
|
|
498
675
|
}
|
|
499
|
-
|
|
500
|
-
if ((
|
|
501
|
-
return this._next() &
|
|
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 = (-
|
|
681
|
+
const skew = (-max3 >>> 0) % max3 >>> 0;
|
|
505
682
|
for (num = this._next(); num < skew; num = this._next()) {
|
|
506
683
|
}
|
|
507
|
-
return num %
|
|
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.
|
|
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
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
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
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
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.
|
|
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 (
|
|
692
|
-
if (
|
|
693
|
-
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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: () =>
|
|
938
|
-
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: () =>
|
|
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.
|
|
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.
|
|
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
|
|
1123
|
-
|
|
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
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
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/
|
|
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
|
|
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
|
|
1748
|
-
if (
|
|
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(
|
|
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
|
|
1781
|
-
if (!("properties" in
|
|
2424
|
+
const init2 = maybeInit.value;
|
|
2425
|
+
if (!("properties" in init2))
|
|
1782
2426
|
return false;
|
|
1783
|
-
return Option_exports.isSome(findPropInProperties(
|
|
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,
|
|
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 };
|