vite 8.0.0 → 8.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  import "@vite/env";
2
- //#region \0@oxc-project+runtime@0.115.0/helpers/typeof.js
2
+ //#region \0@oxc-project+runtime@0.120.0/helpers/typeof.js
3
3
  function _typeof(o) {
4
4
  "@babel/helpers - typeof";
5
5
  return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
@@ -9,7 +9,7 @@ function _typeof(o) {
9
9
  }, _typeof(o);
10
10
  }
11
11
  //#endregion
12
- //#region \0@oxc-project+runtime@0.115.0/helpers/toPrimitive.js
12
+ //#region \0@oxc-project+runtime@0.120.0/helpers/toPrimitive.js
13
13
  function toPrimitive(t, r) {
14
14
  if ("object" != _typeof(t) || !t) return t;
15
15
  var e = t[Symbol.toPrimitive];
@@ -21,13 +21,13 @@ function toPrimitive(t, r) {
21
21
  return ("string" === r ? String : Number)(t);
22
22
  }
23
23
  //#endregion
24
- //#region \0@oxc-project+runtime@0.115.0/helpers/toPropertyKey.js
24
+ //#region \0@oxc-project+runtime@0.120.0/helpers/toPropertyKey.js
25
25
  function toPropertyKey(t) {
26
26
  var i = toPrimitive(t, "string");
27
27
  return "symbol" == _typeof(i) ? i : i + "";
28
28
  }
29
29
  //#endregion
30
- //#region \0@oxc-project+runtime@0.115.0/helpers/defineProperty.js
30
+ //#region \0@oxc-project+runtime@0.120.0/helpers/defineProperty.js
31
31
  function _defineProperty(e, r, t) {
32
32
  return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
33
33
  value: t,
@@ -220,7 +220,7 @@ var HMRClient = class {
220
220
  }
221
221
  };
222
222
  //#endregion
223
- //#region ../../node_modules/.pnpm/nanoid@5.1.6/node_modules/nanoid/non-secure/index.js
223
+ //#region ../../node_modules/.pnpm/nanoid@5.1.7/node_modules/nanoid/non-secure/index.js
224
224
  let urlAlphabet = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";
225
225
  let nanoid = (size = 21) => {
226
226
  let id = "";
@@ -515,12 +515,8 @@ var require_lodash_camelcase = /* @__PURE__ */ __commonJSMin(((exports, module)
515
515
  "ʼn": "'n",
516
516
  "ſ": "ss"
517
517
  };
518
- /** Detect free variable `global` from Node.js. */
519
- var freeGlobal = typeof global == "object" && global && global.Object === Object && global;
520
- /** Detect free variable `self`. */
521
- var freeSelf = typeof self == "object" && self && self.Object === Object && self;
522
518
  /** Used as a reference to the global object. */
523
- var root = freeGlobal || freeSelf || Function("return this")();
519
+ var root = typeof global == "object" && global && global.Object === Object && global || typeof self == "object" && self && self.Object === Object && self || Function("return this")();
524
520
  /**
525
521
  * A specialized version of `_.reduce` for arrays without support for
526
522
  * iteratee shorthands.
@@ -2871,8 +2867,7 @@ var require_attribute = /* @__PURE__ */ __commonJSMin(((exports) => {
2871
2867
  var pref = this.preferredQuoteMark(options);
2872
2868
  if (pref === Attribute.NO_QUOTE) {
2873
2869
  var quote = this.quoteMark || options.quoteMark || Attribute.DOUBLE_QUOTE;
2874
- var opts = CSSESC_QUOTE_OPTIONS[quote];
2875
- if ((0, _cssesc["default"])(v, opts).length < escaped.length) return quote;
2870
+ if ((0, _cssesc["default"])(v, CSSESC_QUOTE_OPTIONS[quote]).length < escaped.length) return quote;
2876
2871
  }
2877
2872
  return pref;
2878
2873
  }
@@ -2900,13 +2895,10 @@ var require_attribute = /* @__PURE__ */ __commonJSMin(((exports) => {
2900
2895
  }
2901
2896
  };
2902
2897
  _proto._spacesFor = function _spacesFor(name) {
2903
- var attrSpaces = {
2898
+ return Object.assign({
2904
2899
  before: "",
2905
2900
  after: ""
2906
- };
2907
- var spaces = this.spaces[name] || {};
2908
- var rawSpaces = this.raws.spaces && this.raws.spaces[name] || {};
2909
- return Object.assign(attrSpaces, spaces, rawSpaces);
2901
+ }, this.spaces[name] || {}, this.raws.spaces && this.raws.spaces[name] || {});
2910
2902
  };
2911
2903
  _proto._stringFor = function _stringFor(name, spaceName, concat) {
2912
2904
  if (spaceName === void 0) spaceName = name;
@@ -3620,8 +3612,7 @@ var require_parser = /* @__PURE__ */ __commonJSMin(((exports, module) => {
3620
3612
  if (this.options.lossy) break;
3621
3613
  if (lastAdded) {
3622
3614
  (0, _util.ensureObject)(node, "spaces", lastAdded);
3623
- var prevContent = node.spaces[lastAdded].after || "";
3624
- node.spaces[lastAdded].after = prevContent + content;
3615
+ node.spaces[lastAdded].after = (node.spaces[lastAdded].after || "") + content;
3625
3616
  var existingComment = (0, _util.getProp)(node, "raws", "spaces", lastAdded, "after") || null;
3626
3617
  if (existingComment) node.raws.spaces[lastAdded].after = existingComment + content;
3627
3618
  } else {
@@ -354,7 +354,6 @@ const decodeMap = new Map([
354
354
  [158, 382],
355
355
  [159, 376]
356
356
  ]);
357
- String.fromCodePoint;
358
357
  /**
359
358
  * Replace the given code point with a replacement character if it is a
360
359
  * surrogate or is outside the valid range. Otherwise return the code
@@ -4403,13 +4402,10 @@ var Parser = class {
4403
4402
  }
4404
4403
  /** @protected */
4405
4404
  _attachElementToTree(element, location) {
4406
- if (this.options.sourceCodeLocationInfo) {
4407
- const loc = location && {
4408
- ...location,
4409
- startTag: location
4410
- };
4411
- this.treeAdapter.setNodeSourceCodeLocation(element, loc);
4412
- }
4405
+ if (this.options.sourceCodeLocationInfo) this.treeAdapter.setNodeSourceCodeLocation(element, location && {
4406
+ ...location,
4407
+ startTag: location
4408
+ });
4413
4409
  if (this._shouldFosterParentOnInsertion()) this._fosterParentElement(element);
4414
4410
  else {
4415
4411
  const parent = this.openElements.currentTmplContentOrNode;
@@ -4495,7 +4491,7 @@ var Parser = class {
4495
4491
  if (this.treeAdapter.getNodeSourceCodeLocation(element) && closingToken.location) {
4496
4492
  const ctLoc = closingToken.location;
4497
4493
  const tn = this.treeAdapter.getTagName(element);
4498
- const endLoc = closingToken.type === TokenType.END_TAG && tn === closingToken.tagName ? {
4494
+ this.treeAdapter.updateNodeSourceCodeLocation(element, closingToken.type === TokenType.END_TAG && tn === closingToken.tagName ? {
4499
4495
  endTag: { ...ctLoc },
4500
4496
  endLine: ctLoc.endLine,
4501
4497
  endCol: ctLoc.endCol,
@@ -4504,8 +4500,7 @@ var Parser = class {
4504
4500
  endLine: ctLoc.startLine,
4505
4501
  endCol: ctLoc.startCol,
4506
4502
  endOffset: ctLoc.startOffset
4507
- };
4508
- this.treeAdapter.updateNodeSourceCodeLocation(element, endLoc);
4503
+ });
4509
4504
  }
4510
4505
  }
4511
4506
  shouldProcessStartTagTokenInForeignContent(token) {
@@ -21,7 +21,7 @@ import { promises } from "node:dns";
21
21
  import { isatty } from "node:tty";
22
22
  import path$1, { isAbsolute as isAbsolute$1, join as join$1, posix as posix$1, resolve as resolve$1, win32 } from "path";
23
23
  import { exactRegex, makeIdFiltersToMatchWithQuery, prefixRegex, withFilter } from "rolldown/filter";
24
- import { dev, resolveTsconfig, scan, viteAliasPlugin, viteBuildImportAnalysisPlugin, viteDynamicImportVarsPlugin, viteImportGlobPlugin, viteJsonPlugin, viteLoadFallbackPlugin, viteManifestPlugin, viteModulePreloadPolyfillPlugin, viteReporterPlugin, viteResolvePlugin, viteTransformPlugin, viteWasmFallbackPlugin, viteWebWorkerPostPlugin } from "rolldown/experimental";
24
+ import { dev, oxcRuntimePlugin, resolveTsconfig, scan, viteAliasPlugin, viteBuildImportAnalysisPlugin, viteDynamicImportVarsPlugin, viteImportGlobPlugin, viteJsonPlugin, viteLoadFallbackPlugin, viteManifestPlugin, viteModulePreloadPolyfillPlugin, viteReporterPlugin, viteResolvePlugin, viteTransformPlugin, viteWasmFallbackPlugin, viteWebWorkerPostPlugin } from "rolldown/experimental";
25
25
  import readline from "node:readline";
26
26
  import { MessageChannel, Worker } from "node:worker_threads";
27
27
  import isModuleSyncConditionEnabled from "#module-sync-enabled";
@@ -979,8 +979,7 @@ function setup(useColors, colors, log, load, save, formatArgs, init) {
979
979
  index++;
980
980
  const formatter = createDebug.formatters[format];
981
981
  if (typeof formatter === "function") {
982
- const value = args[index];
983
- match = formatter.call(debug, value);
982
+ match = formatter.call(debug, args[index]);
984
983
  args.splice(index, 1);
985
984
  index--;
986
985
  }
@@ -1568,8 +1567,9 @@ const replaceSlashOrColonRE = /[/:]/g;
1568
1567
  const replaceDotRE = /\./g;
1569
1568
  const replaceNestedIdRE = /\s*>\s*/g;
1570
1569
  const replaceHashRE = /#/g;
1570
+ const replacePlusRE = /\+/g;
1571
1571
  const flattenId = (id) => {
1572
- return limitFlattenIdLength(id.replace(replaceSlashOrColonRE, "_").replace(replaceDotRE, "__").replace(replaceNestedIdRE, "___").replace(replaceHashRE, "____"));
1572
+ return limitFlattenIdLength(id.replace(replaceSlashOrColonRE, "_").replace(replaceDotRE, "__").replace(replaceNestedIdRE, "___").replace(replaceHashRE, "____").replace(replacePlusRE, "_____"));
1573
1573
  };
1574
1574
  const FLATTEN_ID_HASH_LENGTH = 8;
1575
1575
  const FLATTEN_ID_MAX_FILE_LENGTH = 170;
@@ -1689,13 +1689,12 @@ const isJSRequest = (url) => {
1689
1689
  const isCSSRequest = (request) => CSS_LANGS_RE.test(request);
1690
1690
  const importQueryRE = /(\?|&)import=?(?:&|$)/;
1691
1691
  const directRequestRE$1 = /(\?|&)direct=?(?:&|$)/;
1692
- const internalPrefixes = [
1692
+ const InternalPrefixRE = new RegExp(`^(?:${[
1693
1693
  FS_PREFIX,
1694
1694
  VALID_ID_PREFIX,
1695
1695
  CLIENT_PUBLIC_PATH,
1696
1696
  ENV_PUBLIC_PATH
1697
- ];
1698
- const InternalPrefixRE = new RegExp(`^(?:${internalPrefixes.join("|")})`);
1697
+ ].join("|")})`);
1699
1698
  const trailingSeparatorRE = /[?&]$/;
1700
1699
  const isImportRequest = (url) => importQueryRE.test(url);
1701
1700
  const isInternalRequest = (url) => InternalPrefixRE.test(url);
@@ -3207,6 +3206,7 @@ function encodeQueryItem(key, value) {
3207
3206
  function stringifyQuery(query) {
3208
3207
  return Object.keys(query).filter((k) => query[k] !== void 0).map((k) => encodeQueryItem(k, query[k])).filter(Boolean).join("&");
3209
3208
  }
3209
+ new Set(builtinModules);
3210
3210
  function clearImports(imports) {
3211
3211
  return (imports || "").replace(/\/\/[^\n]*\n|\/\*.*\*\//g, "").replace(/\s+/g, " ");
3212
3212
  }
@@ -3548,7 +3548,8 @@ function determineSpecificType(value) {
3548
3548
  if (inspected.length > 28) inspected = `${inspected.slice(0, 25)}...`;
3549
3549
  return `type ${typeof value} (${inspected})`;
3550
3550
  }
3551
- Object.freeze(["node", "import"]);
3551
+ const DEFAULT_CONDITIONS = Object.freeze(["node", "import"]);
3552
+ new Set(DEFAULT_CONDITIONS);
3552
3553
  const ESM_STATIC_IMPORT_RE = /(?<=\s|^|;|\})import\s*(?:[\s"']*(?<imports>[\p{L}\p{M}\w\t\n\r $*,/{}@.]+)from\s*)?["']\s*(?<specifier>(?<="\s*)[^"]*[^\s"](?=\s*")|(?<='\s*)[^']*[^\s'](?=\s*'))\s*["'][\s;]*/gmu;
3553
3554
  const TYPE_RE = /^\s*?type\s/;
3554
3555
  function parseStaticImport(matched) {
@@ -3776,20 +3777,12 @@ function oxcPlugin(config) {
3776
3777
  if (jsxRefreshFilter?.(id) && !JS_TYPES_RE.test(cleanUrl(id))) result.lang = "js";
3777
3778
  return result;
3778
3779
  };
3779
- const runtimeResolveBase = normalizePath(path.join(VITE_PACKAGE_DIR, "package.json"));
3780
3780
  let server;
3781
3781
  return {
3782
3782
  name: "vite:oxc",
3783
3783
  configureServer(_server) {
3784
3784
  server = _server;
3785
3785
  },
3786
- ...config.command === "serve" ? { resolveId: {
3787
- filter: { id: prefixRegex("@oxc-project/runtime/") },
3788
- async handler(id, _importer, opts) {
3789
- return await this.resolve(id, runtimeResolveBase, opts);
3790
- },
3791
- order: "pre"
3792
- } } : {},
3793
3786
  async transform(code, id) {
3794
3787
  if (filter(id) || filter(cleanUrl(id)) || jsxRefreshFilter?.(id)) {
3795
3788
  const result = await transformWithOxc(code, id, getModifiedOxcTransformOptions(oxcTransformOptions, id, code, this.environment), void 0, config, server?.watcher);
@@ -10426,7 +10419,7 @@ var require_launch_editor_middleware = /* @__PURE__ */ __commonJSMin(((exports,
10426
10419
  };
10427
10420
  }));
10428
10421
  //#endregion
10429
- //#region ../../node_modules/.pnpm/@vercel+detect-agent@1.1.0/node_modules/@vercel/detect-agent/dist/index.js
10422
+ //#region ../../node_modules/.pnpm/@vercel+detect-agent@1.2.1/node_modules/@vercel/detect-agent/dist/index.js
10430
10423
  var require_dist = /* @__PURE__ */ __commonJSMin(((exports, module) => {
10431
10424
  var __defProp = Object.defineProperty;
10432
10425
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -10460,30 +10453,43 @@ var require_dist = /* @__PURE__ */ __commonJSMin(((exports, module) => {
10460
10453
  const CURSOR = "cursor";
10461
10454
  const CURSOR_CLI = "cursor-cli";
10462
10455
  const CLAUDE = "claude";
10456
+ const COWORK = "cowork";
10463
10457
  const DEVIN = "devin";
10464
10458
  const REPLIT = "replit";
10465
10459
  const GEMINI = "gemini";
10466
10460
  const CODEX = "codex";
10461
+ const ANTIGRAVITY = "antigravity";
10467
10462
  const AUGMENT_CLI = "augment-cli";
10468
10463
  const OPENCODE = "opencode";
10464
+ const GITHUB_COPILOT = "github-copilot";
10465
+ const GITHUB_COPILOT_CLI = "github-copilot-cli";
10469
10466
  const KNOWN_AGENTS = {
10470
10467
  CURSOR,
10471
10468
  CURSOR_CLI,
10472
10469
  CLAUDE,
10470
+ COWORK,
10473
10471
  DEVIN,
10474
10472
  REPLIT,
10475
10473
  GEMINI,
10476
10474
  CODEX,
10475
+ ANTIGRAVITY,
10477
10476
  AUGMENT_CLI,
10478
- OPENCODE
10477
+ OPENCODE,
10478
+ GITHUB_COPILOT
10479
10479
  };
10480
10480
  async function determineAgent() {
10481
10481
  if (process.env.AI_AGENT) {
10482
10482
  const name = process.env.AI_AGENT.trim();
10483
- if (name) return {
10484
- isAgent: true,
10485
- agent: { name }
10486
- };
10483
+ if (name) {
10484
+ if (name === GITHUB_COPILOT || name === GITHUB_COPILOT_CLI) return {
10485
+ isAgent: true,
10486
+ agent: { name: GITHUB_COPILOT }
10487
+ };
10488
+ return {
10489
+ isAgent: true,
10490
+ agent: { name }
10491
+ };
10492
+ }
10487
10493
  }
10488
10494
  if (process.env.CURSOR_TRACE_ID) return {
10489
10495
  isAgent: true,
@@ -10497,10 +10503,14 @@ var require_dist = /* @__PURE__ */ __commonJSMin(((exports, module) => {
10497
10503
  isAgent: true,
10498
10504
  agent: { name: GEMINI }
10499
10505
  };
10500
- if (process.env.CODEX_SANDBOX) return {
10506
+ if (process.env.CODEX_SANDBOX || process.env.CODEX_CI || process.env.CODEX_THREAD_ID) return {
10501
10507
  isAgent: true,
10502
10508
  agent: { name: CODEX }
10503
10509
  };
10510
+ if (process.env.ANTIGRAVITY_AGENT) return {
10511
+ isAgent: true,
10512
+ agent: { name: ANTIGRAVITY }
10513
+ };
10504
10514
  if (process.env.AUGMENT_AGENT) return {
10505
10515
  isAgent: true,
10506
10516
  agent: { name: AUGMENT_CLI }
@@ -10509,21 +10519,31 @@ var require_dist = /* @__PURE__ */ __commonJSMin(((exports, module) => {
10509
10519
  isAgent: true,
10510
10520
  agent: { name: OPENCODE }
10511
10521
  };
10512
- if (process.env.CLAUDECODE || process.env.CLAUDE_CODE) return {
10513
- isAgent: true,
10514
- agent: { name: CLAUDE }
10515
- };
10522
+ if (process.env.CLAUDECODE || process.env.CLAUDE_CODE) {
10523
+ if (process.env.CLAUDE_CODE_IS_COWORK) return {
10524
+ isAgent: true,
10525
+ agent: { name: COWORK }
10526
+ };
10527
+ return {
10528
+ isAgent: true,
10529
+ agent: { name: CLAUDE }
10530
+ };
10531
+ }
10516
10532
  if (process.env.REPL_ID) return {
10517
10533
  isAgent: true,
10518
10534
  agent: { name: REPLIT }
10519
10535
  };
10536
+ if (process.env.COPILOT_MODEL || process.env.COPILOT_ALLOW_ALL || process.env.COPILOT_GITHUB_TOKEN) return {
10537
+ isAgent: true,
10538
+ agent: { name: GITHUB_COPILOT }
10539
+ };
10520
10540
  try {
10521
10541
  await (0, import_promises.access)(DEVIN_LOCAL_PATH, import_node_fs.constants.F_OK);
10522
10542
  return {
10523
10543
  isAgent: true,
10524
10544
  agent: { name: DEVIN }
10525
10545
  };
10526
- } catch (error) {}
10546
+ } catch (_error) {}
10527
10547
  return {
10528
10548
  isAgent: false,
10529
10549
  agent: void 0
@@ -18406,13 +18426,12 @@ function getNodeAssetAttributes(node) {
18406
18426
  value,
18407
18427
  attributes
18408
18428
  })) return;
18409
- const location = node.sourceCodeLocation.attrs[key];
18410
18429
  actions.push({
18411
18430
  type,
18412
18431
  key,
18413
18432
  value,
18414
18433
  attributes,
18415
- location
18434
+ location: node.sourceCodeLocation.attrs[key]
18416
18435
  });
18417
18436
  }
18418
18437
  matched.srcAttributes?.forEach((key) => handleAttributeKey(key, "src"));
@@ -21883,7 +21902,7 @@ const esMap = {
21883
21902
  "opera121"
21884
21903
  ]
21885
21904
  };
21886
- const esRE = /es(\d{4})/;
21905
+ const esRE = /es(6|\d{4})/;
21887
21906
  const versionRE = /\d/;
21888
21907
  const convertTargetsCache = /* @__PURE__ */ new Map();
21889
21908
  const convertTargets = (esbuildTarget) => {
@@ -21894,7 +21913,7 @@ const convertTargets = (esbuildTarget) => {
21894
21913
  const entriesWithoutES = arraify(esbuildTarget).flatMap((e) => {
21895
21914
  const match = esRE.exec(e);
21896
21915
  if (!match) return e;
21897
- const year = Number(match[1]);
21916
+ const year = match[1] === "6" ? 2015 : Number(match[1]);
21898
21917
  if (!esMap[year]) throw new Error(`Unsupported target "${e}"`);
21899
21918
  return esMap[year];
21900
21919
  });
@@ -24658,7 +24677,8 @@ var FullBundleDevEnvironment = class extends DevEnvironment {
24658
24677
  const rolldownOptions = resolveRolldownOptions(this, chunkMetadataMap);
24659
24678
  rolldownOptions.experimental ??= {};
24660
24679
  rolldownOptions.experimental.devMode = { implement: await getHmrImplementation(this.getTopLevelConfig()) };
24661
- if (rolldownOptions.optimization) rolldownOptions.optimization.inlineConst = false;
24680
+ rolldownOptions.optimization ??= {};
24681
+ rolldownOptions.optimization.inlineConst = false;
24662
24682
  if (Array.isArray(rolldownOptions.output)) for (const output of rolldownOptions.output) {
24663
24683
  output.entryFileNames = "assets/[name].js";
24664
24684
  output.chunkFileNames = "assets/[name]-[hash].js";
@@ -25830,8 +25850,8 @@ function memoryFilesMiddleware(server) {
25830
25850
  function rejectNoCorsRequestMiddleware() {
25831
25851
  return function viteRejectNoCorsRequestMiddleware(req, res, next) {
25832
25852
  if (req.headers["sec-fetch-mode"] === "no-cors" && req.headers["sec-fetch-site"] !== "same-origin" && req.headers["sec-fetch-dest"] === "script") {
25833
- res.statusCode = 403;
25834
- res.end("Cross-origin requests for classic scripts must be made with CORS mode enabled. Make sure to set the \"crossorigin\" attribute on your <script> tag.");
25853
+ res.setHeader("Content-Type", "text/javascript");
25854
+ res.end(`throw new Error(${JSON.stringify("[Vite] Cross-origin requests for classic scripts must be made with CORS mode enabled. Make sure to set the \"crossorigin\" attribute on your <script> tag.")});`);
25835
25855
  return;
25836
25856
  }
25837
25857
  return next();
@@ -25899,10 +25919,9 @@ async function _createServer(inlineConfig = {}, options) {
25899
25919
  await Promise.all(Object.entries(config.environments).map(async ([name, environmentOptions]) => {
25900
25920
  const environment = await environmentOptions.dev.createEnvironment(name, config, { ws });
25901
25921
  environments[name] = environment;
25902
- const previousInstance = options.previousEnvironments?.[environment.name];
25903
25922
  await environment.init({
25904
25923
  watcher,
25905
- previousInstance
25924
+ previousInstance: options.previousEnvironments?.[environment.name]
25906
25925
  });
25907
25926
  }));
25908
25927
  let moduleGraph = new ModuleGraph({
@@ -26040,8 +26059,8 @@ async function _createServer(inlineConfig = {}, options) {
26040
26059
  _setInternalServer(_server) {
26041
26060
  server = _server;
26042
26061
  },
26043
- _restartPromise: null,
26044
- _forceOptimizeOnRestart: false,
26062
+ _restartPromise: options.previousRestartPromise ?? null,
26063
+ _forceOptimizeOnRestart: options.previousForceOptimizeOnRestart ?? false,
26045
26064
  _shortcutsState: options.previousShortcutsState
26046
26065
  };
26047
26066
  const reflexServer = new Proxy(server, {
@@ -26283,7 +26302,9 @@ async function restartServer(server) {
26283
26302
  newServer = await _createServer(inlineConfig, {
26284
26303
  listen: false,
26285
26304
  previousEnvironments: server.environments,
26286
- previousShortcutsState: server._shortcutsState
26305
+ previousShortcutsState: server._shortcutsState,
26306
+ previousRestartPromise: server._restartPromise,
26307
+ previousForceOptimizeOnRestart: server._forceOptimizeOnRestart
26287
26308
  });
26288
26309
  } catch (err) {
26289
26310
  server.config.logger.error(err.message, { timestamp: true });
@@ -26295,8 +26316,6 @@ async function restartServer(server) {
26295
26316
  const middlewares = server.middlewares;
26296
26317
  newServer._configServerPort = server._configServerPort;
26297
26318
  newServer._currentServerPort = server._currentServerPort;
26298
- newServer._restartPromise = server._restartPromise;
26299
- newServer._forceOptimizeOnRestart = server._forceOptimizeOnRestart;
26300
26319
  Object.assign(server, newServer);
26301
26320
  middlewares.stack = newServer.middlewares.stack;
26302
26321
  server.middlewares = middlewares;
@@ -27020,7 +27039,11 @@ async function bundleWorkerEntry(config, id) {
27020
27039
  ".css": "js",
27021
27040
  ...rollupOptions.moduleTypes
27022
27041
  },
27023
- preserveEntrySignatures: false
27042
+ preserveEntrySignatures: false,
27043
+ experimental: {
27044
+ ...rollupOptions.experimental,
27045
+ viteMode: true
27046
+ }
27024
27047
  });
27025
27048
  let result;
27026
27049
  let watchedFiles;
@@ -27031,10 +27054,10 @@ async function bundleWorkerEntry(config, id) {
27031
27054
  entryFileNames: path.posix.join(config.build.assetsDir, "[name]-[hash].js"),
27032
27055
  chunkFileNames: path.posix.join(config.build.assetsDir, "[name]-[hash].js"),
27033
27056
  assetFileNames: path.posix.join(config.build.assetsDir, "[name]-[hash].[ext]"),
27034
- minify: config.build.minify === "oxc" ? true : config.build.minify === false ? "dce-only" : void 0,
27057
+ minify: workerEnvironment.config.build.minify === "oxc" ? true : workerEnvironment.config.build.minify === false ? "dce-only" : void 0,
27035
27058
  ...workerConfig,
27036
27059
  format,
27037
- sourcemap: config.build.sourcemap
27060
+ sourcemap: workerEnvironment.config.build.sourcemap
27038
27061
  });
27039
27062
  watchedFiles = (await bundle.watchFiles).map((f) => normalizePath(f));
27040
27063
  } catch (e) {
@@ -27920,7 +27943,7 @@ async function getWorkerType(raw, clean, i) {
27920
27943
  if (workerOpts.type && (workerOpts.type === "module" || workerOpts.type === "classic")) return workerOpts.type;
27921
27944
  return "classic";
27922
27945
  }
27923
- const workerImportMetaUrlRE = /new\s+(?:Worker|SharedWorker)\s*\(\s*new\s+URL.+?import\.meta\.url/s;
27946
+ const workerImportMetaUrlRE = /\bnew\s+(?:Worker|SharedWorker)\s*\(\s*(new\s+URL\s*\(\s*('[^']+'|"[^"]+"|`[^`]+`)\s*,\s*import\.meta\.url\s*(?:,\s*)?\))/dg;
27924
27947
  function workerImportMetaUrlPlugin(config) {
27925
27948
  const isBundled = config.isBundled;
27926
27949
  let workerResolver;
@@ -27942,9 +27965,9 @@ function workerImportMetaUrlPlugin(config) {
27942
27965
  async handler(code, id) {
27943
27966
  let s;
27944
27967
  const cleanString = stripLiteral(code);
27945
- const workerImportMetaUrlRE = /\bnew\s+(?:Worker|SharedWorker)\s*\(\s*(new\s+URL\s*\(\s*('[^']+'|"[^"]+"|`[^`]+`)\s*,\s*import\.meta\.url\s*(?:,\s*)?\))/dg;
27968
+ const re = new RegExp(workerImportMetaUrlRE);
27946
27969
  let match;
27947
- while (match = workerImportMetaUrlRE.exec(cleanString)) {
27970
+ while (match = re.exec(cleanString)) {
27948
27971
  const [[, endIndex], [expStart, expEnd], [urlStart, urlEnd]] = match.indices;
27949
27972
  const rawUrl = code.slice(urlStart, urlEnd);
27950
27973
  if (rawUrl[0] === "`" && rawUrl.includes("${")) this.error(`\`new URL(url, import.meta.url)\` is not supported in dynamic template string.`, expStart);
@@ -28293,6 +28316,7 @@ function buildImportAnalysisPlugin(config) {
28293
28316
  * import.meta.glob('./dir/**.png', { eager: true, import: 'default' })[`./dir/${name}.png`]
28294
28317
  * ```
28295
28318
  */
28319
+ const assetImportMetaUrlRE = /\bnew\s+URL\s*\(\s*('[^']+'|"[^"]+"|`[^`]+`)\s*,\s*import\.meta\.url\s*(?:,\s*)?\)/dg;
28296
28320
  function assetImportMetaUrlPlugin(config) {
28297
28321
  const { publicDir } = config;
28298
28322
  let assetResolver;
@@ -28312,14 +28336,14 @@ function assetImportMetaUrlPlugin(config) {
28312
28336
  transform: {
28313
28337
  filter: {
28314
28338
  id: { exclude: [exactRegex(preloadHelperId), exactRegex(CLIENT_ENTRY)] },
28315
- code: /new\s+URL.+import\.meta\.url/s
28339
+ code: assetImportMetaUrlRE
28316
28340
  },
28317
28341
  async handler(code, id) {
28318
28342
  let s;
28319
- const assetImportMetaUrlRE = /\bnew\s+URL\s*\(\s*('[^']+'|"[^"]+"|`[^`]+`)\s*,\s*import\.meta\.url\s*(?:,\s*)?\)/dg;
28343
+ const re = new RegExp(assetImportMetaUrlRE);
28320
28344
  const cleanString = stripLiteral(code);
28321
28345
  let match;
28322
- while (match = assetImportMetaUrlRE.exec(cleanString)) {
28346
+ while (match = re.exec(cleanString)) {
28323
28347
  const [[startIndex, endIndex], [urlStart, urlEnd]] = match.indices;
28324
28348
  if (hasViteIgnoreRE.test(code.slice(startIndex, urlStart))) continue;
28325
28349
  const rawUrl = code.slice(urlStart, urlEnd);
@@ -29007,7 +29031,7 @@ function createFilterForTransform(idFilter, codeFilter, moduleTypeFilter, cwd) {
29007
29031
  };
29008
29032
  }
29009
29033
  //#endregion
29010
- //#region ../../node_modules/.pnpm/@vitest+utils@4.1.0-beta.6/node_modules/@vitest/utils/dist/helpers.js
29034
+ //#region ../../node_modules/.pnpm/@vitest+utils@4.1.0/node_modules/@vitest/utils/dist/helpers.js
29011
29035
  function notNullish(v) {
29012
29036
  return v != null;
29013
29037
  }
@@ -29015,7 +29039,7 @@ function isPrimitive(value) {
29015
29039
  return value === null || typeof value !== "function" && typeof value !== "object";
29016
29040
  }
29017
29041
  //#endregion
29018
- //#region ../../node_modules/.pnpm/@vitest+utils@4.1.0-beta.6/node_modules/@vitest/utils/dist/chunk-pathe.M-eThtNZ.js
29042
+ //#region ../../node_modules/.pnpm/@vitest+utils@4.1.0/node_modules/@vitest/utils/dist/chunk-pathe.M-eThtNZ.js
29019
29043
  const _DRIVE_LETTER_START_RE = /^[A-Za-z]:\//;
29020
29044
  function normalizeWindowsPath(input = "") {
29021
29045
  if (!input) return input;
@@ -29094,7 +29118,7 @@ const isAbsolute$2 = function(p) {
29094
29118
  return _IS_ABSOLUTE_RE.test(p);
29095
29119
  };
29096
29120
  //#endregion
29097
- //#region ../../node_modules/.pnpm/@vitest+utils@4.1.0-beta.6/node_modules/@vitest/utils/dist/source-map.js
29121
+ //#region ../../node_modules/.pnpm/@vitest+utils@4.1.0/node_modules/@vitest/utils/dist/source-map.js
29098
29122
  var comma = ",".charCodeAt(0);
29099
29123
  var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
29100
29124
  var intToChar = new Uint8Array(64);
@@ -29604,6 +29628,7 @@ async function resolvePlugins(config, prePlugins, normalPlugins, postPlugins) {
29604
29628
  htmlInlineProxyPlugin(config),
29605
29629
  cssPlugin(config),
29606
29630
  esbuildBannerFooterCompatPlugin(config),
29631
+ config.oxc !== false && !isBundled ? oxcRuntimePlugin() : null,
29607
29632
  config.oxc !== false ? oxcPlugin(config) : null,
29608
29633
  viteJsonPlugin({
29609
29634
  ...config.json,
@@ -30636,10 +30661,8 @@ function rolldownScanPlugin(environment, depImports, missing, entries) {
30636
30661
  if (lang === "ts" || lang === "tsx" || lang === "jsx") loader = lang;
30637
30662
  else if (id.endsWith(".astro")) loader = "ts";
30638
30663
  const srcMatch = srcRE.exec(openTag);
30639
- if (srcMatch) {
30640
- const src = srcMatch[1] || srcMatch[2] || srcMatch[3];
30641
- js += `import ${JSON.stringify(src)}\n`;
30642
- } else if (content.trim()) {
30664
+ if (srcMatch) js += `import ${JSON.stringify(srcMatch[1] || srcMatch[2] || srcMatch[3])}\n`;
30665
+ else if (content.trim()) {
30643
30666
  const contents = content + (loader.startsWith("ts") ? extractImportPaths(content) : "");
30644
30667
  const key = `${id}?id=${scriptId++}`;
30645
30668
  if (contents.includes("import.meta.glob")) scripts[key] = {
@@ -31046,13 +31069,13 @@ function rolldownDepPlugin(environment, qualified, external) {
31046
31069
  }
31047
31070
  },
31048
31071
  transform: {
31049
- filter: { code: /new\s+URL.+import\.meta\.url/s },
31072
+ filter: { code: assetImportMetaUrlRE },
31050
31073
  async handler(code, id) {
31051
31074
  let s;
31052
- const assetImportMetaUrlRE = /\bnew\s+URL\s*\(\s*('[^']+'|"[^"]+"|`[^`]+`)\s*,\s*import\.meta\.url\s*(?:,\s*)?\)/dg;
31075
+ const re = new RegExp(assetImportMetaUrlRE);
31053
31076
  const cleanString = stripLiteral(code);
31054
31077
  let match;
31055
- while (match = assetImportMetaUrlRE.exec(cleanString)) {
31078
+ while (match = re.exec(cleanString)) {
31056
31079
  const [[startIndex, endIndex], [urlStart, urlEnd]] = match.indices;
31057
31080
  if (hasViteIgnoreRE.test(code.slice(startIndex, urlStart))) continue;
31058
31081
  const rawUrl = code.slice(urlStart, urlEnd);
@@ -31,7 +31,7 @@ import { GeneralImportGlobOptions, ImportGlobFunction, ImportGlobOptions, KnownA
31
31
 
32
32
  //#region \0rolldown/runtime.js
33
33
  //#endregion
34
- //#region ../../node_modules/.pnpm/@vitejs+devtools@0.0.0-alpha.33_typescript@5.9.3_vite@packages+vite_vue@3.5.30_typescript@5.9.3_/node_modules/@vitejs/devtools/dist/cli-commands.d.ts
34
+ //#region ../../node_modules/.pnpm/@vitejs+devtools@0.1.0_typescript@5.9.3_vite@packages+vite_vue@3.5.30_typescript@5.9.3_/node_modules/@vitejs/devtools/dist/cli-commands.d.ts
35
35
  //#region src/node/cli-commands.d.ts
36
36
  interface StartOptions {
37
37
  root?: string;
@@ -41,7 +41,7 @@ interface StartOptions {
41
41
  open?: boolean;
42
42
  }
43
43
  //#endregion
44
- //#region ../../node_modules/.pnpm/@vitejs+devtools@0.0.0-alpha.33_typescript@5.9.3_vite@packages+vite_vue@3.5.30_typescript@5.9.3_/node_modules/@vitejs/devtools/dist/config.d.ts
44
+ //#region ../../node_modules/.pnpm/@vitejs+devtools@0.1.0_typescript@5.9.3_vite@packages+vite_vue@3.5.30_typescript@5.9.3_/node_modules/@vitejs/devtools/dist/config.d.ts
45
45
  //#region src/node/config.d.ts
46
46
  interface DevToolsConfig extends Partial<StartOptions> {
47
47
  enabled: boolean;
@@ -3687,7 +3687,7 @@ declare class RunnableDevEnvironment extends DevEnvironment {
3687
3687
  private _runnerOptions;
3688
3688
  constructor(name: string, config: ResolvedConfig, context: RunnableDevEnvironmentContext);
3689
3689
  get runner(): ModuleRunner;
3690
- close(): Promise<void>;
3690
+ override close(): Promise<void>;
3691
3691
  }
3692
3692
  //#endregion
3693
3693
  //#region src/node/server/environments/fetchableEnvironments.d.ts
@@ -515,7 +515,7 @@ function analyzeImportedModDifference(mod, rawId, moduleType, metadata) {
515
515
  let missingBindings = metadata.importedNames.filter((s) => !(s in mod));
516
516
  if (missingBindings.length) {
517
517
  let lastBinding = missingBindings[missingBindings.length - 1];
518
- throw moduleType === "module" ? SyntaxError(`[vite] The requested module '${rawId}' does not provide an export named '${lastBinding}'`) : SyntaxError(`\
518
+ throw SyntaxError(moduleType === "module" ? `[vite] The requested module '${rawId}' does not provide an export named '${lastBinding}'` : `\
519
519
  [vite] Named export '${lastBinding}' not found. The requested module '${rawId}' is a CommonJS module, which may not support all module.exports as named exports.
520
520
  CommonJS modules can always be imported via the default export, for example using:
521
521
 
@@ -526,7 +526,7 @@ const {${missingBindings.join(", ")}} = pkg;
526
526
  }
527
527
  }
528
528
  //#endregion
529
- //#region ../../node_modules/.pnpm/nanoid@5.1.6/node_modules/nanoid/non-secure/index.js
529
+ //#region ../../node_modules/.pnpm/nanoid@5.1.7/node_modules/nanoid/non-secure/index.js
530
530
  let nanoid = (size = 21) => {
531
531
  let id = "", i = size | 0;
532
532
  for (; i--;) id += "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[Math.random() * 64 | 0];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vite",
3
- "version": "8.0.0",
3
+ "version": "8.0.1",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "author": "Evan You",
@@ -60,11 +60,10 @@
60
60
  "funding": "https://github.com/vitejs/vite?sponsor=1",
61
61
  "//": "READ CONTRIBUTING.md to understand what to put under deps vs. devDeps!",
62
62
  "dependencies": {
63
- "@oxc-project/runtime": "0.115.0",
64
63
  "lightningcss": "^1.32.0",
65
64
  "picomatch": "^4.0.3",
66
65
  "postcss": "^8.5.8",
67
- "rolldown": "1.0.0-rc.9",
66
+ "rolldown": "1.0.0-rc.10",
68
67
  "tinyglobby": "^0.2.15"
69
68
  },
70
69
  "optionalDependencies": {
@@ -78,13 +77,13 @@
78
77
  "@rollup/plugin-alias": "^6.0.0",
79
78
  "@rollup/plugin-dynamic-import-vars": "2.1.4",
80
79
  "@rollup/pluginutils": "^5.3.0",
81
- "@vercel/detect-agent": "^1.1.0",
80
+ "@vercel/detect-agent": "^1.2.1",
82
81
  "@types/escape-html": "^1.0.4",
83
82
  "@types/pnpapi": "^0.0.5",
84
- "@vitest/utils": "4.1.0-beta.6",
85
- "@vitejs/devtools": "^0.0.0-alpha.33",
83
+ "@vitest/utils": "4.1.0",
84
+ "@vitejs/devtools": "^0.1.0",
86
85
  "artichokie": "^0.4.2",
87
- "baseline-browser-mapping": "^2.10.0",
86
+ "baseline-browser-mapping": "^2.10.8",
88
87
  "cac": "^7.0.0",
89
88
  "chokidar": "^3.6.0",
90
89
  "connect": "^3.7.0",
@@ -93,7 +92,7 @@
93
92
  "cross-spawn": "^7.0.6",
94
93
  "dotenv-expand": "^12.0.3",
95
94
  "es-module-lexer": "^1.7.0",
96
- "esbuild": "^0.27.3",
95
+ "esbuild": "^0.27.4",
97
96
  "escape-html": "^1.0.3",
98
97
  "estree-walker": "^3.0.3",
99
98
  "etag": "^1.8.1",
@@ -103,7 +102,7 @@
103
102
  "magic-string": "^0.30.21",
104
103
  "mlly": "^1.8.1",
105
104
  "mrmime": "^2.0.1",
106
- "nanoid": "^5.1.6",
105
+ "nanoid": "^5.1.7",
107
106
  "obug": "^1.0.2",
108
107
  "open": "^10.2.0",
109
108
  "parse5": "^8.0.0",
@@ -115,11 +114,11 @@
115
114
  "postcss-modules": "^6.0.1",
116
115
  "premove": "^4.0.0",
117
116
  "resolve.exports": "^2.0.3",
118
- "rolldown-plugin-dts": "^0.22.2",
117
+ "rolldown-plugin-dts": "^0.22.5",
119
118
  "rollup": "^4.59.0",
120
119
  "rollup-plugin-license": "^3.7.0",
121
- "sass": "^1.97.3",
122
- "sass-embedded": "^1.97.3",
120
+ "sass": "^1.98.0",
121
+ "sass-embedded": "^1.98.0",
123
122
  "sirv": "^3.0.2",
124
123
  "strip-literal": "^3.1.0",
125
124
  "terser": "^5.46.0",
@@ -128,7 +127,7 @@
128
127
  },
129
128
  "peerDependencies": {
130
129
  "@types/node": "^20.19.0 || >=22.12.0",
131
- "@vitejs/devtools": "^0.0.0-alpha.31",
130
+ "@vitejs/devtools": "^0.1.0",
132
131
  "esbuild": "^0.27.0",
133
132
  "jiti": ">=1.21.0",
134
133
  "less": "^4.0.0",