@mastra/evals 0.1.0 → 0.1.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.
Files changed (58) hide show
  1. package/.turbo/turbo-build.log +17 -11
  2. package/.turbo/turbo-lint.log +4 -0
  3. package/CHANGELOG.md +28 -0
  4. package/dist/_tsup-dts-rollup.d.ts +45 -19
  5. package/dist/chunk-TXXJUIES.js +15 -0
  6. package/dist/{dist-56AYDN4X.js → dist-W3SXCXOT.js} +843 -471
  7. package/dist/index.js +2 -3
  8. package/dist/magic-string.es-5UDOWOAZ.js +20 -20
  9. package/dist/metrics/judge/index.d.ts +1 -0
  10. package/dist/metrics/judge/index.js +2 -0
  11. package/dist/metrics/llm/index.d.ts +1 -0
  12. package/dist/metrics/llm/index.js +243 -49
  13. package/dist/metrics/nlp/index.js +1 -1
  14. package/eslint.config.js +6 -0
  15. package/package.json +14 -5
  16. package/src/evaluation.ts +3 -2
  17. package/src/metrics/index.ts +1 -0
  18. package/src/metrics/judge/index.ts +1 -1
  19. package/src/metrics/llm/answer-relevancy/index.test.ts +2 -1
  20. package/src/metrics/llm/answer-relevancy/index.ts +3 -3
  21. package/src/metrics/llm/answer-relevancy/metricJudge.ts +9 -9
  22. package/src/metrics/llm/bias/index.test.ts +2 -1
  23. package/src/metrics/llm/bias/index.ts +5 -5
  24. package/src/metrics/llm/bias/metricJudge.ts +3 -3
  25. package/src/metrics/llm/context-position/index.test.ts +2 -1
  26. package/src/metrics/llm/context-position/index.ts +3 -3
  27. package/src/metrics/llm/context-position/metricJudge.ts +9 -9
  28. package/src/metrics/llm/context-precision/index.test.ts +1 -1
  29. package/src/metrics/llm/context-precision/index.ts +3 -3
  30. package/src/metrics/llm/context-precision/metricJudge.ts +9 -10
  31. package/src/metrics/llm/context-relevancy/index.test.ts +1 -1
  32. package/src/metrics/llm/context-relevancy/index.ts +2 -2
  33. package/src/metrics/llm/context-relevancy/metricJudge.ts +1 -1
  34. package/src/metrics/llm/contextual-recall/index.test.ts +1 -1
  35. package/src/metrics/llm/contextual-recall/index.ts +2 -2
  36. package/src/metrics/llm/contextual-recall/metricJudge.ts +1 -1
  37. package/src/metrics/llm/faithfulness/index.test.ts +1 -1
  38. package/src/metrics/llm/faithfulness/index.ts +2 -2
  39. package/src/metrics/llm/faithfulness/metricJudge.ts +1 -1
  40. package/src/metrics/llm/hallucination/index.test.ts +1 -1
  41. package/src/metrics/llm/hallucination/index.ts +2 -2
  42. package/src/metrics/llm/hallucination/metricJudge.ts +1 -1
  43. package/src/metrics/llm/index.ts +1 -0
  44. package/src/metrics/llm/prompt-alignment/index.test.ts +1 -1
  45. package/src/metrics/llm/prompt-alignment/index.ts +1 -1
  46. package/src/metrics/llm/prompt-alignment/metricJudge.ts +1 -1
  47. package/src/metrics/llm/summarization/index.test.ts +2 -1
  48. package/src/metrics/llm/summarization/index.ts +2 -2
  49. package/src/metrics/llm/summarization/metricJudge.ts +1 -1
  50. package/src/metrics/llm/toxicity/index.test.ts +1 -1
  51. package/src/metrics/llm/toxicity/index.ts +2 -2
  52. package/src/metrics/llm/toxicity/metricJudge.ts +3 -3
  53. package/src/metrics/llm/types.ts +1 -1
  54. package/src/metrics/nlp/completeness/index.ts +2 -1
  55. package/src/metrics/nlp/content-similarity/index.ts +2 -1
  56. package/src/metrics/nlp/keyword-coverage/index.ts +2 -1
  57. package/src/metrics/nlp/textual-difference/index.ts +2 -1
  58. package/src/metrics/nlp/tone/index.ts +2 -1
@@ -33,7 +33,7 @@ var require_utils = __commonJS({
33
33
  var require_dist = __commonJS({
34
34
  "../../node_modules/.pnpm/expect-type@1.1.0/node_modules/expect-type/dist/index.js"(exports) {
35
35
  var __createBinding = exports && exports.__createBinding || (Object.create ? function(o, m3, k2, k22) {
36
- if (k22 === undefined) k22 = k2;
36
+ if (k22 === void 0) k22 = k2;
37
37
  var desc = Object.getOwnPropertyDescriptor(m3, k2);
38
38
  if (!desc || ("get" in desc ? !m3.__esModule : desc.writable || desc.configurable)) {
39
39
  desc = { enumerable: true, get: function() {
@@ -42,14 +42,14 @@ var require_dist = __commonJS({
42
42
  }
43
43
  Object.defineProperty(o, k22, desc);
44
44
  } : function(o, m3, k2, k22) {
45
- if (k22 === undefined) k22 = k2;
45
+ if (k22 === void 0) k22 = k2;
46
46
  o[k22] = m3[k2];
47
47
  });
48
48
  var __exportStar = exports && exports.__exportStar || function(m3, exports2) {
49
49
  for (var p3 in m3) if (p3 !== "default" && !Object.prototype.hasOwnProperty.call(exports2, p3)) __createBinding(exports2, m3, p3);
50
50
  };
51
51
  Object.defineProperty(exports, "__esModule", { value: true });
52
- exports.expectTypeOf = undefined;
52
+ exports.expectTypeOf = void 0;
53
53
  __exportStar(require_branding(), exports);
54
54
  __exportStar(require_messages(), exports);
55
55
  __exportStar(require_overloads(), exports);
@@ -156,8 +156,8 @@ function a(n) {
156
156
  a.open = "";
157
157
  a.close = "";
158
158
  function C(n = false) {
159
- let e = typeof process != "undefined" ? process : undefined, i = (e == null ? undefined : e.env) || {}, g = (e == null ? undefined : e.argv) || [];
160
- return !("NO_COLOR" in i || g.includes("--no-color")) && ("FORCE_COLOR" in i || g.includes("--color") || (e == null ? undefined : e.platform) === "win32" || n && i.TERM !== "dumb" || "CI" in i) || typeof window != "undefined" && !!window.chrome;
159
+ let e = typeof process != "undefined" ? process : void 0, i = (e == null ? void 0 : e.env) || {}, g = (e == null ? void 0 : e.argv) || [];
160
+ return !("NO_COLOR" in i || g.includes("--no-color")) && ("FORCE_COLOR" in i || g.includes("--color") || (e == null ? void 0 : e.platform) === "win32" || n && i.TERM !== "dumb" || "CI" in i) || typeof window != "undefined" && !!window.chrome;
161
161
  }
162
162
  function p(n = false) {
163
163
  let e = C(n), i = (r2, t, c, o) => {
@@ -183,10 +183,10 @@ function p(n = false) {
183
183
  ) : a;
184
184
  return u3;
185
185
  }
186
- var r = process.env.FORCE_TTY !== undefined || isatty(1);
186
+ var r = process.env.FORCE_TTY !== void 0 || isatty(1);
187
187
  var u = p(r);
188
188
 
189
- // ../../node_modules/.pnpm/@vitest+pretty-format@3.0.4/node_modules/@vitest/pretty-format/dist/index.js
189
+ // ../../node_modules/.pnpm/@vitest+pretty-format@3.0.6/node_modules/@vitest/pretty-format/dist/index.js
190
190
  function _mergeNamespaces(n, m3) {
191
191
  m3.forEach(function(e) {
192
192
  e && typeof e !== "string" && !Array.isArray(e) && Object.keys(e).forEach(function(k2) {
@@ -475,7 +475,7 @@ function testNode(val) {
475
475
  }
476
476
  var test$3 = (val) => {
477
477
  var _a;
478
- return ((_a = val == null ? undefined : val.constructor) == null ? undefined : _a.name) && testNode(val);
478
+ return ((_a = val == null ? void 0 : val.constructor) == null ? void 0 : _a.name) && testNode(val);
479
479
  };
480
480
  function nodeIsText(node) {
481
481
  return node.nodeType === TEXT_NODE;
@@ -558,7 +558,7 @@ function getRecordEntries(val) {
558
558
  const key = val._keys[i++];
559
559
  return { done: false, value: [key, val.get(key)] };
560
560
  }
561
- return { done: true, value: undefined };
561
+ return { done: true, value: void 0 };
562
562
  }
563
563
  };
564
564
  }
@@ -750,7 +750,7 @@ function requireReactIs_production() {
750
750
  return typeOf2(object2) === REACT_SUSPENSE_LIST_TYPE;
751
751
  };
752
752
  reactIs_production.isValidElementType = function(type3) {
753
- return "string" === typeof type3 || "function" === typeof type3 || type3 === REACT_FRAGMENT_TYPE || type3 === REACT_PROFILER_TYPE || type3 === REACT_STRICT_MODE_TYPE || type3 === REACT_SUSPENSE_TYPE || type3 === REACT_SUSPENSE_LIST_TYPE || type3 === REACT_OFFSCREEN_TYPE || "object" === typeof type3 && null !== type3 && (type3.$$typeof === REACT_LAZY_TYPE || type3.$$typeof === REACT_MEMO_TYPE || type3.$$typeof === REACT_CONTEXT_TYPE || type3.$$typeof === REACT_CONSUMER_TYPE || type3.$$typeof === REACT_FORWARD_REF_TYPE || type3.$$typeof === REACT_CLIENT_REFERENCE || undefined !== type3.getModuleId) ? true : false;
753
+ return "string" === typeof type3 || "function" === typeof type3 || type3 === REACT_FRAGMENT_TYPE || type3 === REACT_PROFILER_TYPE || type3 === REACT_STRICT_MODE_TYPE || type3 === REACT_SUSPENSE_TYPE || type3 === REACT_SUSPENSE_LIST_TYPE || type3 === REACT_OFFSCREEN_TYPE || "object" === typeof type3 && null !== type3 && (type3.$$typeof === REACT_LAZY_TYPE || type3.$$typeof === REACT_MEMO_TYPE || type3.$$typeof === REACT_CONTEXT_TYPE || type3.$$typeof === REACT_CONSUMER_TYPE || type3.$$typeof === REACT_FORWARD_REF_TYPE || type3.$$typeof === REACT_CLIENT_REFERENCE || void 0 !== type3.getModuleId) ? true : false;
754
754
  };
755
755
  reactIs_production.typeOf = typeOf2;
756
756
  return reactIs_production;
@@ -842,7 +842,7 @@ function requireReactIs_development$1() {
842
842
  return typeOf2(object2) === REACT_SUSPENSE_LIST_TYPE;
843
843
  };
844
844
  reactIs_development$1.isValidElementType = function(type3) {
845
- return "string" === typeof type3 || "function" === typeof type3 || type3 === REACT_FRAGMENT_TYPE || type3 === REACT_PROFILER_TYPE || type3 === REACT_STRICT_MODE_TYPE || type3 === REACT_SUSPENSE_TYPE || type3 === REACT_SUSPENSE_LIST_TYPE || type3 === REACT_OFFSCREEN_TYPE || "object" === typeof type3 && null !== type3 && (type3.$$typeof === REACT_LAZY_TYPE || type3.$$typeof === REACT_MEMO_TYPE || type3.$$typeof === REACT_CONTEXT_TYPE || type3.$$typeof === REACT_CONSUMER_TYPE || type3.$$typeof === REACT_FORWARD_REF_TYPE || type3.$$typeof === REACT_CLIENT_REFERENCE || undefined !== type3.getModuleId) ? true : false;
845
+ return "string" === typeof type3 || "function" === typeof type3 || type3 === REACT_FRAGMENT_TYPE || type3 === REACT_PROFILER_TYPE || type3 === REACT_STRICT_MODE_TYPE || type3 === REACT_SUSPENSE_TYPE || type3 === REACT_SUSPENSE_LIST_TYPE || type3 === REACT_OFFSCREEN_TYPE || "object" === typeof type3 && null !== type3 && (type3.$$typeof === REACT_LAZY_TYPE || type3.$$typeof === REACT_MEMO_TYPE || type3.$$typeof === REACT_CONTEXT_TYPE || type3.$$typeof === REACT_CONSUMER_TYPE || type3.$$typeof === REACT_FORWARD_REF_TYPE || type3.$$typeof === REACT_CLIENT_REFERENCE || void 0 !== type3.getModuleId) ? true : false;
846
846
  };
847
847
  reactIs_development$1.typeOf = typeOf2;
848
848
  }();
@@ -958,7 +958,7 @@ function requireReactIs_production_min() {
958
958
  return v(a3) === n;
959
959
  };
960
960
  reactIs_production_min.isValidElementType = function(a3) {
961
- return "string" === typeof a3 || "function" === typeof a3 || a3 === d2 || a3 === f4 || a3 === e || a3 === m3 || a3 === n || a3 === t || "object" === typeof a3 && null !== a3 && (a3.$$typeof === q || a3.$$typeof === p3 || a3.$$typeof === g || a3.$$typeof === h3 || a3.$$typeof === l2 || a3.$$typeof === u3 || undefined !== a3.getModuleId) ? true : false;
961
+ return "string" === typeof a3 || "function" === typeof a3 || a3 === d2 || a3 === f4 || a3 === e || a3 === m3 || a3 === n || a3 === t || "object" === typeof a3 && null !== a3 && (a3.$$typeof === q || a3.$$typeof === p3 || a3.$$typeof === g || a3.$$typeof === h3 || a3.$$typeof === l2 || a3.$$typeof === u3 || void 0 !== a3.getModuleId) ? true : false;
962
962
  };
963
963
  reactIs_production_min.typeOf = v;
964
964
  return reactIs_production_min;
@@ -1005,7 +1005,7 @@ function requireReactIs_development() {
1005
1005
  // types supported by any Flight configuration anywhere since
1006
1006
  // we don't know which Flight build this will end up being used
1007
1007
  // with.
1008
- type3.$$typeof === REACT_MODULE_REFERENCE || type3.getModuleId !== undefined) {
1008
+ type3.$$typeof === REACT_MODULE_REFERENCE || type3.getModuleId !== void 0) {
1009
1009
  return true;
1010
1010
  }
1011
1011
  }
@@ -1042,7 +1042,7 @@ function requireReactIs_development() {
1042
1042
  return $$typeof;
1043
1043
  }
1044
1044
  }
1045
- return undefined;
1045
+ return void 0;
1046
1046
  }
1047
1047
  var ContextConsumer = REACT_CONTEXT_TYPE;
1048
1048
  var ContextProvider = REACT_PROVIDER_TYPE;
@@ -1228,7 +1228,7 @@ function getType(element) {
1228
1228
  }
1229
1229
  function getPropKeys$1(element) {
1230
1230
  const { props } = element;
1231
- return Object.keys(props).filter((key) => key !== "children" && props[key] !== undefined).sort();
1231
+ return Object.keys(props).filter((key) => key !== "children" && props[key] !== void 0).sort();
1232
1232
  }
1233
1233
  var serialize$1 = (element, config2, indentation, depth, refs, printer2) => ++depth > config2.maxDepth ? printElementAsLeaf(getType(element), config2) : printElement(
1234
1234
  getType(element),
@@ -1257,7 +1257,7 @@ var plugin$1 = { serialize: serialize$1, test: test$1 };
1257
1257
  var testSymbol = typeof Symbol === "function" && Symbol.for ? Symbol.for("react.test.json") : 245830487;
1258
1258
  function getPropKeys(object2) {
1259
1259
  const { props } = object2;
1260
- return props ? Object.keys(props).filter((key) => props[key] !== undefined).sort() : [];
1260
+ return props ? Object.keys(props).filter((key) => props[key] !== void 0).sort() : [];
1261
1261
  }
1262
1262
  var serialize = (object2, config2, indentation, depth, refs, printer2) => ++depth > config2.maxDepth ? printElementAsLeaf(object2.type, config2) : printElement(
1263
1263
  object2.type,
@@ -1327,7 +1327,7 @@ function printBasicValue(val, printFunctionName2, escapeRegex2, escapeString) {
1327
1327
  if (val === true || val === false) {
1328
1328
  return `${val}`;
1329
1329
  }
1330
- if (val === undefined) {
1330
+ if (val === void 0) {
1331
1331
  return "undefined";
1332
1332
  }
1333
1333
  if (val === null) {
@@ -1539,7 +1539,7 @@ var DEFAULT_THEME = {
1539
1539
  var DEFAULT_THEME_KEYS = Object.keys(DEFAULT_THEME);
1540
1540
  var DEFAULT_OPTIONS = {
1541
1541
  callToJSON: true,
1542
- compareKeys: undefined,
1542
+ compareKeys: void 0,
1543
1543
  escapeRegex: false,
1544
1544
  escapeString: true,
1545
1545
  highlight: false,
@@ -1558,7 +1558,7 @@ function validateOptions(options) {
1558
1558
  throw new Error(`pretty-format: Unknown option "${key}".`);
1559
1559
  }
1560
1560
  }
1561
- if (options.min && options.indent !== undefined && options.indent !== 0) {
1561
+ if (options.min && options.indent !== void 0 && options.indent !== 0) {
1562
1562
  throw new Error(
1563
1563
  'pretty-format: Options "min" and "indent" cannot be used together.'
1564
1564
  );
@@ -1585,30 +1585,30 @@ function getColorsEmpty() {
1585
1585
  }, /* @__PURE__ */ Object.create(null));
1586
1586
  }
1587
1587
  function getPrintFunctionName(options) {
1588
- return (options == null ? undefined : options.printFunctionName) ?? DEFAULT_OPTIONS.printFunctionName;
1588
+ return (options == null ? void 0 : options.printFunctionName) ?? DEFAULT_OPTIONS.printFunctionName;
1589
1589
  }
1590
1590
  function getEscapeRegex(options) {
1591
- return (options == null ? undefined : options.escapeRegex) ?? DEFAULT_OPTIONS.escapeRegex;
1591
+ return (options == null ? void 0 : options.escapeRegex) ?? DEFAULT_OPTIONS.escapeRegex;
1592
1592
  }
1593
1593
  function getEscapeString(options) {
1594
- return (options == null ? undefined : options.escapeString) ?? DEFAULT_OPTIONS.escapeString;
1594
+ return (options == null ? void 0 : options.escapeString) ?? DEFAULT_OPTIONS.escapeString;
1595
1595
  }
1596
1596
  function getConfig(options) {
1597
1597
  return {
1598
- callToJSON: (options == null ? undefined : options.callToJSON) ?? DEFAULT_OPTIONS.callToJSON,
1599
- colors: (options == null ? undefined : options.highlight) ? getColorsHighlight() : getColorsEmpty(),
1600
- compareKeys: typeof (options == null ? undefined : options.compareKeys) === "function" || (options == null ? undefined : options.compareKeys) === null ? options.compareKeys : DEFAULT_OPTIONS.compareKeys,
1598
+ callToJSON: (options == null ? void 0 : options.callToJSON) ?? DEFAULT_OPTIONS.callToJSON,
1599
+ colors: (options == null ? void 0 : options.highlight) ? getColorsHighlight() : getColorsEmpty(),
1600
+ compareKeys: typeof (options == null ? void 0 : options.compareKeys) === "function" || (options == null ? void 0 : options.compareKeys) === null ? options.compareKeys : DEFAULT_OPTIONS.compareKeys,
1601
1601
  escapeRegex: getEscapeRegex(options),
1602
1602
  escapeString: getEscapeString(options),
1603
- indent: (options == null ? undefined : options.min) ? "" : createIndent((options == null ? undefined : options.indent) ?? DEFAULT_OPTIONS.indent),
1604
- maxDepth: (options == null ? undefined : options.maxDepth) ?? DEFAULT_OPTIONS.maxDepth,
1605
- maxWidth: (options == null ? undefined : options.maxWidth) ?? DEFAULT_OPTIONS.maxWidth,
1606
- min: (options == null ? undefined : options.min) ?? DEFAULT_OPTIONS.min,
1607
- plugins: (options == null ? undefined : options.plugins) ?? DEFAULT_OPTIONS.plugins,
1608
- printBasicPrototype: (options == null ? undefined : options.printBasicPrototype) ?? true,
1603
+ indent: (options == null ? void 0 : options.min) ? "" : createIndent((options == null ? void 0 : options.indent) ?? DEFAULT_OPTIONS.indent),
1604
+ maxDepth: (options == null ? void 0 : options.maxDepth) ?? DEFAULT_OPTIONS.maxDepth,
1605
+ maxWidth: (options == null ? void 0 : options.maxWidth) ?? DEFAULT_OPTIONS.maxWidth,
1606
+ min: (options == null ? void 0 : options.min) ?? DEFAULT_OPTIONS.min,
1607
+ plugins: (options == null ? void 0 : options.plugins) ?? DEFAULT_OPTIONS.plugins,
1608
+ printBasicPrototype: (options == null ? void 0 : options.printBasicPrototype) ?? true,
1609
1609
  printFunctionName: getPrintFunctionName(options),
1610
- spacingInner: (options == null ? undefined : options.min) ? " " : "\n",
1611
- spacingOuter: (options == null ? undefined : options.min) ? "" : "\n"
1610
+ spacingInner: (options == null ? void 0 : options.min) ? " " : "\n",
1611
+ spacingOuter: (options == null ? void 0 : options.min) ? "" : "\n"
1612
1612
  };
1613
1613
  }
1614
1614
  function createIndent(indent) {
@@ -2210,7 +2210,7 @@ function inspect(value, opts = {}) {
2210
2210
  return options.stylize(String(value), type3);
2211
2211
  }
2212
2212
 
2213
- // ../../node_modules/.pnpm/@vitest+utils@3.0.4/node_modules/@vitest/utils/dist/chunk-_commonjsHelpers.js
2213
+ // ../../node_modules/.pnpm/@vitest+utils@3.0.6/node_modules/@vitest/utils/dist/chunk-_commonjsHelpers.js
2214
2214
  var {
2215
2215
  AsymmetricMatcher,
2216
2216
  DOMCollection,
@@ -2365,9 +2365,9 @@ function getDefaultExportFromCjs2(x2) {
2365
2365
  return x2 && x2.__esModule && Object.prototype.hasOwnProperty.call(x2, "default") ? x2["default"] : x2;
2366
2366
  }
2367
2367
 
2368
- // ../../node_modules/.pnpm/@vitest+utils@3.0.4/node_modules/@vitest/utils/dist/helpers.js
2368
+ // ../../node_modules/.pnpm/@vitest+utils@3.0.6/node_modules/@vitest/utils/dist/helpers.js
2369
2369
  function createSimpleStackTrace(options) {
2370
- const { message = "$$stack trace error", stackTraceLimit = 1 } = options;
2370
+ const { message = "$$stack trace error", stackTraceLimit = 1 } = options || {};
2371
2371
  const limit = Error.stackTraceLimit;
2372
2372
  const prepareStackTrace = Error.prepareStackTrace;
2373
2373
  Error.stackTraceLimit = stackTraceLimit;
@@ -2388,7 +2388,7 @@ function assertTypes(value, name, types) {
2388
2388
  }
2389
2389
  }
2390
2390
  function toArray(array2) {
2391
- if (array2 === null || array2 === undefined) {
2391
+ if (array2 === null || array2 === void 0) {
2392
2392
  array2 = [];
2393
2393
  }
2394
2394
  if (Array.isArray(array2)) {
@@ -2473,12 +2473,12 @@ function clone(val, seen, options = defaultCloneOptions) {
2473
2473
  }
2474
2474
  function noop() {
2475
2475
  }
2476
- function objectAttr(source, path, defaultValue = undefined) {
2476
+ function objectAttr(source, path, defaultValue = void 0) {
2477
2477
  const paths = path.replace(/\[(\d+)\]/g, ".$1").split(".");
2478
2478
  let result = source;
2479
2479
  for (const p3 of paths) {
2480
2480
  result = new Object(result)[p3];
2481
- if (result === undefined) {
2481
+ if (result === void 0) {
2482
2482
  return defaultValue;
2483
2483
  }
2484
2484
  }
@@ -2506,7 +2506,7 @@ function isNegativeNaN(val) {
2506
2506
  return isNegative;
2507
2507
  }
2508
2508
 
2509
- // ../../node_modules/.pnpm/@vitest+utils@3.0.4/node_modules/@vitest/utils/dist/index.js
2509
+ // ../../node_modules/.pnpm/@vitest+utils@3.0.6/node_modules/@vitest/utils/dist/index.js
2510
2510
  var jsTokens_1;
2511
2511
  var hasRequiredJsTokens;
2512
2512
  function requireJsTokens() {
@@ -2559,7 +2559,7 @@ function requireJsTokens() {
2559
2559
  yield {
2560
2560
  type: "RegularExpressionLiteral",
2561
2561
  value: match[0],
2562
- closed: match[1] !== undefined && match[1] !== "\\"
2562
+ closed: match[1] !== void 0 && match[1] !== "\\"
2563
2563
  };
2564
2564
  continue;
2565
2565
  }
@@ -2697,7 +2697,7 @@ function requireJsTokens() {
2697
2697
  yield {
2698
2698
  type: "StringLiteral",
2699
2699
  value: match[0],
2700
- closed: match[2] !== undefined
2700
+ closed: match[2] !== void 0
2701
2701
  };
2702
2702
  continue;
2703
2703
  }
@@ -2798,7 +2798,7 @@ function requireJsTokens() {
2798
2798
  yield {
2799
2799
  type: "JSXString",
2800
2800
  value: match[0],
2801
- closed: match[2] !== undefined
2801
+ closed: match[2] !== void 0
2802
2802
  };
2803
2803
  continue;
2804
2804
  }
@@ -2873,7 +2873,7 @@ function requireJsTokens() {
2873
2873
  yield {
2874
2874
  type: "MultiLineComment",
2875
2875
  value: match[0],
2876
- closed: match[1] !== undefined
2876
+ closed: match[1] !== void 0
2877
2877
  };
2878
2878
  continue;
2879
2879
  }
@@ -2896,7 +2896,7 @@ function requireJsTokens() {
2896
2896
  value: firstCodePoint
2897
2897
  };
2898
2898
  }
2899
- return undefined;
2899
+ return void 0;
2900
2900
  };
2901
2901
  return jsTokens_1;
2902
2902
  }
@@ -2977,7 +2977,7 @@ function getSafeTimers() {
2977
2977
  };
2978
2978
  }
2979
2979
 
2980
- // ../../node_modules/.pnpm/@vitest+utils@3.0.4/node_modules/@vitest/utils/dist/diff.js
2980
+ // ../../node_modules/.pnpm/@vitest+utils@3.0.6/node_modules/@vitest/utils/dist/diff.js
2981
2981
  var DIFF_DELETE = -1;
2982
2982
  var DIFF_INSERT = 1;
2983
2983
  var DIFF_EQUAL = 0;
@@ -4044,7 +4044,7 @@ function getDefaultOptions() {
4044
4044
  commonColor: u.dim,
4045
4045
  commonIndicator: " ",
4046
4046
  commonLineTrailingSpaceColor: noColor,
4047
- compareKeys: undefined,
4047
+ compareKeys: void 0,
4048
4048
  contextLines: DIFF_CONTEXT_DEFAULT,
4049
4049
  emptyFirstOrLastLinePlaceholder: "",
4050
4050
  expand: true,
@@ -4058,7 +4058,7 @@ function getDefaultOptions() {
4058
4058
  };
4059
4059
  }
4060
4060
  function getCompareKeys(compareKeys) {
4061
- return compareKeys && typeof compareKeys === "function" ? compareKeys : undefined;
4061
+ return compareKeys && typeof compareKeys === "function" ? compareKeys : void 0;
4062
4062
  }
4063
4063
  function getContextLines(contextLines) {
4064
4064
  return typeof contextLines === "number" && Number.isSafeInteger(contextLines) && contextLines >= 0 ? contextLines : DIFF_CONTEXT_DEFAULT;
@@ -4174,9 +4174,9 @@ function diffLinesUnified2(aLinesDisplay, bLinesDisplay, aLinesCompare, bLinesCo
4174
4174
  return printDiffLines(diffs, truncated, normalizeDiffOptions(options));
4175
4175
  }
4176
4176
  function diffLinesRaw(aLines, bLines, options) {
4177
- const truncate3 = (options == null ? undefined : options.truncateThreshold) ?? false;
4177
+ const truncate3 = (options == null ? void 0 : options.truncateThreshold) ?? false;
4178
4178
  const truncateThreshold = Math.max(
4179
- Math.floor((options == null ? undefined : options.truncateThreshold) ?? 0),
4179
+ Math.floor((options == null ? void 0 : options.truncateThreshold) ?? 0),
4180
4180
  0
4181
4181
  );
4182
4182
  const aLength = truncate3 ? Math.min(aLines.length, truncateThreshold) : aLines.length;
@@ -4207,7 +4207,7 @@ function diffLinesRaw(aLines, bLines, options) {
4207
4207
  return [diffs, truncated];
4208
4208
  }
4209
4209
  function getType3(value) {
4210
- if (value === undefined) {
4210
+ if (value === void 0) {
4211
4211
  return "undefined";
4212
4212
  } else if (value === null) {
4213
4213
  return "null";
@@ -4245,9 +4245,9 @@ function getNewLineSymbol(string2) {
4245
4245
  return string2.includes("\r\n") ? "\r\n" : "\n";
4246
4246
  }
4247
4247
  function diffStrings(a3, b, options) {
4248
- const truncate3 = (options == null ? undefined : options.truncateThreshold) ?? false;
4248
+ const truncate3 = (options == null ? void 0 : options.truncateThreshold) ?? false;
4249
4249
  const truncateThreshold = Math.max(
4250
- Math.floor((options == null ? undefined : options.truncateThreshold) ?? 0),
4250
+ Math.floor((options == null ? void 0 : options.truncateThreshold) ?? 0),
4251
4251
  0
4252
4252
  );
4253
4253
  let aLength = a3.length;
@@ -4505,10 +4505,10 @@ function diff(a3, b, options) {
4505
4505
  let omitDifference = false;
4506
4506
  if (aType === "object" && typeof a3.asymmetricMatch === "function") {
4507
4507
  if (a3.$$typeof !== Symbol.for("jest.asymmetricMatcher")) {
4508
- return undefined;
4508
+ return void 0;
4509
4509
  }
4510
4510
  if (typeof a3.getExpectedType !== "function") {
4511
- return undefined;
4511
+ return void 0;
4512
4512
  }
4513
4513
  expectedType = a3.getExpectedType();
4514
4514
  omitDifference = expectedType === "string";
@@ -4533,7 +4533,7 @@ ${bDisplay}`;
4533
4533
  ${bDiff}`;
4534
4534
  }
4535
4535
  if (omitDifference) {
4536
- return undefined;
4536
+ return void 0;
4537
4537
  }
4538
4538
  switch (aType) {
4539
4539
  case "string":
@@ -4570,7 +4570,7 @@ function compareObjects(a3, b, options) {
4570
4570
  hasThrown = true;
4571
4571
  }
4572
4572
  const noDiffMessage = getCommonMessage(NO_DIFF_MESSAGE, options);
4573
- if (difference === undefined || difference === noDiffMessage) {
4573
+ if (difference === void 0 || difference === noDiffMessage) {
4574
4574
  const formatOptions = getFormatOptions(FALLBACK_FORMAT_OPTIONS, options);
4575
4575
  difference = getObjectsDifference(a3, b, formatOptions, options);
4576
4576
  if (difference !== noDiffMessage && !hasThrown) {
@@ -4815,7 +4815,7 @@ function C2(e, t, n) {
4815
4815
  ), x.add(i), i;
4816
4816
  }
4817
4817
 
4818
- // ../../node_modules/.pnpm/@vitest+spy@3.0.4/node_modules/@vitest/spy/dist/index.js
4818
+ // ../../node_modules/.pnpm/@vitest+spy@3.0.6/node_modules/@vitest/spy/dist/index.js
4819
4819
  var vitestSpy = Symbol.for("vitest.spy");
4820
4820
  var mocks = /* @__PURE__ */ new Set();
4821
4821
  function isMockFunction(fn2) {
@@ -4909,7 +4909,7 @@ function enhanceSpy(spy) {
4909
4909
  };
4910
4910
  stub.mockReset = () => {
4911
4911
  stub.mockClear();
4912
- implementation = undefined;
4912
+ implementation = void 0;
4913
4913
  onceImplementations = [];
4914
4914
  return stub;
4915
4915
  };
@@ -4975,7 +4975,7 @@ function fn(implementation) {
4975
4975
  return enhancedSpy;
4976
4976
  }
4977
4977
 
4978
- // ../../node_modules/.pnpm/@vitest+utils@3.0.4/node_modules/@vitest/utils/dist/error.js
4978
+ // ../../node_modules/.pnpm/@vitest+utils@3.0.6/node_modules/@vitest/utils/dist/error.js
4979
4979
  var IS_RECORD_SYMBOL = "@@__IMMUTABLE_RECORD__@@";
4980
4980
  var IS_COLLECTION_SYMBOL = "@@__IMMUTABLE_ITERABLE__@@";
4981
4981
  function isImmutable(v) {
@@ -5068,7 +5068,7 @@ function processError(_err, diffOptions, seen = /* @__PURE__ */ new WeakSet()) {
5068
5068
  if (err.name) {
5069
5069
  err.nameStr = String(err.name);
5070
5070
  }
5071
- if (err.showDiff || err.showDiff === undefined && err.expected !== undefined && err.actual !== undefined) {
5071
+ if (err.showDiff || err.showDiff === void 0 && err.expected !== void 0 && err.actual !== void 0) {
5072
5072
  err.diff = printDiffOrStringify(err.actual, err.expected, {
5073
5073
  ...diffOptions,
5074
5074
  ...err.diffOptions
@@ -5098,14 +5098,14 @@ function processError(_err, diffOptions, seen = /* @__PURE__ */ new WeakSet()) {
5098
5098
  } catch (e) {
5099
5099
  return serializeValue(
5100
5100
  new Error(
5101
- `Failed to fully serialize error: ${e == null ? undefined : e.message}
5102
- Inner error message: ${err == null ? undefined : err.message}`
5101
+ `Failed to fully serialize error: ${e == null ? void 0 : e.message}
5102
+ Inner error message: ${err == null ? void 0 : err.message}`
5103
5103
  )
5104
5104
  );
5105
5105
  }
5106
5106
  }
5107
5107
 
5108
- // ../../node_modules/.pnpm/chai@5.1.2/node_modules/chai/chai.js
5108
+ // ../../node_modules/.pnpm/chai@5.2.0/node_modules/chai/chai.js
5109
5109
  var chai_exports = {};
5110
5110
  __export(chai_exports, {
5111
5111
  Assertion: () => Assertion,
@@ -5287,7 +5287,7 @@ var AssertionError = class _AssertionError extends Error {
5287
5287
  name: this.name,
5288
5288
  message: this.message,
5289
5289
  ok: false,
5290
- stack: stack !== false ? this.stack : undefined
5290
+ stack: stack !== false ? this.stack : void 0
5291
5291
  };
5292
5292
  }
5293
5293
  };
@@ -5311,7 +5311,7 @@ function expectTypes(obj, types) {
5311
5311
  })) {
5312
5312
  throw new AssertionError(
5313
5313
  flagMsg + "object tested must be " + str + ", but " + objType + " given",
5314
- undefined,
5314
+ void 0,
5315
5315
  ssfi
5316
5316
  );
5317
5317
  }
@@ -6435,21 +6435,29 @@ function Assertion(obj, msg, ssfi, lockSsfi) {
6435
6435
  __name(Assertion, "Assertion");
6436
6436
  Object.defineProperty(Assertion, "includeStack", {
6437
6437
  get: function() {
6438
- console.warn("Assertion.includeStack is deprecated, use chai.config.includeStack instead.");
6438
+ console.warn(
6439
+ "Assertion.includeStack is deprecated, use chai.config.includeStack instead."
6440
+ );
6439
6441
  return config.includeStack;
6440
6442
  },
6441
6443
  set: function(value) {
6442
- console.warn("Assertion.includeStack is deprecated, use chai.config.includeStack instead.");
6444
+ console.warn(
6445
+ "Assertion.includeStack is deprecated, use chai.config.includeStack instead."
6446
+ );
6443
6447
  config.includeStack = value;
6444
6448
  }
6445
6449
  });
6446
6450
  Object.defineProperty(Assertion, "showDiff", {
6447
6451
  get: function() {
6448
- console.warn("Assertion.showDiff is deprecated, use chai.config.showDiff instead.");
6452
+ console.warn(
6453
+ "Assertion.showDiff is deprecated, use chai.config.showDiff instead."
6454
+ );
6449
6455
  return config.showDiff;
6450
6456
  },
6451
6457
  set: function(value) {
6452
- console.warn("Assertion.showDiff is deprecated, use chai.config.showDiff instead.");
6458
+ console.warn(
6459
+ "Assertion.showDiff is deprecated, use chai.config.showDiff instead."
6460
+ );
6453
6461
  config.showDiff = value;
6454
6462
  }
6455
6463
  });
@@ -6475,7 +6483,7 @@ Assertion.prototype.assert = function(expr, msg, negateMsg, expected, _actual, s
6475
6483
  var ok = test2(this, arguments);
6476
6484
  if (false !== showDiff)
6477
6485
  showDiff = true;
6478
- if (undefined === expected && undefined === _actual)
6486
+ if (void 0 === expected && void 0 === _actual)
6479
6487
  showDiff = false;
6480
6488
  if (true !== config.showDiff)
6481
6489
  showDiff = false;
@@ -6498,43 +6506,35 @@ Assertion.prototype.assert = function(expr, msg, negateMsg, expected, _actual, s
6498
6506
  );
6499
6507
  }
6500
6508
  };
6501
- Object.defineProperty(
6502
- Assertion.prototype,
6503
- "_obj",
6504
- {
6505
- get: function() {
6506
- return flag(this, "object");
6507
- },
6508
- set: function(val) {
6509
- flag(this, "object", val);
6510
- }
6509
+ Object.defineProperty(Assertion.prototype, "_obj", {
6510
+ get: function() {
6511
+ return flag(this, "object");
6512
+ },
6513
+ set: function(val) {
6514
+ flag(this, "object", val);
6511
6515
  }
6512
- );
6516
+ });
6513
6517
  function isProxyEnabled() {
6514
6518
  return config.useProxy && typeof Proxy !== "undefined" && typeof Reflect !== "undefined";
6515
6519
  }
6516
6520
  __name(isProxyEnabled, "isProxyEnabled");
6517
6521
  function addProperty(ctx, name, getter) {
6518
- getter = getter === undefined ? function() {
6522
+ getter = getter === void 0 ? function() {
6519
6523
  } : getter;
6520
- Object.defineProperty(
6521
- ctx,
6522
- name,
6523
- {
6524
- get: /* @__PURE__ */ __name(function propertyGetter() {
6525
- if (!isProxyEnabled() && !flag(this, "lockSsfi")) {
6526
- flag(this, "ssfi", propertyGetter);
6527
- }
6528
- var result = getter.call(this);
6529
- if (result !== undefined)
6530
- return result;
6531
- var newAssertion = new Assertion();
6532
- transferFlags(this, newAssertion);
6533
- return newAssertion;
6534
- }, "propertyGetter"),
6535
- configurable: true
6536
- }
6537
- );
6524
+ Object.defineProperty(ctx, name, {
6525
+ get: /* @__PURE__ */ __name(function propertyGetter() {
6526
+ if (!isProxyEnabled() && !flag(this, "lockSsfi")) {
6527
+ flag(this, "ssfi", propertyGetter);
6528
+ }
6529
+ var result = getter.call(this);
6530
+ if (result !== void 0)
6531
+ return result;
6532
+ var newAssertion = new Assertion();
6533
+ transferFlags(this, newAssertion);
6534
+ return newAssertion;
6535
+ }, "propertyGetter"),
6536
+ configurable: true
6537
+ });
6538
6538
  }
6539
6539
  __name(addProperty, "addProperty");
6540
6540
  var fnLengthDesc = Object.getOwnPropertyDescriptor(function() {
@@ -6545,9 +6545,13 @@ function addLengthGuard(fn2, assertionName, isChainable) {
6545
6545
  Object.defineProperty(fn2, "length", {
6546
6546
  get: function() {
6547
6547
  if (isChainable) {
6548
- throw Error("Invalid Chai property: " + assertionName + '.length. Due to a compatibility issue, "length" cannot directly follow "' + assertionName + '". Use "' + assertionName + '.lengthOf" instead.');
6548
+ throw Error(
6549
+ "Invalid Chai property: " + assertionName + '.length. Due to a compatibility issue, "length" cannot directly follow "' + assertionName + '". Use "' + assertionName + '.lengthOf" instead.'
6550
+ );
6549
6551
  }
6550
- throw Error("Invalid Chai property: " + assertionName + '.length. See docs for proper usage of "' + assertionName + '".');
6552
+ throw Error(
6553
+ "Invalid Chai property: " + assertionName + '.length. See docs for proper usage of "' + assertionName + '".'
6554
+ );
6551
6555
  }
6552
6556
  });
6553
6557
  return fn2;
@@ -6577,17 +6581,19 @@ function proxify(obj, nonChainableMethodName) {
6577
6581
  get: /* @__PURE__ */ __name(function proxyGetter(target, property) {
6578
6582
  if (typeof property === "string" && config.proxyExcludedKeys.indexOf(property) === -1 && !Reflect.has(target, property)) {
6579
6583
  if (nonChainableMethodName) {
6580
- throw Error("Invalid Chai property: " + nonChainableMethodName + "." + property + '. See docs for proper usage of "' + nonChainableMethodName + '".');
6584
+ throw Error(
6585
+ "Invalid Chai property: " + nonChainableMethodName + "." + property + '. See docs for proper usage of "' + nonChainableMethodName + '".'
6586
+ );
6581
6587
  }
6582
6588
  var suggestion = null;
6583
6589
  var suggestionDistance = 4;
6584
6590
  getProperties(target).forEach(function(prop) {
6585
- if (!Object.prototype.hasOwnProperty(prop) && builtins.indexOf(prop) === -1) {
6586
- var dist = stringDistanceCapped(
6587
- property,
6588
- prop,
6589
- suggestionDistance
6590
- );
6591
+ if (
6592
+ // we actually mean to check `Object.prototype` here
6593
+ // eslint-disable-next-line no-prototype-builtins
6594
+ !Object.prototype.hasOwnProperty(prop) && builtins.indexOf(prop) === -1
6595
+ ) {
6596
+ var dist = stringDistanceCapped(property, prop, suggestionDistance);
6591
6597
  if (dist < suggestionDistance) {
6592
6598
  suggestion = prop;
6593
6599
  suggestionDistance = dist;
@@ -6595,7 +6601,9 @@ function proxify(obj, nonChainableMethodName) {
6595
6601
  }
6596
6602
  });
6597
6603
  if (suggestion !== null) {
6598
- throw Error("Invalid Chai property: " + property + '. Did you mean "' + suggestion + '"?');
6604
+ throw Error(
6605
+ "Invalid Chai property: " + property + '. Did you mean "' + suggestion + '"?'
6606
+ );
6599
6607
  } else {
6600
6608
  throw Error("Invalid Chai property: " + property);
6601
6609
  }
@@ -6613,16 +6621,16 @@ function stringDistanceCapped(strA, strB, cap) {
6613
6621
  return cap;
6614
6622
  }
6615
6623
  var memo = [];
6616
- for (var i = 0; i <= strA.length; i++) {
6624
+ for (let i = 0; i <= strA.length; i++) {
6617
6625
  memo[i] = Array(strB.length + 1).fill(0);
6618
6626
  memo[i][0] = i;
6619
6627
  }
6620
- for (var j = 0; j < strB.length; j++) {
6628
+ for (let j = 0; j < strB.length; j++) {
6621
6629
  memo[0][j] = j;
6622
6630
  }
6623
- for (var i = 1; i <= strA.length; i++) {
6631
+ for (let i = 1; i <= strA.length; i++) {
6624
6632
  var ch = strA.charCodeAt(i - 1);
6625
- for (var j = 1; j <= strB.length; j++) {
6633
+ for (let j = 1; j <= strB.length; j++) {
6626
6634
  if (Math.abs(i - j) >= cap) {
6627
6635
  memo[i][j] = cap;
6628
6636
  continue;
@@ -6643,7 +6651,7 @@ function addMethod(ctx, name, method) {
6643
6651
  flag(this, "ssfi", methodWrapper);
6644
6652
  }
6645
6653
  var result = method.apply(this, arguments);
6646
- if (result !== undefined)
6654
+ if (result !== void 0)
6647
6655
  return result;
6648
6656
  var newAssertion = new Assertion();
6649
6657
  transferFlags(this, newAssertion);
@@ -6658,28 +6666,24 @@ function overwriteProperty(ctx, name, getter) {
6658
6666
  }, "_super");
6659
6667
  if (_get && "function" === typeof _get.get)
6660
6668
  _super = _get.get;
6661
- Object.defineProperty(
6662
- ctx,
6663
- name,
6664
- {
6665
- get: /* @__PURE__ */ __name(function overwritingPropertyGetter() {
6666
- if (!isProxyEnabled() && !flag(this, "lockSsfi")) {
6667
- flag(this, "ssfi", overwritingPropertyGetter);
6668
- }
6669
- var origLockSsfi = flag(this, "lockSsfi");
6670
- flag(this, "lockSsfi", true);
6671
- var result = getter(_super).call(this);
6672
- flag(this, "lockSsfi", origLockSsfi);
6673
- if (result !== undefined) {
6674
- return result;
6675
- }
6676
- var newAssertion = new Assertion();
6677
- transferFlags(this, newAssertion);
6678
- return newAssertion;
6679
- }, "overwritingPropertyGetter"),
6680
- configurable: true
6681
- }
6682
- );
6669
+ Object.defineProperty(ctx, name, {
6670
+ get: /* @__PURE__ */ __name(function overwritingPropertyGetter() {
6671
+ if (!isProxyEnabled() && !flag(this, "lockSsfi")) {
6672
+ flag(this, "ssfi", overwritingPropertyGetter);
6673
+ }
6674
+ var origLockSsfi = flag(this, "lockSsfi");
6675
+ flag(this, "lockSsfi", true);
6676
+ var result = getter(_super).call(this);
6677
+ flag(this, "lockSsfi", origLockSsfi);
6678
+ if (result !== void 0) {
6679
+ return result;
6680
+ }
6681
+ var newAssertion = new Assertion();
6682
+ transferFlags(this, newAssertion);
6683
+ return newAssertion;
6684
+ }, "overwritingPropertyGetter"),
6685
+ configurable: true
6686
+ });
6683
6687
  }
6684
6688
  __name(overwriteProperty, "overwriteProperty");
6685
6689
  function overwriteMethod(ctx, name, method) {
@@ -6696,7 +6700,7 @@ function overwriteMethod(ctx, name, method) {
6696
6700
  flag(this, "lockSsfi", true);
6697
6701
  var result = method(_super).apply(this, arguments);
6698
6702
  flag(this, "lockSsfi", origLockSsfi);
6699
- if (result !== undefined) {
6703
+ if (result !== void 0) {
6700
6704
  return result;
6701
6705
  }
6702
6706
  var newAssertion = new Assertion();
@@ -6731,46 +6735,42 @@ function addChainableMethod(ctx, name, method, chainingBehavior) {
6731
6735
  ctx.__methods = {};
6732
6736
  }
6733
6737
  ctx.__methods[name] = chainableBehavior;
6734
- Object.defineProperty(
6735
- ctx,
6736
- name,
6737
- {
6738
- get: /* @__PURE__ */ __name(function chainableMethodGetter() {
6739
- chainableBehavior.chainingBehavior.call(this);
6740
- var chainableMethodWrapper = /* @__PURE__ */ __name(function() {
6741
- if (!flag(this, "lockSsfi")) {
6742
- flag(this, "ssfi", chainableMethodWrapper);
6743
- }
6744
- var result = chainableBehavior.method.apply(this, arguments);
6745
- if (result !== undefined) {
6746
- return result;
6747
- }
6748
- var newAssertion = new Assertion();
6749
- transferFlags(this, newAssertion);
6750
- return newAssertion;
6751
- }, "chainableMethodWrapper");
6752
- addLengthGuard(chainableMethodWrapper, name, true);
6753
- if (canSetPrototype) {
6754
- var prototype = Object.create(this);
6755
- prototype.call = call;
6756
- prototype.apply = apply;
6757
- Object.setPrototypeOf(chainableMethodWrapper, prototype);
6758
- } else {
6759
- var asserterNames = Object.getOwnPropertyNames(ctx);
6760
- asserterNames.forEach(function(asserterName) {
6761
- if (excludeNames.indexOf(asserterName) !== -1) {
6762
- return;
6763
- }
6764
- var pd = Object.getOwnPropertyDescriptor(ctx, asserterName);
6765
- Object.defineProperty(chainableMethodWrapper, asserterName, pd);
6766
- });
6738
+ Object.defineProperty(ctx, name, {
6739
+ get: /* @__PURE__ */ __name(function chainableMethodGetter() {
6740
+ chainableBehavior.chainingBehavior.call(this);
6741
+ var chainableMethodWrapper = /* @__PURE__ */ __name(function() {
6742
+ if (!flag(this, "lockSsfi")) {
6743
+ flag(this, "ssfi", chainableMethodWrapper);
6767
6744
  }
6768
- transferFlags(this, chainableMethodWrapper);
6769
- return proxify(chainableMethodWrapper);
6770
- }, "chainableMethodGetter"),
6771
- configurable: true
6772
- }
6773
- );
6745
+ var result = chainableBehavior.method.apply(this, arguments);
6746
+ if (result !== void 0) {
6747
+ return result;
6748
+ }
6749
+ var newAssertion = new Assertion();
6750
+ transferFlags(this, newAssertion);
6751
+ return newAssertion;
6752
+ }, "chainableMethodWrapper");
6753
+ addLengthGuard(chainableMethodWrapper, name, true);
6754
+ if (canSetPrototype) {
6755
+ var prototype = Object.create(this);
6756
+ prototype.call = call;
6757
+ prototype.apply = apply;
6758
+ Object.setPrototypeOf(chainableMethodWrapper, prototype);
6759
+ } else {
6760
+ var asserterNames = Object.getOwnPropertyNames(ctx);
6761
+ asserterNames.forEach(function(asserterName) {
6762
+ if (excludeNames.indexOf(asserterName) !== -1) {
6763
+ return;
6764
+ }
6765
+ var pd = Object.getOwnPropertyDescriptor(ctx, asserterName);
6766
+ Object.defineProperty(chainableMethodWrapper, asserterName, pd);
6767
+ });
6768
+ }
6769
+ transferFlags(this, chainableMethodWrapper);
6770
+ return proxify(chainableMethodWrapper);
6771
+ }, "chainableMethodGetter"),
6772
+ configurable: true
6773
+ });
6774
6774
  }
6775
6775
  __name(addChainableMethod, "addChainableMethod");
6776
6776
  function overwriteChainableMethod(ctx, name, method, chainingBehavior) {
@@ -6778,7 +6778,7 @@ function overwriteChainableMethod(ctx, name, method, chainingBehavior) {
6778
6778
  var _chainingBehavior = chainableBehavior.chainingBehavior;
6779
6779
  chainableBehavior.chainingBehavior = /* @__PURE__ */ __name(function overwritingChainableMethodGetter() {
6780
6780
  var result = chainingBehavior(_chainingBehavior).call(this);
6781
- if (result !== undefined) {
6781
+ if (result !== void 0) {
6782
6782
  return result;
6783
6783
  }
6784
6784
  var newAssertion = new Assertion();
@@ -6788,7 +6788,7 @@ function overwriteChainableMethod(ctx, name, method, chainingBehavior) {
6788
6788
  var _method = chainableBehavior.method;
6789
6789
  chainableBehavior.method = /* @__PURE__ */ __name(function overwritingChainableMethodWrapper() {
6790
6790
  var result = method(_method).apply(this, arguments);
6791
- if (result !== undefined) {
6791
+ if (result !== void 0) {
6792
6792
  return result;
6793
6793
  }
6794
6794
  var newAssertion = new Assertion();
@@ -6813,11 +6813,7 @@ function getOwnEnumerableProperties(obj) {
6813
6813
  return Object.keys(obj).concat(getOwnEnumerablePropertySymbols(obj));
6814
6814
  }
6815
6815
  __name(getOwnEnumerableProperties, "getOwnEnumerableProperties");
6816
- function _isNaN(value) {
6817
- return value !== value;
6818
- }
6819
- __name(_isNaN, "_isNaN");
6820
- var isNaN22 = Number.isNaN || _isNaN;
6816
+ var isNaN22 = Number.isNaN;
6821
6817
  function isObjectType(obj) {
6822
6818
  var objectType = type(obj);
6823
6819
  var objectTypes = ["Array", "Object", "Function"];
@@ -6836,10 +6832,10 @@ function getOperator(obj, args) {
6836
6832
  msg = msg();
6837
6833
  msg = msg || "";
6838
6834
  if (!msg) {
6839
- return undefined;
6835
+ return void 0;
6840
6836
  }
6841
6837
  if (/\shave\s/.test(msg)) {
6842
- return undefined;
6838
+ return void 0;
6843
6839
  }
6844
6840
  var isObject3 = isObjectType(expected);
6845
6841
  if (/\snot\s/.test(msg)) {
@@ -6906,10 +6902,15 @@ Assertion.addProperty("all", function() {
6906
6902
  flag2(this, "any", false);
6907
6903
  });
6908
6904
  var functionTypes = {
6909
- "function": ["function", "asyncfunction", "generatorfunction", "asyncgeneratorfunction"],
6910
- "asyncfunction": ["asyncfunction", "asyncgeneratorfunction"],
6911
- "generatorfunction": ["generatorfunction", "asyncgeneratorfunction"],
6912
- "asyncgeneratorfunction": ["asyncgeneratorfunction"]
6905
+ function: [
6906
+ "function",
6907
+ "asyncfunction",
6908
+ "generatorfunction",
6909
+ "asyncgeneratorfunction"
6910
+ ],
6911
+ asyncfunction: ["asyncfunction", "asyncgeneratorfunction"],
6912
+ generatorfunction: ["generatorfunction", "asyncgeneratorfunction"],
6913
+ asyncgeneratorfunction: ["asyncgeneratorfunction"]
6913
6914
  };
6914
6915
  function an(type3, msg) {
6915
6916
  if (msg)
@@ -6956,7 +6957,7 @@ function include(val, msg) {
6956
6957
  if (isDeep) {
6957
6958
  throw new AssertionError(
6958
6959
  flagMsg + "unable to use .deep.include with WeakSet",
6959
- undefined,
6960
+ void 0,
6960
6961
  ssfi
6961
6962
  );
6962
6963
  }
@@ -6989,7 +6990,7 @@ function include(val, msg) {
6989
6990
  if (val !== Object(val)) {
6990
6991
  throw new AssertionError(
6991
6992
  flagMsg + "the given combination of arguments (" + objType + " and " + type(val).toLowerCase() + ") is invalid for this assertion. You can use an array, a map, an object, a set, a string, or a weakset instead of a " + type(val).toLowerCase(),
6992
- undefined,
6993
+ void 0,
6993
6994
  ssfi
6994
6995
  );
6995
6996
  }
@@ -7060,13 +7061,14 @@ Assertion.addProperty("callable", function() {
7060
7061
  const msg = message ? `${message}: ` : "";
7061
7062
  const negate = flag2(this, "negate");
7062
7063
  const assertionMessage = negate ? `${msg}expected ${inspect22(val)} not to be a callable function` : `${msg}expected ${inspect22(val)} to be a callable function`;
7063
- const isCallable = ["Function", "AsyncFunction", "GeneratorFunction", "AsyncGeneratorFunction"].includes(type(val));
7064
+ const isCallable = [
7065
+ "Function",
7066
+ "AsyncFunction",
7067
+ "GeneratorFunction",
7068
+ "AsyncGeneratorFunction"
7069
+ ].includes(type(val));
7064
7070
  if (isCallable && negate || !isCallable && !negate) {
7065
- throw new AssertionError(
7066
- assertionMessage,
7067
- undefined,
7068
- ssfi
7069
- );
7071
+ throw new AssertionError(assertionMessage, void 0, ssfi);
7070
7072
  }
7071
7073
  });
7072
7074
  Assertion.addProperty("false", function() {
@@ -7086,7 +7088,7 @@ Assertion.addProperty("null", function() {
7086
7088
  });
7087
7089
  Assertion.addProperty("undefined", function() {
7088
7090
  this.assert(
7089
- undefined === flag2(this, "object"),
7091
+ void 0 === flag2(this, "object"),
7090
7092
  "expected #{this} to be undefined",
7091
7093
  "expected #{this} not to be undefined"
7092
7094
  );
@@ -7101,7 +7103,7 @@ Assertion.addProperty("NaN", function() {
7101
7103
  function assertExist() {
7102
7104
  var val = flag2(this, "object");
7103
7105
  this.assert(
7104
- val !== null && val !== undefined,
7106
+ val !== null && val !== void 0,
7105
7107
  "expected #{this} to exist",
7106
7108
  "expected #{this} to not exist"
7107
7109
  );
@@ -7125,17 +7127,17 @@ Assertion.addProperty("empty", function() {
7125
7127
  case "weakset":
7126
7128
  throw new AssertionError(
7127
7129
  flagMsg + ".empty was passed a weak collection",
7128
- undefined,
7130
+ void 0,
7129
7131
  ssfi
7130
7132
  );
7131
7133
  case "function":
7132
7134
  var msg = flagMsg + ".empty was passed a function " + getName(val);
7133
- throw new AssertionError(msg.trim(), undefined, ssfi);
7135
+ throw new AssertionError(msg.trim(), void 0, ssfi);
7134
7136
  default:
7135
7137
  if (val !== Object(val)) {
7136
7138
  throw new AssertionError(
7137
7139
  flagMsg + ".empty was passed non-string primitive " + inspect22(val),
7138
- undefined,
7140
+ void 0,
7139
7141
  ssfi
7140
7142
  );
7141
7143
  }
@@ -7205,13 +7207,25 @@ function assertAbove(n, msg) {
7205
7207
  if (doLength && objType !== "map" && objType !== "set") {
7206
7208
  new Assertion(obj, flagMsg, ssfi, true).to.have.property("length");
7207
7209
  }
7208
- if (!doLength && (objType === "date" && nType !== "date")) {
7209
- throw new AssertionError(msgPrefix + "the argument to above must be a date", undefined, ssfi);
7210
+ if (!doLength && objType === "date" && nType !== "date") {
7211
+ throw new AssertionError(
7212
+ msgPrefix + "the argument to above must be a date",
7213
+ void 0,
7214
+ ssfi
7215
+ );
7210
7216
  } else if (!isNumeric(n) && (doLength || isNumeric(obj))) {
7211
- throw new AssertionError(msgPrefix + "the argument to above must be a number", undefined, ssfi);
7212
- } else if (!doLength && (objType !== "date" && !isNumeric(obj))) {
7217
+ throw new AssertionError(
7218
+ msgPrefix + "the argument to above must be a number",
7219
+ void 0,
7220
+ ssfi
7221
+ );
7222
+ } else if (!doLength && objType !== "date" && !isNumeric(obj)) {
7213
7223
  var printObj = objType === "string" ? "'" + obj + "'" : obj;
7214
- throw new AssertionError(msgPrefix + "expected " + printObj + " to be a number or a date", undefined, ssfi);
7224
+ throw new AssertionError(
7225
+ msgPrefix + "expected " + printObj + " to be a number or a date",
7226
+ void 0,
7227
+ ssfi
7228
+ );
7215
7229
  }
7216
7230
  if (doLength) {
7217
7231
  var descriptor = "length", itemsCount;
@@ -7248,18 +7262,18 @@ function assertLeast(n, msg) {
7248
7262
  if (doLength && objType !== "map" && objType !== "set") {
7249
7263
  new Assertion(obj, flagMsg, ssfi, true).to.have.property("length");
7250
7264
  }
7251
- if (!doLength && (objType === "date" && nType !== "date")) {
7265
+ if (!doLength && objType === "date" && nType !== "date") {
7252
7266
  errorMessage = msgPrefix + "the argument to least must be a date";
7253
7267
  } else if (!isNumeric(n) && (doLength || isNumeric(obj))) {
7254
7268
  errorMessage = msgPrefix + "the argument to least must be a number";
7255
- } else if (!doLength && (objType !== "date" && !isNumeric(obj))) {
7269
+ } else if (!doLength && objType !== "date" && !isNumeric(obj)) {
7256
7270
  var printObj = objType === "string" ? "'" + obj + "'" : obj;
7257
7271
  errorMessage = msgPrefix + "expected " + printObj + " to be a number or a date";
7258
7272
  } else {
7259
7273
  shouldThrow = false;
7260
7274
  }
7261
7275
  if (shouldThrow) {
7262
- throw new AssertionError(errorMessage, undefined, ssfi);
7276
+ throw new AssertionError(errorMessage, void 0, ssfi);
7263
7277
  }
7264
7278
  if (doLength) {
7265
7279
  var descriptor = "length", itemsCount;
@@ -7296,18 +7310,18 @@ function assertBelow(n, msg) {
7296
7310
  if (doLength && objType !== "map" && objType !== "set") {
7297
7311
  new Assertion(obj, flagMsg, ssfi, true).to.have.property("length");
7298
7312
  }
7299
- if (!doLength && (objType === "date" && nType !== "date")) {
7313
+ if (!doLength && objType === "date" && nType !== "date") {
7300
7314
  errorMessage = msgPrefix + "the argument to below must be a date";
7301
7315
  } else if (!isNumeric(n) && (doLength || isNumeric(obj))) {
7302
7316
  errorMessage = msgPrefix + "the argument to below must be a number";
7303
- } else if (!doLength && (objType !== "date" && !isNumeric(obj))) {
7317
+ } else if (!doLength && objType !== "date" && !isNumeric(obj)) {
7304
7318
  var printObj = objType === "string" ? "'" + obj + "'" : obj;
7305
7319
  errorMessage = msgPrefix + "expected " + printObj + " to be a number or a date";
7306
7320
  } else {
7307
7321
  shouldThrow = false;
7308
7322
  }
7309
7323
  if (shouldThrow) {
7310
- throw new AssertionError(errorMessage, undefined, ssfi);
7324
+ throw new AssertionError(errorMessage, void 0, ssfi);
7311
7325
  }
7312
7326
  if (doLength) {
7313
7327
  var descriptor = "length", itemsCount;
@@ -7344,18 +7358,18 @@ function assertMost(n, msg) {
7344
7358
  if (doLength && objType !== "map" && objType !== "set") {
7345
7359
  new Assertion(obj, flagMsg, ssfi, true).to.have.property("length");
7346
7360
  }
7347
- if (!doLength && (objType === "date" && nType !== "date")) {
7361
+ if (!doLength && objType === "date" && nType !== "date") {
7348
7362
  errorMessage = msgPrefix + "the argument to most must be a date";
7349
7363
  } else if (!isNumeric(n) && (doLength || isNumeric(obj))) {
7350
7364
  errorMessage = msgPrefix + "the argument to most must be a number";
7351
- } else if (!doLength && (objType !== "date" && !isNumeric(obj))) {
7365
+ } else if (!doLength && objType !== "date" && !isNumeric(obj)) {
7352
7366
  var printObj = objType === "string" ? "'" + obj + "'" : obj;
7353
7367
  errorMessage = msgPrefix + "expected " + printObj + " to be a number or a date";
7354
7368
  } else {
7355
7369
  shouldThrow = false;
7356
7370
  }
7357
7371
  if (shouldThrow) {
7358
- throw new AssertionError(errorMessage, undefined, ssfi);
7372
+ throw new AssertionError(errorMessage, void 0, ssfi);
7359
7373
  }
7360
7374
  if (doLength) {
7361
7375
  var descriptor = "length", itemsCount;
@@ -7392,18 +7406,18 @@ Assertion.addMethod("within", function(start, finish, msg) {
7392
7406
  if (doLength && objType !== "map" && objType !== "set") {
7393
7407
  new Assertion(obj, flagMsg, ssfi, true).to.have.property("length");
7394
7408
  }
7395
- if (!doLength && (objType === "date" && (startType !== "date" || finishType !== "date"))) {
7409
+ if (!doLength && objType === "date" && (startType !== "date" || finishType !== "date")) {
7396
7410
  errorMessage = msgPrefix + "the arguments to within must be dates";
7397
7411
  } else if ((!isNumeric(start) || !isNumeric(finish)) && (doLength || isNumeric(obj))) {
7398
7412
  errorMessage = msgPrefix + "the arguments to within must be numbers";
7399
- } else if (!doLength && (objType !== "date" && !isNumeric(obj))) {
7413
+ } else if (!doLength && objType !== "date" && !isNumeric(obj)) {
7400
7414
  var printObj = objType === "string" ? "'" + obj + "'" : obj;
7401
7415
  errorMessage = msgPrefix + "expected " + printObj + " to be a number or a date";
7402
7416
  } else {
7403
7417
  shouldThrow = false;
7404
7418
  }
7405
7419
  if (shouldThrow) {
7406
- throw new AssertionError(errorMessage, undefined, ssfi);
7420
+ throw new AssertionError(errorMessage, void 0, ssfi);
7407
7421
  }
7408
7422
  if (doLength) {
7409
7423
  var descriptor = "length", itemsCount;
@@ -7439,7 +7453,7 @@ function assertInstanceOf(constructor, msg) {
7439
7453
  flagMsg = flagMsg ? flagMsg + ": " : "";
7440
7454
  throw new AssertionError(
7441
7455
  flagMsg + "The instanceof assertion needs a constructor but " + type(constructor) + " was given.",
7442
- undefined,
7456
+ void 0,
7443
7457
  ssfi
7444
7458
  );
7445
7459
  }
@@ -7467,7 +7481,7 @@ function assertProperty(name, val, msg) {
7467
7481
  if (nameType !== "string") {
7468
7482
  throw new AssertionError(
7469
7483
  flagMsg + "the argument to property must be a string when using nested syntax",
7470
- undefined,
7484
+ void 0,
7471
7485
  ssfi
7472
7486
  );
7473
7487
  }
@@ -7475,7 +7489,7 @@ function assertProperty(name, val, msg) {
7475
7489
  if (nameType !== "string" && nameType !== "number" && nameType !== "symbol") {
7476
7490
  throw new AssertionError(
7477
7491
  flagMsg + "the argument to property must be a string, number, or symbol",
7478
- undefined,
7492
+ void 0,
7479
7493
  ssfi
7480
7494
  );
7481
7495
  }
@@ -7483,14 +7497,14 @@ function assertProperty(name, val, msg) {
7483
7497
  if (isNested && isOwn) {
7484
7498
  throw new AssertionError(
7485
7499
  flagMsg + 'The "nested" and "own" flags cannot be combined.',
7486
- undefined,
7500
+ void 0,
7487
7501
  ssfi
7488
7502
  );
7489
7503
  }
7490
- if (obj === null || obj === undefined) {
7504
+ if (obj === null || obj === void 0) {
7491
7505
  throw new AssertionError(
7492
7506
  flagMsg + "Target cannot be null or undefined.",
7493
- undefined,
7507
+ void 0,
7494
7508
  ssfi
7495
7509
  );
7496
7510
  }
@@ -7530,7 +7544,7 @@ function assertProperty(name, val, msg) {
7530
7544
  }
7531
7545
  __name(assertProperty, "assertProperty");
7532
7546
  Assertion.addMethod("property", assertProperty);
7533
- function assertOwnProperty(name, value, msg) {
7547
+ function assertOwnProperty(_name, _value, _msg) {
7534
7548
  flag2(this, "own", true);
7535
7549
  assertProperty.apply(this, arguments);
7536
7550
  }
@@ -7639,12 +7653,12 @@ function assertKeys(keys2) {
7639
7653
  switch (keysType) {
7640
7654
  case "Array":
7641
7655
  if (arguments.length > 1) {
7642
- throw new AssertionError(mixedArgsMsg, undefined, ssfi);
7656
+ throw new AssertionError(mixedArgsMsg, void 0, ssfi);
7643
7657
  }
7644
7658
  break;
7645
7659
  case "Object":
7646
7660
  if (arguments.length > 1) {
7647
- throw new AssertionError(mixedArgsMsg, undefined, ssfi);
7661
+ throw new AssertionError(mixedArgsMsg, void 0, ssfi);
7648
7662
  }
7649
7663
  keys2 = Object.keys(keys2);
7650
7664
  break;
@@ -7656,7 +7670,7 @@ function assertKeys(keys2) {
7656
7670
  });
7657
7671
  }
7658
7672
  if (!keys2.length) {
7659
- throw new AssertionError(flagMsg + "keys required", undefined, ssfi);
7673
+ throw new AssertionError(flagMsg + "keys required", void 0, ssfi);
7660
7674
  }
7661
7675
  var len = keys2.length, any = flag2(this, "any"), all = flag2(this, "all"), expected = keys2, isEql = isDeep ? flag2(this, "eql") : (val1, val2) => val1 === val2;
7662
7676
  if (!any && !all) {
@@ -7724,7 +7738,7 @@ function assertThrows(errorLike, errMsgMatcher, msg) {
7724
7738
  errorWasThrown = true;
7725
7739
  caughtErr = err;
7726
7740
  }
7727
- var everyArgIsUndefined = errorLike === undefined && errMsgMatcher === undefined;
7741
+ var everyArgIsUndefined = errorLike === void 0 && errMsgMatcher === void 0;
7728
7742
  var everyArgIsDefined = Boolean(errorLike && errMsgMatcher);
7729
7743
  var errorLikeFail = false;
7730
7744
  var errMsgMatcherFail = false;
@@ -7756,7 +7770,10 @@ function assertThrows(errorLike, errMsgMatcher, msg) {
7756
7770
  }
7757
7771
  if (errorLike && caughtErr) {
7758
7772
  if (errorLike instanceof Error) {
7759
- var isCompatibleInstance = check_error_exports.compatibleInstance(caughtErr, errorLike);
7773
+ var isCompatibleInstance = check_error_exports.compatibleInstance(
7774
+ caughtErr,
7775
+ errorLike
7776
+ );
7760
7777
  if (isCompatibleInstance === negate) {
7761
7778
  if (everyArgIsDefined && negate) {
7762
7779
  errorLikeFail = true;
@@ -7771,7 +7788,10 @@ function assertThrows(errorLike, errMsgMatcher, msg) {
7771
7788
  }
7772
7789
  }
7773
7790
  }
7774
- var isCompatibleConstructor = check_error_exports.compatibleConstructor(caughtErr, errorLike);
7791
+ var isCompatibleConstructor = check_error_exports.compatibleConstructor(
7792
+ caughtErr,
7793
+ errorLike
7794
+ );
7775
7795
  if (isCompatibleConstructor === negate) {
7776
7796
  if (everyArgIsDefined && negate) {
7777
7797
  errorLikeFail = true;
@@ -7786,12 +7806,15 @@ function assertThrows(errorLike, errMsgMatcher, msg) {
7786
7806
  }
7787
7807
  }
7788
7808
  }
7789
- if (caughtErr && errMsgMatcher !== undefined && errMsgMatcher !== null) {
7809
+ if (caughtErr && errMsgMatcher !== void 0 && errMsgMatcher !== null) {
7790
7810
  var placeholder = "including";
7791
7811
  if (isRegExp2(errMsgMatcher)) {
7792
7812
  placeholder = "matching";
7793
7813
  }
7794
- var isCompatibleMessage = check_error_exports.compatibleMessage(caughtErr, errMsgMatcher);
7814
+ var isCompatibleMessage = check_error_exports.compatibleMessage(
7815
+ caughtErr,
7816
+ errMsgMatcher
7817
+ );
7795
7818
  if (isCompatibleMessage === negate) {
7796
7819
  if (everyArgIsDefined && negate) {
7797
7820
  errMsgMatcherFail = true;
@@ -7859,16 +7882,25 @@ function closeTo(expected, delta, msg) {
7859
7882
  var obj = flag2(this, "object"), flagMsg = flag2(this, "message"), ssfi = flag2(this, "ssfi");
7860
7883
  new Assertion(obj, flagMsg, ssfi, true).is.numeric;
7861
7884
  let message = "A `delta` value is required for `closeTo`";
7862
- if (delta == undefined)
7863
- throw new AssertionError(flagMsg ? `${flagMsg}: ${message}` : message, undefined, ssfi);
7885
+ if (delta == void 0)
7886
+ throw new AssertionError(
7887
+ flagMsg ? `${flagMsg}: ${message}` : message,
7888
+ void 0,
7889
+ ssfi
7890
+ );
7864
7891
  new Assertion(delta, flagMsg, ssfi, true).is.numeric;
7865
7892
  message = "A `expected` value is required for `closeTo`";
7866
- if (expected == undefined)
7867
- throw new AssertionError(flagMsg ? `${flagMsg}: ${message}` : message, undefined, ssfi);
7893
+ if (expected == void 0)
7894
+ throw new AssertionError(
7895
+ flagMsg ? `${flagMsg}: ${message}` : message,
7896
+ void 0,
7897
+ ssfi
7898
+ );
7868
7899
  new Assertion(expected, flagMsg, ssfi, true).is.numeric;
7869
7900
  const abs = /* @__PURE__ */ __name((x2) => x2 < 0n ? -x2 : x2, "abs");
7901
+ const strip = /* @__PURE__ */ __name((number) => parseFloat(parseFloat(number).toPrecision(12)), "strip");
7870
7902
  this.assert(
7871
- abs(obj - expected) <= delta,
7903
+ strip(abs(obj - expected)) <= delta,
7872
7904
  "expected #{this} to be close to " + expected + " +/- " + delta,
7873
7905
  "expected #{this} not to be close to " + expected + " +/- " + delta
7874
7906
  );
@@ -7923,7 +7955,7 @@ Assertion.addMethod("members", function(subset, msg) {
7923
7955
  failMsg = "expected #{this} to have the same " + subject + " as #{exp}";
7924
7956
  failNegateMsg = "expected #{this} to not have the same " + subject + " as #{exp}";
7925
7957
  }
7926
- var cmp = flag2(this, "deep") ? flag2(this, "eql") : undefined;
7958
+ var cmp = flag2(this, "deep") ? flag2(this, "eql") : void 0;
7927
7959
  this.assert(
7928
7960
  isSubsetOf(subset, obj, cmp, contains, ordered),
7929
7961
  failMsg,
@@ -7938,7 +7970,7 @@ Assertion.addProperty("iterable", function(msg) {
7938
7970
  flag2(this, "message", msg);
7939
7971
  var obj = flag2(this, "object");
7940
7972
  this.assert(
7941
- obj != undefined && obj[Symbol.iterator],
7973
+ obj != void 0 && obj[Symbol.iterator],
7942
7974
  "expected #{this} to be an iterable",
7943
7975
  "expected #{this} to not be an iterable",
7944
7976
  obj
@@ -7997,8 +8029,8 @@ function assertChanges(subject, prop, msg) {
7997
8029
  initial = subject[prop];
7998
8030
  }
7999
8031
  fn2();
8000
- var final = prop === undefined || prop === null ? subject() : subject[prop];
8001
- var msgObj = prop === undefined || prop === null ? initial : "." + prop;
8032
+ var final = prop === void 0 || prop === null ? subject() : subject[prop];
8033
+ var msgObj = prop === void 0 || prop === null ? initial : "." + prop;
8002
8034
  flag2(this, "deltaMsgObj", msgObj);
8003
8035
  flag2(this, "initialDeltaValue", initial);
8004
8036
  flag2(this, "finalDeltaValue", final);
@@ -8028,8 +8060,8 @@ function assertIncreases(subject, prop, msg) {
8028
8060
  }
8029
8061
  new Assertion(initial, flagMsg, ssfi, true).is.a("number");
8030
8062
  fn2();
8031
- var final = prop === undefined || prop === null ? subject() : subject[prop];
8032
- var msgObj = prop === undefined || prop === null ? initial : "." + prop;
8063
+ var final = prop === void 0 || prop === null ? subject() : subject[prop];
8064
+ var msgObj = prop === void 0 || prop === null ? initial : "." + prop;
8033
8065
  flag2(this, "deltaMsgObj", msgObj);
8034
8066
  flag2(this, "initialDeltaValue", initial);
8035
8067
  flag2(this, "finalDeltaValue", final);
@@ -8059,8 +8091,8 @@ function assertDecreases(subject, prop, msg) {
8059
8091
  }
8060
8092
  new Assertion(initial, flagMsg, ssfi, true).is.a("number");
8061
8093
  fn2();
8062
- var final = prop === undefined || prop === null ? subject() : subject[prop];
8063
- var msgObj = prop === undefined || prop === null ? initial : "." + prop;
8094
+ var final = prop === void 0 || prop === null ? subject() : subject[prop];
8095
+ var msgObj = prop === void 0 || prop === null ? initial : "." + prop;
8064
8096
  flag2(this, "deltaMsgObj", msgObj);
8065
8097
  flag2(this, "initialDeltaValue", initial);
8066
8098
  flag2(this, "finalDeltaValue", final);
@@ -8124,7 +8156,7 @@ Assertion.addProperty("frozen", function() {
8124
8156
  "expected #{this} to not be frozen"
8125
8157
  );
8126
8158
  });
8127
- Assertion.addProperty("finite", function(msg) {
8159
+ Assertion.addProperty("finite", function(_msg) {
8128
8160
  var obj = flag2(this, "object");
8129
8161
  this.assert(
8130
8162
  typeof obj === "number" && isFinite(obj),
@@ -8132,6 +8164,61 @@ Assertion.addProperty("finite", function(msg) {
8132
8164
  "expected #{this} to not be a finite number"
8133
8165
  );
8134
8166
  });
8167
+ function compareSubset(expected, actual) {
8168
+ if (expected === actual) {
8169
+ return true;
8170
+ }
8171
+ if (typeof actual !== typeof expected) {
8172
+ return false;
8173
+ }
8174
+ if (typeof expected !== "object" || expected === null) {
8175
+ return expected === actual;
8176
+ }
8177
+ if (!actual) {
8178
+ return false;
8179
+ }
8180
+ if (Array.isArray(expected)) {
8181
+ if (!Array.isArray(actual)) {
8182
+ return false;
8183
+ }
8184
+ return expected.every(function(exp) {
8185
+ return actual.some(function(act) {
8186
+ return compareSubset(exp, act);
8187
+ });
8188
+ });
8189
+ }
8190
+ if (expected instanceof Date) {
8191
+ if (actual instanceof Date) {
8192
+ return expected.getTime() === actual.getTime();
8193
+ } else {
8194
+ return false;
8195
+ }
8196
+ }
8197
+ return Object.keys(expected).every(function(key) {
8198
+ var expectedValue = expected[key];
8199
+ var actualValue = actual[key];
8200
+ if (typeof expectedValue === "object" && expectedValue !== null && actualValue !== null) {
8201
+ return compareSubset(expectedValue, actualValue);
8202
+ }
8203
+ if (typeof expectedValue === "function") {
8204
+ return expectedValue(actualValue);
8205
+ }
8206
+ return actualValue === expectedValue;
8207
+ });
8208
+ }
8209
+ __name(compareSubset, "compareSubset");
8210
+ Assertion.addMethod("containSubset", function(expected) {
8211
+ const actual = flag(this, "object");
8212
+ const showDiff = config.showDiff;
8213
+ this.assert(
8214
+ compareSubset(expected, actual),
8215
+ "expected #{act} to contain subset #{exp}",
8216
+ "expected #{act} to not contain subset #{exp}",
8217
+ expected,
8218
+ actual,
8219
+ showDiff
8220
+ );
8221
+ });
8135
8222
  function expect(val, message) {
8136
8223
  return new Assertion(val, message);
8137
8224
  }
@@ -8139,14 +8226,18 @@ __name(expect, "expect");
8139
8226
  expect.fail = function(actual, expected, message, operator) {
8140
8227
  if (arguments.length < 2) {
8141
8228
  message = actual;
8142
- actual = undefined;
8229
+ actual = void 0;
8143
8230
  }
8144
8231
  message = message || "expect.fail()";
8145
- throw new AssertionError(message, {
8146
- actual,
8147
- expected,
8148
- operator
8149
- }, expect.fail);
8232
+ throw new AssertionError(
8233
+ message,
8234
+ {
8235
+ actual,
8236
+ expected,
8237
+ operator
8238
+ },
8239
+ expect.fail
8240
+ );
8150
8241
  };
8151
8242
  var should_exports = {};
8152
8243
  __export2(should_exports, {
@@ -8179,14 +8270,18 @@ function loadShould() {
8179
8270
  should2.fail = function(actual, expected, message, operator) {
8180
8271
  if (arguments.length < 2) {
8181
8272
  message = actual;
8182
- actual = undefined;
8273
+ actual = void 0;
8183
8274
  }
8184
8275
  message = message || "should.fail()";
8185
- throw new AssertionError(message, {
8186
- actual,
8187
- expected,
8188
- operator
8189
- }, should2.fail);
8276
+ throw new AssertionError(
8277
+ message,
8278
+ {
8279
+ actual,
8280
+ expected,
8281
+ operator
8282
+ },
8283
+ should2.fail
8284
+ );
8190
8285
  };
8191
8286
  should2.equal = function(actual, expected, message) {
8192
8287
  new Assertion(actual, message).to.equal(expected);
@@ -8216,24 +8311,24 @@ var should = loadShould;
8216
8311
  var Should = loadShould;
8217
8312
  function assert(express, errmsg) {
8218
8313
  var test22 = new Assertion(null, null, assert, true);
8219
- test22.assert(
8220
- express,
8221
- errmsg,
8222
- "[ negation message unavailable ]"
8223
- );
8314
+ test22.assert(express, errmsg, "[ negation message unavailable ]");
8224
8315
  }
8225
8316
  __name(assert, "assert");
8226
8317
  assert.fail = function(actual, expected, message, operator) {
8227
8318
  if (arguments.length < 2) {
8228
8319
  message = actual;
8229
- actual = undefined;
8320
+ actual = void 0;
8230
8321
  }
8231
8322
  message = message || "assert.fail()";
8232
- throw new AssertionError(message, {
8233
- actual,
8234
- expected,
8235
- operator
8236
- }, assert.fail);
8323
+ throw new AssertionError(
8324
+ message,
8325
+ {
8326
+ actual,
8327
+ expected,
8328
+ operator
8329
+ },
8330
+ assert.fail
8331
+ );
8237
8332
  };
8238
8333
  assert.isOk = function(val, msg) {
8239
8334
  new Assertion(val, msg, assert.isOk, true).is.ok;
@@ -8318,10 +8413,10 @@ assert.notExists = function(val, msg) {
8318
8413
  new Assertion(val, msg, assert.notExists, true).to.not.exist;
8319
8414
  };
8320
8415
  assert.isUndefined = function(val, msg) {
8321
- new Assertion(val, msg, assert.isUndefined, true).to.equal(undefined);
8416
+ new Assertion(val, msg, assert.isUndefined, true).to.equal(void 0);
8322
8417
  };
8323
8418
  assert.isDefined = function(val, msg) {
8324
- new Assertion(val, msg, assert.isDefined, true).to.not.equal(undefined);
8419
+ new Assertion(val, msg, assert.isDefined, true).to.not.equal(void 0);
8325
8420
  };
8326
8421
  assert.isCallable = function(value, message) {
8327
8422
  new Assertion(value, message, assert.isCallable, true).is.callable;
@@ -8378,7 +8473,9 @@ assert.instanceOf = function(val, type3, msg) {
8378
8473
  new Assertion(val, msg, assert.instanceOf, true).to.be.instanceOf(type3);
8379
8474
  };
8380
8475
  assert.notInstanceOf = function(val, type3, msg) {
8381
- new Assertion(val, msg, assert.notInstanceOf, true).to.not.be.instanceOf(type3);
8476
+ new Assertion(val, msg, assert.notInstanceOf, true).to.not.be.instanceOf(
8477
+ type3
8478
+ );
8382
8479
  };
8383
8480
  assert.include = function(exp, inc, msg) {
8384
8481
  new Assertion(exp, msg, assert.include, true).include(inc);
@@ -8396,13 +8493,22 @@ assert.nestedInclude = function(exp, inc, msg) {
8396
8493
  new Assertion(exp, msg, assert.nestedInclude, true).nested.include(inc);
8397
8494
  };
8398
8495
  assert.notNestedInclude = function(exp, inc, msg) {
8399
- new Assertion(exp, msg, assert.notNestedInclude, true).not.nested.include(inc);
8496
+ new Assertion(exp, msg, assert.notNestedInclude, true).not.nested.include(
8497
+ inc
8498
+ );
8400
8499
  };
8401
8500
  assert.deepNestedInclude = function(exp, inc, msg) {
8402
- new Assertion(exp, msg, assert.deepNestedInclude, true).deep.nested.include(inc);
8501
+ new Assertion(exp, msg, assert.deepNestedInclude, true).deep.nested.include(
8502
+ inc
8503
+ );
8403
8504
  };
8404
8505
  assert.notDeepNestedInclude = function(exp, inc, msg) {
8405
- new Assertion(exp, msg, assert.notDeepNestedInclude, true).not.deep.nested.include(inc);
8506
+ new Assertion(
8507
+ exp,
8508
+ msg,
8509
+ assert.notDeepNestedInclude,
8510
+ true
8511
+ ).not.deep.nested.include(inc);
8406
8512
  };
8407
8513
  assert.ownInclude = function(exp, inc, msg) {
8408
8514
  new Assertion(exp, msg, assert.ownInclude, true).own.include(inc);
@@ -8414,7 +8520,9 @@ assert.deepOwnInclude = function(exp, inc, msg) {
8414
8520
  new Assertion(exp, msg, assert.deepOwnInclude, true).deep.own.include(inc);
8415
8521
  };
8416
8522
  assert.notDeepOwnInclude = function(exp, inc, msg) {
8417
- new Assertion(exp, msg, assert.notDeepOwnInclude, true).not.deep.own.include(inc);
8523
+ new Assertion(exp, msg, assert.notDeepOwnInclude, true).not.deep.own.include(
8524
+ inc
8525
+ );
8418
8526
  };
8419
8527
  assert.match = function(exp, re, msg) {
8420
8528
  new Assertion(exp, msg, assert.match, true).to.match(re);
@@ -8432,49 +8540,107 @@ assert.propertyVal = function(obj, prop, val, msg) {
8432
8540
  new Assertion(obj, msg, assert.propertyVal, true).to.have.property(prop, val);
8433
8541
  };
8434
8542
  assert.notPropertyVal = function(obj, prop, val, msg) {
8435
- new Assertion(obj, msg, assert.notPropertyVal, true).to.not.have.property(prop, val);
8543
+ new Assertion(obj, msg, assert.notPropertyVal, true).to.not.have.property(
8544
+ prop,
8545
+ val
8546
+ );
8436
8547
  };
8437
8548
  assert.deepPropertyVal = function(obj, prop, val, msg) {
8438
- new Assertion(obj, msg, assert.deepPropertyVal, true).to.have.deep.property(prop, val);
8549
+ new Assertion(obj, msg, assert.deepPropertyVal, true).to.have.deep.property(
8550
+ prop,
8551
+ val
8552
+ );
8439
8553
  };
8440
8554
  assert.notDeepPropertyVal = function(obj, prop, val, msg) {
8441
- new Assertion(obj, msg, assert.notDeepPropertyVal, true).to.not.have.deep.property(prop, val);
8555
+ new Assertion(
8556
+ obj,
8557
+ msg,
8558
+ assert.notDeepPropertyVal,
8559
+ true
8560
+ ).to.not.have.deep.property(prop, val);
8442
8561
  };
8443
8562
  assert.ownProperty = function(obj, prop, msg) {
8444
8563
  new Assertion(obj, msg, assert.ownProperty, true).to.have.own.property(prop);
8445
8564
  };
8446
8565
  assert.notOwnProperty = function(obj, prop, msg) {
8447
- new Assertion(obj, msg, assert.notOwnProperty, true).to.not.have.own.property(prop);
8566
+ new Assertion(obj, msg, assert.notOwnProperty, true).to.not.have.own.property(
8567
+ prop
8568
+ );
8448
8569
  };
8449
8570
  assert.ownPropertyVal = function(obj, prop, value, msg) {
8450
- new Assertion(obj, msg, assert.ownPropertyVal, true).to.have.own.property(prop, value);
8571
+ new Assertion(obj, msg, assert.ownPropertyVal, true).to.have.own.property(
8572
+ prop,
8573
+ value
8574
+ );
8451
8575
  };
8452
8576
  assert.notOwnPropertyVal = function(obj, prop, value, msg) {
8453
- new Assertion(obj, msg, assert.notOwnPropertyVal, true).to.not.have.own.property(prop, value);
8577
+ new Assertion(
8578
+ obj,
8579
+ msg,
8580
+ assert.notOwnPropertyVal,
8581
+ true
8582
+ ).to.not.have.own.property(prop, value);
8454
8583
  };
8455
8584
  assert.deepOwnPropertyVal = function(obj, prop, value, msg) {
8456
- new Assertion(obj, msg, assert.deepOwnPropertyVal, true).to.have.deep.own.property(prop, value);
8585
+ new Assertion(
8586
+ obj,
8587
+ msg,
8588
+ assert.deepOwnPropertyVal,
8589
+ true
8590
+ ).to.have.deep.own.property(prop, value);
8457
8591
  };
8458
8592
  assert.notDeepOwnPropertyVal = function(obj, prop, value, msg) {
8459
- new Assertion(obj, msg, assert.notDeepOwnPropertyVal, true).to.not.have.deep.own.property(prop, value);
8593
+ new Assertion(
8594
+ obj,
8595
+ msg,
8596
+ assert.notDeepOwnPropertyVal,
8597
+ true
8598
+ ).to.not.have.deep.own.property(prop, value);
8460
8599
  };
8461
8600
  assert.nestedProperty = function(obj, prop, msg) {
8462
- new Assertion(obj, msg, assert.nestedProperty, true).to.have.nested.property(prop);
8601
+ new Assertion(obj, msg, assert.nestedProperty, true).to.have.nested.property(
8602
+ prop
8603
+ );
8463
8604
  };
8464
8605
  assert.notNestedProperty = function(obj, prop, msg) {
8465
- new Assertion(obj, msg, assert.notNestedProperty, true).to.not.have.nested.property(prop);
8606
+ new Assertion(
8607
+ obj,
8608
+ msg,
8609
+ assert.notNestedProperty,
8610
+ true
8611
+ ).to.not.have.nested.property(prop);
8466
8612
  };
8467
8613
  assert.nestedPropertyVal = function(obj, prop, val, msg) {
8468
- new Assertion(obj, msg, assert.nestedPropertyVal, true).to.have.nested.property(prop, val);
8614
+ new Assertion(
8615
+ obj,
8616
+ msg,
8617
+ assert.nestedPropertyVal,
8618
+ true
8619
+ ).to.have.nested.property(prop, val);
8469
8620
  };
8470
8621
  assert.notNestedPropertyVal = function(obj, prop, val, msg) {
8471
- new Assertion(obj, msg, assert.notNestedPropertyVal, true).to.not.have.nested.property(prop, val);
8622
+ new Assertion(
8623
+ obj,
8624
+ msg,
8625
+ assert.notNestedPropertyVal,
8626
+ true
8627
+ ).to.not.have.nested.property(prop, val);
8472
8628
  };
8473
8629
  assert.deepNestedPropertyVal = function(obj, prop, val, msg) {
8474
- new Assertion(obj, msg, assert.deepNestedPropertyVal, true).to.have.deep.nested.property(prop, val);
8630
+ new Assertion(
8631
+ obj,
8632
+ msg,
8633
+ assert.deepNestedPropertyVal,
8634
+ true
8635
+ ).to.have.deep.nested.property(prop, val);
8475
8636
  };
8476
8637
  assert.notDeepNestedPropertyVal = function(obj, prop, val, msg) {
8477
- new Assertion(obj, msg, assert.notDeepNestedPropertyVal, true).to.not.have.deep.nested.property(prop, val);
8638
+ new Assertion(
8639
+ obj,
8640
+ msg,
8641
+ assert.notDeepNestedPropertyVal,
8642
+ true
8643
+ ).to.not.have.deep.nested.property(prop, val);
8478
8644
  };
8479
8645
  assert.lengthOf = function(exp, len, msg) {
8480
8646
  new Assertion(exp, msg, assert.lengthOf, true).to.have.lengthOf(len);
@@ -8486,35 +8652,63 @@ assert.hasAllKeys = function(obj, keys2, msg) {
8486
8652
  new Assertion(obj, msg, assert.hasAllKeys, true).to.have.all.keys(keys2);
8487
8653
  };
8488
8654
  assert.containsAllKeys = function(obj, keys2, msg) {
8489
- new Assertion(obj, msg, assert.containsAllKeys, true).to.contain.all.keys(keys2);
8655
+ new Assertion(obj, msg, assert.containsAllKeys, true).to.contain.all.keys(
8656
+ keys2
8657
+ );
8490
8658
  };
8491
8659
  assert.doesNotHaveAnyKeys = function(obj, keys2, msg) {
8492
- new Assertion(obj, msg, assert.doesNotHaveAnyKeys, true).to.not.have.any.keys(keys2);
8660
+ new Assertion(obj, msg, assert.doesNotHaveAnyKeys, true).to.not.have.any.keys(
8661
+ keys2
8662
+ );
8493
8663
  };
8494
8664
  assert.doesNotHaveAllKeys = function(obj, keys2, msg) {
8495
- new Assertion(obj, msg, assert.doesNotHaveAllKeys, true).to.not.have.all.keys(keys2);
8665
+ new Assertion(obj, msg, assert.doesNotHaveAllKeys, true).to.not.have.all.keys(
8666
+ keys2
8667
+ );
8496
8668
  };
8497
8669
  assert.hasAnyDeepKeys = function(obj, keys2, msg) {
8498
- new Assertion(obj, msg, assert.hasAnyDeepKeys, true).to.have.any.deep.keys(keys2);
8670
+ new Assertion(obj, msg, assert.hasAnyDeepKeys, true).to.have.any.deep.keys(
8671
+ keys2
8672
+ );
8499
8673
  };
8500
8674
  assert.hasAllDeepKeys = function(obj, keys2, msg) {
8501
- new Assertion(obj, msg, assert.hasAllDeepKeys, true).to.have.all.deep.keys(keys2);
8675
+ new Assertion(obj, msg, assert.hasAllDeepKeys, true).to.have.all.deep.keys(
8676
+ keys2
8677
+ );
8502
8678
  };
8503
8679
  assert.containsAllDeepKeys = function(obj, keys2, msg) {
8504
- new Assertion(obj, msg, assert.containsAllDeepKeys, true).to.contain.all.deep.keys(keys2);
8680
+ new Assertion(
8681
+ obj,
8682
+ msg,
8683
+ assert.containsAllDeepKeys,
8684
+ true
8685
+ ).to.contain.all.deep.keys(keys2);
8505
8686
  };
8506
8687
  assert.doesNotHaveAnyDeepKeys = function(obj, keys2, msg) {
8507
- new Assertion(obj, msg, assert.doesNotHaveAnyDeepKeys, true).to.not.have.any.deep.keys(keys2);
8688
+ new Assertion(
8689
+ obj,
8690
+ msg,
8691
+ assert.doesNotHaveAnyDeepKeys,
8692
+ true
8693
+ ).to.not.have.any.deep.keys(keys2);
8508
8694
  };
8509
8695
  assert.doesNotHaveAllDeepKeys = function(obj, keys2, msg) {
8510
- new Assertion(obj, msg, assert.doesNotHaveAllDeepKeys, true).to.not.have.all.deep.keys(keys2);
8696
+ new Assertion(
8697
+ obj,
8698
+ msg,
8699
+ assert.doesNotHaveAllDeepKeys,
8700
+ true
8701
+ ).to.not.have.all.deep.keys(keys2);
8511
8702
  };
8512
8703
  assert.throws = function(fn2, errorLike, errMsgMatcher, msg) {
8513
8704
  if ("string" === typeof errorLike || errorLike instanceof RegExp) {
8514
8705
  errMsgMatcher = errorLike;
8515
8706
  errorLike = null;
8516
8707
  }
8517
- var assertErr = new Assertion(fn2, msg, assert.throws, true).to.throw(errorLike, errMsgMatcher);
8708
+ var assertErr = new Assertion(fn2, msg, assert.throws, true).to.throw(
8709
+ errorLike,
8710
+ errMsgMatcher
8711
+ );
8518
8712
  return flag(assertErr, "object");
8519
8713
  };
8520
8714
  assert.doesNotThrow = function(fn2, errorLike, errMsgMatcher, message) {
@@ -8522,7 +8716,10 @@ assert.doesNotThrow = function(fn2, errorLike, errMsgMatcher, message) {
8522
8716
  errMsgMatcher = errorLike;
8523
8717
  errorLike = null;
8524
8718
  }
8525
- new Assertion(fn2, message, assert.doesNotThrow, true).to.not.throw(errorLike, errMsgMatcher);
8719
+ new Assertion(fn2, message, assert.doesNotThrow, true).to.not.throw(
8720
+ errorLike,
8721
+ errMsgMatcher
8722
+ );
8526
8723
  };
8527
8724
  assert.operator = function(val, operator, val2, msg) {
8528
8725
  var ok;
@@ -8555,7 +8752,7 @@ assert.operator = function(val, operator, val2, msg) {
8555
8752
  msg = msg ? msg + ": " : msg;
8556
8753
  throw new AssertionError(
8557
8754
  msg + 'Invalid operator "' + operator + '"',
8558
- undefined,
8755
+ void 0,
8559
8756
  assert.operator
8560
8757
  );
8561
8758
  }
@@ -8570,67 +8767,138 @@ assert.closeTo = function(act, exp, delta, msg) {
8570
8767
  new Assertion(act, msg, assert.closeTo, true).to.be.closeTo(exp, delta);
8571
8768
  };
8572
8769
  assert.approximately = function(act, exp, delta, msg) {
8573
- new Assertion(act, msg, assert.approximately, true).to.be.approximately(exp, delta);
8770
+ new Assertion(act, msg, assert.approximately, true).to.be.approximately(
8771
+ exp,
8772
+ delta
8773
+ );
8574
8774
  };
8575
8775
  assert.sameMembers = function(set1, set22, msg) {
8576
8776
  new Assertion(set1, msg, assert.sameMembers, true).to.have.same.members(set22);
8577
8777
  };
8578
8778
  assert.notSameMembers = function(set1, set22, msg) {
8579
- new Assertion(set1, msg, assert.notSameMembers, true).to.not.have.same.members(set22);
8779
+ new Assertion(
8780
+ set1,
8781
+ msg,
8782
+ assert.notSameMembers,
8783
+ true
8784
+ ).to.not.have.same.members(set22);
8580
8785
  };
8581
8786
  assert.sameDeepMembers = function(set1, set22, msg) {
8582
- new Assertion(set1, msg, assert.sameDeepMembers, true).to.have.same.deep.members(set22);
8787
+ new Assertion(
8788
+ set1,
8789
+ msg,
8790
+ assert.sameDeepMembers,
8791
+ true
8792
+ ).to.have.same.deep.members(set22);
8583
8793
  };
8584
8794
  assert.notSameDeepMembers = function(set1, set22, msg) {
8585
- new Assertion(set1, msg, assert.notSameDeepMembers, true).to.not.have.same.deep.members(set22);
8795
+ new Assertion(
8796
+ set1,
8797
+ msg,
8798
+ assert.notSameDeepMembers,
8799
+ true
8800
+ ).to.not.have.same.deep.members(set22);
8586
8801
  };
8587
8802
  assert.sameOrderedMembers = function(set1, set22, msg) {
8588
- new Assertion(set1, msg, assert.sameOrderedMembers, true).to.have.same.ordered.members(set22);
8803
+ new Assertion(
8804
+ set1,
8805
+ msg,
8806
+ assert.sameOrderedMembers,
8807
+ true
8808
+ ).to.have.same.ordered.members(set22);
8589
8809
  };
8590
8810
  assert.notSameOrderedMembers = function(set1, set22, msg) {
8591
- new Assertion(set1, msg, assert.notSameOrderedMembers, true).to.not.have.same.ordered.members(set22);
8811
+ new Assertion(
8812
+ set1,
8813
+ msg,
8814
+ assert.notSameOrderedMembers,
8815
+ true
8816
+ ).to.not.have.same.ordered.members(set22);
8592
8817
  };
8593
8818
  assert.sameDeepOrderedMembers = function(set1, set22, msg) {
8594
- new Assertion(set1, msg, assert.sameDeepOrderedMembers, true).to.have.same.deep.ordered.members(set22);
8819
+ new Assertion(
8820
+ set1,
8821
+ msg,
8822
+ assert.sameDeepOrderedMembers,
8823
+ true
8824
+ ).to.have.same.deep.ordered.members(set22);
8595
8825
  };
8596
8826
  assert.notSameDeepOrderedMembers = function(set1, set22, msg) {
8597
- new Assertion(set1, msg, assert.notSameDeepOrderedMembers, true).to.not.have.same.deep.ordered.members(set22);
8827
+ new Assertion(
8828
+ set1,
8829
+ msg,
8830
+ assert.notSameDeepOrderedMembers,
8831
+ true
8832
+ ).to.not.have.same.deep.ordered.members(set22);
8598
8833
  };
8599
8834
  assert.includeMembers = function(superset, subset, msg) {
8600
- new Assertion(superset, msg, assert.includeMembers, true).to.include.members(subset);
8835
+ new Assertion(superset, msg, assert.includeMembers, true).to.include.members(
8836
+ subset
8837
+ );
8601
8838
  };
8602
8839
  assert.notIncludeMembers = function(superset, subset, msg) {
8603
- new Assertion(superset, msg, assert.notIncludeMembers, true).to.not.include.members(subset);
8840
+ new Assertion(
8841
+ superset,
8842
+ msg,
8843
+ assert.notIncludeMembers,
8844
+ true
8845
+ ).to.not.include.members(subset);
8604
8846
  };
8605
8847
  assert.includeDeepMembers = function(superset, subset, msg) {
8606
- new Assertion(superset, msg, assert.includeDeepMembers, true).to.include.deep.members(subset);
8848
+ new Assertion(
8849
+ superset,
8850
+ msg,
8851
+ assert.includeDeepMembers,
8852
+ true
8853
+ ).to.include.deep.members(subset);
8607
8854
  };
8608
8855
  assert.notIncludeDeepMembers = function(superset, subset, msg) {
8609
- new Assertion(superset, msg, assert.notIncludeDeepMembers, true).to.not.include.deep.members(subset);
8856
+ new Assertion(
8857
+ superset,
8858
+ msg,
8859
+ assert.notIncludeDeepMembers,
8860
+ true
8861
+ ).to.not.include.deep.members(subset);
8610
8862
  };
8611
8863
  assert.includeOrderedMembers = function(superset, subset, msg) {
8612
- new Assertion(superset, msg, assert.includeOrderedMembers, true).to.include.ordered.members(subset);
8864
+ new Assertion(
8865
+ superset,
8866
+ msg,
8867
+ assert.includeOrderedMembers,
8868
+ true
8869
+ ).to.include.ordered.members(subset);
8613
8870
  };
8614
8871
  assert.notIncludeOrderedMembers = function(superset, subset, msg) {
8615
- new Assertion(superset, msg, assert.notIncludeOrderedMembers, true).to.not.include.ordered.members(subset);
8872
+ new Assertion(
8873
+ superset,
8874
+ msg,
8875
+ assert.notIncludeOrderedMembers,
8876
+ true
8877
+ ).to.not.include.ordered.members(subset);
8616
8878
  };
8617
8879
  assert.includeDeepOrderedMembers = function(superset, subset, msg) {
8618
- new Assertion(superset, msg, assert.includeDeepOrderedMembers, true).to.include.deep.ordered.members(subset);
8880
+ new Assertion(
8881
+ superset,
8882
+ msg,
8883
+ assert.includeDeepOrderedMembers,
8884
+ true
8885
+ ).to.include.deep.ordered.members(subset);
8619
8886
  };
8620
8887
  assert.notIncludeDeepOrderedMembers = function(superset, subset, msg) {
8621
- new Assertion(superset, msg, assert.notIncludeDeepOrderedMembers, true).to.not.include.deep.ordered.members(subset);
8888
+ new Assertion(
8889
+ superset,
8890
+ msg,
8891
+ assert.notIncludeDeepOrderedMembers,
8892
+ true
8893
+ ).to.not.include.deep.ordered.members(subset);
8622
8894
  };
8623
8895
  assert.oneOf = function(inList, list, msg) {
8624
8896
  new Assertion(inList, msg, assert.oneOf, true).to.be.oneOf(list);
8625
8897
  };
8626
8898
  assert.isIterable = function(obj, msg) {
8627
- if (obj == undefined || !obj[Symbol.iterator]) {
8899
+ if (obj == void 0 || !obj[Symbol.iterator]) {
8628
8900
  msg = msg ? `${msg} expected ${inspect22(obj)} to be an iterable` : `expected ${inspect22(obj)} to be an iterable`;
8629
- throw new AssertionError(
8630
- msg,
8631
- undefined,
8632
- assert.isIterable
8633
- );
8901
+ throw new AssertionError(msg, void 0, assert.isIterable);
8634
8902
  }
8635
8903
  };
8636
8904
  assert.changes = function(fn2, obj, prop, msg) {
@@ -8656,7 +8924,10 @@ assert.doesNotChange = function(fn2, obj, prop, msg) {
8656
8924
  msg = prop;
8657
8925
  prop = null;
8658
8926
  }
8659
- return new Assertion(fn2, msg, assert.doesNotChange, true).to.not.change(obj, prop);
8927
+ return new Assertion(fn2, msg, assert.doesNotChange, true).to.not.change(
8928
+ obj,
8929
+ prop
8930
+ );
8660
8931
  };
8661
8932
  assert.changesButNotBy = function(fn2, obj, prop, delta, msg) {
8662
8933
  if (arguments.length === 4 && typeof obj === "function") {
@@ -8692,7 +8963,10 @@ assert.doesNotIncrease = function(fn2, obj, prop, msg) {
8692
8963
  msg = prop;
8693
8964
  prop = null;
8694
8965
  }
8695
- return new Assertion(fn2, msg, assert.doesNotIncrease, true).to.not.increase(obj, prop);
8966
+ return new Assertion(fn2, msg, assert.doesNotIncrease, true).to.not.increase(
8967
+ obj,
8968
+ prop
8969
+ );
8696
8970
  };
8697
8971
  assert.increasesButNotBy = function(fn2, obj, prop, delta, msg) {
8698
8972
  if (arguments.length === 4 && typeof obj === "function") {
@@ -8728,7 +9002,10 @@ assert.doesNotDecrease = function(fn2, obj, prop, msg) {
8728
9002
  msg = prop;
8729
9003
  prop = null;
8730
9004
  }
8731
- return new Assertion(fn2, msg, assert.doesNotDecrease, true).to.not.decrease(obj, prop);
9005
+ return new Assertion(fn2, msg, assert.doesNotDecrease, true).to.not.decrease(
9006
+ obj,
9007
+ prop
9008
+ );
8732
9009
  };
8733
9010
  assert.doesNotDecreaseBy = function(fn2, obj, prop, delta, msg) {
8734
9011
  if (arguments.length === 4 && typeof obj === "function") {
@@ -8781,13 +9058,36 @@ assert.isEmpty = function(val, msg) {
8781
9058
  assert.isNotEmpty = function(val, msg) {
8782
9059
  new Assertion(val, msg, assert.isNotEmpty, true).to.not.be.empty;
8783
9060
  };
8784
- (/* @__PURE__ */ __name(function alias(name, as) {
9061
+ assert.containsSubset = function(val, exp, msg) {
9062
+ new Assertion(val, msg).to.containSubset(exp);
9063
+ };
9064
+ assert.doesNotContainSubset = function(val, exp, msg) {
9065
+ new Assertion(val, msg).to.not.containSubset(exp);
9066
+ };
9067
+ var aliases = [
9068
+ ["isOk", "ok"],
9069
+ ["isNotOk", "notOk"],
9070
+ ["throws", "throw"],
9071
+ ["throws", "Throw"],
9072
+ ["isExtensible", "extensible"],
9073
+ ["isNotExtensible", "notExtensible"],
9074
+ ["isSealed", "sealed"],
9075
+ ["isNotSealed", "notSealed"],
9076
+ ["isFrozen", "frozen"],
9077
+ ["isNotFrozen", "notFrozen"],
9078
+ ["isEmpty", "empty"],
9079
+ ["isNotEmpty", "notEmpty"],
9080
+ ["isCallable", "isFunction"],
9081
+ ["isNotCallable", "isNotFunction"],
9082
+ ["containsSubset", "containSubset"]
9083
+ ];
9084
+ for (const [name, as] of aliases) {
8785
9085
  assert[as] = assert[name];
8786
- return alias;
8787
- }, "alias"))("isOk", "ok")("isNotOk", "notOk")("throws", "throw")("throws", "Throw")("isExtensible", "extensible")("isNotExtensible", "notExtensible")("isSealed", "sealed")("isNotSealed", "notSealed")("isFrozen", "frozen")("isNotFrozen", "notFrozen")("isEmpty", "empty")("isNotEmpty", "notEmpty")("isCallable", "isFunction")("isNotCallable", "isNotFunction");
9086
+ }
8788
9087
  var used = [];
8789
9088
  function use(fn2) {
8790
9089
  const exports = {
9090
+ use,
8791
9091
  AssertionError,
8792
9092
  util: utils_exports,
8793
9093
  config,
@@ -8804,7 +9104,7 @@ function use(fn2) {
8804
9104
  }
8805
9105
  __name(use, "use");
8806
9106
 
8807
- // ../../node_modules/.pnpm/@vitest+expect@3.0.4/node_modules/@vitest/expect/dist/index.js
9107
+ // ../../node_modules/.pnpm/@vitest+expect@3.0.6/node_modules/@vitest/expect/dist/index.js
8808
9108
  var MATCHERS_OBJECT = Symbol.for("matchers-object");
8809
9109
  var JEST_MATCHERS_OBJECT = Symbol.for("$$jest-matchers-object");
8810
9110
  var GLOBAL_EXPECT = Symbol.for("expect-global");
@@ -8963,7 +9263,7 @@ function asymmetricMatch(a3, b) {
8963
9263
  const asymmetricA = isAsymmetric(a3);
8964
9264
  const asymmetricB = isAsymmetric(b);
8965
9265
  if (asymmetricA && asymmetricB) {
8966
- return undefined;
9266
+ return void 0;
8967
9267
  }
8968
9268
  if (asymmetricA) {
8969
9269
  return a3.asymmetricMatch(b);
@@ -8975,7 +9275,7 @@ function asymmetricMatch(a3, b) {
8975
9275
  function eq(a3, b, aStack, bStack, customTesters, hasKey2) {
8976
9276
  let result = true;
8977
9277
  const asymmetricResult = asymmetricMatch(a3, b);
8978
- if (asymmetricResult !== undefined) {
9278
+ if (asymmetricResult !== void 0) {
8979
9279
  return asymmetricResult;
8980
9280
  }
8981
9281
  const testerContext = { equals };
@@ -8986,7 +9286,7 @@ function eq(a3, b, aStack, bStack, customTesters, hasKey2) {
8986
9286
  b,
8987
9287
  customTesters
8988
9288
  );
8989
- if (customTesterResult !== undefined) {
9289
+ if (customTesterResult !== void 0) {
8990
9290
  return customTesterResult;
8991
9291
  }
8992
9292
  }
@@ -9092,7 +9392,7 @@ function keys(obj, hasKey2) {
9092
9392
  );
9093
9393
  }
9094
9394
  function hasDefinedKey(obj, key) {
9095
- return hasKey(obj, key) && obj[key] !== undefined;
9395
+ return hasKey(obj, key) && obj[key] !== void 0;
9096
9396
  }
9097
9397
  function hasKey(obj, key) {
9098
9398
  return Object.prototype.hasOwnProperty.call(obj, key);
@@ -9139,7 +9439,7 @@ function hasIterator(object2) {
9139
9439
  }
9140
9440
  function iterableEquality(a3, b, customTesters = [], aStack = [], bStack = []) {
9141
9441
  if (typeof a3 !== "object" || typeof b !== "object" || Array.isArray(a3) || Array.isArray(b) || !hasIterator(a3) || !hasIterator(b)) {
9142
- return undefined;
9442
+ return void 0;
9143
9443
  }
9144
9444
  if (a3.constructor !== b.constructor) {
9145
9445
  return false;
@@ -9159,7 +9459,7 @@ function iterableEquality(a3, b, customTesters = [], aStack = [], bStack = []) {
9159
9459
  function iterableEqualityWithStack(a22, b2) {
9160
9460
  return iterableEquality(a22, b2, [...customTesters], [...aStack], [...bStack]);
9161
9461
  }
9162
- if (a3.size !== undefined) {
9462
+ if (a3.size !== void 0) {
9163
9463
  if (a3.size !== b.size) {
9164
9464
  return false;
9165
9465
  } else if (isA("Set", a3) || isImmutableUnorderedSet(a3)) {
@@ -9253,7 +9553,7 @@ function subsetEquality(object2, subset, customTesters = []) {
9253
9553
  );
9254
9554
  const subsetEqualityWithContext = (seenReferences = /* @__PURE__ */ new WeakMap()) => (object22, subset2) => {
9255
9555
  if (!isObjectWithKeys(subset2)) {
9256
- return undefined;
9556
+ return void 0;
9257
9557
  }
9258
9558
  return Object.keys(subset2).every((key) => {
9259
9559
  if (subset2[key] != null && typeof subset2[key] === "object") {
@@ -9274,7 +9574,7 @@ function subsetEquality(object2, subset, customTesters = []) {
9274
9574
  }
9275
9575
  function typeEquality(a3, b) {
9276
9576
  if (a3 == null || b == null || a3.constructor === b.constructor) {
9277
- return undefined;
9577
+ return void 0;
9278
9578
  }
9279
9579
  return false;
9280
9580
  }
@@ -9283,13 +9583,13 @@ function arrayBufferEquality(a3, b) {
9283
9583
  let dataViewB = b;
9284
9584
  if (!(a3 instanceof DataView && b instanceof DataView)) {
9285
9585
  if (!(a3 instanceof ArrayBuffer) || !(b instanceof ArrayBuffer)) {
9286
- return undefined;
9586
+ return void 0;
9287
9587
  }
9288
9588
  try {
9289
9589
  dataViewA = new DataView(a3);
9290
9590
  dataViewB = new DataView(b);
9291
9591
  } catch {
9292
- return undefined;
9592
+ return void 0;
9293
9593
  }
9294
9594
  }
9295
9595
  if (dataViewA.byteLength !== dataViewB.byteLength) {
@@ -9304,7 +9604,7 @@ function arrayBufferEquality(a3, b) {
9304
9604
  }
9305
9605
  function sparseArrayEquality(a3, b, customTesters = []) {
9306
9606
  if (!Array.isArray(a3) || !Array.isArray(b)) {
9307
- return undefined;
9607
+ return void 0;
9308
9608
  }
9309
9609
  const aKeys = Object.keys(a3);
9310
9610
  const bKeys = Object.keys(b);
@@ -9335,7 +9635,7 @@ function getObjectKeys(object2) {
9335
9635
  ...Object.getOwnPropertySymbols(object2).filter(
9336
9636
  (s2) => {
9337
9637
  var _a;
9338
- return (_a = Object.getOwnPropertyDescriptor(object2, s2)) == null ? undefined : _a.enumerable;
9638
+ return (_a = Object.getOwnPropertyDescriptor(object2, s2)) == null ? void 0 : _a.enumerable;
9339
9639
  }
9340
9640
  )
9341
9641
  ];
@@ -9448,15 +9748,13 @@ var AsymmetricMatcher3 = class {
9448
9748
  }
9449
9749
  };
9450
9750
  }
9451
- // implement custom chai/loupe inspect for better AssertionError.message formatting
9452
- // https://github.com/chaijs/loupe/blob/9b8a6deabcd50adc056a64fb705896194710c5c6/src/index.ts#L29
9453
- [Symbol.for("chai/inspect")](options) {
9454
- const result = stringify(this, options.depth, { min: true });
9455
- if (result.length <= options.truncate) {
9456
- return result;
9457
- }
9458
- return `${this.toString()}{\u2026}`;
9751
+ };
9752
+ AsymmetricMatcher3.prototype[Symbol.for("chai/inspect")] = function(options) {
9753
+ const result = stringify(this, options.depth, { min: true });
9754
+ if (result.length <= options.truncate) {
9755
+ return result;
9459
9756
  }
9757
+ return `${this.toString()}{\u2026}`;
9460
9758
  };
9461
9759
  var StringContaining = class extends AsymmetricMatcher3 {
9462
9760
  constructor(sample, inverse = false) {
@@ -9750,7 +10048,7 @@ function recordAsyncExpect(_test2, promise, assertion, error) {
9750
10048
  test5.onFinished.push(() => {
9751
10049
  var _a;
9752
10050
  if (!resolved) {
9753
- const processor = ((_a = globalThis.__vitest_worker__) == null ? undefined : _a.onFilterStackTrace) || ((s2) => s2 || "");
10051
+ const processor = ((_a = globalThis.__vitest_worker__) == null ? void 0 : _a.onFilterStackTrace) || ((s2) => s2 || "");
9754
10052
  const stack = processor(error.stack);
9755
10053
  console.warn([
9756
10054
  `Promise returned by \`${assertion}\` was not awaited. `,
@@ -10105,10 +10403,10 @@ var JestChaiExpect = (chai2, utils) => {
10105
10403
  def("toBeUndefined", function() {
10106
10404
  const obj = utils.flag(this, "object");
10107
10405
  this.assert(
10108
- undefined === obj,
10406
+ void 0 === obj,
10109
10407
  "expected #{this} to be undefined",
10110
10408
  "expected #{this} not to be undefined",
10111
- undefined,
10409
+ void 0,
10112
10410
  obj
10113
10411
  );
10114
10412
  });
@@ -10177,7 +10475,7 @@ var JestChaiExpect = (chai2, utils) => {
10177
10475
  `expected #{this} to have property "${propertyName}"${valueString}`,
10178
10476
  `expected #{this} to not have property "${propertyName}"${valueString}`,
10179
10477
  expected,
10180
- exists ? value : undefined
10478
+ exists ? value : void 0
10181
10479
  );
10182
10480
  }
10183
10481
  );
@@ -10584,7 +10882,7 @@ var JestChaiExpect = (chai2, utils) => {
10584
10882
  `expected last "${spyName}" call to ${action} #{exp}`,
10585
10883
  `expected last "${spyName}" call to not ${action} #{exp}`,
10586
10884
  value,
10587
- result == null ? undefined : result.value
10885
+ result == null ? void 0 : result.value
10588
10886
  );
10589
10887
  });
10590
10888
  });
@@ -10617,7 +10915,7 @@ var JestChaiExpect = (chai2, utils) => {
10617
10915
  `expected ${ordinalCall} "${spyName}" call to ${action} #{exp}`,
10618
10916
  `expected ${ordinalCall} "${spyName}" call to not ${action} #{exp}`,
10619
10917
  value,
10620
- result == null ? undefined : result.value
10918
+ result == null ? void 0 : result.value
10621
10919
  );
10622
10920
  });
10623
10921
  });
@@ -10641,7 +10939,7 @@ var JestChaiExpect = (chai2, utils) => {
10641
10939
  `expect.poll() is not supported in combination with .resolves`
10642
10940
  );
10643
10941
  }
10644
- if (typeof (obj == null ? undefined : obj.then) !== "function") {
10942
+ if (typeof (obj == null ? void 0 : obj.then) !== "function") {
10645
10943
  throw new TypeError(
10646
10944
  `You must provide a Promise to expect() when using .resolves, not '${typeof obj}'.`
10647
10945
  );
@@ -10701,7 +10999,7 @@ var JestChaiExpect = (chai2, utils) => {
10701
10999
  `expect.poll() is not supported in combination with .rejects`
10702
11000
  );
10703
11001
  }
10704
- if (typeof (wrapper == null ? undefined : wrapper.then) !== "function") {
11002
+ if (typeof (wrapper == null ? void 0 : wrapper.then) !== "function") {
10705
11003
  throw new TypeError(
10706
11004
  `You must provide a Promise to expect() when using .rejects, not '${typeof wrapper}'.`
10707
11005
  );
@@ -11088,7 +11386,7 @@ function extractLocation(urlLike) {
11088
11386
  const isWindows = /^\/@fs\/[a-zA-Z]:\//.test(url);
11089
11387
  url = url.slice(isWindows ? 5 : 4);
11090
11388
  }
11091
- return [url, parts[2] || undefined, parts[3] || undefined];
11389
+ return [url, parts[2] || void 0, parts[3] || void 0];
11092
11390
  }
11093
11391
  function parseSingleFFOrSafariStack(raw) {
11094
11392
  let line = raw.trim();
@@ -11106,7 +11404,7 @@ function parseSingleFFOrSafariStack(raw) {
11106
11404
  }
11107
11405
  const functionNameRegex = /((.*".+"[^@]*)?[^@]*)(@)/;
11108
11406
  const matches = line.match(functionNameRegex);
11109
- const functionName2 = matches && matches[1] ? matches[1] : undefined;
11407
+ const functionName2 = matches && matches[1] ? matches[1] : void 0;
11110
11408
  const [url, lineNumber, columnNumber] = extractLocation(
11111
11409
  line.replace(functionNameRegex, "")
11112
11410
  );
@@ -11142,7 +11440,7 @@ function parseSingleV8Stack(raw) {
11142
11440
  location ? location[1] : sanitizedLine
11143
11441
  );
11144
11442
  let method = location && sanitizedLine || "";
11145
- let file = url && ["eval", "<anonymous>"].includes(url) ? undefined : url;
11443
+ let file = url && ["eval", "<anonymous>"].includes(url) ? void 0 : url;
11146
11444
  if (!file || !lineNumber || !columnNumber) {
11147
11445
  return null;
11148
11446
  }
@@ -11164,7 +11462,7 @@ function parseSingleV8Stack(raw) {
11164
11462
  };
11165
11463
  }
11166
11464
 
11167
- // ../../node_modules/.pnpm/pathe@2.0.2/node_modules/pathe/dist/shared/pathe.UZ-hd4nF.mjs
11465
+ // ../../node_modules/.pnpm/pathe@2.0.3/node_modules/pathe/dist/shared/pathe.M-eThtNZ.mjs
11168
11466
  var _DRIVE_LETTER_START_RE2 = /^[A-Za-z]:\//;
11169
11467
  function normalizeWindowsPath2(input = "") {
11170
11468
  if (!input) {
@@ -11261,7 +11559,7 @@ var isAbsolute2 = function(p3) {
11261
11559
  return _IS_ABSOLUTE_RE2.test(p3);
11262
11560
  };
11263
11561
 
11264
- // ../../node_modules/.pnpm/@vitest+runner@3.0.4/node_modules/@vitest/runner/dist/chunk-tasks.js
11562
+ // ../../node_modules/.pnpm/@vitest+runner@3.0.6/node_modules/@vitest/runner/dist/chunk-tasks.js
11265
11563
  function createChainable(keys2, fn2) {
11266
11564
  function create(context) {
11267
11565
  const chain2 = function(...args) {
@@ -11291,9 +11589,9 @@ function createChainable(keys2, fn2) {
11291
11589
  function getNames(task) {
11292
11590
  const names = [task.name];
11293
11591
  let current = task;
11294
- while (current == null ? undefined : current.suite) {
11592
+ while (current == null ? void 0 : current.suite) {
11295
11593
  current = current.suite;
11296
- if (current == null ? undefined : current.name) {
11594
+ if (current == null ? void 0 : current.name) {
11297
11595
  names.unshift(current.name);
11298
11596
  }
11299
11597
  }
@@ -11306,7 +11604,7 @@ function getTestName(task, separator = " > ") {
11306
11604
  return getNames(task).slice(1).join(separator);
11307
11605
  }
11308
11606
 
11309
- // ../../node_modules/.pnpm/@vitest+runner@3.0.4/node_modules/@vitest/runner/dist/index.js
11607
+ // ../../node_modules/.pnpm/@vitest+runner@3.0.6/node_modules/@vitest/runner/dist/index.js
11310
11608
  var PendingError = class extends Error {
11311
11609
  constructor(message, task, note) {
11312
11610
  super(message);
@@ -11319,12 +11617,11 @@ var PendingError = class extends Error {
11319
11617
  };
11320
11618
  var now$2 = Date.now;
11321
11619
  var collectorContext = {
11322
- tasks: [],
11323
11620
  currentSuite: null
11324
11621
  };
11325
11622
  function collectTask(task) {
11326
11623
  var _a;
11327
- (_a = collectorContext.currentSuite) == null ? undefined : _a.tasks.push(task);
11624
+ (_a = collectorContext.currentSuite) == null ? void 0 : _a.tasks.push(task);
11328
11625
  }
11329
11626
  async function runWithSuite(suite2, fn2) {
11330
11627
  const prev = collectorContext.currentSuite;
@@ -11345,7 +11642,7 @@ function withTimeout(fn2, timeout, isHook = false) {
11345
11642
  clearTimeout(timer);
11346
11643
  reject(new Error(makeTimeoutMsg(isHook, timeout)));
11347
11644
  }, timeout);
11348
- (_a = timer.unref) == null ? undefined : _a.call(timer);
11645
+ (_a = timer.unref) == null ? void 0 : _a.call(timer);
11349
11646
  function resolve4(result) {
11350
11647
  clearTimeout(timer);
11351
11648
  if (now$2() - startTime >= timeout) {
@@ -11394,7 +11691,7 @@ function createTestContext(test5, runner2) {
11394
11691
  withTimeout(handler, timeout ?? runner2.config.hookTimeout, true)
11395
11692
  );
11396
11693
  };
11397
- return ((_a = runner2.extendTaskContext) == null ? undefined : _a.call(runner2, context)) || context;
11694
+ return ((_a = runner2.extendTaskContext) == null ? void 0 : _a.call(runner2, context)) || context;
11398
11695
  }
11399
11696
  function makeTimeoutMsg(isHook, timeout) {
11400
11697
  return `${isHook ? "Hook" : "Test"} timed out in ${timeout}ms.
@@ -11459,7 +11756,7 @@ function withFixtures(fn2, testContext) {
11459
11756
  return fn2({});
11460
11757
  }
11461
11758
  const fixtures = getFixture(context);
11462
- if (!(fixtures == null ? undefined : fixtures.length)) {
11759
+ if (!(fixtures == null ? void 0 : fixtures.length)) {
11463
11760
  return fn2(context);
11464
11761
  }
11465
11762
  const usedProps = getUsedProps(fn2);
@@ -11617,11 +11914,15 @@ var describe = suite;
11617
11914
  var it = test3;
11618
11915
  var runner;
11619
11916
  var defaultSuite;
11917
+ var currentTestFilepath;
11620
11918
  function assert2(condition, message) {
11621
11919
  if (!condition) {
11622
11920
  throw new Error(`Vitest failed to find ${message}. This is a bug in Vitest. Please, open an issue with reproduction.`);
11623
11921
  }
11624
11922
  }
11923
+ function getTestFilepath() {
11924
+ return currentTestFilepath;
11925
+ }
11625
11926
  function getRunner() {
11626
11927
  assert2(runner, "the runner");
11627
11928
  return runner;
@@ -11676,19 +11977,18 @@ function parseArguments(optionsOrFn, optionsOrTest) {
11676
11977
  function createSuiteCollector(name, factory = () => {
11677
11978
  }, mode, each, suiteOptions) {
11678
11979
  const tasks = [];
11679
- const factoryQueue = [];
11680
11980
  let suite2;
11681
11981
  initSuite();
11682
11982
  const task = function(name2 = "", options = {}) {
11683
11983
  const task2 = {
11684
11984
  id: "",
11685
11985
  name: name2,
11686
- suite: undefined,
11986
+ suite: void 0,
11687
11987
  each: options.each,
11688
11988
  fails: options.fails,
11689
- context: undefined,
11989
+ context: void 0,
11690
11990
  type: "test",
11691
- file: undefined,
11991
+ file: void 0,
11692
11992
  retry: options.retry ?? runner.config.retry,
11693
11993
  repeats: options.repeats,
11694
11994
  mode: options.only ? "only" : options.skip ? "skip" : options.todo ? "todo" : "run",
@@ -11698,7 +11998,7 @@ function createSuiteCollector(name, factory = () => {
11698
11998
  if (options.concurrent || !options.sequential && runner.config.sequence.concurrent) {
11699
11999
  task2.concurrent = true;
11700
12000
  }
11701
- task2.shuffle = suiteOptions == null ? undefined : suiteOptions.shuffle;
12001
+ task2.shuffle = suiteOptions == null ? void 0 : suiteOptions.shuffle;
11702
12002
  const context = createTestContext(task2, runner);
11703
12003
  Object.defineProperty(task2, "context", {
11704
12004
  value: context,
@@ -11710,11 +12010,20 @@ function createSuiteCollector(name, factory = () => {
11710
12010
  task2,
11711
12011
  withTimeout(
11712
12012
  withAwaitAsyncAssertions(withFixtures(handler, context), task2),
11713
- (options == null ? undefined : options.timeout) ?? runner.config.testTimeout
12013
+ (options == null ? void 0 : options.timeout) ?? runner.config.testTimeout
11714
12014
  )
11715
12015
  );
11716
12016
  }
11717
- if (runner.config.includeTaskLocation) ;
12017
+ if (runner.config.includeTaskLocation) {
12018
+ const limit = Error.stackTraceLimit;
12019
+ Error.stackTraceLimit = 15;
12020
+ const error = new Error("stacktrace").stack;
12021
+ Error.stackTraceLimit = limit;
12022
+ const stack = findTestFileStackTrace(error, task2.each ?? false);
12023
+ if (stack) {
12024
+ task2.location = stack;
12025
+ }
12026
+ }
11718
12027
  tasks.push(task2);
11719
12028
  return task2;
11720
12029
  };
@@ -11723,8 +12032,8 @@ function createSuiteCollector(name, factory = () => {
11723
12032
  if (typeof suiteOptions === "object") {
11724
12033
  options = Object.assign({}, suiteOptions, options);
11725
12034
  }
11726
- options.concurrent = this.concurrent || !this.sequential && (options == null ? undefined : options.concurrent);
11727
- options.sequential = this.sequential || !this.concurrent && (options == null ? undefined : options.sequential);
12035
+ options.concurrent = this.concurrent || !this.sequential && (options == null ? void 0 : options.concurrent);
12036
+ options.sequential = this.sequential || !this.concurrent && (options == null ? void 0 : options.sequential);
11728
12037
  const test32 = task(formatName(name2), {
11729
12038
  ...this,
11730
12039
  ...options,
@@ -11757,29 +12066,27 @@ function createSuiteCollector(name, factory = () => {
11757
12066
  name,
11758
12067
  mode,
11759
12068
  each,
11760
- file: undefined,
11761
- shuffle: suiteOptions == null ? undefined : suiteOptions.shuffle,
12069
+ file: void 0,
12070
+ shuffle: suiteOptions == null ? void 0 : suiteOptions.shuffle,
11762
12071
  tasks: [],
11763
12072
  meta: /* @__PURE__ */ Object.create(null),
11764
- concurrent: suiteOptions == null ? undefined : suiteOptions.concurrent
12073
+ concurrent: suiteOptions == null ? void 0 : suiteOptions.concurrent
11765
12074
  };
11766
12075
  setHooks(suite2, createSuiteHooks());
11767
12076
  }
11768
12077
  function clear() {
11769
12078
  tasks.length = 0;
11770
- factoryQueue.length = 0;
11771
12079
  initSuite();
11772
12080
  }
11773
12081
  async function collect(file) {
11774
12082
  if (!file) {
11775
12083
  throw new TypeError("File is required to collect tasks.");
11776
12084
  }
11777
- factoryQueue.length = 0;
11778
12085
  if (factory) {
11779
12086
  await runWithSuite(collector, () => factory(test22));
11780
12087
  }
11781
12088
  const allChildren = [];
11782
- for (const i of [...factoryQueue, ...tasks]) {
12089
+ for (const i of tasks) {
11783
12090
  allChildren.push(i.type === "collector" ? await i.collect(file) : i);
11784
12091
  }
11785
12092
  suite2.file = file;
@@ -11798,7 +12105,7 @@ function withAwaitAsyncAssertions(fn2, task) {
11798
12105
  const fnResult = await fn2(...args);
11799
12106
  if (task.promises) {
11800
12107
  const result = await Promise.allSettled(task.promises);
11801
- const errors = result.map((r2) => r2.status === "rejected" ? r2.reason : undefined).filter(Boolean);
12108
+ const errors = result.map((r2) => r2.status === "rejected" ? r2.reason : void 0).filter(Boolean);
11802
12109
  if (errors.length) {
11803
12110
  throw errors;
11804
12111
  }
@@ -11818,9 +12125,9 @@ function createSuite() {
11818
12125
  const isConcurrentSpecified = options.concurrent || this.concurrent || options.sequential === false;
11819
12126
  const isSequentialSpecified = options.sequential || this.sequential || options.concurrent === false;
11820
12127
  options = {
11821
- ...currentSuite == null ? undefined : currentSuite.options,
12128
+ ...currentSuite == null ? void 0 : currentSuite.options,
11822
12129
  ...options,
11823
- shuffle: this.shuffle ?? options.shuffle ?? ((_a = currentSuite == null ? undefined : currentSuite.options) == null ? undefined : _a.shuffle) ?? (undefined )
12130
+ shuffle: this.shuffle ?? options.shuffle ?? ((_a = currentSuite == null ? void 0 : currentSuite.options) == null ? void 0 : _a.shuffle) ?? (void 0 )
11824
12131
  };
11825
12132
  const isConcurrent = isConcurrentSpecified || options.concurrent && !isSequentialSpecified;
11826
12133
  const isSequential = isSequentialSpecified || options.sequential && !isConcurrentSpecified;
@@ -11865,7 +12172,7 @@ function createSuite() {
11865
12172
  }
11866
12173
  }
11867
12174
  });
11868
- this.setContext("each", undefined);
12175
+ this.setContext("each", void 0);
11869
12176
  };
11870
12177
  };
11871
12178
  suiteFn.for = function(cases, ...args) {
@@ -11920,7 +12227,7 @@ function createTaskCollector(fn2, context) {
11920
12227
  }
11921
12228
  }
11922
12229
  });
11923
- this.setContext("each", undefined);
12230
+ this.setContext("each", void 0);
11924
12231
  };
11925
12232
  };
11926
12233
  taskFn.for = function(cases, ...args) {
@@ -11951,7 +12258,7 @@ function createTaskCollector(fn2, context) {
11951
12258
  context || {},
11952
12259
  (key) => {
11953
12260
  var _a, _b;
11954
- return (_b = (_a = getRunner()).injectValue) == null ? undefined : _b.call(_a, key);
12261
+ return (_b = (_a = getRunner()).injectValue) == null ? void 0 : _b.call(_a, key);
11955
12262
  }
11956
12263
  );
11957
12264
  return createTest(function fn22(name, optionsOrFn, optionsOrTest) {
@@ -12003,7 +12310,7 @@ function formatTitle(template, items, idx) {
12003
12310
  (_, key) => {
12004
12311
  var _a, _b;
12005
12312
  return objDisplay(objectAttr(items[0], key), {
12006
- truncate: (_b = (_a = undefined ) == null ? undefined : _a.chaiConfig) == null ? undefined : _b.truncateThreshold
12313
+ truncate: (_b = (_a = void 0 ) == null ? void 0 : _a.chaiConfig) == null ? void 0 : _b.truncateThreshold
12007
12314
  });
12008
12315
  }
12009
12316
  );
@@ -12022,6 +12329,24 @@ function formatTemplateString(cases, args) {
12022
12329
  }
12023
12330
  return res;
12024
12331
  }
12332
+ function findTestFileStackTrace(error, each) {
12333
+ const lines = error.split("\n").slice(1);
12334
+ for (const line of lines) {
12335
+ const stack = parseSingleStack(line);
12336
+ if (stack && stack.file === getTestFilepath()) {
12337
+ return {
12338
+ line: stack.line,
12339
+ /**
12340
+ * test.each([1, 2])('name')
12341
+ * ^ leads here, but should
12342
+ * ^ lead here
12343
+ * in source maps it's the same boundary, so it just points to the start of it
12344
+ */
12345
+ column: each ? stack.column + 1 : stack.column
12346
+ };
12347
+ }
12348
+ }
12349
+ }
12025
12350
  function getDefaultHookTimeout() {
12026
12351
  return getRunner().config.hookTimeout;
12027
12352
  }
@@ -12068,7 +12393,7 @@ function createTestHook(name, handler) {
12068
12393
  globalThis.performance ? globalThis.performance.now.bind(globalThis.performance) : Date.now;
12069
12394
  globalThis.performance ? globalThis.performance.now.bind(globalThis.performance) : Date.now;
12070
12395
 
12071
- // ../../node_modules/.pnpm/vitest@3.0.4_@edge-runtime+vm@3.2.0_@types+debug@4.1.12_@types+node@22.13.1_jiti@2.4.2_jsdom@_tsdoks2dgqz77qqt66opozk4oi/node_modules/vitest/dist/chunks/utils.C8RiOc4B.js
12396
+ // ../../node_modules/.pnpm/vitest@3.0.6_@edge-runtime+_01083f24f12a90babd2af6c0c5bfaac9/node_modules/vitest/dist/chunks/utils.C8RiOc4B.js
12072
12397
  var NAME_WORKER_STATE = "__vitest_worker__";
12073
12398
  function getWorkerState() {
12074
12399
  const workerState = globalThis[NAME_WORKER_STATE];
@@ -12128,13 +12453,13 @@ async function waitForImportsToResolve() {
12128
12453
  await waitForImportsToResolve();
12129
12454
  }
12130
12455
 
12131
- // ../../node_modules/.pnpm/vitest@3.0.4_@edge-runtime+vm@3.2.0_@types+debug@4.1.12_@types+node@22.13.1_jiti@2.4.2_jsdom@_tsdoks2dgqz77qqt66opozk4oi/node_modules/vitest/dist/chunks/_commonjsHelpers.BFTU3MAI.js
12456
+ // ../../node_modules/.pnpm/vitest@3.0.6_@edge-runtime+_01083f24f12a90babd2af6c0c5bfaac9/node_modules/vitest/dist/chunks/_commonjsHelpers.BFTU3MAI.js
12132
12457
  var commonjsGlobal = typeof globalThis !== "undefined" ? globalThis : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : {};
12133
12458
  function getDefaultExportFromCjs3(x2) {
12134
12459
  return x2 && x2.__esModule && Object.prototype.hasOwnProperty.call(x2, "default") ? x2["default"] : x2;
12135
12460
  }
12136
12461
 
12137
- // ../../node_modules/.pnpm/@vitest+snapshot@3.0.4/node_modules/@vitest/snapshot/dist/index.js
12462
+ // ../../node_modules/.pnpm/@vitest+snapshot@3.0.6/node_modules/@vitest/snapshot/dist/index.js
12138
12463
  var comma2 = ",".charCodeAt(0);
12139
12464
  var chars2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
12140
12465
  var intToChar2 = new Uint8Array(64);
@@ -12535,20 +12860,20 @@ var TraceMap = class {
12535
12860
  this.sourceRoot = sourceRoot;
12536
12861
  this.sources = sources;
12537
12862
  this.sourcesContent = sourcesContent;
12538
- this.ignoreList = parsed.ignoreList || parsed.x_google_ignoreList || undefined;
12863
+ this.ignoreList = parsed.ignoreList || parsed.x_google_ignoreList || void 0;
12539
12864
  const from = resolve3(sourceRoot || "", stripFilename(mapUrl));
12540
12865
  this.resolvedSources = sources.map((s2) => resolve3(s2 || "", from));
12541
12866
  const { mappings } = parsed;
12542
12867
  if (typeof mappings === "string") {
12543
12868
  this._encoded = mappings;
12544
- this._decoded = undefined;
12869
+ this._decoded = void 0;
12545
12870
  } else {
12546
- this._encoded = undefined;
12871
+ this._encoded = void 0;
12547
12872
  this._decoded = maybeSort(mappings, isString);
12548
12873
  }
12549
12874
  this._decodedMemo = memoizedState();
12550
- this._bySources = undefined;
12551
- this._bySourceMemos = undefined;
12875
+ this._bySources = void 0;
12876
+ this._bySourceMemos = void 0;
12552
12877
  }
12553
12878
  };
12554
12879
  function cast(map2) {
@@ -12676,7 +13001,7 @@ function extractLocation2(urlLike) {
12676
13001
  const isWindows = /^\/@fs\/[a-zA-Z]:\//.test(url);
12677
13002
  url = url.slice(isWindows ? 5 : 4);
12678
13003
  }
12679
- return [url, parts[2] || undefined, parts[3] || undefined];
13004
+ return [url, parts[2] || void 0, parts[3] || void 0];
12680
13005
  }
12681
13006
  function parseSingleFFOrSafariStack2(raw) {
12682
13007
  let line = raw.trim();
@@ -12694,7 +13019,7 @@ function parseSingleFFOrSafariStack2(raw) {
12694
13019
  }
12695
13020
  const functionNameRegex = /((.*".+"[^@]*)?[^@]*)(@)/;
12696
13021
  const matches = line.match(functionNameRegex);
12697
- const functionName2 = matches && matches[1] ? matches[1] : undefined;
13022
+ const functionName2 = matches && matches[1] ? matches[1] : void 0;
12698
13023
  const [url, lineNumber, columnNumber] = extractLocation2(
12699
13024
  line.replace(functionNameRegex, "")
12700
13025
  );
@@ -12723,7 +13048,7 @@ function parseSingleV8Stack2(raw) {
12723
13048
  location ? location[1] : sanitizedLine
12724
13049
  );
12725
13050
  let method = location && sanitizedLine || "";
12726
- let file = url && ["eval", "<anonymous>"].includes(url) ? undefined : url;
13051
+ let file = url && ["eval", "<anonymous>"].includes(url) ? void 0 : url;
12727
13052
  if (!file || !lineNumber || !columnNumber) {
12728
13053
  return null;
12729
13054
  }
@@ -12757,7 +13082,7 @@ function parseStacktrace(stack, options = {}) {
12757
13082
  if (options.getFileName) {
12758
13083
  stack2.file = options.getFileName(stack2.file);
12759
13084
  }
12760
- const map2 = (_a = options.getSourceMap) == null ? undefined : _a.call(options, stack2.file);
13085
+ const map2 = (_a = options.getSourceMap) == null ? void 0 : _a.call(options, stack2.file);
12761
13086
  if (!map2 || typeof map2 !== "object" || !map2.version) {
12762
13087
  return stack2;
12763
13088
  }
@@ -12868,7 +13193,7 @@ function requireJsTokens2() {
12868
13193
  yield {
12869
13194
  type: "RegularExpressionLiteral",
12870
13195
  value: match[0],
12871
- closed: match[1] !== undefined && match[1] !== "\\"
13196
+ closed: match[1] !== void 0 && match[1] !== "\\"
12872
13197
  };
12873
13198
  continue;
12874
13199
  }
@@ -13006,7 +13331,7 @@ function requireJsTokens2() {
13006
13331
  yield {
13007
13332
  type: "StringLiteral",
13008
13333
  value: match[0],
13009
- closed: match[2] !== undefined
13334
+ closed: match[2] !== void 0
13010
13335
  };
13011
13336
  continue;
13012
13337
  }
@@ -13107,7 +13432,7 @@ function requireJsTokens2() {
13107
13432
  yield {
13108
13433
  type: "JSXString",
13109
13434
  value: match[0],
13110
- closed: match[2] !== undefined
13435
+ closed: match[2] !== void 0
13111
13436
  };
13112
13437
  continue;
13113
13438
  }
@@ -13182,7 +13507,7 @@ function requireJsTokens2() {
13182
13507
  yield {
13183
13508
  type: "MultiLineComment",
13184
13509
  value: match[0],
13185
- closed: match[1] !== undefined
13510
+ closed: match[1] !== void 0
13186
13511
  };
13187
13512
  continue;
13188
13513
  }
@@ -13205,7 +13530,7 @@ function requireJsTokens2() {
13205
13530
  value: firstCodePoint
13206
13531
  };
13207
13532
  }
13208
- return undefined;
13533
+ return void 0;
13209
13534
  };
13210
13535
  return jsTokens_12;
13211
13536
  }
@@ -13312,8 +13637,8 @@ function a2(n) {
13312
13637
  a2.open = "";
13313
13638
  a2.close = "";
13314
13639
  function C3(n = false) {
13315
- let e = typeof process != "undefined" ? process : undefined, i = (e == null ? undefined : e.env) || {}, g = (e == null ? undefined : e.argv) || [];
13316
- return !("NO_COLOR" in i || g.includes("--no-color")) && ("FORCE_COLOR" in i || g.includes("--color") || (e == null ? undefined : e.platform) === "win32" || n && i.TERM !== "dumb" || "CI" in i) || typeof window != "undefined" && !!window.chrome;
13640
+ let e = typeof process != "undefined" ? process : void 0, i = (e == null ? void 0 : e.env) || {}, g = (e == null ? void 0 : e.argv) || [];
13641
+ return !("NO_COLOR" in i || g.includes("--no-color")) && ("FORCE_COLOR" in i || g.includes("--color") || (e == null ? void 0 : e.platform) === "win32" || n && i.TERM !== "dumb" || "CI" in i) || typeof window != "undefined" && !!window.chrome;
13317
13642
  }
13318
13643
  function p2(n = false) {
13319
13644
  let e = C3(n), i = (r2, t, c, o) => {
@@ -13471,7 +13796,7 @@ function replaceInlineSnap(code, s2, currentIndex, newSnap) {
13471
13796
  const firstKeywordMatch = /toMatchInlineSnapshot|toThrowErrorMatchingInlineSnapshot/.exec(
13472
13797
  codeStartingAtIndex
13473
13798
  );
13474
- if (!startMatch || startMatch.index !== (firstKeywordMatch == null ? undefined : firstKeywordMatch.index)) {
13799
+ if (!startMatch || startMatch.index !== (firstKeywordMatch == null ? void 0 : firstKeywordMatch.index)) {
13475
13800
  return replaceObjectSnap(code, s2, index2, newSnap);
13476
13801
  }
13477
13802
  const quote = startMatch[1];
@@ -13687,17 +14012,17 @@ function prepareExpected(expected) {
13687
14012
  function findStartIndent() {
13688
14013
  var _a, _b;
13689
14014
  const matchObject = /^( +)\}\s+$/m.exec(expected || "");
13690
- const objectIndent = (_a = matchObject == null ? undefined : matchObject[1]) == null ? undefined : _a.length;
14015
+ const objectIndent = (_a = matchObject == null ? void 0 : matchObject[1]) == null ? void 0 : _a.length;
13691
14016
  if (objectIndent) {
13692
14017
  return objectIndent;
13693
14018
  }
13694
14019
  const matchText = /^\n( +)"/.exec(expected || "");
13695
- return ((_b = matchText == null ? undefined : matchText[1]) == null ? undefined : _b.length) || 0;
14020
+ return ((_b = matchText == null ? void 0 : matchText[1]) == null ? void 0 : _b.length) || 0;
13696
14021
  }
13697
14022
  const startIndent = findStartIndent();
13698
- let expectedTrimmed = expected == null ? undefined : expected.trim();
14023
+ let expectedTrimmed = expected == null ? void 0 : expected.trim();
13699
14024
  if (startIndent) {
13700
- expectedTrimmed = expectedTrimmed == null ? undefined : expectedTrimmed.replace(new RegExp(`^${" ".repeat(startIndent)}`, "gm"), "").replace(/ +\}$/, "}");
14025
+ expectedTrimmed = expectedTrimmed == null ? void 0 : expectedTrimmed.replace(new RegExp(`^${" ".repeat(startIndent)}`, "gm"), "").replace(/ +\}$/, "}");
13701
14026
  }
13702
14027
  return expectedTrimmed;
13703
14028
  }
@@ -13753,10 +14078,25 @@ var CounterMap = class extends DefaultMap {
13753
14078
  constructor() {
13754
14079
  super(() => 0);
13755
14080
  }
14081
+ // compat for jest-image-snapshot https://github.com/vitest-dev/vitest/issues/7322
14082
+ // `valueOf` and `Snapshot.added` setter allows
14083
+ // snapshotState.added = snapshotState.added + 1
14084
+ // to function as
14085
+ // snapshotState.added.total_ = snapshotState.added.total() + 1
14086
+ _total;
14087
+ valueOf() {
14088
+ return this._total = this.total();
14089
+ }
13756
14090
  increment(key) {
14091
+ if (typeof this._total !== "undefined") {
14092
+ this._total++;
14093
+ }
13757
14094
  this.set(key, this.get(key) + 1);
13758
14095
  }
13759
14096
  total() {
14097
+ if (typeof this._total !== "undefined") {
14098
+ return this._total;
14099
+ }
13760
14100
  let total = 0;
13761
14101
  for (const x2 of this.values()) {
13762
14102
  total += x2;
@@ -13799,11 +14139,37 @@ var SnapshotState = class _SnapshotState {
13799
14139
  _snapshotFormat;
13800
14140
  _environment;
13801
14141
  _fileExists;
13802
- added = new CounterMap();
13803
- matched = new CounterMap();
13804
- unmatched = new CounterMap();
13805
- updated = new CounterMap();
13806
14142
  expand;
14143
+ // getter/setter for jest-image-snapshot compat
14144
+ // https://github.com/vitest-dev/vitest/issues/7322
14145
+ _added = new CounterMap();
14146
+ _matched = new CounterMap();
14147
+ _unmatched = new CounterMap();
14148
+ _updated = new CounterMap();
14149
+ get added() {
14150
+ return this._added;
14151
+ }
14152
+ set added(value) {
14153
+ this._added._total = value;
14154
+ }
14155
+ get matched() {
14156
+ return this._matched;
14157
+ }
14158
+ set matched(value) {
14159
+ this._matched._total = value;
14160
+ }
14161
+ get unmatched() {
14162
+ return this._unmatched;
14163
+ }
14164
+ set unmatched(value) {
14165
+ this._unmatched._total = value;
14166
+ }
14167
+ get updated() {
14168
+ return this._updated;
14169
+ }
14170
+ set updated(value) {
14171
+ this._updated._total = value;
14172
+ }
13807
14173
  static async create(testFilePath, options) {
13808
14174
  const snapshotPath = await options.snapshotEnvironment.resolvePath(
13809
14175
  testFilePath
@@ -13935,10 +14301,10 @@ var SnapshotState = class _SnapshotState {
13935
14301
  key = testNameToKey(testName2, count);
13936
14302
  }
13937
14303
  this._testIdToKeys.get(testId).push(key);
13938
- if (!(isInline && this._snapshotData[key] !== undefined)) {
14304
+ if (!(isInline && this._snapshotData[key] !== void 0)) {
13939
14305
  this._uncheckedKeys.delete(key);
13940
14306
  }
13941
- let receivedSerialized = rawSnapshot && typeof received === "string" ? received : serialize2(received, undefined, this._snapshotFormat);
14307
+ let receivedSerialized = rawSnapshot && typeof received === "string" ? received : serialize2(received, void 0, this._snapshotFormat);
13942
14308
  if (!rawSnapshot) {
13943
14309
  receivedSerialized = addExtraLineBreaks(receivedSerialized);
13944
14310
  }
@@ -13950,7 +14316,7 @@ var SnapshotState = class _SnapshotState {
13950
14316
  const expected = isInline ? inlineSnapshot : rawSnapshot ? rawSnapshot.content : this._snapshotData[key];
13951
14317
  const expectedTrimmed = rawSnapshot ? expected : prepareExpected(expected);
13952
14318
  const pass = expectedTrimmed === (rawSnapshot ? receivedSerialized : prepareExpected(receivedSerialized));
13953
- const hasSnapshot = expected !== undefined;
14319
+ const hasSnapshot = expected !== void 0;
13954
14320
  const snapshotIsPersisted = isInline || this._fileExists || rawSnapshot && rawSnapshot.content != null;
13955
14321
  if (pass && !isInline && !rawSnapshot) {
13956
14322
  this._snapshotData[key] = receivedSerialized;
@@ -13970,7 +14336,7 @@ ${JSON.stringify(
13970
14336
  )}`
13971
14337
  );
13972
14338
  }
13973
- stack = ((_b = (_a = this.environment).processStackTrace) == null ? undefined : _b.call(_a, _stack)) || _stack;
14339
+ stack = ((_b = (_a = this.environment).processStackTrace) == null ? void 0 : _b.call(_a, _stack)) || _stack;
13974
14340
  stack.column--;
13975
14341
  if (this._inlineSnapshotStacks.some((s2) => s2.file === stack.file && s2.line === stack.line && s2.column === stack.column)) {
13976
14342
  this._inlineSnapshots = this._inlineSnapshots.filter((s2) => !(s2.file === stack.file && s2.line === stack.line && s2.column === stack.column));
@@ -14015,7 +14381,7 @@ ${JSON.stringify(
14015
14381
  return {
14016
14382
  actual: rawSnapshot ? receivedSerialized : removeExtraLineBreaks(receivedSerialized),
14017
14383
  count,
14018
- expected: expectedTrimmed !== undefined ? rawSnapshot ? expectedTrimmed : removeExtraLineBreaks(expectedTrimmed) : undefined,
14384
+ expected: expectedTrimmed !== void 0 ? rawSnapshot ? expectedTrimmed : removeExtraLineBreaks(expectedTrimmed) : void 0,
14019
14385
  key,
14020
14386
  pass: false
14021
14387
  };
@@ -14168,8 +14534,8 @@ var SnapshotClient = class {
14168
14534
  throw createMismatchError(
14169
14535
  `Snapshot \`${key || "unknown"}\` mismatched`,
14170
14536
  snapshotState.expand,
14171
- rawSnapshot ? actual : actual == null ? undefined : actual.trim(),
14172
- rawSnapshot ? expected : expected == null ? undefined : expected.trim()
14537
+ rawSnapshot ? actual : actual == null ? void 0 : actual.trim(),
14538
+ rawSnapshot ? expected : expected == null ? void 0 : expected.trim()
14173
14539
  );
14174
14540
  }
14175
14541
  }
@@ -14188,7 +14554,7 @@ var SnapshotClient = class {
14188
14554
  filepath,
14189
14555
  rawSnapshot.file
14190
14556
  );
14191
- rawSnapshot.content = await snapshotState.environment.readSnapshotFile(rawSnapshot.file) ?? undefined;
14557
+ rawSnapshot.content = await snapshotState.environment.readSnapshotFile(rawSnapshot.file) ?? void 0;
14192
14558
  }
14193
14559
  return this.assert(options);
14194
14560
  }
@@ -14197,7 +14563,7 @@ var SnapshotClient = class {
14197
14563
  }
14198
14564
  };
14199
14565
 
14200
- // ../../node_modules/.pnpm/vitest@3.0.4_@edge-runtime+vm@3.2.0_@types+debug@4.1.12_@types+node@22.13.1_jiti@2.4.2_jsdom@_tsdoks2dgqz77qqt66opozk4oi/node_modules/vitest/dist/chunks/date.W2xKR2qe.js
14566
+ // ../../node_modules/.pnpm/vitest@3.0.6_@edge-runtime+_01083f24f12a90babd2af6c0c5bfaac9/node_modules/vitest/dist/chunks/date.W2xKR2qe.js
14201
14567
  var RealDate = Date;
14202
14568
  var now2 = null;
14203
14569
  var MockDate = class _MockDate extends RealDate {
@@ -14250,7 +14616,7 @@ function resetDate() {
14250
14616
  globalThis.Date = RealDate;
14251
14617
  }
14252
14618
 
14253
- // ../../node_modules/.pnpm/vitest@3.0.4_@edge-runtime+vm@3.2.0_@types+debug@4.1.12_@types+node@22.13.1_jiti@2.4.2_jsdom@_tsdoks2dgqz77qqt66opozk4oi/node_modules/vitest/dist/chunks/vi.CjhMlMwf.js
14619
+ // ../../node_modules/.pnpm/vitest@3.0.6_@edge-runtime+_01083f24f12a90babd2af6c0c5bfaac9/node_modules/vitest/dist/chunks/vi.DrftpPF8.js
14254
14620
  var unsupported = [
14255
14621
  // .poll is meant to retry matchers until they succeed, and
14256
14622
  // snapshots will always succeed as long as the poll method doesn't throw an error
@@ -14378,7 +14744,7 @@ await ${assertionString}
14378
14744
  };
14379
14745
  }
14380
14746
  function copyStackTrace$1(target, source) {
14381
- if (source.stack !== undefined) {
14747
+ if (source.stack !== void 0) {
14382
14748
  target.stack = source.stack.replace(source.message, target.message);
14383
14749
  }
14384
14750
  return target;
@@ -14578,7 +14944,7 @@ var SnapshotPlugin = (chai2, utils) => {
14578
14944
  const test5 = getTest(key, this);
14579
14945
  if (typeof properties === "string" && typeof message === "undefined") {
14580
14946
  message = properties;
14581
- properties = undefined;
14947
+ properties = void 0;
14582
14948
  }
14583
14949
  const errorMessage = utils.flag(this, "message");
14584
14950
  getSnapshotClient().assert({
@@ -14644,7 +15010,7 @@ var SnapshotPlugin = (chai2, utils) => {
14644
15010
  if (typeof properties === "string") {
14645
15011
  message = inlineSnapshot;
14646
15012
  inlineSnapshot = properties;
14647
- properties = undefined;
15013
+ properties = void 0;
14648
15014
  }
14649
15015
  if (inlineSnapshot) {
14650
15016
  inlineSnapshot = stripSnapshotIndentation(inlineSnapshot);
@@ -14892,7 +15258,7 @@ function requireCalledInOrder() {
14892
15258
  hasRequiredCalledInOrder = 1;
14893
15259
  var every2 = requireArray().every;
14894
15260
  function hasCallsLeft(callMap, spy) {
14895
- if (callMap[spy.id] === undefined) {
15261
+ if (callMap[spy.id] === void 0) {
14896
15262
  callMap[spy.id] = 0;
14897
15263
  }
14898
15264
  return callMap[spy.id] < spy.callCount;
@@ -15266,7 +15632,7 @@ function requireFakeTimersSrc() {
15266
15632
  const maxTimeout = Math.pow(2, 31) - 1;
15267
15633
  const idCounterStart = 1e12;
15268
15634
  const NOOP = function() {
15269
- return undefined;
15635
+ return void 0;
15270
15636
  };
15271
15637
  const NOOP_ARRAY = function() {
15272
15638
  return [];
@@ -15303,9 +15669,9 @@ function requireFakeTimersSrc() {
15303
15669
  const NativeIntl = isPresent.Intl ? Object.defineProperties(
15304
15670
  /* @__PURE__ */ Object.create(null),
15305
15671
  Object.getOwnPropertyDescriptors(_global.Intl)
15306
- ) : undefined;
15672
+ ) : void 0;
15307
15673
  let uniqueTimerId = idCounterStart;
15308
- if (NativeDate === undefined) {
15674
+ if (NativeDate === void 0) {
15309
15675
  throw new Error(
15310
15676
  "The global scope doesn't have a `Date` object (see https://github.com/sinonjs/sinon/issues/1852#issuecomment-419622780)"
15311
15677
  );
@@ -15525,7 +15891,7 @@ ${job.error.stack.split("\n").slice(matchedLineIndex + 1).join("\n")}`;
15525
15891
  clock.jobs = [];
15526
15892
  }
15527
15893
  function addTimer(clock, timer) {
15528
- if (timer.func === undefined) {
15894
+ if (timer.func === void 0) {
15529
15895
  throw new Error("Callback must be provided to timer calls");
15530
15896
  }
15531
15897
  if (addTimerReturnsObject) {
@@ -15707,7 +16073,7 @@ ${job.error.stack.split("\n").slice(matchedLineIndex + 1).join("\n")}`;
15707
16073
  const handlerName = getClearHandler(ttype);
15708
16074
  if (clock.shouldClearNativeTimers === true) {
15709
16075
  const nativeHandler = clock[`_${handlerName}`];
15710
- return typeof nativeHandler === "function" ? nativeHandler(timerId) : undefined;
16076
+ return typeof nativeHandler === "function" ? nativeHandler(timerId) : void 0;
15711
16077
  }
15712
16078
  warnOnce(
15713
16079
  `FakeTimers: ${handlerName} was invoked to clear a native timer instead of one created by this library.
@@ -15761,13 +16127,13 @@ To automatically clean-up native timers, use \`shouldClearNativeTimers\`.`
15761
16127
  }
15762
16128
  }
15763
16129
  }
15764
- if (clock.timersModuleMethods !== undefined) {
16130
+ if (clock.timersModuleMethods !== void 0) {
15765
16131
  for (let j = 0; j < clock.timersModuleMethods.length; j++) {
15766
16132
  const entry = clock.timersModuleMethods[j];
15767
16133
  timersModule[entry.methodName] = entry.original;
15768
16134
  }
15769
16135
  }
15770
- if (clock.timersPromisesModuleMethods !== undefined) {
16136
+ if (clock.timersPromisesModuleMethods !== void 0) {
15771
16137
  for (let j = 0; j < clock.timersPromisesModuleMethods.length; j++) {
15772
16138
  const entry = clock.timersPromisesModuleMethods[j];
15773
16139
  timersPromisesModule[entry.methodName] = entry.original;
@@ -16413,7 +16779,7 @@ To automatically clean-up native timers, use \`shouldClearNativeTimers\`.`
16413
16779
  } else {
16414
16780
  hijackMethod(_global, nameOfMethodToReplace, clock);
16415
16781
  }
16416
- if (clock.timersModuleMethods !== undefined && timersModule[nameOfMethodToReplace]) {
16782
+ if (clock.timersModuleMethods !== void 0 && timersModule[nameOfMethodToReplace]) {
16417
16783
  const original = timersModule[nameOfMethodToReplace];
16418
16784
  clock.timersModuleMethods.push({
16419
16785
  methodName: nameOfMethodToReplace,
@@ -16421,7 +16787,7 @@ To automatically clean-up native timers, use \`shouldClearNativeTimers\`.`
16421
16787
  });
16422
16788
  timersModule[nameOfMethodToReplace] = _global[nameOfMethodToReplace];
16423
16789
  }
16424
- if (clock.timersPromisesModuleMethods !== undefined) {
16790
+ if (clock.timersPromisesModuleMethods !== void 0) {
16425
16791
  if (nameOfMethodToReplace === "setTimeout") {
16426
16792
  clock.timersPromisesModuleMethods.push({
16427
16793
  methodName: "setTimeout",
@@ -16564,7 +16930,7 @@ To automatically clean-up native timers, use \`shouldClearNativeTimers\`.`
16564
16930
  throw options.signal.reason;
16565
16931
  }
16566
16932
  if (done) {
16567
- return { done: true, value: undefined };
16933
+ return { done: true, value: void 0 };
16568
16934
  }
16569
16935
  if (nextAvailable > 0) {
16570
16936
  nextAvailable--;
@@ -16581,13 +16947,13 @@ To automatically clean-up native timers, use \`shouldClearNativeTimers\`.`
16581
16947
  throw options.signal.reason;
16582
16948
  }
16583
16949
  if (done) {
16584
- return { done: true, value: undefined };
16950
+ return { done: true, value: void 0 };
16585
16951
  }
16586
16952
  return { done: false, value };
16587
16953
  },
16588
16954
  return: async () => {
16589
16955
  if (done) {
16590
- return { done: true, value: undefined };
16956
+ return { done: true, value: void 0 };
16591
16957
  }
16592
16958
  if (nextQueue.length > 0) {
16593
16959
  returnCall = createResolvable();
@@ -16602,7 +16968,7 @@ To automatically clean-up native timers, use \`shouldClearNativeTimers\`.`
16602
16968
  );
16603
16969
  clock.abortListenerMap.delete(abort);
16604
16970
  }
16605
- return { done: true, value: undefined };
16971
+ return { done: true, value: void 0 };
16606
16972
  }
16607
16973
  };
16608
16974
  }
@@ -16630,6 +16996,12 @@ var fakeTimersSrcExports = requireFakeTimersSrc();
16630
16996
  var FakeTimers = class {
16631
16997
  _global;
16632
16998
  _clock;
16999
+ // | _fakingTime | _fakingDate |
17000
+ // +-------------+-------------+
17001
+ // | false | falsy | initial
17002
+ // | false | truethy | vi.setSystemTime called first (for mocking only Date without fake timers)
17003
+ // | true | falsy | vi.useFakeTimers called first
17004
+ // | true | truethy | unreachable
16633
17005
  _fakingTime;
16634
17006
  _fakingDate;
16635
17007
  _fakeTimers;
@@ -16640,7 +17012,7 @@ var FakeTimers = class {
16640
17012
  config: config2
16641
17013
  }) {
16642
17014
  this._userConfig = config2;
16643
- this._fakingDate = false;
17015
+ this._fakingDate = null;
16644
17016
  this._fakingTime = false;
16645
17017
  this._fakeTimers = fakeTimersSrcExports.withGlobal(global3);
16646
17018
  this._global = global3;
@@ -16718,7 +17090,7 @@ var FakeTimers = class {
16718
17090
  useRealTimers() {
16719
17091
  if (this._fakingDate) {
16720
17092
  resetDate();
16721
- this._fakingDate = false;
17093
+ this._fakingDate = null;
16722
17094
  }
16723
17095
  if (this._fakingTime) {
16724
17096
  this._clock.uninstall();
@@ -16733,7 +17105,7 @@ var FakeTimers = class {
16733
17105
  }
16734
17106
  if (!this._fakingTime) {
16735
17107
  const toFake = Object.keys(this._fakeTimers.timers).filter(
16736
- (timer) => timer !== "nextTick"
17108
+ (timer) => timer !== "nextTick" && timer !== "queueMicrotask"
16737
17109
  );
16738
17110
  if (this._userConfig?.toFake?.includes("nextTick") && isChildProcess()) {
16739
17111
  throw new Error(
@@ -16757,13 +17129,17 @@ var FakeTimers = class {
16757
17129
  }
16758
17130
  }
16759
17131
  setSystemTime(now3) {
17132
+ const date = typeof now3 === "undefined" || now3 instanceof Date ? now3 : new Date(now3);
16760
17133
  if (this._fakingTime) {
16761
- this._clock.setSystemTime(now3);
17134
+ this._clock.setSystemTime(date);
16762
17135
  } else {
16763
- mockDate(now3 ?? this.getRealSystemTime());
16764
- this._fakingDate = true;
17136
+ this._fakingDate = date ?? new Date(this.getRealSystemTime());
17137
+ mockDate(this._fakingDate);
16765
17138
  }
16766
17139
  }
17140
+ getMockedSystemTime() {
17141
+ return this._fakingTime ? new Date(this._clock.now) : this._fakingDate;
17142
+ }
16767
17143
  getRealSystemTime() {
16768
17144
  return this._now();
16769
17145
  }
@@ -16789,7 +17165,7 @@ var FakeTimers = class {
16789
17165
  }
16790
17166
  };
16791
17167
  function copyStackTrace(target, source) {
16792
- if (source.stack !== undefined) {
17168
+ if (source.stack !== void 0) {
16793
17169
  target.stack = source.stack.replace(source.message, target.message);
16794
17170
  }
16795
17171
  return target;
@@ -16932,7 +17308,6 @@ function waitUntil(callback, options = {}) {
16932
17308
  });
16933
17309
  }
16934
17310
  function createVitest() {
16935
- let _mockedDate = null;
16936
17311
  let _config = null;
16937
17312
  const workerState = getWorkerState();
16938
17313
  let _timers;
@@ -16965,7 +17340,6 @@ function createVitest() {
16965
17340
  },
16966
17341
  useRealTimers() {
16967
17342
  timers().useRealTimers();
16968
- _mockedDate = null;
16969
17343
  return utils;
16970
17344
  },
16971
17345
  runOnlyPendingTimers() {
@@ -17012,13 +17386,11 @@ function createVitest() {
17012
17386
  return timers().getTimerCount();
17013
17387
  },
17014
17388
  setSystemTime(time) {
17015
- const date = time instanceof Date ? time : new Date(time);
17016
- _mockedDate = date;
17017
- timers().setSystemTime(date);
17389
+ timers().setSystemTime(time);
17018
17390
  return utils;
17019
17391
  },
17020
17392
  getMockedSystemTime() {
17021
- return _mockedDate;
17393
+ return timers().getMockedSystemTime();
17022
17394
  },
17023
17395
  getRealSystemTime() {
17024
17396
  return timers().getRealSystemTime();
@@ -17140,7 +17512,7 @@ function createVitest() {
17140
17512
  }
17141
17513
  if (_envBooleans.includes(name)) {
17142
17514
  process.env[name] = value ? "1" : "";
17143
- } else if (value === undefined) {
17515
+ } else if (value === void 0) {
17144
17516
  delete process.env[name];
17145
17517
  } else {
17146
17518
  process.env[name] = String(value);
@@ -17160,7 +17532,7 @@ function createVitest() {
17160
17532
  },
17161
17533
  unstubAllEnvs() {
17162
17534
  _stubsEnv.forEach((original, name) => {
17163
- if (original === undefined) {
17535
+ if (original === void 0) {
17164
17536
  delete process.env[name];
17165
17537
  } else {
17166
17538
  process.env[name] = original;
@@ -17214,7 +17586,7 @@ function getImporter(name) {
17214
17586
  return stack?.file || "";
17215
17587
  }
17216
17588
 
17217
- // ../../node_modules/.pnpm/vitest@3.0.4_@edge-runtime+vm@3.2.0_@types+debug@4.1.12_@types+node@22.13.1_jiti@2.4.2_jsdom@_tsdoks2dgqz77qqt66opozk4oi/node_modules/vitest/dist/chunks/run-once.2ogXb3JV.js
17589
+ // ../../node_modules/.pnpm/vitest@3.0.6_@edge-runtime+_01083f24f12a90babd2af6c0c5bfaac9/node_modules/vitest/dist/chunks/run-once.2ogXb3JV.js
17218
17590
  var filesCount = /* @__PURE__ */ new Map();
17219
17591
  var cache = /* @__PURE__ */ new Map();
17220
17592
  function runOnce(fn2, key) {
@@ -17237,7 +17609,7 @@ function isFirstRun() {
17237
17609
  return firstRun;
17238
17610
  }
17239
17611
 
17240
- // ../../node_modules/.pnpm/vitest@3.0.4_@edge-runtime+vm@3.2.0_@types+debug@4.1.12_@types+node@22.13.1_jiti@2.4.2_jsdom@_tsdoks2dgqz77qqt66opozk4oi/node_modules/vitest/dist/chunks/benchmark.Cdu9hjj4.js
17612
+ // ../../node_modules/.pnpm/vitest@3.0.6_@edge-runtime+_01083f24f12a90babd2af6c0c5bfaac9/node_modules/vitest/dist/chunks/benchmark.Cdu9hjj4.js
17241
17613
  var benchFns = /* @__PURE__ */ new WeakMap();
17242
17614
  var benchOptsMap = /* @__PURE__ */ new WeakMap();
17243
17615
  var bench = createBenchmark(function(name, fn2 = noop, options = {}) {
@@ -17266,7 +17638,7 @@ function formatName2(name) {
17266
17638
  return typeof name === "string" ? name : name instanceof Function ? name.name || "<anonymous>" : String(name);
17267
17639
  }
17268
17640
 
17269
- // ../../node_modules/.pnpm/vitest@3.0.4_@edge-runtime+vm@3.2.0_@types+debug@4.1.12_@types+node@22.13.1_jiti@2.4.2_jsdom@_tsdoks2dgqz77qqt66opozk4oi/node_modules/vitest/dist/chunks/index.Bf4FgyZN.js
17641
+ // ../../node_modules/.pnpm/vitest@3.0.6_@edge-runtime+_01083f24f12a90babd2af6c0c5bfaac9/node_modules/vitest/dist/chunks/index.SduP00mx.js
17270
17642
  __toESM(require_dist(), 1);
17271
17643
  function getRunningMode() {
17272
17644
  return process.env.VITEST_MODE === "WATCH" ? "watch" : "run";
@@ -17277,7 +17649,7 @@ function isWatchMode() {
17277
17649
  var assertType = function assertType2() {
17278
17650
  };
17279
17651
 
17280
- // ../../node_modules/.pnpm/vitest@3.0.4_@edge-runtime+vm@3.2.0_@types+debug@4.1.12_@types+node@22.13.1_jiti@2.4.2_jsdom@_tsdoks2dgqz77qqt66opozk4oi/node_modules/vitest/dist/index.js
17652
+ // ../../node_modules/.pnpm/vitest@3.0.6_@edge-runtime+_01083f24f12a90babd2af6c0c5bfaac9/node_modules/vitest/dist/index.js
17281
17653
  var import_expect_type2 = __toESM(require_dist(), 1);
17282
17654
  var export_expectTypeOf = import_expect_type2.expectTypeOf;
17283
17655
  /*! Bundled license information: