@icebreakers/eslint-config 4.0.11 → 5.0.1
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/{dist-D2WUqnUR.cjs → dist-Br-vKI2G.cjs} +642 -2812
- package/dist/{dist-3Yuo5ZWh.js → dist-Dk5MjvLV.js} +642 -2812
- package/dist/index.cjs +3 -15
- package/dist/index.js +3 -15
- package/dist/{lib-Du7EF351.js → lib-DS3f4hEx.js} +17950 -17173
- package/dist/{lib-VdWhDy2o.cjs → lib-gbm6XY5m.cjs} +17950 -17173
- package/dist/{modern-D06QebMM.cjs → modern-BlDFWU8k.cjs} +2 -2
- package/dist/{modern-DE63O_Ru.js → modern-DnYnDvqZ.js} +2 -2
- package/package.json +9 -9
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { a as __require, t as __commonJSMin } from "./chunk-DwxmvJxx.js";
|
|
2
2
|
import { t as require_lib$3 } from "./lib-COpZ8-nd.js";
|
|
3
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
3
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/configs/rules.js
|
|
4
4
|
var require_rules$2 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.rules = void 0;
|
|
@@ -28,7 +28,7 @@ var require_rules$2 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
28
28
|
};
|
|
29
29
|
}));
|
|
30
30
|
//#endregion
|
|
31
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
31
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/configs/recommended.js
|
|
32
32
|
var require_recommended$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
33
33
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
34
34
|
const rules_1 = require_rules$2();
|
|
@@ -47,7 +47,7 @@ var require_recommended$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
47
47
|
};
|
|
48
48
|
}));
|
|
49
49
|
//#endregion
|
|
50
|
-
//#region ../../node_modules/.pnpm/globals@17.
|
|
50
|
+
//#region ../../node_modules/.pnpm/globals@17.6.0/node_modules/globals/globals.json
|
|
51
51
|
var require_globals$2 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
52
52
|
module.exports = {
|
|
53
53
|
"amd": {
|
|
@@ -1260,9 +1260,13 @@ var require_globals$2 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
1260
1260
|
"XRAnchorSet": false,
|
|
1261
1261
|
"XRBoundedReferenceSpace": false,
|
|
1262
1262
|
"XRCamera": false,
|
|
1263
|
+
"XRCompositionLayer": false,
|
|
1263
1264
|
"XRCPUDepthInformation": false,
|
|
1265
|
+
"XRCubeLayer": false,
|
|
1266
|
+
"XRCylinderLayer": false,
|
|
1264
1267
|
"XRDepthInformation": false,
|
|
1265
1268
|
"XRDOMOverlayState": false,
|
|
1269
|
+
"XREquirectLayer": false,
|
|
1266
1270
|
"XRFrame": false,
|
|
1267
1271
|
"XRHand": false,
|
|
1268
1272
|
"XRHitTestResult": false,
|
|
@@ -1274,9 +1278,14 @@ var require_globals$2 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
1274
1278
|
"XRJointPose": false,
|
|
1275
1279
|
"XRJointSpace": false,
|
|
1276
1280
|
"XRLayer": false,
|
|
1281
|
+
"XRLayerEvent": false,
|
|
1277
1282
|
"XRLightEstimate": false,
|
|
1278
1283
|
"XRLightProbe": false,
|
|
1284
|
+
"XRPlane": false,
|
|
1285
|
+
"XRPlaneSet": false,
|
|
1279
1286
|
"XRPose": false,
|
|
1287
|
+
"XRProjectionLayer": false,
|
|
1288
|
+
"XRQuadLayer": false,
|
|
1280
1289
|
"XRRay": false,
|
|
1281
1290
|
"XRReferenceSpace": false,
|
|
1282
1291
|
"XRReferenceSpaceEvent": false,
|
|
@@ -1285,6 +1294,7 @@ var require_globals$2 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
1285
1294
|
"XRSession": false,
|
|
1286
1295
|
"XRSessionEvent": false,
|
|
1287
1296
|
"XRSpace": false,
|
|
1297
|
+
"XRSubImage": false,
|
|
1288
1298
|
"XRSystem": false,
|
|
1289
1299
|
"XRTransientInputHitTestResult": false,
|
|
1290
1300
|
"XRTransientInputHitTestSource": false,
|
|
@@ -1295,6 +1305,7 @@ var require_globals$2 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
1295
1305
|
"XRWebGLBinding": false,
|
|
1296
1306
|
"XRWebGLDepthInformation": false,
|
|
1297
1307
|
"XRWebGLLayer": false,
|
|
1308
|
+
"XRWebGLSubImage": false,
|
|
1298
1309
|
"XSLTProcessor": false
|
|
1299
1310
|
},
|
|
1300
1311
|
"builtin": {
|
|
@@ -4142,7 +4153,7 @@ var require_globals$2 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
4142
4153
|
};
|
|
4143
4154
|
}));
|
|
4144
4155
|
//#endregion
|
|
4145
|
-
//#region ../../node_modules/.pnpm/globals@17.
|
|
4156
|
+
//#region ../../node_modules/.pnpm/globals@17.6.0/node_modules/globals/index.js
|
|
4146
4157
|
var require_globals$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
4147
4158
|
module.exports = require_globals$2();
|
|
4148
4159
|
}));
|
|
@@ -5806,8 +5817,8 @@ var require_esrecurse = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
5806
5817
|
})();
|
|
5807
5818
|
}));
|
|
5808
5819
|
//#endregion
|
|
5809
|
-
//#region ../../node_modules/.pnpm/eslint-scope@9.1.
|
|
5810
|
-
var require_eslint_scope
|
|
5820
|
+
//#region ../../node_modules/.pnpm/eslint-scope@9.1.2/node_modules/eslint-scope/dist/eslint-scope.cjs
|
|
5821
|
+
var require_eslint_scope = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
5811
5822
|
var estraverse = require_estraverse();
|
|
5812
5823
|
var esrecurse = require_esrecurse();
|
|
5813
5824
|
/**
|
|
@@ -7179,7 +7190,7 @@ var require_eslint_scope$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
7179
7190
|
return scopeManager;
|
|
7180
7191
|
}
|
|
7181
7192
|
/** @name module:escope.version */
|
|
7182
|
-
const version = "9.1.
|
|
7193
|
+
const version = "9.1.2";
|
|
7183
7194
|
exports.Definition = Definition;
|
|
7184
7195
|
exports.PatternVisitor = PatternVisitor;
|
|
7185
7196
|
exports.Reference = Reference;
|
|
@@ -7191,7 +7202,7 @@ var require_eslint_scope$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
7191
7202
|
exports.version = version;
|
|
7192
7203
|
}));
|
|
7193
7204
|
//#endregion
|
|
7194
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7205
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/internal/constants.js
|
|
7195
7206
|
var require_constants = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7196
7207
|
const SEMVER_SPEC_VERSION = "2.0.0";
|
|
7197
7208
|
const MAX_LENGTH = 256;
|
|
@@ -7216,12 +7227,12 @@ var require_constants = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
7216
7227
|
};
|
|
7217
7228
|
}));
|
|
7218
7229
|
//#endregion
|
|
7219
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7230
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/internal/debug.js
|
|
7220
7231
|
var require_debug = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7221
7232
|
module.exports = typeof process === "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? (...args) => console.error("SEMVER", ...args) : () => {};
|
|
7222
7233
|
}));
|
|
7223
7234
|
//#endregion
|
|
7224
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7235
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/internal/re.js
|
|
7225
7236
|
var require_re = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7226
7237
|
const { MAX_SAFE_COMPONENT_LENGTH, MAX_SAFE_BUILD_LENGTH, MAX_LENGTH } = require_constants();
|
|
7227
7238
|
const debug = require_debug();
|
|
@@ -7300,7 +7311,7 @@ var require_re = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
7300
7311
|
createToken("GTE0PRE", "^\\s*>=\\s*0\\.0\\.0-0\\s*$");
|
|
7301
7312
|
}));
|
|
7302
7313
|
//#endregion
|
|
7303
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7314
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/internal/parse-options.js
|
|
7304
7315
|
var require_parse_options = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7305
7316
|
const looseOption = Object.freeze({ loose: true });
|
|
7306
7317
|
const emptyOpts = Object.freeze({});
|
|
@@ -7312,7 +7323,7 @@ var require_parse_options = /* @__PURE__ */ __commonJSMin(((exports, module) =>
|
|
|
7312
7323
|
module.exports = parseOptions;
|
|
7313
7324
|
}));
|
|
7314
7325
|
//#endregion
|
|
7315
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7326
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/internal/identifiers.js
|
|
7316
7327
|
var require_identifiers = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7317
7328
|
const numeric = /^[0-9]+$/;
|
|
7318
7329
|
const compareIdentifiers = (a, b) => {
|
|
@@ -7332,7 +7343,7 @@ var require_identifiers = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
7332
7343
|
};
|
|
7333
7344
|
}));
|
|
7334
7345
|
//#endregion
|
|
7335
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7346
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/classes/semver.js
|
|
7336
7347
|
var require_semver$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7337
7348
|
const debug = require_debug();
|
|
7338
7349
|
const { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants();
|
|
@@ -7510,7 +7521,7 @@ var require_semver$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
7510
7521
|
};
|
|
7511
7522
|
}));
|
|
7512
7523
|
//#endregion
|
|
7513
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7524
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/parse.js
|
|
7514
7525
|
var require_parse = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7515
7526
|
const SemVer = require_semver$1();
|
|
7516
7527
|
const parse = (version, options, throwErrors = false) => {
|
|
@@ -7525,7 +7536,7 @@ var require_parse = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
7525
7536
|
module.exports = parse;
|
|
7526
7537
|
}));
|
|
7527
7538
|
//#endregion
|
|
7528
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7539
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/valid.js
|
|
7529
7540
|
var require_valid$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7530
7541
|
const parse = require_parse();
|
|
7531
7542
|
const valid = (version, options) => {
|
|
@@ -7535,7 +7546,7 @@ var require_valid$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
7535
7546
|
module.exports = valid;
|
|
7536
7547
|
}));
|
|
7537
7548
|
//#endregion
|
|
7538
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7549
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/clean.js
|
|
7539
7550
|
var require_clean = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7540
7551
|
const parse = require_parse();
|
|
7541
7552
|
const clean = (version, options) => {
|
|
@@ -7545,7 +7556,7 @@ var require_clean = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
7545
7556
|
module.exports = clean;
|
|
7546
7557
|
}));
|
|
7547
7558
|
//#endregion
|
|
7548
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7559
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/inc.js
|
|
7549
7560
|
var require_inc = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7550
7561
|
const SemVer = require_semver$1();
|
|
7551
7562
|
const inc = (version, release, options, identifier, identifierBase) => {
|
|
@@ -7563,7 +7574,7 @@ var require_inc = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
7563
7574
|
module.exports = inc;
|
|
7564
7575
|
}));
|
|
7565
7576
|
//#endregion
|
|
7566
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7577
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/diff.js
|
|
7567
7578
|
var require_diff = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7568
7579
|
const parse = require_parse();
|
|
7569
7580
|
const diff = (version1, version2) => {
|
|
@@ -7591,28 +7602,28 @@ var require_diff = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
7591
7602
|
module.exports = diff;
|
|
7592
7603
|
}));
|
|
7593
7604
|
//#endregion
|
|
7594
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7605
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/major.js
|
|
7595
7606
|
var require_major = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7596
7607
|
const SemVer = require_semver$1();
|
|
7597
7608
|
const major = (a, loose) => new SemVer(a, loose).major;
|
|
7598
7609
|
module.exports = major;
|
|
7599
7610
|
}));
|
|
7600
7611
|
//#endregion
|
|
7601
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7612
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/minor.js
|
|
7602
7613
|
var require_minor = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7603
7614
|
const SemVer = require_semver$1();
|
|
7604
7615
|
const minor = (a, loose) => new SemVer(a, loose).minor;
|
|
7605
7616
|
module.exports = minor;
|
|
7606
7617
|
}));
|
|
7607
7618
|
//#endregion
|
|
7608
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7619
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/patch.js
|
|
7609
7620
|
var require_patch = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7610
7621
|
const SemVer = require_semver$1();
|
|
7611
7622
|
const patch = (a, loose) => new SemVer(a, loose).patch;
|
|
7612
7623
|
module.exports = patch;
|
|
7613
7624
|
}));
|
|
7614
7625
|
//#endregion
|
|
7615
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7626
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/prerelease.js
|
|
7616
7627
|
var require_prerelease = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7617
7628
|
const parse = require_parse();
|
|
7618
7629
|
const prerelease = (version, options) => {
|
|
@@ -7622,28 +7633,28 @@ var require_prerelease = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
7622
7633
|
module.exports = prerelease;
|
|
7623
7634
|
}));
|
|
7624
7635
|
//#endregion
|
|
7625
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7636
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/compare.js
|
|
7626
7637
|
var require_compare = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7627
7638
|
const SemVer = require_semver$1();
|
|
7628
7639
|
const compare = (a, b, loose) => new SemVer(a, loose).compare(new SemVer(b, loose));
|
|
7629
7640
|
module.exports = compare;
|
|
7630
7641
|
}));
|
|
7631
7642
|
//#endregion
|
|
7632
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7643
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/rcompare.js
|
|
7633
7644
|
var require_rcompare = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7634
7645
|
const compare = require_compare();
|
|
7635
7646
|
const rcompare = (a, b, loose) => compare(b, a, loose);
|
|
7636
7647
|
module.exports = rcompare;
|
|
7637
7648
|
}));
|
|
7638
7649
|
//#endregion
|
|
7639
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7650
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/compare-loose.js
|
|
7640
7651
|
var require_compare_loose = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7641
7652
|
const compare = require_compare();
|
|
7642
7653
|
const compareLoose = (a, b) => compare(a, b, true);
|
|
7643
7654
|
module.exports = compareLoose;
|
|
7644
7655
|
}));
|
|
7645
7656
|
//#endregion
|
|
7646
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7657
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/compare-build.js
|
|
7647
7658
|
var require_compare_build = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7648
7659
|
const SemVer = require_semver$1();
|
|
7649
7660
|
const compareBuild = (a, b, loose) => {
|
|
@@ -7654,63 +7665,63 @@ var require_compare_build = /* @__PURE__ */ __commonJSMin(((exports, module) =>
|
|
|
7654
7665
|
module.exports = compareBuild;
|
|
7655
7666
|
}));
|
|
7656
7667
|
//#endregion
|
|
7657
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7668
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/sort.js
|
|
7658
7669
|
var require_sort = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7659
7670
|
const compareBuild = require_compare_build();
|
|
7660
7671
|
const sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose));
|
|
7661
7672
|
module.exports = sort;
|
|
7662
7673
|
}));
|
|
7663
7674
|
//#endregion
|
|
7664
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7675
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/rsort.js
|
|
7665
7676
|
var require_rsort = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7666
7677
|
const compareBuild = require_compare_build();
|
|
7667
7678
|
const rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose));
|
|
7668
7679
|
module.exports = rsort;
|
|
7669
7680
|
}));
|
|
7670
7681
|
//#endregion
|
|
7671
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7682
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/gt.js
|
|
7672
7683
|
var require_gt = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7673
7684
|
const compare = require_compare();
|
|
7674
7685
|
const gt = (a, b, loose) => compare(a, b, loose) > 0;
|
|
7675
7686
|
module.exports = gt;
|
|
7676
7687
|
}));
|
|
7677
7688
|
//#endregion
|
|
7678
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7689
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/lt.js
|
|
7679
7690
|
var require_lt = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7680
7691
|
const compare = require_compare();
|
|
7681
7692
|
const lt = (a, b, loose) => compare(a, b, loose) < 0;
|
|
7682
7693
|
module.exports = lt;
|
|
7683
7694
|
}));
|
|
7684
7695
|
//#endregion
|
|
7685
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7696
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/eq.js
|
|
7686
7697
|
var require_eq = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7687
7698
|
const compare = require_compare();
|
|
7688
7699
|
const eq = (a, b, loose) => compare(a, b, loose) === 0;
|
|
7689
7700
|
module.exports = eq;
|
|
7690
7701
|
}));
|
|
7691
7702
|
//#endregion
|
|
7692
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7703
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/neq.js
|
|
7693
7704
|
var require_neq = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7694
7705
|
const compare = require_compare();
|
|
7695
7706
|
const neq = (a, b, loose) => compare(a, b, loose) !== 0;
|
|
7696
7707
|
module.exports = neq;
|
|
7697
7708
|
}));
|
|
7698
7709
|
//#endregion
|
|
7699
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7710
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/gte.js
|
|
7700
7711
|
var require_gte = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7701
7712
|
const compare = require_compare();
|
|
7702
7713
|
const gte = (a, b, loose) => compare(a, b, loose) >= 0;
|
|
7703
7714
|
module.exports = gte;
|
|
7704
7715
|
}));
|
|
7705
7716
|
//#endregion
|
|
7706
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7717
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/lte.js
|
|
7707
7718
|
var require_lte = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7708
7719
|
const compare = require_compare();
|
|
7709
7720
|
const lte = (a, b, loose) => compare(a, b, loose) <= 0;
|
|
7710
7721
|
module.exports = lte;
|
|
7711
7722
|
}));
|
|
7712
7723
|
//#endregion
|
|
7713
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7724
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/cmp.js
|
|
7714
7725
|
var require_cmp = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7715
7726
|
const eq = require_eq();
|
|
7716
7727
|
const neq = require_neq();
|
|
@@ -7742,7 +7753,7 @@ var require_cmp = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
7742
7753
|
module.exports = cmp;
|
|
7743
7754
|
}));
|
|
7744
7755
|
//#endregion
|
|
7745
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7756
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/coerce.js
|
|
7746
7757
|
var require_coerce = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7747
7758
|
const SemVer = require_semver$1();
|
|
7748
7759
|
const parse = require_parse();
|
|
@@ -7770,7 +7781,40 @@ var require_coerce = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
7770
7781
|
module.exports = coerce;
|
|
7771
7782
|
}));
|
|
7772
7783
|
//#endregion
|
|
7773
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7784
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/truncate.js
|
|
7785
|
+
var require_truncate = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7786
|
+
const parse = require_parse();
|
|
7787
|
+
const constants = require_constants();
|
|
7788
|
+
const SemVer = require_semver$1();
|
|
7789
|
+
const truncate = (version, truncation, options) => {
|
|
7790
|
+
if (!constants.RELEASE_TYPES.includes(truncation)) return null;
|
|
7791
|
+
const clonedVersion = cloneInputVersion(version, options);
|
|
7792
|
+
return clonedVersion && doTruncation(clonedVersion, truncation);
|
|
7793
|
+
};
|
|
7794
|
+
const cloneInputVersion = (version, options) => {
|
|
7795
|
+
return parse(version instanceof SemVer ? version.version : version, options);
|
|
7796
|
+
};
|
|
7797
|
+
const doTruncation = (version, truncation) => {
|
|
7798
|
+
if (isPrerelease(truncation)) return version.version;
|
|
7799
|
+
version.prerelease = [];
|
|
7800
|
+
switch (truncation) {
|
|
7801
|
+
case "major":
|
|
7802
|
+
version.minor = 0;
|
|
7803
|
+
version.patch = 0;
|
|
7804
|
+
break;
|
|
7805
|
+
case "minor":
|
|
7806
|
+
version.patch = 0;
|
|
7807
|
+
break;
|
|
7808
|
+
}
|
|
7809
|
+
return version.format();
|
|
7810
|
+
};
|
|
7811
|
+
const isPrerelease = (type) => {
|
|
7812
|
+
return type.startsWith("pre");
|
|
7813
|
+
};
|
|
7814
|
+
module.exports = truncate;
|
|
7815
|
+
}));
|
|
7816
|
+
//#endregion
|
|
7817
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/internal/lrucache.js
|
|
7774
7818
|
var require_lrucache = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7775
7819
|
var LRUCache = class {
|
|
7776
7820
|
constructor() {
|
|
@@ -7803,7 +7847,7 @@ var require_lrucache = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
7803
7847
|
module.exports = LRUCache;
|
|
7804
7848
|
}));
|
|
7805
7849
|
//#endregion
|
|
7806
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
7850
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/classes/range.js
|
|
7807
7851
|
var require_range = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
7808
7852
|
const SPACE_CHARACTERS = /\s+/g;
|
|
7809
7853
|
module.exports = class Range {
|
|
@@ -8075,7 +8119,7 @@ var require_range = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
8075
8119
|
};
|
|
8076
8120
|
}));
|
|
8077
8121
|
//#endregion
|
|
8078
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
8122
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/classes/comparator.js
|
|
8079
8123
|
var require_comparator = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
8080
8124
|
const ANY = Symbol("SemVer ANY");
|
|
8081
8125
|
module.exports = class Comparator {
|
|
@@ -8145,7 +8189,7 @@ var require_comparator = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
8145
8189
|
const Range = require_range();
|
|
8146
8190
|
}));
|
|
8147
8191
|
//#endregion
|
|
8148
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
8192
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/functions/satisfies.js
|
|
8149
8193
|
var require_satisfies = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
8150
8194
|
const Range = require_range();
|
|
8151
8195
|
const satisfies = (version, range, options) => {
|
|
@@ -8159,14 +8203,14 @@ var require_satisfies = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
8159
8203
|
module.exports = satisfies;
|
|
8160
8204
|
}));
|
|
8161
8205
|
//#endregion
|
|
8162
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
8206
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/ranges/to-comparators.js
|
|
8163
8207
|
var require_to_comparators = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
8164
8208
|
const Range = require_range();
|
|
8165
8209
|
const toComparators = (range, options) => new Range(range, options).set.map((comp) => comp.map((c) => c.value).join(" ").trim().split(" "));
|
|
8166
8210
|
module.exports = toComparators;
|
|
8167
8211
|
}));
|
|
8168
8212
|
//#endregion
|
|
8169
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
8213
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/ranges/max-satisfying.js
|
|
8170
8214
|
var require_max_satisfying = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
8171
8215
|
const SemVer = require_semver$1();
|
|
8172
8216
|
const Range = require_range();
|
|
@@ -8192,7 +8236,7 @@ var require_max_satisfying = /* @__PURE__ */ __commonJSMin(((exports, module) =>
|
|
|
8192
8236
|
module.exports = maxSatisfying;
|
|
8193
8237
|
}));
|
|
8194
8238
|
//#endregion
|
|
8195
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
8239
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/ranges/min-satisfying.js
|
|
8196
8240
|
var require_min_satisfying = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
8197
8241
|
const SemVer = require_semver$1();
|
|
8198
8242
|
const Range = require_range();
|
|
@@ -8218,7 +8262,7 @@ var require_min_satisfying = /* @__PURE__ */ __commonJSMin(((exports, module) =>
|
|
|
8218
8262
|
module.exports = minSatisfying;
|
|
8219
8263
|
}));
|
|
8220
8264
|
//#endregion
|
|
8221
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
8265
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/ranges/min-version.js
|
|
8222
8266
|
var require_min_version = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
8223
8267
|
const SemVer = require_semver$1();
|
|
8224
8268
|
const Range = require_range();
|
|
@@ -8258,7 +8302,7 @@ var require_min_version = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
8258
8302
|
module.exports = minVersion;
|
|
8259
8303
|
}));
|
|
8260
8304
|
//#endregion
|
|
8261
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
8305
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/ranges/valid.js
|
|
8262
8306
|
var require_valid = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
8263
8307
|
const Range = require_range();
|
|
8264
8308
|
const validRange = (range, options) => {
|
|
@@ -8271,7 +8315,7 @@ var require_valid = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
8271
8315
|
module.exports = validRange;
|
|
8272
8316
|
}));
|
|
8273
8317
|
//#endregion
|
|
8274
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
8318
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/ranges/outside.js
|
|
8275
8319
|
var require_outside = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
8276
8320
|
const SemVer = require_semver$1();
|
|
8277
8321
|
const Comparator = require_comparator();
|
|
@@ -8324,21 +8368,21 @@ var require_outside = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
8324
8368
|
module.exports = outside;
|
|
8325
8369
|
}));
|
|
8326
8370
|
//#endregion
|
|
8327
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
8371
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/ranges/gtr.js
|
|
8328
8372
|
var require_gtr = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
8329
8373
|
const outside = require_outside();
|
|
8330
8374
|
const gtr = (version, range, options) => outside(version, range, ">", options);
|
|
8331
8375
|
module.exports = gtr;
|
|
8332
8376
|
}));
|
|
8333
8377
|
//#endregion
|
|
8334
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
8378
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/ranges/ltr.js
|
|
8335
8379
|
var require_ltr = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
8336
8380
|
const outside = require_outside();
|
|
8337
8381
|
const ltr = (version, range, options) => outside(version, range, "<", options);
|
|
8338
8382
|
module.exports = ltr;
|
|
8339
8383
|
}));
|
|
8340
8384
|
//#endregion
|
|
8341
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
8385
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/ranges/intersects.js
|
|
8342
8386
|
var require_intersects = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
8343
8387
|
const Range = require_range();
|
|
8344
8388
|
const intersects = (r1, r2, options) => {
|
|
@@ -8349,7 +8393,7 @@ var require_intersects = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
8349
8393
|
module.exports = intersects;
|
|
8350
8394
|
}));
|
|
8351
8395
|
//#endregion
|
|
8352
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
8396
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/ranges/simplify.js
|
|
8353
8397
|
var require_simplify = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
8354
8398
|
const satisfies = require_satisfies();
|
|
8355
8399
|
const compare = require_compare();
|
|
@@ -8379,7 +8423,7 @@ var require_simplify = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
8379
8423
|
};
|
|
8380
8424
|
}));
|
|
8381
8425
|
//#endregion
|
|
8382
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
8426
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/ranges/subset.js
|
|
8383
8427
|
var require_subset = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
8384
8428
|
const Range = require_range();
|
|
8385
8429
|
const Comparator = require_comparator();
|
|
@@ -8474,7 +8518,7 @@ var require_subset = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
8474
8518
|
module.exports = subset;
|
|
8475
8519
|
}));
|
|
8476
8520
|
//#endregion
|
|
8477
|
-
//#region ../../node_modules/.pnpm/semver@7.
|
|
8521
|
+
//#region ../../node_modules/.pnpm/semver@7.8.0/node_modules/semver/index.js
|
|
8478
8522
|
var require_semver = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
8479
8523
|
const internalRe = require_re();
|
|
8480
8524
|
const constants = require_constants();
|
|
@@ -8504,6 +8548,7 @@ var require_semver = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
8504
8548
|
lte: require_lte(),
|
|
8505
8549
|
cmp: require_cmp(),
|
|
8506
8550
|
coerce: require_coerce(),
|
|
8551
|
+
truncate: require_truncate(),
|
|
8507
8552
|
Comparator: require_comparator(),
|
|
8508
8553
|
Range: require_range(),
|
|
8509
8554
|
satisfies: require_satisfies(),
|
|
@@ -14253,8 +14298,8 @@ var require_acorn_jsx = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
14253
14298
|
}
|
|
14254
14299
|
}));
|
|
14255
14300
|
//#endregion
|
|
14256
|
-
//#region ../../node_modules/.pnpm/espree@11.
|
|
14257
|
-
var require_espree
|
|
14301
|
+
//#region ../../node_modules/.pnpm/espree@11.2.0/node_modules/espree/dist/espree.cjs
|
|
14302
|
+
var require_espree = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
14258
14303
|
var acorn = require_acorn();
|
|
14259
14304
|
var jsx = require_acorn_jsx();
|
|
14260
14305
|
var eslintVisitorKeys = require_eslint_visitor_keys$1();
|
|
@@ -14522,17 +14567,16 @@ var require_espree$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
14522
14567
|
* Normalize sourceType from the initial config
|
|
14523
14568
|
* @param {string} sourceType to normalize
|
|
14524
14569
|
* @throws {Error} throw an error if sourceType is invalid
|
|
14525
|
-
* @returns {"script"|"module"} normalized sourceType
|
|
14570
|
+
* @returns {"script"|"module"|"commonjs"} normalized sourceType
|
|
14526
14571
|
*/
|
|
14527
14572
|
function normalizeSourceType(sourceType = "script") {
|
|
14528
|
-
if (sourceType === "script" || sourceType === "module") return sourceType;
|
|
14529
|
-
if (sourceType === "commonjs") return "script";
|
|
14573
|
+
if (sourceType === "script" || sourceType === "module" || sourceType === "commonjs") return sourceType;
|
|
14530
14574
|
throw new Error("Invalid sourceType.");
|
|
14531
14575
|
}
|
|
14532
14576
|
/**
|
|
14533
14577
|
* @typedef {{
|
|
14534
14578
|
* ecmaVersion: NormalizedEcmaVersion,
|
|
14535
|
-
* sourceType: "script"|"module",
|
|
14579
|
+
* sourceType: "script"|"module"|"commonjs",
|
|
14536
14580
|
* range?: boolean,
|
|
14537
14581
|
* loc?: boolean,
|
|
14538
14582
|
* allowReserved: boolean | "never",
|
|
@@ -15057,7 +15101,7 @@ var require_espree$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
15057
15101
|
return new (parsers.get(options))(options, code).parse();
|
|
15058
15102
|
}
|
|
15059
15103
|
/** @type {string} */
|
|
15060
|
-
const version = "11.
|
|
15104
|
+
const version = "11.2.0";
|
|
15061
15105
|
const name = "espree";
|
|
15062
15106
|
const Syntax = /* @__PURE__ */ (function() {
|
|
15063
15107
|
let key, types = {};
|
|
@@ -16978,1397 +17022,568 @@ var require_utils$3 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
16978
17022
|
})();
|
|
16979
17023
|
}));
|
|
16980
17024
|
//#endregion
|
|
16981
|
-
//#region ../../node_modules/.pnpm/
|
|
16982
|
-
var
|
|
16983
|
-
|
|
16984
|
-
|
|
16985
|
-
|
|
16986
|
-
function _interopNamespaceDefault(e) {
|
|
16987
|
-
var n = Object.create(null);
|
|
16988
|
-
if (e) Object.keys(e).forEach(function(k) {
|
|
16989
|
-
if (k !== "default") {
|
|
16990
|
-
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
16991
|
-
Object.defineProperty(n, k, d.get ? d : {
|
|
16992
|
-
enumerable: true,
|
|
16993
|
-
get: function() {
|
|
16994
|
-
return e[k];
|
|
16995
|
-
}
|
|
16996
|
-
});
|
|
16997
|
-
}
|
|
16998
|
-
});
|
|
16999
|
-
n.default = e;
|
|
17000
|
-
return Object.freeze(n);
|
|
17001
|
-
}
|
|
17002
|
-
var acorn__namespace = /* @__PURE__ */ _interopNamespaceDefault(acorn);
|
|
17003
|
-
/**
|
|
17004
|
-
* @fileoverview Translates tokens between Acorn format and Esprima format.
|
|
17005
|
-
* @author Nicholas C. Zakas
|
|
17006
|
-
*/
|
|
17007
|
-
/**
|
|
17008
|
-
* @import * as acorn from "acorn";
|
|
17009
|
-
* @import { EnhancedTokTypes } from "./espree.js"
|
|
17010
|
-
* @import { NormalizedEcmaVersion } from "./options.js";
|
|
17011
|
-
* @import { EspreeToken as EsprimaToken } from "../espree.js";
|
|
17012
|
-
*/
|
|
17013
|
-
/**
|
|
17014
|
-
* Based on the `acorn.Token` class, but without a fixed `type` (since we need
|
|
17015
|
-
* it to be a string). Avoiding `type` lets us make one extending interface
|
|
17016
|
-
* more strict and another more lax.
|
|
17017
|
-
*
|
|
17018
|
-
* We could make `value` more strict to `string` even though the original is
|
|
17019
|
-
* `any`.
|
|
17020
|
-
*
|
|
17021
|
-
* `start` and `end` are required in `acorn.Token`
|
|
17022
|
-
*
|
|
17023
|
-
* `loc` and `range` are from `acorn.Token`
|
|
17024
|
-
*
|
|
17025
|
-
* Adds `regex`.
|
|
17026
|
-
*/
|
|
17027
|
-
/**
|
|
17028
|
-
* @typedef {{
|
|
17029
|
-
* jsxAttrValueToken: boolean;
|
|
17030
|
-
* ecmaVersion: NormalizedEcmaVersion;
|
|
17031
|
-
* }} ExtraNoTokens
|
|
17032
|
-
* @typedef {{
|
|
17033
|
-
* tokens: EsprimaToken[]
|
|
17034
|
-
* } & ExtraNoTokens} Extra
|
|
17035
|
-
*/
|
|
17036
|
-
const Token = {
|
|
17037
|
-
Boolean: "Boolean",
|
|
17038
|
-
EOF: "<end>",
|
|
17039
|
-
Identifier: "Identifier",
|
|
17040
|
-
PrivateIdentifier: "PrivateIdentifier",
|
|
17041
|
-
Keyword: "Keyword",
|
|
17042
|
-
Null: "Null",
|
|
17043
|
-
Numeric: "Numeric",
|
|
17044
|
-
Punctuator: "Punctuator",
|
|
17045
|
-
String: "String",
|
|
17046
|
-
RegularExpression: "RegularExpression",
|
|
17047
|
-
Template: "Template",
|
|
17048
|
-
JSXIdentifier: "JSXIdentifier",
|
|
17049
|
-
JSXText: "JSXText"
|
|
17025
|
+
//#region ../../node_modules/.pnpm/escape-string-regexp@4.0.0/node_modules/escape-string-regexp/index.js
|
|
17026
|
+
var require_escape_string_regexp = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
17027
|
+
module.exports = (string) => {
|
|
17028
|
+
if (typeof string !== "string") throw new TypeError("Expected a string");
|
|
17029
|
+
return string.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d");
|
|
17050
17030
|
};
|
|
17031
|
+
}));
|
|
17032
|
+
//#endregion
|
|
17033
|
+
//#region ../../node_modules/.pnpm/eslint@10.3.0_jiti@2.7.0/node_modules/eslint/lib/shared/ast-utils.js
|
|
17034
|
+
/**
|
|
17035
|
+
* @fileoverview Common utils for AST.
|
|
17036
|
+
*
|
|
17037
|
+
* This file contains only shared items for core and rules.
|
|
17038
|
+
* If you make a utility for rules, please see `../rules/utils/ast-utils.js`.
|
|
17039
|
+
*
|
|
17040
|
+
* @author Toru Nagashima <https://github.com/mysticatea>
|
|
17041
|
+
*/
|
|
17042
|
+
var require_ast_utils$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
17043
|
+
const breakableTypePattern = /^(?:(?:Do)?While|For(?:In|Of)?|Switch)Statement$/u;
|
|
17044
|
+
const lineBreakPattern = /\r\n|[\r\n\u2028\u2029]/u;
|
|
17045
|
+
const shebangPattern = /^#!([^\r\n]+)/u;
|
|
17051
17046
|
/**
|
|
17052
|
-
*
|
|
17053
|
-
*
|
|
17054
|
-
* @
|
|
17055
|
-
* @returns {EsprimaToken} The Esprima equivalent of the template token.
|
|
17056
|
-
* @private
|
|
17047
|
+
* Creates a version of the `lineBreakPattern` regex with the global flag.
|
|
17048
|
+
* Global regexes are mutable, so this needs to be a function instead of a constant.
|
|
17049
|
+
* @returns {RegExp} A global regular expression that matches line terminators
|
|
17057
17050
|
*/
|
|
17058
|
-
function
|
|
17059
|
-
|
|
17060
|
-
/** @type {EsprimaToken} */
|
|
17061
|
-
const token = {
|
|
17062
|
-
type: Token.Template,
|
|
17063
|
-
value: code.slice(firstToken.start, lastTemplateToken.end)
|
|
17064
|
-
};
|
|
17065
|
-
if (firstToken.loc) token.loc = {
|
|
17066
|
-
start: firstToken.loc.start,
|
|
17067
|
-
end: lastTemplateToken.loc.end
|
|
17068
|
-
};
|
|
17069
|
-
if (firstToken.range) {
|
|
17070
|
-
token.start = firstToken.range[0];
|
|
17071
|
-
token.end = lastTemplateToken.range[1];
|
|
17072
|
-
token.range = [token.start, token.end];
|
|
17073
|
-
}
|
|
17074
|
-
return token;
|
|
17051
|
+
function createGlobalLinebreakMatcher() {
|
|
17052
|
+
return new RegExp(lineBreakPattern.source, "gu");
|
|
17075
17053
|
}
|
|
17076
|
-
|
|
17077
|
-
|
|
17078
|
-
|
|
17079
|
-
|
|
17080
|
-
|
|
17081
|
-
|
|
17082
|
-
|
|
17083
|
-
|
|
17084
|
-
|
|
17085
|
-
|
|
17086
|
-
|
|
17087
|
-
|
|
17088
|
-
|
|
17089
|
-
|
|
17090
|
-
|
|
17091
|
-
|
|
17092
|
-
|
|
17093
|
-
|
|
17094
|
-
|
|
17095
|
-
|
|
17096
|
-
|
|
17097
|
-
|
|
17098
|
-
|
|
17099
|
-
|
|
17100
|
-
|
|
17101
|
-
|
|
17102
|
-
|
|
17103
|
-
|
|
17104
|
-
|
|
17105
|
-
|
|
17106
|
-
|
|
17107
|
-
|
|
17108
|
-
|
|
17109
|
-
|
|
17110
|
-
|
|
17111
|
-
|
|
17112
|
-
|
|
17113
|
-
|
|
17114
|
-
|
|
17115
|
-
|
|
17116
|
-
|
|
17117
|
-
|
|
17118
|
-
|
|
17119
|
-
|
|
17120
|
-
|
|
17121
|
-
|
|
17122
|
-
|
|
17123
|
-
|
|
17124
|
-
|
|
17125
|
-
|
|
17126
|
-
|
|
17127
|
-
|
|
17128
|
-
|
|
17129
|
-
|
|
17130
|
-
|
|
17131
|
-
|
|
17132
|
-
|
|
17133
|
-
|
|
17134
|
-
|
|
17135
|
-
|
|
17136
|
-
|
|
17137
|
-
|
|
17138
|
-
|
|
17139
|
-
|
|
17140
|
-
|
|
17141
|
-
|
|
17142
|
-
|
|
17143
|
-
|
|
17144
|
-
|
|
17145
|
-
|
|
17146
|
-
|
|
17147
|
-
|
|
17148
|
-
|
|
17149
|
-
|
|
17150
|
-
|
|
17151
|
-
|
|
17152
|
-
|
|
17153
|
-
|
|
17154
|
-
|
|
17155
|
-
|
|
17156
|
-
|
|
17157
|
-
|
|
17158
|
-
|
|
17159
|
-
|
|
17160
|
-
|
|
17161
|
-
|
|
17162
|
-
|
|
17163
|
-
|
|
17164
|
-
|
|
17165
|
-
|
|
17166
|
-
|
|
17167
|
-
|
|
17168
|
-
|
|
17169
|
-
|
|
17170
|
-
|
|
17171
|
-
|
|
17172
|
-
|
|
17173
|
-
|
|
17174
|
-
|
|
17175
|
-
|
|
17176
|
-
|
|
17177
|
-
|
|
17178
|
-
|
|
17179
|
-
|
|
17180
|
-
|
|
17181
|
-
|
|
17182
|
-
|
|
17183
|
-
|
|
17184
|
-
|
|
17185
|
-
|
|
17186
|
-
|
|
17187
|
-
|
|
17188
|
-
|
|
17189
|
-
|
|
17054
|
+
module.exports = {
|
|
17055
|
+
breakableTypePattern,
|
|
17056
|
+
lineBreakPattern,
|
|
17057
|
+
createGlobalLinebreakMatcher,
|
|
17058
|
+
shebangPattern
|
|
17059
|
+
};
|
|
17060
|
+
}));
|
|
17061
|
+
//#endregion
|
|
17062
|
+
//#region ../../node_modules/.pnpm/eslint@10.3.0_jiti@2.7.0/node_modules/eslint/conf/globals.js
|
|
17063
|
+
/**
|
|
17064
|
+
* @fileoverview Globals for ecmaVersion/sourceType
|
|
17065
|
+
* @author Nicholas C. Zakas
|
|
17066
|
+
*/
|
|
17067
|
+
var require_globals = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
17068
|
+
const commonjs = {
|
|
17069
|
+
exports: true,
|
|
17070
|
+
global: false,
|
|
17071
|
+
module: false,
|
|
17072
|
+
require: false
|
|
17073
|
+
};
|
|
17074
|
+
const es3 = {
|
|
17075
|
+
Array: false,
|
|
17076
|
+
Boolean: false,
|
|
17077
|
+
constructor: false,
|
|
17078
|
+
Date: false,
|
|
17079
|
+
decodeURI: false,
|
|
17080
|
+
decodeURIComponent: false,
|
|
17081
|
+
encodeURI: false,
|
|
17082
|
+
encodeURIComponent: false,
|
|
17083
|
+
Error: false,
|
|
17084
|
+
escape: false,
|
|
17085
|
+
eval: false,
|
|
17086
|
+
EvalError: false,
|
|
17087
|
+
Function: false,
|
|
17088
|
+
hasOwnProperty: false,
|
|
17089
|
+
Infinity: false,
|
|
17090
|
+
isFinite: false,
|
|
17091
|
+
isNaN: false,
|
|
17092
|
+
isPrototypeOf: false,
|
|
17093
|
+
Math: false,
|
|
17094
|
+
NaN: false,
|
|
17095
|
+
Number: false,
|
|
17096
|
+
Object: false,
|
|
17097
|
+
parseFloat: false,
|
|
17098
|
+
parseInt: false,
|
|
17099
|
+
propertyIsEnumerable: false,
|
|
17100
|
+
RangeError: false,
|
|
17101
|
+
ReferenceError: false,
|
|
17102
|
+
RegExp: false,
|
|
17103
|
+
String: false,
|
|
17104
|
+
SyntaxError: false,
|
|
17105
|
+
toLocaleString: false,
|
|
17106
|
+
toString: false,
|
|
17107
|
+
TypeError: false,
|
|
17108
|
+
undefined: false,
|
|
17109
|
+
unescape: false,
|
|
17110
|
+
URIError: false,
|
|
17111
|
+
valueOf: false
|
|
17112
|
+
};
|
|
17113
|
+
const es5 = {
|
|
17114
|
+
...es3,
|
|
17115
|
+
JSON: false
|
|
17116
|
+
};
|
|
17117
|
+
const es2015 = {
|
|
17118
|
+
...es5,
|
|
17119
|
+
ArrayBuffer: false,
|
|
17120
|
+
DataView: false,
|
|
17121
|
+
Float32Array: false,
|
|
17122
|
+
Float64Array: false,
|
|
17123
|
+
Int16Array: false,
|
|
17124
|
+
Int32Array: false,
|
|
17125
|
+
Int8Array: false,
|
|
17126
|
+
Intl: false,
|
|
17127
|
+
Map: false,
|
|
17128
|
+
Promise: false,
|
|
17129
|
+
Proxy: false,
|
|
17130
|
+
Reflect: false,
|
|
17131
|
+
Set: false,
|
|
17132
|
+
Symbol: false,
|
|
17133
|
+
Uint16Array: false,
|
|
17134
|
+
Uint32Array: false,
|
|
17135
|
+
Uint8Array: false,
|
|
17136
|
+
Uint8ClampedArray: false,
|
|
17137
|
+
WeakMap: false,
|
|
17138
|
+
WeakSet: false
|
|
17139
|
+
};
|
|
17140
|
+
const es2016 = { ...es2015 };
|
|
17141
|
+
const es2017 = {
|
|
17142
|
+
...es2016,
|
|
17143
|
+
Atomics: false,
|
|
17144
|
+
SharedArrayBuffer: false
|
|
17145
|
+
};
|
|
17146
|
+
const es2018 = { ...es2017 };
|
|
17147
|
+
const es2019 = { ...es2018 };
|
|
17148
|
+
const es2020 = {
|
|
17149
|
+
...es2019,
|
|
17150
|
+
BigInt: false,
|
|
17151
|
+
BigInt64Array: false,
|
|
17152
|
+
BigUint64Array: false,
|
|
17153
|
+
globalThis: false
|
|
17154
|
+
};
|
|
17155
|
+
const es2021 = {
|
|
17156
|
+
...es2020,
|
|
17157
|
+
AggregateError: false,
|
|
17158
|
+
FinalizationRegistry: false,
|
|
17159
|
+
WeakRef: false
|
|
17160
|
+
};
|
|
17161
|
+
const es2022 = { ...es2021 };
|
|
17162
|
+
const es2023 = { ...es2022 };
|
|
17163
|
+
const es2024 = { ...es2023 };
|
|
17164
|
+
const es2025 = {
|
|
17165
|
+
...es2024,
|
|
17166
|
+
Float16Array: false,
|
|
17167
|
+
Iterator: false
|
|
17168
|
+
};
|
|
17169
|
+
module.exports = {
|
|
17170
|
+
commonjs,
|
|
17171
|
+
es3,
|
|
17172
|
+
es5,
|
|
17173
|
+
es2015,
|
|
17174
|
+
es2016,
|
|
17175
|
+
es2017,
|
|
17176
|
+
es2018,
|
|
17177
|
+
es2019,
|
|
17178
|
+
es2020,
|
|
17179
|
+
es2021,
|
|
17180
|
+
es2022,
|
|
17181
|
+
es2023,
|
|
17182
|
+
es2024,
|
|
17183
|
+
es2025,
|
|
17184
|
+
es2026: {
|
|
17185
|
+
...es2025,
|
|
17186
|
+
AsyncDisposableStack: false,
|
|
17187
|
+
DisposableStack: false,
|
|
17188
|
+
SuppressedError: false,
|
|
17189
|
+
Temporal: false
|
|
17190
17190
|
}
|
|
17191
17191
|
};
|
|
17192
|
+
}));
|
|
17193
|
+
//#endregion
|
|
17194
|
+
//#region ../../node_modules/.pnpm/eslint@10.3.0_jiti@2.7.0/node_modules/eslint/conf/ecma-version.js
|
|
17195
|
+
/**
|
|
17196
|
+
* @fileoverview Configuration related to ECMAScript versions
|
|
17197
|
+
* @author Milos Djermanovic
|
|
17198
|
+
*/
|
|
17199
|
+
var require_ecma_version = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
17200
|
+
module.exports = { LATEST_ECMA_VERSION: 2026 };
|
|
17201
|
+
}));
|
|
17202
|
+
//#endregion
|
|
17203
|
+
//#region ../../node_modules/.pnpm/eslint@10.3.0_jiti@2.7.0/node_modules/eslint/lib/rules/utils/ast-utils.js
|
|
17204
|
+
/**
|
|
17205
|
+
* @fileoverview Common utils for AST.
|
|
17206
|
+
* @author Gyandeep Singh
|
|
17207
|
+
*/
|
|
17208
|
+
var require_ast_utils = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
17209
|
+
const { KEYS: eslintVisitorKeys } = require_eslint_visitor_keys$1();
|
|
17210
|
+
const esutils = require_utils$3();
|
|
17211
|
+
const espree = require_espree();
|
|
17212
|
+
const escapeRegExp = require_escape_string_regexp();
|
|
17213
|
+
const { breakableTypePattern, createGlobalLinebreakMatcher, lineBreakPattern, shebangPattern } = require_ast_utils$1();
|
|
17214
|
+
const globals = require_globals();
|
|
17215
|
+
const { LATEST_ECMA_VERSION } = require_ecma_version();
|
|
17216
|
+
/** @typedef {import("eslint-scope").Scope} Scope */
|
|
17217
|
+
/** @typedef {import("eslint-scope").Variable} Variable */
|
|
17218
|
+
const anyFunctionPattern = /^(?:Function(?:Declaration|Expression)|ArrowFunctionExpression)$/u;
|
|
17219
|
+
const anyLoopPattern = /^(?:DoWhile|For|ForIn|ForOf|While)Statement$/u;
|
|
17220
|
+
const arrayMethodWithThisArgPattern = /^(?:every|filter|find(?:Last)?(?:Index)?|flatMap|forEach|map|some)$/u;
|
|
17221
|
+
const arrayOrTypedArrayPattern = /Array$/u;
|
|
17222
|
+
const bindOrCallOrApplyPattern = /^(?:bind|call|apply)$/u;
|
|
17223
|
+
const thisTagPattern = /^[\s*]*@this/mu;
|
|
17224
|
+
const COMMENTS_IGNORE_PATTERN = /^\s*(?:eslint|jshint\s+|jslint\s+|istanbul\s+|globals?\s+|exported\s+|jscs)/u;
|
|
17225
|
+
const ESLINT_DIRECTIVE_PATTERN = /^(?:eslint[- ]|(?:globals?|exported) )/u;
|
|
17226
|
+
const LINEBREAKS = new Set([
|
|
17227
|
+
"\r\n",
|
|
17228
|
+
"\r",
|
|
17229
|
+
"\n",
|
|
17230
|
+
"\u2028",
|
|
17231
|
+
"\u2029"
|
|
17232
|
+
]);
|
|
17233
|
+
const STATEMENT_LIST_PARENTS = new Set([
|
|
17234
|
+
"Program",
|
|
17235
|
+
"BlockStatement",
|
|
17236
|
+
"StaticBlock",
|
|
17237
|
+
"SwitchCase"
|
|
17238
|
+
]);
|
|
17239
|
+
const LEXICAL_DECLARATION_KINDS = new Set([
|
|
17240
|
+
"let",
|
|
17241
|
+
"const",
|
|
17242
|
+
"using",
|
|
17243
|
+
"await using"
|
|
17244
|
+
]);
|
|
17245
|
+
const DECIMAL_INTEGER_PATTERN = /^(?:0|0[0-7]*[89]\d*|[1-9](?:_?\d)*)$/u;
|
|
17246
|
+
const OCTAL_OR_NON_OCTAL_DECIMAL_ESCAPE_PATTERN = /^(?:[^\\]|\\.)*\\(?:[1-9]|0\d)/su;
|
|
17247
|
+
const LOGICAL_ASSIGNMENT_OPERATORS = new Set([
|
|
17248
|
+
"&&=",
|
|
17249
|
+
"||=",
|
|
17250
|
+
"??="
|
|
17251
|
+
]);
|
|
17192
17252
|
/**
|
|
17193
|
-
*
|
|
17194
|
-
* @
|
|
17253
|
+
* All builtin global variables defined in the latest ECMAScript specification.
|
|
17254
|
+
* @type {Record<string,boolean>} Key is the name of the variable. Value is `true` if the variable is considered writable, `false` otherwise.
|
|
17195
17255
|
*/
|
|
17256
|
+
const ECMASCRIPT_GLOBALS = globals[`es${LATEST_ECMA_VERSION}`];
|
|
17196
17257
|
/**
|
|
17197
|
-
*
|
|
17258
|
+
* Checks reference if is non initializer and writable.
|
|
17259
|
+
* @param {Reference} reference A reference to check.
|
|
17260
|
+
* @param {number} index The index of the reference in the references.
|
|
17261
|
+
* @param {Reference[]} references The array that the reference belongs to.
|
|
17262
|
+
* @returns {boolean} Success/Failure
|
|
17263
|
+
* @private
|
|
17198
17264
|
*/
|
|
17199
|
-
|
|
17200
|
-
|
|
17201
|
-
|
|
17202
|
-
|
|
17203
|
-
|
|
17204
|
-
8,
|
|
17205
|
-
9,
|
|
17206
|
-
10,
|
|
17207
|
-
11,
|
|
17208
|
-
12,
|
|
17209
|
-
13,
|
|
17210
|
-
14,
|
|
17211
|
-
15,
|
|
17212
|
-
16,
|
|
17213
|
-
17
|
|
17214
|
-
];
|
|
17265
|
+
function isModifyingReference(reference, index, references) {
|
|
17266
|
+
const identifier = reference.identifier;
|
|
17267
|
+
const modifyingDifferentIdentifier = index === 0 || references[index - 1].identifier !== identifier;
|
|
17268
|
+
return identifier && reference.init === false && reference.isWrite() && modifyingDifferentIdentifier;
|
|
17269
|
+
}
|
|
17215
17270
|
/**
|
|
17216
|
-
*
|
|
17271
|
+
* Checks whether the given string starts with uppercase or not.
|
|
17272
|
+
* @param {string} s The string to check.
|
|
17273
|
+
* @returns {boolean} `true` if the string starts with uppercase.
|
|
17217
17274
|
*/
|
|
17218
|
-
|
|
17275
|
+
function startsWithUpperCase(s) {
|
|
17276
|
+
return s[0] !== s[0].toLocaleLowerCase();
|
|
17277
|
+
}
|
|
17219
17278
|
/**
|
|
17220
|
-
*
|
|
17221
|
-
* @
|
|
17279
|
+
* Checks whether or not a node is a constructor.
|
|
17280
|
+
* @param {ASTNode} node A function node to check.
|
|
17281
|
+
* @returns {boolean} Whether or not a node is a constructor.
|
|
17222
17282
|
*/
|
|
17223
|
-
function
|
|
17224
|
-
return
|
|
17283
|
+
function isES5Constructor(node) {
|
|
17284
|
+
return node.id && startsWithUpperCase(node.id.name);
|
|
17225
17285
|
}
|
|
17226
17286
|
/**
|
|
17227
|
-
*
|
|
17228
|
-
* @
|
|
17287
|
+
* Finds a function node from ancestors of a node.
|
|
17288
|
+
* @param {ASTNode} node A start node to find.
|
|
17289
|
+
* @returns {Node|null} A found function node.
|
|
17229
17290
|
*/
|
|
17230
|
-
function
|
|
17231
|
-
return
|
|
17291
|
+
function getUpperFunction(node) {
|
|
17292
|
+
for (let currentNode = node; currentNode; currentNode = currentNode.parent) if (anyFunctionPattern.test(currentNode.type)) return currentNode;
|
|
17293
|
+
return null;
|
|
17232
17294
|
}
|
|
17233
17295
|
/**
|
|
17234
|
-
*
|
|
17235
|
-
*
|
|
17236
|
-
*
|
|
17237
|
-
*
|
|
17238
|
-
|
|
17239
|
-
|
|
17240
|
-
|
|
17241
|
-
|
|
17242
|
-
if (version >= 2015) version -= 2009;
|
|
17243
|
-
if (!SUPPORTED_VERSIONS.includes(version)) throw new Error("Invalid ecmaVersion.");
|
|
17244
|
-
return version;
|
|
17245
|
-
}
|
|
17246
|
-
/**
|
|
17247
|
-
* Normalize sourceType from the initial config
|
|
17248
|
-
* @param {string} sourceType to normalize
|
|
17249
|
-
* @throws {Error} throw an error if sourceType is invalid
|
|
17250
|
-
* @returns {"script"|"module"|"commonjs"} normalized sourceType
|
|
17296
|
+
* Checks whether a given node is a function node or not.
|
|
17297
|
+
* The following types are function nodes:
|
|
17298
|
+
*
|
|
17299
|
+
* - ArrowFunctionExpression
|
|
17300
|
+
* - FunctionDeclaration
|
|
17301
|
+
* - FunctionExpression
|
|
17302
|
+
* @param {ASTNode|null} node A node to check.
|
|
17303
|
+
* @returns {boolean} `true` if the node is a function node.
|
|
17251
17304
|
*/
|
|
17252
|
-
function
|
|
17253
|
-
|
|
17254
|
-
throw new Error("Invalid sourceType.");
|
|
17305
|
+
function isFunction(node) {
|
|
17306
|
+
return Boolean(node && anyFunctionPattern.test(node.type));
|
|
17255
17307
|
}
|
|
17256
17308
|
/**
|
|
17257
|
-
*
|
|
17258
|
-
*
|
|
17259
|
-
*
|
|
17260
|
-
*
|
|
17261
|
-
*
|
|
17262
|
-
*
|
|
17263
|
-
*
|
|
17264
|
-
*
|
|
17265
|
-
*
|
|
17266
|
-
*
|
|
17267
|
-
* },
|
|
17268
|
-
* ranges: boolean,
|
|
17269
|
-
* locations: boolean,
|
|
17270
|
-
* allowReturnOutsideFunction: boolean,
|
|
17271
|
-
* tokens?: boolean,
|
|
17272
|
-
* comment?: boolean
|
|
17273
|
-
* }} NormalizedParserOptions
|
|
17274
|
-
*/
|
|
17275
|
-
/**
|
|
17276
|
-
* Normalize parserOptions
|
|
17277
|
-
* @param {Options} options the parser options to normalize
|
|
17278
|
-
* @throws {Error} throw an error if found invalid option.
|
|
17279
|
-
* @returns {NormalizedParserOptions} normalized options
|
|
17309
|
+
* Checks whether a given node is a loop node or not.
|
|
17310
|
+
* The following types are loop nodes:
|
|
17311
|
+
*
|
|
17312
|
+
* - DoWhileStatement
|
|
17313
|
+
* - ForInStatement
|
|
17314
|
+
* - ForOfStatement
|
|
17315
|
+
* - ForStatement
|
|
17316
|
+
* - WhileStatement
|
|
17317
|
+
* @param {ASTNode|null} node A node to check.
|
|
17318
|
+
* @returns {boolean} `true` if the node is a loop node.
|
|
17280
17319
|
*/
|
|
17281
|
-
function
|
|
17282
|
-
|
|
17283
|
-
const sourceType = normalizeSourceType(options.sourceType);
|
|
17284
|
-
const ranges = options.range === true;
|
|
17285
|
-
const locations = options.loc === true;
|
|
17286
|
-
if (ecmaVersion !== 3 && options.allowReserved) throw new Error("`allowReserved` is only supported when ecmaVersion is 3");
|
|
17287
|
-
if (typeof options.allowReserved !== "undefined" && typeof options.allowReserved !== "boolean") throw new Error("`allowReserved`, when present, must be `true` or `false`");
|
|
17288
|
-
const allowReserved = ecmaVersion === 3 ? options.allowReserved || "never" : false;
|
|
17289
|
-
const ecmaFeatures = options.ecmaFeatures || {};
|
|
17290
|
-
const allowReturnOutsideFunction = options.sourceType === "commonjs" || Boolean(ecmaFeatures.globalReturn);
|
|
17291
|
-
if (sourceType === "module" && ecmaVersion < 6) throw new Error("sourceType 'module' is not supported when ecmaVersion < 2015. Consider adding `{ ecmaVersion: 2015 }` to the parser options.");
|
|
17292
|
-
return Object.assign({}, options, {
|
|
17293
|
-
ecmaVersion,
|
|
17294
|
-
sourceType,
|
|
17295
|
-
ranges,
|
|
17296
|
-
locations,
|
|
17297
|
-
allowReserved,
|
|
17298
|
-
allowReturnOutsideFunction
|
|
17299
|
-
});
|
|
17320
|
+
function isLoop(node) {
|
|
17321
|
+
return Boolean(node && anyLoopPattern.test(node.type));
|
|
17300
17322
|
}
|
|
17301
17323
|
/**
|
|
17302
|
-
*
|
|
17303
|
-
*
|
|
17304
|
-
*
|
|
17305
|
-
* EsprimaNode,
|
|
17306
|
-
* AcornJsxParserCtorEnhanced,
|
|
17307
|
-
* TokTypes
|
|
17308
|
-
* } from "./types.js";
|
|
17309
|
-
* @import {
|
|
17310
|
-
* Options,
|
|
17311
|
-
* EspreeToken as EsprimaToken,
|
|
17312
|
-
* EspreeTokens as EsprimaTokens,
|
|
17313
|
-
* EspreeComment as EsprimaComment
|
|
17314
|
-
* } from "../espree.js";
|
|
17315
|
-
* @import { NormalizedEcmaVersion } from "./options.js";
|
|
17316
|
-
* @import * as acorn from "acorn";
|
|
17317
|
-
*/
|
|
17318
|
-
/**
|
|
17319
|
-
* @typedef {{
|
|
17320
|
-
* originalSourceType: "script" | "module" | "commonjs" | undefined
|
|
17321
|
-
* tokens: EsprimaToken[] | null,
|
|
17322
|
-
* comments: EsprimaComment[] | null,
|
|
17323
|
-
* impliedStrict: boolean,
|
|
17324
|
-
* ecmaVersion: NormalizedEcmaVersion,
|
|
17325
|
-
* jsxAttrValueToken: boolean,
|
|
17326
|
-
* lastToken: acorn.Token | null,
|
|
17327
|
-
* templateElements: acorn.TemplateElement[]
|
|
17328
|
-
* }} State
|
|
17324
|
+
* Checks whether the given node is in a loop or not.
|
|
17325
|
+
* @param {ASTNode} node The node to check.
|
|
17326
|
+
* @returns {boolean} `true` if the node is in a loop.
|
|
17329
17327
|
*/
|
|
17328
|
+
function isInLoop(node) {
|
|
17329
|
+
for (let currentNode = node; currentNode && !isFunction(currentNode); currentNode = currentNode.parent) if (isLoop(currentNode)) return true;
|
|
17330
|
+
return false;
|
|
17331
|
+
}
|
|
17330
17332
|
/**
|
|
17331
|
-
*
|
|
17332
|
-
*
|
|
17333
|
-
*
|
|
17334
|
-
* tokens?: EsprimaToken[];
|
|
17335
|
-
* body: acorn.Node[];
|
|
17336
|
-
* } & acorn.Program} EsprimaProgramNode
|
|
17333
|
+
* Determines whether the given node is a `null` literal.
|
|
17334
|
+
* @param {ASTNode} node The node to check
|
|
17335
|
+
* @returns {boolean} `true` if the node is a `null` literal
|
|
17337
17336
|
*/
|
|
17337
|
+
function isNullLiteral(node) {
|
|
17338
|
+
return node.type === "Literal" && node.value === null && !node.regex && !node.bigint;
|
|
17339
|
+
}
|
|
17338
17340
|
/**
|
|
17339
|
-
*
|
|
17340
|
-
*
|
|
17341
|
-
*
|
|
17342
|
-
*
|
|
17343
|
-
* } & SyntaxError} EnhancedSyntaxError
|
|
17341
|
+
* Checks whether or not a node is `null` or `undefined`.
|
|
17342
|
+
* @param {ASTNode} node A node to check.
|
|
17343
|
+
* @returns {boolean} Whether or not the node is a `null` or `undefined`.
|
|
17344
|
+
* @public
|
|
17344
17345
|
*/
|
|
17346
|
+
function isNullOrUndefined(node) {
|
|
17347
|
+
return isNullLiteral(node) || node.type === "Identifier" && node.name === "undefined" || node.type === "UnaryExpression" && node.operator === "void";
|
|
17348
|
+
}
|
|
17345
17349
|
/**
|
|
17346
|
-
*
|
|
17347
|
-
*
|
|
17348
|
-
* }
|
|
17350
|
+
* Checks whether or not a node is callee.
|
|
17351
|
+
* @param {ASTNode} node A node to check.
|
|
17352
|
+
* @returns {boolean} Whether or not the node is callee.
|
|
17349
17353
|
*/
|
|
17350
|
-
|
|
17351
|
-
|
|
17354
|
+
function isCallee(node) {
|
|
17355
|
+
return node.parent.type === "CallExpression" && node.parent.callee === node;
|
|
17356
|
+
}
|
|
17352
17357
|
/**
|
|
17353
|
-
*
|
|
17354
|
-
*
|
|
17355
|
-
*
|
|
17356
|
-
*
|
|
17357
|
-
*
|
|
17358
|
-
* @param {
|
|
17359
|
-
* @
|
|
17360
|
-
* @param {string} code The source code being parsed.
|
|
17361
|
-
* @returns {EsprimaComment} The comment object.
|
|
17362
|
-
* @private
|
|
17358
|
+
* Returns the result of the string conversion applied to the evaluated value of the given expression node,
|
|
17359
|
+
* if it can be determined statically.
|
|
17360
|
+
*
|
|
17361
|
+
* This function returns a `string` value for all `Literal` nodes and simple `TemplateLiteral` nodes only.
|
|
17362
|
+
* In all other cases, this function returns `null`.
|
|
17363
|
+
* @param {ASTNode} node Expression node.
|
|
17364
|
+
* @returns {string|null} String value if it can be determined. Otherwise, `null`.
|
|
17363
17365
|
*/
|
|
17364
|
-
function
|
|
17365
|
-
|
|
17366
|
-
|
|
17367
|
-
|
|
17368
|
-
|
|
17369
|
-
|
|
17370
|
-
|
|
17371
|
-
|
|
17372
|
-
|
|
17373
|
-
|
|
17374
|
-
|
|
17375
|
-
|
|
17376
|
-
* range?: [number, number],
|
|
17377
|
-
* loc?: {
|
|
17378
|
-
* start: acorn.Position | undefined,
|
|
17379
|
-
* end: acorn.Position | undefined
|
|
17380
|
-
* }
|
|
17381
|
-
* }}
|
|
17382
|
-
*/
|
|
17383
|
-
const comment = {
|
|
17384
|
-
type,
|
|
17385
|
-
value: text
|
|
17386
|
-
};
|
|
17387
|
-
if (typeof start === "number") {
|
|
17388
|
-
comment.start = start;
|
|
17389
|
-
comment.end = end;
|
|
17390
|
-
comment.range = [start, end];
|
|
17366
|
+
function getStaticStringValue(node) {
|
|
17367
|
+
switch (node.type) {
|
|
17368
|
+
case "Literal":
|
|
17369
|
+
if (node.value === null) {
|
|
17370
|
+
if (isNullLiteral(node)) return String(node.value);
|
|
17371
|
+
if (node.regex) return `/${node.regex.pattern}/${node.regex.flags}`;
|
|
17372
|
+
if (node.bigint) return node.bigint;
|
|
17373
|
+
} else return String(node.value);
|
|
17374
|
+
break;
|
|
17375
|
+
case "TemplateLiteral":
|
|
17376
|
+
if (node.expressions.length === 0 && node.quasis.length === 1) return node.quasis[0].value.cooked;
|
|
17377
|
+
break;
|
|
17391
17378
|
}
|
|
17392
|
-
|
|
17393
|
-
start: startLoc,
|
|
17394
|
-
end: endLoc
|
|
17395
|
-
};
|
|
17396
|
-
return comment;
|
|
17379
|
+
return null;
|
|
17397
17380
|
}
|
|
17398
|
-
var espree = () => {
|
|
17399
|
-
/**
|
|
17400
|
-
* Returns the Espree parser.
|
|
17401
|
-
* @param {AcornJsxParserCtorEnhanced} Parser The Acorn parser. The `acorn` property is missing from acorn's
|
|
17402
|
-
* TypeScript but is present statically on the class.
|
|
17403
|
-
* @returns {EspreeParserCtor} The Espree Parser constructor.
|
|
17404
|
-
*/
|
|
17405
|
-
return (Parser) => {
|
|
17406
|
-
const tokTypes = Object.assign({}, Parser.acorn.tokTypes);
|
|
17407
|
-
if (Parser.acornJsx) Object.assign(tokTypes, Parser.acornJsx.tokTypes);
|
|
17408
|
-
return class Espree extends Parser {
|
|
17409
|
-
/**
|
|
17410
|
-
* @param {Options | null | undefined} opts The parser options
|
|
17411
|
-
* @param {string | object} code The code which will be converted to a string.
|
|
17412
|
-
*/
|
|
17413
|
-
constructor(opts, code) {
|
|
17414
|
-
if (typeof opts !== "object" || opts === null) opts = {};
|
|
17415
|
-
if (typeof code !== "string" && !(code instanceof String)) code = String(code);
|
|
17416
|
-
const originalSourceType = opts.sourceType;
|
|
17417
|
-
const options = normalizeOptions(opts);
|
|
17418
|
-
const ecmaFeatures = options.ecmaFeatures || {};
|
|
17419
|
-
const tokenTranslator = options.tokens === true ? new TokenTranslator(tokTypes, code) : null;
|
|
17420
|
-
/**
|
|
17421
|
-
* Data that is unique to Espree and is not represented internally
|
|
17422
|
-
* in Acorn.
|
|
17423
|
-
*
|
|
17424
|
-
* For ES2023 hashbangs, Espree will call `onComment()` during the
|
|
17425
|
-
* constructor, so we must define state before having access to
|
|
17426
|
-
* `this`.
|
|
17427
|
-
* @type {State}
|
|
17428
|
-
*/
|
|
17429
|
-
const state = {
|
|
17430
|
-
originalSourceType: originalSourceType || options.sourceType,
|
|
17431
|
-
tokens: tokenTranslator ? [] : null,
|
|
17432
|
-
comments: options.comment === true ? [] : null,
|
|
17433
|
-
impliedStrict: ecmaFeatures.impliedStrict === true && options.ecmaVersion >= 5,
|
|
17434
|
-
ecmaVersion: options.ecmaVersion,
|
|
17435
|
-
jsxAttrValueToken: false,
|
|
17436
|
-
lastToken: null,
|
|
17437
|
-
templateElements: []
|
|
17438
|
-
};
|
|
17439
|
-
super({
|
|
17440
|
-
ecmaVersion: options.ecmaVersion,
|
|
17441
|
-
sourceType: options.sourceType,
|
|
17442
|
-
ranges: options.ranges,
|
|
17443
|
-
locations: options.locations,
|
|
17444
|
-
allowReserved: options.allowReserved,
|
|
17445
|
-
allowReturnOutsideFunction: options.allowReturnOutsideFunction,
|
|
17446
|
-
onToken(token) {
|
|
17447
|
-
if (tokenTranslator) tokenTranslator.onToken(token, state);
|
|
17448
|
-
if (token.type !== tokTypes.eof) state.lastToken = token;
|
|
17449
|
-
},
|
|
17450
|
-
onComment(block, text, start, end, startLoc, endLoc) {
|
|
17451
|
-
if (state.comments) {
|
|
17452
|
-
const comment = convertAcornCommentToEsprimaComment(block, text, start, end, startLoc, endLoc, code);
|
|
17453
|
-
state.comments.push(comment);
|
|
17454
|
-
}
|
|
17455
|
-
}
|
|
17456
|
-
}, code);
|
|
17457
|
-
this[STATE] = state;
|
|
17458
|
-
}
|
|
17459
|
-
/**
|
|
17460
|
-
* Returns Espree tokens.
|
|
17461
|
-
* @returns {EsprimaTokens} The Esprima-compatible tokens
|
|
17462
|
-
*/
|
|
17463
|
-
tokenize() {
|
|
17464
|
-
do
|
|
17465
|
-
this.next();
|
|
17466
|
-
while (this.type !== tokTypes.eof);
|
|
17467
|
-
this.next();
|
|
17468
|
-
const extra = this[STATE];
|
|
17469
|
-
const tokens = extra.tokens;
|
|
17470
|
-
if (extra.comments) tokens.comments = extra.comments;
|
|
17471
|
-
return tokens;
|
|
17472
|
-
}
|
|
17473
|
-
/**
|
|
17474
|
-
* Calls parent.
|
|
17475
|
-
* @param {acorn.Node} node The node
|
|
17476
|
-
* @param {string} type The type
|
|
17477
|
-
* @returns {acorn.Node} The altered Node
|
|
17478
|
-
*/
|
|
17479
|
-
finishNode(node, type) {
|
|
17480
|
-
const result = super.finishNode(node, type);
|
|
17481
|
-
return this[ESPRIMA_FINISH_NODE](result);
|
|
17482
|
-
}
|
|
17483
|
-
/**
|
|
17484
|
-
* Calls parent.
|
|
17485
|
-
* @param {acorn.Node} node The node
|
|
17486
|
-
* @param {string} type The type
|
|
17487
|
-
* @param {number} pos The position
|
|
17488
|
-
* @param {acorn.Position} loc The location
|
|
17489
|
-
* @returns {acorn.Node} The altered Node
|
|
17490
|
-
*/
|
|
17491
|
-
finishNodeAt(node, type, pos, loc) {
|
|
17492
|
-
const result = super.finishNodeAt(node, type, pos, loc);
|
|
17493
|
-
return this[ESPRIMA_FINISH_NODE](result);
|
|
17494
|
-
}
|
|
17495
|
-
/**
|
|
17496
|
-
* Parses.
|
|
17497
|
-
* @returns {EsprimaProgramNode} The program Node
|
|
17498
|
-
*/
|
|
17499
|
-
parse() {
|
|
17500
|
-
const extra = this[STATE];
|
|
17501
|
-
const program = super.parse();
|
|
17502
|
-
program.sourceType = extra.originalSourceType;
|
|
17503
|
-
if (extra.comments) program.comments = extra.comments;
|
|
17504
|
-
if (extra.tokens) program.tokens = extra.tokens;
|
|
17505
|
-
this[STATE].templateElements.forEach((templateElement) => {
|
|
17506
|
-
const startOffset = -1;
|
|
17507
|
-
const endOffset = templateElement.tail ? 1 : 2;
|
|
17508
|
-
templateElement.start += startOffset;
|
|
17509
|
-
templateElement.end += endOffset;
|
|
17510
|
-
if (templateElement.range) {
|
|
17511
|
-
templateElement.range[0] += startOffset;
|
|
17512
|
-
templateElement.range[1] += endOffset;
|
|
17513
|
-
}
|
|
17514
|
-
if (templateElement.loc) {
|
|
17515
|
-
templateElement.loc.start.column += startOffset;
|
|
17516
|
-
templateElement.loc.end.column += endOffset;
|
|
17517
|
-
}
|
|
17518
|
-
});
|
|
17519
|
-
return program;
|
|
17520
|
-
}
|
|
17521
|
-
/**
|
|
17522
|
-
* Parses top level.
|
|
17523
|
-
* @param {acorn.Node} node AST Node
|
|
17524
|
-
* @returns {acorn.Node} The changed node
|
|
17525
|
-
*/
|
|
17526
|
-
parseTopLevel(node) {
|
|
17527
|
-
if (this[STATE].impliedStrict) this.strict = true;
|
|
17528
|
-
return super.parseTopLevel(node);
|
|
17529
|
-
}
|
|
17530
|
-
/**
|
|
17531
|
-
* Overwrites the default raise method to throw Esprima-style errors.
|
|
17532
|
-
* @param {number} pos The position of the error.
|
|
17533
|
-
* @param {string} message The error message.
|
|
17534
|
-
* @throws {EnhancedSyntaxError} A syntax error.
|
|
17535
|
-
* @returns {void}
|
|
17536
|
-
*/
|
|
17537
|
-
raise(pos, message) {
|
|
17538
|
-
const loc = Parser.acorn.getLineInfo(this.input, pos);
|
|
17539
|
-
const err = new SyntaxError(message);
|
|
17540
|
-
err.index = pos;
|
|
17541
|
-
err.lineNumber = loc.line;
|
|
17542
|
-
err.column = loc.column + 1;
|
|
17543
|
-
throw err;
|
|
17544
|
-
}
|
|
17545
|
-
/**
|
|
17546
|
-
* Overwrites the default raise method to throw Esprima-style errors.
|
|
17547
|
-
* @param {number} pos The position of the error.
|
|
17548
|
-
* @param {string} message The error message.
|
|
17549
|
-
* @throws {SyntaxError} A syntax error.
|
|
17550
|
-
* @returns {void}
|
|
17551
|
-
*/
|
|
17552
|
-
raiseRecoverable(pos, message) {
|
|
17553
|
-
this.raise(pos, message);
|
|
17554
|
-
}
|
|
17555
|
-
/**
|
|
17556
|
-
* Overwrites the default unexpected method to throw Esprima-style errors.
|
|
17557
|
-
* @param {number} pos The position of the error.
|
|
17558
|
-
* @throws {SyntaxError} A syntax error.
|
|
17559
|
-
* @returns {void}
|
|
17560
|
-
*/
|
|
17561
|
-
unexpected(pos) {
|
|
17562
|
-
let message = "Unexpected token";
|
|
17563
|
-
if (pos !== null && pos !== void 0) {
|
|
17564
|
-
this.pos = pos;
|
|
17565
|
-
if (this.options.locations) while (this.pos < this.lineStart) {
|
|
17566
|
-
this.lineStart = this.input.lastIndexOf("\n", this.lineStart - 2) + 1;
|
|
17567
|
-
--this.curLine;
|
|
17568
|
-
}
|
|
17569
|
-
this.nextToken();
|
|
17570
|
-
}
|
|
17571
|
-
if (this.end > this.start) message += ` ${this.input.slice(this.start, this.end)}`;
|
|
17572
|
-
this.raise(this.start, message);
|
|
17573
|
-
}
|
|
17574
|
-
/**
|
|
17575
|
-
* Esprima-FB represents JSX strings as tokens called "JSXText", but Acorn-JSX
|
|
17576
|
-
* uses regular tt.string without any distinction between this and regular JS
|
|
17577
|
-
* strings. As such, we intercept an attempt to read a JSX string and set a flag
|
|
17578
|
-
* on extra so that when tokens are converted, the next token will be switched
|
|
17579
|
-
* to JSXText via onToken.
|
|
17580
|
-
* @param {number} quote A character code
|
|
17581
|
-
* @returns {void}
|
|
17582
|
-
*/ jsx_readString(quote) {
|
|
17583
|
-
const result = super.jsx_readString(quote);
|
|
17584
|
-
if (this.type === tokTypes.string) this[STATE].jsxAttrValueToken = true;
|
|
17585
|
-
return result;
|
|
17586
|
-
}
|
|
17587
|
-
/**
|
|
17588
|
-
* Performs last-minute Esprima-specific compatibility checks and fixes.
|
|
17589
|
-
* @param {acorn.Node} result The node to check.
|
|
17590
|
-
* @returns {EsprimaNode} The finished node.
|
|
17591
|
-
*/
|
|
17592
|
-
[ESPRIMA_FINISH_NODE](result) {
|
|
17593
|
-
if (result.type === "TemplateElement") this[STATE].templateElements.push(result);
|
|
17594
|
-
if (result.type.includes("Function") && !("generator" in result))
|
|
17595
|
-
/**
|
|
17596
|
-
* @type {acorn.FunctionDeclaration|acorn.FunctionExpression|
|
|
17597
|
-
* acorn.ArrowFunctionExpression}
|
|
17598
|
-
*/
|
|
17599
|
-
result.generator = false;
|
|
17600
|
-
return result;
|
|
17601
|
-
}
|
|
17602
|
-
};
|
|
17603
|
-
};
|
|
17604
|
-
};
|
|
17605
17381
|
/**
|
|
17606
|
-
*
|
|
17607
|
-
*
|
|
17608
|
-
* This file contains code from the following MIT-licensed projects:
|
|
17609
|
-
* 1. Acorn
|
|
17610
|
-
* 2. Babylon
|
|
17611
|
-
* 3. Babel-ESLint
|
|
17612
|
-
*
|
|
17613
|
-
* This file also contains code from Esprima, which is BSD licensed.
|
|
17614
|
-
*
|
|
17615
|
-
* Acorn is Copyright 2012-2015 Acorn Contributors (https://github.com/marijnh/acorn/blob/master/AUTHORS)
|
|
17616
|
-
* Babylon is Copyright 2014-2015 various contributors (https://github.com/babel/babel/blob/master/packages/babylon/AUTHORS)
|
|
17617
|
-
* Babel-ESLint is Copyright 2014-2015 Sebastian McKenzie <sebmck@gmail.com>
|
|
17618
|
-
*
|
|
17619
|
-
* Redistribution and use in source and binary forms, with or without
|
|
17620
|
-
* modification, are permitted provided that the following conditions are met:
|
|
17621
|
-
*
|
|
17622
|
-
* * Redistributions of source code must retain the above copyright
|
|
17623
|
-
* notice, this list of conditions and the following disclaimer.
|
|
17624
|
-
* * Redistributions in binary form must reproduce the above copyright
|
|
17625
|
-
* notice, this list of conditions and the following disclaimer in the
|
|
17626
|
-
* documentation and/or other materials provided with the distribution.
|
|
17627
|
-
*
|
|
17628
|
-
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
17629
|
-
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
17630
|
-
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
17631
|
-
* ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
|
|
17632
|
-
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
17633
|
-
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
17634
|
-
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
|
17635
|
-
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
17636
|
-
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
17637
|
-
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
17382
|
+
* Gets the property name of a given node.
|
|
17383
|
+
* The node can be a MemberExpression, a Property, or a MethodDefinition.
|
|
17638
17384
|
*
|
|
17639
|
-
*
|
|
17385
|
+
* If the name is dynamic, this returns `null`.
|
|
17640
17386
|
*
|
|
17641
|
-
*
|
|
17642
|
-
* modification, are permitted provided that the following conditions are met:
|
|
17387
|
+
* For examples:
|
|
17643
17388
|
*
|
|
17644
|
-
*
|
|
17645
|
-
*
|
|
17646
|
-
*
|
|
17647
|
-
*
|
|
17648
|
-
*
|
|
17389
|
+
* a.b // => "b"
|
|
17390
|
+
* a["b"] // => "b"
|
|
17391
|
+
* a['b'] // => "b"
|
|
17392
|
+
* a[`b`] // => "b"
|
|
17393
|
+
* a[100] // => "100"
|
|
17394
|
+
* a[b] // => null
|
|
17395
|
+
* a["a" + "b"] // => null
|
|
17396
|
+
* a[tag`b`] // => null
|
|
17397
|
+
* a[`${b}`] // => null
|
|
17649
17398
|
*
|
|
17650
|
-
*
|
|
17651
|
-
*
|
|
17652
|
-
*
|
|
17653
|
-
*
|
|
17654
|
-
*
|
|
17655
|
-
*
|
|
17656
|
-
*
|
|
17657
|
-
*
|
|
17658
|
-
*
|
|
17659
|
-
*
|
|
17399
|
+
* let a = {b: 1} // => "b"
|
|
17400
|
+
* let a = {["b"]: 1} // => "b"
|
|
17401
|
+
* let a = {['b']: 1} // => "b"
|
|
17402
|
+
* let a = {[`b`]: 1} // => "b"
|
|
17403
|
+
* let a = {[100]: 1} // => "100"
|
|
17404
|
+
* let a = {[b]: 1} // => null
|
|
17405
|
+
* let a = {["a" + "b"]: 1} // => null
|
|
17406
|
+
* let a = {[tag`b`]: 1} // => null
|
|
17407
|
+
* let a = {[`${b}`]: 1} // => null
|
|
17408
|
+
* @param {ASTNode} node The node to get.
|
|
17409
|
+
* @returns {string|null} The property name if static. Otherwise, null.
|
|
17660
17410
|
*/
|
|
17411
|
+
function getStaticPropertyName(node) {
|
|
17412
|
+
let prop;
|
|
17413
|
+
switch (node && node.type) {
|
|
17414
|
+
case "ChainExpression": return getStaticPropertyName(node.expression);
|
|
17415
|
+
case "Property":
|
|
17416
|
+
case "PropertyDefinition":
|
|
17417
|
+
case "MethodDefinition":
|
|
17418
|
+
case "TSPropertySignature":
|
|
17419
|
+
case "TSMethodSignature":
|
|
17420
|
+
prop = node.key;
|
|
17421
|
+
break;
|
|
17422
|
+
case "MemberExpression":
|
|
17423
|
+
prop = node.property;
|
|
17424
|
+
break;
|
|
17425
|
+
}
|
|
17426
|
+
if (prop) {
|
|
17427
|
+
if (prop.type === "Identifier" && !node.computed) return prop.name;
|
|
17428
|
+
return getStaticStringValue(prop);
|
|
17429
|
+
}
|
|
17430
|
+
return null;
|
|
17431
|
+
}
|
|
17661
17432
|
/**
|
|
17662
|
-
*
|
|
17663
|
-
|
|
17664
|
-
|
|
17665
|
-
* @typedef {3|5|6|7|8|9|10|11|12|13|14|15|16|17|2015|2016|2017|2018|2019|2020|2021|2022|2023|2024|2025|2026|'latest'} EcmaVersion
|
|
17433
|
+
* Retrieve `ChainExpression#expression` value if the given node a `ChainExpression` node. Otherwise, pass through it.
|
|
17434
|
+
* @param {ASTNode} node The node to address.
|
|
17435
|
+
* @returns {ASTNode} The `ChainExpression#expression` value if the node is a `ChainExpression` node. Otherwise, the node.
|
|
17666
17436
|
*/
|
|
17437
|
+
function skipChainExpression(node) {
|
|
17438
|
+
return node && node.type === "ChainExpression" ? node.expression : node;
|
|
17439
|
+
}
|
|
17667
17440
|
/**
|
|
17668
|
-
*
|
|
17669
|
-
*
|
|
17670
|
-
*
|
|
17671
|
-
*
|
|
17672
|
-
* end?: number;
|
|
17673
|
-
* loc?: acorn.SourceLocation;
|
|
17674
|
-
* range?: [number, number];
|
|
17675
|
-
* regex?: {flags: string, pattern: string};
|
|
17676
|
-
* }} EspreeToken
|
|
17441
|
+
* Check if the `actual` is an expected value.
|
|
17442
|
+
* @param {string} actual The string value to check.
|
|
17443
|
+
* @param {string | RegExp} expected The expected string value or pattern.
|
|
17444
|
+
* @returns {boolean} `true` if the `actual` is an expected value.
|
|
17677
17445
|
*/
|
|
17446
|
+
function checkText(actual, expected) {
|
|
17447
|
+
return typeof expected === "string" ? actual === expected : expected.test(actual);
|
|
17448
|
+
}
|
|
17678
17449
|
/**
|
|
17679
|
-
*
|
|
17680
|
-
*
|
|
17681
|
-
*
|
|
17682
|
-
*
|
|
17683
|
-
* start?: number,
|
|
17684
|
-
* end?: number,
|
|
17685
|
-
* loc?: {
|
|
17686
|
-
* start: acorn.Position | undefined,
|
|
17687
|
-
* end: acorn.Position | undefined
|
|
17688
|
-
* }
|
|
17689
|
-
* }} EspreeComment
|
|
17450
|
+
* Check if a given node is an Identifier node with a given name.
|
|
17451
|
+
* @param {ASTNode} node The node to check.
|
|
17452
|
+
* @param {string | RegExp} name The expected name or the expected pattern of the object name.
|
|
17453
|
+
* @returns {boolean} `true` if the node is an Identifier node with the name.
|
|
17690
17454
|
*/
|
|
17455
|
+
function isSpecificId(node, name) {
|
|
17456
|
+
return node.type === "Identifier" && checkText(node.name, name);
|
|
17457
|
+
}
|
|
17691
17458
|
/**
|
|
17692
|
-
*
|
|
17693
|
-
*
|
|
17694
|
-
* }
|
|
17459
|
+
* Check if a given node is member access with a given object name and property name pair.
|
|
17460
|
+
* This is regardless of optional or not.
|
|
17461
|
+
* @param {ASTNode} node The node to check.
|
|
17462
|
+
* @param {string | RegExp | null} objectName The expected name or the expected pattern of the object name. If this is nullish, this method doesn't check object.
|
|
17463
|
+
* @param {string | RegExp | null} propertyName The expected name or the expected pattern of the property name. If this is nullish, this method doesn't check property.
|
|
17464
|
+
* @returns {boolean} `true` if the node is member access with the object name and property name pair.
|
|
17465
|
+
* The node is a `MemberExpression` or `ChainExpression`.
|
|
17695
17466
|
*/
|
|
17467
|
+
function isSpecificMemberAccess(node, objectName, propertyName) {
|
|
17468
|
+
const checkNode = skipChainExpression(node);
|
|
17469
|
+
if (checkNode.type !== "MemberExpression") return false;
|
|
17470
|
+
if (objectName && !isSpecificId(checkNode.object, objectName)) return false;
|
|
17471
|
+
if (propertyName) {
|
|
17472
|
+
const actualPropertyName = getStaticPropertyName(checkNode);
|
|
17473
|
+
if (typeof actualPropertyName !== "string" || !checkText(actualPropertyName, propertyName)) return false;
|
|
17474
|
+
}
|
|
17475
|
+
return true;
|
|
17476
|
+
}
|
|
17696
17477
|
/**
|
|
17697
|
-
*
|
|
17698
|
-
*
|
|
17699
|
-
*
|
|
17700
|
-
*
|
|
17701
|
-
* `sourceType` as in `acorn.Options` but also allows `commonjs`
|
|
17702
|
-
*
|
|
17703
|
-
* `ecmaFeatures`, `range`, `loc`, `tokens` are not in `acorn.Options`
|
|
17704
|
-
*
|
|
17705
|
-
* `comment` is not in `acorn.Options` and doesn't err without it, but is used
|
|
17478
|
+
* Check if two literal nodes are the same value.
|
|
17479
|
+
* @param {ASTNode} left The Literal node to compare.
|
|
17480
|
+
* @param {ASTNode} right The other Literal node to compare.
|
|
17481
|
+
* @returns {boolean} `true` if the two literal nodes are the same value.
|
|
17706
17482
|
*/
|
|
17483
|
+
function equalLiteralValue(left, right) {
|
|
17484
|
+
if (left.regex || right.regex) return Boolean(left.regex && right.regex && left.regex.pattern === right.regex.pattern && left.regex.flags === right.regex.flags);
|
|
17485
|
+
if (left.bigint || right.bigint) return left.bigint === right.bigint;
|
|
17486
|
+
return left.value === right.value;
|
|
17487
|
+
}
|
|
17707
17488
|
/**
|
|
17708
|
-
*
|
|
17709
|
-
*
|
|
17710
|
-
*
|
|
17711
|
-
*
|
|
17712
|
-
*
|
|
17713
|
-
*
|
|
17714
|
-
*
|
|
17715
|
-
*
|
|
17716
|
-
*
|
|
17717
|
-
* range?: boolean,
|
|
17718
|
-
* loc?: boolean,
|
|
17719
|
-
* tokens?: boolean,
|
|
17720
|
-
* comment?: boolean,
|
|
17721
|
-
* }} Options
|
|
17489
|
+
* Check if two expressions reference the same value. For example:
|
|
17490
|
+
* a = a
|
|
17491
|
+
* a.b = a.b
|
|
17492
|
+
* a[0] = a[0]
|
|
17493
|
+
* a['b'] = a['b']
|
|
17494
|
+
* @param {ASTNode} left The left side of the comparison.
|
|
17495
|
+
* @param {ASTNode} right The right side of the comparison.
|
|
17496
|
+
* @param {boolean} [disableStaticComputedKey] Don't address `a.b` and `a["b"]` are the same if `true`. For backward compatibility.
|
|
17497
|
+
* @returns {boolean} `true` if both sides match and reference the same value.
|
|
17722
17498
|
*/
|
|
17723
|
-
|
|
17724
|
-
|
|
17725
|
-
|
|
17726
|
-
|
|
17727
|
-
|
|
17728
|
-
|
|
17729
|
-
|
|
17730
|
-
|
|
17731
|
-
|
|
17732
|
-
|
|
17733
|
-
|
|
17734
|
-
|
|
17735
|
-
|
|
17736
|
-
|
|
17737
|
-
|
|
17738
|
-
|
|
17739
|
-
|
|
17740
|
-
|
|
17741
|
-
|
|
17742
|
-
|
|
17743
|
-
get jsx() {
|
|
17744
|
-
if (this._jsx === null) {
|
|
17745
|
-
const espreeParserFactory = espree();
|
|
17746
|
-
const jsxFactory = jsx();
|
|
17747
|
-
this._jsx = acorn__namespace.Parser.extend(jsxFactory, espreeParserFactory);
|
|
17748
|
-
}
|
|
17749
|
-
return this._jsx;
|
|
17750
|
-
},
|
|
17751
|
-
/**
|
|
17752
|
-
* Gets the parser object based on the supplied options.
|
|
17753
|
-
* @param {Options} [options] The parser options.
|
|
17754
|
-
* @returns {EspreeParserJsxCtor|EspreeParserCtor} Regular or JSX Acorn parser
|
|
17755
|
-
*/
|
|
17756
|
-
get(options) {
|
|
17757
|
-
return Boolean(options && options.ecmaFeatures && options.ecmaFeatures.jsx) ? this.jsx : this.regular;
|
|
17499
|
+
function isSameReference(left, right, disableStaticComputedKey = false) {
|
|
17500
|
+
if (left.type !== right.type) {
|
|
17501
|
+
if (left.type === "ChainExpression") return isSameReference(left.expression, right, disableStaticComputedKey);
|
|
17502
|
+
if (right.type === "ChainExpression") return isSameReference(left, right.expression, disableStaticComputedKey);
|
|
17503
|
+
return false;
|
|
17504
|
+
}
|
|
17505
|
+
switch (left.type) {
|
|
17506
|
+
case "Super":
|
|
17507
|
+
case "ThisExpression": return true;
|
|
17508
|
+
case "Identifier":
|
|
17509
|
+
case "PrivateIdentifier": return left.name === right.name;
|
|
17510
|
+
case "Literal": return equalLiteralValue(left, right);
|
|
17511
|
+
case "ChainExpression": return isSameReference(left.expression, right.expression, disableStaticComputedKey);
|
|
17512
|
+
case "MemberExpression":
|
|
17513
|
+
if (!disableStaticComputedKey) {
|
|
17514
|
+
const nameA = getStaticPropertyName(left);
|
|
17515
|
+
if (nameA !== null) return isSameReference(left.object, right.object, disableStaticComputedKey) && nameA === getStaticPropertyName(right);
|
|
17516
|
+
}
|
|
17517
|
+
return left.computed === right.computed && isSameReference(left.object, right.object, disableStaticComputedKey) && isSameReference(left.property, right.property, disableStaticComputedKey);
|
|
17518
|
+
default: return false;
|
|
17758
17519
|
}
|
|
17759
|
-
};
|
|
17760
|
-
/**
|
|
17761
|
-
* Tokenizes the given code.
|
|
17762
|
-
* @param {string} code The code to tokenize.
|
|
17763
|
-
* @param {Options} [options] Options defining how to tokenize.
|
|
17764
|
-
* @returns {EspreeTokens} An array of tokens.
|
|
17765
|
-
* @throws {EnhancedSyntaxError} If the input code is invalid.
|
|
17766
|
-
* @private
|
|
17767
|
-
*/
|
|
17768
|
-
function tokenize(code, options) {
|
|
17769
|
-
const Parser = parsers.get(options);
|
|
17770
|
-
if (!options || options.tokens !== true) options = Object.assign({}, options, { tokens: true });
|
|
17771
|
-
return new Parser(options, code).tokenize();
|
|
17772
17520
|
}
|
|
17773
17521
|
/**
|
|
17774
|
-
*
|
|
17775
|
-
* @param {
|
|
17776
|
-
* @
|
|
17777
|
-
* @returns {acorn.Program} The "Program" AST node.
|
|
17778
|
-
* @throws {EnhancedSyntaxError} If the input code is invalid.
|
|
17522
|
+
* Checks whether or not a node is `Reflect.apply`.
|
|
17523
|
+
* @param {ASTNode} node A node to check.
|
|
17524
|
+
* @returns {boolean} Whether or not the node is a `Reflect.apply`.
|
|
17779
17525
|
*/
|
|
17780
|
-
function
|
|
17781
|
-
return
|
|
17526
|
+
function isReflectApply(node) {
|
|
17527
|
+
return isSpecificMemberAccess(node, "Reflect", "apply");
|
|
17782
17528
|
}
|
|
17783
|
-
/** @type {string} */
|
|
17784
|
-
const version = "11.2.0";
|
|
17785
|
-
const name = "espree";
|
|
17786
|
-
const Syntax = /* @__PURE__ */ (function() {
|
|
17787
|
-
let key, types = {};
|
|
17788
|
-
if (typeof Object.create === "function") types = Object.create(null);
|
|
17789
|
-
for (key in eslintVisitorKeys.KEYS) if (Object.hasOwn(eslintVisitorKeys.KEYS, key)) types[key] = key;
|
|
17790
|
-
if (typeof Object.freeze === "function") Object.freeze(types);
|
|
17791
|
-
return types;
|
|
17792
|
-
})();
|
|
17793
|
-
const latestEcmaVersion = /* @__PURE__ */ getLatestEcmaVersion();
|
|
17794
|
-
const supportedEcmaVersions = /* @__PURE__ */ getSupportedEcmaVersions();
|
|
17795
|
-
Object.defineProperty(exports, "VisitorKeys", {
|
|
17796
|
-
enumerable: true,
|
|
17797
|
-
get: function() {
|
|
17798
|
-
return eslintVisitorKeys.KEYS;
|
|
17799
|
-
}
|
|
17800
|
-
});
|
|
17801
|
-
exports.Syntax = Syntax;
|
|
17802
|
-
exports.latestEcmaVersion = latestEcmaVersion;
|
|
17803
|
-
exports.name = name;
|
|
17804
|
-
exports.parse = parse;
|
|
17805
|
-
exports.supportedEcmaVersions = supportedEcmaVersions;
|
|
17806
|
-
exports.tokenize = tokenize;
|
|
17807
|
-
exports.version = version;
|
|
17808
|
-
}));
|
|
17809
|
-
//#endregion
|
|
17810
|
-
//#region ../../node_modules/.pnpm/escape-string-regexp@4.0.0/node_modules/escape-string-regexp/index.js
|
|
17811
|
-
var require_escape_string_regexp = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
17812
|
-
module.exports = (string) => {
|
|
17813
|
-
if (typeof string !== "string") throw new TypeError("Expected a string");
|
|
17814
|
-
return string.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d");
|
|
17815
|
-
};
|
|
17816
|
-
}));
|
|
17817
|
-
//#endregion
|
|
17818
|
-
//#region ../../node_modules/.pnpm/eslint@10.3.0_jiti@2.7.0/node_modules/eslint/lib/shared/ast-utils.js
|
|
17819
|
-
/**
|
|
17820
|
-
* @fileoverview Common utils for AST.
|
|
17821
|
-
*
|
|
17822
|
-
* This file contains only shared items for core and rules.
|
|
17823
|
-
* If you make a utility for rules, please see `../rules/utils/ast-utils.js`.
|
|
17824
|
-
*
|
|
17825
|
-
* @author Toru Nagashima <https://github.com/mysticatea>
|
|
17826
|
-
*/
|
|
17827
|
-
var require_ast_utils$1 = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
17828
|
-
const breakableTypePattern = /^(?:(?:Do)?While|For(?:In|Of)?|Switch)Statement$/u;
|
|
17829
|
-
const lineBreakPattern = /\r\n|[\r\n\u2028\u2029]/u;
|
|
17830
|
-
const shebangPattern = /^#!([^\r\n]+)/u;
|
|
17831
17529
|
/**
|
|
17832
|
-
*
|
|
17833
|
-
*
|
|
17834
|
-
* @returns {
|
|
17530
|
+
* Checks whether or not a node is `Array.from`.
|
|
17531
|
+
* @param {ASTNode} node A node to check.
|
|
17532
|
+
* @returns {boolean} Whether or not the node is a `Array.from`.
|
|
17835
17533
|
*/
|
|
17836
|
-
function
|
|
17837
|
-
return
|
|
17534
|
+
function isArrayFromMethod(node) {
|
|
17535
|
+
return isSpecificMemberAccess(node, arrayOrTypedArrayPattern, "from");
|
|
17838
17536
|
}
|
|
17839
|
-
module.exports = {
|
|
17840
|
-
breakableTypePattern,
|
|
17841
|
-
lineBreakPattern,
|
|
17842
|
-
createGlobalLinebreakMatcher,
|
|
17843
|
-
shebangPattern
|
|
17844
|
-
};
|
|
17845
|
-
}));
|
|
17846
|
-
//#endregion
|
|
17847
|
-
//#region ../../node_modules/.pnpm/eslint@10.3.0_jiti@2.7.0/node_modules/eslint/conf/globals.js
|
|
17848
|
-
/**
|
|
17849
|
-
* @fileoverview Globals for ecmaVersion/sourceType
|
|
17850
|
-
* @author Nicholas C. Zakas
|
|
17851
|
-
*/
|
|
17852
|
-
var require_globals = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
17853
|
-
const commonjs = {
|
|
17854
|
-
exports: true,
|
|
17855
|
-
global: false,
|
|
17856
|
-
module: false,
|
|
17857
|
-
require: false
|
|
17858
|
-
};
|
|
17859
|
-
const es3 = {
|
|
17860
|
-
Array: false,
|
|
17861
|
-
Boolean: false,
|
|
17862
|
-
constructor: false,
|
|
17863
|
-
Date: false,
|
|
17864
|
-
decodeURI: false,
|
|
17865
|
-
decodeURIComponent: false,
|
|
17866
|
-
encodeURI: false,
|
|
17867
|
-
encodeURIComponent: false,
|
|
17868
|
-
Error: false,
|
|
17869
|
-
escape: false,
|
|
17870
|
-
eval: false,
|
|
17871
|
-
EvalError: false,
|
|
17872
|
-
Function: false,
|
|
17873
|
-
hasOwnProperty: false,
|
|
17874
|
-
Infinity: false,
|
|
17875
|
-
isFinite: false,
|
|
17876
|
-
isNaN: false,
|
|
17877
|
-
isPrototypeOf: false,
|
|
17878
|
-
Math: false,
|
|
17879
|
-
NaN: false,
|
|
17880
|
-
Number: false,
|
|
17881
|
-
Object: false,
|
|
17882
|
-
parseFloat: false,
|
|
17883
|
-
parseInt: false,
|
|
17884
|
-
propertyIsEnumerable: false,
|
|
17885
|
-
RangeError: false,
|
|
17886
|
-
ReferenceError: false,
|
|
17887
|
-
RegExp: false,
|
|
17888
|
-
String: false,
|
|
17889
|
-
SyntaxError: false,
|
|
17890
|
-
toLocaleString: false,
|
|
17891
|
-
toString: false,
|
|
17892
|
-
TypeError: false,
|
|
17893
|
-
undefined: false,
|
|
17894
|
-
unescape: false,
|
|
17895
|
-
URIError: false,
|
|
17896
|
-
valueOf: false
|
|
17897
|
-
};
|
|
17898
|
-
const es5 = {
|
|
17899
|
-
...es3,
|
|
17900
|
-
JSON: false
|
|
17901
|
-
};
|
|
17902
|
-
const es2015 = {
|
|
17903
|
-
...es5,
|
|
17904
|
-
ArrayBuffer: false,
|
|
17905
|
-
DataView: false,
|
|
17906
|
-
Float32Array: false,
|
|
17907
|
-
Float64Array: false,
|
|
17908
|
-
Int16Array: false,
|
|
17909
|
-
Int32Array: false,
|
|
17910
|
-
Int8Array: false,
|
|
17911
|
-
Intl: false,
|
|
17912
|
-
Map: false,
|
|
17913
|
-
Promise: false,
|
|
17914
|
-
Proxy: false,
|
|
17915
|
-
Reflect: false,
|
|
17916
|
-
Set: false,
|
|
17917
|
-
Symbol: false,
|
|
17918
|
-
Uint16Array: false,
|
|
17919
|
-
Uint32Array: false,
|
|
17920
|
-
Uint8Array: false,
|
|
17921
|
-
Uint8ClampedArray: false,
|
|
17922
|
-
WeakMap: false,
|
|
17923
|
-
WeakSet: false
|
|
17924
|
-
};
|
|
17925
|
-
const es2016 = { ...es2015 };
|
|
17926
|
-
const es2017 = {
|
|
17927
|
-
...es2016,
|
|
17928
|
-
Atomics: false,
|
|
17929
|
-
SharedArrayBuffer: false
|
|
17930
|
-
};
|
|
17931
|
-
const es2018 = { ...es2017 };
|
|
17932
|
-
const es2019 = { ...es2018 };
|
|
17933
|
-
const es2020 = {
|
|
17934
|
-
...es2019,
|
|
17935
|
-
BigInt: false,
|
|
17936
|
-
BigInt64Array: false,
|
|
17937
|
-
BigUint64Array: false,
|
|
17938
|
-
globalThis: false
|
|
17939
|
-
};
|
|
17940
|
-
const es2021 = {
|
|
17941
|
-
...es2020,
|
|
17942
|
-
AggregateError: false,
|
|
17943
|
-
FinalizationRegistry: false,
|
|
17944
|
-
WeakRef: false
|
|
17945
|
-
};
|
|
17946
|
-
const es2022 = { ...es2021 };
|
|
17947
|
-
const es2023 = { ...es2022 };
|
|
17948
|
-
const es2024 = { ...es2023 };
|
|
17949
|
-
const es2025 = {
|
|
17950
|
-
...es2024,
|
|
17951
|
-
Float16Array: false,
|
|
17952
|
-
Iterator: false
|
|
17953
|
-
};
|
|
17954
|
-
module.exports = {
|
|
17955
|
-
commonjs,
|
|
17956
|
-
es3,
|
|
17957
|
-
es5,
|
|
17958
|
-
es2015,
|
|
17959
|
-
es2016,
|
|
17960
|
-
es2017,
|
|
17961
|
-
es2018,
|
|
17962
|
-
es2019,
|
|
17963
|
-
es2020,
|
|
17964
|
-
es2021,
|
|
17965
|
-
es2022,
|
|
17966
|
-
es2023,
|
|
17967
|
-
es2024,
|
|
17968
|
-
es2025,
|
|
17969
|
-
es2026: {
|
|
17970
|
-
...es2025,
|
|
17971
|
-
AsyncDisposableStack: false,
|
|
17972
|
-
DisposableStack: false,
|
|
17973
|
-
SuppressedError: false,
|
|
17974
|
-
Temporal: false
|
|
17975
|
-
}
|
|
17976
|
-
};
|
|
17977
|
-
}));
|
|
17978
|
-
//#endregion
|
|
17979
|
-
//#region ../../node_modules/.pnpm/eslint@10.3.0_jiti@2.7.0/node_modules/eslint/conf/ecma-version.js
|
|
17980
|
-
/**
|
|
17981
|
-
* @fileoverview Configuration related to ECMAScript versions
|
|
17982
|
-
* @author Milos Djermanovic
|
|
17983
|
-
*/
|
|
17984
|
-
var require_ecma_version = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
17985
|
-
module.exports = { LATEST_ECMA_VERSION: 2026 };
|
|
17986
|
-
}));
|
|
17987
|
-
//#endregion
|
|
17988
|
-
//#region ../../node_modules/.pnpm/eslint@10.3.0_jiti@2.7.0/node_modules/eslint/lib/rules/utils/ast-utils.js
|
|
17989
|
-
/**
|
|
17990
|
-
* @fileoverview Common utils for AST.
|
|
17991
|
-
* @author Gyandeep Singh
|
|
17992
|
-
*/
|
|
17993
|
-
var require_ast_utils = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
17994
|
-
const { KEYS: eslintVisitorKeys } = require_eslint_visitor_keys$1();
|
|
17995
|
-
const esutils = require_utils$3();
|
|
17996
|
-
const espree = require_espree();
|
|
17997
|
-
const escapeRegExp = require_escape_string_regexp();
|
|
17998
|
-
const { breakableTypePattern, createGlobalLinebreakMatcher, lineBreakPattern, shebangPattern } = require_ast_utils$1();
|
|
17999
|
-
const globals = require_globals();
|
|
18000
|
-
const { LATEST_ECMA_VERSION } = require_ecma_version();
|
|
18001
|
-
/** @typedef {import("eslint-scope").Scope} Scope */
|
|
18002
|
-
/** @typedef {import("eslint-scope").Variable} Variable */
|
|
18003
|
-
const anyFunctionPattern = /^(?:Function(?:Declaration|Expression)|ArrowFunctionExpression)$/u;
|
|
18004
|
-
const anyLoopPattern = /^(?:DoWhile|For|ForIn|ForOf|While)Statement$/u;
|
|
18005
|
-
const arrayMethodWithThisArgPattern = /^(?:every|filter|find(?:Last)?(?:Index)?|flatMap|forEach|map|some)$/u;
|
|
18006
|
-
const arrayOrTypedArrayPattern = /Array$/u;
|
|
18007
|
-
const bindOrCallOrApplyPattern = /^(?:bind|call|apply)$/u;
|
|
18008
|
-
const thisTagPattern = /^[\s*]*@this/mu;
|
|
18009
|
-
const COMMENTS_IGNORE_PATTERN = /^\s*(?:eslint|jshint\s+|jslint\s+|istanbul\s+|globals?\s+|exported\s+|jscs)/u;
|
|
18010
|
-
const ESLINT_DIRECTIVE_PATTERN = /^(?:eslint[- ]|(?:globals?|exported) )/u;
|
|
18011
|
-
const LINEBREAKS = new Set([
|
|
18012
|
-
"\r\n",
|
|
18013
|
-
"\r",
|
|
18014
|
-
"\n",
|
|
18015
|
-
"\u2028",
|
|
18016
|
-
"\u2029"
|
|
18017
|
-
]);
|
|
18018
|
-
const STATEMENT_LIST_PARENTS = new Set([
|
|
18019
|
-
"Program",
|
|
18020
|
-
"BlockStatement",
|
|
18021
|
-
"StaticBlock",
|
|
18022
|
-
"SwitchCase"
|
|
18023
|
-
]);
|
|
18024
|
-
const LEXICAL_DECLARATION_KINDS = new Set([
|
|
18025
|
-
"let",
|
|
18026
|
-
"const",
|
|
18027
|
-
"using",
|
|
18028
|
-
"await using"
|
|
18029
|
-
]);
|
|
18030
|
-
const DECIMAL_INTEGER_PATTERN = /^(?:0|0[0-7]*[89]\d*|[1-9](?:_?\d)*)$/u;
|
|
18031
|
-
const OCTAL_OR_NON_OCTAL_DECIMAL_ESCAPE_PATTERN = /^(?:[^\\]|\\.)*\\(?:[1-9]|0\d)/su;
|
|
18032
|
-
const LOGICAL_ASSIGNMENT_OPERATORS = new Set([
|
|
18033
|
-
"&&=",
|
|
18034
|
-
"||=",
|
|
18035
|
-
"??="
|
|
18036
|
-
]);
|
|
18037
17537
|
/**
|
|
18038
|
-
*
|
|
18039
|
-
* @
|
|
17538
|
+
* Checks whether or not a node is `Array.fromAsync`.
|
|
17539
|
+
* @param {ASTNode} node A node to check.
|
|
17540
|
+
* @returns {boolean} Whether or not the node is a `Array.fromAsync`.
|
|
18040
17541
|
*/
|
|
18041
|
-
|
|
17542
|
+
function isArrayFromAsyncMethod(node) {
|
|
17543
|
+
return isSpecificMemberAccess(node, "Array", "fromAsync");
|
|
17544
|
+
}
|
|
18042
17545
|
/**
|
|
18043
|
-
* Checks
|
|
18044
|
-
* @param {
|
|
18045
|
-
* @
|
|
18046
|
-
* @param {Reference[]} references The array that the reference belongs to.
|
|
18047
|
-
* @returns {boolean} Success/Failure
|
|
18048
|
-
* @private
|
|
17546
|
+
* Checks whether or not a node is a method which expects a function as a first argument, and `thisArg` as a second argument.
|
|
17547
|
+
* @param {ASTNode} node A node to check.
|
|
17548
|
+
* @returns {boolean} Whether or not the node is a method which expects a function as a first argument, and `thisArg` as a second argument.
|
|
18049
17549
|
*/
|
|
18050
|
-
function
|
|
18051
|
-
|
|
18052
|
-
const modifyingDifferentIdentifier = index === 0 || references[index - 1].identifier !== identifier;
|
|
18053
|
-
return identifier && reference.init === false && reference.isWrite() && modifyingDifferentIdentifier;
|
|
17550
|
+
function isMethodWhichHasThisArg(node) {
|
|
17551
|
+
return isSpecificMemberAccess(node, null, arrayMethodWithThisArgPattern);
|
|
18054
17552
|
}
|
|
18055
17553
|
/**
|
|
18056
|
-
*
|
|
18057
|
-
* @param {
|
|
18058
|
-
* @returns {
|
|
17554
|
+
* Creates the negate function of the given function.
|
|
17555
|
+
* @param {Function} f The function to negate.
|
|
17556
|
+
* @returns {Function} Negated function.
|
|
18059
17557
|
*/
|
|
18060
|
-
function
|
|
18061
|
-
return
|
|
17558
|
+
function negate(f) {
|
|
17559
|
+
return (token) => !f(token);
|
|
18062
17560
|
}
|
|
18063
17561
|
/**
|
|
18064
|
-
*
|
|
18065
|
-
* @param {
|
|
18066
|
-
* @
|
|
17562
|
+
* Determines if a node is surrounded by parentheses.
|
|
17563
|
+
* @param {SourceCode} sourceCode The ESLint source code object
|
|
17564
|
+
* @param {ASTNode} node The node to be checked.
|
|
17565
|
+
* @returns {boolean} True if the node is parenthesised.
|
|
17566
|
+
* @private
|
|
18067
17567
|
*/
|
|
18068
|
-
function
|
|
18069
|
-
|
|
17568
|
+
function isParenthesised(sourceCode, node) {
|
|
17569
|
+
const previousToken = sourceCode.getTokenBefore(node), nextToken = sourceCode.getTokenAfter(node);
|
|
17570
|
+
return Boolean(previousToken && nextToken) && previousToken.value === "(" && previousToken.range[1] <= node.range[0] && nextToken.value === ")" && nextToken.range[0] >= node.range[1];
|
|
18070
17571
|
}
|
|
18071
17572
|
/**
|
|
18072
|
-
*
|
|
18073
|
-
* @param {
|
|
18074
|
-
* @returns {
|
|
17573
|
+
* Checks if the given token is a `=` token or not.
|
|
17574
|
+
* @param {Token} token The token to check.
|
|
17575
|
+
* @returns {boolean} `true` if the token is a `=` token.
|
|
18075
17576
|
*/
|
|
18076
|
-
function
|
|
18077
|
-
|
|
18078
|
-
return null;
|
|
17577
|
+
function isEqToken(token) {
|
|
17578
|
+
return token.value === "=" && token.type === "Punctuator";
|
|
18079
17579
|
}
|
|
18080
17580
|
/**
|
|
18081
|
-
* Checks
|
|
18082
|
-
*
|
|
18083
|
-
*
|
|
18084
|
-
* - ArrowFunctionExpression
|
|
18085
|
-
* - FunctionDeclaration
|
|
18086
|
-
* - FunctionExpression
|
|
18087
|
-
* @param {ASTNode|null} node A node to check.
|
|
18088
|
-
* @returns {boolean} `true` if the node is a function node.
|
|
17581
|
+
* Checks if the given token is an arrow token or not.
|
|
17582
|
+
* @param {Token} token The token to check.
|
|
17583
|
+
* @returns {boolean} `true` if the token is an arrow token.
|
|
18089
17584
|
*/
|
|
18090
|
-
function
|
|
18091
|
-
return
|
|
18092
|
-
}
|
|
18093
|
-
/**
|
|
18094
|
-
* Checks whether a given node is a loop node or not.
|
|
18095
|
-
* The following types are loop nodes:
|
|
18096
|
-
*
|
|
18097
|
-
* - DoWhileStatement
|
|
18098
|
-
* - ForInStatement
|
|
18099
|
-
* - ForOfStatement
|
|
18100
|
-
* - ForStatement
|
|
18101
|
-
* - WhileStatement
|
|
18102
|
-
* @param {ASTNode|null} node A node to check.
|
|
18103
|
-
* @returns {boolean} `true` if the node is a loop node.
|
|
18104
|
-
*/
|
|
18105
|
-
function isLoop(node) {
|
|
18106
|
-
return Boolean(node && anyLoopPattern.test(node.type));
|
|
18107
|
-
}
|
|
18108
|
-
/**
|
|
18109
|
-
* Checks whether the given node is in a loop or not.
|
|
18110
|
-
* @param {ASTNode} node The node to check.
|
|
18111
|
-
* @returns {boolean} `true` if the node is in a loop.
|
|
18112
|
-
*/
|
|
18113
|
-
function isInLoop(node) {
|
|
18114
|
-
for (let currentNode = node; currentNode && !isFunction(currentNode); currentNode = currentNode.parent) if (isLoop(currentNode)) return true;
|
|
18115
|
-
return false;
|
|
18116
|
-
}
|
|
18117
|
-
/**
|
|
18118
|
-
* Determines whether the given node is a `null` literal.
|
|
18119
|
-
* @param {ASTNode} node The node to check
|
|
18120
|
-
* @returns {boolean} `true` if the node is a `null` literal
|
|
18121
|
-
*/
|
|
18122
|
-
function isNullLiteral(node) {
|
|
18123
|
-
return node.type === "Literal" && node.value === null && !node.regex && !node.bigint;
|
|
18124
|
-
}
|
|
18125
|
-
/**
|
|
18126
|
-
* Checks whether or not a node is `null` or `undefined`.
|
|
18127
|
-
* @param {ASTNode} node A node to check.
|
|
18128
|
-
* @returns {boolean} Whether or not the node is a `null` or `undefined`.
|
|
18129
|
-
* @public
|
|
18130
|
-
*/
|
|
18131
|
-
function isNullOrUndefined(node) {
|
|
18132
|
-
return isNullLiteral(node) || node.type === "Identifier" && node.name === "undefined" || node.type === "UnaryExpression" && node.operator === "void";
|
|
18133
|
-
}
|
|
18134
|
-
/**
|
|
18135
|
-
* Checks whether or not a node is callee.
|
|
18136
|
-
* @param {ASTNode} node A node to check.
|
|
18137
|
-
* @returns {boolean} Whether or not the node is callee.
|
|
18138
|
-
*/
|
|
18139
|
-
function isCallee(node) {
|
|
18140
|
-
return node.parent.type === "CallExpression" && node.parent.callee === node;
|
|
18141
|
-
}
|
|
18142
|
-
/**
|
|
18143
|
-
* Returns the result of the string conversion applied to the evaluated value of the given expression node,
|
|
18144
|
-
* if it can be determined statically.
|
|
18145
|
-
*
|
|
18146
|
-
* This function returns a `string` value for all `Literal` nodes and simple `TemplateLiteral` nodes only.
|
|
18147
|
-
* In all other cases, this function returns `null`.
|
|
18148
|
-
* @param {ASTNode} node Expression node.
|
|
18149
|
-
* @returns {string|null} String value if it can be determined. Otherwise, `null`.
|
|
18150
|
-
*/
|
|
18151
|
-
function getStaticStringValue(node) {
|
|
18152
|
-
switch (node.type) {
|
|
18153
|
-
case "Literal":
|
|
18154
|
-
if (node.value === null) {
|
|
18155
|
-
if (isNullLiteral(node)) return String(node.value);
|
|
18156
|
-
if (node.regex) return `/${node.regex.pattern}/${node.regex.flags}`;
|
|
18157
|
-
if (node.bigint) return node.bigint;
|
|
18158
|
-
} else return String(node.value);
|
|
18159
|
-
break;
|
|
18160
|
-
case "TemplateLiteral":
|
|
18161
|
-
if (node.expressions.length === 0 && node.quasis.length === 1) return node.quasis[0].value.cooked;
|
|
18162
|
-
break;
|
|
18163
|
-
}
|
|
18164
|
-
return null;
|
|
18165
|
-
}
|
|
18166
|
-
/**
|
|
18167
|
-
* Gets the property name of a given node.
|
|
18168
|
-
* The node can be a MemberExpression, a Property, or a MethodDefinition.
|
|
18169
|
-
*
|
|
18170
|
-
* If the name is dynamic, this returns `null`.
|
|
18171
|
-
*
|
|
18172
|
-
* For examples:
|
|
18173
|
-
*
|
|
18174
|
-
* a.b // => "b"
|
|
18175
|
-
* a["b"] // => "b"
|
|
18176
|
-
* a['b'] // => "b"
|
|
18177
|
-
* a[`b`] // => "b"
|
|
18178
|
-
* a[100] // => "100"
|
|
18179
|
-
* a[b] // => null
|
|
18180
|
-
* a["a" + "b"] // => null
|
|
18181
|
-
* a[tag`b`] // => null
|
|
18182
|
-
* a[`${b}`] // => null
|
|
18183
|
-
*
|
|
18184
|
-
* let a = {b: 1} // => "b"
|
|
18185
|
-
* let a = {["b"]: 1} // => "b"
|
|
18186
|
-
* let a = {['b']: 1} // => "b"
|
|
18187
|
-
* let a = {[`b`]: 1} // => "b"
|
|
18188
|
-
* let a = {[100]: 1} // => "100"
|
|
18189
|
-
* let a = {[b]: 1} // => null
|
|
18190
|
-
* let a = {["a" + "b"]: 1} // => null
|
|
18191
|
-
* let a = {[tag`b`]: 1} // => null
|
|
18192
|
-
* let a = {[`${b}`]: 1} // => null
|
|
18193
|
-
* @param {ASTNode} node The node to get.
|
|
18194
|
-
* @returns {string|null} The property name if static. Otherwise, null.
|
|
18195
|
-
*/
|
|
18196
|
-
function getStaticPropertyName(node) {
|
|
18197
|
-
let prop;
|
|
18198
|
-
switch (node && node.type) {
|
|
18199
|
-
case "ChainExpression": return getStaticPropertyName(node.expression);
|
|
18200
|
-
case "Property":
|
|
18201
|
-
case "PropertyDefinition":
|
|
18202
|
-
case "MethodDefinition":
|
|
18203
|
-
case "TSPropertySignature":
|
|
18204
|
-
case "TSMethodSignature":
|
|
18205
|
-
prop = node.key;
|
|
18206
|
-
break;
|
|
18207
|
-
case "MemberExpression":
|
|
18208
|
-
prop = node.property;
|
|
18209
|
-
break;
|
|
18210
|
-
}
|
|
18211
|
-
if (prop) {
|
|
18212
|
-
if (prop.type === "Identifier" && !node.computed) return prop.name;
|
|
18213
|
-
return getStaticStringValue(prop);
|
|
18214
|
-
}
|
|
18215
|
-
return null;
|
|
18216
|
-
}
|
|
18217
|
-
/**
|
|
18218
|
-
* Retrieve `ChainExpression#expression` value if the given node a `ChainExpression` node. Otherwise, pass through it.
|
|
18219
|
-
* @param {ASTNode} node The node to address.
|
|
18220
|
-
* @returns {ASTNode} The `ChainExpression#expression` value if the node is a `ChainExpression` node. Otherwise, the node.
|
|
18221
|
-
*/
|
|
18222
|
-
function skipChainExpression(node) {
|
|
18223
|
-
return node && node.type === "ChainExpression" ? node.expression : node;
|
|
18224
|
-
}
|
|
18225
|
-
/**
|
|
18226
|
-
* Check if the `actual` is an expected value.
|
|
18227
|
-
* @param {string} actual The string value to check.
|
|
18228
|
-
* @param {string | RegExp} expected The expected string value or pattern.
|
|
18229
|
-
* @returns {boolean} `true` if the `actual` is an expected value.
|
|
18230
|
-
*/
|
|
18231
|
-
function checkText(actual, expected) {
|
|
18232
|
-
return typeof expected === "string" ? actual === expected : expected.test(actual);
|
|
18233
|
-
}
|
|
18234
|
-
/**
|
|
18235
|
-
* Check if a given node is an Identifier node with a given name.
|
|
18236
|
-
* @param {ASTNode} node The node to check.
|
|
18237
|
-
* @param {string | RegExp} name The expected name or the expected pattern of the object name.
|
|
18238
|
-
* @returns {boolean} `true` if the node is an Identifier node with the name.
|
|
18239
|
-
*/
|
|
18240
|
-
function isSpecificId(node, name) {
|
|
18241
|
-
return node.type === "Identifier" && checkText(node.name, name);
|
|
18242
|
-
}
|
|
18243
|
-
/**
|
|
18244
|
-
* Check if a given node is member access with a given object name and property name pair.
|
|
18245
|
-
* This is regardless of optional or not.
|
|
18246
|
-
* @param {ASTNode} node The node to check.
|
|
18247
|
-
* @param {string | RegExp | null} objectName The expected name or the expected pattern of the object name. If this is nullish, this method doesn't check object.
|
|
18248
|
-
* @param {string | RegExp | null} propertyName The expected name or the expected pattern of the property name. If this is nullish, this method doesn't check property.
|
|
18249
|
-
* @returns {boolean} `true` if the node is member access with the object name and property name pair.
|
|
18250
|
-
* The node is a `MemberExpression` or `ChainExpression`.
|
|
18251
|
-
*/
|
|
18252
|
-
function isSpecificMemberAccess(node, objectName, propertyName) {
|
|
18253
|
-
const checkNode = skipChainExpression(node);
|
|
18254
|
-
if (checkNode.type !== "MemberExpression") return false;
|
|
18255
|
-
if (objectName && !isSpecificId(checkNode.object, objectName)) return false;
|
|
18256
|
-
if (propertyName) {
|
|
18257
|
-
const actualPropertyName = getStaticPropertyName(checkNode);
|
|
18258
|
-
if (typeof actualPropertyName !== "string" || !checkText(actualPropertyName, propertyName)) return false;
|
|
18259
|
-
}
|
|
18260
|
-
return true;
|
|
18261
|
-
}
|
|
18262
|
-
/**
|
|
18263
|
-
* Check if two literal nodes are the same value.
|
|
18264
|
-
* @param {ASTNode} left The Literal node to compare.
|
|
18265
|
-
* @param {ASTNode} right The other Literal node to compare.
|
|
18266
|
-
* @returns {boolean} `true` if the two literal nodes are the same value.
|
|
18267
|
-
*/
|
|
18268
|
-
function equalLiteralValue(left, right) {
|
|
18269
|
-
if (left.regex || right.regex) return Boolean(left.regex && right.regex && left.regex.pattern === right.regex.pattern && left.regex.flags === right.regex.flags);
|
|
18270
|
-
if (left.bigint || right.bigint) return left.bigint === right.bigint;
|
|
18271
|
-
return left.value === right.value;
|
|
18272
|
-
}
|
|
18273
|
-
/**
|
|
18274
|
-
* Check if two expressions reference the same value. For example:
|
|
18275
|
-
* a = a
|
|
18276
|
-
* a.b = a.b
|
|
18277
|
-
* a[0] = a[0]
|
|
18278
|
-
* a['b'] = a['b']
|
|
18279
|
-
* @param {ASTNode} left The left side of the comparison.
|
|
18280
|
-
* @param {ASTNode} right The right side of the comparison.
|
|
18281
|
-
* @param {boolean} [disableStaticComputedKey] Don't address `a.b` and `a["b"]` are the same if `true`. For backward compatibility.
|
|
18282
|
-
* @returns {boolean} `true` if both sides match and reference the same value.
|
|
18283
|
-
*/
|
|
18284
|
-
function isSameReference(left, right, disableStaticComputedKey = false) {
|
|
18285
|
-
if (left.type !== right.type) {
|
|
18286
|
-
if (left.type === "ChainExpression") return isSameReference(left.expression, right, disableStaticComputedKey);
|
|
18287
|
-
if (right.type === "ChainExpression") return isSameReference(left, right.expression, disableStaticComputedKey);
|
|
18288
|
-
return false;
|
|
18289
|
-
}
|
|
18290
|
-
switch (left.type) {
|
|
18291
|
-
case "Super":
|
|
18292
|
-
case "ThisExpression": return true;
|
|
18293
|
-
case "Identifier":
|
|
18294
|
-
case "PrivateIdentifier": return left.name === right.name;
|
|
18295
|
-
case "Literal": return equalLiteralValue(left, right);
|
|
18296
|
-
case "ChainExpression": return isSameReference(left.expression, right.expression, disableStaticComputedKey);
|
|
18297
|
-
case "MemberExpression":
|
|
18298
|
-
if (!disableStaticComputedKey) {
|
|
18299
|
-
const nameA = getStaticPropertyName(left);
|
|
18300
|
-
if (nameA !== null) return isSameReference(left.object, right.object, disableStaticComputedKey) && nameA === getStaticPropertyName(right);
|
|
18301
|
-
}
|
|
18302
|
-
return left.computed === right.computed && isSameReference(left.object, right.object, disableStaticComputedKey) && isSameReference(left.property, right.property, disableStaticComputedKey);
|
|
18303
|
-
default: return false;
|
|
18304
|
-
}
|
|
18305
|
-
}
|
|
18306
|
-
/**
|
|
18307
|
-
* Checks whether or not a node is `Reflect.apply`.
|
|
18308
|
-
* @param {ASTNode} node A node to check.
|
|
18309
|
-
* @returns {boolean} Whether or not the node is a `Reflect.apply`.
|
|
18310
|
-
*/
|
|
18311
|
-
function isReflectApply(node) {
|
|
18312
|
-
return isSpecificMemberAccess(node, "Reflect", "apply");
|
|
18313
|
-
}
|
|
18314
|
-
/**
|
|
18315
|
-
* Checks whether or not a node is `Array.from`.
|
|
18316
|
-
* @param {ASTNode} node A node to check.
|
|
18317
|
-
* @returns {boolean} Whether or not the node is a `Array.from`.
|
|
18318
|
-
*/
|
|
18319
|
-
function isArrayFromMethod(node) {
|
|
18320
|
-
return isSpecificMemberAccess(node, arrayOrTypedArrayPattern, "from");
|
|
18321
|
-
}
|
|
18322
|
-
/**
|
|
18323
|
-
* Checks whether or not a node is `Array.fromAsync`.
|
|
18324
|
-
* @param {ASTNode} node A node to check.
|
|
18325
|
-
* @returns {boolean} Whether or not the node is a `Array.fromAsync`.
|
|
18326
|
-
*/
|
|
18327
|
-
function isArrayFromAsyncMethod(node) {
|
|
18328
|
-
return isSpecificMemberAccess(node, "Array", "fromAsync");
|
|
18329
|
-
}
|
|
18330
|
-
/**
|
|
18331
|
-
* Checks whether or not a node is a method which expects a function as a first argument, and `thisArg` as a second argument.
|
|
18332
|
-
* @param {ASTNode} node A node to check.
|
|
18333
|
-
* @returns {boolean} Whether or not the node is a method which expects a function as a first argument, and `thisArg` as a second argument.
|
|
18334
|
-
*/
|
|
18335
|
-
function isMethodWhichHasThisArg(node) {
|
|
18336
|
-
return isSpecificMemberAccess(node, null, arrayMethodWithThisArgPattern);
|
|
18337
|
-
}
|
|
18338
|
-
/**
|
|
18339
|
-
* Creates the negate function of the given function.
|
|
18340
|
-
* @param {Function} f The function to negate.
|
|
18341
|
-
* @returns {Function} Negated function.
|
|
18342
|
-
*/
|
|
18343
|
-
function negate(f) {
|
|
18344
|
-
return (token) => !f(token);
|
|
18345
|
-
}
|
|
18346
|
-
/**
|
|
18347
|
-
* Determines if a node is surrounded by parentheses.
|
|
18348
|
-
* @param {SourceCode} sourceCode The ESLint source code object
|
|
18349
|
-
* @param {ASTNode} node The node to be checked.
|
|
18350
|
-
* @returns {boolean} True if the node is parenthesised.
|
|
18351
|
-
* @private
|
|
18352
|
-
*/
|
|
18353
|
-
function isParenthesised(sourceCode, node) {
|
|
18354
|
-
const previousToken = sourceCode.getTokenBefore(node), nextToken = sourceCode.getTokenAfter(node);
|
|
18355
|
-
return Boolean(previousToken && nextToken) && previousToken.value === "(" && previousToken.range[1] <= node.range[0] && nextToken.value === ")" && nextToken.range[0] >= node.range[1];
|
|
18356
|
-
}
|
|
18357
|
-
/**
|
|
18358
|
-
* Checks if the given token is a `=` token or not.
|
|
18359
|
-
* @param {Token} token The token to check.
|
|
18360
|
-
* @returns {boolean} `true` if the token is a `=` token.
|
|
18361
|
-
*/
|
|
18362
|
-
function isEqToken(token) {
|
|
18363
|
-
return token.value === "=" && token.type === "Punctuator";
|
|
18364
|
-
}
|
|
18365
|
-
/**
|
|
18366
|
-
* Checks if the given token is an arrow token or not.
|
|
18367
|
-
* @param {Token} token The token to check.
|
|
18368
|
-
* @returns {boolean} `true` if the token is an arrow token.
|
|
18369
|
-
*/
|
|
18370
|
-
function isArrowToken(token) {
|
|
18371
|
-
return token.value === "=>" && token.type === "Punctuator";
|
|
17585
|
+
function isArrowToken(token) {
|
|
17586
|
+
return token.value === "=>" && token.type === "Punctuator";
|
|
18372
17587
|
}
|
|
18373
17588
|
/**
|
|
18374
17589
|
* Checks if the given token is a comma token or not.
|
|
@@ -72338,1391 +71553,6 @@ var require_source_code = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
72338
71553
|
module.exports = { SourceCode: require_source_code$1() };
|
|
72339
71554
|
}));
|
|
72340
71555
|
//#endregion
|
|
72341
|
-
//#region ../../node_modules/.pnpm/eslint-scope@9.1.2/node_modules/eslint-scope/dist/eslint-scope.cjs
|
|
72342
|
-
var require_eslint_scope = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
72343
|
-
var estraverse = require_estraverse();
|
|
72344
|
-
var esrecurse = require_esrecurse();
|
|
72345
|
-
/**
|
|
72346
|
-
* @fileoverview Assertion utilities.
|
|
72347
|
-
* @author Nicholas C. Zakas
|
|
72348
|
-
*/
|
|
72349
|
-
/**
|
|
72350
|
-
* Throws an error if the given condition is not truthy.
|
|
72351
|
-
* @param {boolean} condition The condition to check.
|
|
72352
|
-
* @param {string} message The message to include with the error.
|
|
72353
|
-
* @returns {void}
|
|
72354
|
-
* @throws {Error} When the condition is not truthy.
|
|
72355
|
-
*/
|
|
72356
|
-
function assert(condition, message = "Assertion failed.") {
|
|
72357
|
-
if (!condition) throw new Error(message);
|
|
72358
|
-
}
|
|
72359
|
-
/** @import * as types from "eslint-scope" */
|
|
72360
|
-
const READ = 1;
|
|
72361
|
-
const WRITE = 2;
|
|
72362
|
-
const RW = READ | WRITE;
|
|
72363
|
-
/**
|
|
72364
|
-
* A Reference represents a single occurrence of an identifier in code.
|
|
72365
|
-
* @constructor Reference
|
|
72366
|
-
* @implements {types.Reference}
|
|
72367
|
-
*/
|
|
72368
|
-
var Reference = class Reference {
|
|
72369
|
-
constructor(ident, scope, flag, writeExpr, maybeImplicitGlobal, partial, init) {
|
|
72370
|
-
/**
|
|
72371
|
-
* Identifier syntax node.
|
|
72372
|
-
* @member {espreeIdentifier} Reference#identifier
|
|
72373
|
-
*/
|
|
72374
|
-
this.identifier = ident;
|
|
72375
|
-
/**
|
|
72376
|
-
* Reference to the enclosing Scope.
|
|
72377
|
-
* @member {Scope} Reference#from
|
|
72378
|
-
*/
|
|
72379
|
-
this.from = scope;
|
|
72380
|
-
/**
|
|
72381
|
-
* Whether the reference comes from a dynamic scope (such as 'eval',
|
|
72382
|
-
* 'with', etc.), and may be trapped by dynamic scopes.
|
|
72383
|
-
* @member {boolean} Reference#tainted
|
|
72384
|
-
*/
|
|
72385
|
-
this.tainted = false;
|
|
72386
|
-
/**
|
|
72387
|
-
* The variable this reference is resolved with.
|
|
72388
|
-
* @member {Variable} Reference#resolved
|
|
72389
|
-
*/
|
|
72390
|
-
this.resolved = null;
|
|
72391
|
-
/**
|
|
72392
|
-
* The read-write mode of the reference. (Value is one of {@link
|
|
72393
|
-
* Reference.READ}, {@link Reference.RW}, {@link Reference.WRITE}).
|
|
72394
|
-
* @member {number} Reference#flag
|
|
72395
|
-
*/
|
|
72396
|
-
this.flag = flag;
|
|
72397
|
-
if (this.isWrite()) {
|
|
72398
|
-
/**
|
|
72399
|
-
* If reference is writeable, this is the tree being written to it.
|
|
72400
|
-
* @member {espreeNode} Reference#writeExpr
|
|
72401
|
-
*/
|
|
72402
|
-
this.writeExpr = writeExpr;
|
|
72403
|
-
/**
|
|
72404
|
-
* Whether the Reference might refer to a partial value of writeExpr.
|
|
72405
|
-
* @member {boolean} Reference#partial
|
|
72406
|
-
*/
|
|
72407
|
-
this.partial = partial;
|
|
72408
|
-
/**
|
|
72409
|
-
* Whether the Reference is to write of initialization.
|
|
72410
|
-
* @member {boolean} Reference#init
|
|
72411
|
-
*/
|
|
72412
|
-
this.init = init;
|
|
72413
|
-
}
|
|
72414
|
-
this.__maybeImplicitGlobal = maybeImplicitGlobal;
|
|
72415
|
-
}
|
|
72416
|
-
/**
|
|
72417
|
-
* Whether the reference is static.
|
|
72418
|
-
* @function Reference#isStatic
|
|
72419
|
-
* @returns {boolean} static
|
|
72420
|
-
*/
|
|
72421
|
-
isStatic() {
|
|
72422
|
-
return !this.tainted && !!this.resolved && this.resolved.scope.isStatic();
|
|
72423
|
-
}
|
|
72424
|
-
/**
|
|
72425
|
-
* Whether the reference is writeable.
|
|
72426
|
-
* @function Reference#isWrite
|
|
72427
|
-
* @returns {boolean} write
|
|
72428
|
-
*/
|
|
72429
|
-
isWrite() {
|
|
72430
|
-
return !!(this.flag & Reference.WRITE);
|
|
72431
|
-
}
|
|
72432
|
-
/**
|
|
72433
|
-
* Whether the reference is readable.
|
|
72434
|
-
* @function Reference#isRead
|
|
72435
|
-
* @returns {boolean} read
|
|
72436
|
-
*/
|
|
72437
|
-
isRead() {
|
|
72438
|
-
return !!(this.flag & Reference.READ);
|
|
72439
|
-
}
|
|
72440
|
-
/**
|
|
72441
|
-
* Whether the reference is read-only.
|
|
72442
|
-
* @function Reference#isReadOnly
|
|
72443
|
-
* @returns {boolean} read only
|
|
72444
|
-
*/
|
|
72445
|
-
isReadOnly() {
|
|
72446
|
-
return this.flag === Reference.READ;
|
|
72447
|
-
}
|
|
72448
|
-
/**
|
|
72449
|
-
* Whether the reference is write-only.
|
|
72450
|
-
* @function Reference#isWriteOnly
|
|
72451
|
-
* @returns {boolean} write only
|
|
72452
|
-
*/
|
|
72453
|
-
isWriteOnly() {
|
|
72454
|
-
return this.flag === Reference.WRITE;
|
|
72455
|
-
}
|
|
72456
|
-
/**
|
|
72457
|
-
* Whether the reference is read-write.
|
|
72458
|
-
* @function Reference#isReadWrite
|
|
72459
|
-
* @returns {boolean} read write
|
|
72460
|
-
*/
|
|
72461
|
-
isReadWrite() {
|
|
72462
|
-
return this.flag === Reference.RW;
|
|
72463
|
-
}
|
|
72464
|
-
};
|
|
72465
|
-
/**
|
|
72466
|
-
* @constant Reference.READ
|
|
72467
|
-
*/
|
|
72468
|
-
Reference.READ = READ;
|
|
72469
|
-
/**
|
|
72470
|
-
* @constant Reference.WRITE
|
|
72471
|
-
*/
|
|
72472
|
-
Reference.WRITE = WRITE;
|
|
72473
|
-
/**
|
|
72474
|
-
* @constant Reference.RW
|
|
72475
|
-
*/
|
|
72476
|
-
Reference.RW = RW;
|
|
72477
|
-
/** @import * as types from "eslint-scope" */
|
|
72478
|
-
/** @import Reference from "./reference.js" */
|
|
72479
|
-
/**
|
|
72480
|
-
* A Variable represents a locally scoped identifier. These include arguments to
|
|
72481
|
-
* functions.
|
|
72482
|
-
* @constructor Variable
|
|
72483
|
-
* @implements {types.Variable}
|
|
72484
|
-
*/
|
|
72485
|
-
var Variable = class {
|
|
72486
|
-
constructor(name, scope) {
|
|
72487
|
-
/**
|
|
72488
|
-
* The variable name, as given in the source code.
|
|
72489
|
-
* @member {string} Variable#name
|
|
72490
|
-
*/
|
|
72491
|
-
this.name = name;
|
|
72492
|
-
/**
|
|
72493
|
-
* List of defining occurrences of this variable (like in 'var ...'
|
|
72494
|
-
* statements or as parameter), as AST nodes.
|
|
72495
|
-
* @member {espree.Identifier[]} Variable#identifiers
|
|
72496
|
-
*/
|
|
72497
|
-
this.identifiers = [];
|
|
72498
|
-
/**
|
|
72499
|
-
* List of {@link Reference|references} of this variable (excluding parameter entries)
|
|
72500
|
-
* in its defining scope and all nested scopes. For defining
|
|
72501
|
-
* occurrences only see {@link Variable#defs}.
|
|
72502
|
-
* @member {Reference[]} Variable#references
|
|
72503
|
-
*/
|
|
72504
|
-
this.references = [];
|
|
72505
|
-
/**
|
|
72506
|
-
* List of defining occurrences of this variable (like in 'var ...'
|
|
72507
|
-
* statements or as parameter), as custom objects.
|
|
72508
|
-
* @member {Definition[]} Variable#defs
|
|
72509
|
-
*/
|
|
72510
|
-
this.defs = [];
|
|
72511
|
-
this.tainted = false;
|
|
72512
|
-
/**
|
|
72513
|
-
* Whether this is a stack variable.
|
|
72514
|
-
* @member {boolean} Variable#stack
|
|
72515
|
-
*/
|
|
72516
|
-
this.stack = true;
|
|
72517
|
-
/**
|
|
72518
|
-
* Reference to the enclosing Scope.
|
|
72519
|
-
* @member {Scope} Variable#scope
|
|
72520
|
-
*/
|
|
72521
|
-
this.scope = scope;
|
|
72522
|
-
}
|
|
72523
|
-
};
|
|
72524
|
-
Variable.CatchClause = "CatchClause";
|
|
72525
|
-
Variable.Parameter = "Parameter";
|
|
72526
|
-
Variable.FunctionName = "FunctionName";
|
|
72527
|
-
Variable.ClassName = "ClassName";
|
|
72528
|
-
Variable.Variable = "Variable";
|
|
72529
|
-
Variable.ImportBinding = "ImportBinding";
|
|
72530
|
-
Variable.ImplicitGlobalVariable = "ImplicitGlobalVariable";
|
|
72531
|
-
/** @import * as types from "eslint-scope" */
|
|
72532
|
-
/**
|
|
72533
|
-
* @constructor Definition
|
|
72534
|
-
* @implements {Omit<types.Definition, never>}
|
|
72535
|
-
*/
|
|
72536
|
-
var Definition = class {
|
|
72537
|
-
constructor(type, name, node, parent, index, kind) {
|
|
72538
|
-
/**
|
|
72539
|
-
* @member {string} Definition#type - type of the occurrence (e.g. "Parameter", "Variable", ...).
|
|
72540
|
-
*/
|
|
72541
|
-
this.type = type;
|
|
72542
|
-
/**
|
|
72543
|
-
* @member {espree.Identifier} Definition#name - the identifier AST node of the occurrence.
|
|
72544
|
-
*/
|
|
72545
|
-
this.name = name;
|
|
72546
|
-
/**
|
|
72547
|
-
* @member {espree.Node} Definition#node - the enclosing node of the identifier.
|
|
72548
|
-
*/
|
|
72549
|
-
this.node = node;
|
|
72550
|
-
/**
|
|
72551
|
-
* @member {espree.Node?} Definition#parent - the enclosing statement node of the identifier.
|
|
72552
|
-
*/
|
|
72553
|
-
this.parent = parent;
|
|
72554
|
-
/**
|
|
72555
|
-
* @member {number?} Definition#index - the index in the declaration statement.
|
|
72556
|
-
*/
|
|
72557
|
-
this.index = index;
|
|
72558
|
-
/**
|
|
72559
|
-
* @member {string?} Definition#kind - the kind of the declaration statement.
|
|
72560
|
-
*/
|
|
72561
|
-
this.kind = kind;
|
|
72562
|
-
}
|
|
72563
|
-
};
|
|
72564
|
-
/**
|
|
72565
|
-
* @constructor ParameterDefinition
|
|
72566
|
-
*/
|
|
72567
|
-
var ParameterDefinition = class extends Definition {
|
|
72568
|
-
constructor(name, node, index, rest) {
|
|
72569
|
-
super(Variable.Parameter, name, node, null, index, null);
|
|
72570
|
-
/**
|
|
72571
|
-
* Whether the parameter definition is a part of a rest parameter.
|
|
72572
|
-
* @member {boolean} ParameterDefinition#rest
|
|
72573
|
-
*/
|
|
72574
|
-
this.rest = rest;
|
|
72575
|
-
}
|
|
72576
|
-
};
|
|
72577
|
-
/** @import * as types from "eslint-scope" */
|
|
72578
|
-
/** @import ESTree from "estree" */
|
|
72579
|
-
/** @import ScopeManager from "./scope-manager.js" */
|
|
72580
|
-
/** @typedef {ESTree.Function | ESTree.Program | ESTree.StaticBlock} Block */
|
|
72581
|
-
/** @typedef {{pattern: unknown, node: unknown}} MaybeImplicitGlobal */
|
|
72582
|
-
const { Syntax: Syntax$2 } = estraverse;
|
|
72583
|
-
/**
|
|
72584
|
-
* Test if scope is struct
|
|
72585
|
-
* @param {Scope} scope scope
|
|
72586
|
-
* @param {Block} block block
|
|
72587
|
-
* @param {boolean} isMethodDefinition is method definition
|
|
72588
|
-
* @returns {boolean} is strict scope
|
|
72589
|
-
*/
|
|
72590
|
-
function isStrictScope(scope, block, isMethodDefinition) {
|
|
72591
|
-
let body;
|
|
72592
|
-
if (scope.upper && scope.upper.isStrict) return true;
|
|
72593
|
-
if (isMethodDefinition) return true;
|
|
72594
|
-
if (scope.type === "class" || scope.type === "module") return true;
|
|
72595
|
-
if (scope.type === "block" || scope.type === "switch") return false;
|
|
72596
|
-
if (scope.type === "function") {
|
|
72597
|
-
if (block.type === Syntax$2.ArrowFunctionExpression && block.body.type !== Syntax$2.BlockStatement) return false;
|
|
72598
|
-
if (block.type === Syntax$2.Program) body = block;
|
|
72599
|
-
else body = block.body;
|
|
72600
|
-
if (!body) return false;
|
|
72601
|
-
} else if (scope.type === "global") body = block;
|
|
72602
|
-
else return false;
|
|
72603
|
-
for (let i = 0, iz = body.body.length; i < iz; ++i) {
|
|
72604
|
-
const stmt = body.body[i];
|
|
72605
|
-
if (typeof stmt.directive !== "string") break;
|
|
72606
|
-
if (stmt.directive === "use strict") return true;
|
|
72607
|
-
}
|
|
72608
|
-
return false;
|
|
72609
|
-
}
|
|
72610
|
-
/**
|
|
72611
|
-
* Register scope
|
|
72612
|
-
* @param {ScopeManager} scopeManager scope manager
|
|
72613
|
-
* @param {Scope} scope scope
|
|
72614
|
-
* @returns {void}
|
|
72615
|
-
*/
|
|
72616
|
-
function registerScope(scopeManager, scope) {
|
|
72617
|
-
scopeManager.scopes.push(scope);
|
|
72618
|
-
const scopes = scopeManager.__nodeToScope.get(scope.block);
|
|
72619
|
-
if (scopes) scopes.push(scope);
|
|
72620
|
-
else scopeManager.__nodeToScope.set(scope.block, [scope]);
|
|
72621
|
-
}
|
|
72622
|
-
/**
|
|
72623
|
-
* @constructor Scope
|
|
72624
|
-
* @implements {types.Scope}
|
|
72625
|
-
*/
|
|
72626
|
-
var Scope = class {
|
|
72627
|
-
constructor(scopeManager, type, upperScope, block, isMethodDefinition) {
|
|
72628
|
-
/**
|
|
72629
|
-
* One of "global", "module", "function", "function-expression-name", "block", "switch", "catch", "with", "for",
|
|
72630
|
-
* "class", "class-field-initializer", "class-static-block".
|
|
72631
|
-
* @member {string} Scope#type
|
|
72632
|
-
*/
|
|
72633
|
-
this.type = type;
|
|
72634
|
-
/**
|
|
72635
|
-
* The scoped {@link Variable}s of this scope, as <code>{ Variable.name
|
|
72636
|
-
* : Variable }</code>.
|
|
72637
|
-
* @member {Map} Scope#set
|
|
72638
|
-
*/
|
|
72639
|
-
this.set = /* @__PURE__ */ new Map();
|
|
72640
|
-
/**
|
|
72641
|
-
* The tainted variables of this scope, as <code>{ Variable.name :
|
|
72642
|
-
* boolean }</code>.
|
|
72643
|
-
* @member {Map} Scope#taints
|
|
72644
|
-
*/
|
|
72645
|
-
this.taints = /* @__PURE__ */ new Map();
|
|
72646
|
-
/**
|
|
72647
|
-
* Generally, through the lexical scoping of JS you can always know
|
|
72648
|
-
* which variable an identifier in the source code refers to. There are
|
|
72649
|
-
* a few exceptions to this rule. With 'global' and 'with' scopes you
|
|
72650
|
-
* can only decide at runtime which variable a reference refers to.
|
|
72651
|
-
* Moreover, if 'eval()' is used in a scope, it might introduce new
|
|
72652
|
-
* bindings in this or its parent scopes.
|
|
72653
|
-
* All those scopes are considered 'dynamic'.
|
|
72654
|
-
* @member {boolean} Scope#dynamic
|
|
72655
|
-
*/
|
|
72656
|
-
this.dynamic = this.type === "global" || this.type === "with";
|
|
72657
|
-
/**
|
|
72658
|
-
* A reference to the scope-defining syntax node.
|
|
72659
|
-
* @member {espree.Node} Scope#block
|
|
72660
|
-
*/
|
|
72661
|
-
this.block = block;
|
|
72662
|
-
/**
|
|
72663
|
-
* The {@link Reference|references} that are not resolved with this scope.
|
|
72664
|
-
* @member {Reference[]} Scope#through
|
|
72665
|
-
*/
|
|
72666
|
-
this.through = [];
|
|
72667
|
-
/**
|
|
72668
|
-
* The scoped {@link Variable}s of this scope. In the case of a
|
|
72669
|
-
* 'function' scope this includes the automatic argument <em>arguments</em> as
|
|
72670
|
-
* its first element, as well as all further formal arguments.
|
|
72671
|
-
* @member {Variable[]} Scope#variables
|
|
72672
|
-
*/
|
|
72673
|
-
this.variables = [];
|
|
72674
|
-
/**
|
|
72675
|
-
* Any variable {@link Reference|reference} found in this scope. This
|
|
72676
|
-
* includes occurrences of local variables as well as variables from
|
|
72677
|
-
* parent scopes (including the global scope). For local variables
|
|
72678
|
-
* this also includes defining occurrences (like in a 'var' statement).
|
|
72679
|
-
* In a 'function' scope this does not include the occurrences of the
|
|
72680
|
-
* formal parameter in the parameter list.
|
|
72681
|
-
* @member {Reference[]} Scope#references
|
|
72682
|
-
*/
|
|
72683
|
-
this.references = [];
|
|
72684
|
-
/**
|
|
72685
|
-
* For 'global' and 'function' scopes, this is a self-reference. For
|
|
72686
|
-
* other scope types this is the <em>variableScope</em> value of the
|
|
72687
|
-
* parent scope.
|
|
72688
|
-
* @member {Scope} Scope#variableScope
|
|
72689
|
-
*/
|
|
72690
|
-
this.variableScope = this.type === "global" || this.type === "module" || this.type === "function" || this.type === "class-field-initializer" || this.type === "class-static-block" ? this : upperScope.variableScope;
|
|
72691
|
-
/**
|
|
72692
|
-
* Whether this scope is created by a FunctionExpression.
|
|
72693
|
-
* @member {boolean} Scope#functionExpressionScope
|
|
72694
|
-
*/
|
|
72695
|
-
this.functionExpressionScope = false;
|
|
72696
|
-
/**
|
|
72697
|
-
* Whether this is a scope that contains an 'eval()' invocation.
|
|
72698
|
-
* @member {boolean} Scope#directCallToEvalScope
|
|
72699
|
-
*/
|
|
72700
|
-
this.directCallToEvalScope = false;
|
|
72701
|
-
/**
|
|
72702
|
-
* @member {boolean} Scope#thisFound
|
|
72703
|
-
*/
|
|
72704
|
-
this.thisFound = false;
|
|
72705
|
-
/** @type {?Reference[]} */
|
|
72706
|
-
this.__left = [];
|
|
72707
|
-
/**
|
|
72708
|
-
* Reference to the parent {@link Scope|scope}.
|
|
72709
|
-
* @member {Scope} Scope#upper
|
|
72710
|
-
*/
|
|
72711
|
-
this.upper = upperScope;
|
|
72712
|
-
/**
|
|
72713
|
-
* Whether 'use strict' is in effect in this scope.
|
|
72714
|
-
* @member {boolean} Scope#isStrict
|
|
72715
|
-
*/
|
|
72716
|
-
this.isStrict = scopeManager.isStrictModeSupported() ? isStrictScope(this, block, isMethodDefinition) : false;
|
|
72717
|
-
/**
|
|
72718
|
-
* List of nested {@link Scope}s.
|
|
72719
|
-
* @member {Scope[]} Scope#childScopes
|
|
72720
|
-
*/
|
|
72721
|
-
this.childScopes = [];
|
|
72722
|
-
if (this.upper) this.upper.childScopes.push(this);
|
|
72723
|
-
this.__declaredVariables = scopeManager.__declaredVariables;
|
|
72724
|
-
registerScope(scopeManager, this);
|
|
72725
|
-
}
|
|
72726
|
-
__shouldStaticallyClose(scopeManager) {
|
|
72727
|
-
return !this.dynamic || scopeManager.__isOptimistic() || this.type === "global";
|
|
72728
|
-
}
|
|
72729
|
-
__staticCloseRef(ref) {
|
|
72730
|
-
if (!this.__resolve(ref)) this.__delegateToUpperScope(ref);
|
|
72731
|
-
}
|
|
72732
|
-
__dynamicCloseRef(ref) {
|
|
72733
|
-
let current = this;
|
|
72734
|
-
do {
|
|
72735
|
-
current.through.push(ref);
|
|
72736
|
-
current = current.upper;
|
|
72737
|
-
} while (current);
|
|
72738
|
-
}
|
|
72739
|
-
__close(scopeManager) {
|
|
72740
|
-
let closeRef;
|
|
72741
|
-
if (this.__shouldStaticallyClose(scopeManager)) closeRef = this.__staticCloseRef;
|
|
72742
|
-
else closeRef = this.__dynamicCloseRef;
|
|
72743
|
-
for (let i = 0, iz = this.__left.length; i < iz; ++i) {
|
|
72744
|
-
const ref = this.__left[i];
|
|
72745
|
-
closeRef.call(this, ref);
|
|
72746
|
-
}
|
|
72747
|
-
this.__left = null;
|
|
72748
|
-
return this.upper;
|
|
72749
|
-
}
|
|
72750
|
-
__isValidResolution(ref, variable) {
|
|
72751
|
-
return true;
|
|
72752
|
-
}
|
|
72753
|
-
__resolve(ref) {
|
|
72754
|
-
const name = ref.identifier.name;
|
|
72755
|
-
if (!this.set.has(name)) return false;
|
|
72756
|
-
const variable = this.set.get(name);
|
|
72757
|
-
if (!this.__isValidResolution(ref, variable)) return false;
|
|
72758
|
-
variable.references.push(ref);
|
|
72759
|
-
variable.stack = variable.stack && ref.from.variableScope === this.variableScope;
|
|
72760
|
-
if (ref.tainted) {
|
|
72761
|
-
variable.tainted = true;
|
|
72762
|
-
this.taints.set(variable.name, true);
|
|
72763
|
-
}
|
|
72764
|
-
ref.resolved = variable;
|
|
72765
|
-
return true;
|
|
72766
|
-
}
|
|
72767
|
-
__delegateToUpperScope(ref) {
|
|
72768
|
-
if (this.upper) this.upper.__left.push(ref);
|
|
72769
|
-
this.through.push(ref);
|
|
72770
|
-
}
|
|
72771
|
-
__addDeclaredVariablesOfNode(variable, node) {
|
|
72772
|
-
if (node === null || node === void 0) return;
|
|
72773
|
-
let variables = this.__declaredVariables.get(node);
|
|
72774
|
-
if (variables === null || variables === void 0) {
|
|
72775
|
-
variables = [];
|
|
72776
|
-
this.__declaredVariables.set(node, variables);
|
|
72777
|
-
}
|
|
72778
|
-
if (!variables.includes(variable)) variables.push(variable);
|
|
72779
|
-
}
|
|
72780
|
-
__defineGeneric(name, set, variables, node, def) {
|
|
72781
|
-
let variable;
|
|
72782
|
-
variable = set.get(name);
|
|
72783
|
-
if (!variable) {
|
|
72784
|
-
variable = new Variable(name, this);
|
|
72785
|
-
set.set(name, variable);
|
|
72786
|
-
variables.push(variable);
|
|
72787
|
-
}
|
|
72788
|
-
if (def) {
|
|
72789
|
-
variable.defs.push(def);
|
|
72790
|
-
this.__addDeclaredVariablesOfNode(variable, def.node);
|
|
72791
|
-
this.__addDeclaredVariablesOfNode(variable, def.parent);
|
|
72792
|
-
}
|
|
72793
|
-
if (node) variable.identifiers.push(node);
|
|
72794
|
-
}
|
|
72795
|
-
__define(node, def) {
|
|
72796
|
-
if (node && node.type === Syntax$2.Identifier) this.__defineGeneric(node.name, this.set, this.variables, node, def);
|
|
72797
|
-
}
|
|
72798
|
-
__referencing(node, assign, writeExpr, maybeImplicitGlobal, partial, init) {
|
|
72799
|
-
if (!node || node.type !== Syntax$2.Identifier && node.type !== "JSXIdentifier") return;
|
|
72800
|
-
if (node.name === "super") return;
|
|
72801
|
-
const ref = new Reference(node, this, assign || Reference.READ, writeExpr, maybeImplicitGlobal, !!partial, !!init);
|
|
72802
|
-
this.references.push(ref);
|
|
72803
|
-
this.__left.push(ref);
|
|
72804
|
-
}
|
|
72805
|
-
__detectEval() {
|
|
72806
|
-
let current = this;
|
|
72807
|
-
this.directCallToEvalScope = true;
|
|
72808
|
-
do {
|
|
72809
|
-
current.dynamic = true;
|
|
72810
|
-
current = current.upper;
|
|
72811
|
-
} while (current);
|
|
72812
|
-
}
|
|
72813
|
-
__detectThis() {
|
|
72814
|
-
this.thisFound = true;
|
|
72815
|
-
}
|
|
72816
|
-
__isClosed() {
|
|
72817
|
-
return this.__left === null;
|
|
72818
|
-
}
|
|
72819
|
-
/**
|
|
72820
|
-
* returns resolved {Reference}
|
|
72821
|
-
* @function Scope#resolve
|
|
72822
|
-
* @param {ESTree.Identifier} ident identifier to be resolved.
|
|
72823
|
-
* @returns {?Reference} reference
|
|
72824
|
-
*/
|
|
72825
|
-
resolve(ident) {
|
|
72826
|
-
let ref, i, iz;
|
|
72827
|
-
assert(this.__isClosed(), "Scope should be closed.");
|
|
72828
|
-
assert(ident.type === Syntax$2.Identifier, "Target should be identifier.");
|
|
72829
|
-
for (i = 0, iz = this.references.length; i < iz; ++i) {
|
|
72830
|
-
ref = this.references[i];
|
|
72831
|
-
if (ref.identifier === ident) return ref;
|
|
72832
|
-
}
|
|
72833
|
-
return null;
|
|
72834
|
-
}
|
|
72835
|
-
/**
|
|
72836
|
-
* returns this scope is static
|
|
72837
|
-
* @function Scope#isStatic
|
|
72838
|
-
* @returns {boolean} static
|
|
72839
|
-
*/
|
|
72840
|
-
isStatic() {
|
|
72841
|
-
return !this.dynamic;
|
|
72842
|
-
}
|
|
72843
|
-
/**
|
|
72844
|
-
* returns this scope has materialized arguments
|
|
72845
|
-
* @function Scope#isArgumentsMaterialized
|
|
72846
|
-
* @returns {any} arguments materialized
|
|
72847
|
-
*/ isArgumentsMaterialized() {
|
|
72848
|
-
return true;
|
|
72849
|
-
}
|
|
72850
|
-
/**
|
|
72851
|
-
* returns this scope has materialized `this` reference
|
|
72852
|
-
* @function Scope#isThisMaterialized
|
|
72853
|
-
* @returns {any} this materialized
|
|
72854
|
-
*/ isThisMaterialized() {
|
|
72855
|
-
return true;
|
|
72856
|
-
}
|
|
72857
|
-
isUsedName(name) {
|
|
72858
|
-
if (this.set.has(name)) return true;
|
|
72859
|
-
for (let i = 0, iz = this.through.length; i < iz; ++i) if (this.through[i].identifier.name === name) return true;
|
|
72860
|
-
return false;
|
|
72861
|
-
}
|
|
72862
|
-
};
|
|
72863
|
-
/**
|
|
72864
|
-
* Global scope.
|
|
72865
|
-
* @implements {types.GlobalScope}
|
|
72866
|
-
*/
|
|
72867
|
-
var GlobalScope = class extends Scope {
|
|
72868
|
-
constructor(scopeManager, block) {
|
|
72869
|
-
super(scopeManager, "global", null, block, false);
|
|
72870
|
-
this.implicit = {
|
|
72871
|
-
set: /* @__PURE__ */ new Map(),
|
|
72872
|
-
/** @type {Variable[]} */
|
|
72873
|
-
variables: [],
|
|
72874
|
-
/**
|
|
72875
|
-
* List of {@link Reference}s that are left to be resolved (i.e. which
|
|
72876
|
-
* need to be linked to the variable they refer to).
|
|
72877
|
-
* @member {Reference[]} Scope#implicit#left
|
|
72878
|
-
* @type {Reference[]}
|
|
72879
|
-
*/
|
|
72880
|
-
left: []
|
|
72881
|
-
};
|
|
72882
|
-
}
|
|
72883
|
-
__close(scopeManager) {
|
|
72884
|
-
const implicit = [];
|
|
72885
|
-
for (let i = 0, iz = this.__left.length; i < iz; ++i) {
|
|
72886
|
-
const ref = this.__left[i];
|
|
72887
|
-
if (ref.__maybeImplicitGlobal && !this.set.has(ref.identifier.name)) implicit.push(ref.__maybeImplicitGlobal);
|
|
72888
|
-
}
|
|
72889
|
-
for (let i = 0, iz = implicit.length; i < iz; ++i) {
|
|
72890
|
-
const info = implicit[i];
|
|
72891
|
-
this.__defineImplicit(info.pattern, new Definition(Variable.ImplicitGlobalVariable, info.pattern, info.node, null, null, null));
|
|
72892
|
-
}
|
|
72893
|
-
super.__close(scopeManager);
|
|
72894
|
-
this.implicit.left = [...this.through];
|
|
72895
|
-
return null;
|
|
72896
|
-
}
|
|
72897
|
-
__defineImplicit(node, def) {
|
|
72898
|
-
if (node && node.type === Syntax$2.Identifier) this.__defineGeneric(node.name, this.implicit.set, this.implicit.variables, node, def);
|
|
72899
|
-
}
|
|
72900
|
-
__addVariables(names) {
|
|
72901
|
-
for (const name of names) this.__defineGeneric(name, this.set, this.variables, null, null);
|
|
72902
|
-
const namesSet = new Set(names);
|
|
72903
|
-
this.through = this.through.filter((reference) => {
|
|
72904
|
-
const name = reference.identifier.name;
|
|
72905
|
-
if (namesSet.has(name)) {
|
|
72906
|
-
const variable = this.set.get(name);
|
|
72907
|
-
reference.resolved = variable;
|
|
72908
|
-
variable.references.push(reference);
|
|
72909
|
-
return false;
|
|
72910
|
-
}
|
|
72911
|
-
return true;
|
|
72912
|
-
});
|
|
72913
|
-
this.implicit.variables = this.implicit.variables.filter((variable) => {
|
|
72914
|
-
const name = variable.name;
|
|
72915
|
-
if (namesSet.has(name)) {
|
|
72916
|
-
this.implicit.set.delete(name);
|
|
72917
|
-
return false;
|
|
72918
|
-
}
|
|
72919
|
-
return true;
|
|
72920
|
-
});
|
|
72921
|
-
this.implicit.left = this.implicit.left.filter((reference) => !namesSet.has(reference.identifier.name));
|
|
72922
|
-
}
|
|
72923
|
-
};
|
|
72924
|
-
/**
|
|
72925
|
-
* Module scope.
|
|
72926
|
-
* @implements {types.ModuleScope}
|
|
72927
|
-
*/
|
|
72928
|
-
var ModuleScope = class extends Scope {
|
|
72929
|
-
constructor(scopeManager, upperScope, block) {
|
|
72930
|
-
super(scopeManager, "module", upperScope, block, false);
|
|
72931
|
-
}
|
|
72932
|
-
};
|
|
72933
|
-
/**
|
|
72934
|
-
* Function expression name scope.
|
|
72935
|
-
* @implements {types.FunctionExpressionNameScope}
|
|
72936
|
-
*/
|
|
72937
|
-
var FunctionExpressionNameScope = class extends Scope {
|
|
72938
|
-
constructor(scopeManager, upperScope, block) {
|
|
72939
|
-
super(scopeManager, "function-expression-name", upperScope, block, false);
|
|
72940
|
-
this.__define(block.id, new Definition(Variable.FunctionName, block.id, block, null, null, null));
|
|
72941
|
-
this.functionExpressionScope = true;
|
|
72942
|
-
}
|
|
72943
|
-
};
|
|
72944
|
-
/**
|
|
72945
|
-
* Catch scope.
|
|
72946
|
-
* @implements {types.CatchScope}
|
|
72947
|
-
*/
|
|
72948
|
-
var CatchScope = class extends Scope {
|
|
72949
|
-
constructor(scopeManager, upperScope, block) {
|
|
72950
|
-
super(scopeManager, "catch", upperScope, block, false);
|
|
72951
|
-
}
|
|
72952
|
-
};
|
|
72953
|
-
/**
|
|
72954
|
-
* With statement scope.
|
|
72955
|
-
* @implements {types.WithScope}
|
|
72956
|
-
*/
|
|
72957
|
-
var WithScope = class extends Scope {
|
|
72958
|
-
constructor(scopeManager, upperScope, block) {
|
|
72959
|
-
super(scopeManager, "with", upperScope, block, false);
|
|
72960
|
-
}
|
|
72961
|
-
__close(scopeManager) {
|
|
72962
|
-
if (this.__shouldStaticallyClose(scopeManager)) return super.__close(scopeManager);
|
|
72963
|
-
for (let i = 0, iz = this.__left.length; i < iz; ++i) {
|
|
72964
|
-
const ref = this.__left[i];
|
|
72965
|
-
ref.tainted = true;
|
|
72966
|
-
this.__delegateToUpperScope(ref);
|
|
72967
|
-
}
|
|
72968
|
-
this.__left = null;
|
|
72969
|
-
return this.upper;
|
|
72970
|
-
}
|
|
72971
|
-
};
|
|
72972
|
-
/**
|
|
72973
|
-
* Block scope.
|
|
72974
|
-
* @implements {types.BlockScope}
|
|
72975
|
-
*/
|
|
72976
|
-
var BlockScope = class extends Scope {
|
|
72977
|
-
constructor(scopeManager, upperScope, block) {
|
|
72978
|
-
super(scopeManager, "block", upperScope, block, false);
|
|
72979
|
-
}
|
|
72980
|
-
};
|
|
72981
|
-
/**
|
|
72982
|
-
* Switch scope.
|
|
72983
|
-
* @implements {types.SwitchScope}
|
|
72984
|
-
*/
|
|
72985
|
-
var SwitchScope = class extends Scope {
|
|
72986
|
-
constructor(scopeManager, upperScope, block) {
|
|
72987
|
-
super(scopeManager, "switch", upperScope, block, false);
|
|
72988
|
-
}
|
|
72989
|
-
};
|
|
72990
|
-
/**
|
|
72991
|
-
* Function scope.
|
|
72992
|
-
* @implements {types.FunctionScope}
|
|
72993
|
-
*/
|
|
72994
|
-
var FunctionScope = class extends Scope {
|
|
72995
|
-
constructor(scopeManager, upperScope, block, isMethodDefinition) {
|
|
72996
|
-
super(scopeManager, "function", upperScope, block, isMethodDefinition);
|
|
72997
|
-
if (this.block.type !== Syntax$2.ArrowFunctionExpression) this.__defineArguments();
|
|
72998
|
-
}
|
|
72999
|
-
isArgumentsMaterialized() {
|
|
73000
|
-
if (this.block.type === Syntax$2.ArrowFunctionExpression) return false;
|
|
73001
|
-
if (!this.isStatic()) return true;
|
|
73002
|
-
const variable = this.set.get("arguments");
|
|
73003
|
-
assert(variable, "Always have arguments variable.");
|
|
73004
|
-
return variable.tainted || variable.references.length !== 0;
|
|
73005
|
-
}
|
|
73006
|
-
isThisMaterialized() {
|
|
73007
|
-
if (!this.isStatic()) return true;
|
|
73008
|
-
return this.thisFound;
|
|
73009
|
-
}
|
|
73010
|
-
__defineArguments() {
|
|
73011
|
-
this.__defineGeneric("arguments", this.set, this.variables, null, null);
|
|
73012
|
-
this.taints.set("arguments", true);
|
|
73013
|
-
}
|
|
73014
|
-
__isValidResolution(ref, variable) {
|
|
73015
|
-
if (this.block.type === "Program") return true;
|
|
73016
|
-
const bodyStart = this.block.body.range[0];
|
|
73017
|
-
return !(variable.scope === this && ref.identifier.range[0] < bodyStart && variable.defs.every((d) => d.name.range[0] >= bodyStart));
|
|
73018
|
-
}
|
|
73019
|
-
};
|
|
73020
|
-
/**
|
|
73021
|
-
* Scope of for, for-in, and for-of statements.
|
|
73022
|
-
* @implements {types.ForScope}
|
|
73023
|
-
*/
|
|
73024
|
-
var ForScope = class extends Scope {
|
|
73025
|
-
constructor(scopeManager, upperScope, block) {
|
|
73026
|
-
super(scopeManager, "for", upperScope, block, false);
|
|
73027
|
-
}
|
|
73028
|
-
};
|
|
73029
|
-
/**
|
|
73030
|
-
* Class scope.
|
|
73031
|
-
* @implements {types.ClassScope}
|
|
73032
|
-
*/
|
|
73033
|
-
var ClassScope = class extends Scope {
|
|
73034
|
-
constructor(scopeManager, upperScope, block) {
|
|
73035
|
-
super(scopeManager, "class", upperScope, block, false);
|
|
73036
|
-
}
|
|
73037
|
-
};
|
|
73038
|
-
/**
|
|
73039
|
-
* Class field initializer scope.
|
|
73040
|
-
* @implements {types.ClassFieldInitializerScope}
|
|
73041
|
-
*/
|
|
73042
|
-
var ClassFieldInitializerScope = class extends Scope {
|
|
73043
|
-
constructor(scopeManager, upperScope, block) {
|
|
73044
|
-
super(scopeManager, "class-field-initializer", upperScope, block, true);
|
|
73045
|
-
}
|
|
73046
|
-
};
|
|
73047
|
-
/**
|
|
73048
|
-
* Class static block scope.
|
|
73049
|
-
* @implements {types.ClassStaticBlockScope}
|
|
73050
|
-
*/
|
|
73051
|
-
var ClassStaticBlockScope = class extends Scope {
|
|
73052
|
-
constructor(scopeManager, upperScope, block) {
|
|
73053
|
-
super(scopeManager, "class-static-block", upperScope, block, true);
|
|
73054
|
-
}
|
|
73055
|
-
};
|
|
73056
|
-
/** @import * as types from "eslint-scope" */
|
|
73057
|
-
/** @import ESTree from "estree" */
|
|
73058
|
-
/** @import { Scope } from "./scope.js" */
|
|
73059
|
-
/** @import Variable from "./variable.js" */
|
|
73060
|
-
/**
|
|
73061
|
-
* @constructor ScopeManager
|
|
73062
|
-
* @implements {types.ScopeManager}
|
|
73063
|
-
*/
|
|
73064
|
-
var ScopeManager = class {
|
|
73065
|
-
constructor(options) {
|
|
73066
|
-
this.scopes = [];
|
|
73067
|
-
this.globalScope = null;
|
|
73068
|
-
this.__nodeToScope = /* @__PURE__ */ new WeakMap();
|
|
73069
|
-
this.__currentScope = null;
|
|
73070
|
-
this.__options = options;
|
|
73071
|
-
this.__declaredVariables = /* @__PURE__ */ new WeakMap();
|
|
73072
|
-
}
|
|
73073
|
-
__isOptimistic() {
|
|
73074
|
-
return this.__options.optimistic;
|
|
73075
|
-
}
|
|
73076
|
-
__ignoreEval() {
|
|
73077
|
-
return this.__options.ignoreEval;
|
|
73078
|
-
}
|
|
73079
|
-
__isJSXEnabled() {
|
|
73080
|
-
return this.__options.jsx === true;
|
|
73081
|
-
}
|
|
73082
|
-
isGlobalReturn() {
|
|
73083
|
-
return this.__options.nodejsScope || this.__options.sourceType === "commonjs";
|
|
73084
|
-
}
|
|
73085
|
-
isModule() {
|
|
73086
|
-
return this.__options.sourceType === "module";
|
|
73087
|
-
}
|
|
73088
|
-
isImpliedStrict() {
|
|
73089
|
-
return !!this.__options.impliedStrict;
|
|
73090
|
-
}
|
|
73091
|
-
isStrictModeSupported() {
|
|
73092
|
-
return this.__options.ecmaVersion >= 5;
|
|
73093
|
-
}
|
|
73094
|
-
__get(node) {
|
|
73095
|
-
return this.__nodeToScope.get(node);
|
|
73096
|
-
}
|
|
73097
|
-
/**
|
|
73098
|
-
* Get variables that are declared by the node.
|
|
73099
|
-
*
|
|
73100
|
-
* "are declared by the node" means the node is same as `Variable.defs[].node` or `Variable.defs[].parent`.
|
|
73101
|
-
* If the node declares nothing, this method returns an empty array.
|
|
73102
|
-
* CAUTION: This API is experimental. See https://github.com/estools/escope/pull/69 for more details.
|
|
73103
|
-
* @param {ESTree.Node} node a node to get.
|
|
73104
|
-
* @returns {Variable[]} variables that declared by the node.
|
|
73105
|
-
*/
|
|
73106
|
-
getDeclaredVariables(node) {
|
|
73107
|
-
return this.__declaredVariables.get(node) || [];
|
|
73108
|
-
}
|
|
73109
|
-
/**
|
|
73110
|
-
* acquire scope from node.
|
|
73111
|
-
* @function ScopeManager#acquire
|
|
73112
|
-
* @param {ESTree.Node} node node for the acquired scope.
|
|
73113
|
-
* @param {?boolean} [inner=false] look up the most inner scope, default value is false.
|
|
73114
|
-
* @returns {Scope?} Scope from node
|
|
73115
|
-
*/
|
|
73116
|
-
acquire(node, inner) {
|
|
73117
|
-
/**
|
|
73118
|
-
* predicate
|
|
73119
|
-
* @param {Scope} testScope scope to test
|
|
73120
|
-
* @returns {boolean} predicate
|
|
73121
|
-
*/
|
|
73122
|
-
function predicate(testScope) {
|
|
73123
|
-
if (testScope.type === "function" && testScope.functionExpressionScope) return false;
|
|
73124
|
-
return true;
|
|
73125
|
-
}
|
|
73126
|
-
const scopes = this.__get(node);
|
|
73127
|
-
if (!scopes || scopes.length === 0) return null;
|
|
73128
|
-
if (scopes.length === 1) return scopes[0];
|
|
73129
|
-
if (inner) for (let i = scopes.length - 1; i >= 0; --i) {
|
|
73130
|
-
const scope = scopes[i];
|
|
73131
|
-
if (predicate(scope)) return scope;
|
|
73132
|
-
}
|
|
73133
|
-
else for (let i = 0, iz = scopes.length; i < iz; ++i) {
|
|
73134
|
-
const scope = scopes[i];
|
|
73135
|
-
if (predicate(scope)) return scope;
|
|
73136
|
-
}
|
|
73137
|
-
return null;
|
|
73138
|
-
}
|
|
73139
|
-
/**
|
|
73140
|
-
* acquire all scopes from node.
|
|
73141
|
-
* @function ScopeManager#acquireAll
|
|
73142
|
-
* @param {ESTree.Node} node node for the acquired scope.
|
|
73143
|
-
* @returns {Scope[]?} Scope array
|
|
73144
|
-
*/
|
|
73145
|
-
acquireAll(node) {
|
|
73146
|
-
return this.__get(node);
|
|
73147
|
-
}
|
|
73148
|
-
/**
|
|
73149
|
-
* release the node.
|
|
73150
|
-
* @function ScopeManager#release
|
|
73151
|
-
* @param {ESTree.Node} node releasing node.
|
|
73152
|
-
* @param {?boolean} [inner=false] look up the most inner scope, default value is false.
|
|
73153
|
-
* @returns {Scope?} upper scope for the node.
|
|
73154
|
-
*/
|
|
73155
|
-
release(node, inner) {
|
|
73156
|
-
const scopes = this.__get(node);
|
|
73157
|
-
if (scopes && scopes.length) {
|
|
73158
|
-
const scope = scopes[0].upper;
|
|
73159
|
-
if (!scope) return null;
|
|
73160
|
-
return this.acquire(scope.block, inner);
|
|
73161
|
-
}
|
|
73162
|
-
return null;
|
|
73163
|
-
}
|
|
73164
|
-
/**
|
|
73165
|
-
* Add global variables and resolve their references.
|
|
73166
|
-
* @function ScopeManager#addGlobals
|
|
73167
|
-
* @param {string[]} names Names of global variables to add.
|
|
73168
|
-
* @returns {void}
|
|
73169
|
-
*/
|
|
73170
|
-
addGlobals(names) {
|
|
73171
|
-
this.globalScope.__addVariables(names);
|
|
73172
|
-
}
|
|
73173
|
-
attach() {}
|
|
73174
|
-
detach() {}
|
|
73175
|
-
__nestScope(scope) {
|
|
73176
|
-
if (scope instanceof GlobalScope) {
|
|
73177
|
-
assert(this.__currentScope === null);
|
|
73178
|
-
this.globalScope = scope;
|
|
73179
|
-
}
|
|
73180
|
-
this.__currentScope = scope;
|
|
73181
|
-
return scope;
|
|
73182
|
-
}
|
|
73183
|
-
__nestGlobalScope(node) {
|
|
73184
|
-
return this.__nestScope(new GlobalScope(this, node));
|
|
73185
|
-
}
|
|
73186
|
-
__nestBlockScope(node) {
|
|
73187
|
-
return this.__nestScope(new BlockScope(this, this.__currentScope, node));
|
|
73188
|
-
}
|
|
73189
|
-
__nestFunctionScope(node, isMethodDefinition) {
|
|
73190
|
-
return this.__nestScope(new FunctionScope(this, this.__currentScope, node, isMethodDefinition));
|
|
73191
|
-
}
|
|
73192
|
-
__nestForScope(node) {
|
|
73193
|
-
return this.__nestScope(new ForScope(this, this.__currentScope, node));
|
|
73194
|
-
}
|
|
73195
|
-
__nestCatchScope(node) {
|
|
73196
|
-
return this.__nestScope(new CatchScope(this, this.__currentScope, node));
|
|
73197
|
-
}
|
|
73198
|
-
__nestWithScope(node) {
|
|
73199
|
-
return this.__nestScope(new WithScope(this, this.__currentScope, node));
|
|
73200
|
-
}
|
|
73201
|
-
__nestClassScope(node) {
|
|
73202
|
-
return this.__nestScope(new ClassScope(this, this.__currentScope, node));
|
|
73203
|
-
}
|
|
73204
|
-
__nestClassFieldInitializerScope(node) {
|
|
73205
|
-
return this.__nestScope(new ClassFieldInitializerScope(this, this.__currentScope, node));
|
|
73206
|
-
}
|
|
73207
|
-
__nestClassStaticBlockScope(node) {
|
|
73208
|
-
return this.__nestScope(new ClassStaticBlockScope(this, this.__currentScope, node));
|
|
73209
|
-
}
|
|
73210
|
-
__nestSwitchScope(node) {
|
|
73211
|
-
return this.__nestScope(new SwitchScope(this, this.__currentScope, node));
|
|
73212
|
-
}
|
|
73213
|
-
__nestModuleScope(node) {
|
|
73214
|
-
return this.__nestScope(new ModuleScope(this, this.__currentScope, node));
|
|
73215
|
-
}
|
|
73216
|
-
__nestFunctionExpressionNameScope(node) {
|
|
73217
|
-
return this.__nestScope(new FunctionExpressionNameScope(this, this.__currentScope, node));
|
|
73218
|
-
}
|
|
73219
|
-
__isES6() {
|
|
73220
|
-
return this.__options.ecmaVersion >= 6;
|
|
73221
|
-
}
|
|
73222
|
-
};
|
|
73223
|
-
/** @import * as types from "eslint-scope" */
|
|
73224
|
-
const { Syntax: Syntax$1 } = estraverse;
|
|
73225
|
-
/**
|
|
73226
|
-
* Get last array element
|
|
73227
|
-
* @param {Array} xs array
|
|
73228
|
-
* @returns {any} Last elment
|
|
73229
|
-
*/
|
|
73230
|
-
function getLast(xs) {
|
|
73231
|
-
return xs.at(-1) || null;
|
|
73232
|
-
}
|
|
73233
|
-
/**
|
|
73234
|
-
* Visitor for destructuring patterns.
|
|
73235
|
-
* @implements {types.PatternVisitor}
|
|
73236
|
-
*/
|
|
73237
|
-
var PatternVisitor = class extends esrecurse.Visitor {
|
|
73238
|
-
static isPattern(node) {
|
|
73239
|
-
const nodeType = node.type;
|
|
73240
|
-
return nodeType === Syntax$1.Identifier || nodeType === Syntax$1.ObjectPattern || nodeType === Syntax$1.ArrayPattern || nodeType === Syntax$1.SpreadElement || nodeType === Syntax$1.RestElement || nodeType === Syntax$1.AssignmentPattern;
|
|
73241
|
-
}
|
|
73242
|
-
constructor(options, rootPattern, callback) {
|
|
73243
|
-
super(null, options);
|
|
73244
|
-
this.rootPattern = rootPattern;
|
|
73245
|
-
this.callback = callback;
|
|
73246
|
-
this.assignments = [];
|
|
73247
|
-
this.rightHandNodes = [];
|
|
73248
|
-
this.restElements = [];
|
|
73249
|
-
}
|
|
73250
|
-
Identifier(pattern) {
|
|
73251
|
-
const lastRestElement = getLast(this.restElements);
|
|
73252
|
-
this.callback(pattern, {
|
|
73253
|
-
topLevel: pattern === this.rootPattern,
|
|
73254
|
-
rest: lastRestElement !== null && lastRestElement !== void 0 && lastRestElement.argument === pattern,
|
|
73255
|
-
assignments: this.assignments
|
|
73256
|
-
});
|
|
73257
|
-
}
|
|
73258
|
-
Property(property) {
|
|
73259
|
-
if (property.computed) this.rightHandNodes.push(property.key);
|
|
73260
|
-
this.visit(property.value);
|
|
73261
|
-
}
|
|
73262
|
-
ArrayPattern(pattern) {
|
|
73263
|
-
for (let i = 0, iz = pattern.elements.length; i < iz; ++i) {
|
|
73264
|
-
const element = pattern.elements[i];
|
|
73265
|
-
this.visit(element);
|
|
73266
|
-
}
|
|
73267
|
-
}
|
|
73268
|
-
AssignmentPattern(pattern) {
|
|
73269
|
-
this.assignments.push(pattern);
|
|
73270
|
-
this.visit(pattern.left);
|
|
73271
|
-
this.rightHandNodes.push(pattern.right);
|
|
73272
|
-
this.assignments.pop();
|
|
73273
|
-
}
|
|
73274
|
-
RestElement(pattern) {
|
|
73275
|
-
this.restElements.push(pattern);
|
|
73276
|
-
this.visit(pattern.argument);
|
|
73277
|
-
this.restElements.pop();
|
|
73278
|
-
}
|
|
73279
|
-
MemberExpression(node) {
|
|
73280
|
-
if (node.computed) this.rightHandNodes.push(node.property);
|
|
73281
|
-
this.rightHandNodes.push(node.object);
|
|
73282
|
-
}
|
|
73283
|
-
SpreadElement(node) {
|
|
73284
|
-
this.visit(node.argument);
|
|
73285
|
-
}
|
|
73286
|
-
ArrayExpression(node) {
|
|
73287
|
-
node.elements.forEach(this.visit, this);
|
|
73288
|
-
}
|
|
73289
|
-
AssignmentExpression(node) {
|
|
73290
|
-
this.assignments.push(node);
|
|
73291
|
-
this.visit(node.left);
|
|
73292
|
-
this.rightHandNodes.push(node.right);
|
|
73293
|
-
this.assignments.pop();
|
|
73294
|
-
}
|
|
73295
|
-
CallExpression(node) {
|
|
73296
|
-
node.arguments.forEach((a) => {
|
|
73297
|
-
this.rightHandNodes.push(a);
|
|
73298
|
-
});
|
|
73299
|
-
this.visit(node.callee);
|
|
73300
|
-
}
|
|
73301
|
-
};
|
|
73302
|
-
/** @import * as types from "eslint-scope" */
|
|
73303
|
-
/** @import ESTree from "estree" */
|
|
73304
|
-
const { Syntax } = estraverse;
|
|
73305
|
-
/**
|
|
73306
|
-
* Traverse identifier in pattern
|
|
73307
|
-
* @param {Object} options options
|
|
73308
|
-
* @param {ESTree.Pattern} rootPattern root pattern
|
|
73309
|
-
* @param {?Referencer} referencer referencer
|
|
73310
|
-
* @param {types.PatternVisitorCallback} callback callback
|
|
73311
|
-
* @returns {void}
|
|
73312
|
-
*/
|
|
73313
|
-
function traverseIdentifierInPattern(options, rootPattern, referencer, callback) {
|
|
73314
|
-
const visitor = new PatternVisitor(options, rootPattern, callback);
|
|
73315
|
-
visitor.visit(rootPattern);
|
|
73316
|
-
if (referencer !== null && referencer !== void 0) visitor.rightHandNodes.forEach(referencer.visit, referencer);
|
|
73317
|
-
}
|
|
73318
|
-
/**
|
|
73319
|
-
* Visitor for import specifiers.
|
|
73320
|
-
*/
|
|
73321
|
-
var Importer = class extends esrecurse.Visitor {
|
|
73322
|
-
constructor(declaration, referencer) {
|
|
73323
|
-
super(null, referencer.options);
|
|
73324
|
-
this.declaration = declaration;
|
|
73325
|
-
this.referencer = referencer;
|
|
73326
|
-
}
|
|
73327
|
-
visitImport(id, specifier) {
|
|
73328
|
-
this.referencer.visitPattern(id, (pattern) => {
|
|
73329
|
-
this.referencer.currentScope().__define(pattern, new Definition(Variable.ImportBinding, pattern, specifier, this.declaration, null, null));
|
|
73330
|
-
});
|
|
73331
|
-
}
|
|
73332
|
-
ImportNamespaceSpecifier(node) {
|
|
73333
|
-
const local = node.local || node.id;
|
|
73334
|
-
if (local) this.visitImport(local, node);
|
|
73335
|
-
}
|
|
73336
|
-
ImportDefaultSpecifier(node) {
|
|
73337
|
-
const local = node.local || node.id;
|
|
73338
|
-
this.visitImport(local, node);
|
|
73339
|
-
}
|
|
73340
|
-
ImportSpecifier(node) {
|
|
73341
|
-
const local = node.local || node.id;
|
|
73342
|
-
if (node.name) this.visitImport(node.name, node);
|
|
73343
|
-
else this.visitImport(local, node);
|
|
73344
|
-
}
|
|
73345
|
-
};
|
|
73346
|
-
/**
|
|
73347
|
-
* Referencing variables and creating bindings.
|
|
73348
|
-
* @implements {types.Referencer}
|
|
73349
|
-
*/
|
|
73350
|
-
var Referencer = class extends esrecurse.Visitor {
|
|
73351
|
-
constructor(options, scopeManager) {
|
|
73352
|
-
super(null, options);
|
|
73353
|
-
this.options = options;
|
|
73354
|
-
this.scopeManager = scopeManager;
|
|
73355
|
-
this.parent = null;
|
|
73356
|
-
this.isInnerMethodDefinition = false;
|
|
73357
|
-
}
|
|
73358
|
-
currentScope() {
|
|
73359
|
-
return this.scopeManager.__currentScope;
|
|
73360
|
-
}
|
|
73361
|
-
close(node) {
|
|
73362
|
-
while (this.currentScope() && node === this.currentScope().block) this.scopeManager.__currentScope = this.currentScope().__close(this.scopeManager);
|
|
73363
|
-
}
|
|
73364
|
-
pushInnerMethodDefinition(isInnerMethodDefinition) {
|
|
73365
|
-
const previous = this.isInnerMethodDefinition;
|
|
73366
|
-
this.isInnerMethodDefinition = isInnerMethodDefinition;
|
|
73367
|
-
return previous;
|
|
73368
|
-
}
|
|
73369
|
-
popInnerMethodDefinition(isInnerMethodDefinition) {
|
|
73370
|
-
this.isInnerMethodDefinition = isInnerMethodDefinition;
|
|
73371
|
-
}
|
|
73372
|
-
referencingDefaultValue(pattern, assignments, maybeImplicitGlobal, init) {
|
|
73373
|
-
const scope = this.currentScope();
|
|
73374
|
-
assignments.forEach((assignment) => {
|
|
73375
|
-
scope.__referencing(pattern, Reference.WRITE, assignment.right, maybeImplicitGlobal, pattern !== assignment.left, init);
|
|
73376
|
-
});
|
|
73377
|
-
}
|
|
73378
|
-
visitPattern(node, options, callback) {
|
|
73379
|
-
let visitPatternOptions = options;
|
|
73380
|
-
let visitPatternCallback = callback;
|
|
73381
|
-
if (typeof options === "function") {
|
|
73382
|
-
visitPatternCallback = options;
|
|
73383
|
-
visitPatternOptions = { processRightHandNodes: false };
|
|
73384
|
-
}
|
|
73385
|
-
traverseIdentifierInPattern(this.options, node, visitPatternOptions.processRightHandNodes ? this : null, visitPatternCallback);
|
|
73386
|
-
}
|
|
73387
|
-
visitFunction(node) {
|
|
73388
|
-
let i, iz;
|
|
73389
|
-
if (node.type === Syntax.FunctionDeclaration) this.currentScope().__define(node.id, new Definition(Variable.FunctionName, node.id, node, null, null, null));
|
|
73390
|
-
if (node.type === Syntax.FunctionExpression && node.id) this.scopeManager.__nestFunctionExpressionNameScope(node);
|
|
73391
|
-
this.scopeManager.__nestFunctionScope(node, this.isInnerMethodDefinition);
|
|
73392
|
-
const that = this;
|
|
73393
|
-
/**
|
|
73394
|
-
* Visit pattern callback
|
|
73395
|
-
* @param {ESTree.Pattern} pattern pattern
|
|
73396
|
-
* @param {Object} info info
|
|
73397
|
-
* @returns {void}
|
|
73398
|
-
*/
|
|
73399
|
-
function visitPatternCallback(pattern, info) {
|
|
73400
|
-
that.currentScope().__define(pattern, new ParameterDefinition(pattern, node, i, info.rest));
|
|
73401
|
-
that.referencingDefaultValue(pattern, info.assignments, null, true);
|
|
73402
|
-
}
|
|
73403
|
-
for (i = 0, iz = node.params.length; i < iz; ++i) this.visitPattern(node.params[i], { processRightHandNodes: true }, visitPatternCallback);
|
|
73404
|
-
if (node.rest) this.visitPattern({
|
|
73405
|
-
type: "RestElement",
|
|
73406
|
-
argument: node.rest
|
|
73407
|
-
}, (pattern) => {
|
|
73408
|
-
this.currentScope().__define(pattern, new ParameterDefinition(pattern, node, node.params.length, true));
|
|
73409
|
-
});
|
|
73410
|
-
if (node.body) if (node.body.type === Syntax.BlockStatement) this.visitChildren(node.body);
|
|
73411
|
-
else this.visit(node.body);
|
|
73412
|
-
this.close(node);
|
|
73413
|
-
}
|
|
73414
|
-
visitClass(node) {
|
|
73415
|
-
if (node.type === Syntax.ClassDeclaration) this.currentScope().__define(node.id, new Definition(Variable.ClassName, node.id, node, null, null, null));
|
|
73416
|
-
this.scopeManager.__nestClassScope(node);
|
|
73417
|
-
if (node.id) this.currentScope().__define(node.id, new Definition(Variable.ClassName, node.id, node));
|
|
73418
|
-
this.visit(node.superClass);
|
|
73419
|
-
this.visit(node.body);
|
|
73420
|
-
this.close(node);
|
|
73421
|
-
}
|
|
73422
|
-
visitProperty(node) {
|
|
73423
|
-
let previous;
|
|
73424
|
-
if (node.computed) this.visit(node.key);
|
|
73425
|
-
const isMethodDefinition = node.type === Syntax.MethodDefinition;
|
|
73426
|
-
if (isMethodDefinition) previous = this.pushInnerMethodDefinition(true);
|
|
73427
|
-
this.visit(node.value);
|
|
73428
|
-
if (isMethodDefinition) this.popInnerMethodDefinition(previous);
|
|
73429
|
-
}
|
|
73430
|
-
visitForIn(node) {
|
|
73431
|
-
if (node.left.type === Syntax.VariableDeclaration && node.left.kind !== "var") this.scopeManager.__nestForScope(node);
|
|
73432
|
-
if (node.left.type === Syntax.VariableDeclaration) {
|
|
73433
|
-
this.visit(node.left);
|
|
73434
|
-
this.visitPattern(node.left.declarations[0].id, (pattern) => {
|
|
73435
|
-
this.currentScope().__referencing(pattern, Reference.WRITE, node.right, null, true, true);
|
|
73436
|
-
});
|
|
73437
|
-
} else this.visitPattern(node.left, { processRightHandNodes: true }, (pattern, info) => {
|
|
73438
|
-
let maybeImplicitGlobal = null;
|
|
73439
|
-
if (!this.currentScope().isStrict) maybeImplicitGlobal = {
|
|
73440
|
-
pattern,
|
|
73441
|
-
node
|
|
73442
|
-
};
|
|
73443
|
-
this.referencingDefaultValue(pattern, info.assignments, maybeImplicitGlobal, false);
|
|
73444
|
-
this.currentScope().__referencing(pattern, Reference.WRITE, node.right, maybeImplicitGlobal, true, false);
|
|
73445
|
-
});
|
|
73446
|
-
this.visit(node.right);
|
|
73447
|
-
this.visit(node.body);
|
|
73448
|
-
this.close(node);
|
|
73449
|
-
}
|
|
73450
|
-
visitVariableDeclaration(variableTargetScope, type, node, index) {
|
|
73451
|
-
const decl = node.declarations[index];
|
|
73452
|
-
const init = decl.init;
|
|
73453
|
-
this.visitPattern(decl.id, { processRightHandNodes: true }, (pattern, info) => {
|
|
73454
|
-
variableTargetScope.__define(pattern, new Definition(type, pattern, decl, node, index, node.kind));
|
|
73455
|
-
this.referencingDefaultValue(pattern, info.assignments, null, true);
|
|
73456
|
-
if (init) this.currentScope().__referencing(pattern, Reference.WRITE, init, null, !info.topLevel, true);
|
|
73457
|
-
});
|
|
73458
|
-
}
|
|
73459
|
-
AssignmentExpression(node) {
|
|
73460
|
-
if (PatternVisitor.isPattern(node.left)) if (node.operator === "=") this.visitPattern(node.left, { processRightHandNodes: true }, (pattern, info) => {
|
|
73461
|
-
let maybeImplicitGlobal = null;
|
|
73462
|
-
if (!this.currentScope().isStrict) maybeImplicitGlobal = {
|
|
73463
|
-
pattern,
|
|
73464
|
-
node
|
|
73465
|
-
};
|
|
73466
|
-
this.referencingDefaultValue(pattern, info.assignments, maybeImplicitGlobal, false);
|
|
73467
|
-
this.currentScope().__referencing(pattern, Reference.WRITE, node.right, maybeImplicitGlobal, !info.topLevel, false);
|
|
73468
|
-
});
|
|
73469
|
-
else this.currentScope().__referencing(node.left, Reference.RW, node.right);
|
|
73470
|
-
else this.visit(node.left);
|
|
73471
|
-
this.visit(node.right);
|
|
73472
|
-
}
|
|
73473
|
-
CatchClause(node) {
|
|
73474
|
-
this.scopeManager.__nestCatchScope(node);
|
|
73475
|
-
this.visitPattern(node.param, { processRightHandNodes: true }, (pattern, info) => {
|
|
73476
|
-
this.currentScope().__define(pattern, new Definition(Variable.CatchClause, pattern, node, null, null, null));
|
|
73477
|
-
this.referencingDefaultValue(pattern, info.assignments, null, true);
|
|
73478
|
-
});
|
|
73479
|
-
this.visit(node.body);
|
|
73480
|
-
this.close(node);
|
|
73481
|
-
}
|
|
73482
|
-
Program(node) {
|
|
73483
|
-
this.scopeManager.__nestGlobalScope(node);
|
|
73484
|
-
if (this.scopeManager.isGlobalReturn()) {
|
|
73485
|
-
this.currentScope().isStrict = false;
|
|
73486
|
-
this.scopeManager.__nestFunctionScope(node, false);
|
|
73487
|
-
}
|
|
73488
|
-
if (this.scopeManager.__isES6() && this.scopeManager.isModule()) this.scopeManager.__nestModuleScope(node);
|
|
73489
|
-
if (this.scopeManager.isStrictModeSupported() && this.scopeManager.isImpliedStrict()) this.currentScope().isStrict = true;
|
|
73490
|
-
this.visitChildren(node);
|
|
73491
|
-
this.close(node);
|
|
73492
|
-
}
|
|
73493
|
-
Identifier(node) {
|
|
73494
|
-
this.currentScope().__referencing(node);
|
|
73495
|
-
}
|
|
73496
|
-
PrivateIdentifier() {}
|
|
73497
|
-
UpdateExpression(node) {
|
|
73498
|
-
if (PatternVisitor.isPattern(node.argument)) this.currentScope().__referencing(node.argument, Reference.RW, null);
|
|
73499
|
-
else this.visitChildren(node);
|
|
73500
|
-
}
|
|
73501
|
-
MemberExpression(node) {
|
|
73502
|
-
this.visit(node.object);
|
|
73503
|
-
if (node.computed) this.visit(node.property);
|
|
73504
|
-
}
|
|
73505
|
-
Property(node) {
|
|
73506
|
-
this.visitProperty(node);
|
|
73507
|
-
}
|
|
73508
|
-
PropertyDefinition(node) {
|
|
73509
|
-
const { computed, key, value } = node;
|
|
73510
|
-
if (computed) this.visit(key);
|
|
73511
|
-
if (value) {
|
|
73512
|
-
this.scopeManager.__nestClassFieldInitializerScope(value);
|
|
73513
|
-
this.visit(value);
|
|
73514
|
-
this.close(value);
|
|
73515
|
-
}
|
|
73516
|
-
}
|
|
73517
|
-
StaticBlock(node) {
|
|
73518
|
-
this.scopeManager.__nestClassStaticBlockScope(node);
|
|
73519
|
-
this.visitChildren(node);
|
|
73520
|
-
this.close(node);
|
|
73521
|
-
}
|
|
73522
|
-
MethodDefinition(node) {
|
|
73523
|
-
this.visitProperty(node);
|
|
73524
|
-
}
|
|
73525
|
-
BreakStatement() {}
|
|
73526
|
-
ContinueStatement() {}
|
|
73527
|
-
LabeledStatement(node) {
|
|
73528
|
-
this.visit(node.body);
|
|
73529
|
-
}
|
|
73530
|
-
ForStatement(node) {
|
|
73531
|
-
if (node.init && node.init.type === Syntax.VariableDeclaration && node.init.kind !== "var") this.scopeManager.__nestForScope(node);
|
|
73532
|
-
this.visitChildren(node);
|
|
73533
|
-
this.close(node);
|
|
73534
|
-
}
|
|
73535
|
-
ClassExpression(node) {
|
|
73536
|
-
this.visitClass(node);
|
|
73537
|
-
}
|
|
73538
|
-
ClassDeclaration(node) {
|
|
73539
|
-
this.visitClass(node);
|
|
73540
|
-
}
|
|
73541
|
-
CallExpression(node) {
|
|
73542
|
-
if (!this.scopeManager.__ignoreEval() && node.callee.type === Syntax.Identifier && node.callee.name === "eval") this.currentScope().variableScope.__detectEval();
|
|
73543
|
-
this.visitChildren(node);
|
|
73544
|
-
}
|
|
73545
|
-
BlockStatement(node) {
|
|
73546
|
-
if (this.scopeManager.__isES6()) this.scopeManager.__nestBlockScope(node);
|
|
73547
|
-
this.visitChildren(node);
|
|
73548
|
-
this.close(node);
|
|
73549
|
-
}
|
|
73550
|
-
ThisExpression() {
|
|
73551
|
-
this.currentScope().variableScope.__detectThis();
|
|
73552
|
-
}
|
|
73553
|
-
WithStatement(node) {
|
|
73554
|
-
this.visit(node.object);
|
|
73555
|
-
this.scopeManager.__nestWithScope(node);
|
|
73556
|
-
this.visit(node.body);
|
|
73557
|
-
this.close(node);
|
|
73558
|
-
}
|
|
73559
|
-
VariableDeclaration(node) {
|
|
73560
|
-
const variableTargetScope = node.kind === "var" ? this.currentScope().variableScope : this.currentScope();
|
|
73561
|
-
for (let i = 0, iz = node.declarations.length; i < iz; ++i) {
|
|
73562
|
-
const decl = node.declarations[i];
|
|
73563
|
-
this.visitVariableDeclaration(variableTargetScope, Variable.Variable, node, i);
|
|
73564
|
-
if (decl.init) this.visit(decl.init);
|
|
73565
|
-
}
|
|
73566
|
-
}
|
|
73567
|
-
SwitchStatement(node) {
|
|
73568
|
-
this.visit(node.discriminant);
|
|
73569
|
-
if (this.scopeManager.__isES6()) this.scopeManager.__nestSwitchScope(node);
|
|
73570
|
-
for (let i = 0, iz = node.cases.length; i < iz; ++i) this.visit(node.cases[i]);
|
|
73571
|
-
this.close(node);
|
|
73572
|
-
}
|
|
73573
|
-
FunctionDeclaration(node) {
|
|
73574
|
-
this.visitFunction(node);
|
|
73575
|
-
}
|
|
73576
|
-
FunctionExpression(node) {
|
|
73577
|
-
this.visitFunction(node);
|
|
73578
|
-
}
|
|
73579
|
-
ForOfStatement(node) {
|
|
73580
|
-
this.visitForIn(node);
|
|
73581
|
-
}
|
|
73582
|
-
ForInStatement(node) {
|
|
73583
|
-
this.visitForIn(node);
|
|
73584
|
-
}
|
|
73585
|
-
ArrowFunctionExpression(node) {
|
|
73586
|
-
this.visitFunction(node);
|
|
73587
|
-
}
|
|
73588
|
-
ImportDeclaration(node) {
|
|
73589
|
-
assert(this.scopeManager.__isES6() && this.scopeManager.isModule(), "ImportDeclaration should appear when the mode is ES6 and in the module context.");
|
|
73590
|
-
new Importer(node, this).visit(node);
|
|
73591
|
-
}
|
|
73592
|
-
visitExportDeclaration(node) {
|
|
73593
|
-
if (node.source) return;
|
|
73594
|
-
if (node.declaration) {
|
|
73595
|
-
this.visit(node.declaration);
|
|
73596
|
-
return;
|
|
73597
|
-
}
|
|
73598
|
-
this.visitChildren(node);
|
|
73599
|
-
}
|
|
73600
|
-
ExportDeclaration(node) {
|
|
73601
|
-
this.visitExportDeclaration(node);
|
|
73602
|
-
}
|
|
73603
|
-
ExportAllDeclaration(node) {
|
|
73604
|
-
this.visitExportDeclaration(node);
|
|
73605
|
-
}
|
|
73606
|
-
ExportDefaultDeclaration(node) {
|
|
73607
|
-
this.visitExportDeclaration(node);
|
|
73608
|
-
}
|
|
73609
|
-
ExportNamedDeclaration(node) {
|
|
73610
|
-
this.visitExportDeclaration(node);
|
|
73611
|
-
}
|
|
73612
|
-
ExportSpecifier(node) {
|
|
73613
|
-
const local = node.id || node.local;
|
|
73614
|
-
this.visit(local);
|
|
73615
|
-
}
|
|
73616
|
-
MetaProperty() {}
|
|
73617
|
-
JSXIdentifier(node) {
|
|
73618
|
-
if (this.scopeManager.__isJSXEnabled() && node.name !== "this") this.currentScope().__referencing(node);
|
|
73619
|
-
}
|
|
73620
|
-
JSXMemberExpression(node) {
|
|
73621
|
-
this.visit(node.object);
|
|
73622
|
-
}
|
|
73623
|
-
JSXElement(node) {
|
|
73624
|
-
if (this.scopeManager.__isJSXEnabled()) {
|
|
73625
|
-
this.visit(node.openingElement);
|
|
73626
|
-
node.children.forEach(this.visit, this);
|
|
73627
|
-
} else this.visitChildren(node);
|
|
73628
|
-
}
|
|
73629
|
-
JSXOpeningElement(node) {
|
|
73630
|
-
if (this.scopeManager.__isJSXEnabled()) {
|
|
73631
|
-
const nameNode = node.name;
|
|
73632
|
-
if (nameNode.type === "JSXIdentifier" && nameNode.name[0].toUpperCase() === nameNode.name[0] || nameNode.type === "JSXMemberExpression") this.visit(nameNode);
|
|
73633
|
-
}
|
|
73634
|
-
node.attributes.forEach(this.visit, this);
|
|
73635
|
-
}
|
|
73636
|
-
JSXAttribute(node) {
|
|
73637
|
-
if (node.value) this.visit(node.value);
|
|
73638
|
-
}
|
|
73639
|
-
JSXExpressionContainer(node) {
|
|
73640
|
-
this.visit(node.expression);
|
|
73641
|
-
}
|
|
73642
|
-
JSXNamespacedName(node) {
|
|
73643
|
-
this.visit(node.namespace);
|
|
73644
|
-
this.visit(node.name);
|
|
73645
|
-
}
|
|
73646
|
-
};
|
|
73647
|
-
/** @import ESTree from "estree" */
|
|
73648
|
-
/**
|
|
73649
|
-
* Set the default options
|
|
73650
|
-
* @returns {Object} options
|
|
73651
|
-
*/
|
|
73652
|
-
function defaultOptions() {
|
|
73653
|
-
return {
|
|
73654
|
-
optimistic: false,
|
|
73655
|
-
nodejsScope: false,
|
|
73656
|
-
impliedStrict: false,
|
|
73657
|
-
sourceType: "script",
|
|
73658
|
-
ecmaVersion: 5,
|
|
73659
|
-
childVisitorKeys: null,
|
|
73660
|
-
fallback: "iteration"
|
|
73661
|
-
};
|
|
73662
|
-
}
|
|
73663
|
-
/**
|
|
73664
|
-
* Preform deep update on option object
|
|
73665
|
-
* @param {Record<string, unknown>} target Options
|
|
73666
|
-
* @param {Record<string, unknown>} override Updates
|
|
73667
|
-
* @returns {Record<string, unknown>} Updated options
|
|
73668
|
-
*/
|
|
73669
|
-
function updateDeeply(target, override) {
|
|
73670
|
-
/**
|
|
73671
|
-
* Is hash object
|
|
73672
|
-
* @param {Object} value Test value
|
|
73673
|
-
* @returns {value is Record<string, unknown>} Result
|
|
73674
|
-
*/
|
|
73675
|
-
function isHashObject(value) {
|
|
73676
|
-
return typeof value === "object" && value instanceof Object && !(value instanceof Array) && !(value instanceof RegExp);
|
|
73677
|
-
}
|
|
73678
|
-
for (const key in override) if (Object.hasOwn(override, key)) {
|
|
73679
|
-
const val = override[key];
|
|
73680
|
-
if (isHashObject(val)) if (isHashObject(target[key])) updateDeeply(target[key], val);
|
|
73681
|
-
else target[key] = updateDeeply({}, val);
|
|
73682
|
-
else target[key] = val;
|
|
73683
|
-
}
|
|
73684
|
-
return target;
|
|
73685
|
-
}
|
|
73686
|
-
/**
|
|
73687
|
-
* Main interface function. Takes an Espree syntax tree and returns the
|
|
73688
|
-
* analyzed scopes.
|
|
73689
|
-
* @function analyze
|
|
73690
|
-
* @param {ESTree.Program} tree Abstract Syntax Tree
|
|
73691
|
-
* @param {Object} providedOptions Options that tailor the scope analysis
|
|
73692
|
-
* @param {boolean} [providedOptions.optimistic=false] the optimistic flag
|
|
73693
|
-
* @param {boolean} [providedOptions.ignoreEval=false] whether to check 'eval()' calls
|
|
73694
|
-
* @param {boolean} [providedOptions.nodejsScope=false] whether the whole
|
|
73695
|
-
* script is executed under node.js environment. When enabled, escope adds
|
|
73696
|
-
* a function scope immediately following the global scope.
|
|
73697
|
-
* @param {boolean} [providedOptions.impliedStrict=false] implied strict mode
|
|
73698
|
-
* (if ecmaVersion >= 5).
|
|
73699
|
-
* @param {string} [providedOptions.sourceType='script'] the source type of the script. one of 'script', 'module', and 'commonjs'
|
|
73700
|
-
* @param {number} [providedOptions.ecmaVersion=5] which ECMAScript version is considered
|
|
73701
|
-
* @param {boolean} [providedOptions.jsx=false] support JSX references
|
|
73702
|
-
* @param {Object} [providedOptions.childVisitorKeys=null] Additional known visitor keys. See [esrecurse](https://github.com/estools/esrecurse)'s the `childVisitorKeys` option.
|
|
73703
|
-
* @param {string} [providedOptions.fallback='iteration'] A kind of the fallback in order to encounter with unknown node. See [esrecurse](https://github.com/estools/esrecurse)'s the `fallback` option.
|
|
73704
|
-
* @returns {ScopeManager} ScopeManager
|
|
73705
|
-
*/
|
|
73706
|
-
function analyze(tree, providedOptions) {
|
|
73707
|
-
const options = updateDeeply(defaultOptions(), providedOptions);
|
|
73708
|
-
const scopeManager = new ScopeManager(options);
|
|
73709
|
-
new Referencer(options, scopeManager).visit(tree);
|
|
73710
|
-
assert(scopeManager.__currentScope === null, "currentScope should be null.");
|
|
73711
|
-
return scopeManager;
|
|
73712
|
-
}
|
|
73713
|
-
/** @name module:escope.version */
|
|
73714
|
-
const version = "9.1.2";
|
|
73715
|
-
exports.Definition = Definition;
|
|
73716
|
-
exports.PatternVisitor = PatternVisitor;
|
|
73717
|
-
exports.Reference = Reference;
|
|
73718
|
-
exports.Referencer = Referencer;
|
|
73719
|
-
exports.Scope = Scope;
|
|
73720
|
-
exports.ScopeManager = ScopeManager;
|
|
73721
|
-
exports.Variable = Variable;
|
|
73722
|
-
exports.analyze = analyze;
|
|
73723
|
-
exports.version = version;
|
|
73724
|
-
}));
|
|
73725
|
-
//#endregion
|
|
73726
71556
|
//#region ../../node_modules/.pnpm/eslint@10.3.0_jiti@2.7.0/node_modules/eslint/lib/languages/js/validate-language-options.js
|
|
73727
71557
|
/**
|
|
73728
71558
|
* @fileoverview The schema to validate language options
|
|
@@ -93839,11 +91669,11 @@ var require_dist$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
93839
91669
|
assert = __toESM(assert);
|
|
93840
91670
|
let debug = require_src$1();
|
|
93841
91671
|
debug = __toESM(debug);
|
|
93842
|
-
let eslint_scope = require_eslint_scope
|
|
91672
|
+
let eslint_scope = require_eslint_scope();
|
|
93843
91673
|
eslint_scope = __toESM(eslint_scope);
|
|
93844
91674
|
let semver = require_semver();
|
|
93845
91675
|
let module$1 = __require("module");
|
|
93846
|
-
let espree = require_espree
|
|
91676
|
+
let espree = require_espree();
|
|
93847
91677
|
espree = __toESM(espree);
|
|
93848
91678
|
let events = __require("events");
|
|
93849
91679
|
events = __toESM(events);
|
|
@@ -104024,7 +101854,7 @@ var require_dist$1 = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104024
101854
|
exports.parseForESLint = parseForESLint;
|
|
104025
101855
|
}));
|
|
104026
101856
|
//#endregion
|
|
104027
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
101857
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/configs/flat/recommended.js
|
|
104028
101858
|
var require_recommended = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
104029
101859
|
const globals_1 = (exports && exports.__importDefault || function(mod) {
|
|
104030
101860
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -104054,7 +101884,7 @@ var require_recommended = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
104054
101884
|
}];
|
|
104055
101885
|
}));
|
|
104056
101886
|
//#endregion
|
|
104057
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
101887
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/defineTemplateBodyVisitor.js
|
|
104058
101888
|
var require_defineTemplateBodyVisitor = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104059
101889
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
104060
101890
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -104093,7 +101923,7 @@ var require_defineTemplateBodyVisitor = /* @__PURE__ */ __commonJSMin(((exports)
|
|
|
104093
101923
|
exports.default = defineTemplateBodyVisitor;
|
|
104094
101924
|
}));
|
|
104095
101925
|
//#endregion
|
|
104096
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
101926
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/getAttributeName.js
|
|
104097
101927
|
var require_getAttributeName = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104098
101928
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
104099
101929
|
function getAttributeName(node) {
|
|
@@ -104105,7 +101935,7 @@ var require_getAttributeName = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104105
101935
|
exports.default = getAttributeName;
|
|
104106
101936
|
}));
|
|
104107
101937
|
//#endregion
|
|
104108
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
101938
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/getAttributeValue.js
|
|
104109
101939
|
var require_getAttributeValue = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104110
101940
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
104111
101941
|
function getAttributeValue(node) {
|
|
@@ -104120,7 +101950,7 @@ var require_getAttributeValue = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104120
101950
|
exports.default = getAttributeValue;
|
|
104121
101951
|
}));
|
|
104122
101952
|
//#endregion
|
|
104123
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
101953
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/getElementAttribute.js
|
|
104124
101954
|
var require_getElementAttribute = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104125
101955
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
104126
101956
|
function getElementAttribute(node, name) {
|
|
@@ -104130,7 +101960,7 @@ var require_getElementAttribute = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104130
101960
|
exports.default = getElementAttribute;
|
|
104131
101961
|
}));
|
|
104132
101962
|
//#endregion
|
|
104133
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
101963
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/getElementAttributeValue.js
|
|
104134
101964
|
var require_getElementAttributeValue = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104135
101965
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
104136
101966
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -104145,7 +101975,7 @@ var require_getElementAttributeValue = /* @__PURE__ */ __commonJSMin(((exports)
|
|
|
104145
101975
|
exports.default = getElementAttributeValue;
|
|
104146
101976
|
}));
|
|
104147
101977
|
//#endregion
|
|
104148
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
101978
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/makeKebabCase.js
|
|
104149
101979
|
var require_makeKebabCase = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104150
101980
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
104151
101981
|
function makeKebabCase(value) {
|
|
@@ -104154,7 +101984,7 @@ var require_makeKebabCase = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104154
101984
|
exports.default = makeKebabCase;
|
|
104155
101985
|
}));
|
|
104156
101986
|
//#endregion
|
|
104157
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
101987
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/getElementType.js
|
|
104158
101988
|
var require_getElementType = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104159
101989
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
104160
101990
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -104177,7 +102007,7 @@ var require_getElementType = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104177
102007
|
exports.default = getElementType;
|
|
104178
102008
|
}));
|
|
104179
102009
|
//#endregion
|
|
104180
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102010
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/getLiteralAttributeValue.js
|
|
104181
102011
|
var require_getLiteralAttributeValue = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104182
102012
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
104183
102013
|
function getLiteralAttributeValue(node, name) {
|
|
@@ -104190,7 +102020,7 @@ var require_getLiteralAttributeValue = /* @__PURE__ */ __commonJSMin(((exports)
|
|
|
104190
102020
|
exports.default = getLiteralAttributeValue;
|
|
104191
102021
|
}));
|
|
104192
102022
|
//#endregion
|
|
104193
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102023
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/getInteractiveRoles.js
|
|
104194
102024
|
var require_getInteractiveRoles = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104195
102025
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
104196
102026
|
const aria_query_1 = require_lib$3();
|
|
@@ -104202,7 +102032,7 @@ var require_getInteractiveRoles = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104202
102032
|
exports.default = getInteractiveRoles;
|
|
104203
102033
|
}));
|
|
104204
102034
|
//#endregion
|
|
104205
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102035
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/isHiddenFromScreenReader.js
|
|
104206
102036
|
var require_isHiddenFromScreenReader = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104207
102037
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
104208
102038
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -104218,7 +102048,7 @@ var require_isHiddenFromScreenReader = /* @__PURE__ */ __commonJSMin(((exports)
|
|
|
104218
102048
|
exports.default = isHiddenFromScreenReader;
|
|
104219
102049
|
}));
|
|
104220
102050
|
//#endregion
|
|
104221
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102051
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/hasAccessibleChild.js
|
|
104222
102052
|
var require_hasAccessibleChild = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104223
102053
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
104224
102054
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -104244,7 +102074,7 @@ var require_hasAccessibleChild = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104244
102074
|
exports.default = hasAccessibleChild;
|
|
104245
102075
|
}));
|
|
104246
102076
|
//#endregion
|
|
104247
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102077
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/hasAriaLabel.js
|
|
104248
102078
|
var require_hasAriaLabel = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104249
102079
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
104250
102080
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -104257,7 +102087,7 @@ var require_hasAriaLabel = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104257
102087
|
exports.default = hasAriaLabel;
|
|
104258
102088
|
}));
|
|
104259
102089
|
//#endregion
|
|
104260
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102090
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/hasContent.js
|
|
104261
102091
|
var require_hasContent = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104262
102092
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
104263
102093
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -104292,7 +102122,7 @@ var require_hasContent = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104292
102122
|
exports.default = hasContent;
|
|
104293
102123
|
}));
|
|
104294
102124
|
//#endregion
|
|
104295
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102125
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/matchesElementRole.js
|
|
104296
102126
|
var require_matchesElementRole = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104297
102127
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
104298
102128
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -104317,7 +102147,7 @@ var require_matchesElementRole = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104317
102147
|
exports.default = matchesElementRole;
|
|
104318
102148
|
}));
|
|
104319
102149
|
//#endregion
|
|
104320
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102150
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/isInteractiveElement.js
|
|
104321
102151
|
var require_isInteractiveElement = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104322
102152
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
104323
102153
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -104338,7 +102168,7 @@ var require_isInteractiveElement = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104338
102168
|
exports.default = isInteractiveElement;
|
|
104339
102169
|
}));
|
|
104340
102170
|
//#endregion
|
|
104341
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102171
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/hasFocusableElement.js
|
|
104342
102172
|
var require_hasFocusableElement = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104343
102173
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
104344
102174
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -104355,7 +102185,7 @@ var require_hasFocusableElement = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104355
102185
|
exports.default = hasFocusableElements;
|
|
104356
102186
|
}));
|
|
104357
102187
|
//#endregion
|
|
104358
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102188
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/hasOnDirective.js
|
|
104359
102189
|
var require_hasOnDirective = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104360
102190
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
104361
102191
|
function hasOnDirective(node, name) {
|
|
@@ -104366,7 +102196,7 @@ var require_hasOnDirective = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104366
102196
|
exports.default = hasOnDirective;
|
|
104367
102197
|
}));
|
|
104368
102198
|
//#endregion
|
|
104369
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102199
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/hasOnDirectives.js
|
|
104370
102200
|
var require_hasOnDirectives = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104371
102201
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
104372
102202
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -104379,7 +102209,7 @@ var require_hasOnDirectives = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104379
102209
|
exports.default = hasOnDirectives;
|
|
104380
102210
|
}));
|
|
104381
102211
|
//#endregion
|
|
104382
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102212
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/interactiveHandlers.json
|
|
104383
102213
|
var require_interactiveHandlers = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
104384
102214
|
module.exports = [
|
|
104385
102215
|
"click",
|
|
@@ -104407,7 +102237,7 @@ var require_interactiveHandlers = /* @__PURE__ */ __commonJSMin(((exports, modul
|
|
|
104407
102237
|
];
|
|
104408
102238
|
}));
|
|
104409
102239
|
//#endregion
|
|
104410
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102240
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/isAriaHidden.js
|
|
104411
102241
|
var require_isAriaHidden = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104412
102242
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
104413
102243
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -104421,7 +102251,7 @@ var require_isAriaHidden = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104421
102251
|
exports.default = isAriaHidden;
|
|
104422
102252
|
}));
|
|
104423
102253
|
//#endregion
|
|
104424
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102254
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/htmlElements.json
|
|
104425
102255
|
var require_htmlElements = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
104426
102256
|
module.exports = [
|
|
104427
102257
|
"html",
|
|
@@ -104545,7 +102375,7 @@ var require_htmlElements = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
104545
102375
|
];
|
|
104546
102376
|
}));
|
|
104547
102377
|
//#endregion
|
|
104548
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102378
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/isCustomComponent.js
|
|
104549
102379
|
var require_isCustomComponent = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104550
102380
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
104551
102381
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -104563,7 +102393,7 @@ var require_isCustomComponent = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104563
102393
|
exports.default = isCustomComponent;
|
|
104564
102394
|
}));
|
|
104565
102395
|
//#endregion
|
|
104566
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102396
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/isAttribute.js
|
|
104567
102397
|
var require_isAttribute = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104568
102398
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
104569
102399
|
function isAttribute(node, name) {
|
|
@@ -104573,7 +102403,7 @@ var require_isAttribute = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104573
102403
|
exports.default = isAttribute;
|
|
104574
102404
|
}));
|
|
104575
102405
|
//#endregion
|
|
104576
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102406
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/isInteractiveRole.js
|
|
104577
102407
|
var require_isInteractiveRole = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104578
102408
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
104579
102409
|
const aria_query_1 = require_lib$3();
|
|
@@ -104585,7 +102415,7 @@ var require_isInteractiveRole = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104585
102415
|
exports.default = isInteractiveRole;
|
|
104586
102416
|
}));
|
|
104587
102417
|
//#endregion
|
|
104588
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102418
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/isMatchingElement.js
|
|
104589
102419
|
var require_isMatchingElement = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104590
102420
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
104591
102421
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -104603,7 +102433,7 @@ var require_isMatchingElement = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104603
102433
|
exports.default = isMatchingElement;
|
|
104604
102434
|
}));
|
|
104605
102435
|
//#endregion
|
|
104606
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102436
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/isPresentationRole.js
|
|
104607
102437
|
var require_isPresentationRole = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104608
102438
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
104609
102439
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -104617,7 +102447,7 @@ var require_isPresentationRole = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104617
102447
|
exports.default = isPresentationRole;
|
|
104618
102448
|
}));
|
|
104619
102449
|
//#endregion
|
|
104620
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102450
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils/makeDocsURL.js
|
|
104621
102451
|
var require_makeDocsURL = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104622
102452
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
104623
102453
|
function makeDocsURL(name) {
|
|
@@ -104626,7 +102456,7 @@ var require_makeDocsURL = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104626
102456
|
exports.default = makeDocsURL;
|
|
104627
102457
|
}));
|
|
104628
102458
|
//#endregion
|
|
104629
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102459
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/utils.js
|
|
104630
102460
|
var require_utils = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104631
102461
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
104632
102462
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -104817,7 +102647,7 @@ var require_utils = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104817
102647
|
});
|
|
104818
102648
|
}));
|
|
104819
102649
|
//#endregion
|
|
104820
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102650
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/alt-text.js
|
|
104821
102651
|
var require_alt_text = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104822
102652
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
104823
102653
|
const utils_1 = require_utils();
|
|
@@ -104899,7 +102729,7 @@ var require_alt_text = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104899
102729
|
};
|
|
104900
102730
|
}));
|
|
104901
102731
|
//#endregion
|
|
104902
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102732
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/anchor-has-content.js
|
|
104903
102733
|
var require_anchor_has_content = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104904
102734
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
104905
102735
|
const utils_1 = require_utils();
|
|
@@ -104941,7 +102771,7 @@ var require_anchor_has_content = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104941
102771
|
};
|
|
104942
102772
|
}));
|
|
104943
102773
|
//#endregion
|
|
104944
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102774
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/aria-props.js
|
|
104945
102775
|
var require_aria_props = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104946
102776
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
104947
102777
|
const aria_query_1 = require_lib$3();
|
|
@@ -104967,7 +102797,7 @@ var require_aria_props = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
104967
102797
|
};
|
|
104968
102798
|
}));
|
|
104969
102799
|
//#endregion
|
|
104970
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102800
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/aria-role.js
|
|
104971
102801
|
var require_aria_role = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
104972
102802
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
104973
102803
|
const aria_query_1 = require_lib$3();
|
|
@@ -105006,7 +102836,7 @@ var require_aria_role = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
105006
102836
|
};
|
|
105007
102837
|
}));
|
|
105008
102838
|
//#endregion
|
|
105009
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102839
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/aria-unsupported-elements.js
|
|
105010
102840
|
var require_aria_unsupported_elements = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
105011
102841
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
105012
102842
|
const aria_query_1 = require_lib$3();
|
|
@@ -105034,7 +102864,7 @@ var require_aria_unsupported_elements = /* @__PURE__ */ __commonJSMin(((exports)
|
|
|
105034
102864
|
};
|
|
105035
102865
|
}));
|
|
105036
102866
|
//#endregion
|
|
105037
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102867
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/click-events-have-key-events.js
|
|
105038
102868
|
var require_click_events_have_key_events = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
105039
102869
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
105040
102870
|
const utils_1 = require_utils();
|
|
@@ -105060,7 +102890,7 @@ var require_click_events_have_key_events = /* @__PURE__ */ __commonJSMin(((expor
|
|
|
105060
102890
|
};
|
|
105061
102891
|
}));
|
|
105062
102892
|
//#endregion
|
|
105063
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102893
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/form-control-has-label.js
|
|
105064
102894
|
var require_form_control_has_label = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
105065
102895
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
105066
102896
|
const utils_1 = require_utils();
|
|
@@ -105136,7 +102966,7 @@ var require_form_control_has_label = /* @__PURE__ */ __commonJSMin(((exports) =>
|
|
|
105136
102966
|
};
|
|
105137
102967
|
}));
|
|
105138
102968
|
//#endregion
|
|
105139
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
102969
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/heading-has-content.js
|
|
105140
102970
|
var require_heading_has_content = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
105141
102971
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
105142
102972
|
const utils_1 = require_utils();
|
|
@@ -105186,7 +103016,7 @@ var require_heading_has_content = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
105186
103016
|
};
|
|
105187
103017
|
}));
|
|
105188
103018
|
//#endregion
|
|
105189
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
103019
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/iframe-has-title.js
|
|
105190
103020
|
var require_iframe_has_title = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
105191
103021
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
105192
103022
|
const utils_1 = require_utils();
|
|
@@ -105210,7 +103040,7 @@ var require_iframe_has_title = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
105210
103040
|
};
|
|
105211
103041
|
}));
|
|
105212
103042
|
//#endregion
|
|
105213
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
103043
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/interactive-supports-focus.js
|
|
105214
103044
|
var require_interactive_supports_focus = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
105215
103045
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
105216
103046
|
const aria_query_1 = require_lib$3();
|
|
@@ -105285,7 +103115,7 @@ var require_interactive_supports_focus = /* @__PURE__ */ __commonJSMin(((exports
|
|
|
105285
103115
|
};
|
|
105286
103116
|
}));
|
|
105287
103117
|
//#endregion
|
|
105288
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
103118
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/label-has-for.js
|
|
105289
103119
|
var require_label_has_for = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
105290
103120
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
105291
103121
|
const utils_1 = require_utils();
|
|
@@ -105385,7 +103215,7 @@ var require_label_has_for = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
105385
103215
|
};
|
|
105386
103216
|
}));
|
|
105387
103217
|
//#endregion
|
|
105388
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
103218
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/media-has-caption.js
|
|
105389
103219
|
var require_media_has_caption = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
105390
103220
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
105391
103221
|
const utils_1 = require_utils();
|
|
@@ -105433,7 +103263,7 @@ var require_media_has_caption = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
105433
103263
|
};
|
|
105434
103264
|
}));
|
|
105435
103265
|
//#endregion
|
|
105436
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
103266
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/mouse-events-have-key-events.js
|
|
105437
103267
|
var require_mouse_events_have_key_events = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
105438
103268
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
105439
103269
|
const utils_1 = require_utils();
|
|
@@ -105466,7 +103296,7 @@ var require_mouse_events_have_key_events = /* @__PURE__ */ __commonJSMin(((expor
|
|
|
105466
103296
|
};
|
|
105467
103297
|
}));
|
|
105468
103298
|
//#endregion
|
|
105469
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
103299
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/no-access-key.js
|
|
105470
103300
|
var require_no_access_key = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
105471
103301
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
105472
103302
|
const utils_1 = require_utils();
|
|
@@ -105488,7 +103318,7 @@ var require_no_access_key = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
105488
103318
|
};
|
|
105489
103319
|
}));
|
|
105490
103320
|
//#endregion
|
|
105491
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
103321
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/no-aria-hidden-on-focusable.js
|
|
105492
103322
|
var require_no_aria_hidden_on_focusable = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
105493
103323
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
105494
103324
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -105514,7 +103344,7 @@ var require_no_aria_hidden_on_focusable = /* @__PURE__ */ __commonJSMin(((export
|
|
|
105514
103344
|
};
|
|
105515
103345
|
}));
|
|
105516
103346
|
//#endregion
|
|
105517
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
103347
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/no-autofocus.js
|
|
105518
103348
|
var require_no_autofocus = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
105519
103349
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
105520
103350
|
const aria_query_1 = require_lib$3();
|
|
@@ -105547,7 +103377,7 @@ var require_no_autofocus = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
105547
103377
|
};
|
|
105548
103378
|
}));
|
|
105549
103379
|
//#endregion
|
|
105550
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
103380
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/no-distracting-elements.js
|
|
105551
103381
|
var require_no_distracting_elements = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
105552
103382
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
105553
103383
|
const utils_1 = require_utils();
|
|
@@ -105582,7 +103412,7 @@ var require_no_distracting_elements = /* @__PURE__ */ __commonJSMin(((exports) =
|
|
|
105582
103412
|
};
|
|
105583
103413
|
}));
|
|
105584
103414
|
//#endregion
|
|
105585
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
103415
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/no-onchange.js
|
|
105586
103416
|
var require_no_onchange = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
105587
103417
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
105588
103418
|
const utils_1 = require_utils();
|
|
@@ -105606,7 +103436,7 @@ var require_no_onchange = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
105606
103436
|
};
|
|
105607
103437
|
}));
|
|
105608
103438
|
//#endregion
|
|
105609
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
103439
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/no-redundant-roles.js
|
|
105610
103440
|
var require_no_redundant_roles = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
105611
103441
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
105612
103442
|
const aria_query_1 = require_lib$3();
|
|
@@ -105656,7 +103486,7 @@ var require_no_redundant_roles = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
105656
103486
|
};
|
|
105657
103487
|
}));
|
|
105658
103488
|
//#endregion
|
|
105659
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
103489
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/no-role-presentation-on-focusable.js
|
|
105660
103490
|
var require_no_role_presentation_on_focusable = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
105661
103491
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
105662
103492
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -105682,7 +103512,7 @@ var require_no_role_presentation_on_focusable = /* @__PURE__ */ __commonJSMin(((
|
|
|
105682
103512
|
};
|
|
105683
103513
|
}));
|
|
105684
103514
|
//#endregion
|
|
105685
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
103515
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/no-static-element-interactions.js
|
|
105686
103516
|
var require_no_static_element_interactions = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
105687
103517
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
105688
103518
|
const utils_1 = require_utils();
|
|
@@ -105706,7 +103536,7 @@ var require_no_static_element_interactions = /* @__PURE__ */ __commonJSMin(((exp
|
|
|
105706
103536
|
};
|
|
105707
103537
|
}));
|
|
105708
103538
|
//#endregion
|
|
105709
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
103539
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/role-has-required-aria-props.js
|
|
105710
103540
|
var require_role_has_required_aria_props = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
105711
103541
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
105712
103542
|
const aria_query_1 = require_lib$3();
|
|
@@ -105753,7 +103583,7 @@ var require_role_has_required_aria_props = /* @__PURE__ */ __commonJSMin(((expor
|
|
|
105753
103583
|
};
|
|
105754
103584
|
}));
|
|
105755
103585
|
//#endregion
|
|
105756
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
103586
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/rules/tabindex-no-positive.js
|
|
105757
103587
|
var require_tabindex_no_positive = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
105758
103588
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
105759
103589
|
const utils_1 = require_utils();
|
|
@@ -105776,7 +103606,7 @@ var require_tabindex_no_positive = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
|
105776
103606
|
};
|
|
105777
103607
|
}));
|
|
105778
103608
|
//#endregion
|
|
105779
|
-
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.
|
|
103609
|
+
//#region ../../node_modules/.pnpm/eslint-plugin-vuejs-accessibility@2.5.0_eslint@10.3.0_jiti@2.7.0__globals@17.6.0/node_modules/eslint-plugin-vuejs-accessibility/dist/index.js
|
|
105780
103610
|
var require_dist = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
105781
103611
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
105782
103612
|
return mod && mod.__esModule ? mod : { "default": mod };
|