@rstest/core 0.4.1 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -8,7 +8,6 @@ import * as __WEBPACK_EXTERNAL_MODULE_node_module_ab9f2194__ from "node:module";
8
8
  import * as __WEBPACK_EXTERNAL_MODULE_node_os_74b4b876__ from "node:os";
9
9
  import * as __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__ from "node:path";
10
10
  import * as __WEBPACK_EXTERNAL_MODULE_node_tty_c64aab7e__ from "node:tty";
11
- import * as __WEBPACK_EXTERNAL_MODULE_pathe__ from "pathe";
12
11
  import * as __WEBPACK_EXTERNAL_MODULE_node_process_786449bf__ from "node:process";
13
12
  import * as __WEBPACK_EXTERNAL_MODULE_url__ from "url";
14
13
  import * as __WEBPACK_EXTERNAL_MODULE_module__ from "module";
@@ -1976,7 +1975,7 @@ ${section.body}` : section.body).join("\n\n"));
1976
1975
  }
1977
1976
  const cac = (name = "")=>new CAC(name);
1978
1977
  const dist = cac;
1979
- var external_pathe_ = __webpack_require__("pathe");
1978
+ var pathe_M_eThtNZ = __webpack_require__("../../node_modules/.pnpm/pathe@2.0.3/node_modules/pathe/dist/shared/pathe.M-eThtNZ.mjs");
1980
1979
  var helper = __webpack_require__("./src/utils/helper.ts");
1981
1980
  var logger = __webpack_require__("./src/utils/logger.ts");
1982
1981
  var prepare = __webpack_require__("./src/cli/prepare.ts");
@@ -1991,14 +1990,14 @@ ${section.body}` : section.body).join("\n\n"));
1991
1990
  const { initCli } = await __webpack_require__.e("223").then(__webpack_require__.bind(__webpack_require__, "./src/cli/init.ts"));
1992
1991
  const { config, configFilePath, projects } = await initCli(options);
1993
1992
  const { createRstest } = await Promise.all([
1994
- __webpack_require__.e("120"),
1995
- __webpack_require__.e("669")
1993
+ __webpack_require__.e("908"),
1994
+ __webpack_require__.e("876")
1996
1995
  ]).then(__webpack_require__.bind(__webpack_require__, "./src/core/index.ts"));
1997
1996
  rstest = createRstest({
1998
1997
  config,
1999
1998
  configFilePath,
2000
1999
  projects
2001
- }, command, filters.map(external_pathe_.normalize));
2000
+ }, command, filters.map(pathe_M_eThtNZ.n));
2002
2001
  if ('watch' === command && configFilePath) {
2003
2002
  const { watchFilesForRestart } = await __webpack_require__.e("967").then(__webpack_require__.bind(__webpack_require__, "./src/core/restart.ts"));
2004
2003
  watchFilesForRestart({
@@ -2018,7 +2017,7 @@ ${section.body}` : section.body).join("\n\n"));
2018
2017
  function setupCommands() {
2019
2018
  const cli = dist('rstest');
2020
2019
  cli.help();
2021
- cli.version("0.4.1");
2020
+ cli.version("0.5.0");
2022
2021
  applyCommonOptions(cli);
2023
2022
  cli.command('[...filters]', 'run tests').option('-w, --watch', 'Run tests in watch mode').action(async (filters, options)=>{
2024
2023
  (0, prepare.N)();
@@ -2054,14 +2053,14 @@ ${section.body}` : section.body).join("\n\n"));
2054
2053
  const { initCli } = await __webpack_require__.e("223").then(__webpack_require__.bind(__webpack_require__, "./src/cli/init.ts"));
2055
2054
  const { config, configFilePath, projects } = await initCli(options);
2056
2055
  const { createRstest } = await Promise.all([
2057
- __webpack_require__.e("120"),
2058
- __webpack_require__.e("669")
2056
+ __webpack_require__.e("908"),
2057
+ __webpack_require__.e("876")
2059
2058
  ]).then(__webpack_require__.bind(__webpack_require__, "./src/core/index.ts"));
2060
2059
  const rstest = createRstest({
2061
2060
  config,
2062
2061
  configFilePath,
2063
2062
  projects
2064
- }, 'list', filters.map(external_pathe_.normalize));
2063
+ }, 'list', filters.map(pathe_M_eThtNZ.n));
2065
2064
  await rstest.listTests({
2066
2065
  filesOnly: options.filesOnly,
2067
2066
  json: options.json
@@ -2091,7 +2090,7 @@ ${section.body}` : section.body).join("\n\n"));
2091
2090
  if (!npm_execpath || npm_execpath.includes('npx-cli.js') || npm_execpath.includes('.bun')) console.log();
2092
2091
  }
2093
2092
  function showRstest() {
2094
- _utils_logger__WEBPACK_IMPORTED_MODULE_0__.vF.greet(" Rstest v0.4.1");
2093
+ _utils_logger__WEBPACK_IMPORTED_MODULE_0__.vF.greet(" Rstest v0.5.0");
2095
2094
  _utils_logger__WEBPACK_IMPORTED_MODULE_0__.vF.log('');
2096
2095
  }
2097
2096
  },
@@ -2101,32 +2100,32 @@ ${section.body}` : section.body).join("\n\n"));
2101
2100
  Z9: ()=>loadConfig,
2102
2101
  wX: ()=>withDefaultConfig
2103
2102
  });
2104
- var node_fs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("fs");
2103
+ var node_fs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("node:fs");
2105
2104
  var _rsbuild_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("@rsbuild/core");
2106
- var pathe__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("pathe");
2107
- var _utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("./src/utils/index.ts");
2108
- const findConfig = (basePath)=>_utils__WEBPACK_IMPORTED_MODULE_3__.kv.map((ext)=>basePath + ext).find(node_fs__WEBPACK_IMPORTED_MODULE_0__["default"].existsSync);
2105
+ var pathe__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("../../node_modules/.pnpm/pathe@2.0.3/node_modules/pathe/dist/shared/pathe.M-eThtNZ.mjs");
2106
+ var _utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("./src/utils/index.ts");
2107
+ const findConfig = (basePath)=>_utils__WEBPACK_IMPORTED_MODULE_2__.kv.map((ext)=>basePath + ext).find(node_fs__WEBPACK_IMPORTED_MODULE_0__["default"].existsSync);
2109
2108
  const resolveConfigPath = (root, customConfig)=>{
2110
2109
  if (customConfig) {
2111
- const customConfigPath = (0, pathe__WEBPACK_IMPORTED_MODULE_2__.isAbsolute)(customConfig) ? customConfig : (0, pathe__WEBPACK_IMPORTED_MODULE_2__.join)(root, customConfig);
2110
+ const customConfigPath = (0, pathe__WEBPACK_IMPORTED_MODULE_3__.i)(customConfig) ? customConfig : (0, pathe__WEBPACK_IMPORTED_MODULE_3__.j)(root, customConfig);
2112
2111
  if (node_fs__WEBPACK_IMPORTED_MODULE_0__["default"].existsSync(customConfigPath)) return customConfigPath;
2113
- throw `Cannot find config file: ${_utils__WEBPACK_IMPORTED_MODULE_3__.yW.dim(customConfigPath)}`;
2112
+ throw `Cannot find config file: ${_utils__WEBPACK_IMPORTED_MODULE_2__.yW.dim(customConfigPath)}`;
2114
2113
  }
2115
- const configFilePath = findConfig((0, pathe__WEBPACK_IMPORTED_MODULE_2__.join)(root, _utils__WEBPACK_IMPORTED_MODULE_3__.t));
2114
+ const configFilePath = findConfig((0, pathe__WEBPACK_IMPORTED_MODULE_3__.j)(root, _utils__WEBPACK_IMPORTED_MODULE_2__.t));
2116
2115
  if (configFilePath) return configFilePath;
2117
2116
  return null;
2118
2117
  };
2119
2118
  async function loadConfig({ cwd = process.cwd(), path, envMode, configLoader }) {
2120
2119
  const configFilePath = resolveConfigPath(cwd, path);
2121
2120
  if (!configFilePath) {
2122
- _utils__WEBPACK_IMPORTED_MODULE_3__.vF.debug('no rstest config file found');
2121
+ _utils__WEBPACK_IMPORTED_MODULE_2__.vF.debug('no rstest config file found');
2123
2122
  return {
2124
2123
  content: {},
2125
2124
  filePath: configFilePath
2126
2125
  };
2127
2126
  }
2128
2127
  const { content } = await (0, _rsbuild_core__WEBPACK_IMPORTED_MODULE_1__.loadConfig)({
2129
- cwd: (0, pathe__WEBPACK_IMPORTED_MODULE_2__.dirname)(configFilePath),
2128
+ cwd: (0, pathe__WEBPACK_IMPORTED_MODULE_3__.d)(configFilePath),
2130
2129
  path: configFilePath,
2131
2130
  envMode,
2132
2131
  loader: configLoader
@@ -2136,18 +2135,37 @@ ${section.body}` : section.body).join("\n\n"));
2136
2135
  filePath: configFilePath
2137
2136
  };
2138
2137
  }
2139
- const mergeRstestConfig = (...configs)=>(0, _rsbuild_core__WEBPACK_IMPORTED_MODULE_1__.mergeRsbuildConfig)(...configs);
2138
+ const mergeRstestConfig = (...configs)=>configs.reduce((result, config)=>{
2139
+ const merged = (0, _rsbuild_core__WEBPACK_IMPORTED_MODULE_1__.mergeRsbuildConfig)(result, {
2140
+ ...config,
2141
+ exclude: Array.isArray(config.exclude) ? {
2142
+ patterns: config.exclude,
2143
+ override: false
2144
+ } : config.exclude
2145
+ });
2146
+ if (!Array.isArray(config.exclude) && config.exclude?.override) merged.exclude = {
2147
+ patterns: config.exclude.patterns
2148
+ };
2149
+ merged.include = config.include ?? merged.include;
2150
+ merged.reporters = config.reporters ?? merged.reporters;
2151
+ if (merged.coverage) merged.coverage.reporters = config.coverage?.reporters ?? merged.coverage?.reporters;
2152
+ return merged;
2153
+ }, {});
2140
2154
  const createDefaultConfig = ()=>({
2141
2155
  root: process.cwd(),
2142
2156
  name: 'rstest',
2143
2157
  include: [
2144
2158
  '**/*.{test,spec}.?(c|m)[jt]s?(x)'
2145
2159
  ],
2146
- exclude: [
2147
- '**/node_modules/**',
2148
- '**/dist/**',
2149
- '**/.{idea,git,cache,output,temp}/**'
2150
- ],
2160
+ exclude: {
2161
+ patterns: [
2162
+ '**/node_modules/**',
2163
+ '**/dist/**',
2164
+ '**/.{idea,git,cache,output,temp}/**'
2165
+ ],
2166
+ override: false
2167
+ },
2168
+ setupFiles: [],
2151
2169
  includeSource: [],
2152
2170
  pool: {
2153
2171
  type: 'forks'
@@ -2178,10 +2196,12 @@ ${section.body}` : section.body).join("\n\n"));
2178
2196
  coverage: {
2179
2197
  exclude: [
2180
2198
  '**/node_modules/**',
2199
+ '**/[.]*',
2181
2200
  '**/dist/**',
2182
2201
  '**/test/**',
2183
2202
  '**/__tests__/**',
2184
2203
  '**/__mocks__/**',
2204
+ '**/*.d.ts',
2185
2205
  '**/*.{test,spec}.[jt]s',
2186
2206
  '**/*.{test,spec}.[c|m][jt]s',
2187
2207
  '**/*.{test,spec}.[jt]sx',
@@ -2201,19 +2221,23 @@ ${section.body}` : section.body).join("\n\n"));
2201
2221
  });
2202
2222
  const withDefaultConfig = (config)=>{
2203
2223
  const merged = mergeRstestConfig(createDefaultConfig(), config);
2204
- merged.include = config.include || merged.include;
2205
- merged.exclude = (config.exclude || merged.exclude || []).concat([
2206
- _utils__WEBPACK_IMPORTED_MODULE_3__.EJ
2207
- ]);
2208
- merged.reporters = config.reporters ?? merged.reporters;
2209
- merged.coverage ??= {};
2210
- merged.coverage.reporters = config.coverage?.reporters ?? merged.coverage?.reporters;
2211
- const reportsDirectory = merged.coverage.reportsDirectory;
2212
- merged.coverage.reportsDirectory = (0, pathe__WEBPACK_IMPORTED_MODULE_2__.isAbsolute)(reportsDirectory) ? reportsDirectory : (0, pathe__WEBPACK_IMPORTED_MODULE_2__.resolve)(merged.root, reportsDirectory);
2224
+ merged.setupFiles = (0, _utils__WEBPACK_IMPORTED_MODULE_2__.bg)(merged.setupFiles);
2225
+ merged.exclude.patterns.push(_utils__WEBPACK_IMPORTED_MODULE_2__.EJ);
2226
+ const reportsDirectory = (0, _utils__WEBPACK_IMPORTED_MODULE_2__.tS)(merged.coverage.reportsDirectory, merged.root);
2227
+ merged.coverage.reportsDirectory = (0, pathe__WEBPACK_IMPORTED_MODULE_3__.i)(reportsDirectory) ? reportsDirectory : (0, pathe__WEBPACK_IMPORTED_MODULE_3__.r)(merged.root, reportsDirectory);
2213
2228
  merged.pool = 'string' == typeof config.pool ? {
2214
2229
  type: config.pool
2215
2230
  } : merged.pool;
2216
- return merged;
2231
+ return {
2232
+ ...merged,
2233
+ include: merged.include.map((p)=>(0, _utils__WEBPACK_IMPORTED_MODULE_2__.tS)(p, merged.root)),
2234
+ exclude: {
2235
+ ...merged.exclude,
2236
+ patterns: merged.exclude.patterns.map((p)=>(0, _utils__WEBPACK_IMPORTED_MODULE_2__.tS)(p, merged.root))
2237
+ },
2238
+ setupFiles: merged.setupFiles.map((p)=>(0, _utils__WEBPACK_IMPORTED_MODULE_2__.tS)(p, merged.root)),
2239
+ includeSource: merged.includeSource.map((p)=>(0, _utils__WEBPACK_IMPORTED_MODULE_2__.tS)(p, merged.root))
2240
+ };
2217
2241
  };
2218
2242
  },
2219
2243
  "./src/utils/constants.ts": function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
@@ -2249,19 +2273,21 @@ ${section.body}` : section.body).join("\n\n"));
2249
2273
  bg: ()=>castArray,
2250
2274
  fN: ()=>getTaskNameWithPrefix,
2251
2275
  kV: ()=>prettyTime,
2252
- yW: ()=>picocolors__WEBPACK_IMPORTED_MODULE_2___default.a
2276
+ tS: ()=>formatRootStr,
2277
+ yW: ()=>picocolors__WEBPACK_IMPORTED_MODULE_1___default.a
2253
2278
  });
2254
- var pathe__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("pathe");
2255
- var picocolors__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("../../node_modules/.pnpm/picocolors@1.1.1/node_modules/picocolors/picocolors.js");
2256
- var picocolors__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/ __webpack_require__.n(picocolors__WEBPACK_IMPORTED_MODULE_2__);
2279
+ var pathe__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("../../node_modules/.pnpm/pathe@2.0.3/node_modules/pathe/dist/shared/pathe.M-eThtNZ.mjs");
2280
+ var picocolors__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("../../node_modules/.pnpm/picocolors@1.1.1/node_modules/picocolors/picocolors.js");
2281
+ var picocolors__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/ __webpack_require__.n(picocolors__WEBPACK_IMPORTED_MODULE_1__);
2257
2282
  __webpack_require__("./src/utils/constants.ts");
2283
+ const formatRootStr = (rootStr, root)=>rootStr.replace('<rootDir>', root);
2258
2284
  function getAbsolutePath(base, filepath) {
2259
- return (0, pathe__WEBPACK_IMPORTED_MODULE_0__.isAbsolute)(filepath) ? filepath : (0, pathe__WEBPACK_IMPORTED_MODULE_0__.join)(base, filepath);
2285
+ return (0, pathe__WEBPACK_IMPORTED_MODULE_2__.i)(filepath) ? filepath : (0, pathe__WEBPACK_IMPORTED_MODULE_2__.j)(base, filepath);
2260
2286
  }
2261
2287
  const parsePosix = (filePath)=>{
2262
- const { dir, base } = (0, pathe__WEBPACK_IMPORTED_MODULE_0__.parse)(filePath);
2288
+ const { dir, base } = (0, pathe__WEBPACK_IMPORTED_MODULE_2__.p)(filePath);
2263
2289
  return {
2264
- dir: dir.split(pathe__WEBPACK_IMPORTED_MODULE_0__.sep).join('/'),
2290
+ dir: dir.split(pathe__WEBPACK_IMPORTED_MODULE_2__.s).join('/'),
2265
2291
  base
2266
2292
  };
2267
2293
  };
@@ -2414,6 +2440,7 @@ ${section.body}` : section.body).join("\n\n"));
2414
2440
  mT: ()=>logger.mT,
2415
2441
  t: ()=>constants.t,
2416
2442
  kV: ()=>helper.kV,
2443
+ tS: ()=>helper.tS,
2417
2444
  EJ: ()=>constants.EJ,
2418
2445
  bg: ()=>helper.bg,
2419
2446
  Un: ()=>helper.Un
@@ -2421,19 +2448,19 @@ ${section.body}` : section.body).join("\n\n"));
2421
2448
  var constants = __webpack_require__("./src/utils/constants.ts");
2422
2449
  var helper = __webpack_require__("./src/utils/helper.ts");
2423
2450
  var logger = __webpack_require__("./src/utils/logger.ts");
2424
- var external_node_fs_ = __webpack_require__("fs");
2451
+ var external_node_fs_ = __webpack_require__("node:fs");
2425
2452
  var promises_ = __webpack_require__("node:fs/promises");
2426
2453
  var external_node_module_ = __webpack_require__("node:module");
2427
- var external_pathe_ = __webpack_require__("pathe");
2428
- var dist = __webpack_require__("../../node_modules/.pnpm/tinyglobby@0.2.15/node_modules/tinyglobby/dist/index.mjs");
2454
+ var dist = __webpack_require__("../../node_modules/.pnpm/pathe@2.0.3/node_modules/pathe/dist/index.mjs");
2455
+ var tinyglobby_dist = __webpack_require__("../../node_modules/.pnpm/tinyglobby@0.2.15/node_modules/tinyglobby/dist/index.mjs");
2429
2456
  const filterFiles = (testFiles, filters, dir)=>{
2430
2457
  if (!filters.length) return testFiles;
2431
- const fileFilters = 'win32' === process.platform ? filters.map((f)=>f.split(external_pathe_["default"].sep).join('/')) : filters;
2458
+ const fileFilters = 'win32' === process.platform ? filters.map((f)=>f.split(dist.Ay.sep).join('/')) : filters;
2432
2459
  return testFiles.filter((t)=>{
2433
- const testFile = external_pathe_["default"].relative(dir, t).toLocaleLowerCase();
2460
+ const testFile = dist.Ay.relative(dir, t).toLocaleLowerCase();
2434
2461
  return fileFilters.some((f)=>{
2435
- if (external_pathe_["default"].isAbsolute(f) && t.startsWith(f)) return true;
2436
- const relativePath = f.endsWith('/') ? external_pathe_["default"].join(external_pathe_["default"].relative(dir, f), '/') : external_pathe_["default"].relative(dir, f);
2462
+ if (dist.Ay.isAbsolute(f) && t.startsWith(f)) return true;
2463
+ const relativePath = f.endsWith('/') ? dist.Ay.join(dist.Ay.relative(dir, f), '/') : dist.Ay.relative(dir, f);
2437
2464
  return testFile.includes(f.toLocaleLowerCase()) || testFile.includes(relativePath.toLocaleLowerCase());
2438
2465
  });
2439
2466
  });
@@ -2452,7 +2479,7 @@ ${section.body}` : section.body).join("\n\n"));
2452
2479
  const hasInSourceTestCode = (code)=>code.includes('import.meta.rstest');
2453
2480
  const formatTestEntryName = (name)=>name.replace(/\.*[/\\]/g, '_').replace(/\./g, '~');
2454
2481
  const getTestEntries = async ({ include, exclude, rootPath, projectRoot, fileFilters, includeSource })=>{
2455
- const testFiles = await (0, dist.glob)(include, {
2482
+ const testFiles = await (0, tinyglobby_dist.glob)(include, {
2456
2483
  cwd: projectRoot,
2457
2484
  absolute: true,
2458
2485
  ignore: exclude,
@@ -2460,7 +2487,7 @@ ${section.body}` : section.body).join("\n\n"));
2460
2487
  expandDirectories: false
2461
2488
  });
2462
2489
  if (includeSource?.length) {
2463
- const sourceFiles = await (0, dist.glob)(includeSource, {
2490
+ const sourceFiles = await (0, tinyglobby_dist.glob)(includeSource, {
2464
2491
  cwd: projectRoot,
2465
2492
  absolute: true,
2466
2493
  ignore: exclude,
@@ -2477,7 +2504,7 @@ ${section.body}` : section.body).join("\n\n"));
2477
2504
  }));
2478
2505
  }
2479
2506
  return Object.fromEntries(filterFiles(testFiles, fileFilters, rootPath).map((entry)=>{
2480
- const relativePath = external_pathe_["default"].relative(rootPath, entry);
2507
+ const relativePath = dist.Ay.relative(rootPath, entry);
2481
2508
  return [
2482
2509
  formatTestEntryName(relativePath),
2483
2510
  entry
@@ -2496,7 +2523,9 @@ ${section.body}` : section.body).join("\n\n"));
2496
2523
  return;
2497
2524
  }
2498
2525
  };
2499
- const getSetupFiles = (setups, rootPath)=>Object.fromEntries((0, helper.bg)(setups).map((setupFile)=>{
2526
+ const getSetupFiles = (setups, rootPath)=>{
2527
+ if (!setups.length) return {};
2528
+ return Object.fromEntries(setups.map((setupFile)=>{
2500
2529
  const setupFilePath = (0, helper.FI)(rootPath, setupFile);
2501
2530
  try {
2502
2531
  if (!(0, external_node_fs_.existsSync)(setupFilePath)) {
@@ -2504,7 +2533,7 @@ ${section.body}` : section.body).join("\n\n"));
2504
2533
  if (setupFilePath !== setupFile) errorMessage += helper.yW.gray(` (resolved path: ${setupFilePath})`);
2505
2534
  throw errorMessage;
2506
2535
  }
2507
- const relativePath = external_pathe_["default"].relative(rootPath, setupFilePath);
2536
+ const relativePath = dist.Ay.relative(rootPath, setupFilePath);
2508
2537
  return [
2509
2538
  formatTestEntryName(relativePath),
2510
2539
  setupFilePath
@@ -2517,13 +2546,14 @@ ${section.body}` : section.body).join("\n\n"));
2517
2546
  throw err;
2518
2547
  }
2519
2548
  }));
2549
+ };
2520
2550
  const prettyTestPath = (testPath)=>{
2521
2551
  const { dir, base } = (0, helper.P2)(testPath);
2522
2552
  return `${'.' !== dir ? helper.yW.gray(`${dir}/`) : ''}${helper.yW.cyan(base)}`;
2523
2553
  };
2524
2554
  const formatTestPath = (root, testFilePath)=>{
2525
2555
  let testPath = testFilePath;
2526
- if (external_pathe_["default"].isAbsolute(testPath) && testPath.includes(root)) testPath = external_pathe_["default"].relative(root, testPath);
2556
+ if (dist.Ay.isAbsolute(testPath) && testPath.includes(root)) testPath = dist.Ay.relative(root, testPath);
2527
2557
  return prettyTestPath(testPath);
2528
2558
  };
2529
2559
  },
@@ -2816,7 +2846,7 @@ ${section.body}` : section.body).join("\n\n"));
2816
2846
  events: function(module) {
2817
2847
  module.exports = __WEBPACK_EXTERNAL_MODULE_events__;
2818
2848
  },
2819
- fs: function(module) {
2849
+ "node:fs": function(module) {
2820
2850
  module.exports = __WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__;
2821
2851
  },
2822
2852
  "node:fs/promises": function(module) {
@@ -2828,22 +2858,501 @@ ${section.body}` : section.body).join("\n\n"));
2828
2858
  "node:os": function(module) {
2829
2859
  module.exports = __WEBPACK_EXTERNAL_MODULE_node_os_74b4b876__;
2830
2860
  },
2831
- "node:path": function(module) {
2861
+ path: function(module) {
2832
2862
  module.exports = __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__;
2833
2863
  },
2834
2864
  "node:tty": function(module) {
2835
2865
  module.exports = __WEBPACK_EXTERNAL_MODULE_node_tty_c64aab7e__;
2836
2866
  },
2837
- pathe: function(module) {
2838
- module.exports = __WEBPACK_EXTERNAL_MODULE_pathe__;
2867
+ "../../node_modules/.pnpm/pathe@2.0.3/node_modules/pathe/dist/index.mjs": function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
2868
+ __webpack_require__.d(__webpack_exports__, {
2869
+ Ay: ()=>posix
2870
+ });
2871
+ var _shared_pathe_M_eThtNZ_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("../../node_modules/.pnpm/pathe@2.0.3/node_modules/pathe/dist/shared/pathe.M-eThtNZ.mjs");
2872
+ const delimiter = /* @__PURE__ */ (()=>globalThis.process?.platform === "win32" ? ";" : ":")();
2873
+ const _platforms = {
2874
+ posix: void 0,
2875
+ win32: void 0
2876
+ };
2877
+ const mix = (del = delimiter)=>new Proxy(_shared_pathe_M_eThtNZ_mjs__WEBPACK_IMPORTED_MODULE_0__._, {
2878
+ get (_, prop) {
2879
+ if ("delimiter" === prop) return del;
2880
+ if ("posix" === prop) return posix;
2881
+ if ("win32" === prop) return win32;
2882
+ return _platforms[prop] || _shared_pathe_M_eThtNZ_mjs__WEBPACK_IMPORTED_MODULE_0__._[prop];
2883
+ }
2884
+ });
2885
+ const posix = /* @__PURE__ */ mix(":");
2886
+ const win32 = /* @__PURE__ */ mix(";");
2887
+ },
2888
+ "../../node_modules/.pnpm/pathe@2.0.3/node_modules/pathe/dist/shared/pathe.M-eThtNZ.mjs": function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
2889
+ __webpack_require__.d(__webpack_exports__, {
2890
+ _: ()=>_path,
2891
+ b: ()=>relative,
2892
+ c: ()=>basename,
2893
+ d: ()=>dirname,
2894
+ i: ()=>isAbsolute,
2895
+ j: ()=>join,
2896
+ n: ()=>normalize,
2897
+ p: ()=>parse,
2898
+ r: ()=>resolve,
2899
+ s: ()=>sep
2900
+ });
2901
+ let _lazyMatch = ()=>{
2902
+ var __lib__ = (()=>{
2903
+ var m = Object.defineProperty, V = Object.getOwnPropertyDescriptor, G = Object.getOwnPropertyNames, T = Object.prototype.hasOwnProperty, q = (r, e)=>{
2904
+ for(var n in e)m(r, n, {
2905
+ get: e[n],
2906
+ enumerable: true
2907
+ });
2908
+ }, H = (r, e, n, a)=>{
2909
+ if (e && "object" == typeof e || "function" == typeof e) for (let t of G(e))T.call(r, t) || t === n || m(r, t, {
2910
+ get: ()=>e[t],
2911
+ enumerable: !(a = V(e, t)) || a.enumerable
2912
+ });
2913
+ return r;
2914
+ }, J = (r)=>H(m({}, "__esModule", {
2915
+ value: true
2916
+ }), r), w = {};
2917
+ q(w, {
2918
+ default: ()=>re
2919
+ });
2920
+ var A = (r)=>Array.isArray(r), d = (r)=>"function" == typeof r, Q = (r)=>0 === r.length, W = (r)=>"number" == typeof r, K = (r)=>"object" == typeof r && null !== r, X = (r)=>r instanceof RegExp, b = (r)=>"string" == typeof r, h = (r)=>void 0 === r, Y = (r)=>{
2921
+ const e = new Map;
2922
+ return (n)=>{
2923
+ const a = e.get(n);
2924
+ if (a) return a;
2925
+ const t = r(n);
2926
+ return e.set(n, t), t;
2927
+ };
2928
+ }, rr = (r, e, n = {})=>{
2929
+ const a = {
2930
+ cache: {},
2931
+ input: r,
2932
+ index: 0,
2933
+ indexMax: 0,
2934
+ options: n,
2935
+ output: []
2936
+ };
2937
+ if (v(e)(a) && a.index === r.length) return a.output;
2938
+ throw new Error(`Failed to parse at index ${a.indexMax}`);
2939
+ }, i = (r, e)=>A(r) ? er(r, e) : b(r) ? ar(r, e) : nr(r, e), er = (r, e)=>{
2940
+ const n = {};
2941
+ for (const a of r){
2942
+ if (1 !== a.length) throw new Error(`Invalid character: "${a}"`);
2943
+ const t = a.charCodeAt(0);
2944
+ n[t] = true;
2945
+ }
2946
+ return (a)=>{
2947
+ const t = a.index, o = a.input;
2948
+ for(; a.index < o.length && o.charCodeAt(a.index) in n;)a.index += 1;
2949
+ const u = a.index;
2950
+ if (u > t) {
2951
+ if (!h(e) && !a.options.silent) {
2952
+ const s = a.input.slice(t, u), c = d(e) ? e(s, o, String(t)) : e;
2953
+ h(c) || a.output.push(c);
2954
+ }
2955
+ a.indexMax = Math.max(a.indexMax, a.index);
2956
+ }
2957
+ return true;
2958
+ };
2959
+ }, nr = (r, e)=>{
2960
+ const n = r.source, a = r.flags.replace(/y|$/, "y"), t = new RegExp(n, a);
2961
+ return g((o)=>{
2962
+ t.lastIndex = o.index;
2963
+ const u = t.exec(o.input);
2964
+ if (!u) return false;
2965
+ if (!h(e) && !o.options.silent) {
2966
+ const s = d(e) ? e(...u, o.input, String(o.index)) : e;
2967
+ h(s) || o.output.push(s);
2968
+ }
2969
+ return o.index += u[0].length, o.indexMax = Math.max(o.indexMax, o.index), true;
2970
+ });
2971
+ }, ar = (r, e)=>(n)=>{
2972
+ if (!n.input.startsWith(r, n.index)) return false;
2973
+ if (!h(e) && !n.options.silent) {
2974
+ const t = d(e) ? e(r, n.input, String(n.index)) : e;
2975
+ h(t) || n.output.push(t);
2976
+ }
2977
+ return n.index += r.length, n.indexMax = Math.max(n.indexMax, n.index), true;
2978
+ }, C = (r, e, n, a)=>{
2979
+ const t = v(r);
2980
+ return g(_(M((o)=>{
2981
+ let u = 0;
2982
+ for(; u < n;){
2983
+ const s = o.index;
2984
+ if (!t(o) || (u += 1, o.index === s)) break;
2985
+ }
2986
+ return u >= e;
2987
+ })));
2988
+ }, tr = (r, e)=>C(r, 0, 1), f = (r, e)=>C(r, 0, 1 / 0), x = (r, e)=>{
2989
+ const n = r.map(v);
2990
+ return g(_(M((a)=>{
2991
+ for(let t = 0, o = n.length; t < o; t++)if (!n[t](a)) return false;
2992
+ return true;
2993
+ })));
2994
+ }, l = (r, e)=>{
2995
+ const n = r.map(v);
2996
+ return g(_((a)=>{
2997
+ for(let t = 0, o = n.length; t < o; t++)if (n[t](a)) return true;
2998
+ return false;
2999
+ }));
3000
+ }, M = (r, e = false)=>{
3001
+ const n = v(r);
3002
+ return (a)=>{
3003
+ const t = a.index, o = a.output.length, u = n(a);
3004
+ return (!u || e) && (a.index = t, a.output.length !== o && (a.output.length = o)), u;
3005
+ };
3006
+ }, _ = (r, e)=>{
3007
+ const n = v(r);
3008
+ return n;
3009
+ }, g = (()=>{
3010
+ let r = 0;
3011
+ return (e)=>{
3012
+ const n = v(e), a = r += 1;
3013
+ return (t)=>{
3014
+ var o;
3015
+ if (false === t.options.memoization) return n(t);
3016
+ const u = t.index, s = (o = t.cache)[a] || (o[a] = new Map), c = s.get(u);
3017
+ if (false === c) return false;
3018
+ if (W(c)) return t.index = c, true;
3019
+ if (c) return t.index = c.index, c.output?.length && t.output.push(...c.output), true;
3020
+ {
3021
+ const Z = t.output.length;
3022
+ if (!n(t)) return s.set(u, false), false;
3023
+ {
3024
+ const D = t.index, U = t.output.length;
3025
+ if (U > Z) {
3026
+ const ee = t.output.slice(Z, U);
3027
+ s.set(u, {
3028
+ index: D,
3029
+ output: ee
3030
+ });
3031
+ } else s.set(u, D);
3032
+ return true;
3033
+ }
3034
+ }
3035
+ };
3036
+ };
3037
+ })(), E = (r)=>{
3038
+ let e;
3039
+ return (n)=>(e || (e = v(r())), e(n));
3040
+ }, v = Y((r)=>{
3041
+ if (d(r)) return Q(r) ? E(r) : r;
3042
+ if (b(r) || X(r)) return i(r);
3043
+ if (A(r)) return x(r);
3044
+ if (K(r)) return l(Object.values(r));
3045
+ throw new Error("Invalid rule");
3046
+ }), P = "abcdefghijklmnopqrstuvwxyz", ir = (r)=>{
3047
+ let e = "";
3048
+ for(; r > 0;){
3049
+ const n = (r - 1) % 26;
3050
+ e = P[n] + e, r = Math.floor((r - 1) / 26);
3051
+ }
3052
+ return e;
3053
+ }, O = (r)=>{
3054
+ let e = 0;
3055
+ for(let n = 0, a = r.length; n < a; n++)e = 26 * e + P.indexOf(r[n]) + 1;
3056
+ return e;
3057
+ }, S = (r, e)=>{
3058
+ if (e < r) return S(e, r);
3059
+ const n = [];
3060
+ for(; r <= e;)n.push(r++);
3061
+ return n;
3062
+ }, or = (r, e, n)=>S(r, e).map((a)=>String(a).padStart(n, "0")), R = (r, e)=>S(O(r), O(e)).map(ir), p = (r)=>r, z = (r)=>ur((e)=>rr(e, r, {
3063
+ memoization: false
3064
+ }).join("")), ur = (r)=>{
3065
+ const e = {};
3066
+ return (n)=>e[n] ?? (e[n] = r(n));
3067
+ }, sr = i(/^\*\*\/\*$/, ".*"), cr = i(/^\*\*\/(\*)?([ a-zA-Z0-9._-]+)$/, (r, e, n)=>`.*${e ? "" : "(?:^|/)"}${n.replaceAll(".", "\\.")}`), lr = i(/^\*\*\/(\*)?([ a-zA-Z0-9._-]*)\{([ a-zA-Z0-9._-]+(?:,[ a-zA-Z0-9._-]+)*)\}$/, (r, e, n, a)=>`.*${e ? "" : "(?:^|/)"}${n.replaceAll(".", "\\.")}(?:${a.replaceAll(",", "|").replaceAll(".", "\\.")})`), y = i(/\\./, p), pr = i(/[$.*+?^(){}[\]\|]/, (r)=>`\\${r}`), vr = i(/./, p), hr = i(/^(?:!!)*!(.*)$/, (r, e)=>`(?!^${L(e)}$).*?`), dr = i(/^(!!)+/, ""), fr = l([
3068
+ hr,
3069
+ dr
3070
+ ]), xr = i(/\/(\*\*\/)+/, "(?:/.+/|/)"), gr = i(/^(\*\*\/)+/, "(?:^|.*/)"), mr = i(/\/(\*\*)$/, "(?:/.*|$)"), _r = i(/\*\*/, ".*"), j = l([
3071
+ xr,
3072
+ gr,
3073
+ mr,
3074
+ _r
3075
+ ]), Sr = i(/\*\/(?!\*\*\/)/, "[^/]*/"), yr = i(/\*/, "[^/]*"), N = l([
3076
+ Sr,
3077
+ yr
3078
+ ]), k = i("?", "[^/]"), $r = i("[", p), wr = i("]", p), Ar = i(/[!^]/, "^/"), br = i(/[a-z]-[a-z]|[0-9]-[0-9]/i, p), Cr = i(/[$.*+?^(){}[\|]/, (r)=>`\\${r}`), Mr = i(/[^\]]/, p), Er = l([
3079
+ y,
3080
+ Cr,
3081
+ br,
3082
+ Mr
3083
+ ]), B = x([
3084
+ $r,
3085
+ tr(Ar),
3086
+ f(Er),
3087
+ wr
3088
+ ]), Pr = i("{", "(?:"), Or = i("}", ")"), Rr = i(/(\d+)\.\.(\d+)/, (r, e, n)=>or(+e, +n, Math.min(e.length, n.length)).join("|")), zr = i(/([a-z]+)\.\.([a-z]+)/, (r, e, n)=>R(e, n).join("|")), jr = i(/([A-Z]+)\.\.([A-Z]+)/, (r, e, n)=>R(e.toLowerCase(), n.toLowerCase()).join("|").toUpperCase()), Nr = l([
3089
+ Rr,
3090
+ zr,
3091
+ jr
3092
+ ]), I = x([
3093
+ Pr,
3094
+ Nr,
3095
+ Or
3096
+ ]), kr = i("{", "(?:"), Br = i("}", ")"), Ir = i(",", "|"), Fr = i(/[$.*+?^(){[\]\|]/, (r)=>`\\${r}`), Lr = i(/[^}]/, p), Zr = E(()=>F), Dr = l([
3097
+ j,
3098
+ N,
3099
+ k,
3100
+ B,
3101
+ I,
3102
+ Zr,
3103
+ y,
3104
+ Fr,
3105
+ Ir,
3106
+ Lr
3107
+ ]), F = x([
3108
+ kr,
3109
+ f(Dr),
3110
+ Br
3111
+ ]), Ur = f(l([
3112
+ sr,
3113
+ cr,
3114
+ lr,
3115
+ fr,
3116
+ j,
3117
+ N,
3118
+ k,
3119
+ B,
3120
+ I,
3121
+ F,
3122
+ y,
3123
+ pr,
3124
+ vr
3125
+ ])), Vr = Ur, Gr = z(Vr), L = Gr, Tr = i(/\\./, p), qr = i(/./, p), Hr = i(/\*\*\*+/, "*"), Jr = i(/([^/{[(!])\*\*/, (r, e)=>`${e}*`), Qr = i(/(^|.)\*\*(?=[^*/)\]}])/, (r, e)=>`${e}*`), Wr = f(l([
3126
+ Tr,
3127
+ Hr,
3128
+ Jr,
3129
+ Qr,
3130
+ qr
3131
+ ])), Kr = Wr, Xr = z(Kr), Yr = Xr, $ = (r, e)=>{
3132
+ const n = Array.isArray(r) ? r : [
3133
+ r
3134
+ ];
3135
+ if (!n.length) return false;
3136
+ const a = n.map($.compile), t = n.every((s)=>/(\/(?:\*\*)?|\[\/\])$/.test(s)), o = e.replace(/[\\\/]+/g, "/").replace(/\/$/, t ? "/" : "");
3137
+ return a.some((s)=>s.test(o));
3138
+ };
3139
+ $.compile = (r)=>new RegExp(`^${L(Yr(r))}$`, "s");
3140
+ var re = $;
3141
+ return J(w);
3142
+ })();
3143
+ return __lib__.default || __lib__;
3144
+ };
3145
+ let _match;
3146
+ const zeptomatch = (path, pattern)=>{
3147
+ if (!_match) {
3148
+ _match = _lazyMatch();
3149
+ _lazyMatch = null;
3150
+ }
3151
+ return _match(path, pattern);
3152
+ };
3153
+ const _DRIVE_LETTER_START_RE = /^[A-Za-z]:\//;
3154
+ function normalizeWindowsPath(input = "") {
3155
+ if (!input) return input;
3156
+ return input.replace(/\\/g, "/").replace(_DRIVE_LETTER_START_RE, (r)=>r.toUpperCase());
3157
+ }
3158
+ const _UNC_REGEX = /^[/\\]{2}/;
3159
+ const _IS_ABSOLUTE_RE = /^[/\\](?![/\\])|^[/\\]{2}(?!\.)|^[A-Za-z]:[/\\]/;
3160
+ const _DRIVE_LETTER_RE = /^[A-Za-z]:$/;
3161
+ const _ROOT_FOLDER_RE = /^\/([A-Za-z]:)?$/;
3162
+ const _EXTNAME_RE = /.(\.[^./]+|\.)$/;
3163
+ const _PATH_ROOT_RE = /^[/\\]|^[a-zA-Z]:[/\\]/;
3164
+ const sep = "/";
3165
+ const normalize = function(path) {
3166
+ if (0 === path.length) return ".";
3167
+ path = normalizeWindowsPath(path);
3168
+ const isUNCPath = path.match(_UNC_REGEX);
3169
+ const isPathAbsolute = isAbsolute(path);
3170
+ const trailingSeparator = "/" === path[path.length - 1];
3171
+ path = normalizeString(path, !isPathAbsolute);
3172
+ if (0 === path.length) {
3173
+ if (isPathAbsolute) return "/";
3174
+ return trailingSeparator ? "./" : ".";
3175
+ }
3176
+ if (trailingSeparator) path += "/";
3177
+ if (_DRIVE_LETTER_RE.test(path)) path += "/";
3178
+ if (isUNCPath) {
3179
+ if (!isPathAbsolute) return `//./${path}`;
3180
+ return `//${path}`;
3181
+ }
3182
+ return isPathAbsolute && !isAbsolute(path) ? `/${path}` : path;
3183
+ };
3184
+ const join = function(...segments) {
3185
+ let path = "";
3186
+ for (const seg of segments)if (seg) if (path.length > 0) {
3187
+ const pathTrailing = "/" === path[path.length - 1];
3188
+ const segLeading = "/" === seg[0];
3189
+ const both = pathTrailing && segLeading;
3190
+ if (both) path += seg.slice(1);
3191
+ else path += pathTrailing || segLeading ? seg : `/${seg}`;
3192
+ } else path += seg;
3193
+ return normalize(path);
3194
+ };
3195
+ function cwd() {
3196
+ if ("undefined" != typeof process && "function" == typeof process.cwd) return process.cwd().replace(/\\/g, "/");
3197
+ return "/";
3198
+ }
3199
+ const resolve = function(...arguments_) {
3200
+ arguments_ = arguments_.map((argument)=>normalizeWindowsPath(argument));
3201
+ let resolvedPath = "";
3202
+ let resolvedAbsolute = false;
3203
+ for(let index = arguments_.length - 1; index >= -1 && !resolvedAbsolute; index--){
3204
+ const path = index >= 0 ? arguments_[index] : cwd();
3205
+ if (path && 0 !== path.length) {
3206
+ resolvedPath = `${path}/${resolvedPath}`;
3207
+ resolvedAbsolute = isAbsolute(path);
3208
+ }
3209
+ }
3210
+ resolvedPath = normalizeString(resolvedPath, !resolvedAbsolute);
3211
+ if (resolvedAbsolute && !isAbsolute(resolvedPath)) return `/${resolvedPath}`;
3212
+ return resolvedPath.length > 0 ? resolvedPath : ".";
3213
+ };
3214
+ function normalizeString(path, allowAboveRoot) {
3215
+ let res = "";
3216
+ let lastSegmentLength = 0;
3217
+ let lastSlash = -1;
3218
+ let dots = 0;
3219
+ let char = null;
3220
+ for(let index = 0; index <= path.length; ++index){
3221
+ if (index < path.length) char = path[index];
3222
+ else if ("/" === char) break;
3223
+ else char = "/";
3224
+ if ("/" === char) {
3225
+ if (lastSlash === index - 1 || 1 === dots) ;
3226
+ else if (2 === dots) {
3227
+ if (res.length < 2 || 2 !== lastSegmentLength || "." !== res[res.length - 1] || "." !== res[res.length - 2]) {
3228
+ if (res.length > 2) {
3229
+ const lastSlashIndex = res.lastIndexOf("/");
3230
+ if (-1 === lastSlashIndex) {
3231
+ res = "";
3232
+ lastSegmentLength = 0;
3233
+ } else {
3234
+ res = res.slice(0, lastSlashIndex);
3235
+ lastSegmentLength = res.length - 1 - res.lastIndexOf("/");
3236
+ }
3237
+ lastSlash = index;
3238
+ dots = 0;
3239
+ continue;
3240
+ } else if (res.length > 0) {
3241
+ res = "";
3242
+ lastSegmentLength = 0;
3243
+ lastSlash = index;
3244
+ dots = 0;
3245
+ continue;
3246
+ }
3247
+ }
3248
+ if (allowAboveRoot) {
3249
+ res += res.length > 0 ? "/.." : "..";
3250
+ lastSegmentLength = 2;
3251
+ }
3252
+ } else {
3253
+ if (res.length > 0) res += `/${path.slice(lastSlash + 1, index)}`;
3254
+ else res = path.slice(lastSlash + 1, index);
3255
+ lastSegmentLength = index - lastSlash - 1;
3256
+ }
3257
+ lastSlash = index;
3258
+ dots = 0;
3259
+ } else if ("." === char && -1 !== dots) ++dots;
3260
+ else dots = -1;
3261
+ }
3262
+ return res;
3263
+ }
3264
+ const isAbsolute = function(p) {
3265
+ return _IS_ABSOLUTE_RE.test(p);
3266
+ };
3267
+ const toNamespacedPath = function(p) {
3268
+ return normalizeWindowsPath(p);
3269
+ };
3270
+ const extname = function(p) {
3271
+ if (".." === p) return "";
3272
+ const match = _EXTNAME_RE.exec(normalizeWindowsPath(p));
3273
+ return match && match[1] || "";
3274
+ };
3275
+ const relative = function(from, to) {
3276
+ const _from = resolve(from).replace(_ROOT_FOLDER_RE, "$1").split("/");
3277
+ const _to = resolve(to).replace(_ROOT_FOLDER_RE, "$1").split("/");
3278
+ if (":" === _to[0][1] && ":" === _from[0][1] && _from[0] !== _to[0]) return _to.join("/");
3279
+ const _fromCopy = [
3280
+ ..._from
3281
+ ];
3282
+ for (const segment of _fromCopy){
3283
+ if (_to[0] !== segment) break;
3284
+ _from.shift();
3285
+ _to.shift();
3286
+ }
3287
+ return [
3288
+ ..._from.map(()=>".."),
3289
+ ..._to
3290
+ ].join("/");
3291
+ };
3292
+ const dirname = function(p) {
3293
+ const segments = normalizeWindowsPath(p).replace(/\/$/, "").split("/").slice(0, -1);
3294
+ if (1 === segments.length && _DRIVE_LETTER_RE.test(segments[0])) segments[0] += "/";
3295
+ return segments.join("/") || (isAbsolute(p) ? "/" : ".");
3296
+ };
3297
+ const format = function(p) {
3298
+ const ext = p.ext ? p.ext.startsWith(".") ? p.ext : `.${p.ext}` : "";
3299
+ const segments = [
3300
+ p.root,
3301
+ p.dir,
3302
+ p.base ?? (p.name ?? "") + ext
3303
+ ].filter(Boolean);
3304
+ return normalizeWindowsPath(p.root ? resolve(...segments) : segments.join("/"));
3305
+ };
3306
+ const basename = function(p, extension) {
3307
+ const segments = normalizeWindowsPath(p).split("/");
3308
+ let lastSegment = "";
3309
+ for(let i = segments.length - 1; i >= 0; i--){
3310
+ const val = segments[i];
3311
+ if (val) {
3312
+ lastSegment = val;
3313
+ break;
3314
+ }
3315
+ }
3316
+ return extension && lastSegment.endsWith(extension) ? lastSegment.slice(0, -extension.length) : lastSegment;
3317
+ };
3318
+ const parse = function(p) {
3319
+ const root = _PATH_ROOT_RE.exec(p)?.[0]?.replace(/\\/g, "/") || "";
3320
+ const base = basename(p);
3321
+ const extension = extname(base);
3322
+ return {
3323
+ root,
3324
+ dir: dirname(p),
3325
+ base,
3326
+ ext: extension,
3327
+ name: base.slice(0, base.length - extension.length)
3328
+ };
3329
+ };
3330
+ const matchesGlob = (path, pattern)=>zeptomatch(pattern, normalize(path));
3331
+ const _path = {
3332
+ __proto__: null,
3333
+ basename: basename,
3334
+ dirname: dirname,
3335
+ extname: extname,
3336
+ format: format,
3337
+ isAbsolute: isAbsolute,
3338
+ join: join,
3339
+ matchesGlob: matchesGlob,
3340
+ normalize: normalize,
3341
+ normalizeString: normalizeString,
3342
+ parse: parse,
3343
+ relative: relative,
3344
+ resolve: resolve,
3345
+ sep: sep,
3346
+ toNamespacedPath: toNamespacedPath
3347
+ };
2839
3348
  },
2840
3349
  "../../node_modules/.pnpm/tinyglobby@0.2.15/node_modules/tinyglobby/dist/index.mjs": function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
2841
3350
  __webpack_require__.d(__webpack_exports__, {
2842
3351
  ey: ()=>isDynamicPattern,
2843
3352
  glob: ()=>glob
2844
3353
  });
2845
- var external_node_fs_ = __webpack_require__("fs");
2846
- var external_node_path_ = __webpack_require__("node:path");
3354
+ var external_node_fs_ = __webpack_require__("node:fs");
3355
+ var external_node_path_ = __webpack_require__("path");
2847
3356
  var __require = /* @__PURE__ */ (0, __WEBPACK_EXTERNAL_MODULE_module__.createRequire)(import.meta.url);
2848
3357
  function cleanPath(path) {
2849
3358
  let normalized = (0, external_node_path_.normalize)(path);