vike 0.4.223 → 0.4.224-commit-f0d0f8a

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 (173) hide show
  1. package/dist/cjs/node/api/build.js +4 -37
  2. package/dist/cjs/node/api/prepareViteApiCall.js +9 -3
  3. package/dist/cjs/node/plugin/index.js +8 -20
  4. package/dist/cjs/node/plugin/plugins/baseUrls.js +3 -1
  5. package/dist/cjs/node/plugin/plugins/{buildConfig/fixServerAssets.js → build/handleAssetsManifest.js} +130 -52
  6. package/dist/cjs/node/plugin/plugins/build/pluginAutoFullBuild.js +145 -0
  7. package/dist/cjs/node/plugin/plugins/build/pluginBuildApp.js +52 -0
  8. package/dist/cjs/node/plugin/plugins/{buildConfig.js → build/pluginBuildConfig.js} +22 -84
  9. package/dist/cjs/node/plugin/plugins/{buildEntry/index.js → build/pluginBuildEntry.js} +9 -9
  10. package/dist/cjs/node/plugin/plugins/{distFileNames.js → build/pluginDistFileNames.js} +7 -7
  11. package/dist/cjs/node/plugin/plugins/{packageJsonFile.js → build/pluginDistPackageJsonFile.js} +6 -6
  12. package/dist/cjs/node/plugin/plugins/{suppressRollupWarning.js → build/pluginSuppressRollupWarning.js} +3 -3
  13. package/dist/cjs/node/plugin/plugins/build.js +21 -0
  14. package/dist/cjs/node/plugin/plugins/commonConfig.js +22 -4
  15. package/dist/cjs/node/plugin/plugins/devConfig/determineFsAllowList.js +1 -1
  16. package/dist/cjs/node/plugin/plugins/devConfig/determineOptimizeDeps.js +5 -5
  17. package/dist/cjs/node/plugin/plugins/devConfig/index.js +1 -1
  18. package/dist/cjs/node/plugin/plugins/envVars.js +2 -2
  19. package/dist/cjs/node/plugin/plugins/extractAssetsPlugin.js +9 -9
  20. package/dist/cjs/node/plugin/plugins/extractExportNamesPlugin.js +2 -2
  21. package/dist/cjs/node/plugin/plugins/fileEnv.js +5 -2
  22. package/dist/cjs/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +3 -3
  23. package/dist/cjs/node/plugin/plugins/importUserCode/index.js +2 -5
  24. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/assertExtensions.js +5 -5
  25. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +7 -2
  26. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles/ignorePatternsBuiltIn.js +16 -0
  27. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.js +50 -64
  28. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/filesystemRouting.js +2 -1
  29. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/getPlusFilesAll.js +3 -3
  30. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +19 -7
  31. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +277 -212
  32. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/virtual-files/getVirtualFilePageConfigValuesAll.js +4 -4
  33. package/dist/cjs/node/plugin/plugins/previewConfig.js +12 -7
  34. package/dist/cjs/node/plugin/shared/addSsrMiddleware.js +5 -1
  35. package/dist/cjs/node/plugin/shared/findPageFiles.js +3 -3
  36. package/dist/cjs/node/plugin/shared/getOutDirs.js +8 -7
  37. package/dist/cjs/node/plugin/shared/isViteServerBuild.js +47 -0
  38. package/dist/cjs/node/plugin/shared/resolveClientEntriesDev.js +1 -1
  39. package/dist/cjs/node/plugin/utils.js +1 -0
  40. package/dist/cjs/node/prerender/context.js +3 -8
  41. package/dist/cjs/node/prerender/resolvePrerenderConfig.js +30 -21
  42. package/dist/cjs/node/prerender/runPrerender.js +28 -30
  43. package/dist/cjs/node/prerender/utils.js +1 -0
  44. package/dist/cjs/node/runtime/html/stream.js +7 -0
  45. package/dist/cjs/node/runtime/renderPage/logErrorHint.js +13 -2
  46. package/dist/cjs/shared/getPageContextUrlComputed.js +1 -1
  47. package/dist/cjs/shared/page-configs/getConfigValueBuildTime.js +2 -5
  48. package/dist/cjs/shared/page-configs/serialize/parsePageConfigs.js +3 -1
  49. package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +20 -9
  50. package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
  51. package/dist/cjs/utils/debug.js +2 -1
  52. package/dist/cjs/utils/findFile.js +1 -1
  53. package/dist/cjs/utils/findPackageJson.js +1 -1
  54. package/dist/cjs/utils/isFilePathAbsoluteFilesystem.js +10 -4
  55. package/dist/cjs/utils/path.js +1 -0
  56. package/dist/cjs/utils/requireResolve.js +11 -4
  57. package/dist/cjs/utils/sorter.js +0 -3
  58. package/dist/esm/client/client-routing-runtime/index.d.ts +1 -0
  59. package/dist/esm/client/client-routing-runtime/index.js +1 -0
  60. package/dist/esm/client/client-routing-runtime/renderPageClientSide.d.ts +8 -0
  61. package/dist/esm/client/client-routing-runtime/renderPageClientSide.js +10 -1
  62. package/dist/esm/node/api/build.js +4 -4
  63. package/dist/esm/node/api/prepareViteApiCall.js +9 -3
  64. package/dist/esm/node/plugin/index.d.ts +2 -1
  65. package/dist/esm/node/plugin/index.js +4 -17
  66. package/dist/esm/node/plugin/plugins/baseUrls.js +3 -1
  67. package/dist/esm/node/plugin/plugins/build/handleAssetsManifest.d.ts +18 -0
  68. package/dist/esm/node/plugin/plugins/{buildConfig/fixServerAssets.js → build/handleAssetsManifest.js} +131 -53
  69. package/dist/esm/node/plugin/plugins/build/pluginAutoFullBuild.d.ts +5 -0
  70. package/dist/esm/node/plugin/plugins/build/pluginAutoFullBuild.js +140 -0
  71. package/dist/esm/node/plugin/plugins/build/pluginBuildApp.d.ts +3 -0
  72. package/dist/esm/node/plugin/plugins/build/pluginBuildApp.js +50 -0
  73. package/dist/esm/node/plugin/plugins/{buildConfig.d.ts → build/pluginBuildConfig.d.ts} +3 -3
  74. package/dist/esm/node/plugin/plugins/{buildConfig.js → build/pluginBuildConfig.js} +22 -81
  75. package/dist/esm/node/plugin/plugins/build/pluginBuildEntry.d.ts +7 -0
  76. package/dist/esm/node/plugin/plugins/{buildEntry/index.js → build/pluginBuildEntry.js} +9 -9
  77. package/dist/esm/node/plugin/plugins/build/pluginDistFileNames.d.ts +3 -0
  78. package/dist/esm/node/plugin/plugins/{distFileNames.js → build/pluginDistFileNames.js} +7 -7
  79. package/dist/esm/node/plugin/plugins/build/pluginDistPackageJsonFile.d.ts +3 -0
  80. package/dist/esm/node/plugin/plugins/{packageJsonFile.js → build/pluginDistPackageJsonFile.js} +7 -6
  81. package/dist/esm/node/plugin/plugins/build/pluginSuppressRollupWarning.d.ts +3 -0
  82. package/dist/esm/node/plugin/plugins/{suppressRollupWarning.js → build/pluginSuppressRollupWarning.js} +3 -3
  83. package/dist/esm/node/plugin/plugins/build.d.ts +3 -0
  84. package/dist/esm/node/plugin/plugins/build.js +19 -0
  85. package/dist/esm/node/plugin/plugins/commonConfig.d.ts +16 -6
  86. package/dist/esm/node/plugin/plugins/commonConfig.js +22 -4
  87. package/dist/esm/node/plugin/plugins/devConfig/determineFsAllowList.js +1 -1
  88. package/dist/esm/node/plugin/plugins/devConfig/determineOptimizeDeps.js +5 -5
  89. package/dist/esm/node/plugin/plugins/devConfig/index.js +1 -1
  90. package/dist/esm/node/plugin/plugins/envVars.js +2 -2
  91. package/dist/esm/node/plugin/plugins/extractAssetsPlugin.js +10 -10
  92. package/dist/esm/node/plugin/plugins/extractExportNamesPlugin.js +2 -2
  93. package/dist/esm/node/plugin/plugins/fileEnv.js +5 -2
  94. package/dist/esm/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +3 -3
  95. package/dist/esm/node/plugin/plugins/importUserCode/index.js +2 -5
  96. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/assertExtensions.js +5 -5
  97. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +7 -2
  98. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles/ignorePatternsBuiltIn.d.ts +1 -0
  99. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles/ignorePatternsBuiltIn.js +13 -0
  100. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.d.ts +1 -1
  101. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.js +50 -64
  102. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/filesystemRouting.js +2 -1
  103. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/getPlusFilesAll.js +3 -3
  104. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.d.ts +0 -1
  105. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +20 -8
  106. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.d.ts +8 -6
  107. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +279 -214
  108. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/virtual-files/getVirtualFilePageConfigValuesAll.js +4 -4
  109. package/dist/esm/node/plugin/plugins/previewConfig.js +12 -7
  110. package/dist/esm/node/plugin/shared/addSsrMiddleware.d.ts +1 -1
  111. package/dist/esm/node/plugin/shared/addSsrMiddleware.js +5 -1
  112. package/dist/esm/node/plugin/shared/findPageFiles.js +3 -3
  113. package/dist/esm/node/plugin/shared/getHttpRequestAsyncStore.js +1 -3
  114. package/dist/esm/node/plugin/shared/getOutDirs.d.ts +2 -2
  115. package/dist/esm/node/plugin/shared/getOutDirs.js +8 -7
  116. package/dist/esm/node/plugin/shared/isViteServerBuild.d.ts +15 -0
  117. package/dist/esm/node/plugin/shared/isViteServerBuild.js +45 -0
  118. package/dist/esm/node/plugin/shared/resolveClientEntriesDev.js +1 -1
  119. package/dist/esm/node/plugin/utils.d.ts +1 -0
  120. package/dist/esm/node/plugin/utils.js +1 -0
  121. package/dist/esm/node/prerender/context.d.ts +0 -2
  122. package/dist/esm/node/prerender/context.js +4 -9
  123. package/dist/esm/node/prerender/resolvePrerenderConfig.d.ts +11 -6
  124. package/dist/esm/node/prerender/resolvePrerenderConfig.js +31 -22
  125. package/dist/esm/node/prerender/runPrerender.d.ts +7 -25
  126. package/dist/esm/node/prerender/runPrerender.js +29 -31
  127. package/dist/esm/node/prerender/utils.d.ts +1 -0
  128. package/dist/esm/node/prerender/utils.js +1 -0
  129. package/dist/esm/node/runtime/globalContext.d.ts +3 -2
  130. package/dist/esm/node/runtime/html/stream.js +7 -0
  131. package/dist/esm/node/runtime/renderPage/logErrorHint.js +13 -2
  132. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +165 -5
  133. package/dist/esm/shared/getPageContextUrlComputed.js +1 -1
  134. package/dist/esm/shared/page-configs/Config.d.ts +12 -2
  135. package/dist/esm/shared/page-configs/PageConfig.d.ts +5 -5
  136. package/dist/esm/shared/page-configs/getConfigValueBuildTime.js +2 -5
  137. package/dist/esm/shared/page-configs/serialize/parsePageConfigs.js +3 -1
  138. package/dist/esm/shared/page-configs/serialize/serializeConfigValues.d.ts +2 -0
  139. package/dist/esm/shared/page-configs/serialize/serializeConfigValues.js +20 -9
  140. package/dist/esm/types/index.d.ts +2 -0
  141. package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
  142. package/dist/esm/utils/PROJECT_VERSION.js +1 -1
  143. package/dist/esm/utils/debug.js +2 -1
  144. package/dist/esm/utils/findFile.js +1 -1
  145. package/dist/esm/utils/findPackageJson.js +1 -1
  146. package/dist/esm/utils/isFilePathAbsoluteFilesystem.js +8 -2
  147. package/dist/esm/utils/path.js +1 -0
  148. package/dist/esm/utils/projectInfo.d.ts +1 -1
  149. package/dist/esm/utils/requireResolve.js +11 -4
  150. package/dist/esm/utils/sorter.d.ts +18 -5
  151. package/dist/esm/utils/sorter.js +0 -3
  152. package/package.json +9 -16
  153. package/dist/cjs/node/plugin/plugins/autoFullBuild.js +0 -119
  154. package/dist/cjs/node/plugin/plugins/buildApp.js +0 -76
  155. package/dist/cjs/node/plugin/plugins/removeRequireHookPlugin.js +0 -17
  156. package/dist/cjs/node/plugin/shared/getFullBuildInlineConfig.js +0 -20
  157. package/dist/cjs/node/plugin/shared/viteIsSSR.js +0 -31
  158. package/dist/esm/node/plugin/plugins/autoFullBuild.d.ts +0 -3
  159. package/dist/esm/node/plugin/plugins/autoFullBuild.js +0 -114
  160. package/dist/esm/node/plugin/plugins/buildApp.d.ts +0 -3
  161. package/dist/esm/node/plugin/plugins/buildApp.js +0 -74
  162. package/dist/esm/node/plugin/plugins/buildConfig/fixServerAssets.d.ts +0 -20
  163. package/dist/esm/node/plugin/plugins/buildEntry/index.d.ts +0 -8
  164. package/dist/esm/node/plugin/plugins/distFileNames.d.ts +0 -3
  165. package/dist/esm/node/plugin/plugins/packageJsonFile.d.ts +0 -3
  166. package/dist/esm/node/plugin/plugins/removeRequireHookPlugin.d.ts +0 -3
  167. package/dist/esm/node/plugin/plugins/removeRequireHookPlugin.js +0 -15
  168. package/dist/esm/node/plugin/plugins/suppressRollupWarning.d.ts +0 -3
  169. package/dist/esm/node/plugin/shared/getFullBuildInlineConfig.d.ts +0 -2
  170. package/dist/esm/node/plugin/shared/getFullBuildInlineConfig.js +0 -17
  171. package/dist/esm/node/plugin/shared/viteIsSSR.d.ts +0 -11
  172. package/dist/esm/node/plugin/shared/viteIsSSR.js +0 -29
  173. package/dist-cjs-fixup.mjs +0 -41
@@ -5,7 +5,7 @@ import { assertIsNotProductionRuntime } from './assertSetup.js';
5
5
  import { assertPosixPath, toPosixPath } from './path.js';
6
6
  import { scriptFileExtensionList } from './isScriptFile.js';
7
7
  import { createRequire } from 'module';
8
- // @ts-ignore Shimmed by dist-cjs-fixup.js for CJS build.
8
+ // @ts-ignore import.meta.url is shimmed at dist/cjs by dist-cjs-fixup.js.
9
9
  const importMetaUrl = import.meta.url;
10
10
  const require_ = createRequire(importMetaUrl);
11
11
  assertIsNotBrowser();
@@ -32,6 +32,13 @@ function requireResolve(importPath, cwd) {
32
32
  return importedFile;
33
33
  }
34
34
  function removeFileExtention(importPath) {
35
+ // Skip for Bun: https://github.com/vikejs/vike/issues/2204
36
+ //@ts-ignore
37
+ if (typeof Bun !== 'undefined') {
38
+ // https://bun.sh/guides/util/detect-bun
39
+ assert(process.versions.bun);
40
+ return importPath;
41
+ }
35
42
  for (const ext of scriptFileExtensionList) {
36
43
  const suffix = `.${ext}`;
37
44
  if (importPath.endsWith(suffix)) {
@@ -45,14 +52,14 @@ function addFileExtensionsToRequireResolve() {
45
52
  scriptFileExtensionList.forEach((ext) => {
46
53
  assert(!ext.includes('.'));
47
54
  ext = `.${ext}`;
48
- if (!require.extensions[ext]) {
49
- require.extensions[ext] = require.extensions['.js'];
55
+ if (!require_.extensions[ext]) {
56
+ require_.extensions[ext] = require_.extensions['.js'];
50
57
  added.push(ext);
51
58
  }
52
59
  });
53
60
  const clean = () => {
54
61
  added.forEach((ext) => {
55
- delete require.extensions[ext];
62
+ delete require_.extensions[ext];
56
63
  });
57
64
  };
58
65
  return clean;
@@ -3,6 +3,19 @@ export { lowerFirst };
3
3
  export { makeFirst };
4
4
  export { makeLast };
5
5
  export { reverse };
6
+ export type { SortReturn };
7
+ /**
8
+ * # How to use `Array.prototype.sort()`
9
+ *
10
+ * ```js
11
+ * elements.sort(sorter);
12
+ * function sorter(element1: unknown, element2: unknown): -1 | 0 | 1
13
+ * ```
14
+ * -1 => element1 first: `elements.indexOf(element1) < elements.indexOf(element2)`
15
+ * +1 => element2 first: `elements.indexOf(element2) < elements.indexOf(element1)`
16
+ * 0 => keep original order of element1 and element2
17
+ */
18
+ type SortReturn = -1 | 0 | 1;
6
19
  /**
7
20
  * ```js
8
21
  * let arr = [
@@ -18,7 +31,7 @@ export { reverse };
18
31
  * ])
19
32
  * ```
20
33
  */
21
- declare function higherFirst<T>(getValue: (element: T) => number): (element1: T, element2: T) => 0 | 1 | -1;
34
+ declare function higherFirst<T>(getValue: (element: T) => number): (element1: T, element2: T) => SortReturn;
22
35
  /**
23
36
  * ```js
24
37
  * let arr = [
@@ -34,7 +47,7 @@ declare function higherFirst<T>(getValue: (element: T) => number): (element1: T,
34
47
  * ])
35
48
  * ```
36
49
  */
37
- declare function lowerFirst<T>(getValue: (element: T) => number): (element1: T, element2: T) => 0 | 1 | -1;
50
+ declare function lowerFirst<T>(getValue: (element: T) => number): (element1: T, element2: T) => SortReturn;
38
51
  /**
39
52
  * ```js
40
53
  * let arr = [
@@ -48,7 +61,7 @@ declare function lowerFirst<T>(getValue: (element: T) => number): (element1: T,
48
61
  * ])
49
62
  * ```
50
63
  */
51
- declare function makeFirst<T>(getValue: (element: T) => boolean | null): (element1: T, element2: T) => 0 | 1 | -1;
64
+ declare function makeFirst<T>(getValue: (element: T) => boolean | null): (element1: T, element2: T) => SortReturn;
52
65
  /**
53
66
  * ```js
54
67
  * let arr = [
@@ -62,6 +75,6 @@ declare function makeFirst<T>(getValue: (element: T) => boolean | null): (elemen
62
75
  * ])
63
76
  * ```
64
77
  */
65
- declare function makeLast<T>(getValue: (element: T) => boolean | null): (element1: T, element2: T) => 0 | 1 | -1;
78
+ declare function makeLast<T>(getValue: (element: T) => boolean | null): (element1: T, element2: T) => SortReturn;
66
79
  /** Reverse order result. */
67
- declare function reverse(sortKey: 0 | 1 | -1): 0 | 1 | -1;
80
+ declare function reverse(sortKey: SortReturn): SortReturn;
@@ -4,9 +4,6 @@ export { lowerFirst };
4
4
  export { makeFirst };
5
5
  export { makeLast };
6
6
  export { reverse };
7
- // -1 => element1 first (i.e. `indexOf(element1) < indexOf(element2)`)
8
- // +1 => element2 first (i.e. `indexOf(element2) < indexOf(element1)`)
9
- // 0 => keep original order of element1 and element2
10
7
  /**
11
8
  * ```js
12
9
  * let arr = [
package/package.json CHANGED
@@ -1,11 +1,10 @@
1
1
  {
2
2
  "name": "vike",
3
- "version": "0.4.223",
3
+ "version": "0.4.224-commit-f0d0f8a",
4
4
  "repository": "https://github.com/vikejs/vike",
5
5
  "exports": {
6
6
  "./server": {
7
7
  "worker": "./dist/esm/node/runtime/index.js",
8
- "edge-light": "./dist/esm/node/runtime/index.js",
9
8
  "require": "./dist/cjs/node/runtime/index.js",
10
9
  "node": "./dist/esm/node/runtime/index.js",
11
10
  "browser": "./dist/esm/client/node.js",
@@ -20,7 +19,6 @@
20
19
  },
21
20
  "./client/router": {
22
21
  "worker": "./dist/esm/node/client/router.js",
23
- "edge-light": "./dist/esm/node/client/router.js",
24
22
  "require": "./dist/cjs/node/client/router.js",
25
23
  "node": "./dist/esm/node/client/router.js",
26
24
  "browser": "./dist/esm/client/client-routing-runtime/index.js",
@@ -29,7 +27,6 @@
29
27
  },
30
28
  "./routing": {
31
29
  "worker": "./dist/esm/shared/route/routing.js",
32
- "edge-light": "./dist/esm/shared/route/routing.js",
33
30
  "require": "./dist/cjs/shared/route/routing.js",
34
31
  "node": "./dist/esm/shared/route/routing.js",
35
32
  "browser": "./dist/esm/shared/route/routing.js",
@@ -62,7 +59,6 @@
62
59
  },
63
60
  "./RenderErrorPage": {
64
61
  "worker": "./dist/esm/shared/RenderErrorPage.js",
65
- "edge-light": "./dist/esm/shared/RenderErrorPage.js",
66
62
  "require": "./dist/cjs/shared/RenderErrorPage.js",
67
63
  "node": "./dist/esm/shared/RenderErrorPage.js",
68
64
  "browser": "./dist/esm/shared/RenderErrorPage.js",
@@ -71,7 +67,6 @@
71
67
  },
72
68
  "./abort": {
73
69
  "worker": "./dist/esm/shared/abort.js",
74
- "edge-light": "./dist/esm/shared/abort.js",
75
70
  "require": "./dist/cjs/shared/abort.js",
76
71
  "node": "./dist/esm/shared/abort.js",
77
72
  "browser": "./dist/esm/shared/abort.js",
@@ -80,7 +75,6 @@
80
75
  },
81
76
  "./getPageContext": {
82
77
  "worker": "./dist/esm/shared/getPageContext.js",
83
- "edge-light": "./dist/esm/shared/getPageContext.js",
84
78
  "require": "./dist/cjs/shared/getPageContext.js",
85
79
  "node": "./dist/esm/shared/getPageContext.js",
86
80
  "browser": "./dist/esm/shared/getPageContext.js",
@@ -89,7 +83,6 @@
89
83
  },
90
84
  "./modifyUrl": {
91
85
  "worker": "./dist/esm/shared/modifyUrl.js",
92
- "edge-light": "./dist/esm/shared/modifyUrl.js",
93
86
  "require": "./dist/cjs/shared/modifyUrl.js",
94
87
  "node": "./dist/esm/shared/modifyUrl.js",
95
88
  "browser": "./dist/esm/shared/modifyUrl.js",
@@ -98,7 +91,6 @@
98
91
  },
99
92
  "./universal-middleware": {
100
93
  "worker": "./dist/esm/node/runtime/universal-middleware.js",
101
- "edge-light": "./dist/esm/node/runtime/universal-middleware.js",
102
94
  "require": "./dist/cjs/node/runtime/universal-middleware.js",
103
95
  "node": "./dist/esm/node/runtime/universal-middleware.js",
104
96
  "browser": "./dist/esm/client/node.js",
@@ -119,7 +111,6 @@
119
111
  },
120
112
  ".": {
121
113
  "worker": "./dist/esm/node/runtime/index-deprecated.js",
122
- "edge-light": "./dist/esm/node/runtime/index-deprecated.js",
123
114
  "require": "./dist/cjs/node/runtime/index-deprecated.js",
124
115
  "node": "./dist/esm/node/runtime/index-deprecated.js",
125
116
  "browser": "./dist/esm/client/node.js",
@@ -128,19 +119,21 @@
128
119
  }
129
120
  },
130
121
  "dependencies": {
131
- "@brillout/import": "^0.2.3",
122
+ "@brillout/import": "^0.2.6",
132
123
  "@brillout/json-serializer": "^0.5.15",
133
- "@brillout/picocolors": "^1.0.15",
124
+ "@brillout/picocolors": "^1.0.26",
134
125
  "@brillout/require-shim": "^0.1.2",
135
- "@brillout/vite-plugin-server-entry": "^0.6.0",
126
+ "@brillout/vite-plugin-server-entry": "^0.6.3",
136
127
  "acorn": "^8.0.0",
137
128
  "cac": "^6.0.0",
138
129
  "es-module-lexer": "^1.0.0",
139
130
  "esbuild": "^0.19.0 || ^0.20.0 || ^0.21.0 || ^0.22.0 || ^0.23.0 || ^0.24.0",
140
- "fast-glob": "^3.0.0",
141
131
  "json5": "^2.0.0",
132
+ "picomatch": "^4.0.2",
142
133
  "semver": "^7.0.0",
134
+ "sirv": "^3.0.1",
143
135
  "source-map-support": "^0.5.0",
136
+ "tinyglobby": "^0.2.10",
144
137
  "vite": ">=5.1.0"
145
138
  },
146
139
  "peerDependencies": {
@@ -237,7 +230,6 @@
237
230
  "./client.js",
238
231
  "./client/router.js",
239
232
  "./cli.js",
240
- "./dist-cjs-fixup.mjs",
241
233
  "./getPageContext.js",
242
234
  "./__internal.js",
243
235
  "./__internal/setup.js",
@@ -256,13 +248,14 @@
256
248
  "@types/estree": "^1.0.5",
257
249
  "@types/jest": "^29.5.11",
258
250
  "@types/node": "^20.10.5",
251
+ "@types/picomatch": "^3.0.2",
259
252
  "@types/resolve": "^1.20.6",
260
253
  "@types/semver": "^7.5.8",
261
254
  "@types/source-map-support": "^0.5.10",
262
255
  "react-streaming": "^0.3.47",
263
256
  "rimraf": "^5.0.5",
264
257
  "typescript": "^5.7.3",
265
- "vite": "^6.0.5"
258
+ "vite": "^6.2.0"
266
259
  },
267
260
  "scripts": {
268
261
  "dev": "tsc --watch",
@@ -1,119 +0,0 @@
1
- "use strict";
2
- // TODO/v1-release: remove this file
3
- var __importDefault = (this && this.__importDefault) || function (mod) {
4
- return (mod && mod.__esModule) ? mod : { "default": mod };
5
- };
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.autoFullBuild = autoFullBuild;
8
- const getFullBuildInlineConfig_js_1 = require("../shared/getFullBuildInlineConfig.js");
9
- const vite_1 = require("vite");
10
- const utils_js_1 = require("../utils.js");
11
- const runPrerender_js_1 = require("../../prerender/runPrerender.js");
12
- const context_js_1 = require("../../prerender/context.js");
13
- const isViteCliCall_js_1 = require("../shared/isViteCliCall.js");
14
- const picocolors_1 = __importDefault(require("@brillout/picocolors"));
15
- const logErrorHint_js_1 = require("../../runtime/renderPage/logErrorHint.js");
16
- const buildConfig_js_1 = require("./buildConfig.js");
17
- const getVikeConfig_js_1 = require("./importUserCode/v1-design/getVikeConfig.js");
18
- const context_js_2 = require("../../api/context.js");
19
- let forceExit = false;
20
- function autoFullBuild() {
21
- let config;
22
- let vikeConfig;
23
- return [
24
- {
25
- name: 'vike:autoFullBuild',
26
- apply: 'build',
27
- enforce: 'pre',
28
- async configResolved(config_) {
29
- vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig)(config_);
30
- config = config_;
31
- abortViteBuildSsr(vikeConfig);
32
- },
33
- writeBundle: {
34
- /* We can't use this because it breaks Vite's logging. TODO: try again with latest Vite version.
35
- sequential: true,
36
- order: 'pre',
37
- */
38
- async handler(_options, bundle) {
39
- try {
40
- await triggerFullBuild(config, vikeConfig, bundle);
41
- }
42
- catch (err) {
43
- // Avoid Rollup prefixing the error with [vike:autoFullBuild], for example see https://github.com/vikejs/vike/issues/472#issuecomment-1276274203
44
- console.error(err);
45
- process.exit(1);
46
- }
47
- }
48
- }
49
- },
50
- {
51
- name: 'vike:autoFullBuild:forceExit',
52
- apply: 'build',
53
- enforce: 'post',
54
- closeBundle: {
55
- sequential: true,
56
- order: 'post',
57
- handler() {
58
- if (forceExit) {
59
- (0, runPrerender_js_1.runPrerender_forceExit)();
60
- (0, utils_js_1.assert)(false);
61
- }
62
- }
63
- }
64
- }
65
- ];
66
- }
67
- async function triggerFullBuild(config, vikeConfig, bundle) {
68
- if (config.build.ssr)
69
- return; // already triggered
70
- if (isDisabled(vikeConfig))
71
- return;
72
- // Workaround for @vitejs/plugin-legacy
73
- // - The legacy plugin triggers its own Rollup build for the client-side.
74
- // - The legacy plugin doesn't generate a manifest => we can use that to detect the legacy plugin build.
75
- // - Issue & reproduction: https://github.com/vikejs/vike/issues/1154#issuecomment-1965954636
76
- if (!bundle[buildConfig_js_1.manifestTempFile])
77
- return;
78
- const configInline = (0, getFullBuildInlineConfig_js_1.getFullBuildInlineConfig)(config);
79
- try {
80
- await (0, vite_1.build)(setSSR(configInline));
81
- }
82
- catch (err) {
83
- console.error(err);
84
- (0, logErrorHint_js_1.logErrorHint)(err);
85
- process.exit(1);
86
- }
87
- if ((0, context_js_1.isPrerenderAutoRunEnabled)(vikeConfig)) {
88
- const res = await (0, runPrerender_js_1.runPrerenderFromAutoRun)(configInline, config);
89
- forceExit = res.forceExit;
90
- }
91
- }
92
- function setSSR(configInline) {
93
- return {
94
- ...configInline,
95
- build: {
96
- ...configInline.build,
97
- ssr: true
98
- }
99
- };
100
- }
101
- function abortViteBuildSsr(vikeConfig) {
102
- if (vikeConfig.global.config.disableAutoFullBuild !== true && (0, isViteCliCall_js_1.isViteCliCall)() && (0, isViteCliCall_js_1.getViteConfigFromCli)()?.build.ssr) {
103
- (0, utils_js_1.assertWarning)(false, `The CLI call ${picocolors_1.default.cyan('$ vite build --ssr')} is superfluous since ${picocolors_1.default.cyan('$ vite build')} also builds the server-side. If you want two separate build steps then use https://vike.dev/disableAutoFullBuild or use Vite's ${picocolors_1.default.cyan('build()')} API.`, { onlyOnce: true });
104
- process.exit(0);
105
- }
106
- }
107
- function isDisabled(vikeConfig) {
108
- const { disableAutoFullBuild, viteEnvironmentAPI } = vikeConfig.global.config;
109
- if (viteEnvironmentAPI) {
110
- return true;
111
- }
112
- if (disableAutoFullBuild === undefined || disableAutoFullBuild === 'prerender') {
113
- const isViteApi = !(0, isViteCliCall_js_1.isViteCliCall)() && !(0, context_js_2.isVikeCliOrApi)();
114
- return isViteApi;
115
- }
116
- else {
117
- return disableAutoFullBuild;
118
- }
119
- }
@@ -1,76 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.buildApp = buildApp;
4
- const runPrerender_js_1 = require("../../prerender/runPrerender.js");
5
- const context_js_1 = require("../../prerender/context.js");
6
- const getOutDirs_js_1 = require("../shared/getOutDirs.js");
7
- const utils_js_1 = require("../utils.js");
8
- const getVikeConfig_js_1 = require("./importUserCode/v1-design/getVikeConfig.js");
9
- const getFullBuildInlineConfig_js_1 = require("../shared/getFullBuildInlineConfig.js");
10
- function buildApp() {
11
- let config;
12
- // `builder.buildApp` can be overriden by another plugin e.g vike-vercel https://github.com/vikejs/vike/pull/2184#issuecomment-2659425195
13
- // In that case, we should'nt `forceExit`.
14
- let forceExit = false;
15
- return [
16
- {
17
- name: 'vike:buildApp',
18
- apply: 'build',
19
- config(config) {
20
- if (!config.vike.config.viteEnvironmentAPI)
21
- return;
22
- return {
23
- builder: {
24
- buildApp: async (builder) => {
25
- (0, utils_js_1.assert)(builder.environments.client);
26
- (0, utils_js_1.assert)(builder.environments.ssr);
27
- await builder.build(builder.environments.client);
28
- await builder.build(builder.environments.ssr);
29
- if (forceExit) {
30
- (0, runPrerender_js_1.runPrerender_forceExit)();
31
- (0, utils_js_1.assert)(false);
32
- }
33
- }
34
- },
35
- environments: {
36
- ssr: {
37
- consumer: 'server',
38
- build: {
39
- outDir: (0, getOutDirs_js_1.resolveOutDir)(config, true),
40
- ssr: true
41
- }
42
- },
43
- client: {
44
- consumer: 'client',
45
- build: {
46
- copyPublicDir: true,
47
- ssr: false
48
- }
49
- }
50
- }
51
- };
52
- }
53
- },
54
- {
55
- name: 'vike:buildApp:prerender',
56
- apply: 'build',
57
- enforce: 'pre',
58
- applyToEnvironment(env) {
59
- return env.name === 'ssr';
60
- },
61
- configResolved(_config) {
62
- config = _config;
63
- },
64
- async writeBundle() {
65
- if (!config.vike.config.viteEnvironmentAPI)
66
- return;
67
- const vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig)(config);
68
- if (!(0, context_js_1.isPrerenderAutoRunEnabled)(vikeConfig))
69
- return;
70
- const configInline = (0, getFullBuildInlineConfig_js_1.getFullBuildInlineConfig)(config);
71
- const res = await (0, runPrerender_js_1.runPrerenderFromAutoRun)(configInline, config);
72
- forceExit = res.forceExit;
73
- }
74
- }
75
- ];
76
- }
@@ -1,17 +0,0 @@
1
- "use strict";
2
- // We remove: https://github.com/vitejs/vite/blob/dd79858ab70d2591e1239ddb19e1ce38d9913b4c/packages/vite/src/node/plugins/ssrRequireHook.ts
3
- // Because it injects `require('module')` into the build which chokes bundlers, such as Cloudflare Workers's webpack-based bundler.
4
- // The minimal added value of deduping React is not worth the trouble; we simply remove Vite's deduping functionality for production.
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.removeRequireHookPlugin = removeRequireHookPlugin;
7
- function removeRequireHookPlugin() {
8
- return {
9
- name: 'vike:removeRequireHookPlugin',
10
- apply: 'build',
11
- configResolved(config) {
12
- const pluginsMod = config.plugins.filter((plugin) => plugin.name !== 'vite:ssr-require-hook');
13
- // @ts-ignore
14
- config.plugins = pluginsMod;
15
- }
16
- };
17
- }
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getFullBuildInlineConfig = getFullBuildInlineConfig;
4
- const isViteCliCall_js_1 = require("./isViteCliCall.js");
5
- function getFullBuildInlineConfig(config) {
6
- const configFromCli = !(0, isViteCliCall_js_1.isViteCliCall)() ? null : (0, isViteCliCall_js_1.getViteConfigFromCli)();
7
- if (config._viteConfigEnhanced) {
8
- return config._viteConfigEnhanced;
9
- }
10
- else {
11
- return {
12
- ...configFromCli,
13
- configFile: configFromCli?.configFile || config.configFile,
14
- root: config.root,
15
- build: {
16
- ...configFromCli?.build
17
- }
18
- };
19
- }
20
- }
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.viteIsSSR = viteIsSSR;
4
- exports.viteIsSSR_options = viteIsSSR_options;
5
- exports.viteIsSSR_safe = viteIsSSR_safe;
6
- const assert_js_1 = require("../../../utils/assert.js");
7
- function viteIsSSR(config) {
8
- return !!config?.build?.ssr;
9
- }
10
- function viteIsSSR_options(options) {
11
- return !!options?.ssr;
12
- }
13
- // Vite is quite messy about setting `ssr: boolean`, thus we use an extra safe implemention for security purposes.
14
- // It's used for .client.js and .server.js guarantee thus we use agressive assert() calls for added safety.
15
- function viteIsSSR_safe(config, options) {
16
- if (config.command === 'build') {
17
- (0, assert_js_1.assert)(typeof config.build.ssr === 'boolean');
18
- const val = config.build.ssr;
19
- if (options?.ssr !== undefined)
20
- (0, assert_js_1.assert)(val === options.ssr);
21
- return val;
22
- }
23
- else {
24
- (0, assert_js_1.assert)(typeof options?.ssr === 'boolean');
25
- const val = options.ssr;
26
- /* This assert() fails (which is very unexpected).
27
- if (typeof config.build.ssr === 'boolean') assert(val === config.build.ssr)
28
- //*/
29
- return val;
30
- }
31
- }
@@ -1,3 +0,0 @@
1
- export { autoFullBuild };
2
- import type { Plugin } from 'vite';
3
- declare function autoFullBuild(): Plugin[];
@@ -1,114 +0,0 @@
1
- // TODO/v1-release: remove this file
2
- import { getFullBuildInlineConfig } from '../shared/getFullBuildInlineConfig.js';
3
- export { autoFullBuild };
4
- import { build } from 'vite';
5
- import { assert, assertWarning } from '../utils.js';
6
- import { runPrerenderFromAutoRun, runPrerender_forceExit } from '../../prerender/runPrerender.js';
7
- import { isPrerenderAutoRunEnabled } from '../../prerender/context.js';
8
- import { isViteCliCall, getViteConfigFromCli } from '../shared/isViteCliCall.js';
9
- import pc from '@brillout/picocolors';
10
- import { logErrorHint } from '../../runtime/renderPage/logErrorHint.js';
11
- import { manifestTempFile } from './buildConfig.js';
12
- import { getVikeConfig } from './importUserCode/v1-design/getVikeConfig.js';
13
- import { isVikeCliOrApi } from '../../api/context.js';
14
- let forceExit = false;
15
- function autoFullBuild() {
16
- let config;
17
- let vikeConfig;
18
- return [
19
- {
20
- name: 'vike:autoFullBuild',
21
- apply: 'build',
22
- enforce: 'pre',
23
- async configResolved(config_) {
24
- vikeConfig = await getVikeConfig(config_);
25
- config = config_;
26
- abortViteBuildSsr(vikeConfig);
27
- },
28
- writeBundle: {
29
- /* We can't use this because it breaks Vite's logging. TODO: try again with latest Vite version.
30
- sequential: true,
31
- order: 'pre',
32
- */
33
- async handler(_options, bundle) {
34
- try {
35
- await triggerFullBuild(config, vikeConfig, bundle);
36
- }
37
- catch (err) {
38
- // Avoid Rollup prefixing the error with [vike:autoFullBuild], for example see https://github.com/vikejs/vike/issues/472#issuecomment-1276274203
39
- console.error(err);
40
- process.exit(1);
41
- }
42
- }
43
- }
44
- },
45
- {
46
- name: 'vike:autoFullBuild:forceExit',
47
- apply: 'build',
48
- enforce: 'post',
49
- closeBundle: {
50
- sequential: true,
51
- order: 'post',
52
- handler() {
53
- if (forceExit) {
54
- runPrerender_forceExit();
55
- assert(false);
56
- }
57
- }
58
- }
59
- }
60
- ];
61
- }
62
- async function triggerFullBuild(config, vikeConfig, bundle) {
63
- if (config.build.ssr)
64
- return; // already triggered
65
- if (isDisabled(vikeConfig))
66
- return;
67
- // Workaround for @vitejs/plugin-legacy
68
- // - The legacy plugin triggers its own Rollup build for the client-side.
69
- // - The legacy plugin doesn't generate a manifest => we can use that to detect the legacy plugin build.
70
- // - Issue & reproduction: https://github.com/vikejs/vike/issues/1154#issuecomment-1965954636
71
- if (!bundle[manifestTempFile])
72
- return;
73
- const configInline = getFullBuildInlineConfig(config);
74
- try {
75
- await build(setSSR(configInline));
76
- }
77
- catch (err) {
78
- console.error(err);
79
- logErrorHint(err);
80
- process.exit(1);
81
- }
82
- if (isPrerenderAutoRunEnabled(vikeConfig)) {
83
- const res = await runPrerenderFromAutoRun(configInline, config);
84
- forceExit = res.forceExit;
85
- }
86
- }
87
- function setSSR(configInline) {
88
- return {
89
- ...configInline,
90
- build: {
91
- ...configInline.build,
92
- ssr: true
93
- }
94
- };
95
- }
96
- function abortViteBuildSsr(vikeConfig) {
97
- if (vikeConfig.global.config.disableAutoFullBuild !== true && isViteCliCall() && getViteConfigFromCli()?.build.ssr) {
98
- assertWarning(false, `The CLI call ${pc.cyan('$ vite build --ssr')} is superfluous since ${pc.cyan('$ vite build')} also builds the server-side. If you want two separate build steps then use https://vike.dev/disableAutoFullBuild or use Vite's ${pc.cyan('build()')} API.`, { onlyOnce: true });
99
- process.exit(0);
100
- }
101
- }
102
- function isDisabled(vikeConfig) {
103
- const { disableAutoFullBuild, viteEnvironmentAPI } = vikeConfig.global.config;
104
- if (viteEnvironmentAPI) {
105
- return true;
106
- }
107
- if (disableAutoFullBuild === undefined || disableAutoFullBuild === 'prerender') {
108
- const isViteApi = !isViteCliCall() && !isVikeCliOrApi();
109
- return isViteApi;
110
- }
111
- else {
112
- return disableAutoFullBuild;
113
- }
114
- }
@@ -1,3 +0,0 @@
1
- export { buildApp };
2
- import type { Plugin } from 'vite';
3
- declare function buildApp(): Plugin[];