vite 3.0.0-alpha.1 → 3.0.0-alpha.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.
Files changed (91) hide show
  1. package/LICENSE.md +1 -1
  2. package/bin/vite.js +5 -5
  3. package/client.d.ts +4 -2
  4. package/dist/client/client.mjs +23 -19
  5. package/dist/client/client.mjs.map +1 -1
  6. package/dist/node/build.d.ts +178 -0
  7. package/dist/node/certificate.d.ts +2 -0
  8. package/dist/node/chunks/{dep-88b8fd2c.js → dep-205b15fe.js} +40 -37
  9. package/dist/node/chunks/{dep-a9015192.js → dep-24157481.js} +20 -20
  10. package/dist/node/chunks/{dep-5cb039d6.js → dep-c15b7842.js} +976 -1104
  11. package/dist/node/chunks/{dep-8db43f98.js → dep-c6d28e94.js} +27 -29
  12. package/dist/node/chunks/{dep-99df5764.js → dep-df464a73.js} +12 -6
  13. package/dist/node/chunks/{dep-2056ae8a.js → dep-e8ca8d40.js} +9 -3
  14. package/dist/node/cli.d.ts +1 -0
  15. package/dist/node/cli.js +41 -42
  16. package/dist/node/config.d.ts +243 -0
  17. package/dist/node/constants.d.ts +35 -0
  18. package/dist/node/constants.js +82 -0
  19. package/dist/node/http.d.ts +88 -0
  20. package/dist/node/index.d.ts +11 -3
  21. package/dist/node/index.js +37 -60
  22. package/dist/node/logger.d.ts +31 -0
  23. package/dist/node/optimizer/esbuildDepPlugin.d.ts +4 -0
  24. package/dist/node/optimizer/index.d.ts +154 -0
  25. package/dist/node/optimizer/registerMissing.d.ts +3 -0
  26. package/dist/node/optimizer/scan.d.ts +8 -0
  27. package/dist/node/packages.d.ts +27 -0
  28. package/dist/node/plugin.d.ts +129 -0
  29. package/dist/node/plugins/asset.d.ts +68 -0
  30. package/dist/node/plugins/assetImportMetaUrl.d.ts +13 -0
  31. package/dist/node/plugins/clientInjections.d.ts +7 -0
  32. package/dist/node/plugins/css.d.ts +86 -0
  33. package/dist/node/plugins/dataUri.d.ts +5 -0
  34. package/dist/node/plugins/define.d.ts +3 -0
  35. package/dist/node/plugins/dynamicImportVars.d.ts +9 -0
  36. package/dist/node/plugins/ensureWatch.d.ts +5 -0
  37. package/dist/node/plugins/esbuild.d.ts +15 -0
  38. package/dist/node/plugins/html.d.ts +120 -0
  39. package/dist/node/plugins/importAnalysis.d.ts +47 -0
  40. package/dist/node/plugins/importAnalysisBuild.d.ts +16 -0
  41. package/dist/node/plugins/importMetaGlob.d.ts +34 -0
  42. package/dist/node/plugins/index.d.ts +3 -0
  43. package/dist/node/plugins/json.d.ts +23 -0
  44. package/dist/node/plugins/loadFallback.d.ts +5 -0
  45. package/dist/node/plugins/manifest.d.ts +14 -0
  46. package/dist/node/plugins/metadata.d.ts +9 -0
  47. package/dist/node/plugins/modulePreloadPolyfill.d.ts +4 -0
  48. package/dist/node/plugins/optimizedDeps.d.ts +4 -0
  49. package/dist/node/plugins/preAlias.d.ts +5 -0
  50. package/dist/node/plugins/reporter.d.ts +3 -0
  51. package/dist/node/plugins/resolve.d.ts +39 -0
  52. package/dist/node/plugins/splitVendorChunk.d.ts +12 -0
  53. package/dist/node/plugins/ssrRequireHook.d.ts +12 -0
  54. package/dist/node/plugins/terser.d.ts +3 -0
  55. package/dist/node/plugins/wasm.d.ts +4 -0
  56. package/dist/node/plugins/worker.d.ts +9 -0
  57. package/dist/node/plugins/workerImportMetaUrl.d.ts +3 -0
  58. package/dist/node/preview.d.ts +33 -0
  59. package/dist/node/publicUtils.d.ts +10 -0
  60. package/dist/node/server/hmr.d.ts +39 -0
  61. package/dist/node/server/index.d.ts +198 -0
  62. package/dist/node/server/middlewares/base.d.ts +3 -0
  63. package/dist/node/server/middlewares/compression.d.ts +1 -0
  64. package/dist/node/server/middlewares/error.d.ts +8 -0
  65. package/dist/node/server/middlewares/indexHtml.d.ts +4 -0
  66. package/dist/node/server/middlewares/proxy.d.ts +20 -0
  67. package/dist/node/server/middlewares/spaFallback.d.ts +2 -0
  68. package/dist/node/server/middlewares/static.d.ts +6 -0
  69. package/dist/node/server/middlewares/time.d.ts +2 -0
  70. package/dist/node/server/middlewares/transform.d.ts +3 -0
  71. package/dist/node/server/moduleGraph.d.ts +55 -0
  72. package/dist/node/server/openBrowser.d.ts +15 -0
  73. package/dist/node/server/pluginContainer.d.ts +41 -0
  74. package/dist/node/server/searchRoot.d.ts +8 -0
  75. package/dist/node/server/send.d.ts +10 -0
  76. package/dist/node/server/sourcemap.d.ts +11 -0
  77. package/dist/node/server/transformRequest.d.ts +14 -0
  78. package/dist/node/server/ws.d.ts +55 -0
  79. package/dist/node/ssr/ssrExternal.d.ts +11 -0
  80. package/dist/node/ssr/ssrManifestPlugin.d.ts +3 -0
  81. package/dist/node/ssr/ssrModuleLoader.d.ts +7 -0
  82. package/dist/node/ssr/ssrStacktrace.d.ts +3 -0
  83. package/dist/node/ssr/ssrTransform.d.ts +14 -0
  84. package/dist/node/utils.d.ts +145 -0
  85. package/dist/node-cjs/publicUtils.cjs +1788 -0
  86. package/dist/{node/terser.js → node-cjs/terser.cjs} +0 -0
  87. package/index.cjs +33 -0
  88. package/package.json +23 -6
  89. package/src/client/client.ts +22 -16
  90. package/src/client/tsconfig.json +1 -1
  91. package/types/importGlob.d.ts +1 -3
File without changes
package/index.cjs ADDED
@@ -0,0 +1,33 @@
1
+ /* eslint-disable no-restricted-globals */
2
+
3
+ // type utils
4
+ module.exports.defineConfig = (config) => config
5
+
6
+ // proxy cjs utils (sync functions)
7
+ Object.assign(module.exports, require('./dist/node-cjs/publicUtils.cjs'))
8
+
9
+ // async functions, can be redirect from ESM build
10
+ const asyncFunctions = [
11
+ 'build',
12
+ 'createServer',
13
+ 'preview',
14
+ 'transformWithEsbuild',
15
+ 'resolveConfig',
16
+ 'optimizeDeps',
17
+ 'formatPostcssSourceMap',
18
+ 'loadConfigFromFile'
19
+ ]
20
+ asyncFunctions.forEach((name) => {
21
+ module.exports[name] = (...args) =>
22
+ import('./dist/node/index.js').then((i) => i[name](...args))
23
+ })
24
+
25
+ // some sync functions are marked not supported due to their complexity and uncommon usage
26
+ const unsupportedCJS = ['resolvePackageEntry', 'resolvePackageData']
27
+ unsupportedCJS.forEach((name) => {
28
+ module.exports[name] = () => {
29
+ throw new Error(
30
+ `"${name}" is not supported in CJS build of Vite 3.\nPlease use ESM or dynamic imports \`const { ${name} } = await import('vite')\`.`
31
+ )
32
+ }
33
+ })
package/package.json CHANGED
@@ -1,18 +1,34 @@
1
1
  {
2
2
  "name": "vite",
3
- "version": "3.0.0-alpha.1",
3
+ "version": "3.0.0-alpha.2",
4
+ "type": "module",
4
5
  "license": "MIT",
5
6
  "author": "Evan You",
6
7
  "description": "Native-ESM powered web dev build tool",
7
8
  "bin": {
8
9
  "vite": "bin/vite.js"
9
10
  },
10
- "main": "dist/node/index.js",
11
- "types": "dist/node/index.d.ts",
11
+ "main": "./dist/node/index.js",
12
+ "module": "./dist/node/index.js",
13
+ "types": "./dist/node/index.d.ts",
14
+ "exports": {
15
+ ".": {
16
+ "types": "./dist/node/index.d.ts",
17
+ "import": "./dist/node/index.js",
18
+ "require": "./index.cjs"
19
+ },
20
+ "./client": {
21
+ "types": "./client.d.ts"
22
+ },
23
+ "./terser": {
24
+ "require": "./dist/node-cjs/terser.cjs"
25
+ }
26
+ },
12
27
  "files": [
13
28
  "bin",
14
29
  "dist",
15
30
  "client.d.ts",
31
+ "index.cjs",
16
32
  "src/client",
17
33
  "types"
18
34
  ],
@@ -29,12 +45,12 @@
29
45
  },
30
46
  "homepage": "https://github.com/vitejs/vite/tree/main/#readme",
31
47
  "scripts": {
32
- "dev": "rimraf dist && rollup -c -w",
48
+ "dev": "rimraf dist && pnpm run build-bundle -w",
33
49
  "build": "rimraf dist && run-s build-bundle build-types",
34
- "build-bundle": "rollup -c",
50
+ "build-bundle": "rollup --config rollup.config.ts --configPlugin typescript",
35
51
  "build-types": "run-s build-temp-types patch-types roll-types",
36
52
  "build-temp-types": "tsc --emitDeclarationOnly --outDir temp/node -p src/node",
37
- "patch-types": "ts-node scripts/patchTypes.ts",
53
+ "patch-types": "esno scripts/patchTypes.ts",
38
54
  "roll-types": "api-extractor run && rimraf temp",
39
55
  "lint": "eslint --ext .ts src/**",
40
56
  "format": "prettier --write --parser typescript \"src/**/*.ts\"",
@@ -75,6 +91,7 @@
75
91
  "dotenv": "^14.3.2",
76
92
  "dotenv-expand": "^5.1.0",
77
93
  "es-module-lexer": "^0.10.5",
94
+ "esno": "^0.16.3",
78
95
  "estree-walker": "^2.0.2",
79
96
  "etag": "^1.8.1",
80
97
  "fast-glob": "^3.2.11",
@@ -13,16 +13,35 @@ declare const __HMR_PORT__: string
13
13
  declare const __HMR_TIMEOUT__: number
14
14
  declare const __HMR_ENABLE_OVERLAY__: boolean
15
15
 
16
- console.log('[vite] connecting...')
16
+ console.debug('[vite] connecting...')
17
17
 
18
18
  // use server configuration, then fallback to inference
19
19
  const socketProtocol =
20
20
  __HMR_PROTOCOL__ || (location.protocol === 'https:' ? 'wss' : 'ws')
21
21
  const socketHost = `${__HMR_HOSTNAME__ || location.hostname}:${__HMR_PORT__}`
22
- const socket = new WebSocket(`${socketProtocol}://${socketHost}`, 'vite-hmr')
23
22
  const base = __BASE__ || '/'
24
23
  const messageBuffer: string[] = []
25
24
 
25
+ let socket: WebSocket
26
+ try {
27
+ socket = new WebSocket(`${socketProtocol}://${socketHost}`, 'vite-hmr')
28
+
29
+ // Listen for messages
30
+ socket.addEventListener('message', async ({ data }) => {
31
+ handleMessage(JSON.parse(data))
32
+ })
33
+
34
+ // ping server
35
+ socket.addEventListener('close', async ({ wasClean }) => {
36
+ if (wasClean) return
37
+ console.log(`[vite] server connection lost. polling for restart...`)
38
+ await waitForSuccessfulPing()
39
+ location.reload()
40
+ })
41
+ } catch (error) {
42
+ console.error(`[vite] failed to connect to websocket (${error}). `)
43
+ }
44
+
26
45
  function warnFailedFetch(err: Error, path: string | string[]) {
27
46
  if (!err.message.match('fetch')) {
28
47
  console.error(err)
@@ -40,17 +59,12 @@ function cleanUrl(pathname: string): string {
40
59
  return url.pathname + url.search
41
60
  }
42
61
 
43
- // Listen for messages
44
- socket.addEventListener('message', async ({ data }) => {
45
- handleMessage(JSON.parse(data))
46
- })
47
-
48
62
  let isFirstUpdate = true
49
63
 
50
64
  async function handleMessage(payload: HMRPayload) {
51
65
  switch (payload.type) {
52
66
  case 'connected':
53
- console.log(`[vite] connected.`)
67
+ console.debug(`[vite] connected.`)
54
68
  sendMessageBuffer()
55
69
  // proxy(nginx, docker) hmr ws maybe caused timeout,
56
70
  // so send ping package let ws keep alive.
@@ -212,14 +226,6 @@ async function waitForSuccessfulPing(ms = 1000) {
212
226
  }
213
227
  }
214
228
 
215
- // ping server
216
- socket.addEventListener('close', async ({ wasClean }) => {
217
- if (wasClean) return
218
- console.log(`[vite] server connection lost. polling for restart...`)
219
- await waitForSuccessfulPing()
220
- location.reload()
221
- })
222
-
223
229
  // https://wicg.github.io/construct-stylesheets
224
230
  const supportsConstructedSheet = (() => {
225
231
  // TODO: re-enable this try block once Chrome fixes the performance of
@@ -3,7 +3,7 @@
3
3
  "include": ["./", "../../types"],
4
4
  "compilerOptions": {
5
5
  "outDir": "../../dist/client",
6
- "module": "esnext",
6
+ "module": "ESNext",
7
7
  "types": [],
8
8
  "lib": ["ESNext", "DOM"],
9
9
  "declaration": false
@@ -1,5 +1,3 @@
1
- import type { Worker } from 'okie'
2
-
3
1
  export interface ImportGlobOptions<
4
2
  Eager extends boolean,
5
3
  AsType extends string
@@ -35,7 +33,7 @@ export type GeneralImportGlobOptions = ImportGlobOptions<boolean, string>
35
33
  export interface KnownAsTypeMap {
36
34
  raw: string
37
35
  url: string
38
- worker: Worker<any, any>
36
+ worker: Worker
39
37
  }
40
38
 
41
39
  export interface ImportGlobFunction {