vite 2.9.1 → 2.9.2

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.

Potentially problematic release.


This version of vite might be problematic. Click here for more details.

@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./dep-611778e0.js');
3
+ var index = require('./dep-e7afa13e.js');
4
4
 
5
5
  function _mergeNamespaces(n, m) {
6
6
  for (var i = 0; i < m.length; i++) {
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var require$$0 = require('postcss');
4
- var index$1 = require('./dep-611778e0.js');
4
+ var index$1 = require('./dep-e7afa13e.js');
5
5
  var path$2 = require('path');
6
6
  var require$$1 = require('crypto');
7
7
  var fs = require('fs');
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./dep-611778e0.js');
3
+ var index = require('./dep-e7afa13e.js');
4
4
  var require$$1 = require('crypto');
5
5
  require('fs');
6
6
  require('path');
@@ -11720,6 +11720,9 @@ var digestInfoValidator = {
11720
11720
  name: 'DigestInfo.DigestAlgorithm.parameters',
11721
11721
  tagClass: asn1$5.Class.UNIVERSAL,
11722
11722
  type: asn1$5.Type.NULL,
11723
+ // captured only to check existence for md2 and md5
11724
+ capture: 'parameters',
11725
+ optional: true,
11723
11726
  constructed: false
11724
11727
  }]
11725
11728
  }, {
@@ -12621,6 +12624,16 @@ pki$4.setRsaPublicKey = pki$4.rsa.setPublicKey = function(n, e) {
12621
12624
  throw error;
12622
12625
  }
12623
12626
 
12627
+ // special check for md2 and md5 that NULL parameters exist
12628
+ if(oid === forge$8.oids.md2 || oid === forge$8.oids.md5) {
12629
+ if(!('parameters' in capture)) {
12630
+ throw new Error(
12631
+ 'ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 ' +
12632
+ 'DigestInfo value. ' +
12633
+ 'Missing algorithm identifer NULL parameters.');
12634
+ }
12635
+ }
12636
+
12624
12637
  // compare the given digest to the decrypted one
12625
12638
  return digest === capture.digest;
12626
12639
  }
@@ -1150,6 +1150,20 @@ const DEFAULT_MAIN_FIELDS = [
1150
1150
  'jsnext:main',
1151
1151
  'jsnext'
1152
1152
  ];
1153
+ /**
1154
+ * A non-exhaustive list of known-to-be-ES-module entry names.
1155
+ * From <https://github.com/stereobooster/package.json#package-bundlers>
1156
+ */
1157
+ const KNOWN_ESM_MAIN_FIELDS = [
1158
+ 'module',
1159
+ 'jsnext:main',
1160
+ 'jsnext',
1161
+ 'esnext',
1162
+ 'es2015',
1163
+ 'es2020',
1164
+ 'fesm2015',
1165
+ 'fesm2020'
1166
+ ];
1153
1167
  const DEFAULT_EXTENSIONS$1 = [
1154
1168
  '.mjs',
1155
1169
  '.js',
@@ -2103,6 +2117,7 @@ const ssrExtensions = ['.js', '.cjs', '.json', '.node'];
2103
2117
  function resolveFrom(id, basedir, preserveSymlinks = false, ssr = false) {
2104
2118
  return resolve__default.sync(id, {
2105
2119
  basedir,
2120
+ paths: [],
2106
2121
  extensions: ssr ? ssrExtensions : DEFAULT_EXTENSIONS$1,
2107
2122
  // necessary to work with pnpm
2108
2123
  preserveSymlinks: preserveSymlinks || isRunningWithYarnPnp || false
@@ -2599,8 +2614,7 @@ function parseRequest(id) {
2599
2614
  }
2600
2615
  return Object.fromEntries(new require$$0$4.URLSearchParams(search.slice(1)));
2601
2616
  }
2602
- const blankReplacer = (match) => ' '.repeat(match.length);
2603
- const stringsRE = /"[^"]*"|'[^']*'|`[^`]*`/g;
2617
+ const blankReplacer$1 = (match) => ' '.repeat(match.length);
2604
2618
 
2605
2619
  /* eslint no-console: 0 */
2606
2620
  const LogLevels = {
@@ -5188,13 +5202,21 @@ async function findAll(dir, options) {
5188
5202
  }
5189
5203
  async function* findTSConfig(dir, options, visited = /* @__PURE__ */ new Set()) {
5190
5204
  if (!visited.has(dir)) {
5191
- const dirents = await fs$n.promises.readdir(dir, { withFileTypes: true });
5192
- for (const dirent of dirents) {
5193
- if (dirent.isDirectory() && (!(options == null ? void 0 : options.skip) || !options.skip(dirent.name))) {
5194
- yield* findTSConfig(path__default.resolve(dir, dirent.name), options, visited);
5195
- } else if (dirent.isFile() && dirent.name === "tsconfig.json") {
5196
- yield path__default.resolve(dir, dirent.name);
5205
+ visited.add(dir);
5206
+ try {
5207
+ const dirents = await fs$n.promises.readdir(dir, { withFileTypes: true });
5208
+ for (const dirent of dirents) {
5209
+ if (dirent.isDirectory() && (!(options == null ? void 0 : options.skip) || !options.skip(dirent.name))) {
5210
+ yield* findTSConfig(path__default.resolve(dir, dirent.name), options, visited);
5211
+ } else if (dirent.isFile() && dirent.name === "tsconfig.json") {
5212
+ yield path__default.resolve(dir, dirent.name);
5213
+ }
5197
5214
  }
5215
+ } catch (e) {
5216
+ if (e.code === "EACCES" || e.code === "ENOENT") {
5217
+ return;
5218
+ }
5219
+ throw e;
5198
5220
  }
5199
5221
  }
5200
5222
  }
@@ -5632,7 +5654,7 @@ var TSConfckParseError = class extends Error {
5632
5654
  const debug$f = createDebugger('vite:esbuild');
5633
5655
  let server;
5634
5656
  async function transformWithEsbuild(code, filename, options, inMap) {
5635
- var _a, _b, _c;
5657
+ var _a;
5636
5658
  let loader = options === null || options === void 0 ? void 0 : options.loader;
5637
5659
  if (!loader) {
5638
5660
  // if the id ends with a valid ext, use it (e.g. vue blocks)
@@ -5653,6 +5675,7 @@ async function transformWithEsbuild(code, filename, options, inMap) {
5653
5675
  // these fields would affect the compilation result
5654
5676
  // https://esbuild.github.io/content-types/#tsconfig-json
5655
5677
  const meaningfulFields = [
5678
+ 'target',
5656
5679
  'jsxFactory',
5657
5680
  'jsxFragmentFactory',
5658
5681
  'useDefineForClassFields',
@@ -5669,12 +5692,6 @@ async function transformWithEsbuild(code, filename, options, inMap) {
5669
5692
  compilerOptionsForFile[field] = loadedCompilerOptions[field];
5670
5693
  }
5671
5694
  }
5672
- // align with TypeScript 4.3
5673
- // https://github.com/microsoft/TypeScript/pull/42663
5674
- if (((_b = loadedCompilerOptions.target) === null || _b === void 0 ? void 0 : _b.toLowerCase()) === 'esnext') {
5675
- compilerOptionsForFile.useDefineForClassFields =
5676
- (_c = loadedCompilerOptions.useDefineForClassFields) !== null && _c !== void 0 ? _c : true;
5677
- }
5678
5695
  }
5679
5696
  tsconfigRaw = {
5680
5697
  ...tsconfigRaw,
@@ -17089,9 +17106,9 @@ class EntryFilter {
17089
17106
  }
17090
17107
  entry$1.default = EntryFilter;
17091
17108
 
17092
- var error$3 = {};
17109
+ var error$4 = {};
17093
17110
 
17094
- Object.defineProperty(error$3, "__esModule", { value: true });
17111
+ Object.defineProperty(error$4, "__esModule", { value: true });
17095
17112
  const utils$7 = utils$l;
17096
17113
  class ErrorFilter {
17097
17114
  constructor(_settings) {
@@ -17104,7 +17121,7 @@ class ErrorFilter {
17104
17121
  return utils$7.errno.isEnoentCodeError(error) || this._settings.suppressErrors;
17105
17122
  }
17106
17123
  }
17107
- error$3.default = ErrorFilter;
17124
+ error$4.default = ErrorFilter;
17108
17125
 
17109
17126
  var entry = {};
17110
17127
 
@@ -17138,7 +17155,7 @@ Object.defineProperty(provider, "__esModule", { value: true });
17138
17155
  const path$c = path__default;
17139
17156
  const deep_1 = deep;
17140
17157
  const entry_1 = entry$1;
17141
- const error_1 = error$3;
17158
+ const error_1 = error$4;
17142
17159
  const entry_2 = entry;
17143
17160
  class Provider {
17144
17161
  constructor(_settings) {
@@ -18751,8 +18768,8 @@ class MagicString {
18751
18768
  }
18752
18769
  }
18753
18770
 
18754
- /* es-module-lexer 0.10.1 */
18755
- const A=1===new Uint8Array(new Uint16Array([1]).buffer)[0];function parse$h(E,g="@"){if(!C)return init.then(()=>parse$h(E));const I=E.length+1,o=(C.__heap_base.value||C.__heap_base)+4*I-C.memory.buffer.byteLength;o>0&&C.memory.grow(Math.ceil(o/65536));const k=C.sa(I-1);if((A?B:Q)(E,new Uint16Array(C.memory.buffer,k,I)),!C.parse())throw Object.assign(new Error(`Parse error ${g}:${E.slice(0,C.e()).split("\n").length}:${C.e()-E.lastIndexOf("\n",C.e()-1)}`),{idx:C.e()});const J=[],i=[];for(;C.ri();){const A=C.is(),Q=C.ie(),B=C.ai(),g=C.id(),I=C.ss(),o=C.se();let k;C.ip()&&(k=w(E.slice(-1===g?A-1:A,-1===g?Q+1:Q))),J.push({n:k,s:A,e:Q,ss:I,se:o,d:g,a:B});}for(;C.re();){const A=E.slice(C.es(),C.ee()),Q=A[0];i.push('"'===Q||"'"===Q?w(A):A);}function w(A){try{return (0, eval)(A)}catch(A){}}return [J,i,!!C.f()]}function Q(A,Q){const B=A.length;let C=0;for(;C<B;){const B=A.charCodeAt(C);Q[C++]=(255&B)<<8|B>>>8;}}function B(A,Q){const B=A.length;let C=0;for(;C<B;)Q[C]=A.charCodeAt(C++);}let C;const init=WebAssembly.compile((E="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ajYCiApBARAhIQMLQQAoAogKIQICQCADQf0ARg0AIAIgAUYNBSACIQEgAkEAKAKMCk0NAQwFCwtBACACQQJqNgKICgwBC0EAIANBAmo2AogKQQEQIRpBACgCiAoiAiACECYaC0EBECEhAgtBACgCiAohAwJAIAJB5gBHDQAgA0ECakGeCEEGECgNAEEAIANBCGo2AogKIABBARAhECIPC0EAIANBfmo2AogKDAMLEB0PCwJAIAMpAAJC7ICEg7COwDlSDQAgAy8BChAeRQ0AQQAgA0EKajYCiApBARAhIQJBACgCiAohAyACECQaIANBACgCiAoQAkEAQQAoAogKQX5qNgKICg8LQQAgA0EEaiIDNgKICgtBACADQQRqIgI2AogKQQBBADoA5AkDQEEAIAJBAmo2AogKQQEQISEDQQAoAogKIQICQCADECRBIHJB+wBHDQBBAEEAKAKICkF+ajYCiAoPC0EAKAKICiIDIAJGDQEgAiADEAICQEEBECEiAkEsRg0AAkAgAkE9Rw0AQQBBACgCiApBfmo2AogKDwtBAEEAKAKICkF+ajYCiAoPC0EAKAKICiECDAALCw8LQQAgA0EKajYCiApBARAhGkEAKAKICiEDC0EAIANBEGo2AogKAkBBARAhIgJBKkcNAEEAQQAoAogKQQJqNgKICkEBECEhAgtBACgCiAohAyACECQaIANBACgCiAoQAkEAQQAoAogKQX5qNgKICg8LIAMgA0EOahACC6sGAQR/QQBBACgCiAoiAEEMaiIBNgKICgJAAkACQAJAAkACQAJAAkACQAJAQQEQISICQVlqDggCCAECAQEBBwALIAJBIkYNASACQfsARg0CC0EAKAKICiABRg0HC0EALwHqCQ0BQQAoAogKIQJBACgCjAohAwNAIAIgA08NBAJAAkAgAi8BACIBQSdGDQAgAUEiRw0BCyAAIAEQIg8LQQAgAkECaiICNgKICgwACwtBACgCiAohAkEALwHqCQ0BAkADQAJAAkACQCACQQAoAowKTw0AQQEQISICQSJGDQEgAkEnRg0BIAJB/QBHDQJBAEEAKAKICkECajYCiAoLQQEQIRpBACgCiAoiAikAAELmgMiD8I3ANlINBkEAIAJBCGo2AogKQQEQISICQSJGDQMgAkEnRg0DDAYLIAIQFwtBAEEAKAKICkECaiICNgKICgwACwsgACACECIMBQtBAEEAKAKICkF+ajYCiAoPC0EAIAJBfmo2AogKDwsQHQ8LQQBBACgCiApBAmo2AogKQQEQIUHtAEcNAUEAKAKICiICQQJqQZYIQQYQKA0BQQAoAvAJLwEAQS5GDQEgACAAIAJBCGpBACgCqAkQAQ8LQQAoAvwJQQAvAeoJIgJBAnRqQQAoAogKNgIAQQAgAkEBajsB6glBACgC8AkvAQBBLkYNAEEAQQAoAogKIgFBAmo2AogKQQEQISECIABBACgCiApBACABEAFBAEEALwHoCSIBQQFqOwHoCUEAKAKACiABQQJ0akEAKALECTYCAAJAIAJBIkYNACACQSdGDQBBAEEAKAKICkF+ajYCiAoPCyACEBdBAEEAKAKICkECaiICNgKICgJAAkACQEEBECFBV2oOBAECAgACC0EAQQAoAogKQQJqNgKICkEBECEaQQAoAsQJIgEgAjYCBCABQQE6ABggAUEAKAKICiICNgIQQQAgAkF+ajYCiAoPC0EAKALECSIBIAI2AgQgAUEBOgAYQQBBAC8B6glBf2o7AeoJIAFBACgCiApBAmo2AgxBAEEALwHoCUF/ajsB6AkPC0EAQQAoAogKQX5qNgKICg8LC0cBA39BACgCiApBAmohAEEAKAKMCiEBAkADQCAAIgJBfmogAU8NASACQQJqIQAgAi8BAEF2ag4EAQAAAQALC0EAIAI2AogKC5gBAQN/QQBBACgCiAoiAUECajYCiAogAUEGaiEBQQAoAowKIQIDQAJAAkACQCABQXxqIAJPDQAgAUF+ai8BACEDAkACQCAADQAgA0EqRg0BIANBdmoOBAIEBAIECyADQSpHDQMLIAEvAQBBL0cNAkEAIAFBfmo2AogKDAELIAFBfmohAQtBACABNgKICg8LIAFBAmohAQwACwu/AQEEf0EAKAKICiEAQQAoAowKIQECQAJAA0AgACICQQJqIQAgAiABTw0BAkACQCAALwEAIgNBpH9qDgUBAgICBAALIANBJEcNASACLwEEQfsARw0BQQBBAC8B5gkiAEEBajsB5glBACgC+AkgAEEBdGpBAC8B7Ak7AQBBACACQQRqNgKICkEAQQAvAeoJQQFqIgA7AewJQQAgADsB6gkPCyACQQRqIQAMAAsLQQAgADYCiAoQHQ8LQQAgADYCiAoL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","undefined"!=typeof Buffer?Buffer.from(E,"base64"):Uint8Array.from(atob(E),A=>A.charCodeAt(0)))).then(WebAssembly.instantiate).then(({exports:A})=>{C=A;});var E;
18771
+ /* es-module-lexer 0.10.5 */
18772
+ const A=1===new Uint8Array(new Uint16Array([1]).buffer)[0];function parse$h(E,g="@"){if(!C)return init.then((()=>parse$h(E)));const I=E.length+1,o=(C.__heap_base.value||C.__heap_base)+4*I-C.memory.buffer.byteLength;o>0&&C.memory.grow(Math.ceil(o/65536));const k=C.sa(I-1);if((A?B:Q)(E,new Uint16Array(C.memory.buffer,k,I)),!C.parse())throw Object.assign(new Error(`Parse error ${g}:${E.slice(0,C.e()).split("\n").length}:${C.e()-E.lastIndexOf("\n",C.e()-1)}`),{idx:C.e()});const J=[],i=[];for(;C.ri();){const A=C.is(),Q=C.ie(),B=C.ai(),g=C.id(),I=C.ss(),o=C.se();let k;C.ip()&&(k=w(E.slice(-1===g?A-1:A,-1===g?Q+1:Q))),J.push({n:k,s:A,e:Q,ss:I,se:o,d:g,a:B});}for(;C.re();){const A=E.slice(C.es(),C.ee()),Q=A[0];i.push('"'===Q||"'"===Q?w(A):A);}function w(A){try{return (0, eval)(A)}catch(A){}}return [J,i,!!C.f()]}function Q(A,Q){const B=A.length;let C=0;for(;C<B;){const B=A.charCodeAt(C);Q[C++]=(255&B)<<8|B>>>8;}}function B(A,Q){const B=A.length;let C=0;for(;C<B;)Q[C]=A.charCodeAt(C++);}let C;const init=WebAssembly.compile((E="AGFzbQEAAAABKghgAX8Bf2AEf39/fwBgAn9/AGAAAX9gAABgAX8AYAN/f38Bf2ACf38BfwMqKQABAgMDAwMDAwMDAwMDAwMAAAQEBAUEBQAAAAAEBAAGBwACAAAABwMGBAUBcAEBAQUDAQABBg8CfwFBkPIAC38AQZDyAAsHZBEGbWVtb3J5AgACc2EAAAFlAAMCaXMABAJpZQAFAnNzAAYCc2UABwJhaQAIAmlkAAkCaXAACgJlcwALAmVlAAwCcmkADQJyZQAOAWYADwVwYXJzZQAQC19faGVhcF9iYXNlAwEKhjQpaAEBf0EAIAA2AtQJQQAoArAJIgEgAEEBdGoiAEEAOwEAQQAgAEECaiIANgLYCUEAIAA2AtwJQQBBADYCtAlBAEEANgLECUEAQQA2ArwJQQBBADYCuAlBAEEANgLMCUEAQQA2AsAJIAELnwEBA39BACgCxAkhBEEAQQAoAtwJIgU2AsQJQQAgBDYCyAlBACAFQSBqNgLcCSAEQRxqQbQJIAQbIAU2AgBBACgCqAkhBEEAKAKkCSEGIAUgATYCACAFIAA2AgggBSACIAJBAmpBACAGIANGGyAEIANGGzYCDCAFIAM2AhQgBUEANgIQIAUgAjYCBCAFQQA2AhwgBUEAKAKkCSADRjoAGAtIAQF/QQAoAswJIgJBCGpBuAkgAhtBACgC3AkiAjYCAEEAIAI2AswJQQAgAkEMajYC3AkgAkEANgIIIAIgATYCBCACIAA2AgALCABBACgC4AkLFQBBACgCvAkoAgBBACgCsAlrQQF1Cx4BAX9BACgCvAkoAgQiAEEAKAKwCWtBAXVBfyAAGwsVAEEAKAK8CSgCCEEAKAKwCWtBAXULHgEBf0EAKAK8CSgCDCIAQQAoArAJa0EBdUF/IAAbCx4BAX9BACgCvAkoAhAiAEEAKAKwCWtBAXVBfyAAGws7AQF/AkBBACgCvAkoAhQiAEEAKAKkCUcNAEF/DwsCQCAAQQAoAqgJRw0AQX4PCyAAQQAoArAJa0EBdQsLAEEAKAK8CS0AGAsVAEEAKALACSgCAEEAKAKwCWtBAXULFQBBACgCwAkoAgRBACgCsAlrQQF1CyUBAX9BAEEAKAK8CSIAQRxqQbQJIAAbKAIAIgA2ArwJIABBAEcLJQEBf0EAQQAoAsAJIgBBCGpBuAkgABsoAgAiADYCwAkgAEEARwsIAEEALQDkCQvnCwEGfyMAQYDaAGsiASQAQQBBAToA5AlBAEH//wM7AewJQQBBACgCrAk2AvAJQQBBACgCsAlBfmoiAjYCiApBACACQQAoAtQJQQF0aiIDNgKMCkEAQQA7AeYJQQBBADsB6AlBAEEAOwHqCUEAQQA6APQJQQBBADYC4AlBAEEAOgDQCUEAIAFBgNIAajYC+AlBACABQYASajYC/AlBACABNgKACkEAQQA6AIQKAkACQAJAAkADQEEAIAJBAmoiBDYCiAogAiADTw0BAkAgBC8BACIDQXdqQQVJDQACQAJAAkACQAJAIANBm39qDgUBCAgIAgALIANBIEYNBCADQS9GDQMgA0E7Rg0CDAcLQQAvAeoJDQEgBBARRQ0BIAJBBGpBgghBChAoDQEQEkEALQDkCQ0BQQBBACgCiAoiAjYC8AkMBwsgBBARRQ0AIAJBBGpBjAhBChAoDQAQEwtBAEEAKAKICjYC8AkMAQsCQCACLwEEIgRBKkYNACAEQS9HDQQQFAwBC0EBEBULQQAoAowKIQNBACgCiAohAgwACwtBACEDIAQhAkEALQDQCQ0CDAELQQAgAjYCiApBAEEAOgDkCQsDQEEAIAJBAmoiBDYCiAoCQAJAAkACQAJAAkAgAkEAKAKMCk8NACAELwEAIgNBd2pBBUkNBQJAAkACQAJAAkACQAJAAkACQAJAIANBYGoOCg8OCA4ODg4HAQIACwJAAkACQAJAIANBoH9qDgoIEREDEQERERECAAsgA0GFf2oOAwUQBgsLQQAvAeoJDQ8gBBARRQ0PIAJBBGpBgghBChAoDQ8QEgwPCyAEEBFFDQ4gAkEEakGMCEEKECgNDhATDA4LIAQQEUUNDSACKQAEQuyAhIOwjsA5Ug0NIAIvAQwiBEF3aiICQRdLDQtBASACdEGfgIAEcUUNCwwMC0EAQQAvAeoJIgJBAWo7AeoJQQAoAvwJIAJBAnRqQQAoAvAJNgIADAwLQQAvAeoJIgNFDQhBACADQX9qIgU7AeoJQQAvAegJIgNFDQsgA0ECdEEAKAKACmpBfGooAgAiBigCFEEAKAL8CSAFQf//A3FBAnRqKAIARw0LAkAgBigCBA0AIAYgBDYCBAtBACADQX9qOwHoCSAGIAJBBGo2AgwMCwsCQEEAKALwCSIELwEAQSlHDQBBACgCxAkiAkUNACACKAIEIARHDQBBAEEAKALICSICNgLECQJAIAJFDQAgAkEANgIcDAELQQBBADYCtAkLIAFBgBBqQQAvAeoJIgJqQQAtAIQKOgAAQQAgAkEBajsB6glBACgC/AkgAkECdGogBDYCAEEAQQA6AIQKDAoLQQAvAeoJIgJFDQZBACACQX9qIgM7AeoJIAJBAC8B7AkiBEcNAUEAQQAvAeYJQX9qIgI7AeYJQQBBACgC+AkgAkH//wNxQQF0ai8BADsB7AkLEBYMCAsgBEH//wNGDQcgA0H//wNxIARJDQQMBwtBJxAXDAYLQSIQFwwFCyADQS9HDQQCQAJAIAIvAQQiAkEqRg0AIAJBL0cNARAUDAcLQQEQFQwGCwJAAkACQAJAQQAoAvAJIgQvAQAiAhAYRQ0AAkACQAJAIAJBVWoOBAEFAgAFCyAEQX5qLwEAQVBqQf//A3FBCkkNAwwECyAEQX5qLwEAQStGDQIMAwsgBEF+ai8BAEEtRg0BDAILAkAgAkH9AEYNACACQSlHDQFBACgC/AlBAC8B6glBAnRqKAIAEBlFDQEMAgtBACgC/AlBAC8B6gkiA0ECdGooAgAQGg0BIAFBgBBqIANqLQAADQELIAQQGw0AIAJFDQBBASEEIAJBL0ZBAC0A9AlBAEdxRQ0BCxAcQQAhBAtBACAEOgD0CQwEC0EALwHsCUH//wNGQQAvAeoJRXFBAC0A0AlFcUEALwHoCUVxIQMMBgsQHUEAIQMMBQsgBEGgAUcNAQtBAEEBOgCECgtBAEEAKAKICjYC8AkLQQAoAogKIQIMAAsLIAFBgNoAaiQAIAMLHQACQEEAKAKwCSAARw0AQQEPCyAAQX5qLwEAEB4LpgYBBH9BAEEAKAKICiIAQQxqIgE2AogKQQEQISECAkACQAJAAkACQEEAKAKICiIDIAFHDQAgAhAlRQ0BCwJAAkACQAJAAkAgAkGff2oODAYBAwgBBwEBAQEBBAALAkACQCACQSpGDQAgAkH2AEYNBSACQfsARw0CQQAgA0ECajYCiApBARAhIQNBACgCiAohAQNAAkACQCADQf//A3EiAkEiRg0AIAJBJ0YNACACECQaQQAoAogKIQIMAQsgAhAXQQBBACgCiApBAmoiAjYCiAoLQQEQIRoCQCABIAIQJiIDQSxHDQBBAEEAKAKICkECajYCiApBARAhIQMLQQAoAogKIQICQCADQf0ARg0AIAIgAUYNBSACIQEgAkEAKAKMCk0NAQwFCwtBACACQQJqNgKICgwBC0EAIANBAmo2AogKQQEQIRpBACgCiAoiAiACECYaC0EBECEhAgtBACgCiAohAwJAIAJB5gBHDQAgA0ECakGeCEEGECgNAEEAIANBCGo2AogKIABBARAhECIPC0EAIANBfmo2AogKDAMLEB0PCwJAIAMpAAJC7ICEg7COwDlSDQAgAy8BChAeRQ0AQQAgA0EKajYCiApBARAhIQJBACgCiAohAyACECQaIANBACgCiAoQAkEAQQAoAogKQX5qNgKICg8LQQAgA0EEaiIDNgKICgtBACADQQRqIgI2AogKQQBBADoA5AkDQEEAIAJBAmo2AogKQQEQISEDQQAoAogKIQICQCADECRBIHJB+wBHDQBBAEEAKAKICkF+ajYCiAoPC0EAKAKICiIDIAJGDQEgAiADEAICQEEBECEiAkEsRg0AAkAgAkE9Rw0AQQBBACgCiApBfmo2AogKDwtBAEEAKAKICkF+ajYCiAoPC0EAKAKICiECDAALCw8LQQAgA0EKajYCiApBARAhGkEAKAKICiEDC0EAIANBEGo2AogKAkBBARAhIgJBKkcNAEEAQQAoAogKQQJqNgKICkEBECEhAgtBACgCiAohAyACECQaIANBACgCiAoQAkEAQQAoAogKQX5qNgKICg8LIAMgA0EOahACC6sGAQR/QQBBACgCiAoiAEEMaiIBNgKICgJAAkACQAJAAkACQAJAAkACQAJAQQEQISICQVlqDggCCAECAQEBBwALIAJBIkYNASACQfsARg0CC0EAKAKICiABRg0HC0EALwHqCQ0BQQAoAogKIQJBACgCjAohAwNAIAIgA08NBAJAAkAgAi8BACIBQSdGDQAgAUEiRw0BCyAAIAEQIg8LQQAgAkECaiICNgKICgwACwtBACgCiAohAkEALwHqCQ0BAkADQAJAAkACQCACQQAoAowKTw0AQQEQISICQSJGDQEgAkEnRg0BIAJB/QBHDQJBAEEAKAKICkECajYCiAoLQQEQIRpBACgCiAoiAikAAELmgMiD8I3ANlINBkEAIAJBCGo2AogKQQEQISICQSJGDQMgAkEnRg0DDAYLIAIQFwtBAEEAKAKICkECaiICNgKICgwACwsgACACECIMBQtBAEEAKAKICkF+ajYCiAoPC0EAIAJBfmo2AogKDwsQHQ8LQQBBACgCiApBAmo2AogKQQEQIUHtAEcNAUEAKAKICiICQQJqQZYIQQYQKA0BQQAoAvAJLwEAQS5GDQEgACAAIAJBCGpBACgCqAkQAQ8LQQAoAvwJQQAvAeoJIgJBAnRqQQAoAogKNgIAQQAgAkEBajsB6glBACgC8AkvAQBBLkYNAEEAQQAoAogKIgFBAmo2AogKQQEQISECIABBACgCiApBACABEAFBAEEALwHoCSIBQQFqOwHoCUEAKAKACiABQQJ0akEAKALECTYCAAJAIAJBIkYNACACQSdGDQBBAEEAKAKICkF+ajYCiAoPCyACEBdBAEEAKAKICkECaiICNgKICgJAAkACQEEBECFBV2oOBAECAgACC0EAQQAoAogKQQJqNgKICkEBECEaQQAoAsQJIgEgAjYCBCABQQE6ABggAUEAKAKICiICNgIQQQAgAkF+ajYCiAoPC0EAKALECSIBIAI2AgQgAUEBOgAYQQBBAC8B6glBf2o7AeoJIAFBACgCiApBAmo2AgxBAEEALwHoCUF/ajsB6AkPC0EAQQAoAogKQX5qNgKICg8LC0cBA39BACgCiApBAmohAEEAKAKMCiEBAkADQCAAIgJBfmogAU8NASACQQJqIQAgAi8BAEF2ag4EAQAAAQALC0EAIAI2AogKC5gBAQN/QQBBACgCiAoiAUECajYCiAogAUEGaiEBQQAoAowKIQIDQAJAAkACQCABQXxqIAJPDQAgAUF+ai8BACEDAkACQCAADQAgA0EqRg0BIANBdmoOBAIEBAIECyADQSpHDQMLIAEvAQBBL0cNAkEAIAFBfmo2AogKDAELIAFBfmohAQtBACABNgKICg8LIAFBAmohAQwACwu/AQEEf0EAKAKICiEAQQAoAowKIQECQAJAA0AgACICQQJqIQAgAiABTw0BAkACQCAALwEAIgNBpH9qDgUBAgICBAALIANBJEcNASACLwEEQfsARw0BQQBBAC8B5gkiAEEBajsB5glBACgC+AkgAEEBdGpBAC8B7Ak7AQBBACACQQRqNgKICkEAQQAvAeoJQQFqIgA7AewJQQAgADsB6gkPCyACQQRqIQAMAAsLQQAgADYCiAoQHQ8LQQAgADYCiAoL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","undefined"!=typeof Buffer?Buffer.from(E,"base64"):Uint8Array.from(atob(E),(A=>A.charCodeAt(0))))).then(WebAssembly.instantiate).then((({exports:A})=>{C=A;}));var E;
18756
18773
 
18757
18774
  var dist$1 = {};
18758
18775
 
@@ -18863,7 +18880,7 @@ function lilconfig(name, options) {
18863
18880
  const content = String(await fsReadFileAsync(filepath));
18864
18881
  const loader = loaders[loaderKey];
18865
18882
  if (fileName === 'package.json') {
18866
- const pkg = loader(filepath, content);
18883
+ const pkg = await loader(filepath, content);
18867
18884
  const maybeConfig = getPackageProp(packageProp, pkg);
18868
18885
  if (maybeConfig != null) {
18869
18886
  result.config = maybeConfig;
@@ -18881,7 +18898,7 @@ function lilconfig(name, options) {
18881
18898
  }
18882
18899
  else {
18883
18900
  validateLoader(loader, loaderKey);
18884
- result.config = loader(filepath, content);
18901
+ result.config = await loader(filepath, content);
18885
18902
  }
18886
18903
  result.filepath = filepath;
18887
18904
  break;
@@ -26667,10 +26684,112 @@ function polyfill() {
26667
26684
  }
26668
26685
  }
26669
26686
 
26687
+ // bank on the non-overlapping nature of regex matches and combine all filters into one giant regex
26688
+ // /`([^`\$\{\}]|\$\{(`|\g<1>)*\})*`/g can match nested string template
26689
+ // but js not support match expression(\g<0>). so clean string template(`...`) in other ways.
26690
+ const cleanerRE = /"[^"]*"|'[^']*'|\/\*(.|[\r\n])*?\*\/|\/\/.*/g;
26691
+ const blankReplacer = (s) => ' '.repeat(s.length);
26692
+ const stringBlankReplacer = (s) => `${s[0]}${'\0'.repeat(s.length - 2)}${s[0]}`;
26693
+ function emptyString(raw) {
26694
+ let res = raw.replace(cleanerRE, (s) => s[0] === '/' ? blankReplacer(s) : stringBlankReplacer(s));
26695
+ let lastEnd = 0;
26696
+ let start = 0;
26697
+ while ((start = res.indexOf('`', lastEnd)) >= 0) {
26698
+ let clean;
26699
+ [clean, lastEnd] = lexStringTemplateExpression(res, start);
26700
+ res = replaceAt(res, start, lastEnd, clean);
26701
+ }
26702
+ return res;
26703
+ }
26704
+ function replaceAt(string, start, end, replacement) {
26705
+ return string.slice(0, start) + replacement + string.slice(end);
26706
+ }
26707
+ /**
26708
+ * lex string template and clean it.
26709
+ */
26710
+ function lexStringTemplateExpression(code, start) {
26711
+ let state = 0 /* inTemplateString */;
26712
+ let clean = '`';
26713
+ const opStack = [state];
26714
+ function pushStack(newState) {
26715
+ state = newState;
26716
+ opStack.push(state);
26717
+ }
26718
+ function popStack() {
26719
+ opStack.pop();
26720
+ state = opStack[opStack.length - 1];
26721
+ }
26722
+ let i = start + 1;
26723
+ outer: for (; i < code.length; i++) {
26724
+ const char = code.charAt(i);
26725
+ switch (state) {
26726
+ case 0 /* inTemplateString */:
26727
+ if (char === '$' && code.charAt(i + 1) === '{') {
26728
+ pushStack(1 /* inInterpolationExpression */);
26729
+ clean += '${';
26730
+ i++; // jump next
26731
+ }
26732
+ else if (char === '`') {
26733
+ popStack();
26734
+ clean += char;
26735
+ if (opStack.length === 0) {
26736
+ break outer;
26737
+ }
26738
+ }
26739
+ else {
26740
+ clean += '\0';
26741
+ }
26742
+ break;
26743
+ case 1 /* inInterpolationExpression */:
26744
+ if (char === '{') {
26745
+ pushStack(2 /* inObjectExpression */);
26746
+ clean += char;
26747
+ }
26748
+ else if (char === '}') {
26749
+ popStack();
26750
+ clean += char;
26751
+ }
26752
+ else if (char === '`') {
26753
+ pushStack(0 /* inTemplateString */);
26754
+ clean += char;
26755
+ }
26756
+ else {
26757
+ clean += char;
26758
+ }
26759
+ break;
26760
+ case 2 /* inObjectExpression */:
26761
+ if (char === '}') {
26762
+ popStack();
26763
+ clean += char;
26764
+ }
26765
+ else if (char === '`') {
26766
+ pushStack(0 /* inTemplateString */);
26767
+ clean += char;
26768
+ }
26769
+ else {
26770
+ clean += char;
26771
+ }
26772
+ break;
26773
+ default:
26774
+ throw new Error('unknown string template lexer state');
26775
+ }
26776
+ }
26777
+ if (opStack.length !== 0) {
26778
+ error$3(start);
26779
+ }
26780
+ return [clean, i + 1];
26781
+ }
26782
+ function error$3(pos) {
26783
+ const err = new Error(`can not match string template expression.`);
26784
+ err.pos = pos;
26785
+ throw err;
26786
+ }
26787
+
26670
26788
  const htmlProxyRE$1 = /\?html-proxy=?[&inline\-css]*&index=(\d+)\.(js|css)$/;
26671
26789
  const inlineCSSRE$1 = /__VITE_INLINE_CSS__([^_]+_\d+)__/g;
26790
+ // Do not allow preceding '.', but do allow preceding '...' for spread operations
26791
+ const inlineImportRE = /(?<!(?<!\.\.)\.)\bimport\s*\(("[^"]*"|'[^']*')\)/g;
26672
26792
  const htmlLangRE = /\.(html|htm)$/;
26673
- const inlineImportRE = /\bimport\s*\(("[^"]*"|'[^']*')\)/g;
26674
26793
  const isHTMLProxy = (id) => htmlProxyRE$1.test(id);
26675
26794
  const isHTMLRequest = (request) => htmlLangRE.test(request);
26676
26795
  // HTML Proxy Caches are stored by config -> filePath -> index
@@ -26732,7 +26851,7 @@ const assetAttrsConfig = {
26732
26851
  const isAsyncScriptMap = new WeakMap();
26733
26852
  async function traverseHtml(html, filePath, visitor) {
26734
26853
  // lazy load compiler
26735
- const { parse, transform } = await Promise.resolve().then(function () { return require('./dep-86378e0d.js'); }).then(function (n) { return n.compilerDom_cjs; });
26854
+ const { parse, transform } = await Promise.resolve().then(function () { return require('./dep-1df7b07f.js'); }).then(function (n) { return n.compilerDom_cjs; });
26736
26855
  // @vue/compiler-core doesn't like lowercase doctypes
26737
26856
  html = html.replace(/<!doctype\s/i, '<!DOCTYPE ');
26738
26857
  try {
@@ -26864,14 +26983,18 @@ function buildHtmlPlugin(config) {
26864
26983
  }
26865
26984
  else if (node.children.length) {
26866
26985
  const scriptNode = node.children.pop();
26867
- const code = scriptNode.content;
26986
+ const cleanCode = emptyString(scriptNode.content);
26868
26987
  let match;
26869
- while ((match = inlineImportRE.exec(code))) {
26870
- const { 0: full, 1: url, index } = match;
26871
- const startUrl = full.indexOf(url);
26872
- const start = scriptNode.loc.start.offset + index + startUrl + 1;
26988
+ while ((match = inlineImportRE.exec(cleanCode))) {
26989
+ const { 1: url, index } = match;
26990
+ const startUrl = cleanCode.indexOf(url, index);
26991
+ const start = startUrl + 1;
26873
26992
  const end = start + url.length - 2;
26874
- scriptUrls.push({ start, end, url: url.slice(1, -1) });
26993
+ scriptUrls.push({
26994
+ start: start + scriptNode.loc.start.offset,
26995
+ end: end + scriptNode.loc.start.offset,
26996
+ url: scriptNode.content.slice(start, end)
26997
+ });
26875
26998
  }
26876
26999
  }
26877
27000
  }
@@ -27534,11 +27657,20 @@ function cssPostPlugin(config) {
27534
27657
  if (!inlined) {
27535
27658
  styles.set(id, css);
27536
27659
  }
27660
+ let code;
27661
+ if (usedRE.test(id)) {
27662
+ if (inlined) {
27663
+ code = `export default ${JSON.stringify(await minifyCSS(css, config))}`;
27664
+ }
27665
+ else {
27666
+ code = modulesCode || `export default ${JSON.stringify(css)}`;
27667
+ }
27668
+ }
27669
+ else {
27670
+ code = `export default ''`;
27671
+ }
27537
27672
  return {
27538
- code: modulesCode ||
27539
- (usedRE.test(id)
27540
- ? `export default ${JSON.stringify(inlined ? await minifyCSS(css, config) : css)}`
27541
- : `export default ''`),
27673
+ code,
27542
27674
  map: { mappings: '' },
27543
27675
  // avoid the css module from being tree-shaken so that we can retrieve
27544
27676
  // it in renderChunk()
@@ -27580,10 +27712,10 @@ function cssPostPlugin(config) {
27580
27712
  return `./${path__default.posix.basename(filename)}`;
27581
27713
  }
27582
27714
  });
27583
- // only external @imports should exist at this point - and they need to
27584
- // be hoisted to the top of the CSS chunk per spec (#1845)
27585
- if (css.includes('@import')) {
27586
- css = await hoistAtImports(css);
27715
+ // only external @imports and @charset should exist at this point
27716
+ // hoist them to the top of the CSS chunk per spec (#1845 and #6333)
27717
+ if (css.includes('@import') || css.includes('@charset')) {
27718
+ css = await hoistAtRules(css);
27587
27719
  }
27588
27720
  if (minify && config.build.minify) {
27589
27721
  css = await minifyCSS(css, config);
@@ -27819,7 +27951,7 @@ async function compileCSS(id, code, config, urlReplacer, atImportResolvers, serv
27819
27951
  replacer: urlReplacer
27820
27952
  }));
27821
27953
  if (isModule) {
27822
- postcssPlugins.unshift((await Promise.resolve().then(function () { return require('./dep-ab7432fd.js'); }).then(function (n) { return n.index; })).default({
27954
+ postcssPlugins.unshift((await Promise.resolve().then(function () { return require('./dep-559163d5.js'); }).then(function (n) { return n.index; })).default({
27823
27955
  ...modulesOptions,
27824
27956
  getJSON(cssFileName, _modules, outputFileName) {
27825
27957
  modules = _modules;
@@ -27996,6 +28128,7 @@ async function resolvePostcssConfig(config) {
27996
28128
  }
27997
28129
  // https://drafts.csswg.org/css-syntax-3/#identifier-code-point
27998
28130
  const cssUrlRE = /(?<=^|[^\w\-\u0080-\uffff])url\(\s*('[^']+'|"[^"]+"|[^'")]+)\s*\)/;
28131
+ const cssDataUriRE = /(?<=^|[^\w\-\u0080-\uffff])data-uri\(\s*('[^']+'|"[^"]+"|[^'")]+)\s*\)/;
27999
28132
  const importCssRE = /@import ('[^']+\.css'|"[^"]+\.css"|[^'")]+\.css)/;
28000
28133
  const cssImageSetRE = /image-set\(([^)]+)\)/;
28001
28134
  const UrlRewritePostcssPlugin = (opts) => {
@@ -28034,6 +28167,12 @@ function rewriteCssUrls(css, replacer) {
28034
28167
  return await doUrlReplace(rawUrl, matched, replacer);
28035
28168
  });
28036
28169
  }
28170
+ function rewriteCssDataUris(css, replacer) {
28171
+ return asyncReplace(css, cssDataUriRE, async (match) => {
28172
+ const [matched, rawUrl] = match;
28173
+ return await doUrlReplace(rawUrl, matched, replacer, 'data-uri');
28174
+ });
28175
+ }
28037
28176
  function rewriteImportCss(css, replacer) {
28038
28177
  return asyncReplace(css, importCssRE, async (match) => {
28039
28178
  const [matched, rawUrl] = match;
@@ -28047,7 +28186,7 @@ function rewriteCssImageSet(css, replacer) {
28047
28186
  return `image-set(${url})`;
28048
28187
  });
28049
28188
  }
28050
- async function doUrlReplace(rawUrl, matched, replacer) {
28189
+ async function doUrlReplace(rawUrl, matched, replacer, funcName = 'url') {
28051
28190
  let wrap = '';
28052
28191
  const first = rawUrl[0];
28053
28192
  if (first === `"` || first === `'`) {
@@ -28062,7 +28201,7 @@ async function doUrlReplace(rawUrl, matched, replacer) {
28062
28201
  // The new url might need wrapping even if the original did not have it, e.g. if a space was added during replacement
28063
28202
  wrap = "'";
28064
28203
  }
28065
- return `url(${wrap}${newUrl}${wrap})`;
28204
+ return `${funcName}(${wrap}${newUrl}${wrap})`;
28066
28205
  }
28067
28206
  async function doImportCSSReplace(rawUrl, matched, replacer) {
28068
28207
  let wrap = '';
@@ -28088,29 +28227,28 @@ async function minifyCSS(css, config) {
28088
28227
  }
28089
28228
  return code;
28090
28229
  }
28091
- // #1845
28092
- // CSS @import can only appear at top of the file. We need to hoist all @import
28093
- // to top when multiple files are concatenated.
28094
- async function hoistAtImports(css) {
28095
- const postcss = await Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('postcss')); });
28096
- return (await postcss.default([AtImportHoistPlugin]).process(css)).css;
28097
- }
28098
- const AtImportHoistPlugin = () => {
28099
- return {
28100
- postcssPlugin: 'vite-hoist-at-imports',
28101
- Once(root) {
28102
- const imports = [];
28103
- root.walkAtRules((rule) => {
28104
- if (rule.name === 'import') {
28105
- // record in reverse so that can simply prepend to preserve order
28106
- imports.unshift(rule);
28107
- }
28108
- });
28109
- imports.forEach((i) => root.prepend(i));
28230
+ async function hoistAtRules(css) {
28231
+ const s = new MagicString(css);
28232
+ // #1845
28233
+ // CSS @import can only appear at top of the file. We need to hoist all @import
28234
+ // to top when multiple files are concatenated.
28235
+ // match until semicolon that's not in quotes
28236
+ s.replace(/@import\s*(?:"[^"]*"|'[^']*'|[^;]*).*?;/gm, (match) => {
28237
+ s.appendLeft(0, match);
28238
+ return '';
28239
+ });
28240
+ // #6333
28241
+ // CSS @charset must be the top-first in the file, hoist the first to top
28242
+ let foundCharset = false;
28243
+ s.replace(/@charset\s*(?:"[^"]*"|'[^']*'|[^;]*).*?;/gm, (match) => {
28244
+ if (!foundCharset) {
28245
+ s.prepend(match);
28246
+ foundCharset = true;
28110
28247
  }
28111
- };
28112
- };
28113
- AtImportHoistPlugin.postcss = true;
28248
+ return '';
28249
+ });
28250
+ return s.toString();
28251
+ }
28114
28252
  const loadedPreprocessors = {};
28115
28253
  function loadPreprocessor(lang, root) {
28116
28254
  var _a, _b;
@@ -28220,9 +28358,11 @@ async function rebaseUrls(file, rootFile, alias) {
28220
28358
  const content = fs__default.readFileSync(file, 'utf-8');
28221
28359
  // no url()
28222
28360
  const hasUrls = cssUrlRE.test(content);
28361
+ // data-uri() calls
28362
+ const hasDataUris = cssDataUriRE.test(content);
28223
28363
  // no @import xxx.css
28224
28364
  const hasImportCss = importCssRE.test(content);
28225
- if (!hasUrls && !hasImportCss) {
28365
+ if (!hasUrls && !hasDataUris && !hasImportCss) {
28226
28366
  return { file };
28227
28367
  }
28228
28368
  let rebased;
@@ -28247,6 +28387,9 @@ async function rebaseUrls(file, rootFile, alias) {
28247
28387
  if (hasUrls) {
28248
28388
  rebased = await rewriteCssUrls(rebased || content, rebaseFn);
28249
28389
  }
28390
+ if (hasDataUris) {
28391
+ rebased = await rewriteCssDataUris(rebased || content, rebaseFn);
28392
+ }
28250
28393
  return {
28251
28394
  file,
28252
28395
  contents: rebased
@@ -29985,8 +30128,8 @@ function lexGlobPattern(code, pos) {
29985
30128
  }
29986
30129
  const noCommentCode = code
29987
30130
  .slice(i + 1)
29988
- .replace(singlelineCommentsRE, blankReplacer)
29989
- .replace(multilineCommentsRE, blankReplacer);
30131
+ .replace(singlelineCommentsRE, blankReplacer$1)
30132
+ .replace(multilineCommentsRE, blankReplacer$1);
29990
30133
  const endIndex = noCommentCode.indexOf(')');
29991
30134
  const optionString = noCommentCode.substring(0, endIndex);
29992
30135
  const commaIndex = optionString.indexOf(',');
@@ -38247,6 +38390,10 @@ function resolvePackageEntry(id, { dir, data, setResolvedCache, getResolvedCache
38247
38390
  }
38248
38391
  if (!entryPoint || entryPoint.endsWith('.mjs')) {
38249
38392
  for (const field of options.mainFields || DEFAULT_MAIN_FIELDS) {
38393
+ // If the initiator is a `require` call, don't use the ESM entries
38394
+ if (options.isRequire && KNOWN_ESM_MAIN_FIELDS.includes(field)) {
38395
+ continue;
38396
+ }
38250
38397
  if (typeof data[field] === 'string') {
38251
38398
  entryPoint = data[field];
38252
38399
  break;
@@ -38667,16 +38814,13 @@ function assetImportMetaUrlPlugin(config) {
38667
38814
  if (!(options === null || options === void 0 ? void 0 : options.ssr) &&
38668
38815
  code.includes('new URL') &&
38669
38816
  code.includes(`import.meta.url`)) {
38670
- const importMetaUrlRE = /\bnew\s+URL\s*\(\s*('[^']+'|"[^"]+"|`[^`]+`)\s*,\s*import\.meta\.url\s*,?\s*\)/g;
38671
- const noCommentsCode = code
38672
- .replace(multilineCommentsRE, blankReplacer)
38673
- .replace(singlelineCommentsRE, blankReplacer)
38674
- .replace(stringsRE, (m) => `'${'\0'.repeat(m.length - 2)}'`);
38675
- let s = null;
38817
+ let s;
38818
+ const assetImportMetaUrlRE = /\bnew\s+URL\s*\(\s*('[^']+'|"[^"]+"|`[^`]+`)\s*,\s*import\.meta\.url\s*,?\s*\)/g;
38819
+ const cleanString = emptyString(code);
38676
38820
  let match;
38677
- while ((match = importMetaUrlRE.exec(noCommentsCode))) {
38821
+ while ((match = assetImportMetaUrlRE.exec(cleanString))) {
38678
38822
  const { 0: exp, 1: emptyUrl, index } = match;
38679
- const urlStart = exp.indexOf(emptyUrl) + index;
38823
+ const urlStart = cleanString.indexOf(emptyUrl, index);
38680
38824
  const urlEnd = urlStart + emptyUrl.length;
38681
38825
  const rawUrl = code.slice(urlStart, urlEnd);
38682
38826
  if (!s)
@@ -38700,7 +38844,8 @@ function assetImportMetaUrlPlugin(config) {
38700
38844
  // Get final asset URL. Catch error if the file does not exist,
38701
38845
  // in which we can resort to the initial URL and let it resolve in runtime
38702
38846
  const builtUrl = await fileToUrl(file, config, this).catch(() => {
38703
- config.logger.warnOnce(`\n${exp} doesn't exist at build time, it will remain unchanged to be resolved at runtime`);
38847
+ const rawExp = code.slice(index, index + exp.length);
38848
+ config.logger.warnOnce(`\n${rawExp} doesn't exist at build time, it will remain unchanged to be resolved at runtime`);
38704
38849
  return url;
38705
38850
  });
38706
38851
  s.overwrite(index, index + exp.length, `new URL(${JSON.stringify(builtUrl)}, self.location)`, { contentOnly: true });
@@ -38753,6 +38898,21 @@ function loadFallbackPlugin() {
38753
38898
  };
38754
38899
  }
38755
38900
 
38901
+ /**
38902
+ * plugin to ensure rollup can watch correctly.
38903
+ */
38904
+ function ensureWatchPlugin() {
38905
+ return {
38906
+ name: 'vite:ensure-watch',
38907
+ load(id) {
38908
+ if (queryRE.test(id)) {
38909
+ this.addWatchFile(cleanUrl(id));
38910
+ }
38911
+ return null;
38912
+ }
38913
+ };
38914
+ }
38915
+
38756
38916
  function resolveBuildOptions(raw) {
38757
38917
  const resolved = {
38758
38918
  target: 'modules',
@@ -38820,6 +38980,7 @@ function resolveBuildPlugins(config) {
38820
38980
  const options = config.build;
38821
38981
  return {
38822
38982
  pre: [
38983
+ ...(options.watch ? [ensureWatchPlugin()] : []),
38823
38984
  watchPackageDataPlugin(config),
38824
38985
  commonjs(options.commonjsOptions),
38825
38986
  dataURIPlugin(),
@@ -38831,7 +38992,7 @@ function resolveBuildPlugins(config) {
38831
38992
  ],
38832
38993
  post: [
38833
38994
  buildImportAnalysisPlugin(config),
38834
- buildEsbuildPlugin(config),
38995
+ ...(config.esbuild !== false ? [buildEsbuildPlugin(config)] : []),
38835
38996
  ...(options.minify ? [terserPlugin(config)] : []),
38836
38997
  ...(options.manifest ? [manifestPlugin(config)] : []),
38837
38998
  ...(options.ssrManifest ? [ssrManifestPlugin(config)] : []),
@@ -46981,7 +47142,7 @@ async function getCertificate(cacheDir) {
46981
47142
  return content;
46982
47143
  }
46983
47144
  catch {
46984
- const content = (await Promise.resolve().then(function () { return require('./dep-958b75cb.js'); })).createCertificate();
47145
+ const content = (await Promise.resolve().then(function () { return require('./dep-aae62ed4.js'); })).createCertificate();
46985
47146
  fs$n.promises
46986
47147
  .mkdir(cacheDir, { recursive: true })
46987
47148
  .then(() => fs$n.promises.writeFile(cachePath, content))
@@ -53436,8 +53597,7 @@ var httpProxy$1 = ProxyServer;
53436
53597
  var httpProxy = httpProxy$1;
53437
53598
 
53438
53599
  const debug$3 = createDebugger('vite:proxy');
53439
- function proxyMiddleware(httpServer, config) {
53440
- const options = config.server.proxy;
53600
+ function proxyMiddleware(httpServer, options, config) {
53441
53601
  // lazy require only when proxy is used
53442
53602
  const proxies = {};
53443
53603
  Object.keys(options).forEach((context) => {
@@ -54211,7 +54371,10 @@ async function ssrTransform(code, inMap, url) {
54211
54371
  }
54212
54372
  // default export
54213
54373
  if (node.type === 'ExportDefaultDeclaration') {
54214
- if ('id' in node.declaration && node.declaration.id) {
54374
+ const expressionTypes = ['FunctionExpression', 'ClassExpression'];
54375
+ if ('id' in node.declaration &&
54376
+ node.declaration.id &&
54377
+ !expressionTypes.includes(node.declaration.type)) {
54215
54378
  // named hoistable/class exports
54216
54379
  // export default function foo() {}
54217
54380
  // export default class A {}
@@ -55939,7 +56102,6 @@ class ModuleNode {
55939
56102
  this.importers = new Set();
55940
56103
  this.importedModules = new Set();
55941
56104
  this.acceptedHmrDeps = new Set();
55942
- this.isSelfAccepting = false;
55943
56105
  this.transformResult = null;
55944
56106
  this.ssrTransformResult = null;
55945
56107
  this.ssrModule = null;
@@ -56106,10 +56268,11 @@ function getShortName(file, root) {
56106
56268
  async function handleHMRUpdate(file, server) {
56107
56269
  const { ws, config, moduleGraph } = server;
56108
56270
  const shortFile = getShortName(file, config.root);
56271
+ const fileName = path__default.basename(file);
56109
56272
  const isConfig = file === config.configFile;
56110
56273
  const isConfigDependency = config.configFileDependencies.some((name) => file === name);
56111
56274
  const isEnv = config.inlineConfig.envFile !== false &&
56112
- (file === '.env' || file.startsWith('.env.'));
56275
+ (fileName === '.env' || fileName.startsWith('.env.'));
56113
56276
  if (isConfig || isConfigDependency || isEnv) {
56114
56277
  // auto restart server
56115
56278
  debugHmr(`[config change] ${colors$1.dim(shortFile)}`);
@@ -56238,6 +56401,12 @@ async function handleFileAddUnlink(file, server, isUnlink = false) {
56238
56401
  }
56239
56402
  }
56240
56403
  function propagateUpdate(node, boundaries, currentChain = [node]) {
56404
+ // #7561
56405
+ // if the imports of `node` have not been analyzed, then `node` has not
56406
+ // been loaded in the browser and we should stop propagation.
56407
+ if (node.id && node.isSelfAccepting === undefined) {
56408
+ return false;
56409
+ }
56241
56410
  if (node.isSelfAccepting) {
56242
56411
  boundaries.add({
56243
56412
  boundary: node,
@@ -58994,7 +59163,7 @@ async function createServer(inlineConfig = {}) {
58994
59163
  // proxy
58995
59164
  const { proxy } = serverConfig;
58996
59165
  if (proxy) {
58997
- middlewares.use(proxyMiddleware(httpServer, config));
59166
+ middlewares.use(proxyMiddleware(httpServer, proxy, config));
58998
59167
  }
58999
59168
  // base
59000
59169
  if (config.base !== '/') {
@@ -59038,6 +59207,11 @@ async function createServer(inlineConfig = {}) {
59038
59207
  }
59039
59208
  // error handler
59040
59209
  middlewares.use(errorMiddleware(server, !!middlewareMode));
59210
+ const initOptimizer = () => {
59211
+ if (!config.optimizeDeps.disabled) {
59212
+ server._optimizedDeps = createOptimizedDeps(server);
59213
+ }
59214
+ };
59041
59215
  if (!middlewareMode && httpServer) {
59042
59216
  let isOptimized = false;
59043
59217
  // overwrite listen to init optimizer before server start
@@ -59046,7 +59220,7 @@ async function createServer(inlineConfig = {}) {
59046
59220
  if (!isOptimized) {
59047
59221
  try {
59048
59222
  await container.buildStart({});
59049
- server._optimizedDeps = createOptimizedDeps(server);
59223
+ initOptimizer();
59050
59224
  isOptimized = true;
59051
59225
  }
59052
59226
  catch (e) {
@@ -59059,7 +59233,7 @@ async function createServer(inlineConfig = {}) {
59059
59233
  }
59060
59234
  else {
59061
59235
  await container.buildStart({});
59062
- server._optimizedDeps = createOptimizedDeps(server);
59236
+ initOptimizer();
59063
59237
  }
59064
59238
  return server;
59065
59239
  }
@@ -59357,16 +59531,26 @@ async function preview(inlineConfig) {
59357
59531
  app.use(corsMiddleware(typeof cors === 'boolean' ? {} : cors));
59358
59532
  }
59359
59533
  // proxy
59360
- if (config.preview.proxy) {
59361
- app.use(proxyMiddleware(httpServer, config));
59534
+ const { proxy } = config.preview;
59535
+ if (proxy) {
59536
+ app.use(proxyMiddleware(httpServer, proxy, config));
59362
59537
  }
59363
59538
  app.use(compression());
59364
59539
  const distDir = path__default.resolve(config.root, config.build.outDir);
59365
59540
  app.use(config.base, sirv(distDir, {
59366
59541
  etag: true,
59367
- dev: true,
59368
- single: true
59542
+ dev: true
59369
59543
  }));
59544
+ app.use(config.base, (_, res, next) => {
59545
+ const file = path__default.join(distDir, './404.html');
59546
+ if (fs__default.existsSync(file)) {
59547
+ res.statusCode = 404;
59548
+ res.end(fs__default.readFileSync(file));
59549
+ }
59550
+ else {
59551
+ next();
59552
+ }
59553
+ });
59370
59554
  const options = config.preview;
59371
59555
  const hostname = resolveHostname(options.host);
59372
59556
  const port = (_b = options.port) !== null && _b !== void 0 ? _b : 4173;
@@ -59588,6 +59772,11 @@ function importAnalysisPlugin(config) {
59588
59772
  server = _server;
59589
59773
  },
59590
59774
  async transform(source, importer, options) {
59775
+ // In a real app `server` is always defined, but it is undefined when
59776
+ // running src/node/server/__tests__/pluginContainer.spec.ts
59777
+ if (!server) {
59778
+ return null;
59779
+ }
59591
59780
  const ssr = (options === null || options === void 0 ? void 0 : options.ssr) === true;
59592
59781
  const prettyImporter = prettifyUrl(importer, root);
59593
59782
  if (canSkip(importer)) {
@@ -59616,7 +59805,12 @@ function importAnalysisPlugin(config) {
59616
59805
  `contains invalid JS syntax. ` +
59617
59806
  msg, e.idx);
59618
59807
  }
59808
+ const { moduleGraph } = server;
59809
+ // since we are already in the transform phase of the importer, it must
59810
+ // have been loaded so its entry is guaranteed in the module graph.
59811
+ const importerModule = moduleGraph.getModuleById(importer);
59619
59812
  if (!imports.length) {
59813
+ importerModule.isSelfAccepting = false;
59620
59814
  isDebug &&
59621
59815
  debug$1(`${timeFrom(start)} ${colors$1.dim(`[no imports] ${prettyImporter}`)}`);
59622
59816
  return source;
@@ -59627,11 +59821,6 @@ function importAnalysisPlugin(config) {
59627
59821
  let needQueryInjectHelper = false;
59628
59822
  let s;
59629
59823
  const str = () => s || (s = new MagicString(source));
59630
- // vite-only server context
59631
- const { moduleGraph } = server;
59632
- // since we are already in the transform phase of the importer, it must
59633
- // have been loaded so its entry is guaranteed in the module graph.
59634
- const importerModule = moduleGraph.getModuleById(importer);
59635
59824
  const importedUrls = new Set();
59636
59825
  const staticImportedUrls = new Set();
59637
59826
  const acceptedUrls = new Set();
@@ -60547,36 +60736,37 @@ function definePlugin(config) {
60547
60736
  };
60548
60737
  }
60549
60738
 
60739
+ const ignoreFlagRE = /\/\*\s*@vite-ignore\s*\*\//;
60550
60740
  const WORKER_FILE_ID = 'worker_url_file';
60551
- function getWorkerType(code, noCommentsCode, i) {
60741
+ function getWorkerType(raw, clean, i) {
60552
60742
  function err(e, pos) {
60553
60743
  const error = new Error(e);
60554
60744
  error.pos = pos;
60555
60745
  throw error;
60556
60746
  }
60557
- const commaIndex = noCommentsCode.indexOf(',', i);
60747
+ const commaIndex = clean.indexOf(',', i);
60558
60748
  if (commaIndex === -1) {
60559
60749
  return 'classic';
60560
60750
  }
60561
- const endIndex = noCommentsCode.indexOf(')', i);
60751
+ const endIndex = clean.indexOf(')', i);
60562
60752
  // case: ') ... ,' mean no worker options params
60563
60753
  if (commaIndex > endIndex) {
60564
60754
  return 'classic';
60565
60755
  }
60566
60756
  // need to find in comment code
60567
- let workerOptsString = code.substring(commaIndex + 1, endIndex);
60568
- const hasViteIgnore = /\/\*\s*@vite-ignore\s*\*\//.test(workerOptsString);
60757
+ const workerOptString = raw.substring(commaIndex + 1, endIndex);
60758
+ const hasViteIgnore = ignoreFlagRE.test(workerOptString);
60569
60759
  if (hasViteIgnore) {
60570
60760
  return 'ignore';
60571
60761
  }
60572
60762
  // need to find in no comment code
60573
- workerOptsString = noCommentsCode.substring(commaIndex + 1, endIndex);
60574
- if (!workerOptsString.trim().length) {
60763
+ const cleanWorkerOptString = clean.substring(commaIndex + 1, endIndex);
60764
+ if (!cleanWorkerOptString.trim().length) {
60575
60765
  return 'classic';
60576
60766
  }
60577
60767
  let workerOpts = { type: 'classic' };
60578
60768
  try {
60579
- workerOpts = lib$2.parse(workerOptsString);
60769
+ workerOpts = lib$2.parse(workerOptString);
60580
60770
  }
60581
60771
  catch (e) {
60582
60772
  // can't parse by JSON5, so the worker options had unexpect char.
@@ -60624,20 +60814,17 @@ function workerImportMetaUrlPlugin(config) {
60624
60814
  code: injectEnv + code
60625
60815
  };
60626
60816
  }
60817
+ let s;
60627
60818
  if ((code.includes('new Worker') || code.includes('new ShareWorker')) &&
60628
60819
  code.includes('new URL') &&
60629
60820
  code.includes(`import.meta.url`)) {
60630
- const importMetaUrlRE = /\bnew\s+(Worker|SharedWorker)\s*\(\s*(new\s+URL\s*\(\s*('[^']+'|"[^"]+"|`[^`]+`)\s*,\s*import\.meta\.url\s*\))/g;
60631
- const noCommentsCode = code
60632
- .replace(multilineCommentsRE, blankReplacer)
60633
- .replace(singlelineCommentsRE, blankReplacer);
60634
- const noStringCode = noCommentsCode.replace(stringsRE, (m) => `'${' '.repeat(m.length - 2)}'`);
60821
+ const cleanString = emptyString(code);
60822
+ const workerImportMetaUrlRE = /\bnew\s+(Worker|SharedWorker)\s*\(\s*(new\s+URL\s*\(\s*('[^']+'|"[^"]+"|`[^`]+`)\s*,\s*import\.meta\.url\s*\))/g;
60635
60823
  let match;
60636
- let s = null;
60637
- while ((match = importMetaUrlRE.exec(noStringCode))) {
60824
+ while ((match = workerImportMetaUrlRE.exec(cleanString))) {
60638
60825
  const { 0: allExp, 2: exp, 3: emptyUrl, index } = match;
60639
60826
  const urlIndex = allExp.indexOf(exp) + index;
60640
- const urlStart = allExp.indexOf(emptyUrl) + index;
60827
+ const urlStart = cleanString.indexOf(emptyUrl, index);
60641
60828
  const urlEnd = urlStart + emptyUrl.length;
60642
60829
  const rawUrl = code.slice(urlStart, urlEnd);
60643
60830
  if (options === null || options === void 0 ? void 0 : options.ssr) {
@@ -60648,7 +60835,7 @@ function workerImportMetaUrlPlugin(config) {
60648
60835
  this.error(`\`new URL(url, import.meta.url)\` is not supported in dynamic template string.`, urlIndex);
60649
60836
  }
60650
60837
  s || (s = new MagicString(code));
60651
- const workerType = getWorkerType(code, noCommentsCode, index + allExp.length);
60838
+ const workerType = getWorkerType(code, cleanString, index + allExp.length);
60652
60839
  const file = path__default.resolve(path__default.dirname(id), rawUrl.slice(1, -1));
60653
60840
  let url;
60654
60841
  if (isBuild) {
@@ -60693,10 +60880,12 @@ function metadataPlugin() {
60693
60880
 
60694
60881
  async function resolvePlugins(config, prePlugins, normalPlugins, postPlugins) {
60695
60882
  const isBuild = config.command === 'build';
60883
+ const isWatch = isBuild && !!config.build.watch;
60696
60884
  const buildPlugins = isBuild
60697
60885
  ? (await Promise.resolve().then(function () { return build$1; })).resolveBuildPlugins(config)
60698
60886
  : { pre: [], post: [] };
60699
60887
  return [
60888
+ isWatch ? ensureWatchPlugin() : null,
60700
60889
  isBuild ? metadataPlugin() : null,
60701
60890
  isBuild ? null : preAliasPlugin(),
60702
60891
  alias({ entries: config.resolve.alias }),
@@ -60943,7 +61132,7 @@ function defineConfig(config) {
60943
61132
  return config;
60944
61133
  }
60945
61134
  async function resolveConfig(inlineConfig, command, defaultMode = 'development') {
60946
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
61135
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
60947
61136
  let config = inlineConfig;
60948
61137
  let configFileDependencies = [];
60949
61138
  let mode = inlineConfig.mode || defaultMode;
@@ -61094,6 +61283,7 @@ async function resolveConfig(inlineConfig, command, defaultMode = 'development')
61094
61283
  ? path__default.resolve(resolvedRoot, typeof publicDir === 'string' ? publicDir : 'public')
61095
61284
  : '';
61096
61285
  const server = resolveServerOptions(resolvedRoot, config.server);
61286
+ const optimizeDeps = config.optimizeDeps || {};
61097
61287
  const resolved = {
61098
61288
  ...config,
61099
61289
  configFile: configFile ? normalizePath$4(configFile) : undefined,
@@ -61126,17 +61316,17 @@ async function resolveConfig(inlineConfig, command, defaultMode = 'development')
61126
61316
  packageCache: new Map(),
61127
61317
  createResolver,
61128
61318
  optimizeDeps: {
61129
- ...config.optimizeDeps,
61319
+ ...optimizeDeps,
61130
61320
  esbuildOptions: {
61131
- keepNames: (_d = config.optimizeDeps) === null || _d === void 0 ? void 0 : _d.keepNames,
61132
- preserveSymlinks: (_e = config.resolve) === null || _e === void 0 ? void 0 : _e.preserveSymlinks,
61133
- ...(_f = config.optimizeDeps) === null || _f === void 0 ? void 0 : _f.esbuildOptions
61321
+ keepNames: optimizeDeps.keepNames,
61322
+ preserveSymlinks: (_d = config.resolve) === null || _d === void 0 ? void 0 : _d.preserveSymlinks,
61323
+ ...optimizeDeps.esbuildOptions
61134
61324
  }
61135
61325
  },
61136
61326
  worker: resolvedWorkerOptions
61137
61327
  };
61138
61328
  // flat config.worker.plugin
61139
- const [workerPrePlugins, workerNormalPlugins, workerPostPlugins] = sortUserPlugins((_g = config.worker) === null || _g === void 0 ? void 0 : _g.plugins);
61329
+ const [workerPrePlugins, workerNormalPlugins, workerPostPlugins] = sortUserPlugins((_e = config.worker) === null || _e === void 0 ? void 0 : _e.plugins);
61140
61330
  const workerResolved = { ...resolved, isWorker: true };
61141
61331
  resolved.worker.plugins = await resolvePlugins(workerResolved, workerPrePlugins, workerNormalPlugins, workerPostPlugins);
61142
61332
  // call configResolved worker plugins hooks
@@ -61154,7 +61344,7 @@ async function resolveConfig(inlineConfig, command, defaultMode = 'development')
61154
61344
  const logDeprecationWarning = (deprecatedOption, hint, error) => {
61155
61345
  logger.warn(colors$1.yellow(colors$1.bold(`(!) "${deprecatedOption}" option is deprecated. ${hint}${error ? `\n${error.stack}` : ''}`)));
61156
61346
  };
61157
- if ((_h = config.build) === null || _h === void 0 ? void 0 : _h.base) {
61347
+ if ((_f = config.build) === null || _f === void 0 ? void 0 : _f.base) {
61158
61348
  logDeprecationWarning('build.base', '"base" is now a root-level config option.');
61159
61349
  config.base = config.build.base;
61160
61350
  }
@@ -61185,7 +61375,7 @@ async function resolveConfig(inlineConfig, command, defaultMode = 'development')
61185
61375
  return resolved.resolve.dedupe;
61186
61376
  }
61187
61377
  });
61188
- if ((_j = config.optimizeDeps) === null || _j === void 0 ? void 0 : _j.keepNames) {
61378
+ if (optimizeDeps.keepNames) {
61189
61379
  logDeprecationWarning('optimizeDeps.keepNames', 'Use "optimizeDeps.esbuildOptions.keepNames" instead.');
61190
61380
  }
61191
61381
  Object.defineProperty(resolved.optimizeDeps, 'keepNames', {
@@ -61196,7 +61386,7 @@ async function resolveConfig(inlineConfig, command, defaultMode = 'development')
61196
61386
  return (_a = resolved.optimizeDeps.esbuildOptions) === null || _a === void 0 ? void 0 : _a.keepNames;
61197
61387
  }
61198
61388
  });
61199
- if ((_k = config.build) === null || _k === void 0 ? void 0 : _k.polyfillDynamicImport) {
61389
+ if ((_g = config.build) === null || _g === void 0 ? void 0 : _g.polyfillDynamicImport) {
61200
61390
  logDeprecationWarning('build.polyfillDynamicImport', '"polyfillDynamicImport" has been removed. Please use @vitejs/plugin-legacy if your target browsers do not support dynamic imports.');
61201
61391
  }
61202
61392
  Object.defineProperty(resolvedBuildOptions, 'polyfillDynamicImport', {
@@ -61206,10 +61396,10 @@ async function resolveConfig(inlineConfig, command, defaultMode = 'development')
61206
61396
  return false;
61207
61397
  }
61208
61398
  });
61209
- if ((_l = config.build) === null || _l === void 0 ? void 0 : _l.cleanCssOptions) {
61399
+ if ((_h = config.build) === null || _h === void 0 ? void 0 : _h.cleanCssOptions) {
61210
61400
  logDeprecationWarning('build.cleanCssOptions', 'Vite now uses esbuild for CSS minification.');
61211
61401
  }
61212
- if (((_m = config.build) === null || _m === void 0 ? void 0 : _m.terserOptions) && config.build.minify !== 'terser') {
61402
+ if (((_j = config.build) === null || _j === void 0 ? void 0 : _j.terserOptions) && config.build.minify !== 'terser') {
61213
61403
  logger.warn(colors$1.yellow(`build.terserOptions is specified but build.minify is not set to use Terser. ` +
61214
61404
  `Note Vite now defaults to use esbuild for minification. If you still ` +
61215
61405
  `prefer Terser, set build.minify to "terser".`));
package/dist/node/cli.js CHANGED
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var require$$0 = require('events');
4
- var index = require('./chunks/dep-611778e0.js');
4
+ var index = require('./chunks/dep-e7afa13e.js');
5
5
  var perf_hooks = require('perf_hooks');
6
6
  require('fs');
7
7
  require('path');
@@ -683,7 +683,7 @@ cli
683
683
  .action(async (root, options) => {
684
684
  // output structure is preserved even after bundling so require()
685
685
  // is ok here
686
- const { createServer } = await Promise.resolve().then(function () { return require('./chunks/dep-611778e0.js'); }).then(function (n) { return n.index$1; });
686
+ const { createServer } = await Promise.resolve().then(function () { return require('./chunks/dep-e7afa13e.js'); }).then(function (n) { return n.index$1; });
687
687
  try {
688
688
  const server = await createServer({
689
689
  root,
@@ -721,7 +721,7 @@ cli
721
721
  .command('build [root]', 'build for production')
722
722
  .option('--target <target>', `[string] transpile target (default: 'modules')`)
723
723
  .option('--outDir <dir>', `[string] output directory (default: dist)`)
724
- .option('--assetsDir <dir>', `[string] directory under outDir to place assets in (default: _assets)`)
724
+ .option('--assetsDir <dir>', `[string] directory under outDir to place assets in (default: assets)`)
725
725
  .option('--assetsInlineLimit <number>', `[number] static asset base64 inline threshold in bytes (default: 4096)`)
726
726
  .option('--ssr [entry]', `[string] build specified entry for server-side rendering`)
727
727
  .option('--sourcemap', `[boolean] output source maps for build (default: false)`)
@@ -732,7 +732,7 @@ cli
732
732
  .option('--emptyOutDir', `[boolean] force empty outDir when it's outside of root`)
733
733
  .option('-w, --watch', `[boolean] rebuilds when modules have changed on disk`)
734
734
  .action(async (root, options) => {
735
- const { build } = await Promise.resolve().then(function () { return require('./chunks/dep-611778e0.js'); }).then(function (n) { return n.build$1; });
735
+ const { build } = await Promise.resolve().then(function () { return require('./chunks/dep-e7afa13e.js'); }).then(function (n) { return n.build$1; });
736
736
  const buildOptions = cleanOptions(options);
737
737
  try {
738
738
  await build({
@@ -755,7 +755,7 @@ cli
755
755
  .command('optimize [root]', 'pre-bundle dependencies')
756
756
  .option('--force', `[boolean] force the optimizer to ignore the cache and re-bundle`)
757
757
  .action(async (root, options) => {
758
- const { optimizeDeps } = await Promise.resolve().then(function () { return require('./chunks/dep-611778e0.js'); }).then(function (n) { return n.index; });
758
+ const { optimizeDeps } = await Promise.resolve().then(function () { return require('./chunks/dep-e7afa13e.js'); }).then(function (n) { return n.index; });
759
759
  try {
760
760
  const config = await index.resolveConfig({
761
761
  root,
@@ -778,7 +778,7 @@ cli
778
778
  .option('--https', `[boolean] use TLS + HTTP/2`)
779
779
  .option('--open [path]', `[boolean | string] open browser on startup`)
780
780
  .action(async (root, options) => {
781
- const { preview } = await Promise.resolve().then(function () { return require('./chunks/dep-611778e0.js'); }).then(function (n) { return n.preview$1; });
781
+ const { preview } = await Promise.resolve().then(function () { return require('./chunks/dep-e7afa13e.js'); }).then(function (n) { return n.preview$1; });
782
782
  try {
783
783
  const server = await preview({
784
784
  root,
@@ -27,7 +27,7 @@ import type { PartialResolvedId } from 'rollup';
27
27
  import type { Plugin as Plugin_2 } from 'rollup';
28
28
  import type { PluginContext } from 'rollup';
29
29
  import type { PluginHooks } from 'rollup';
30
- import type * as Postcss from 'postcss';
30
+ import type * as PostCSS from 'postcss';
31
31
  import type { ResolveIdResult } from 'rollup';
32
32
  import type { RollupError } from 'rollup';
33
33
  import type { RollupOptions } from 'rollup';
@@ -35,8 +35,8 @@ import type { RollupOutput } from 'rollup';
35
35
  import type { RollupWatcher } from 'rollup';
36
36
  import type { SecureContextOptions } from 'tls';
37
37
  import type { Server } from 'http';
38
- import type { Server as Server_2 } from 'net';
39
- import type { Server as Server_3 } from 'https';
38
+ import type { Server as Server_2 } from 'https';
39
+ import type { Server as Server_3 } from 'net';
40
40
  import type { ServerOptions as ServerOptions_2 } from 'https';
41
41
  import type { ServerResponse } from 'http';
42
42
  import type { SourceDescription } from 'rollup';
@@ -48,8 +48,6 @@ import type { TransformResult as TransformResult_3 } from 'rollup';
48
48
  import type * as url from 'url';
49
49
  import type { URL as URL_2 } from 'url';
50
50
  import type { WatcherOptions } from 'rollup';
51
- import type { WebSocket as WebSocket_2 } from 'ws';
52
- import { WebSocketServer as WebSocketServer_2 } from 'ws';
53
51
  import type { ZlibOptions } from 'zlib';
54
52
 
55
53
  export declare interface Alias {
@@ -484,8 +482,8 @@ export declare interface CSSOptions {
484
482
  */
485
483
  modules?: CSSModulesOptions | false;
486
484
  preprocessorOptions?: Record<string, any>;
487
- postcss?: string | (Postcss.ProcessOptions & {
488
- plugins?: Postcss.Plugin[];
485
+ postcss?: string | (PostCSS.ProcessOptions & {
486
+ plugins?: PostCSS.Plugin[];
489
487
  });
490
488
  /**
491
489
  * Enables css sourcemaps during dev
@@ -595,6 +593,12 @@ export declare interface DepOptimizationOptions {
595
593
  * @experimental
596
594
  */
597
595
  extensions?: string[];
596
+ /**
597
+ * Disables dependencies optimizations
598
+ * @default false
599
+ * @experimental
600
+ */
601
+ disabled?: boolean;
598
602
  }
599
603
 
600
604
  export declare interface DepOptimizationProcessing {
@@ -1185,7 +1189,7 @@ export declare class ModuleNode {
1185
1189
  importers: Set<ModuleNode>;
1186
1190
  importedModules: Set<ModuleNode>;
1187
1191
  acceptedHmrDeps: Set<ModuleNode>;
1188
- isSelfAccepting: boolean;
1192
+ isSelfAccepting?: boolean;
1189
1193
  transformResult: TransformResult | null;
1190
1194
  ssrTransformResult: TransformResult | null;
1191
1195
  ssrModule: Record<string, any> | null;
@@ -1402,7 +1406,7 @@ export declare interface PreviewServer {
1402
1406
  /**
1403
1407
  * @deprecated Use `server.printUrls()` instead
1404
1408
  */
1405
- export declare function printHttpServerUrls(server: Server_2, config: ResolvedConfig): void;
1409
+ export declare function printHttpServerUrls(server: Server_3, config: ResolvedConfig): void;
1406
1410
 
1407
1411
  export declare interface ProxyOptions extends HttpProxy.ServerOptions {
1408
1412
  /**
@@ -2718,7 +2722,7 @@ export declare namespace WebSocket {
2718
2722
  host?: string | undefined
2719
2723
  port?: number | undefined
2720
2724
  backlog?: number | undefined
2721
- server?: Server | Server_3 | undefined
2725
+ server?: Server | Server_2 | undefined
2722
2726
  verifyClient?:
2723
2727
  | VerifyClientCallbackAsync
2724
2728
  | VerifyClientCallbackSync
@@ -2863,7 +2867,7 @@ export declare interface WebSocketClient {
2863
2867
  * The raw WebSocket instance
2864
2868
  * @advanced
2865
2869
  */
2866
- socket: WebSocket_2;
2870
+ socket: WebSocket;
2867
2871
  }
2868
2872
 
2869
2873
  export declare type WebSocketCustomListener<T> = (data: T, client: WebSocketClient) => void;
@@ -2888,13 +2892,13 @@ export declare interface WebSocketServer {
2888
2892
  /**
2889
2893
  * Handle custom event emitted by `import.meta.hot.send`
2890
2894
  */
2891
- on: WebSocketServer_2['on'] & {
2895
+ on: WebSocket.Server['on'] & {
2892
2896
  <T extends string>(event: T, listener: WebSocketCustomListener<InferCustomEventPayload<T>>): void;
2893
2897
  };
2894
2898
  /**
2895
2899
  * Unregister event listener.
2896
2900
  */
2897
- off: WebSocketServer_2['off'] & {
2901
+ off: WebSocket.Server['off'] & {
2898
2902
  (event: string, listener: Function): void;
2899
2903
  };
2900
2904
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var index = require('./chunks/dep-611778e0.js');
5
+ var index = require('./chunks/dep-e7afa13e.js');
6
6
  require('fs');
7
7
  require('path');
8
8
  require('tty');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vite",
3
- "version": "2.9.1",
3
+ "version": "2.9.2",
4
4
  "license": "MIT",
5
5
  "author": "Evan You",
6
6
  "description": "Native-ESM powered web dev build tool",
@@ -53,7 +53,7 @@
53
53
  },
54
54
  "devDependencies": {
55
55
  "@ampproject/remapping": "^2.1.2",
56
- "@babel/parser": "^7.17.8",
56
+ "@babel/parser": "^7.17.9",
57
57
  "@babel/types": "^7.17.0",
58
58
  "@jridgewell/trace-mapping": "^0.3.4",
59
59
  "@rollup/plugin-alias": "^3.1.9",
@@ -74,7 +74,7 @@
74
74
  "@types/node": "^16.11.26",
75
75
  "@types/resolve": "^1.20.1",
76
76
  "@types/sass": "~1.43.1",
77
- "@types/stylus": "^0.48.36",
77
+ "@types/stylus": "^0.48.37",
78
78
  "@types/ws": "^8.5.3",
79
79
  "@vue/compiler-dom": "^3.2.31",
80
80
  "acorn": "^8.7.0",
@@ -88,7 +88,7 @@
88
88
  "debug": "^4.3.4",
89
89
  "dotenv": "^14.3.2",
90
90
  "dotenv-expand": "^5.1.0",
91
- "es-module-lexer": "^0.10.4",
91
+ "es-module-lexer": "^0.10.5",
92
92
  "estree-walker": "^2.0.2",
93
93
  "etag": "^1.8.1",
94
94
  "fast-glob": "^3.2.11",
@@ -98,13 +98,13 @@
98
98
  "magic-string": "^0.26.1",
99
99
  "micromatch": "^4.0.5",
100
100
  "mrmime": "^1.0.0",
101
- "node-forge": "^1.3.0",
101
+ "node-forge": "^1.3.1",
102
102
  "okie": "^1.0.1",
103
103
  "open": "^8.4.0",
104
104
  "periscopic": "^2.0.3",
105
105
  "picocolors": "^1.0.0",
106
106
  "postcss-import": "^14.1.0",
107
- "postcss-load-config": "^3.1.3",
107
+ "postcss-load-config": "^3.1.4",
108
108
  "postcss-modules": "^4.3.1",
109
109
  "resolve.exports": "^1.1.0",
110
110
  "rollup-plugin-license": "^2.6.1",
@@ -113,7 +113,7 @@
113
113
  "source-map-support": "^0.5.21",
114
114
  "strip-ansi": "^6.0.1",
115
115
  "terser": "^5.12.1",
116
- "tsconfck": "^1.2.1",
116
+ "tsconfck": "^1.2.2",
117
117
  "tslib": "^2.3.1",
118
118
  "types": "link:./types",
119
119
  "ws": "^8.5.0"
@@ -36,7 +36,7 @@ interface ImportMeta {
36
36
  }
37
37
 
38
38
  interface ImportMetaEnv {
39
- [key: string]: string | boolean | undefined
39
+ [key: string]: any
40
40
  BASE_URL: string
41
41
  MODE: string
42
42
  DEV: boolean