@stencil/core 4.43.2 → 4.43.3-dev.1773984292.05d12e5

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.
Files changed (38) hide show
  1. package/cli/index.cjs +379 -154
  2. package/cli/index.js +379 -154
  3. package/cli/package.json +1 -1
  4. package/compiler/package.json +1 -1
  5. package/compiler/stencil.js +2276 -2065
  6. package/dev-server/client/index.js +1 -1
  7. package/dev-server/client/package.json +1 -1
  8. package/dev-server/connector.html +2 -2
  9. package/dev-server/index.js +1 -1
  10. package/dev-server/package.json +1 -1
  11. package/dev-server/server-process.js +346 -137
  12. package/internal/app-data/package.json +1 -1
  13. package/internal/app-globals/package.json +1 -1
  14. package/internal/client/index.js +1 -1
  15. package/internal/client/package.json +1 -1
  16. package/internal/client/patch-browser.js +1 -1
  17. package/internal/hydrate/index.js +423 -214
  18. package/internal/hydrate/package.json +1 -1
  19. package/internal/hydrate/runner.js +396 -189
  20. package/internal/package.json +1 -1
  21. package/internal/stencil-private.d.ts +1 -1
  22. package/internal/stencil-public-compiler.d.ts +61 -6
  23. package/internal/testing/index.js +410 -201
  24. package/internal/testing/package.json +1 -1
  25. package/mock-doc/index.cjs +2 -4
  26. package/mock-doc/index.d.ts +1 -1
  27. package/mock-doc/index.js +2 -4
  28. package/mock-doc/package.json +1 -1
  29. package/package.json +2 -2
  30. package/screenshot/index.js +341 -132
  31. package/screenshot/package.json +1 -1
  32. package/screenshot/pixel-match.js +1 -1
  33. package/sys/node/glob.js +1 -1
  34. package/sys/node/index.js +44 -46
  35. package/sys/node/package.json +1 -1
  36. package/sys/node/worker.js +1 -1
  37. package/testing/index.js +420 -211
  38. package/testing/package.json +1 -1
package/cli/index.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- Stencil CLI (CommonJS) v4.43.2 | MIT Licensed | https://stenciljs.com
2
+ Stencil CLI (CommonJS) v4.43.3-dev.1773984292.05d12e5 | MIT Licensed | https://stenciljs.com
3
3
  */
4
4
  "use strict";
5
5
  var __create = Object.create;
@@ -2571,6 +2571,7 @@ var BOOLEAN_CLI_FLAGS = [
2571
2571
  "dev",
2572
2572
  "devtools",
2573
2573
  "docs",
2574
+ // @deprecated - integrated testing will be removed in Stencil v5. See https://github.com/stenciljs/core/issues/6584.
2574
2575
  "e2e",
2575
2576
  "es5",
2576
2577
  "esm",
@@ -2582,15 +2583,20 @@ var BOOLEAN_CLI_FLAGS = [
2582
2583
  "prod",
2583
2584
  "profile",
2584
2585
  "serviceWorker",
2586
+ // @deprecated - screenshot testing will be removed in Stencil v5. See https://github.com/stenciljs/core/issues/6584.
2585
2587
  "screenshot",
2586
2588
  "serve",
2587
2589
  "skipNodeCheck",
2590
+ // @deprecated - integrated testing will be removed in Stencil v5. See https://github.com/stenciljs/core/issues/6584.
2588
2591
  "spec",
2589
2592
  "ssr",
2593
+ // @deprecated - screenshot testing will be removed in Stencil v5. See https://github.com/stenciljs/core/issues/6584.
2590
2594
  "updateScreenshot",
2591
2595
  "verbose",
2592
2596
  "version",
2593
2597
  "watch",
2598
+ // @deprecated - all JEST CLI options below are only used by integrated testing, which will be removed in Stencil v5.
2599
+ // See https://github.com/stenciljs/core/issues/6584.
2594
2600
  // JEST CLI OPTIONS
2595
2601
  "all",
2596
2602
  "automock",
@@ -2641,6 +2647,8 @@ var BOOLEAN_CLI_FLAGS = [
2641
2647
  ];
2642
2648
  var NUMBER_CLI_FLAGS = [
2643
2649
  "port",
2650
+ // @deprecated - all JEST CLI args below are only used by integrated testing, which will be removed in Stencil v5.
2651
+ // See https://github.com/stenciljs/core/issues/6584.
2644
2652
  // JEST CLI ARGS
2645
2653
  "maxConcurrency",
2646
2654
  "testTimeout"
@@ -2652,7 +2660,10 @@ var STRING_CLI_FLAGS = [
2652
2660
  "docsJson",
2653
2661
  "emulate",
2654
2662
  "root",
2663
+ // @deprecated - screenshot testing will be removed in Stencil v5. See https://github.com/stenciljs/core/issues/6584.
2655
2664
  "screenshotConnector",
2665
+ // @deprecated - all JEST CLI args below are only used by integrated testing, which will be removed in Stencil v5.
2666
+ // See https://github.com/stenciljs/core/issues/6584.
2656
2667
  // JEST CLI ARGS
2657
2668
  "cacheDirectory",
2658
2669
  "changedSince",
@@ -3059,8 +3070,35 @@ var unescape = (s, { windowsPathsNoEscape = false } = {}) => {
3059
3070
  };
3060
3071
 
3061
3072
  // node_modules/minimatch/dist/esm/ast.js
3073
+ var _a;
3062
3074
  var types = /* @__PURE__ */ new Set(["!", "?", "+", "*", "@"]);
3063
3075
  var isExtglobType = (c) => types.has(c);
3076
+ var isExtglobAST = (c) => isExtglobType(c.type);
3077
+ var adoptionMap = /* @__PURE__ */ new Map([
3078
+ ["!", ["@"]],
3079
+ ["?", ["?", "@"]],
3080
+ ["@", ["@"]],
3081
+ ["*", ["*", "+", "?", "@"]],
3082
+ ["+", ["+", "@"]]
3083
+ ]);
3084
+ var adoptionWithSpaceMap = /* @__PURE__ */ new Map([
3085
+ ["!", ["?"]],
3086
+ ["@", ["?"]],
3087
+ ["+", ["?", "*"]]
3088
+ ]);
3089
+ var adoptionAnyMap = /* @__PURE__ */ new Map([
3090
+ ["!", ["?", "@"]],
3091
+ ["?", ["?", "@"]],
3092
+ ["@", ["?", "@"]],
3093
+ ["*", ["*", "+", "?", "@"]],
3094
+ ["+", ["+", "@", "?", "*"]]
3095
+ ]);
3096
+ var usurpMap = /* @__PURE__ */ new Map([
3097
+ ["!", /* @__PURE__ */ new Map([["!", "@"]])],
3098
+ ["?", /* @__PURE__ */ new Map([["*", "*"], ["+", "*"]])],
3099
+ ["@", /* @__PURE__ */ new Map([["!", "!"], ["?", "?"], ["@", "@"], ["*", "*"], ["+", "+"]])],
3100
+ ["+", /* @__PURE__ */ new Map([["?", "*"], ["*", "*"]])]
3101
+ ]);
3064
3102
  var startNoTraversal = "(?!(?:^|/)\\.\\.?(?:$|/))";
3065
3103
  var startNoDot = "(?!\\.)";
3066
3104
  var addPatternStart = /* @__PURE__ */ new Set(["[", "."]);
@@ -3070,8 +3108,8 @@ var regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
3070
3108
  var qmark = "[^/]";
3071
3109
  var star = qmark + "*?";
3072
3110
  var starNoEmpty = qmark + "+?";
3073
- var _root, _hasMagic, _uflag, _parts, _parent, _parentIndex, _negs, _filledNegs, _options, _toString, _emptyExt, _AST_instances, fillNegs_fn, _AST_static, parseAST_fn, partsToRegExp_fn, parseGlob_fn;
3074
- var _AST = class _AST {
3111
+ var _root, _hasMagic, _uflag, _parts, _parent, _parentIndex, _negs, _filledNegs, _options, _toString, _emptyExt, _AST_instances, fillNegs_fn, _AST_static, parseAST_fn, canAdoptWithSpace_fn, canAdopt_fn, canAdoptType_fn, adoptWithSpace_fn, adopt_fn, canUsurpType_fn, canUsurp_fn, usurp_fn, flatten_fn, partsToRegExp_fn, parseGlob_fn;
3112
+ var AST = class {
3075
3113
  constructor(type, parent, options = {}) {
3076
3114
  __privateAdd(this, _AST_instances);
3077
3115
  __publicField(this, "type");
@@ -3124,44 +3162,44 @@ var _AST = class _AST {
3124
3162
  for (const p of parts) {
3125
3163
  if (p === "")
3126
3164
  continue;
3127
- if (typeof p !== "string" && !(p instanceof _AST && __privateGet(p, _parent) === this)) {
3165
+ if (typeof p !== "string" && !(p instanceof _a && __privateGet(p, _parent) === this)) {
3128
3166
  throw new Error("invalid part: " + p);
3129
3167
  }
3130
3168
  __privateGet(this, _parts).push(p);
3131
3169
  }
3132
3170
  }
3133
3171
  toJSON() {
3134
- var _a;
3172
+ var _a2;
3135
3173
  const ret = this.type === null ? __privateGet(this, _parts).slice().map((p) => typeof p === "string" ? p : p.toJSON()) : [this.type, ...__privateGet(this, _parts).map((p) => p.toJSON())];
3136
3174
  if (this.isStart() && !this.type)
3137
3175
  ret.unshift([]);
3138
- if (this.isEnd() && (this === __privateGet(this, _root) || __privateGet(__privateGet(this, _root), _filledNegs) && ((_a = __privateGet(this, _parent)) == null ? void 0 : _a.type) === "!")) {
3176
+ if (this.isEnd() && (this === __privateGet(this, _root) || __privateGet(__privateGet(this, _root), _filledNegs) && ((_a2 = __privateGet(this, _parent)) == null ? void 0 : _a2.type) === "!")) {
3139
3177
  ret.push({});
3140
3178
  }
3141
3179
  return ret;
3142
3180
  }
3143
3181
  isStart() {
3144
- var _a;
3182
+ var _a2;
3145
3183
  if (__privateGet(this, _root) === this)
3146
3184
  return true;
3147
- if (!((_a = __privateGet(this, _parent)) == null ? void 0 : _a.isStart()))
3185
+ if (!((_a2 = __privateGet(this, _parent)) == null ? void 0 : _a2.isStart()))
3148
3186
  return false;
3149
3187
  if (__privateGet(this, _parentIndex) === 0)
3150
3188
  return true;
3151
3189
  const p = __privateGet(this, _parent);
3152
3190
  for (let i = 0; i < __privateGet(this, _parentIndex); i++) {
3153
3191
  const pp = __privateGet(p, _parts)[i];
3154
- if (!(pp instanceof _AST && pp.type === "!")) {
3192
+ if (!(pp instanceof _a && pp.type === "!")) {
3155
3193
  return false;
3156
3194
  }
3157
3195
  }
3158
3196
  return true;
3159
3197
  }
3160
3198
  isEnd() {
3161
- var _a, _b, _c;
3199
+ var _a2, _b, _c;
3162
3200
  if (__privateGet(this, _root) === this)
3163
3201
  return true;
3164
- if (((_a = __privateGet(this, _parent)) == null ? void 0 : _a.type) === "!")
3202
+ if (((_a2 = __privateGet(this, _parent)) == null ? void 0 : _a2.type) === "!")
3165
3203
  return true;
3166
3204
  if (!((_b = __privateGet(this, _parent)) == null ? void 0 : _b.isEnd()))
3167
3205
  return false;
@@ -3177,16 +3215,16 @@ var _AST = class _AST {
3177
3215
  this.push(part.clone(this));
3178
3216
  }
3179
3217
  clone(parent) {
3180
- const c = new _AST(this.type, parent);
3218
+ const c = new _a(this.type, parent);
3181
3219
  for (const p of __privateGet(this, _parts)) {
3182
3220
  c.copyIn(p);
3183
3221
  }
3184
3222
  return c;
3185
3223
  }
3186
3224
  static fromGlob(pattern, options = {}) {
3187
- var _a;
3188
- const ast = new _AST(null, void 0, options);
3189
- __privateMethod(_a = _AST, _AST_static, parseAST_fn).call(_a, pattern, ast, 0, options);
3225
+ var _a2;
3226
+ const ast = new _a(null, void 0, options);
3227
+ __privateMethod(_a2 = _a, _AST_static, parseAST_fn).call(_a2, pattern, ast, 0, options, 0);
3190
3228
  return ast;
3191
3229
  }
3192
3230
  // returns the regular expression if there's magic, or the unescaped
@@ -3279,15 +3317,17 @@ var _AST = class _AST {
3279
3317
  // is ^(?!\.), we can just prepend (?!\.) to the pattern (either root
3280
3318
  // or start or whatever) and prepend ^ or / at the Regexp construction.
3281
3319
  toRegExpSource(allowDot) {
3282
- var _a;
3320
+ var _a2;
3283
3321
  const dot = allowDot != null ? allowDot : !!__privateGet(this, _options).dot;
3284
- if (__privateGet(this, _root) === this)
3322
+ if (__privateGet(this, _root) === this) {
3323
+ __privateMethod(this, _AST_instances, flatten_fn).call(this);
3285
3324
  __privateMethod(this, _AST_instances, fillNegs_fn).call(this);
3286
- if (!this.type) {
3325
+ }
3326
+ if (!isExtglobAST(this)) {
3287
3327
  const noEmpty = this.isStart() && this.isEnd();
3288
3328
  const src = __privateGet(this, _parts).map((p) => {
3289
- var _a2;
3290
- const [re, _, hasMagic, uflag] = typeof p === "string" ? __privateMethod(_a2 = _AST, _AST_static, parseGlob_fn).call(_a2, p, __privateGet(this, _hasMagic), noEmpty) : p.toRegExpSource(allowDot);
3329
+ var _a3;
3330
+ const [re, _, hasMagic, uflag] = typeof p === "string" ? __privateMethod(_a3 = _a, _AST_static, parseGlob_fn).call(_a3, p, __privateGet(this, _hasMagic), noEmpty) : p.toRegExpSource(allowDot);
3291
3331
  __privateSet(this, _hasMagic, __privateGet(this, _hasMagic) || hasMagic);
3292
3332
  __privateSet(this, _uflag, __privateGet(this, _uflag) || uflag);
3293
3333
  return re;
@@ -3310,7 +3350,7 @@ var _AST = class _AST {
3310
3350
  }
3311
3351
  }
3312
3352
  let end = "";
3313
- if (this.isEnd() && __privateGet(__privateGet(this, _root), _filledNegs) && ((_a = __privateGet(this, _parent)) == null ? void 0 : _a.type) === "!") {
3353
+ if (this.isEnd() && __privateGet(__privateGet(this, _root), _filledNegs) && ((_a2 = __privateGet(this, _parent)) == null ? void 0 : _a2.type) === "!") {
3314
3354
  end = "(?:$|\\/)";
3315
3355
  }
3316
3356
  const final2 = start2 + src + end;
@@ -3326,9 +3366,10 @@ var _AST = class _AST {
3326
3366
  let body = __privateMethod(this, _AST_instances, partsToRegExp_fn).call(this, dot);
3327
3367
  if (this.isStart() && this.isEnd() && !body && this.type !== "!") {
3328
3368
  const s = this.toString();
3329
- __privateSet(this, _parts, [s]);
3330
- this.type = null;
3331
- __privateSet(this, _hasMagic, void 0);
3369
+ const me = this;
3370
+ __privateSet(me, _parts, [s]);
3371
+ me.type = null;
3372
+ __privateSet(me, _hasMagic, void 0);
3332
3373
  return [s, unescape(this.toString()), false, false];
3333
3374
  }
3334
3375
  let bodyDotAllowed = !repeated || allowDot || dot || !startNoDot ? "" : __privateMethod(this, _AST_instances, partsToRegExp_fn).call(this, true);
@@ -3397,8 +3438,9 @@ fillNegs_fn = function() {
3397
3438
  return this;
3398
3439
  };
3399
3440
  _AST_static = new WeakSet();
3400
- parseAST_fn = function(str, ast, pos, opt) {
3401
- var _a, _b;
3441
+ parseAST_fn = function(str, ast, pos, opt, extDepth) {
3442
+ var _a2, _b, _c, _d, _e;
3443
+ const maxDepth = (_a2 = opt.maxExtglobRecursion) != null ? _a2 : 2;
3402
3444
  let escaping = false;
3403
3445
  let inBrace = false;
3404
3446
  let braceStart = -1;
@@ -3430,11 +3472,12 @@ parseAST_fn = function(str, ast, pos, opt) {
3430
3472
  acc2 += c;
3431
3473
  continue;
3432
3474
  }
3433
- if (!opt.noext && isExtglobType(c) && str.charAt(i2) === "(") {
3475
+ const doRecurse = !opt.noext && isExtglobType(c) && str.charAt(i2) === "(" && extDepth <= maxDepth;
3476
+ if (doRecurse) {
3434
3477
  ast.push(acc2);
3435
3478
  acc2 = "";
3436
- const ext2 = new _AST(c, ast);
3437
- i2 = __privateMethod(_a = _AST, _AST_static, parseAST_fn).call(_a, str, ext2, i2, opt);
3479
+ const ext2 = new _a(c, ast);
3480
+ i2 = __privateMethod(_b = _a, _AST_static, parseAST_fn).call(_b, str, ext2, i2, opt, extDepth + 1);
3438
3481
  ast.push(ext2);
3439
3482
  continue;
3440
3483
  }
@@ -3444,7 +3487,7 @@ parseAST_fn = function(str, ast, pos, opt) {
3444
3487
  return i2;
3445
3488
  }
3446
3489
  let i = pos + 1;
3447
- let part = new _AST(null, ast);
3490
+ let part = new _a(null, ast);
3448
3491
  const parts = [];
3449
3492
  let acc = "";
3450
3493
  while (i < str.length) {
@@ -3471,19 +3514,22 @@ parseAST_fn = function(str, ast, pos, opt) {
3471
3514
  acc += c;
3472
3515
  continue;
3473
3516
  }
3474
- if (isExtglobType(c) && str.charAt(i) === "(") {
3517
+ const doRecurse = isExtglobType(c) && str.charAt(i) === "(" && /* c8 ignore start - the maxDepth is sufficient here */
3518
+ (extDepth <= maxDepth || ast && __privateMethod(_c = ast, _AST_instances, canAdoptType_fn).call(_c, c));
3519
+ if (doRecurse) {
3520
+ const depthAdd = ast && __privateMethod(_d = ast, _AST_instances, canAdoptType_fn).call(_d, c) ? 0 : 1;
3475
3521
  part.push(acc);
3476
3522
  acc = "";
3477
- const ext2 = new _AST(c, part);
3523
+ const ext2 = new _a(c, part);
3478
3524
  part.push(ext2);
3479
- i = __privateMethod(_b = _AST, _AST_static, parseAST_fn).call(_b, str, ext2, i, opt);
3525
+ i = __privateMethod(_e = _a, _AST_static, parseAST_fn).call(_e, str, ext2, i, opt, extDepth + depthAdd);
3480
3526
  continue;
3481
3527
  }
3482
3528
  if (c === "|") {
3483
3529
  part.push(acc);
3484
3530
  acc = "";
3485
3531
  parts.push(part);
3486
- part = new _AST(null, ast);
3532
+ part = new _a(null, ast);
3487
3533
  continue;
3488
3534
  }
3489
3535
  if (c === ")") {
@@ -3502,6 +3548,100 @@ parseAST_fn = function(str, ast, pos, opt) {
3502
3548
  __privateSet(ast, _parts, [str.substring(pos - 1)]);
3503
3549
  return i;
3504
3550
  };
3551
+ canAdoptWithSpace_fn = function(child) {
3552
+ return __privateMethod(this, _AST_instances, canAdopt_fn).call(this, child, adoptionWithSpaceMap);
3553
+ };
3554
+ canAdopt_fn = function(child, map2 = adoptionMap) {
3555
+ if (!child || typeof child !== "object" || child.type !== null || __privateGet(child, _parts).length !== 1 || this.type === null) {
3556
+ return false;
3557
+ }
3558
+ const gc = __privateGet(child, _parts)[0];
3559
+ if (!gc || typeof gc !== "object" || gc.type === null) {
3560
+ return false;
3561
+ }
3562
+ return __privateMethod(this, _AST_instances, canAdoptType_fn).call(this, gc.type, map2);
3563
+ };
3564
+ canAdoptType_fn = function(c, map2 = adoptionAnyMap) {
3565
+ var _a2;
3566
+ return !!((_a2 = map2.get(this.type)) == null ? void 0 : _a2.includes(c));
3567
+ };
3568
+ adoptWithSpace_fn = function(child, index) {
3569
+ const gc = __privateGet(child, _parts)[0];
3570
+ const blank = new _a(null, gc, this.options);
3571
+ __privateGet(blank, _parts).push("");
3572
+ gc.push(blank);
3573
+ __privateMethod(this, _AST_instances, adopt_fn).call(this, child, index);
3574
+ };
3575
+ adopt_fn = function(child, index) {
3576
+ const gc = __privateGet(child, _parts)[0];
3577
+ __privateGet(this, _parts).splice(index, 1, ...__privateGet(gc, _parts));
3578
+ for (const p of __privateGet(gc, _parts)) {
3579
+ if (typeof p === "object")
3580
+ __privateSet(p, _parent, this);
3581
+ }
3582
+ __privateSet(this, _toString, void 0);
3583
+ };
3584
+ canUsurpType_fn = function(c) {
3585
+ const m = usurpMap.get(this.type);
3586
+ return !!(m == null ? void 0 : m.has(c));
3587
+ };
3588
+ canUsurp_fn = function(child) {
3589
+ if (!child || typeof child !== "object" || child.type !== null || __privateGet(child, _parts).length !== 1 || this.type === null || __privateGet(this, _parts).length !== 1) {
3590
+ return false;
3591
+ }
3592
+ const gc = __privateGet(child, _parts)[0];
3593
+ if (!gc || typeof gc !== "object" || gc.type === null) {
3594
+ return false;
3595
+ }
3596
+ return __privateMethod(this, _AST_instances, canUsurpType_fn).call(this, gc.type);
3597
+ };
3598
+ usurp_fn = function(child) {
3599
+ const m = usurpMap.get(this.type);
3600
+ const gc = __privateGet(child, _parts)[0];
3601
+ const nt = m == null ? void 0 : m.get(gc.type);
3602
+ if (!nt)
3603
+ return false;
3604
+ __privateSet(this, _parts, __privateGet(gc, _parts));
3605
+ for (const p of __privateGet(this, _parts)) {
3606
+ if (typeof p === "object")
3607
+ __privateSet(p, _parent, this);
3608
+ }
3609
+ this.type = nt;
3610
+ __privateSet(this, _toString, void 0);
3611
+ __privateSet(this, _emptyExt, false);
3612
+ };
3613
+ flatten_fn = function() {
3614
+ var _a2, _b;
3615
+ if (!isExtglobAST(this)) {
3616
+ for (const p of __privateGet(this, _parts)) {
3617
+ if (typeof p === "object")
3618
+ __privateMethod(_a2 = p, _AST_instances, flatten_fn).call(_a2);
3619
+ }
3620
+ } else {
3621
+ let iterations = 0;
3622
+ let done = false;
3623
+ do {
3624
+ done = true;
3625
+ for (let i = 0; i < __privateGet(this, _parts).length; i++) {
3626
+ const c = __privateGet(this, _parts)[i];
3627
+ if (typeof c === "object") {
3628
+ __privateMethod(_b = c, _AST_instances, flatten_fn).call(_b);
3629
+ if (__privateMethod(this, _AST_instances, canAdopt_fn).call(this, c)) {
3630
+ done = false;
3631
+ __privateMethod(this, _AST_instances, adopt_fn).call(this, c, i);
3632
+ } else if (__privateMethod(this, _AST_instances, canAdoptWithSpace_fn).call(this, c)) {
3633
+ done = false;
3634
+ __privateMethod(this, _AST_instances, adoptWithSpace_fn).call(this, c, i);
3635
+ } else if (__privateMethod(this, _AST_instances, canUsurp_fn).call(this, c)) {
3636
+ done = false;
3637
+ __privateMethod(this, _AST_instances, usurp_fn).call(this, c);
3638
+ }
3639
+ }
3640
+ }
3641
+ } while (!done && ++iterations < 10);
3642
+ }
3643
+ __privateSet(this, _toString, void 0);
3644
+ };
3505
3645
  partsToRegExp_fn = function(dot) {
3506
3646
  return __privateGet(this, _parts).map((p) => {
3507
3647
  if (typeof p === "string") {
@@ -3516,11 +3656,13 @@ parseGlob_fn = function(glob, hasMagic, noEmpty = false) {
3516
3656
  let escaping = false;
3517
3657
  let re = "";
3518
3658
  let uflag = false;
3659
+ let inStar = false;
3519
3660
  for (let i = 0; i < glob.length; i++) {
3520
3661
  const c = glob.charAt(i);
3521
3662
  if (escaping) {
3522
3663
  escaping = false;
3523
3664
  re += (reSpecials.has(c) ? "\\" : "") + c;
3665
+ inStar = false;
3524
3666
  continue;
3525
3667
  }
3526
3668
  if (c === "\\") {
@@ -3538,16 +3680,19 @@ parseGlob_fn = function(glob, hasMagic, noEmpty = false) {
3538
3680
  uflag = uflag || needUflag;
3539
3681
  i += consumed - 1;
3540
3682
  hasMagic = hasMagic || magic;
3683
+ inStar = false;
3541
3684
  continue;
3542
3685
  }
3543
3686
  }
3544
3687
  if (c === "*") {
3545
- if (noEmpty && glob === "*")
3546
- re += starNoEmpty;
3547
- else
3548
- re += star;
3688
+ if (inStar)
3689
+ continue;
3690
+ inStar = true;
3691
+ re += noEmpty && /^[*]+$/.test(glob) ? starNoEmpty : star;
3549
3692
  hasMagic = true;
3550
3693
  continue;
3694
+ } else {
3695
+ inStar = false;
3551
3696
  }
3552
3697
  if (c === "?") {
3553
3698
  re += qmark;
@@ -3558,8 +3703,8 @@ parseGlob_fn = function(glob, hasMagic, noEmpty = false) {
3558
3703
  }
3559
3704
  return [re, unescape(glob), !!hasMagic, uflag];
3560
3705
  };
3561
- __privateAdd(_AST, _AST_static);
3562
- var AST = _AST;
3706
+ __privateAdd(AST, _AST_static);
3707
+ _a = AST;
3563
3708
 
3564
3709
  // node_modules/minimatch/dist/esm/escape.js
3565
3710
  var escape = (s, { windowsPathsNoEscape = false } = {}) => {
@@ -3698,28 +3843,33 @@ var match = (list, pattern, options = {}) => {
3698
3843
  minimatch.match = match;
3699
3844
  var globMagic = /[?*]|[+@!]\(.*?\)|\[|\]/;
3700
3845
  var regExpEscape2 = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
3846
+ var _Minimatch_instances, matchGlobstar_fn, matchGlobStarBodySections_fn, matchOne_fn;
3701
3847
  var Minimatch = class {
3702
- options;
3703
- set;
3704
- pattern;
3705
- windowsPathsNoEscape;
3706
- nonegate;
3707
- negate;
3708
- comment;
3709
- empty;
3710
- preserveMultipleSlashes;
3711
- partial;
3712
- globSet;
3713
- globParts;
3714
- nocase;
3715
- isWindows;
3716
- platform;
3717
- windowsNoMagicRoot;
3718
- regexp;
3719
3848
  constructor(pattern, options = {}) {
3849
+ __privateAdd(this, _Minimatch_instances);
3850
+ __publicField(this, "options");
3851
+ __publicField(this, "set");
3852
+ __publicField(this, "pattern");
3853
+ __publicField(this, "windowsPathsNoEscape");
3854
+ __publicField(this, "nonegate");
3855
+ __publicField(this, "negate");
3856
+ __publicField(this, "comment");
3857
+ __publicField(this, "empty");
3858
+ __publicField(this, "preserveMultipleSlashes");
3859
+ __publicField(this, "partial");
3860
+ __publicField(this, "globSet");
3861
+ __publicField(this, "globParts");
3862
+ __publicField(this, "nocase");
3863
+ __publicField(this, "isWindows");
3864
+ __publicField(this, "platform");
3865
+ __publicField(this, "windowsNoMagicRoot");
3866
+ __publicField(this, "maxGlobstarRecursion");
3867
+ __publicField(this, "regexp");
3868
+ var _a2;
3720
3869
  assertValidPattern(pattern);
3721
3870
  options = options || {};
3722
3871
  this.options = options;
3872
+ this.maxGlobstarRecursion = (_a2 = options.maxGlobstarRecursion) != null ? _a2 : 200;
3723
3873
  this.pattern = pattern;
3724
3874
  this.platform = options.platform || defaultPlatform;
3725
3875
  this.isWindows = this.platform === "win32";
@@ -3987,10 +4137,11 @@ var Minimatch = class {
3987
4137
  for (let i = 0; i < globParts.length - 1; i++) {
3988
4138
  for (let j = i + 1; j < globParts.length; j++) {
3989
4139
  const matched = this.partsMatch(globParts[i], globParts[j], !this.preserveMultipleSlashes);
3990
- if (!matched)
3991
- continue;
3992
- globParts[i] = matched;
3993
- globParts[j] = [];
4140
+ if (matched) {
4141
+ globParts[i] = [];
4142
+ globParts[j] = matched;
4143
+ break;
4144
+ }
3994
4145
  }
3995
4146
  }
3996
4147
  return globParts.filter((gs) => gs.length);
@@ -4051,7 +4202,8 @@ var Minimatch = class {
4051
4202
  // out of pattern, then that's fine, as long as all
4052
4203
  // the parts match.
4053
4204
  matchOne(file, pattern, partial = false) {
4054
- const options = this.options;
4205
+ let fileStartIndex = 0;
4206
+ let patternStartIndex = 0;
4055
4207
  if (this.isWindows) {
4056
4208
  const fileDrive = typeof file[0] === "string" && /^[a-z]:$/i.test(file[0]);
4057
4209
  const fileUNC = !fileDrive && file[0] === "" && file[1] === "" && file[2] === "?" && /^[a-z]:$/i.test(file[3]);
@@ -4060,14 +4212,14 @@ var Minimatch = class {
4060
4212
  const fdi = fileUNC ? 3 : fileDrive ? 0 : void 0;
4061
4213
  const pdi = patternUNC ? 3 : patternDrive ? 0 : void 0;
4062
4214
  if (typeof fdi === "number" && typeof pdi === "number") {
4063
- const [fd, pd] = [file[fdi], pattern[pdi]];
4215
+ const [fd, pd] = [
4216
+ file[fdi],
4217
+ pattern[pdi]
4218
+ ];
4064
4219
  if (fd.toLowerCase() === pd.toLowerCase()) {
4065
4220
  pattern[pdi] = fd;
4066
- if (pdi > fdi) {
4067
- pattern = pattern.slice(pdi);
4068
- } else if (fdi > pdi) {
4069
- file = file.slice(fdi);
4070
- }
4221
+ patternStartIndex = pdi;
4222
+ fileStartIndex = fdi;
4071
4223
  }
4072
4224
  }
4073
4225
  }
@@ -4075,71 +4227,10 @@ var Minimatch = class {
4075
4227
  if (optimizationLevel >= 2) {
4076
4228
  file = this.levelTwoFileOptimize(file);
4077
4229
  }
4078
- this.debug("matchOne", this, { file, pattern });
4079
- this.debug("matchOne", file.length, pattern.length);
4080
- for (var fi = 0, pi = 0, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) {
4081
- this.debug("matchOne loop");
4082
- var p = pattern[pi];
4083
- var f = file[fi];
4084
- this.debug(pattern, p, f);
4085
- if (p === false) {
4086
- return false;
4087
- }
4088
- if (p === GLOBSTAR) {
4089
- this.debug("GLOBSTAR", [pattern, p, f]);
4090
- var fr = fi;
4091
- var pr = pi + 1;
4092
- if (pr === pl) {
4093
- this.debug("** at the end");
4094
- for (; fi < fl; fi++) {
4095
- if (file[fi] === "." || file[fi] === ".." || !options.dot && file[fi].charAt(0) === ".")
4096
- return false;
4097
- }
4098
- return true;
4099
- }
4100
- while (fr < fl) {
4101
- var swallowee = file[fr];
4102
- this.debug("\nglobstar while", file, fr, pattern, pr, swallowee);
4103
- if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) {
4104
- this.debug("globstar found match!", fr, fl, swallowee);
4105
- return true;
4106
- } else {
4107
- if (swallowee === "." || swallowee === ".." || !options.dot && swallowee.charAt(0) === ".") {
4108
- this.debug("dot detected!", file, fr, pattern, pr);
4109
- break;
4110
- }
4111
- this.debug("globstar swallow a segment, and continue");
4112
- fr++;
4113
- }
4114
- }
4115
- if (partial) {
4116
- this.debug("\n>>> no match, partial?", file, fr, pattern, pr);
4117
- if (fr === fl) {
4118
- return true;
4119
- }
4120
- }
4121
- return false;
4122
- }
4123
- let hit;
4124
- if (typeof p === "string") {
4125
- hit = f === p;
4126
- this.debug("string match", p, f, hit);
4127
- } else {
4128
- hit = p.test(f);
4129
- this.debug("pattern match", p, f, hit);
4130
- }
4131
- if (!hit)
4132
- return false;
4133
- }
4134
- if (fi === fl && pi === pl) {
4135
- return true;
4136
- } else if (fi === fl) {
4137
- return partial;
4138
- } else if (pi === pl) {
4139
- return fi === fl - 1 && file[fi] === "";
4140
- } else {
4141
- throw new Error("wtf?");
4230
+ if (pattern.includes(GLOBSTAR)) {
4231
+ return __privateMethod(this, _Minimatch_instances, matchGlobstar_fn).call(this, file, pattern, partial, fileStartIndex, patternStartIndex);
4142
4232
  }
4233
+ return __privateMethod(this, _Minimatch_instances, matchOne_fn).call(this, file, pattern, partial, fileStartIndex, patternStartIndex);
4143
4234
  }
4144
4235
  braceExpand() {
4145
4236
  return braceExpand(this.pattern, this.options);
@@ -4278,6 +4369,135 @@ var Minimatch = class {
4278
4369
  return minimatch.defaults(def).Minimatch;
4279
4370
  }
4280
4371
  };
4372
+ _Minimatch_instances = new WeakSet();
4373
+ matchGlobstar_fn = function(file, pattern, partial, fileIndex, patternIndex) {
4374
+ const firstgs = pattern.indexOf(GLOBSTAR, patternIndex);
4375
+ const lastgs = pattern.lastIndexOf(GLOBSTAR);
4376
+ const [head, body, tail] = partial ? [
4377
+ pattern.slice(patternIndex, firstgs),
4378
+ pattern.slice(firstgs + 1),
4379
+ []
4380
+ ] : [
4381
+ pattern.slice(patternIndex, firstgs),
4382
+ pattern.slice(firstgs + 1, lastgs),
4383
+ pattern.slice(lastgs + 1)
4384
+ ];
4385
+ if (head.length) {
4386
+ const fileHead = file.slice(fileIndex, fileIndex + head.length);
4387
+ if (!__privateMethod(this, _Minimatch_instances, matchOne_fn).call(this, fileHead, head, partial, 0, 0))
4388
+ return false;
4389
+ fileIndex += head.length;
4390
+ }
4391
+ let fileTailMatch = 0;
4392
+ if (tail.length) {
4393
+ if (tail.length + fileIndex > file.length)
4394
+ return false;
4395
+ let tailStart = file.length - tail.length;
4396
+ if (__privateMethod(this, _Minimatch_instances, matchOne_fn).call(this, file, tail, partial, tailStart, 0)) {
4397
+ fileTailMatch = tail.length;
4398
+ } else {
4399
+ if (file[file.length - 1] !== "" || fileIndex + tail.length === file.length) {
4400
+ return false;
4401
+ }
4402
+ tailStart--;
4403
+ if (!__privateMethod(this, _Minimatch_instances, matchOne_fn).call(this, file, tail, partial, tailStart, 0))
4404
+ return false;
4405
+ fileTailMatch = tail.length + 1;
4406
+ }
4407
+ }
4408
+ if (!body.length) {
4409
+ let sawSome = !!fileTailMatch;
4410
+ for (let i2 = fileIndex; i2 < file.length - fileTailMatch; i2++) {
4411
+ const f = String(file[i2]);
4412
+ sawSome = true;
4413
+ if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
4414
+ return false;
4415
+ }
4416
+ }
4417
+ return partial || sawSome;
4418
+ }
4419
+ const bodySegments = [[[], 0]];
4420
+ let currentBody = bodySegments[0];
4421
+ let nonGsParts = 0;
4422
+ const nonGsPartsSums = [0];
4423
+ for (const b of body) {
4424
+ if (b === GLOBSTAR) {
4425
+ nonGsPartsSums.push(nonGsParts);
4426
+ currentBody = [[], 0];
4427
+ bodySegments.push(currentBody);
4428
+ } else {
4429
+ currentBody[0].push(b);
4430
+ nonGsParts++;
4431
+ }
4432
+ }
4433
+ let i = bodySegments.length - 1;
4434
+ const fileLength = file.length - fileTailMatch;
4435
+ for (const b of bodySegments) {
4436
+ b[1] = fileLength - (nonGsPartsSums[i--] + b[0].length);
4437
+ }
4438
+ return !!__privateMethod(this, _Minimatch_instances, matchGlobStarBodySections_fn).call(this, file, bodySegments, fileIndex, 0, partial, 0, !!fileTailMatch);
4439
+ };
4440
+ matchGlobStarBodySections_fn = function(file, bodySegments, fileIndex, bodyIndex, partial, globStarDepth, sawTail) {
4441
+ const bs = bodySegments[bodyIndex];
4442
+ if (!bs) {
4443
+ for (let i = fileIndex; i < file.length; i++) {
4444
+ sawTail = true;
4445
+ const f = file[i];
4446
+ if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
4447
+ return false;
4448
+ }
4449
+ }
4450
+ return sawTail;
4451
+ }
4452
+ const [body, after] = bs;
4453
+ while (fileIndex <= after) {
4454
+ const m = __privateMethod(this, _Minimatch_instances, matchOne_fn).call(this, file.slice(0, fileIndex + body.length), body, partial, fileIndex, 0);
4455
+ if (m && globStarDepth < this.maxGlobstarRecursion) {
4456
+ const sub = __privateMethod(this, _Minimatch_instances, matchGlobStarBodySections_fn).call(this, file, bodySegments, fileIndex + body.length, bodyIndex + 1, partial, globStarDepth + 1, sawTail);
4457
+ if (sub !== false)
4458
+ return sub;
4459
+ }
4460
+ const f = file[fileIndex];
4461
+ if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
4462
+ return false;
4463
+ }
4464
+ fileIndex++;
4465
+ }
4466
+ return partial || null;
4467
+ };
4468
+ matchOne_fn = function(file, pattern, partial, fileIndex, patternIndex) {
4469
+ let fi;
4470
+ let pi;
4471
+ let pl;
4472
+ let fl;
4473
+ for (fi = fileIndex, pi = patternIndex, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) {
4474
+ this.debug("matchOne loop");
4475
+ let p = pattern[pi];
4476
+ let f = file[fi];
4477
+ this.debug(pattern, p, f);
4478
+ if (p === false || p === GLOBSTAR)
4479
+ return false;
4480
+ let hit;
4481
+ if (typeof p === "string") {
4482
+ hit = f === p;
4483
+ this.debug("string match", p, f, hit);
4484
+ } else {
4485
+ hit = p.test(f);
4486
+ this.debug("pattern match", p, f, hit);
4487
+ }
4488
+ if (!hit)
4489
+ return false;
4490
+ }
4491
+ if (fi === fl && pi === pl) {
4492
+ return true;
4493
+ } else if (fi === fl) {
4494
+ return partial;
4495
+ } else if (pi === pl) {
4496
+ return fi === fl - 1 && file[fi] === "";
4497
+ } else {
4498
+ throw new Error("wtf?");
4499
+ }
4500
+ };
4281
4501
  minimatch.AST = AST;
4282
4502
  minimatch.Minimatch = Minimatch;
4283
4503
  minimatch.escape = escape;
@@ -4914,9 +5134,9 @@ var taskWatch = async (coreCompiler, config) => {
4914
5134
  });
4915
5135
  if (devServer) {
4916
5136
  const rmDevServerLog = watcher.on("buildFinish", () => {
4917
- var _a;
5137
+ var _a2;
4918
5138
  rmDevServerLog();
4919
- const url = (_a = devServer == null ? void 0 : devServer.browserUrl) != null ? _a : "UNKNOWN URL";
5139
+ const url = (_a2 = devServer == null ? void 0 : devServer.browserUrl) != null ? _a2 : "UNKNOWN URL";
4920
5140
  config.logger.info(`${config.logger.cyan(url)}
4921
5141
  `);
4922
5142
  });
@@ -4950,8 +5170,8 @@ var isInteractive = (sys, flags, object) => {
4950
5170
  tty: sys.isTTY() ? true : false,
4951
5171
  ci: ["CI", "BUILD_ID", "BUILD_NUMBER", "BITBUCKET_COMMIT", "CODEBUILD_BUILD_ARN"].filter(
4952
5172
  (v) => {
4953
- var _a;
4954
- return !!((_a = sys.getEnvironmentVar) == null ? void 0 : _a.call(sys, v));
5173
+ var _a2;
5174
+ return !!((_a2 = sys.getEnvironmentVar) == null ? void 0 : _a2.call(sys, v));
4955
5175
  }
4956
5176
  ).length > 0 || !!flags.ci
4957
5177
  });
@@ -5057,22 +5277,22 @@ function hasAppTarget(config) {
5057
5277
  );
5058
5278
  }
5059
5279
  function isUsingYarn(sys) {
5060
- var _a, _b;
5061
- return ((_b = (_a = sys.getEnvironmentVar) == null ? void 0 : _a.call(sys, "npm_execpath")) == null ? void 0 : _b.includes("yarn")) || false;
5280
+ var _a2, _b;
5281
+ return ((_b = (_a2 = sys.getEnvironmentVar) == null ? void 0 : _a2.call(sys, "npm_execpath")) == null ? void 0 : _b.includes("yarn")) || false;
5062
5282
  }
5063
5283
  function getActiveTargets(config) {
5064
5284
  const result = config.outputTargets.map((t) => t.type);
5065
5285
  return Array.from(new Set(result));
5066
5286
  }
5067
5287
  var prepareData = async (coreCompiler, config, sys, duration_ms, component_count = void 0) => {
5068
- var _a, _b, _c;
5288
+ var _a2, _b, _c;
5069
5289
  const { typescript, rollup } = coreCompiler.versions || { typescript: "unknown", rollup: "unknown" };
5070
5290
  const { packages, packagesNoVersions } = await getInstalledPackages(sys, config);
5071
5291
  const targets = getActiveTargets(config);
5072
5292
  const yarn = isUsingYarn(sys);
5073
5293
  const stencil = coreCompiler.version || "unknown";
5074
5294
  const system = `${sys.name} ${sys.version}`;
5075
- const os_name = (_a = sys.details) == null ? void 0 : _a.platform;
5295
+ const os_name = (_a2 = sys.details) == null ? void 0 : _a2.platform;
5076
5296
  const os_version = (_b = sys.details) == null ? void 0 : _b.release;
5077
5297
  const cpu_model = (_c = sys.details) == null ? void 0 : _c.cpuModel;
5078
5298
  const build = coreCompiler.buildId || "unknown";
@@ -5189,21 +5409,21 @@ async function npmPackages(sys, ionicPackages) {
5189
5409
  const appRootDir = sys.getCurrentDirectory();
5190
5410
  const packageLockJson = await tryFn(readJson, sys, sys.resolvePath(appRootDir + "/package-lock.json"));
5191
5411
  return ionicPackages.map(([k, v]) => {
5192
- var _a, _b, _c, _d;
5193
- let version = (_d = (_c = (_a = packageLockJson == null ? void 0 : packageLockJson.dependencies[k]) == null ? void 0 : _a.version) != null ? _c : (_b = packageLockJson == null ? void 0 : packageLockJson.devDependencies[k]) == null ? void 0 : _b.version) != null ? _d : v;
5412
+ var _a2, _b, _c, _d;
5413
+ let version = (_d = (_c = (_a2 = packageLockJson == null ? void 0 : packageLockJson.dependencies[k]) == null ? void 0 : _a2.version) != null ? _c : (_b = packageLockJson == null ? void 0 : packageLockJson.devDependencies[k]) == null ? void 0 : _b.version) != null ? _d : v;
5194
5414
  version = version.includes("file:") ? sanitizeDeclaredVersion(v) : version;
5195
5415
  return `${k}@${version}`;
5196
5416
  });
5197
5417
  }
5198
5418
  async function yarnPackages(sys, ionicPackages) {
5199
- var _a;
5419
+ var _a2;
5200
5420
  const appRootDir = sys.getCurrentDirectory();
5201
5421
  const yarnLock = sys.readFileSync(sys.resolvePath(appRootDir + "/yarn.lock"));
5202
- const yarnLockYml = (_a = sys.parseYarnLockFile) == null ? void 0 : _a.call(sys, yarnLock);
5422
+ const yarnLockYml = (_a2 = sys.parseYarnLockFile) == null ? void 0 : _a2.call(sys, yarnLock);
5203
5423
  return ionicPackages.map(([k, v]) => {
5204
- var _a2;
5424
+ var _a3;
5205
5425
  const identifiedVersion = `${k}@${v}`;
5206
- let version = (_a2 = yarnLockYml == null ? void 0 : yarnLockYml.object[identifiedVersion]) == null ? void 0 : _a2.version;
5426
+ let version = (_a3 = yarnLockYml == null ? void 0 : yarnLockYml.object[identifiedVersion]) == null ? void 0 : _a3.version;
5207
5427
  version = version && version.includes("undefined") ? sanitizeDeclaredVersion(identifiedVersion) : version;
5208
5428
  return `${k}@${version}`;
5209
5429
  });
@@ -5518,8 +5738,8 @@ var toPascalCase = (str) => str.split("-").reduce((res, part) => res + part[0].t
5518
5738
 
5519
5739
  // src/cli/task-telemetry.ts
5520
5740
  var taskTelemetry = async (flags, sys, logger) => {
5521
- var _a;
5522
- const prompt = logger.dim(((_a = sys.details) == null ? void 0 : _a.platform) === "windows" ? ">" : "$");
5741
+ var _a2;
5742
+ const prompt = logger.dim(((_a2 = sys.details) == null ? void 0 : _a2.platform) === "windows" ? ">" : "$");
5523
5743
  const isEnabling = flags.args.includes("on");
5524
5744
  const isDisabling = flags.args.includes("off");
5525
5745
  const INFORMATION = `Opt in or out of telemetry. Information about the data we collect is available on our website: ${logger.bold(
@@ -5557,8 +5777,8 @@ var taskTelemetry = async (flags, sys, logger) => {
5557
5777
 
5558
5778
  // src/cli/task-help.ts
5559
5779
  var taskHelp = async (flags, logger, sys) => {
5560
- var _a;
5561
- const prompt = logger.dim(((_a = sys.details) == null ? void 0 : _a.platform) === "windows" ? ">" : "$");
5780
+ var _a2;
5781
+ const prompt = logger.dim(((_a2 = sys.details) == null ? void 0 : _a2.platform) === "windows" ? ">" : "$");
5562
5782
  console.log(`
5563
5783
  ${logger.bold("Build:")} ${logger.dim("Build components for development or production.")}
5564
5784
 
@@ -5657,7 +5877,12 @@ var taskServe = async (config) => {
5657
5877
 
5658
5878
  // src/cli/task-test.ts
5659
5879
  var taskTest = async (config) => {
5660
- var _a;
5880
+ var _a2;
5881
+ config.logger.warn(
5882
+ config.logger.yellow(
5883
+ `[DEPRECATION] Stencil's integrated testing (the 'test' task, --spec and --e2e flags) is deprecated and will be removed in Stencil v5. Migrate spec tests to @stencil/vitest (https://github.com/stenciljs/vitest) and e2e / browser tests to either @stencil/vitest (https://github.com/stenciljs/vitest) or @stencil/playwright (https://github.com/stenciljs/playwright). See https://github.com/stenciljs/core/issues/6584 for full details.`
5884
+ )
5885
+ );
5661
5886
  config.buildDocs = false;
5662
5887
  const testingRunOpts = {
5663
5888
  e2e: !!config.flags.e2e,
@@ -5677,7 +5902,7 @@ var taskTest = async (config) => {
5677
5902
  );
5678
5903
  }
5679
5904
  }
5680
- const diagnostics = await ((_a = config.sys.lazyRequire) == null ? void 0 : _a.ensure(config.rootDir, ensureModuleIds));
5905
+ const diagnostics = await ((_a2 = config.sys.lazyRequire) == null ? void 0 : _a2.ensure(config.rootDir, ensureModuleIds));
5681
5906
  if (diagnostics && diagnostics.length > 0) {
5682
5907
  config.logger.printDiagnostics(diagnostics);
5683
5908
  return config.sys.exit(1);
@@ -5763,8 +5988,8 @@ var run = async (init) => {
5763
5988
  }
5764
5989
  };
5765
5990
  var runTask = async (coreCompiler, config, task, sys) => {
5766
- var _a;
5767
- const flags = createConfigFlags((_a = config.flags) != null ? _a : { task });
5991
+ var _a2;
5992
+ const flags = createConfigFlags((_a2 = config.flags) != null ? _a2 : { task });
5768
5993
  config.flags = flags;
5769
5994
  if (!config.sys) {
5770
5995
  config.sys = sys;