vike 0.4.220 → 0.4.221-commit-8577456

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
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.debug = void 0;
4
- const utils_js_1 = require("../../../utils.js");
4
+ const utils_js_1 = require("../../../../utils.js");
5
5
  exports.debug = (0, utils_js_1.createDebugger)('vike:virtual-files');
@@ -1,15 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getVirtualFilePageConfigValuesAll = getVirtualFilePageConfigValuesAll;
4
- const utils_js_1 = require("../../../utils.js");
5
- const virtualFilePageConfigValuesAll_js_1 = require("../../../../shared/virtual-files/virtualFilePageConfigValuesAll.js");
6
- const getVikeConfig_js_1 = require("./getVikeConfig.js");
7
- const extractAssetsQuery_js_1 = require("../../../../shared/extractAssetsQuery.js");
4
+ const utils_js_1 = require("../../../../utils.js");
5
+ const virtualFilePageConfigValuesAll_js_1 = require("../../../../../shared/virtual-files/virtualFilePageConfigValuesAll.js");
6
+ const getVikeConfig_js_1 = require("../getVikeConfig.js");
7
+ const extractAssetsQuery_js_1 = require("../../../../../shared/extractAssetsQuery.js");
8
8
  const debug_js_1 = require("./debug.js");
9
9
  const isRuntimeEnvMatch_js_1 = require("./isRuntimeEnvMatch.js");
10
- const serializeConfigValues_js_1 = require("../../../../../shared/page-configs/serialize/serializeConfigValues.js");
11
- const fixServerAssets_js_1 = require("../../buildConfig/fixServerAssets.js");
12
- const getConfigValueBuildTime_js_1 = require("../../../../../shared/page-configs/getConfigValueBuildTime.js");
10
+ const serializeConfigValues_js_1 = require("../../../../../../shared/page-configs/serialize/serializeConfigValues.js");
11
+ const fixServerAssets_js_1 = require("../../../buildConfig/fixServerAssets.js");
12
+ const getConfigValueBuildTime_js_1 = require("../../../../../../shared/page-configs/getConfigValueBuildTime.js");
13
13
  async function getVirtualFilePageConfigValuesAll(id, isDev, config) {
14
14
  const result = (0, virtualFilePageConfigValuesAll_js_1.isVirtualFileIdPageConfigValuesAll)(id);
15
15
  (0, utils_js_1.assert)(result);
@@ -24,16 +24,19 @@ async function getVirtualFilePageConfigValuesAll(id, isDev, config) {
24
24
  const { pageConfigs } = vikeConfig;
25
25
  const pageConfig = pageConfigs.find((pageConfig) => pageConfig.pageId === pageId);
26
26
  (0, utils_js_1.assert)(pageConfig, { id, pageId });
27
- const code = getLoadConfigValuesAll(pageConfig, isForClientSide, pageId, vikeConfig.vikeConfigGlobal.includeAssetsImportedByServer, isDev);
27
+ const code = getLoadConfigValuesAll(pageConfig, isForClientSide, pageId,
28
+ // TODO/now: add meta.default
29
+ vikeConfig.global.config.includeAssetsImportedByServer ?? true, isDev);
28
30
  (0, debug_js_1.debug)(id, isForClientSide ? 'CLIENT-SIDE' : 'SERVER-SIDE', code);
29
31
  return code;
30
32
  }
31
33
  function getLoadConfigValuesAll(pageConfig, isForClientSide, pageId, includeAssetsImportedByServer, isDev) {
32
34
  const lines = [];
33
35
  const importStatements = [];
36
+ const filesEnv = new Map();
34
37
  const isClientRouting = (0, getConfigValueBuildTime_js_1.getConfigValueBuildTime)(pageConfig, 'clientRouting', 'boolean')?.value ?? false;
35
38
  lines.push('export const configValuesSerialized = {');
36
- lines.push(...(0, serializeConfigValues_js_1.serializeConfigValues)(pageConfig, importStatements, (configEnv) => (0, isRuntimeEnvMatch_js_1.isRuntimeEnvMatch)(configEnv, { isForClientSide, isClientRouting, isDev }), '', false));
39
+ lines.push(...(0, serializeConfigValues_js_1.serializeConfigValues)(pageConfig, importStatements, filesEnv, (configEnv) => (0, isRuntimeEnvMatch_js_1.isRuntimeEnvMatch)(configEnv, { isForClientSide, isClientRouting, isDev }), '', false));
37
40
  lines.push('};');
38
41
  if (!(0, fixServerAssets_js_1.fixServerAssets_isEnabled)() && includeAssetsImportedByServer && isForClientSide && !isDev) {
39
42
  importStatements.push(`import '${(0, extractAssetsQuery_js_1.extractAssetsAddQuery)((0, virtualFilePageConfigValuesAll_js_1.getVirtualFileIdPageConfigValuesAll)(pageId, false))}'`);
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getVirtualFilePageConfigs = getVirtualFilePageConfigs;
4
- const virtualFilePageConfigValuesAll_js_1 = require("../../../../shared/virtual-files/virtualFilePageConfigValuesAll.js");
4
+ const virtualFilePageConfigValuesAll_js_1 = require("../../../../../shared/virtual-files/virtualFilePageConfigValuesAll.js");
5
5
  const debug_js_1 = require("./debug.js");
6
- const getVikeConfig_js_1 = require("./getVikeConfig.js");
6
+ const getVikeConfig_js_1 = require("../getVikeConfig.js");
7
7
  const isRuntimeEnvMatch_js_1 = require("./isRuntimeEnvMatch.js");
8
- const serializeConfigValues_js_1 = require("../../../../../shared/page-configs/serialize/serializeConfigValues.js");
8
+ const serializeConfigValues_js_1 = require("../../../../../../shared/page-configs/serialize/serializeConfigValues.js");
9
9
  async function getVirtualFilePageConfigs(isForClientSide, isDev, id, isClientRouting, config) {
10
10
  const vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig)(config, { doNotRestartViteOnError: true });
11
11
  const { pageConfigs, pageConfigGlobal } = vikeConfig;
@@ -14,38 +14,40 @@ async function getVirtualFilePageConfigs(isForClientSide, isDev, id, isClientRou
14
14
  function getCode(pageConfigs, pageConfigGlobal, isForClientSide, isDev, id, isClientRouting) {
15
15
  const lines = [];
16
16
  const importStatements = [];
17
+ const filesEnv = new Map();
17
18
  lines.push('export const pageConfigsSerialized = [');
18
- lines.push(getCodePageConfigsSerialized(pageConfigs, isForClientSide, isClientRouting, isDev, importStatements));
19
+ lines.push(getCodePageConfigsSerialized(pageConfigs, isForClientSide, isClientRouting, isDev, importStatements, filesEnv));
19
20
  lines.push('];');
20
21
  lines.push('export const pageConfigGlobalSerialized = {');
21
- lines.push(getCodePageConfigGlobalSerialized(pageConfigGlobal, isForClientSide, isClientRouting, isDev, importStatements));
22
+ lines.push(getCodePageConfigGlobalSerialized(pageConfigGlobal, isForClientSide, isClientRouting, isDev, importStatements, filesEnv));
22
23
  lines.push('};');
23
24
  const code = [...importStatements, ...lines].join('\n');
24
25
  (0, debug_js_1.debug)(id, isForClientSide ? 'CLIENT-SIDE' : 'SERVER-SIDE', code);
25
26
  return code;
26
27
  }
27
- function getCodePageConfigsSerialized(pageConfigs, isForClientSide, isClientRouting, isDev, importStatements) {
28
+ function getCodePageConfigsSerialized(pageConfigs, isForClientSide, isClientRouting, isDev, importStatements, filesEnv) {
28
29
  const lines = [];
29
30
  pageConfigs.forEach((pageConfig) => {
30
31
  const { pageId, routeFilesystem, isErrorPage } = pageConfig;
31
- const virtualFileIdPageConfigValuesAll = (0, virtualFilePageConfigValuesAll_js_1.getVirtualFileIdPageConfigValuesAll)(pageId, isForClientSide);
32
32
  lines.push(` {`);
33
33
  lines.push(` pageId: ${JSON.stringify(pageId)},`);
34
34
  lines.push(` isErrorPage: ${JSON.stringify(isErrorPage)},`);
35
35
  lines.push(` routeFilesystem: ${JSON.stringify(routeFilesystem)},`);
36
- lines.push(` loadConfigValuesAll: () => import(${JSON.stringify(virtualFileIdPageConfigValuesAll)}),`);
36
+ const virtualFileId = JSON.stringify((0, virtualFilePageConfigValuesAll_js_1.getVirtualFileIdPageConfigValuesAll)(pageId, isForClientSide));
37
+ const load = `() => ({ moduleId: ${virtualFileId}, moduleExports: import(${virtualFileId}) })`;
38
+ lines.push(` loadConfigValuesAll: ${load},`);
37
39
  lines.push(` configValuesSerialized: {`);
38
- lines.push(...(0, serializeConfigValues_js_1.serializeConfigValues)(pageConfig, importStatements, (configEnv) => (0, isRuntimeEnvMatch_js_1.isRuntimeEnvMatch)(configEnv, { isForClientSide, isClientRouting, isDev }), ' ', true));
40
+ lines.push(...(0, serializeConfigValues_js_1.serializeConfigValues)(pageConfig, importStatements, filesEnv, (configEnv) => (0, isRuntimeEnvMatch_js_1.isRuntimeEnvMatch)(configEnv, { isForClientSide, isClientRouting, isDev }), ' ', true));
39
41
  lines.push(` },`);
40
42
  lines.push(` },`);
41
43
  });
42
44
  const code = lines.join('\n');
43
45
  return code;
44
46
  }
45
- function getCodePageConfigGlobalSerialized(pageConfigGlobal, isForClientSide, isClientRouting, isDev, importStatements) {
47
+ function getCodePageConfigGlobalSerialized(pageConfigGlobal, isForClientSide, isClientRouting, isDev, importStatements, filesEnv) {
46
48
  const lines = [];
47
49
  lines.push(` configValuesSerialized: {`);
48
- lines.push(...(0, serializeConfigValues_js_1.serializeConfigValues)(pageConfigGlobal, importStatements, (configEnv) => (0, isRuntimeEnvMatch_js_1.isRuntimeEnvMatch)(configEnv, { isForClientSide, isClientRouting, isDev }), ' ', null));
50
+ lines.push(...(0, serializeConfigValues_js_1.serializeConfigValues)(pageConfigGlobal, importStatements, filesEnv, (configEnv) => (0, isRuntimeEnvMatch_js_1.isRuntimeEnvMatch)(configEnv, { isForClientSide, isClientRouting, isDev }), ' ', null));
49
51
  lines.push(` },`);
50
52
  const code = lines.join('\n');
51
53
  return code;
@@ -10,7 +10,7 @@
10
10
  Object.defineProperty(exports, "__esModule", { value: true });
11
11
  exports.packageJsonFile = packageJsonFile;
12
12
  const rollupIsEsm_js_1 = require("../shared/rollupIsEsm.js");
13
- const utils_js_1 = require("../utils.js");
13
+ const viteIsSSR_js_1 = require("../shared/viteIsSSR.js");
14
14
  function packageJsonFile() {
15
15
  let config;
16
16
  return {
@@ -20,7 +20,7 @@ function packageJsonFile() {
20
20
  config = config_;
21
21
  },
22
22
  generateBundle(options, bundle) {
23
- if (!(0, utils_js_1.viteIsSSR)(config))
23
+ if (!(0, viteIsSSR_js_1.viteIsSSR)(config))
24
24
  return;
25
25
  const isEsm = (0, rollupIsEsm_js_1.rollupIsEsm)(options);
26
26
  const fileName = 'package.json';
@@ -10,9 +10,10 @@ const path_1 = __importDefault(require("path"));
10
10
  const addSsrMiddleware_js_1 = require("../shared/addSsrMiddleware.js");
11
11
  const picocolors_1 = __importDefault(require("@brillout/picocolors"));
12
12
  const index_js_1 = require("./devConfig/index.js");
13
+ const getOutDirs_js_1 = require("../shared/getOutDirs.js");
13
14
  function previewConfig() {
14
15
  let config;
15
- // let vikeConfigGlobal: VikeConfigGlobal
16
+ // let vikeConfig: VikeConfigObject
16
17
  return {
17
18
  name: 'vike:previewConfig',
18
19
  apply: utils_js_1.applyPreview,
@@ -20,15 +21,14 @@ function previewConfig() {
20
21
  return {
21
22
  appType: 'custom',
22
23
  build: {
23
- outDir: (0, utils_js_1.resolveOutDir)(config)
24
+ outDir: (0, getOutDirs_js_1.resolveOutDir)(config)
24
25
  }
25
26
  };
26
27
  },
27
28
  async configResolved(config_) {
28
29
  config = config_;
29
30
  (0, index_js_1.logDockerHint)(config.preview.host);
30
- // const vikeConfig = await getVikeConfig(config)
31
- // vikeConfigGlobal = vikeConfig.vikeConfigGlobal
31
+ // vikeConfig = await getVikeConfig(config)
32
32
  },
33
33
  configurePreviewServer(server) {
34
34
  /* - Couldn't make `appType: 'mpa'` work as of npm:@brillout/vite@5.0.0-beta.14.0426910c
@@ -38,7 +38,7 @@ function previewConfig() {
38
38
  return () => {
39
39
  assertDist();
40
40
  /* We don't use this condition (we wrongfully always use the SSR middleware) because of the regression introduced by https://github.com/vitejs/vite/pull/14756 which stops servering .html files when `appType: 'custom'`.
41
- if (!vikeConfigGlobal.prerender || vikeConfigGlobal.prerender.partial) {
41
+ if (!vikeConfig.global.config.prerender || vikeConfig.global.config.prerender.partial) {
42
42
  addSsrMiddleware(server.middlewares, config, true)
43
43
  }
44
44
  /*/
@@ -49,13 +49,13 @@ function previewConfig() {
49
49
  }
50
50
  };
51
51
  function assertDist() {
52
- let { outDirRoot, outDirClient, outDirServer } = (0, utils_js_1.getOutDirs)(config);
52
+ let { outDirRoot, outDirClient, outDirServer } = (0, getOutDirs_js_1.getOutDirs)(config);
53
53
  [outDirRoot, outDirClient, outDirServer].forEach((outDirAny) => {
54
54
  (0, utils_js_1.assertUsage)(fs_1.default.existsSync(outDirAny), `Cannot run ${picocolors_1.default.cyan('$ vike preview')}: your app isn't built (the build directory ${picocolors_1.default.cyan(outDirAny)} is missing). Make sure to run ${picocolors_1.default.cyan('$ vike build')} before running ${picocolors_1.default.cyan('$ vike preview')}.`);
55
55
  });
56
56
  }
57
57
  function addStatic404Middleware(middlewares) {
58
- const { outDirClient } = (0, utils_js_1.getOutDirs)(config);
58
+ const { outDirClient } = (0, getOutDirs_js_1.getOutDirs)(config);
59
59
  middlewares.use(config.base, (_, res, next) => {
60
60
  const file = path_1.default.posix.join(outDirClient, './404.html');
61
61
  if (fs_1.default.existsSync(file)) {
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.setGlobalContext = setGlobalContext;
4
4
  const globalContext_js_1 = require("../../runtime/globalContext.js");
5
5
  const utils_js_1 = require("../utils.js");
6
- const getVikeConfig_js_1 = require("./importUserCode/v1-design/getVikeConfig.js");
6
+ const getOutDirs_js_1 = require("../shared/getOutDirs.js");
7
7
  function setGlobalContext() {
8
8
  return [
9
9
  {
@@ -23,7 +23,7 @@ function setGlobalContext() {
23
23
  order: 'pre',
24
24
  handler(_, env) {
25
25
  const isViteDev = (0, utils_js_1.isDevCheck)(env);
26
- (0, globalContext_js_1.setGlobalContext_isViteDev)(isViteDev);
26
+ (0, globalContext_js_1.setGlobalContext_isProduction)(!isViteDev);
27
27
  (0, utils_js_1.markSetup_isViteDev)(isViteDev);
28
28
  }
29
29
  }
@@ -34,11 +34,9 @@ function setGlobalContext() {
34
34
  configResolved: {
35
35
  order: 'post',
36
36
  async handler(config) {
37
- const { outDirRoot } = (0, utils_js_1.getOutDirs)(config);
37
+ const { outDirRoot } = (0, getOutDirs_js_1.getOutDirs)(config);
38
38
  (0, utils_js_1.assertFilePathAbsoluteFilesystem)(outDirRoot); // Needed for `importServerProductionEntry({ outDir })` of @brillout/vite-plugin-server-entry
39
39
  (0, globalContext_js_1.setGlobalContext_viteConfig)(config, outDirRoot);
40
- const vikeConfig = await (0, getVikeConfig_js_1.getVikeConfig)(config);
41
- (0, globalContext_js_1.setGlobalContext_vikeConfig)(vikeConfig);
42
40
  }
43
41
  }
44
42
  }
@@ -7,9 +7,10 @@ exports.findPageFiles = findPageFiles;
7
7
  const fast_glob_1 = __importDefault(require("fast-glob"));
8
8
  const utils_js_1 = require("../utils.js");
9
9
  const picocolors_1 = __importDefault(require("@brillout/picocolors"));
10
+ const getOutDirs_js_1 = require("./getOutDirs.js");
10
11
  async function findPageFiles(config, fileTypes, isDev) {
11
12
  const cwd = config.root;
12
- const { outDirRoot } = (0, utils_js_1.getOutDirs)(config);
13
+ const { outDirRoot } = (0, getOutDirs_js_1.getOutDirs)(config);
13
14
  const timeBase = new Date().getTime();
14
15
  let pageFiles = await (0, fast_glob_1.default)(fileTypes.map((fileType) => `**/*${fileType}.${utils_js_1.scriptFileExtensions}`), { ignore: ['**/node_modules/**', `${outDirRoot}/**`], cwd, dot: false });
15
16
  pageFiles = pageFiles.map((p) => '/' + (0, utils_js_1.toPosixPath)(p));
@@ -0,0 +1,20 @@
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
+ }
@@ -5,70 +5,79 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.getOutDirs = getOutDirs;
7
7
  exports.resolveOutDir = resolveOutDir;
8
- const viteIsSSR_js_1 = require("./viteIsSSR.js");
9
- const assert_js_1 = require("./assert.js");
10
- const path_shim_js_1 = require("./path-shim.js");
11
- const filesystemPathHandling_js_1 = require("./filesystemPathHandling.js");
12
8
  const picocolors_1 = __importDefault(require("@brillout/picocolors"));
13
- const debug_js_1 = require("./debug.js");
14
- const debug = (0, debug_js_1.createDebugger)('vike:outDir');
9
+ const utils_js_1 = require("../utils.js");
10
+ const viteIsSSR_js_1 = require("./viteIsSSR.js");
11
+ const debug = (0, utils_js_1.createDebugger)('vike:outDir');
15
12
  function getOutDirs(config) {
16
13
  debug('getOutDirs()', new Error().stack);
14
+ const outDir = getOutDirFromViteResolvedConfig(config);
15
+ if (!isOutDirRoot(outDir))
16
+ assertOutDirResolved(outDir, config);
17
+ const outDirs = getOutDirsAll(outDir, config.root);
18
+ return outDirs;
19
+ }
20
+ /** Appends `client/` or `server/` to `config.build.outDir` */
21
+ function resolveOutDir(config, isSSR) {
22
+ debug('resolveOutDir()', new Error().stack);
23
+ const isServerSide = (0, viteIsSSR_js_1.viteIsSSR)(config) || isSSR;
24
+ debug('isServerSide', isServerSide);
25
+ const outDir = getOutDirFromViteUserConfig(config) || 'dist';
26
+ debug('outDir', outDir);
27
+ /* outDir may already be resolved when using Telefunc + Vike (because both Telefunc and Vike use this logic)
28
+ assert(isOutDirRoot(outDir))
29
+ */
30
+ const { outDirClient, outDirServer } = getOutDirsAll(outDir);
31
+ if (isServerSide) {
32
+ debug('outDirServer', 'outDirServer');
33
+ return outDirServer;
34
+ }
35
+ else {
36
+ debug('outDirClient', 'outDirClient');
37
+ return outDirClient;
38
+ }
39
+ }
40
+ function determineOutDirs(outDirRoot) {
41
+ (0, utils_js_1.assertPosixPath)(outDirRoot);
42
+ (0, utils_js_1.assert)(isOutDirRoot(outDirRoot));
43
+ const outDirClient = (0, utils_js_1.pathJoin)(outDirRoot, 'client');
44
+ const outDirServer = (0, utils_js_1.pathJoin)(outDirRoot, 'server');
45
+ assertIsNotOutDirRoot(outDirClient);
46
+ assertIsNotOutDirRoot(outDirServer);
47
+ return { outDirClient, outDirServer };
48
+ }
49
+ function getOutDirsAll(outDir, root) {
17
50
  let outDirRoot;
18
51
  {
19
- const outDir = getOutDirFromViteResolvedConfig(config);
20
52
  if (isOutDirRoot(outDir)) {
21
53
  outDirRoot = outDir;
22
54
  }
23
55
  else {
24
- assertOutDirResolved(outDir, config);
25
- (0, assert_js_1.assert)(outDir.endsWith('/server') || outDir.endsWith('/client'));
26
- (0, assert_js_1.assert)('/client'.length === '/server'.length);
56
+ (0, utils_js_1.assert)(outDir.endsWith('/server') || outDir.endsWith('/client'));
57
+ (0, utils_js_1.assert)('/client'.length === '/server'.length);
27
58
  outDirRoot = outDir.slice(0, -1 * '/client'.length);
28
59
  }
29
60
  }
30
- const outDirs = getOutDirsAll(outDirRoot, config.root);
31
61
  debug('outDirRoot', outDirRoot);
32
- debug('outDirs', outDirs);
33
- return outDirs;
34
- }
35
- /** Appends `client/` or `server/` to `config.build.outDir` */
36
- function resolveOutDir(config) {
37
- debug('resolveOutDir()', new Error().stack);
38
- const outDir = getOutDirFromViteUserConfig(config) || 'dist';
39
- debug('outDir', 'outDir');
40
- // outDir may already be resolved when using Telefunc + vike (because both Telefunc and vike use this logic)
41
- if (!isOutDirRoot(outDir)) {
42
- assertOutDirResolved(outDir, config);
43
- return outDir;
62
+ let outDirs;
63
+ if (root) {
64
+ outDirs = getOutDirsAllFromRootNormalized(outDirRoot, root);
44
65
  }
45
66
  else {
46
- const { outDirClient, outDirServer } = determineOutDirs(outDir);
47
- if ((0, viteIsSSR_js_1.viteIsSSR)(config)) {
48
- debug('outDirServer', 'outDirServer');
49
- return outDirServer;
50
- }
51
- else {
52
- debug('outDirClient', 'outDirClient');
53
- return outDirClient;
54
- }
67
+ outDirs = getOutDirsAllFromRoot(outDirRoot);
55
68
  }
69
+ debug('outDirs', outDirs);
70
+ return outDirs;
56
71
  }
57
- function determineOutDirs(outDirRoot) {
58
- (0, filesystemPathHandling_js_1.assertPosixPath)(outDirRoot);
59
- (0, assert_js_1.assert)(!outDirRoot.endsWith('/'));
60
- (0, assert_js_1.assert)(isOutDirRoot(outDirRoot));
61
- const outDirClient = (0, path_shim_js_1.pathJoin)(outDirRoot, 'client');
62
- const outDirServer = (0, path_shim_js_1.pathJoin)(outDirRoot, 'server');
63
- assertIsNotOutDirRoot(outDirClient);
64
- assertIsNotOutDirRoot(outDirServer);
65
- return { outDirClient, outDirServer };
72
+ function getOutDirsAllFromRoot(outDirRoot) {
73
+ let { outDirClient, outDirServer } = determineOutDirs(outDirRoot);
74
+ return { outDirRoot, outDirClient, outDirServer };
66
75
  }
67
- function getOutDirsAll(outDirRoot, root) {
68
- if (!outDirIsAbsolutePath(outDirRoot)) {
69
- (0, filesystemPathHandling_js_1.assertPosixPath)(outDirRoot);
70
- (0, filesystemPathHandling_js_1.assertPosixPath)(root);
71
- outDirRoot = (0, path_shim_js_1.pathJoin)(root, outDirRoot);
76
+ function getOutDirsAllFromRootNormalized(outDirRoot, root) {
77
+ if (root && !outDirIsAbsolutePath(outDirRoot)) {
78
+ (0, utils_js_1.assertPosixPath)(outDirRoot);
79
+ (0, utils_js_1.assertPosixPath)(root);
80
+ outDirRoot = (0, utils_js_1.pathJoin)(root, outDirRoot);
72
81
  }
73
82
  let { outDirClient, outDirServer } = determineOutDirs(outDirRoot);
74
83
  outDirRoot = outDirRoot + '/';
@@ -80,10 +89,10 @@ function getOutDirsAll(outDirRoot, root) {
80
89
  return { outDirRoot, outDirClient, outDirServer };
81
90
  }
82
91
  function assertNormalization(outDirAny) {
83
- (0, filesystemPathHandling_js_1.assertPosixPath)(outDirAny);
84
- (0, assert_js_1.assert)(outDirIsAbsolutePath(outDirAny));
85
- (0, assert_js_1.assert)(outDirAny.endsWith('/'));
86
- (0, assert_js_1.assert)(!outDirAny.endsWith('//'));
92
+ (0, utils_js_1.assertPosixPath)(outDirAny);
93
+ (0, utils_js_1.assert)(outDirIsAbsolutePath(outDirAny));
94
+ (0, utils_js_1.assert)(outDirAny.endsWith('/'));
95
+ (0, utils_js_1.assert)(!outDirAny.endsWith('//'));
87
96
  }
88
97
  function isOutDirRoot(outDirRot) {
89
98
  const p = outDirRot.split('/').filter(Boolean);
@@ -91,37 +100,37 @@ function isOutDirRoot(outDirRot) {
91
100
  return lastDir !== 'client' && lastDir !== 'server';
92
101
  }
93
102
  function assertIsNotOutDirRoot(outDir) {
94
- (0, assert_js_1.assert)(outDir.endsWith('/client') || outDir.endsWith('/server'));
103
+ (0, utils_js_1.assert)(outDir.endsWith('/client') || outDir.endsWith('/server'));
95
104
  }
96
- /** `outDir` ends with `/server` or `/client` */
105
+ /** Assert that `outDir` ends with `/server` or `/client` */
97
106
  function assertOutDirResolved(outDir, config) {
98
- (0, filesystemPathHandling_js_1.assertPosixPath)(outDir);
107
+ (0, utils_js_1.assertPosixPath)(outDir);
99
108
  assertIsNotOutDirRoot(outDir);
100
- (0, assert_js_1.assert)('/client'.length === '/server'.length);
109
+ (0, utils_js_1.assert)('/client'.length === '/server'.length);
101
110
  const outDirCorrected = outDir.slice(0, -1 * '/client'.length);
102
111
  const wrongUsage = `You've set Vite's config.build.outDir to ${picocolors_1.default.cyan(outDir)} but you should set it to ${picocolors_1.default.cyan(outDirCorrected)} instead.`;
103
112
  if ((0, viteIsSSR_js_1.viteIsSSR)(config)) {
104
- (0, assert_js_1.assertUsage)(outDir.endsWith('/server'), wrongUsage);
113
+ (0, utils_js_1.assertUsage)(outDir.endsWith('/server'), wrongUsage);
105
114
  }
106
115
  else {
107
- (0, assert_js_1.assertUsage)(outDir.endsWith('/client'), wrongUsage);
116
+ (0, utils_js_1.assertUsage)(outDir.endsWith('/client'), wrongUsage);
108
117
  }
109
118
  }
110
119
  function getOutDirFromViteUserConfig(config) {
111
120
  let outDir = config.build?.outDir;
112
121
  if (outDir === undefined)
113
122
  return undefined;
114
- outDir = normalize(outDir);
123
+ outDir = normalizeOutDir(outDir);
115
124
  return outDir;
116
125
  }
117
126
  function getOutDirFromViteResolvedConfig(config) {
118
127
  let outDir = config.build.outDir;
119
- (0, assert_js_1.assert)(outDir);
120
- outDir = normalize(outDir);
128
+ (0, utils_js_1.assert)(outDir);
129
+ outDir = normalizeOutDir(outDir);
121
130
  return outDir;
122
131
  }
123
- function normalize(outDir) {
124
- outDir = (0, filesystemPathHandling_js_1.toPosixPath)(outDir);
132
+ function normalizeOutDir(outDir) {
133
+ outDir = (0, utils_js_1.toPosixPath)(outDir);
125
134
  outDir = outDir.replace(/\/+$/, ''); // remove trailing slashes
126
135
  return outDir;
127
136
  }
@@ -1,14 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.resolveClientEntriesDev = resolveClientEntriesDev;
4
- const utils_js_1 = require("./utils.js");
4
+ const utils_js_1 = require("../utils.js");
5
5
  const module_1 = require("module");
6
- const path_1 = require("path");
7
- const url_1 = require("url");
8
6
  // @ts-ignore Shimmed by dist-cjs-fixup.js for CJS build.
9
7
  const importMetaUrl = `file://${__filename}`;
10
8
  const require_ = (0, module_1.createRequire)(importMetaUrl);
11
- const __dirname_ = (0, path_1.dirname)((0, url_1.fileURLToPath)(importMetaUrl));
12
9
  (0, utils_js_1.assertIsNotProductionRuntime)();
13
10
  async function resolveClientEntriesDev(clientEntry, viteDevServer) {
14
11
  let root = viteDevServer.config.root;
@@ -34,13 +31,13 @@ async function resolveClientEntriesDev(clientEntry, viteDevServer) {
34
31
  (0, utils_js_1.assert)(clientEntry.endsWith('.js'));
35
32
  try {
36
33
  // For Vitest (which doesn't resolve vike to its dist but to its source files)
37
- // [RELATIVE_PATH_FROM_DIST] Current file: node_modules/vike/node/plugin/resolveClientEntriesDev.js
38
- filePath = (0, utils_js_1.toPosixPath)(require_.resolve(clientEntry.replace('@@vike/dist/esm/client/', '../../client/').replace('.js', '.ts')));
34
+ // [RELATIVE_PATH_FROM_DIST] Current file: node_modules/vike/node/plugin/shared/resolveClientEntriesDev.js
35
+ filePath = (0, utils_js_1.toPosixPath)(require_.resolve(clientEntry.replace('@@vike/dist/esm/client/', '../../../client/').replace('.js', '.ts')));
39
36
  }
40
37
  catch {
41
38
  // For users
42
- // [RELATIVE_PATH_FROM_DIST] Current file: node_modules/vike/dist/esm/node/plugin/resolveClientEntriesDev.js
43
- filePath = (0, utils_js_1.toPosixPath)(require_.resolve(clientEntry.replace('@@vike/dist/esm/client/', '../../../../dist/esm/client/')));
39
+ // [RELATIVE_PATH_FROM_DIST] Current file: node_modules/vike/dist/esm/node/plugin/shared/resolveClientEntriesDev.js
40
+ filePath = (0, utils_js_1.toPosixPath)(require_.resolve(clientEntry.replace('@@vike/dist/esm/client/', '../../../../../dist/esm/client/')));
44
41
  }
45
42
  }
46
43
  else {
@@ -2,8 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.viteIsSSR = viteIsSSR;
4
4
  exports.viteIsSSR_options = viteIsSSR_options;
5
- const assert_js_1 = require("./assert.js");
6
- const isObject_js_1 = require("./isObject.js");
5
+ const assert_js_1 = require("../../../utils/assert.js");
6
+ const isObject_js_1 = require("../../../utils/isObject.js");
7
7
  function viteIsSSR(config) {
8
8
  return !!config?.build?.ssr;
9
9
  }
@@ -18,10 +18,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  // We call onLoad() here so that it's called even when only a subset of the plugin is loaded. (Making the assert() calls inside onLoad() a lot stronger.)
19
19
  const onLoad_js_1 = require("./onLoad.js");
20
20
  (0, onLoad_js_1.onLoad)();
21
- // We tolerate the fact that we load all of the runtime utils even though some of it isn't needed
21
+ // It's common practice for Vike's Vite plugin to import from Vike's sever runtime
22
22
  __exportStar(require("../runtime/utils.js"), exports);
23
23
  // Utils only needed by `plugin/*`
24
- __exportStar(require("../../utils/viteIsSSR.js"), exports);
25
24
  __exportStar(require("../../utils/requireResolve.js"), exports);
26
25
  __exportStar(require("../../utils/includes.js"), exports);
27
26
  __exportStar(require("../../utils/isDev.js"), exports);
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isPrerenderEnabled = isPrerenderEnabled;
4
+ exports.isPrerenderAutoRunEnabled = isPrerenderAutoRunEnabled;
5
+ exports.temp_disablePrerenderAutoRun = temp_disablePrerenderAutoRun;
6
+ exports.isPrerendering = isPrerendering;
7
+ exports.setContextIsPrerendering = setContextIsPrerendering;
8
+ const getGlobalObject_js_1 = require("../../utils/getGlobalObject.js");
9
+ const resolvePrerenderConfig_js_1 = require("./resolvePrerenderConfig.js");
10
+ const globalObject = (0, getGlobalObject_js_1.getGlobalObject)('prerender/context.ts', {});
11
+ function isPrerenderEnabled(vikeConfig) {
12
+ const prerenderConfig = (0, resolvePrerenderConfig_js_1.resolvePrerenderConfig)(vikeConfig);
13
+ return !!prerenderConfig;
14
+ }
15
+ function isPrerenderAutoRunEnabled(vikeConfig) {
16
+ const prerenderConfig = (0, resolvePrerenderConfig_js_1.resolvePrerenderConfig)(vikeConfig);
17
+ return (isPrerenderEnabled(vikeConfig) &&
18
+ !(prerenderConfig || {}).disableAutoRun &&
19
+ !globalObject.isDisabled &&
20
+ vikeConfig.global.config.disableAutoFullBuild !== 'prerender');
21
+ }
22
+ // TODO/v1-release: remove
23
+ function temp_disablePrerenderAutoRun() {
24
+ globalObject.isDisabled = true;
25
+ }
26
+ function isPrerendering() {
27
+ return !!globalObject.isPrerendering;
28
+ }
29
+ function setContextIsPrerendering() {
30
+ globalObject.isPrerendering = true;
31
+ }
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolvePrerenderConfig = resolvePrerenderConfig;
4
+ exports.resolvePrerenderConfigLocal = resolvePrerenderConfigLocal;
5
+ const utils_js_1 = require("./utils.js");
6
+ const getConfigValueBuildTime_js_1 = require("../../shared/page-configs/getConfigValueBuildTime.js");
7
+ const helpers_js_1 = require("../../shared/page-configs/helpers.js");
8
+ // TODO/now:
9
+ // - prerender.value
10
+ function resolvePrerenderConfig(vikeConfig) {
11
+ const prerenderConfigs = vikeConfig.global.config.prerender;
12
+ if (!prerenderConfigs &&
13
+ !vikeConfig.pageConfigs.some((pageConfig) => resolvePrerenderConfigLocal(pageConfig)?.value)) {
14
+ return false;
15
+ }
16
+ let prerenderSettings = prerenderConfigs || [];
17
+ // Needed because of backwards compatibility of `vike({prerender:true})` in `vite.config.js`; after we remove it we can remove this line.
18
+ prerenderSettings = prerenderSettings.filter(isObject2);
19
+ (0, utils_js_1.assert)(prerenderSettings.every(isObject2));
20
+ const prerenderConfig = {
21
+ partial: pickFirst(prerenderSettings.map((c) => c.partial)) ?? false,
22
+ noExtraDir: pickFirst(prerenderSettings.map((c) => c.noExtraDir)) ?? false,
23
+ parallel: pickFirst(prerenderSettings.map((c) => c.parallel)) ?? true,
24
+ disableAutoRun: pickFirst(prerenderSettings.map((c) => c.disableAutoRun)) ?? false
25
+ };
26
+ return prerenderConfig;
27
+ }
28
+ function resolvePrerenderConfigLocal(pageConfig) {
29
+ const configValue = (0, getConfigValueBuildTime_js_1.getConfigValueBuildTime)(pageConfig, 'prerender');
30
+ if (!configValue)
31
+ return null;
32
+ const values = configValue.value;
33
+ (0, utils_js_1.assert)((0, utils_js_1.isArray)(values));
34
+ const value = values[0];
35
+ (0, utils_js_1.assert)(typeof value === 'boolean');
36
+ (0, utils_js_1.assert)((0, utils_js_1.isArray)(configValue.definedAtData));
37
+ const configValueFilePathToShowToUser = (0, helpers_js_1.getConfigValueFilePathToShowToUser)(configValue.definedAtData[0]);
38
+ (0, utils_js_1.assert)(configValueFilePathToShowToUser);
39
+ return { value, configValueFilePathToShowToUser };
40
+ }
41
+ function isObject2(p) {
42
+ return typeof p === 'object' && p !== null;
43
+ }
44
+ function pickFirst(arr) {
45
+ return arr.filter((v) => v !== undefined)[0];
46
+ }