vike 0.4.220 → 0.4.221-commit-ab9e52a

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 (296) hide show
  1. package/dist/cjs/__internal/index.js +5 -23
  2. package/dist/cjs/node/api/build.js +33 -24
  3. package/dist/cjs/node/api/context.js +6 -8
  4. package/dist/cjs/node/api/prepareViteApiCall.js +23 -21
  5. package/dist/cjs/node/api/prerender.js +1 -0
  6. package/dist/cjs/node/api/utils.js +2 -1
  7. package/dist/cjs/node/cli/context.js +16 -0
  8. package/dist/cjs/node/cli/entry.js +2 -0
  9. package/dist/cjs/node/cli/utils.js +1 -0
  10. package/dist/cjs/node/plugin/index.js +4 -8
  11. package/dist/cjs/node/plugin/onLoad.js +6 -1
  12. package/dist/cjs/node/plugin/plugins/autoFullBuild.js +34 -33
  13. package/dist/cjs/node/plugin/plugins/baseUrls.js +2 -2
  14. package/dist/cjs/node/plugin/plugins/buildApp.js +72 -0
  15. package/dist/cjs/node/plugin/plugins/buildConfig/fixServerAssets.js +12 -12
  16. package/dist/cjs/node/plugin/plugins/buildConfig.js +17 -12
  17. package/dist/cjs/node/plugin/plugins/buildEntry/index.js +28 -24
  18. package/dist/cjs/node/plugin/plugins/commonConfig.js +9 -7
  19. package/dist/cjs/node/plugin/plugins/extractAssetsPlugin.js +7 -4
  20. package/dist/cjs/node/plugin/plugins/extractExportNamesPlugin.js +2 -1
  21. package/dist/cjs/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +15 -10
  22. package/dist/cjs/node/plugin/plugins/importUserCode/index.js +11 -6
  23. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/{assertExtensions.js → getVikeConfig/assertExtensions.js} +41 -36
  24. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +59 -22
  25. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/{getConfigFileExport.js → getVikeConfig/getConfigFileExport.js} +2 -2
  26. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/getPlusFilesAll.js +159 -0
  27. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +40 -23
  28. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.js +9 -64
  29. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +11 -5
  30. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +403 -590
  31. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/{debug.js → virtual-files/debug.js} +1 -1
  32. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/{getVirtualFilePageConfigValuesAll.js → virtual-files/getVirtualFilePageConfigValuesAll.js} +12 -9
  33. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/{getVirtualFilePageConfigs.js → virtual-files/getVirtualFilePageConfigs.js} +13 -11
  34. package/dist/cjs/node/plugin/plugins/packageJsonFile.js +2 -2
  35. package/dist/cjs/node/plugin/plugins/previewConfig.js +7 -7
  36. package/dist/cjs/node/plugin/plugins/setGlobalContext.js +3 -5
  37. package/dist/cjs/node/plugin/shared/findPageFiles.js +2 -1
  38. package/dist/cjs/node/plugin/shared/getFullBuildInlineConfig.js +20 -0
  39. package/dist/cjs/{utils → node/plugin/shared}/getOutDirs.js +70 -61
  40. package/dist/cjs/node/plugin/{resolveClientEntriesDev.js → shared/resolveClientEntriesDev.js} +5 -8
  41. package/dist/cjs/{utils → node/plugin/shared}/viteIsSSR.js +2 -2
  42. package/dist/cjs/node/plugin/utils.js +1 -2
  43. package/dist/cjs/node/prerender/context.js +31 -0
  44. package/dist/cjs/node/prerender/resolvePrerenderConfig.js +46 -0
  45. package/dist/cjs/node/prerender/runPrerender.js +89 -68
  46. package/dist/cjs/node/prerender/utils.js +2 -2
  47. package/dist/cjs/node/runtime/globalContext.js +222 -150
  48. package/dist/cjs/node/runtime/html/injectAssets/getHtmlTags.js +11 -7
  49. package/dist/cjs/node/runtime/html/injectAssets/getViteDevScript.js +2 -3
  50. package/dist/cjs/node/runtime/html/injectAssets.js +4 -4
  51. package/dist/cjs/node/runtime/html/renderHtml.js +4 -5
  52. package/dist/cjs/node/runtime/page-files/setup.js +1 -1
  53. package/dist/cjs/node/runtime/renderPage/analyzePage.js +2 -3
  54. package/dist/cjs/node/runtime/renderPage/getEarlyHints.js +2 -27
  55. package/dist/cjs/node/runtime/renderPage/getPageAssets/sortPageAssetsForEarlyHintsHeader.js +2 -4
  56. package/dist/cjs/node/runtime/renderPage/getPageAssets.js +4 -4
  57. package/dist/cjs/node/runtime/renderPage/handleErrorWithoutErrorPage.js +3 -5
  58. package/dist/cjs/node/runtime/renderPage/isFontFallback.js +29 -0
  59. package/dist/cjs/node/runtime/renderPage/loadUserFilesServerSide.js +5 -4
  60. package/dist/cjs/node/runtime/renderPage/log404/index.js +1 -2
  61. package/dist/cjs/node/runtime/renderPage/renderPageAlreadyRouted.js +14 -10
  62. package/dist/cjs/node/runtime/renderPage/resolveRedirects.js +6 -5
  63. package/dist/cjs/node/runtime/renderPage.js +31 -29
  64. package/dist/cjs/node/runtime/utils.js +3 -3
  65. package/dist/cjs/node/runtime-dev/createDevMiddleware.js +5 -3
  66. package/dist/cjs/node/shared/resolveBase.js +7 -0
  67. package/dist/cjs/shared/getPageConfigsRuntime.js +20 -0
  68. package/dist/cjs/shared/getPageContextUrlComputed.js +6 -1
  69. package/dist/cjs/shared/getPageFiles/fileTypes.js +0 -1
  70. package/dist/cjs/shared/getPageFiles/getAllPageIdFiles.js +0 -3
  71. package/dist/cjs/shared/getPageFiles/getPageFileObject.js +0 -5
  72. package/dist/cjs/shared/getPageFiles/parseGlobResults.js +4 -3
  73. package/dist/cjs/shared/getPageFiles.js +1 -3
  74. package/dist/cjs/shared/page-configs/getPageConfigUserFriendly.js +15 -6
  75. package/dist/cjs/shared/page-configs/loadConfigValues.js +5 -1
  76. package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +69 -18
  77. package/dist/cjs/shared/route/loadPageRoutes.js +1 -0
  78. package/dist/cjs/shared/utils.js +0 -1
  79. package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
  80. package/dist/cjs/utils/assertSetup.js +1 -1
  81. package/dist/cjs/utils/catchInfiniteLoop.js +34 -0
  82. package/dist/cjs/utils/debug.js +8 -6
  83. package/dist/cjs/utils/findFile.js +4 -3
  84. package/dist/cjs/utils/isDev.js +2 -2
  85. package/dist/cjs/utils/isFilePathAbsoluteFilesystem.js +2 -2
  86. package/dist/cjs/utils/makePublicCopy.js +32 -0
  87. package/dist/cjs/utils/objectAssignSafe.js +7 -0
  88. package/dist/cjs/utils/path.js +48 -0
  89. package/dist/cjs/utils/requireResolve.js +3 -3
  90. package/dist/esm/__internal/index.d.ts +2 -2
  91. package/dist/esm/__internal/index.js +7 -26
  92. package/dist/esm/client/client-routing-runtime/createPageContext.js +5 -9
  93. package/dist/esm/client/client-routing-runtime/history.d.ts +3 -1
  94. package/dist/esm/client/client-routing-runtime/history.js +23 -18
  95. package/dist/esm/client/client-routing-runtime/index.d.ts +0 -1
  96. package/dist/esm/client/client-routing-runtime/index.js +0 -1
  97. package/dist/esm/client/client-routing-runtime/initClientRouter.js +2 -2
  98. package/dist/esm/client/client-routing-runtime/initOnLinkClick.d.ts +0 -4
  99. package/dist/esm/client/client-routing-runtime/initOnLinkClick.js +0 -11
  100. package/dist/esm/client/client-routing-runtime/initOnPopState.d.ts +0 -10
  101. package/dist/esm/client/client-routing-runtime/initOnPopState.js +50 -70
  102. package/dist/esm/client/client-routing-runtime/renderPageClientSide.js +15 -15
  103. package/dist/esm/client/client-routing-runtime/scrollRestoration.d.ts +4 -6
  104. package/dist/esm/client/client-routing-runtime/scrollRestoration.js +17 -12
  105. package/dist/esm/client/client-routing-runtime/setScrollPosition.d.ts +1 -1
  106. package/dist/esm/client/client-routing-runtime/setScrollPosition.js +29 -5
  107. package/dist/esm/client/client-routing-runtime/skipLink.d.ts +0 -2
  108. package/dist/esm/client/client-routing-runtime/skipLink.js +0 -1
  109. package/dist/esm/client/client-routing-runtime/utils.d.ts +1 -0
  110. package/dist/esm/client/client-routing-runtime/utils.js +1 -0
  111. package/dist/esm/client/server-routing-runtime/getPageContext.js +3 -4
  112. package/dist/esm/client/shared/loadUserFilesClientSide.js +3 -2
  113. package/dist/esm/node/api/build.d.ts +1 -6
  114. package/dist/esm/node/api/build.js +31 -25
  115. package/dist/esm/node/api/context.d.ts +4 -4
  116. package/dist/esm/node/api/context.js +6 -9
  117. package/dist/esm/node/api/prepareViteApiCall.d.ts +4 -3
  118. package/dist/esm/node/api/prepareViteApiCall.js +24 -22
  119. package/dist/esm/node/api/prerender.js +1 -0
  120. package/dist/esm/node/api/utils.d.ts +2 -1
  121. package/dist/esm/node/api/utils.js +2 -1
  122. package/dist/esm/node/cli/context.d.ts +5 -0
  123. package/dist/esm/node/cli/context.js +14 -0
  124. package/dist/esm/node/cli/entry.js +2 -0
  125. package/dist/esm/node/cli/parseCli.d.ts +3 -1
  126. package/dist/esm/node/cli/utils.d.ts +1 -0
  127. package/dist/esm/node/cli/utils.js +1 -0
  128. package/dist/esm/node/plugin/index.d.ts +29 -1
  129. package/dist/esm/node/plugin/index.js +5 -9
  130. package/dist/esm/node/plugin/onLoad.js +7 -2
  131. package/dist/esm/node/plugin/plugins/autoFullBuild.js +35 -34
  132. package/dist/esm/node/plugin/plugins/baseUrls.js +2 -2
  133. package/dist/esm/node/plugin/plugins/buildApp.d.ts +3 -0
  134. package/dist/esm/node/plugin/plugins/buildApp.js +70 -0
  135. package/dist/esm/node/plugin/plugins/buildConfig/fixServerAssets.d.ts +0 -2
  136. package/dist/esm/node/plugin/plugins/buildConfig/fixServerAssets.js +11 -11
  137. package/dist/esm/node/plugin/plugins/buildConfig.js +16 -11
  138. package/dist/esm/node/plugin/plugins/buildEntry/index.d.ts +3 -3
  139. package/dist/esm/node/plugin/plugins/buildEntry/index.js +28 -24
  140. package/dist/esm/node/plugin/plugins/commonConfig.d.ts +8 -2
  141. package/dist/esm/node/plugin/plugins/commonConfig.js +7 -5
  142. package/dist/esm/node/plugin/plugins/extractAssetsPlugin.js +6 -3
  143. package/dist/esm/node/plugin/plugins/extractExportNamesPlugin.js +2 -1
  144. package/dist/esm/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.d.ts +2 -2
  145. package/dist/esm/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.js +14 -9
  146. package/dist/esm/node/plugin/plugins/importUserCode/index.js +11 -6
  147. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/assertExtensions.d.ts +6 -0
  148. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{assertExtensions.js → getVikeConfig/assertExtensions.js} +41 -36
  149. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.d.ts +2 -2
  150. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +58 -21
  151. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{getConfigFileExport.js → getVikeConfig/getConfigFileExport.js} +2 -2
  152. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/getPlusFilesAll.d.ts +39 -0
  153. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/getPlusFilesAll.js +154 -0
  154. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.d.ts +15 -9
  155. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +41 -24
  156. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.d.ts +8 -18
  157. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.js +10 -65
  158. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.d.ts +6 -2
  159. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +12 -6
  160. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.d.ts +10 -122
  161. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +407 -594
  162. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{debug.js → virtual-files/debug.js} +1 -1
  163. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{getVirtualFilePageConfigValuesAll.js → virtual-files/getVirtualFilePageConfigValuesAll.js} +12 -9
  164. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{getVirtualFilePageConfigs.js → virtual-files/getVirtualFilePageConfigs.js} +13 -11
  165. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{isRuntimeEnvMatch.d.ts → virtual-files/isRuntimeEnvMatch.d.ts} +1 -1
  166. package/dist/esm/node/plugin/plugins/packageJsonFile.js +1 -1
  167. package/dist/esm/node/plugin/plugins/previewConfig.js +5 -5
  168. package/dist/esm/node/plugin/plugins/setGlobalContext.js +4 -6
  169. package/dist/esm/node/plugin/shared/findPageFiles.js +2 -1
  170. package/dist/esm/node/plugin/shared/getFullBuildInlineConfig.d.ts +2 -0
  171. package/dist/esm/node/plugin/shared/getFullBuildInlineConfig.js +17 -0
  172. package/dist/esm/{utils → node/plugin/shared}/getOutDirs.d.ts +1 -1
  173. package/dist/esm/{utils → node/plugin/shared}/getOutDirs.js +52 -43
  174. package/dist/esm/node/plugin/{resolveClientEntriesDev.js → shared/resolveClientEntriesDev.js} +5 -8
  175. package/dist/esm/{utils → node/plugin/shared}/viteIsSSR.d.ts +2 -5
  176. package/dist/esm/{utils → node/plugin/shared}/viteIsSSR.js +2 -2
  177. package/dist/esm/node/plugin/utils.d.ts +0 -1
  178. package/dist/esm/node/plugin/utils.js +1 -2
  179. package/dist/esm/node/prerender/context.d.ts +11 -0
  180. package/dist/esm/node/prerender/context.js +29 -0
  181. package/dist/esm/node/prerender/resolvePrerenderConfig.d.ts +12 -0
  182. package/dist/esm/node/prerender/resolvePrerenderConfig.js +44 -0
  183. package/dist/esm/node/prerender/runPrerender.d.ts +42 -1
  184. package/dist/esm/node/prerender/runPrerender.js +90 -69
  185. package/dist/esm/node/prerender/utils.d.ts +2 -2
  186. package/dist/esm/node/prerender/utils.js +2 -2
  187. package/dist/esm/node/runtime/globalContext.d.ts +44 -36
  188. package/dist/esm/node/runtime/globalContext.js +223 -151
  189. package/dist/esm/node/runtime/html/injectAssets/getHtmlTags.d.ts +1 -1
  190. package/dist/esm/node/runtime/html/injectAssets/getHtmlTags.js +11 -7
  191. package/dist/esm/node/runtime/html/injectAssets/getViteDevScript.d.ts +4 -1
  192. package/dist/esm/node/runtime/html/injectAssets/getViteDevScript.js +2 -3
  193. package/dist/esm/node/runtime/html/injectAssets.d.ts +2 -0
  194. package/dist/esm/node/runtime/html/injectAssets.js +4 -4
  195. package/dist/esm/node/runtime/html/renderHtml.js +4 -5
  196. package/dist/esm/node/runtime/page-files/setup.js +1 -1
  197. package/dist/esm/node/runtime/renderPage/analyzePage.d.ts +2 -1
  198. package/dist/esm/node/runtime/renderPage/analyzePage.js +2 -3
  199. package/dist/esm/node/runtime/renderPage/getEarlyHints.js +1 -26
  200. package/dist/esm/node/runtime/renderPage/getPageAssets/sortPageAssetsForEarlyHintsHeader.d.ts +1 -1
  201. package/dist/esm/node/runtime/renderPage/getPageAssets/sortPageAssetsForEarlyHintsHeader.js +2 -4
  202. package/dist/esm/node/runtime/renderPage/getPageAssets.d.ts +3 -1
  203. package/dist/esm/node/runtime/renderPage/getPageAssets.js +4 -4
  204. package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.d.ts +2 -0
  205. package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.js +3 -5
  206. package/dist/esm/node/runtime/renderPage/isFontFallback.d.ts +3 -0
  207. package/dist/esm/node/runtime/renderPage/isFontFallback.js +27 -0
  208. package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.d.ts +2 -0
  209. package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.js +6 -5
  210. package/dist/esm/node/runtime/renderPage/log404/index.d.ts +2 -0
  211. package/dist/esm/node/runtime/renderPage/log404/index.js +1 -2
  212. package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.d.ts +3 -0
  213. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +26 -10
  214. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.js +14 -10
  215. package/dist/esm/node/runtime/renderPage/resolveRedirects.d.ts +2 -0
  216. package/dist/esm/node/runtime/renderPage/resolveRedirects.js +5 -5
  217. package/dist/esm/node/runtime/renderPage.js +32 -30
  218. package/dist/esm/node/runtime/utils.d.ts +3 -3
  219. package/dist/esm/node/runtime/utils.js +3 -3
  220. package/dist/esm/node/runtime-dev/createDevMiddleware.js +5 -3
  221. package/dist/esm/node/shared/resolveBase.d.ts +5 -1
  222. package/dist/esm/node/shared/resolveBase.js +7 -0
  223. package/dist/esm/shared/getPageConfigsRuntime.d.ts +13 -0
  224. package/dist/esm/shared/getPageConfigsRuntime.js +18 -0
  225. package/dist/esm/shared/getPageContextUrlComputed.js +6 -1
  226. package/dist/esm/shared/getPageFiles/fileTypes.js +1 -2
  227. package/dist/esm/shared/getPageFiles/getAllPageIdFiles.js +0 -3
  228. package/dist/esm/shared/getPageFiles/getPageFileObject.js +0 -5
  229. package/dist/esm/shared/getPageFiles/parseGlobResults.d.ts +1 -1
  230. package/dist/esm/shared/getPageFiles/parseGlobResults.js +4 -3
  231. package/dist/esm/shared/getPageFiles.d.ts +0 -1
  232. package/dist/esm/shared/getPageFiles.js +0 -1
  233. package/dist/esm/shared/page-configs/Config.d.ts +83 -3
  234. package/dist/esm/shared/page-configs/PageConfig.d.ts +30 -18
  235. package/dist/esm/shared/page-configs/getPageConfigUserFriendly.d.ts +6 -8
  236. package/dist/esm/shared/page-configs/getPageConfigUserFriendly.js +15 -6
  237. package/dist/esm/shared/page-configs/loadConfigValues.js +6 -2
  238. package/dist/esm/shared/page-configs/serialize/serializeConfigValues.d.ts +7 -1
  239. package/dist/esm/shared/page-configs/serialize/serializeConfigValues.js +70 -19
  240. package/dist/esm/shared/route/loadPageRoutes.js +1 -0
  241. package/dist/esm/shared/utils.d.ts +0 -1
  242. package/dist/esm/shared/utils.js +0 -1
  243. package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
  244. package/dist/esm/utils/PROJECT_VERSION.js +1 -1
  245. package/dist/esm/utils/assertSetup.js +1 -1
  246. package/dist/esm/utils/catchInfiniteLoop.d.ts +2 -0
  247. package/dist/esm/utils/catchInfiniteLoop.js +32 -0
  248. package/dist/esm/utils/debug.d.ts +1 -1
  249. package/dist/esm/utils/debug.js +8 -6
  250. package/dist/esm/utils/findFile.js +2 -1
  251. package/dist/esm/utils/isDev.js +3 -3
  252. package/dist/esm/utils/isFilePathAbsoluteFilesystem.js +1 -1
  253. package/dist/esm/utils/makePublicCopy.d.ts +3 -0
  254. package/dist/esm/utils/makePublicCopy.js +30 -0
  255. package/dist/esm/utils/objectAssignSafe.d.ts +1 -0
  256. package/dist/esm/utils/objectAssignSafe.js +4 -0
  257. package/dist/esm/utils/path.d.ts +14 -0
  258. package/dist/esm/utils/path.js +46 -0
  259. package/dist/esm/utils/projectInfo.d.ts +1 -1
  260. package/dist/esm/utils/requireResolve.js +1 -1
  261. package/package.json +2 -2
  262. package/dist/cjs/node/plugin/plugins/buildEntry/getVikeManifest.js +0 -17
  263. package/dist/cjs/node/plugin/plugins/importUserCode/addImportStatement.js +0 -29
  264. package/dist/cjs/node/prerender/isPrerenderAutoRunEnabled.js +0 -16
  265. package/dist/cjs/node/shared/assertPluginManifest.js +0 -20
  266. package/dist/cjs/node/shared/assertRuntimeManifest.js +0 -16
  267. package/dist/cjs/shared/assertPageFilePath.js +0 -11
  268. package/dist/cjs/shared/getPageFiles/getPageFiles.js +0 -48
  269. package/dist/cjs/utils/filesystemPathHandling.js +0 -18
  270. package/dist/cjs/utils/path-shim.js +0 -19
  271. package/dist/esm/node/plugin/plugins/buildEntry/getVikeManifest.d.ts +0 -5
  272. package/dist/esm/node/plugin/plugins/buildEntry/getVikeManifest.js +0 -15
  273. package/dist/esm/node/plugin/plugins/importUserCode/addImportStatement.d.ts +0 -14
  274. package/dist/esm/node/plugin/plugins/importUserCode/addImportStatement.js +0 -27
  275. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/assertExtensions.d.ts +0 -5
  276. package/dist/esm/node/prerender/isPrerenderAutoRunEnabled.d.ts +0 -5
  277. package/dist/esm/node/prerender/isPrerenderAutoRunEnabled.js +0 -14
  278. package/dist/esm/node/shared/assertPluginManifest.d.ts +0 -12
  279. package/dist/esm/node/shared/assertPluginManifest.js +0 -18
  280. package/dist/esm/node/shared/assertRuntimeManifest.d.ts +0 -10
  281. package/dist/esm/node/shared/assertRuntimeManifest.js +0 -14
  282. package/dist/esm/shared/assertPageFilePath.d.ts +0 -2
  283. package/dist/esm/shared/assertPageFilePath.js +0 -9
  284. package/dist/esm/shared/getPageFiles/getPageFiles.d.ts +0 -15
  285. package/dist/esm/shared/getPageFiles/getPageFiles.js +0 -46
  286. package/dist/esm/utils/filesystemPathHandling.d.ts +0 -4
  287. package/dist/esm/utils/filesystemPathHandling.js +0 -16
  288. package/dist/esm/utils/path-shim.d.ts +0 -2
  289. package/dist/esm/utils/path-shim.js +0 -17
  290. /package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/{isRuntimeEnvMatch.js → virtual-files/isRuntimeEnvMatch.js} +0 -0
  291. /package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{getConfigFileExport.d.ts → getVikeConfig/getConfigFileExport.d.ts} +0 -0
  292. /package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{debug.d.ts → virtual-files/debug.d.ts} +0 -0
  293. /package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{getVirtualFilePageConfigValuesAll.d.ts → virtual-files/getVirtualFilePageConfigValuesAll.d.ts} +0 -0
  294. /package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{getVirtualFilePageConfigs.d.ts → virtual-files/getVirtualFilePageConfigs.d.ts} +0 -0
  295. /package/dist/esm/node/plugin/plugins/importUserCode/v1-design/{isRuntimeEnvMatch.js → virtual-files/isRuntimeEnvMatch.js} +0 -0
  296. /package/dist/esm/node/plugin/{resolveClientEntriesDev.d.ts → shared/resolveClientEntriesDev.d.ts} +0 -0
@@ -7,7 +7,6 @@ exports.fixServerAssets = fixServerAssets;
7
7
  exports.fixServerAssets_isEnabled = fixServerAssets_isEnabled;
8
8
  exports.fixServerAssets_assertCssCodeSplit = fixServerAssets_assertCssCodeSplit;
9
9
  exports.fixServerAssets_assertCssTarget = fixServerAssets_assertCssTarget;
10
- exports.fixServerAssets_assertCssTarget_populate = fixServerAssets_assertCssTarget_populate;
11
10
  const promises_1 = __importDefault(require("fs/promises"));
12
11
  const fs_1 = __importDefault(require("fs"));
13
12
  const path_1 = __importDefault(require("path"));
@@ -18,6 +17,8 @@ const buildConfig_js_1 = require("../buildConfig.js");
18
17
  const getAssetsDir_js_1 = require("../../shared/getAssetsDir.js");
19
18
  const picocolors_1 = __importDefault(require("@brillout/picocolors"));
20
19
  const getVikeConfig_js_1 = require("../importUserCode/v1-design/getVikeConfig.js");
20
+ const getOutDirs_js_1 = require("../../shared/getOutDirs.js");
21
+ const viteIsSSR_js_1 = require("../../shared/viteIsSSR.js");
21
22
  /**
22
23
  * true => use workaround config.build.ssrEmitAssets
23
24
  * false => use workaround extractAssets plugin
@@ -31,7 +32,7 @@ function fixServerAssets_isEnabled() {
31
32
  }
32
33
  /** https://github.com/vikejs/vike/issues/1339 */
33
34
  async function fixServerAssets(config) {
34
- const outDirs = (0, utils_js_1.getOutDirs)(config);
35
+ const outDirs = (0, getOutDirs_js_1.getOutDirs)(config);
35
36
  const clientManifest = await loadManifest(outDirs.outDirClient);
36
37
  const serverManifest = await loadManifest(outDirs.outDirServer);
37
38
  const { clientManifestMod, serverManifestMod, filesToCopy, filesToRemove } = addServerAssets(clientManifest, serverManifest);
@@ -47,7 +48,7 @@ async function loadManifest(outDir) {
47
48
  return manifest;
48
49
  }
49
50
  async function copyAssets(filesToCopy, filesToRemove, config) {
50
- const { outDirClient, outDirServer } = (0, utils_js_1.getOutDirs)(config);
51
+ const { outDirClient, outDirServer } = (0, getOutDirs_js_1.getOutDirs)(config);
51
52
  const assetsDir = (0, getAssetsDir_js_1.getAssetsDir)(config);
52
53
  const assetsDirServer = path_1.default.posix.join(outDirServer, assetsDir);
53
54
  if (!filesToCopy.length && !filesToRemove.length && !(0, fs_2.existsSync)(assetsDirServer))
@@ -198,17 +199,15 @@ function fixServerAssets_assertCssCodeSplit(config) {
198
199
  (0, utils_js_1.assertWarning)(config.build.cssCodeSplit, `${picocolors_1.default.cyan('build.cssCodeSplit')} shouldn't be set to ${picocolors_1.default.cyan('false')} (https://github.com/vikejs/vike/issues/1993)`, { onlyOnce: true });
199
200
  }
200
201
  const targets = [];
201
- function fixServerAssets_assertCssTarget_populate(config) {
202
- const isServerSide = (0, utils_js_1.viteIsSSR)(config);
203
- (0, utils_js_1.assert)(typeof isServerSide === 'boolean');
204
- (0, utils_js_1.assert)(config.build.target !== undefined);
205
- targets.push({ global: config.build.target, css: config.build.cssTarget, isServerSide });
206
- }
207
202
  async function fixServerAssets_assertCssTarget(config) {
208
203
  if (!fixServerAssets_isEnabled())
209
204
  return;
210
205
  if (!(await (0, getVikeConfig_js_1.isV1Design)(config)))
211
206
  return;
207
+ const isServerSide = (0, viteIsSSR_js_1.viteIsSSR)(config);
208
+ (0, utils_js_1.assert)(typeof isServerSide === 'boolean');
209
+ (0, utils_js_1.assert)(config.build.target !== undefined);
210
+ targets.push({ global: config.build.target, css: config.build.cssTarget, isServerSide });
212
211
  const targetsServer = targets.filter((t) => t.isServerSide);
213
212
  const targetsClient = targets.filter((t) => !t.isServerSide);
214
213
  targetsClient.forEach((targetClient) => {
@@ -216,9 +215,10 @@ async function fixServerAssets_assertCssTarget(config) {
216
215
  targetsServer.forEach((targetServer) => {
217
216
  const targetCssResolvedServer = resolveCssTarget(targetServer);
218
217
  (0, utils_js_1.assertWarning)((0, utils_js_1.isEqualStringList)(targetCssResolvedClient, targetCssResolvedServer), [
219
- 'The CSS browser target should be the same for both client-side and server-side (https://github.com/vikejs/vike/issues/1815#issuecomment-2507002979) but we got:',
220
- `Client-side: ${picocolors_1.default.cyan(JSON.stringify(targetCssResolvedClient))}`,
221
- `Server-side: ${picocolors_1.default.cyan(JSON.stringify(targetCssResolvedServer))}`
218
+ 'The CSS browser target should be the same for both client and server, but we got:',
219
+ `Client: ${picocolors_1.default.cyan(JSON.stringify(targetCssResolvedClient))}`,
220
+ `Server: ${picocolors_1.default.cyan(JSON.stringify(targetCssResolvedServer))}`,
221
+ `Different targets lead to CSS duplication, see ${picocolors_1.default.underline('https://github.com/vikejs/vike/issues/1815#issuecomment-2507002979')} for more information.`
222
222
  ].join('\n'), {
223
223
  showStackTrace: true,
224
224
  onlyOnce: 'different-css-target'
@@ -20,6 +20,8 @@ const index_js_1 = require("./buildEntry/index.js");
20
20
  const prependEntriesDir_js_1 = require("../../shared/prependEntriesDir.js");
21
21
  const getFilePath_js_1 = require("../shared/getFilePath.js");
22
22
  const getConfigValueBuildTime_js_1 = require("../../../shared/page-configs/getConfigValueBuildTime.js");
23
+ const getOutDirs_js_1 = require("../shared/getOutDirs.js");
24
+ const viteIsSSR_js_1 = require("../shared/viteIsSSR.js");
23
25
  // @ts-ignore Shimmed by dist-cjs-fixup.js for CJS build.
24
26
  const importMetaUrl = `file://${__filename}`;
25
27
  const require_ = (0, module_1.createRequire)(importMetaUrl);
@@ -27,7 +29,6 @@ const manifestTempFile = '_temp_manifest.json';
27
29
  exports.manifestTempFile = manifestTempFile;
28
30
  function buildConfig() {
29
31
  let isServerAssetsFixEnabled;
30
- let isSsrBuild;
31
32
  let outDirs;
32
33
  let config;
33
34
  return [
@@ -45,7 +46,7 @@ function buildConfig() {
45
46
  (0, utils_js_1.assert)(Object.keys(entries).length > 0);
46
47
  config.build.rollupOptions.input = (0, utils_js_1.injectRollupInputs)(entries, config);
47
48
  addLogHook();
48
- outDirs = (0, utils_js_1.getOutDirs)(config);
49
+ outDirs = (0, getOutDirs_js_1.getOutDirs)(config);
49
50
  {
50
51
  isServerAssetsFixEnabled = (0, fixServerAssets_js_1.fixServerAssets_isEnabled)() && (await (0, getVikeConfig_js_1.isV1Design)(config));
51
52
  if (isServerAssetsFixEnabled) {
@@ -53,7 +54,6 @@ function buildConfig() {
53
54
  config.build.ssrEmitAssets = true;
54
55
  // Required if `ssrEmitAssets: true`, see https://github.com/vitejs/vite/pull/11430#issuecomment-1454800934
55
56
  config.build.cssMinify = 'esbuild';
56
- (0, fixServerAssets_js_1.fixServerAssets_assertCssTarget_populate)(config);
57
57
  (0, fixServerAssets_js_1.fixServerAssets_assertCssCodeSplit)(config);
58
58
  }
59
59
  }
@@ -63,12 +63,14 @@ function buildConfig() {
63
63
  order: 'post',
64
64
  handler(config) {
65
65
  (0, utils_js_1.onSetupBuild)();
66
- isSsrBuild = (0, utils_js_1.viteIsSSR)(config);
67
66
  return {
68
67
  build: {
69
- outDir: (0, utils_js_1.resolveOutDir)(config),
68
+ outDir: (0, getOutDirs_js_1.resolveOutDir)(config),
70
69
  manifest: manifestTempFile,
71
- copyPublicDir: !isSsrBuild
70
+ copyPublicDir: config.vike.config.viteEnvironmentAPI
71
+ ? // Already set by buildApp() plugin
72
+ undefined
73
+ : !(0, viteIsSSR_js_1.viteIsSSR)(config)
72
74
  }
73
75
  };
74
76
  }
@@ -85,14 +87,14 @@ function buildConfig() {
85
87
  name: 'vike:buildConfig:pre',
86
88
  apply: 'build',
87
89
  // Make sure other writeBundle() hooks are called after this writeBundle() hook.
88
- // - set_ASSETS_MAP() needs to be called before dist/server/ code is executed.
90
+ // - set_ASSETS_MANIFEST() needs to be called before dist/server/ code is executed.
89
91
  // - For example, the writeBundle() hook of vite-plugin-vercel needs to be called after this writeBundle() hook, otherwise: https://github.com/vikejs/vike/issues/1527
90
92
  enforce: 'pre',
91
93
  writeBundle: {
92
94
  order: 'pre',
93
95
  sequential: true,
94
96
  async handler(options, bundle) {
95
- if (isSsrBuild) {
97
+ if ((0, viteIsSSR_js_1.viteIsSSR)(config)) {
96
98
  // Ideally we'd move dist/_temp_manifest.json to dist/server/client-assets.json instead of dist/assets.json
97
99
  // - But we can't because there is no guarentee whether dist/server/ is generated before or after dist/client/ (generating dist/server/ after dist/client/ erases dist/server/client-assets.json)
98
100
  // - We'll able to do so once we replace `$ vite build` with `$ vike build`
@@ -108,7 +110,7 @@ function buildConfig() {
108
110
  }
109
111
  await promises_1.default.rm(clientManifestFilePath);
110
112
  await promises_1.default.rm(serverManifestFilePath);
111
- await (0, index_js_1.set_ASSETS_MAP)(options, bundle);
113
+ await (0, index_js_1.set_ASSETS_MANIFEST)(options, bundle);
112
114
  }
113
115
  }
114
116
  }
@@ -118,9 +120,12 @@ function buildConfig() {
118
120
  async function getEntries(config) {
119
121
  const vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig)(config);
120
122
  const { pageConfigs } = vikeConfig;
121
- const pageFileEntries = await getPageFileEntries(config, vikeConfig.vikeConfigGlobal.includeAssetsImportedByServer); // TODO/v1-release: remove
123
+ // TODO/v1-release: remove
124
+ const pageFileEntries = await getPageFileEntries(config,
125
+ // TODO/now: add meta.default
126
+ vikeConfig.global.config.includeAssetsImportedByServer ?? true);
122
127
  (0, utils_js_1.assertUsage)(Object.keys(pageFileEntries).length !== 0 || pageConfigs.length !== 0, 'At least one page should be defined, see https://vike.dev/add');
123
- if ((0, utils_js_1.viteIsSSR)(config)) {
128
+ if ((0, viteIsSSR_js_1.viteIsSSR)(config)) {
124
129
  const pageEntries = getPageEntries(pageConfigs);
125
130
  const entries = {
126
131
  // buildEntry: resolve('dist/esm/node/buildEntry.js'), // TODO/next-major-release: remove
@@ -194,7 +199,7 @@ function analyzeClientEntries(pageConfigs, config) {
194
199
  // Ensure Rollup creates entries for each page file, see https://github.com/vikejs/vike/issues/350
195
200
  // (Otherwise the page files may be missing in the client manifest.json)
196
201
  async function getPageFileEntries(config, includeAssetsImportedByServer) {
197
- const isForClientSide = !(0, utils_js_1.viteIsSSR)(config);
202
+ const isForClientSide = !(0, viteIsSSR_js_1.viteIsSSR)(config);
198
203
  const fileTypes = isForClientSide ? ['.page', '.page.client'] : ['.page', '.page.server'];
199
204
  if (isForClientSide && includeAssetsImportedByServer) {
200
205
  fileTypes.push('.page.server');
@@ -4,11 +4,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.buildEntry = buildEntry;
7
- exports.set_ASSETS_MAP = set_ASSETS_MAP;
7
+ exports.set_ASSETS_MANIFEST = set_ASSETS_MANIFEST;
8
8
  const plugin_1 = require("@brillout/vite-plugin-server-entry/plugin");
9
9
  const virtualFileImportUserCode_js_1 = require("../../../shared/virtual-files/virtualFileImportUserCode.js");
10
- const getVikeManifest_js_1 = require("./getVikeManifest.js");
11
- const getVikeConfig_js_1 = require("../importUserCode/v1-design/getVikeConfig.js");
12
10
  const utils_js_1 = require("../../utils.js");
13
11
  const promises_1 = __importDefault(require("fs/promises"));
14
12
  const path_1 = __importDefault(require("path"));
@@ -16,69 +14,75 @@ const module_1 = require("module");
16
14
  // @ts-ignore Shimmed by dist-cjs-fixup.js for CJS build.
17
15
  const importMetaUrl = `file://${__filename}`;
18
16
  const require_ = (0, module_1.createRequire)(importMetaUrl);
19
- const ASSETS_MAP = '__VITE_ASSETS_MAP__';
17
+ const extractExportNamesPlugin_js_1 = require("../extractExportNamesPlugin.js");
18
+ const globalContext_js_1 = require("../../../runtime/globalContext.js");
19
+ const getOutDirs_js_1 = require("../../shared/getOutDirs.js");
20
+ const ASSETS_MANIFEST = '__VITE_ASSETS_MANIFEST__';
20
21
  function buildEntry() {
21
22
  let config;
22
- let vikeConfigGlobal;
23
23
  return [
24
24
  {
25
25
  name: 'vike:buildEntry',
26
26
  enforce: 'post',
27
27
  async configResolved(config_) {
28
28
  config = config_;
29
- const vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig)(config);
30
- vikeConfigGlobal = vikeConfig.vikeConfigGlobal;
31
29
  }
32
30
  },
33
31
  ...(0, plugin_1.serverProductionEntryPlugin)({
34
32
  getServerProductionEntry: () => {
35
- return getServerProductionEntryCode(config, vikeConfigGlobal);
33
+ return getServerProductionEntryCode(config);
36
34
  },
37
35
  libraryName: 'Vike'
38
36
  })
39
37
  ];
40
38
  }
41
- function getServerProductionEntryCode(config, vikeConfigGlobal) {
39
+ function getServerProductionEntryCode(config) {
42
40
  const importPath = getImportPath(config);
43
- const vikeManifest = (0, getVikeManifest_js_1.getVikeManifest)(vikeConfigGlobal, config);
44
- // Let's eventually simplify and move everything to a single virtual module
41
+ const buildInfo = {
42
+ versionAtBuildTime: utils_js_1.projectInfo.projectVersion,
43
+ usesClientRouter: (0, extractExportNamesPlugin_js_1.isUsingClientRouter)(), // TODO/v1-release: remove
44
+ viteConfigRuntime: (0, globalContext_js_1.getViteConfigRuntime)(config)
45
+ };
46
+ (0, globalContext_js_1.assertBuildInfo)(buildInfo);
47
+ // After the old design is removed, let's maybe simplify and move everything into a single virtual module
45
48
  const importerCode = [
46
49
  ` import { setGlobalContext_buildEntry } from '${importPath}';`,
47
- ` import * as pageFiles from '${virtualFileImportUserCode_js_1.virtualFileIdImportUserCodeServer}';`,
50
+ ` import * as virtualFileExports from '${virtualFileImportUserCode_js_1.virtualFileIdImportUserCodeServer}';`,
48
51
  ` {`,
49
- // We first set the values to a variable because of a Rollup bug, and this workaround doesn't work: https://github.com/vikejs/vike/commit/d5f3a4f7aae5a8bc44192e6cbb2bcb9007be188d
50
- ` const assetsManifest = ${ASSETS_MAP};`,
51
- ` const pluginManifest = ${JSON.stringify(vikeManifest, null, 2)};`,
52
+ // Because of a Rollup bug, we have to assign ASSETS_MANIFEST to a variable before passing it to setGlobalContext_buildEntry()
53
+ // - This workaround doesn't work: https://github.com/vikejs/vike/commit/d5f3a4f7aae5a8bc44192e6cbb2bcb9007be188d
54
+ ` const assetsManifest = ${ASSETS_MANIFEST};`,
55
+ ` const buildInfo = ${JSON.stringify(buildInfo, null, 2)};`,
52
56
  ' setGlobalContext_buildEntry({',
53
- ` pageFiles,`,
57
+ ` virtualFileExports,`,
54
58
  ` assetsManifest,`,
55
- ` pluginManifest,`,
59
+ ` buildInfo,`,
56
60
  ' });',
57
61
  ` }`,
58
62
  ''
59
63
  ].join('\n');
60
64
  return importerCode;
61
65
  }
62
- /** Set the value of the ASSETS_MAP constant inside dist/server/entry.js (or dist/server/index.js) */
63
- async function set_ASSETS_MAP(options, bundle) {
66
+ /** Set the value of the ASSETS_MANIFEST constant inside dist/server/entry.js (or dist/server/index.js) */
67
+ async function set_ASSETS_MANIFEST(options, bundle) {
64
68
  const { dir } = options;
65
69
  (0, utils_js_1.assert)(dir);
66
- const chunkPath = find_ASSETS_MAP(bundle);
70
+ const chunkPath = find_ASSETS_MANIFEST(bundle);
67
71
  const chunkFilePath = path_1.default.join(dir, chunkPath);
68
72
  const assetsJsonFilePath = path_1.default.join(dir, '..', 'assets.json');
69
73
  const [assetsJsonString, chunkFileContent] = await Promise.all([
70
74
  await promises_1.default.readFile(assetsJsonFilePath, 'utf8'),
71
75
  await promises_1.default.readFile(chunkFilePath, 'utf8')
72
76
  ]);
73
- const serverEntryFileContentPatched = chunkFileContent.replace(ASSETS_MAP, assetsJsonString);
77
+ const serverEntryFileContentPatched = chunkFileContent.replace(ASSETS_MANIFEST, assetsJsonString);
74
78
  (0, utils_js_1.assert)(serverEntryFileContentPatched !== chunkFileContent);
75
79
  await promises_1.default.writeFile(chunkFilePath, serverEntryFileContentPatched);
76
80
  }
77
- function find_ASSETS_MAP(bundle) {
81
+ function find_ASSETS_MANIFEST(bundle) {
78
82
  let chunkPath;
79
83
  for (const filePath in bundle) {
80
84
  const chunk = bundle[filePath];
81
- if ('code' in chunk && chunk.code.includes(ASSETS_MAP)) {
85
+ if ('code' in chunk && chunk.code.includes(ASSETS_MANIFEST)) {
82
86
  (0, utils_js_1.assert)(!chunkPath);
83
87
  chunkPath = filePath;
84
88
  }
@@ -97,7 +101,7 @@ function getImportPath(config) {
97
101
  return 'vike/__internal';
98
102
  }
99
103
  else {
100
- const { outDirServer } = (0, utils_js_1.getOutDirs)(config);
104
+ const { outDirServer } = (0, getOutDirs_js_1.getOutDirs)(config);
101
105
  const filePathRelative = path_1.default.posix.relative(outDirServer, filePathAbsolute);
102
106
  return filePathRelative;
103
107
  }
@@ -16,7 +16,7 @@ const isViteCliCall_js_1 = require("../shared/isViteCliCall.js");
16
16
  const context_js_1 = require("../../api/context.js");
17
17
  const getVikeConfig_js_1 = require("./importUserCode/v1-design/getVikeConfig.js");
18
18
  const prepareViteApiCall_js_1 = require("../../api/prepareViteApiCall.js");
19
- const isPrerenderAutoRunEnabled_js_1 = require("../../prerender/isPrerenderAutoRunEnabled.js");
19
+ const context_js_2 = require("../../prerender/context.js");
20
20
  const pluginName = 'vike:commonConfig';
21
21
  function commonConfig(vikeVitePluginOptions) {
22
22
  return [
@@ -35,9 +35,11 @@ function commonConfig(vikeVitePluginOptions) {
35
35
  _isDev: isDev,
36
36
  _root: root,
37
37
  _vikeVitePluginOptions: vikeVitePluginOptions,
38
- vike: vikeConfig,
39
- // TODO/v1-release: remove
40
- configVikePromise: Promise.resolve(vikeConfig.vikeConfigGlobal)
38
+ vike: { config: vikeConfig.global.config },
39
+ // TODO/v1-release: remove https://github.com/vikejs/vike/issues/2122
40
+ configVikePromise: Promise.resolve({
41
+ prerender: (0, context_js_2.isPrerenderEnabled)(vikeConfig)
42
+ })
41
43
  };
42
44
  }
43
45
  }
@@ -147,7 +149,7 @@ function assertVikeCliOrApi(config) {
147
149
  onlyOnce: true
148
150
  });
149
151
  }
150
- // TODO/v1-release: remove
152
+ // TODO/v1-release: remove https://github.com/vikejs/vike/issues/2122
151
153
  function temp_supportOldInterface(config) {
152
154
  if (!('vitePluginSsr' in config))
153
155
  return;
@@ -155,14 +157,14 @@ function temp_supportOldInterface(config) {
155
157
  if ((0, utils_js_1.hasProp)(config.vitePluginSsr, 'prerender', 'object')) {
156
158
  (0, utils_js_1.assert)((0, utils_js_1.hasProp)(config.vitePluginSsr.prerender, 'disableAutoRun', 'boolean'));
157
159
  if (config.vitePluginSsr.prerender.disableAutoRun) {
158
- (0, isPrerenderAutoRunEnabled_js_1.temp_disablePrerenderAutoRun)();
160
+ (0, context_js_2.temp_disablePrerenderAutoRun)();
159
161
  }
160
162
  return;
161
163
  }
162
164
  if ((0, utils_js_1.hasProp)(config.vitePluginSsr, 'disableAutoFullBuild')) {
163
165
  if (config.vitePluginSsr.disableAutoFullBuild) {
164
166
  (0, utils_js_1.assert)(config.vitePluginSsr.disableAutoFullBuild === 'prerender');
165
- (0, isPrerenderAutoRunEnabled_js_1.temp_disablePrerenderAutoRun)();
167
+ (0, context_js_2.temp_disablePrerenderAutoRun)();
166
168
  }
167
169
  return;
168
170
  }
@@ -18,6 +18,7 @@ const fixServerAssets_js_1 = require("./buildConfig/fixServerAssets.js");
18
18
  const getVikeConfig_js_1 = require("./importUserCode/v1-design/getVikeConfig.js");
19
19
  const assertV1Design_js_1 = require("../../shared/assertV1Design.js");
20
20
  const normalizeId_js_1 = require("../shared/normalizeId.js");
21
+ const viteIsSSR_js_1 = require("../shared/viteIsSSR.js");
21
22
  const extractAssetsRE = /(\?|&)extractAssets(?:&|$)/;
22
23
  exports.extractAssetsRE = extractAssetsRE;
23
24
  const rawRE = /(\?|&)raw(?:&|$)/;
@@ -45,8 +46,9 @@ function extractAssetsPlugin() {
45
46
  (0, assertV1Design_js_1.assertV1Design)(vikeConfig.pageConfigs, true);
46
47
  (0, utils_js_1.assert)(false);
47
48
  }
48
- (0, utils_js_1.assert)(vikeConfig.vikeConfigGlobal.includeAssetsImportedByServer);
49
- (0, utils_js_1.assert)(!(0, utils_js_1.viteIsSSR_options)(options));
49
+ // TODO/now: add meta.default
50
+ (0, utils_js_1.assert)(vikeConfig.global.config.includeAssetsImportedByServer ?? true);
51
+ (0, utils_js_1.assert)(!(0, viteIsSSR_js_1.viteIsSSR_options)(options));
50
52
  const importStatements = await (0, parseEsModule_js_1.getImportStatements)(src);
51
53
  const moduleNames = getImportedModules(importStatements);
52
54
  const code = moduleNames.map((moduleName) => `import '${moduleName}';`).join('\n');
@@ -63,7 +65,7 @@ function extractAssetsPlugin() {
63
65
  // - Vite's `vite:resolve` plugin; https://github.com/vitejs/vite/blob/d649daba7682791178b711d9a3e44a6b5d00990c/packages/vite/src/node/plugins/resolve.ts#L105
64
66
  enforce: 'pre',
65
67
  async resolveId(source, importer, options) {
66
- if ((0, utils_js_1.viteIsSSR_options)(options)) {
68
+ if ((0, viteIsSSR_js_1.viteIsSSR_options)(options)) {
67
69
  // When building for the server, there should never be a `?extractAssets` query
68
70
  (0, utils_js_1.assert)(!extractAssetsRE.test(source));
69
71
  (0, utils_js_1.assert)(importer === undefined || !extractAssetsRE.test(importer));
@@ -78,7 +80,8 @@ function extractAssetsPlugin() {
78
80
  if (!extractAssetsRE.test(importer)) {
79
81
  return;
80
82
  }
81
- (0, utils_js_1.assert)(vikeConfig.vikeConfigGlobal.includeAssetsImportedByServer);
83
+ // TODO/now: add meta.default
84
+ (0, utils_js_1.assert)(vikeConfig.global.config.includeAssetsImportedByServer ?? true);
82
85
  let resolution = null;
83
86
  try {
84
87
  resolution = await this.resolve(source, importer, { skipSelf: true, ...options });
@@ -7,6 +7,7 @@ const utils_js_1 = require("../utils.js");
7
7
  const parseEsModule_js_1 = require("../shared/parseEsModule.js");
8
8
  const rollupSourceMap_js_1 = require("../shared/rollupSourceMap.js");
9
9
  const normalizeId_js_1 = require("../shared/normalizeId.js");
10
+ const viteIsSSR_js_1 = require("../shared/viteIsSSR.js");
10
11
  const extractExportNamesRE = /(\?|&)extractExportNames(?:&|$)/;
11
12
  exports.extractExportNamesRE = extractExportNamesRE;
12
13
  const debug = (0, utils_js_1.createDebugger)('vike:extractExportNames');
@@ -18,7 +19,7 @@ function extractExportNamesPlugin() {
18
19
  enforce: 'post',
19
20
  async transform(src, id, options) {
20
21
  id = (0, normalizeId_js_1.normalizeId)(id);
21
- const isClientSide = !(0, utils_js_1.viteIsSSR_options)(options);
22
+ const isClientSide = !(0, viteIsSSR_js_1.viteIsSSR_options)(options);
22
23
  if (extractExportNamesRE.test(id)) {
23
24
  const code = await getExtractExportNamesCode(src, isClientSide, !isDev, id);
24
25
  debug('id ' + id, ['result:\n' + code.code.trim(), 'src:\n' + src.trim()]);
@@ -9,18 +9,19 @@ const virtualFileImportUserCode_js_1 = require("../../../shared/virtual-files/vi
9
9
  const vite_1 = require("vite");
10
10
  const fileTypes_js_1 = require("../../../../shared/getPageFiles/fileTypes.js");
11
11
  const path_1 = __importDefault(require("path"));
12
- const getVirtualFilePageConfigs_js_1 = require("./v1-design/getVirtualFilePageConfigs.js");
12
+ const getVirtualFilePageConfigs_js_1 = require("./v1-design/virtual-files/getVirtualFilePageConfigs.js");
13
13
  const getVikeConfig_js_1 = require("./v1-design/getVikeConfig.js");
14
- async function getVirtualFileImportUserCode(id, options, vikeConfigGlobal, config, isDev) {
14
+ const getOutDirs_js_1 = require("../../shared/getOutDirs.js");
15
+ const viteIsSSR_js_1 = require("../../shared/viteIsSSR.js");
16
+ async function getVirtualFileImportUserCode(id, options, vikeConfig, config, isDev) {
15
17
  const idParsed = (0, virtualFileImportUserCode_js_1.isVirtualFileIdImportUserCode)(id);
16
18
  (0, utils_js_1.assert)(idParsed);
17
19
  const { isForClientSide, isClientRouting } = idParsed;
18
- (0, utils_js_1.assert)(isForClientSide === !(0, utils_js_1.viteIsSSR_options)(options));
19
- const isPrerendering = !!vikeConfigGlobal.prerender;
20
- const code = await getCode(config, vikeConfigGlobal, isForClientSide, isClientRouting, isPrerendering, isDev, id);
20
+ (0, utils_js_1.assert)(isForClientSide === !(0, viteIsSSR_js_1.viteIsSSR_options)(options));
21
+ const code = await getCode(config, vikeConfig, isForClientSide, isClientRouting, isDev, id);
21
22
  return code;
22
23
  }
23
- async function getCode(config, vikeConfigGlobal, isForClientSide, isClientRouting, isPrerendering, isDev, id) {
24
+ async function getCode(config, vikeConfig, isForClientSide, isClientRouting, isDev, id) {
24
25
  const { command } = config;
25
26
  (0, utils_js_1.assert)(command === 'serve' || command === 'build');
26
27
  const isBuild = command === 'build';
@@ -29,7 +30,7 @@ async function getCode(config, vikeConfigGlobal, isForClientSide, isClientRoutin
29
30
  {
30
31
  const globRoots = getGlobRoots(config);
31
32
  (0, utils_js_1.debugGlob)('Glob roots: ', globRoots);
32
- content += await generateGlobImports(globRoots, isBuild, isForClientSide, isClientRouting, vikeConfigGlobal, isPrerendering, config, isDev, id);
33
+ content += await generateGlobImports(globRoots, isBuild, isForClientSide, isClientRouting, vikeConfig, config, isDev, id);
33
34
  }
34
35
  (0, utils_js_1.debugGlob)(`Glob imports for ${isForClientSide ? 'client' : 'server'}:\n`, content);
35
36
  return content;
@@ -59,7 +60,7 @@ function determineInjection({ fileType, isForClientSide, isClientRouting, isPrer
59
60
  }
60
61
  }
61
62
  }
62
- async function generateGlobImports(globRoots, isBuild, isForClientSide, isClientRouting, vikeConfigGlobal, isPrerendering, config, isDev, id) {
63
+ async function generateGlobImports(globRoots, isBuild, isForClientSide, isClientRouting, vikeConfig, config, isDev, id) {
63
64
  let fileContent = `// Generated by https://github.com/vikejs/vike/blob/main/vike/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.ts
64
65
 
65
66
  export const pageFilesLazy = {};
@@ -74,6 +75,8 @@ ${await (0, getVirtualFilePageConfigs_js_1.getVirtualFilePageConfigs)(isForClien
74
75
  `;
75
76
  // We still use import.meta.glob() when using th V1 design in order to not break the V1 design deprecation warning
76
77
  const isV1Design = await (0, getVikeConfig_js_1.isV1Design)(config);
78
+ // Old design => no + files => only to enable pre-rendering is setting `vike({prerender})` in vite.config.js
79
+ const isPrerendering = !!vikeConfig.global.config.prerender;
77
80
  fileTypes_js_1.fileTypes
78
81
  .filter((fileType) => fileType !== '.css')
79
82
  .forEach((fileType) => {
@@ -91,7 +94,9 @@ ${await (0, getVirtualFilePageConfigs_js_1.getVirtualFilePageConfigs)(isForClien
91
94
  fileContent += getGlobs(globRoots, isBuild, fileType, 'extractExportNames', isV1Design);
92
95
  }
93
96
  });
94
- if (vikeConfigGlobal.includeAssetsImportedByServer && isForClientSide) {
97
+ // TODO/now: add meta.default
98
+ const includeAssetsImportedByServer = vikeConfig.global.config.includeAssetsImportedByServer ?? true;
99
+ if (includeAssetsImportedByServer && isForClientSide) {
95
100
  fileContent += getGlobs(globRoots, isBuild, '.page.server', 'extractAssets', isV1Design);
96
101
  }
97
102
  return fileContent;
@@ -167,7 +172,7 @@ function getGlobRoots(config) {
167
172
  const globRoots = [
168
173
  {
169
174
  includeDir: '/',
170
- excludeDir: path_1.default.posix.relative(config.root, (0, utils_js_1.getOutDirs)(config).outDirRoot)
175
+ excludeDir: path_1.default.posix.relative(config.root, (0, getOutDirs_js_1.getOutDirs)(config).outDirRoot)
171
176
  }
172
177
  ];
173
178
  return globRoots;
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.importUserCode = importUserCode;
7
7
  const vite_1 = require("vite");
8
- const getVirtualFilePageConfigValuesAll_js_1 = require("./v1-design/getVirtualFilePageConfigValuesAll.js");
8
+ const getVirtualFilePageConfigValuesAll_js_1 = require("./v1-design/virtual-files/getVirtualFilePageConfigValuesAll.js");
9
9
  const getVirtualFileImportUserCode_js_1 = require("./getVirtualFileImportUserCode.js");
10
10
  const utils_js_1 = require("../../utils.js");
11
11
  const virtual_files_js_1 = require("../../../shared/virtual-files.js");
@@ -15,14 +15,15 @@ const getVikeConfig_js_1 = require("./v1-design/getVikeConfig.js");
15
15
  const picocolors_1 = __importDefault(require("@brillout/picocolors"));
16
16
  const loggerNotProd_js_1 = require("../../shared/loggerNotProd.js");
17
17
  const getFilePath_js_1 = require("../../shared/getFilePath.js");
18
+ const getPlusFilesAll_js_1 = require("./v1-design/getVikeConfig/getPlusFilesAll.js");
19
+ const globalContext_js_1 = require("../../../runtime/globalContext.js");
18
20
  function importUserCode() {
19
21
  let config;
20
- let vikeConfigGlobal;
22
+ let vikeConfig;
21
23
  return {
22
24
  name: 'vike:importUserCode',
23
25
  async configResolved(config_) {
24
- const vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig)(config_);
25
- vikeConfigGlobal = vikeConfig.vikeConfigGlobal;
26
+ vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig)(config_);
26
27
  config = config_;
27
28
  // TODO/v1-release: remove
28
29
  {
@@ -57,7 +58,7 @@ function importUserCode() {
57
58
  return code;
58
59
  }
59
60
  if ((0, virtualFileImportUserCode_js_1.isVirtualFileIdImportUserCode)(id)) {
60
- const code = await (0, getVirtualFileImportUserCode_js_1.getVirtualFileImportUserCode)(id, options, vikeConfigGlobal, config, isDev);
61
+ const code = await (0, getVirtualFileImportUserCode_js_1.getVirtualFileImportUserCode)(id, options, vikeConfig, config, isDev);
61
62
  return code;
62
63
  }
63
64
  },
@@ -72,7 +73,7 @@ function handleFileAddRemove(server, config) {
72
73
  return;
73
74
  function listener(file, isRemove) {
74
75
  file = (0, vite_1.normalizePath)(file);
75
- const isVikeConfig = isVikeConfigModule(file) || (0, getVikeConfig_js_1.isVikeConfigFile)(file);
76
+ const isVikeConfig = isVikeConfigModule(file) || isVikeConfigFile(file);
76
77
  if (isVikeConfig) {
77
78
  const virtualModules = getVirtualModules(server);
78
79
  virtualModules.forEach((mod) => {
@@ -124,6 +125,7 @@ function reloadConfig(filePath, config, op) {
124
125
  (0, loggerNotProd_js_1.logConfigInfo)(msg, 'info');
125
126
  }
126
127
  (0, getVikeConfig_js_1.reloadVikeConfig)(config);
128
+ (0, globalContext_js_1.updateUserFiles)();
127
129
  }
128
130
  function getVirtualModules(server) {
129
131
  const virtualModules = Array.from(server.moduleGraph.urlToModuleMap.keys())
@@ -135,3 +137,6 @@ function getVirtualModules(server) {
135
137
  });
136
138
  return virtualModules;
137
139
  }
140
+ function isVikeConfigFile(filePath) {
141
+ return !!(0, getPlusFilesAll_js_1.getPlusFileValueConfigName)(filePath);
142
+ }