vike 0.4.237 → 0.4.238

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 (288) hide show
  1. package/dist/cjs/__internal/index.js +3 -3
  2. package/dist/cjs/client/runtime-client-routing/globalContext.js +2 -2
  3. package/dist/cjs/client/runtime-server-routing/globalContext.js +2 -2
  4. package/dist/cjs/client/runtime-server-routing/utils.js +1 -1
  5. package/dist/cjs/client/shared/createGetGlobalContextClient.js +5 -5
  6. package/dist/cjs/node/api/build.js +5 -31
  7. package/dist/cjs/node/api/context.js +13 -12
  8. package/dist/cjs/node/api/dev.js +0 -2
  9. package/dist/cjs/node/api/index.js +0 -2
  10. package/dist/cjs/node/api/onLoad.js +2 -2
  11. package/dist/cjs/node/api/prepareViteApiCall.js +2 -3
  12. package/dist/cjs/node/api/preview.js +2 -3
  13. package/dist/cjs/node/api/utils.js +1 -0
  14. package/dist/cjs/node/cli/index.js +2 -2
  15. package/dist/cjs/node/cli/onLoad.js +2 -2
  16. package/dist/cjs/node/prerender/runPrerender.js +7 -8
  17. package/dist/cjs/node/prerender/runPrerenderEntry.js +1 -1
  18. package/dist/cjs/node/runtime/globalContext.js +128 -112
  19. package/dist/cjs/node/runtime/html/injectAssets/getHtmlTags.js +1 -1
  20. package/dist/cjs/node/runtime/renderPage/analyzePage.js +6 -4
  21. package/dist/cjs/node/runtime/renderPage/createPageContextServerSide.js +1 -1
  22. package/dist/cjs/node/runtime/renderPage/execHookOnRenderHtml.js +1 -11
  23. package/dist/cjs/node/runtime/renderPage/getPageAssets/getManifestEntry.js +5 -4
  24. package/dist/cjs/node/runtime/renderPage/getPageAssets/{retrieveAssetsDev.js → retrievePageAssetsDev.js} +21 -6
  25. package/dist/cjs/node/runtime/renderPage/getPageAssets/{retrieveAssetsProd.js → retrievePageAssetsProd.js} +19 -2
  26. package/dist/cjs/node/runtime/renderPage/getPageAssets.js +5 -34
  27. package/dist/cjs/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +42 -46
  28. package/dist/cjs/node/runtime/renderPage/{renderPageAlreadyRouted.js → renderPageAfterRoute.js} +3 -4
  29. package/dist/cjs/node/runtime/renderPage.js +18 -16
  30. package/dist/cjs/node/runtime/utils.js +3 -2
  31. package/dist/cjs/node/runtime-dev/createDevMiddleware.js +0 -2
  32. package/dist/cjs/node/shared/virtualFileId.js +110 -0
  33. package/dist/cjs/node/vite/index.js +3 -3
  34. package/dist/cjs/node/vite/onLoad.js +5 -3
  35. package/dist/cjs/node/vite/plugins/pluginBuild/handleAssetsManifest.js +29 -30
  36. package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildApp.js +122 -10
  37. package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildConfig.js +12 -17
  38. package/dist/cjs/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.js +2 -10
  39. package/dist/cjs/node/vite/plugins/pluginBuild/pluginModuleBanner.js +5 -11
  40. package/dist/cjs/node/vite/plugins/pluginBuild/{pluginBuildEntry.js → pluginProdBuildEntry.js} +11 -11
  41. package/dist/cjs/node/vite/plugins/pluginBuild.js +2 -4
  42. package/dist/cjs/node/vite/plugins/pluginDev/determineFsAllowList.js +2 -2
  43. package/dist/cjs/node/vite/plugins/pluginDev/determineOptimizeDeps.js +6 -5
  44. package/dist/cjs/node/vite/plugins/pluginEnvVars.js +6 -13
  45. package/dist/cjs/node/vite/plugins/pluginExtractAssets.js +7 -7
  46. package/dist/cjs/node/vite/plugins/pluginExtractExportNames.js +6 -2
  47. package/dist/cjs/node/vite/plugins/pluginFileEnv.js +4 -3
  48. package/dist/cjs/node/vite/plugins/pluginNonRunnableDev.js +11 -11
  49. package/dist/cjs/node/vite/plugins/pluginPreview.js +4 -7
  50. package/dist/cjs/node/vite/plugins/pluginReplaceConstants.js +6 -13
  51. package/dist/cjs/node/vite/plugins/pluginSetGlobalContext.js +1 -1
  52. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/{getVirtualFilePageConfigsEager.js → generateVirtualFileGlobalEntry.js} +5 -6
  53. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/{getVirtualFileEntry.js → generateVirtualFileGlobalEntryWithOldDesign.js} +12 -12
  54. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/{getVirtualFilePageConfigLazy.js → generateVirtualFilePageEntry.js} +10 -11
  55. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/getConfigValueSourcesRelevant.js +51 -21
  56. package/dist/cjs/node/vite/plugins/pluginVirtualFiles.js +14 -12
  57. package/dist/cjs/node/vite/shared/findPageFiles.js +1 -1
  58. package/dist/cjs/node/vite/shared/{resolveClientEntriesDev.js → getClientEntrySrcDev.js} +3 -3
  59. package/dist/cjs/node/vite/shared/getHttpRequestAsyncStore.js +8 -6
  60. package/dist/cjs/node/vite/shared/getMagicString.js +1 -1
  61. package/dist/cjs/node/vite/shared/getOutDirs.js +21 -22
  62. package/dist/cjs/node/vite/shared/getViteConfigRuntime.js +1 -1
  63. package/dist/cjs/node/vite/shared/isViteServerSide.js +68 -0
  64. package/dist/cjs/node/vite/shared/loggerVite/removeSuperfluousViteLog.js +6 -4
  65. package/dist/cjs/node/vite/shared/loggerVite.js +1 -1
  66. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.js +20 -36
  67. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles.js +5 -4
  68. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal.js +46 -48
  69. package/dist/cjs/shared/createGlobalContextShared.js +16 -14
  70. package/dist/cjs/shared/getPageFiles/{parseVirtualFileExports.js → parseVirtualFileExportsGlobalEntry.js} +20 -26
  71. package/dist/cjs/shared/page-configs/loadAndParseVirtualFilePageEntry.js +25 -0
  72. package/dist/cjs/shared/page-configs/resolveVikeConfigPublic.js +9 -4
  73. package/dist/cjs/shared/page-configs/serialize/{parsePageConfigs.js → parsePageConfigsSerialized.js} +2 -2
  74. package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +3 -3
  75. package/dist/cjs/shared/route/execHookOnBeforeRoute.js +0 -1
  76. package/dist/cjs/shared/route/index.js +0 -1
  77. package/dist/cjs/types/VikeGlobalInternal.js +2 -0
  78. package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
  79. package/dist/cjs/utils/assertSetup.js +2 -3
  80. package/dist/cjs/utils/assertVersion.js +2 -0
  81. package/dist/cjs/utils/debug.js +4 -4
  82. package/dist/cjs/utils/getGlobalObject.js +8 -15
  83. package/dist/cjs/utils/isNonRunnableDev.js +12 -0
  84. package/dist/cjs/utils/isScriptFile.js +1 -1
  85. package/dist/cjs/utils/path.js +5 -5
  86. package/dist/cjs/utils/requireResolve.js +13 -12
  87. package/dist/cjs/utils/{augmentType.js → updateType.js} +3 -3
  88. package/dist/esm/__internal/index.d.ts +2 -2
  89. package/dist/esm/__internal/index.js +3 -3
  90. package/dist/esm/client/runtime-client-routing/createPageContextClientSide.d.ts +2 -2
  91. package/dist/esm/client/runtime-client-routing/createPageContextClientSide.js +2 -2
  92. package/dist/esm/client/runtime-client-routing/getPageContextCurrent.d.ts +2 -2
  93. package/dist/esm/client/runtime-client-routing/getPageContextFromHooks.d.ts +12 -12
  94. package/dist/esm/client/runtime-client-routing/globalContext.d.ts +2 -2
  95. package/dist/esm/client/runtime-client-routing/globalContext.js +2 -2
  96. package/dist/esm/client/runtime-client-routing/prefetch/getPrefetchSettings.d.ts +2 -2
  97. package/dist/esm/client/runtime-client-routing/prefetch.d.ts +2 -2
  98. package/dist/esm/client/runtime-client-routing/prefetch.js +2 -2
  99. package/dist/esm/client/runtime-client-routing/preparePageContextForPublicUsageClient.d.ts +2 -2
  100. package/dist/esm/client/runtime-client-routing/renderPageClientSide.d.ts +6 -7
  101. package/dist/esm/client/runtime-client-routing/renderPageClientSide.js +6 -6
  102. package/dist/esm/client/runtime-client-routing/utils.d.ts +1 -1
  103. package/dist/esm/client/runtime-client-routing/utils.js +1 -1
  104. package/dist/esm/client/runtime-server-routing/createPageContextClientSide.d.ts +3 -3
  105. package/dist/esm/client/runtime-server-routing/createPageContextClientSide.js +3 -3
  106. package/dist/esm/client/runtime-server-routing/globalContext.d.ts +2 -2
  107. package/dist/esm/client/runtime-server-routing/globalContext.js +2 -2
  108. package/dist/esm/client/runtime-server-routing/preparePageContextForPublicUsageClient.d.ts +2 -2
  109. package/dist/esm/client/runtime-server-routing/utils.d.ts +1 -1
  110. package/dist/esm/client/runtime-server-routing/utils.js +1 -1
  111. package/dist/esm/client/shared/createGetGlobalContextClient.d.ts +3 -3
  112. package/dist/esm/client/shared/createGetGlobalContextClient.js +5 -5
  113. package/dist/esm/client/shared/execHookOnRenderClient.d.ts +2 -2
  114. package/dist/esm/client/shared/loadPageConfigsLazyClientSide.d.ts +1 -1
  115. package/dist/esm/client/shared/loadPageConfigsLazyClientSide.js +4 -4
  116. package/dist/esm/client/shared/preparePageContextForPublicUsageClientShared.d.ts +2 -2
  117. package/dist/esm/node/api/build.d.ts +2 -2
  118. package/dist/esm/node/api/build.js +6 -32
  119. package/dist/esm/node/api/context.d.ts +10 -10
  120. package/dist/esm/node/api/context.js +13 -12
  121. package/dist/esm/node/api/dev.d.ts +2 -2
  122. package/dist/esm/node/api/dev.js +0 -2
  123. package/dist/esm/node/api/index.js +0 -2
  124. package/dist/esm/node/api/onLoad.js +1 -1
  125. package/dist/esm/node/api/prepareViteApiCall.d.ts +3 -5
  126. package/dist/esm/node/api/prepareViteApiCall.js +3 -4
  127. package/dist/esm/node/api/preview.d.ts +2 -2
  128. package/dist/esm/node/api/preview.js +2 -3
  129. package/dist/esm/node/api/types.d.ts +4 -4
  130. package/dist/esm/node/api/utils.d.ts +1 -0
  131. package/dist/esm/node/api/utils.js +1 -0
  132. package/dist/esm/node/cli/index.js +1 -1
  133. package/dist/esm/node/cli/onLoad.js +1 -1
  134. package/dist/esm/node/prerender/runPrerender.d.ts +13 -304
  135. package/dist/esm/node/prerender/runPrerender.js +8 -9
  136. package/dist/esm/node/prerender/runPrerenderEntry.js +1 -1
  137. package/dist/esm/node/runtime/globalContext.d.ts +13 -13
  138. package/dist/esm/node/runtime/globalContext.js +125 -109
  139. package/dist/esm/node/runtime/html/injectAssets/getHtmlTags.js +1 -1
  140. package/dist/esm/node/runtime/renderPage/analyzePage.d.ts +4 -3
  141. package/dist/esm/node/runtime/renderPage/analyzePage.js +6 -4
  142. package/dist/esm/node/runtime/renderPage/createPageContextServerSide.d.ts +2 -2
  143. package/dist/esm/node/runtime/renderPage/createPageContextServerSide.js +2 -2
  144. package/dist/esm/node/runtime/renderPage/execHookOnRenderHtml.d.ts +0 -1
  145. package/dist/esm/node/runtime/renderPage/execHookOnRenderHtml.js +1 -11
  146. package/dist/esm/node/runtime/renderPage/execHookServer.d.ts +2 -2
  147. package/dist/esm/node/runtime/renderPage/getPageAssets/getManifestEntry.js +5 -4
  148. package/dist/esm/node/runtime/renderPage/getPageAssets/retrievePageAssetsDev.d.ts +10 -0
  149. package/dist/esm/node/runtime/renderPage/getPageAssets/{retrieveAssetsDev.js → retrievePageAssetsDev.js} +22 -7
  150. package/dist/esm/node/runtime/renderPage/getPageAssets/retrievePageAssetsProd.d.ts +10 -0
  151. package/dist/esm/node/runtime/renderPage/getPageAssets/{retrieveAssetsProd.js → retrievePageAssetsProd.js} +19 -2
  152. package/dist/esm/node/runtime/renderPage/getPageAssets.d.ts +2 -10
  153. package/dist/esm/node/runtime/renderPage/getPageAssets.js +4 -33
  154. package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.d.ts +1 -1
  155. package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.d.ts +106 -20
  156. package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +44 -48
  157. package/dist/esm/node/runtime/renderPage/preparePageContextForPublicUsageServer.d.ts +2 -2
  158. package/dist/esm/node/runtime/renderPage/{renderPageAlreadyRouted.d.ts → renderPageAfterRoute.d.ts} +26 -10
  159. package/dist/esm/node/runtime/renderPage/{renderPageAlreadyRouted.js → renderPageAfterRoute.js} +5 -6
  160. package/dist/esm/node/runtime/renderPage.d.ts +9 -6
  161. package/dist/esm/node/runtime/renderPage.js +20 -18
  162. package/dist/esm/node/runtime/utils.d.ts +3 -2
  163. package/dist/esm/node/runtime/utils.js +3 -2
  164. package/dist/esm/node/runtime-dev/createDevMiddleware.d.ts +2 -2
  165. package/dist/esm/node/runtime-dev/createDevMiddleware.js +0 -2
  166. package/dist/esm/node/shared/virtualFileId.d.ts +28 -0
  167. package/dist/esm/node/shared/virtualFileId.js +107 -0
  168. package/dist/esm/node/vite/index.js +3 -3
  169. package/dist/esm/node/vite/onLoad.js +5 -3
  170. package/dist/esm/node/vite/plugins/pluginBuild/handleAssetsManifest.d.ts +5 -6
  171. package/dist/esm/node/vite/plugins/pluginBuild/handleAssetsManifest.js +31 -32
  172. package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildApp.js +119 -10
  173. package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildConfig.js +12 -17
  174. package/dist/esm/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.js +2 -10
  175. package/dist/esm/node/vite/plugins/pluginBuild/pluginModuleBanner.js +5 -8
  176. package/dist/esm/node/vite/plugins/pluginBuild/{pluginBuildEntry.d.ts → pluginProdBuildEntry.d.ts} +2 -2
  177. package/dist/esm/node/vite/plugins/pluginBuild/{pluginBuildEntry.js → pluginProdBuildEntry.js} +12 -12
  178. package/dist/esm/node/vite/plugins/pluginBuild.js +2 -4
  179. package/dist/esm/node/vite/plugins/pluginDev/determineFsAllowList.js +3 -3
  180. package/dist/esm/node/vite/plugins/pluginDev/determineOptimizeDeps.js +6 -5
  181. package/dist/esm/node/vite/plugins/pluginEnvVars.js +6 -10
  182. package/dist/esm/node/vite/plugins/pluginExtractAssets.js +5 -5
  183. package/dist/esm/node/vite/plugins/pluginExtractExportNames.js +6 -2
  184. package/dist/esm/node/vite/plugins/pluginFileEnv.js +4 -3
  185. package/dist/esm/node/vite/plugins/pluginNonRunnableDev.js +12 -12
  186. package/dist/esm/node/vite/plugins/pluginPreview.js +5 -8
  187. package/dist/esm/node/vite/plugins/pluginReplaceConstants.js +6 -10
  188. package/dist/esm/node/vite/plugins/pluginSetGlobalContext.js +2 -2
  189. package/dist/esm/node/vite/plugins/pluginVirtualFiles/generateVirtualFileGlobalEntry.d.ts +2 -0
  190. package/dist/esm/node/vite/plugins/pluginVirtualFiles/{getVirtualFilePageConfigsEager.js → generateVirtualFileGlobalEntry.js} +5 -6
  191. package/dist/esm/node/vite/plugins/pluginVirtualFiles/generateVirtualFileGlobalEntryWithOldDesign.d.ts +6 -0
  192. package/dist/esm/node/vite/plugins/pluginVirtualFiles/{getVirtualFileEntry.js → generateVirtualFileGlobalEntryWithOldDesign.js} +11 -11
  193. package/dist/esm/node/vite/plugins/pluginVirtualFiles/generateVirtualFilePageEntry.d.ts +2 -0
  194. package/dist/esm/node/vite/plugins/pluginVirtualFiles/{getVirtualFilePageConfigLazy.js → generateVirtualFilePageEntry.js} +10 -11
  195. package/dist/esm/node/vite/plugins/pluginVirtualFiles/getConfigValueSourcesRelevant.d.ts +5 -1
  196. package/dist/esm/node/vite/plugins/pluginVirtualFiles/getConfigValueSourcesRelevant.js +52 -22
  197. package/dist/esm/node/vite/plugins/pluginVirtualFiles.js +14 -12
  198. package/dist/esm/node/vite/shared/findPageFiles.js +1 -1
  199. package/dist/esm/node/vite/shared/getClientEntrySrcDev.d.ts +4 -0
  200. package/dist/esm/node/vite/shared/{resolveClientEntriesDev.js → getClientEntrySrcDev.js} +4 -4
  201. package/dist/esm/node/vite/shared/getHttpRequestAsyncStore.js +9 -7
  202. package/dist/esm/node/vite/shared/getMagicString.js +1 -1
  203. package/dist/esm/node/vite/shared/getOutDirs.d.ts +4 -3
  204. package/dist/esm/node/vite/shared/getOutDirs.js +21 -22
  205. package/dist/esm/node/vite/shared/getViteConfigRuntime.js +1 -1
  206. package/dist/esm/node/vite/shared/isViteServerSide.d.ts +18 -0
  207. package/dist/esm/node/vite/shared/isViteServerSide.js +66 -0
  208. package/dist/esm/node/vite/shared/loggerVite/removeSuperfluousViteLog.js +7 -5
  209. package/dist/esm/node/vite/shared/loggerVite.js +1 -1
  210. package/dist/esm/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.d.ts +3 -2
  211. package/dist/esm/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.js +21 -37
  212. package/dist/esm/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles.js +6 -5
  213. package/dist/esm/node/vite/shared/resolveVikeConfigInternal.d.ts +4 -2
  214. package/dist/esm/node/vite/shared/resolveVikeConfigInternal.js +49 -51
  215. package/dist/esm/shared/createGlobalContextShared.d.ts +7 -6
  216. package/dist/esm/shared/createGlobalContextShared.js +18 -16
  217. package/dist/esm/shared/getPageFiles/{parseVirtualFileExports.d.ts → parseVirtualFileExportsGlobalEntry.d.ts} +2 -2
  218. package/dist/esm/shared/getPageFiles/{parseVirtualFileExports.js → parseVirtualFileExportsGlobalEntry.js} +20 -26
  219. package/dist/esm/shared/getPageFiles.d.ts +1 -1
  220. package/dist/esm/shared/hooks/execHook.d.ts +2 -2
  221. package/dist/esm/shared/hooks/getHook.d.ts +3 -3
  222. package/dist/esm/shared/page-configs/loadAndParseVirtualFilePageEntry.d.ts +3 -0
  223. package/dist/esm/shared/page-configs/loadAndParseVirtualFilePageEntry.js +23 -0
  224. package/dist/esm/shared/page-configs/resolveVikeConfigPublic.d.ts +9 -9
  225. package/dist/esm/shared/page-configs/resolveVikeConfigPublic.js +9 -4
  226. package/dist/esm/shared/page-configs/serialize/PageConfigSerialized.d.ts +1 -1
  227. package/dist/esm/shared/page-configs/serialize/{parsePageConfigs.d.ts → parsePageConfigsSerialized.d.ts} +2 -2
  228. package/dist/esm/shared/page-configs/serialize/{parsePageConfigs.js → parsePageConfigsSerialized.js} +2 -2
  229. package/dist/esm/shared/page-configs/serialize/serializeConfigValues.js +3 -3
  230. package/dist/esm/shared/route/execHookOnBeforeRoute.d.ts +3 -3
  231. package/dist/esm/shared/route/execHookOnBeforeRoute.js +0 -1
  232. package/dist/esm/shared/route/index.d.ts +5 -6
  233. package/dist/esm/shared/route/index.js +0 -1
  234. package/dist/esm/types/Config.d.ts +3 -7
  235. package/dist/esm/types/PageConfig.d.ts +11 -9
  236. package/dist/esm/types/VikeGlobalInternal.d.ts +4 -0
  237. package/dist/esm/types/VikeGlobalInternal.js +1 -0
  238. package/dist/esm/types/VikeNamespace.d.ts +13 -0
  239. package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
  240. package/dist/esm/utils/PROJECT_VERSION.js +1 -1
  241. package/dist/esm/utils/assertSetup.js +2 -3
  242. package/dist/esm/utils/assertVersion.js +2 -0
  243. package/dist/esm/utils/debug.js +3 -3
  244. package/dist/esm/utils/getGlobalObject.d.ts +6 -5
  245. package/dist/esm/utils/getGlobalObject.js +8 -15
  246. package/dist/esm/utils/isNonRunnableDev.d.ts +2 -0
  247. package/dist/esm/utils/isNonRunnableDev.js +10 -0
  248. package/dist/esm/utils/isScriptFile.d.ts +1 -1
  249. package/dist/esm/utils/isScriptFile.js +1 -1
  250. package/dist/esm/utils/path.d.ts +2 -0
  251. package/dist/esm/utils/path.js +5 -5
  252. package/dist/esm/utils/requireResolve.d.ts +4 -4
  253. package/dist/esm/utils/requireResolve.js +13 -12
  254. package/dist/esm/utils/updateType.d.ts +3 -0
  255. package/dist/esm/utils/updateType.js +7 -0
  256. package/package.json +6 -6
  257. package/dist/cjs/node/runtime/renderPage/debugPageFiles.js +0 -52
  258. package/dist/cjs/node/shared/virtualFiles/virtualFileEntry.js +0 -31
  259. package/dist/cjs/node/shared/virtualFiles/virtualFilePageConfigLazy.js +0 -45
  260. package/dist/cjs/node/vite/plugins/pluginBuild/pluginAutoFullBuild.js +0 -149
  261. package/dist/cjs/node/vite/shared/applyRegExWithMagicString.js +0 -11
  262. package/dist/cjs/node/vite/shared/isViteServerBuild.js +0 -47
  263. package/dist/cjs/shared/page-configs/loadConfigValues.js +0 -21
  264. package/dist/esm/node/runtime/renderPage/debugPageFiles.d.ts +0 -23
  265. package/dist/esm/node/runtime/renderPage/debugPageFiles.js +0 -47
  266. package/dist/esm/node/runtime/renderPage/getPageAssets/retrieveAssetsDev.d.ts +0 -4
  267. package/dist/esm/node/runtime/renderPage/getPageAssets/retrieveAssetsProd.d.ts +0 -4
  268. package/dist/esm/node/shared/virtualFiles/virtualFileEntry.d.ts +0 -11
  269. package/dist/esm/node/shared/virtualFiles/virtualFileEntry.js +0 -28
  270. package/dist/esm/node/shared/virtualFiles/virtualFilePageConfigLazy.d.ts +0 -9
  271. package/dist/esm/node/shared/virtualFiles/virtualFilePageConfigLazy.js +0 -43
  272. package/dist/esm/node/vite/plugins/pluginBuild/pluginAutoFullBuild.d.ts +0 -5
  273. package/dist/esm/node/vite/plugins/pluginBuild/pluginAutoFullBuild.js +0 -144
  274. package/dist/esm/node/vite/plugins/pluginVirtualFiles/getVirtualFileEntry.d.ts +0 -5
  275. package/dist/esm/node/vite/plugins/pluginVirtualFiles/getVirtualFilePageConfigLazy.d.ts +0 -3
  276. package/dist/esm/node/vite/plugins/pluginVirtualFiles/getVirtualFilePageConfigsEager.d.ts +0 -2
  277. package/dist/esm/node/vite/shared/applyRegExWithMagicString.d.ts +0 -3
  278. package/dist/esm/node/vite/shared/applyRegExWithMagicString.js +0 -9
  279. package/dist/esm/node/vite/shared/isViteServerBuild.d.ts +0 -15
  280. package/dist/esm/node/vite/shared/isViteServerBuild.js +0 -45
  281. package/dist/esm/node/vite/shared/resolveClientEntriesDev.d.ts +0 -4
  282. package/dist/esm/shared/page-configs/loadConfigValues.d.ts +0 -3
  283. package/dist/esm/shared/page-configs/loadConfigValues.js +0 -19
  284. package/dist/esm/utils/augmentType.d.ts +0 -3
  285. package/dist/esm/utils/augmentType.js +0 -7
  286. /package/dist/cjs/utils/{getTerminWidth.js → getTerminalWidth.js} +0 -0
  287. /package/dist/esm/utils/{getTerminWidth.d.ts → getTerminalWidth.d.ts} +0 -0
  288. /package/dist/esm/utils/{getTerminWidth.js → getTerminalWidth.js} +0 -0
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.virtualFileIdEntryClientCR = exports.virtualFileIdEntryClientSR = exports.virtualFileIdEntryServer = void 0;
4
- exports.isVirtualFileIdEntry = isVirtualFileIdEntry;
5
- // TODO/now: merge virtualFileEntry.ts and virtualFilePageConfigLazy.ts
6
- // - One function parseVirtualFileIdEntry() to rule them all?
7
- const utils_js_1 = require("../utils.js");
8
- (0, utils_js_1.assertIsNotBrowser)();
9
- // TODO/now: rename:
10
- // ```diff
11
- // - virtual:vike:entry:server
12
- // + virtual:vike:entry:global:server
13
- // ```
14
- const virtualFileIdEntryServer = 'virtual:vike:entry:server';
15
- exports.virtualFileIdEntryServer = virtualFileIdEntryServer;
16
- const virtualFileIdEntryClientSR = 'virtual:vike:entry:client:server-routing';
17
- exports.virtualFileIdEntryClientSR = virtualFileIdEntryClientSR;
18
- const virtualFileIdEntryClientCR = 'virtual:vike:entry:client:client-routing';
19
- exports.virtualFileIdEntryClientCR = virtualFileIdEntryClientCR;
20
- const virtualFileIdEntries = [virtualFileIdEntryServer, virtualFileIdEntryClientCR, virtualFileIdEntryClientSR];
21
- const idBase = 'virtual:vike:entry';
22
- (0, utils_js_1.assert)(virtualFileIdEntries.every((v) => v.startsWith(`${idBase}:`)));
23
- function isVirtualFileIdEntry(id) {
24
- id = (0, utils_js_1.removeVirtualFileIdPrefix)(id);
25
- if (!id.startsWith(idBase))
26
- return false;
27
- (0, utils_js_1.assert)(virtualFileIdEntries.includes(id));
28
- const isForClientSide = id !== virtualFileIdEntryServer;
29
- const isClientRouting = id === virtualFileIdEntryClientCR;
30
- return { isForClientSide, isClientRouting };
31
- }
@@ -1,45 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isVirtualFileIdPageConfigLazy = isVirtualFileIdPageConfigLazy;
4
- exports.getVirtualFileIdPageConfigLazy = getVirtualFileIdPageConfigLazy;
5
- const extractAssetsQuery_js_1 = require("../extractAssetsQuery.js");
6
- const utils_js_1 = require("../utils.js");
7
- (0, utils_js_1.assertIsNotBrowser)();
8
- // TODO/now: rename:
9
- // ```diff
10
- // - virtual:vike:pageConfigLazy:server:
11
- // + virtual:vike:entry:page:server:
12
- // ```
13
- const idBaseClient = 'virtual:vike:pageConfigLazy:client:';
14
- const idBaseServer = 'virtual:vike:pageConfigLazy:server:';
15
- const idBase = 'virtual:vike:pageConfigLazy:';
16
- // TODO/now: rename to generateVirtualFileIdEntry()
17
- function getVirtualFileIdPageConfigLazy(pageId, isForClientSide) {
18
- const id = `${isForClientSide ? idBaseClient : idBaseServer}${pageId}`;
19
- return id;
20
- }
21
- function isVirtualFileIdPageConfigLazy(id) {
22
- id = (0, utils_js_1.removeVirtualFileIdPrefix)(id);
23
- if (!id.includes(idBase))
24
- return false;
25
- (0, utils_js_1.assert)(id.startsWith(idBase));
26
- const idOriginal = id;
27
- id = (0, extractAssetsQuery_js_1.extractAssetsRemoveQuery)(id);
28
- const isExtractAssets = idOriginal !== id;
29
- if (id.startsWith(idBaseClient)) {
30
- (0, utils_js_1.assert)(isExtractAssets === false);
31
- return {
32
- pageId: id.slice(idBaseClient.length),
33
- isForClientSide: true,
34
- isExtractAssets,
35
- };
36
- }
37
- if (id.startsWith(idBaseServer)) {
38
- return {
39
- pageId: id.slice(idBaseServer.length),
40
- isForClientSide: false,
41
- isExtractAssets,
42
- };
43
- }
44
- (0, utils_js_1.assert)(false);
45
- }
@@ -1,149 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.pluginAutoFullBuild = pluginAutoFullBuild;
7
- exports.isPrerenderForceExit = isPrerenderForceExit;
8
- const vite_1 = require("vite");
9
- const utils_js_1 = require("../../utils.js");
10
- const context_js_1 = require("../../../prerender/context.js");
11
- const isViteCliCall_js_1 = require("../../shared/isViteCliCall.js");
12
- const picocolors_1 = __importDefault(require("@brillout/picocolors"));
13
- const logErrorHint_js_1 = require("../../../runtime/renderPage/logErrorHint.js");
14
- const resolveVikeConfigInternal_js_1 = require("../../shared/resolveVikeConfigInternal.js");
15
- const context_js_2 = require("../../../api/context.js");
16
- const handleAssetsManifest_js_1 = require("./handleAssetsManifest.js");
17
- const isViteServerBuild_js_1 = require("../../shared/isViteServerBuild.js");
18
- const runPrerenderEntry_js_1 = require("../../../prerender/runPrerenderEntry.js");
19
- const getManifestFilePathRelative_js_1 = require("../../shared/getManifestFilePathRelative.js");
20
- (0, utils_js_1.assertIsSingleModuleInstance)('build/pluginAutoFullBuild.ts');
21
- let forceExit = false;
22
- function pluginAutoFullBuild() {
23
- let config;
24
- return [
25
- {
26
- name: 'vike:build:pluginAutoFullBuild',
27
- apply: 'build',
28
- enforce: 'pre',
29
- async configResolved(config_) {
30
- config = config_;
31
- await abortViteBuildSsr();
32
- },
33
- writeBundle: {
34
- /* We can't use this because it breaks Vite's logging. TO-DO/eventually: try again with latest Vite version.
35
- sequential: true,
36
- order: 'pre',
37
- */
38
- async handler(options, bundle) {
39
- try {
40
- await (0, handleAssetsManifest_js_1.handleAssetsManifest)(config, this.environment, options, bundle);
41
- await triggerFullBuild(config, this.environment, bundle);
42
- }
43
- catch (err) {
44
- // We use try-catch also because:
45
- // - Vite/Rollup swallows errors thrown inside the writeBundle() hook. (It doesn't swallow errors thrown inside the first writeBundle() hook while building the client-side, but it does swallow errors thrown inside the second writeBundle() while building the server-side triggered after Vike calls Vite's `build()` API.)
46
- // - Avoid Rollup prefixing the error with [vike:build:pluginAutoFullBuild], see for example https://github.com/vikejs/vike/issues/472#issuecomment-1276274203
47
- console.error(err);
48
- (0, logErrorHint_js_1.logErrorHint)(err);
49
- process.exit(1);
50
- }
51
- },
52
- },
53
- },
54
- {
55
- name: 'vike:build:pluginAutoFullBuild:post',
56
- apply: 'build',
57
- enforce: 'post',
58
- closeBundle: {
59
- sequential: true,
60
- order: 'post',
61
- async handler() {
62
- (0, utils_js_1.onSetupBuild)();
63
- (0, handleAssetsManifest_js_1.handleAssetsManifest_assertUsageCssTarget)(config);
64
- const vikeConfig = await (0, resolveVikeConfigInternal_js_1.getVikeConfigInternal)();
65
- if (forceExit &&
66
- // Let vike:build:pluginBuildApp force exit
67
- !vikeConfig.config.vite6BuilderApp) {
68
- (0, runPrerenderEntry_js_1.runPrerender_forceExit)();
69
- (0, utils_js_1.assert)(false);
70
- }
71
- },
72
- },
73
- },
74
- ];
75
- }
76
- async function triggerFullBuild(config, viteEnv, bundle) {
77
- const vikeConfig = await (0, resolveVikeConfigInternal_js_1.getVikeConfigInternal)();
78
- // Whether builder.buildApp() is being used, see plugin:build:pluginBuildApp
79
- const isBuilderApp = vikeConfig.config.vite6BuilderApp;
80
- // If builder.buildApp() => trigger at end of `this.environment.name === 'ssr'`.
81
- // Else => trigger at end of client-side build.
82
- if (isBuilderApp ? !(0, isViteServerBuild_js_1.isViteServerBuild_onlySsrEnv)(config, viteEnv) : !(0, isViteServerBuild_js_1.isViteClientBuild)(config, viteEnv))
83
- return;
84
- if (isEntirelyDisabled(vikeConfig))
85
- return;
86
- // Workaround for @vitejs/plugin-legacy
87
- // - The legacy plugin triggers its own Rollup build for the client-side.
88
- // - The legacy plugin doesn't generate a manifest => we can use that to detect the legacy plugin build.
89
- // - Issue & reproduction: https://github.com/vikejs/vike/issues/1154#issuecomment-1965954636
90
- if (!bundle[(0, getManifestFilePathRelative_js_1.getManifestFilePathRelative)(config.build.manifest)])
91
- return;
92
- const configInline = getFullBuildInlineConfig(config);
93
- if (!isBuilderApp) {
94
- await (0, vite_1.build)(setSSR(configInline));
95
- }
96
- else {
97
- // The server build is already called by builder.buildApp()
98
- }
99
- if ((0, context_js_1.isPrerenderAutoRunEnabled)(vikeConfig)) {
100
- const res = await (0, runPrerenderEntry_js_1.runPrerenderFromAutoRun)(configInline);
101
- forceExit = res.forceExit;
102
- (0, utils_js_1.assert)((0, context_js_1.wasPrerenderRun)());
103
- }
104
- }
105
- function setSSR(configInline) {
106
- return {
107
- ...configInline,
108
- build: {
109
- ...configInline.build,
110
- ssr: true,
111
- },
112
- };
113
- }
114
- async function abortViteBuildSsr() {
115
- const vikeConfig = await (0, resolveVikeConfigInternal_js_1.getVikeConfigInternal)();
116
- if (vikeConfig.config.disableAutoFullBuild !== true && (0, isViteCliCall_js_1.isViteCliCall)() && (0, isViteCliCall_js_1.getViteConfigFromCli)()?.build.ssr) {
117
- (0, utils_js_1.assertWarning)(false, `The CLI call ${picocolors_1.default.cyan('$ vite build --ssr')} is superfluous since ${picocolors_1.default.cyan('$ vite build')} also builds the server-side. If you want two separate build steps then use https://vike.dev/disableAutoFullBuild or use Vite's ${picocolors_1.default.cyan('build()')} API.`, { onlyOnce: true });
118
- process.exit(0);
119
- }
120
- }
121
- function isEntirelyDisabled(vikeConfig) {
122
- const { disableAutoFullBuild } = vikeConfig.config;
123
- if (disableAutoFullBuild === undefined || disableAutoFullBuild === 'prerender') {
124
- const isUserUsingViteApi = !(0, isViteCliCall_js_1.isViteCliCall)() && !(0, context_js_2.isVikeCliOrApi)();
125
- return isUserUsingViteApi;
126
- }
127
- else {
128
- return disableAutoFullBuild;
129
- }
130
- }
131
- function isPrerenderForceExit() {
132
- return forceExit;
133
- }
134
- function getFullBuildInlineConfig(config) {
135
- const configFromCli = !(0, isViteCliCall_js_1.isViteCliCall)() ? null : (0, isViteCliCall_js_1.getViteConfigFromCli)();
136
- if (config._viteConfigFromUserEnhanced) {
137
- return config._viteConfigFromUserEnhanced;
138
- }
139
- else {
140
- return {
141
- ...configFromCli,
142
- configFile: configFromCli?.configFile || config.configFile,
143
- root: config.root,
144
- build: {
145
- ...configFromCli?.build,
146
- },
147
- };
148
- }
149
- }
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.applyRegExpWithMagicString = applyRegExpWithMagicString;
4
- // TODO/now: replace with .replaceAll() ?
5
- function applyRegExpWithMagicString(magicString, regExp, replacement) {
6
- const envStatementRegEx = typeof regExp === 'string' ? new RegExp(regExp, 'g') : regExp;
7
- let match;
8
- while ((match = envStatementRegEx.exec(magicString.original))) {
9
- magicString.overwrite(match.index, match.index + match[0].length, JSON.stringify(replacement));
10
- }
11
- }
@@ -1,47 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isViteServerBuild = isViteServerBuild;
4
- exports.isViteClientBuild = isViteClientBuild;
5
- exports.isViteServerBuild_options = isViteServerBuild_options;
6
- exports.isViteServerBuild_safe = isViteServerBuild_safe;
7
- exports.isViteServerBuild_onlySsrEnv = isViteServerBuild_onlySsrEnv;
8
- const assert_js_1 = require("../../../utils/assert.js");
9
- function isViteServerBuild(configGlobal, viteEnv) {
10
- const configEnv = viteEnv?.config ?? configGlobal;
11
- return !!configEnv?.build?.ssr;
12
- }
13
- // Only `ssr` env: for example don't include `vercel_edge` nor `vercel_node`.
14
- function isViteServerBuild_onlySsrEnv(configGlobal, viteEnv) {
15
- return viteEnv ? viteEnv.name === 'ssr' : isViteServerBuild(configGlobal);
16
- }
17
- function isViteClientBuild(configGlobal, viteEnv) {
18
- const yes = !isViteServerBuild(configGlobal, viteEnv);
19
- const isVite5 = viteEnv === undefined;
20
- if (!isVite5) {
21
- const yes2 = viteEnv.name === 'client';
22
- (0, assert_js_1.assert)(yes === yes2);
23
- }
24
- return yes;
25
- }
26
- function isViteServerBuild_options(options) {
27
- return !!options?.ssr;
28
- }
29
- // Vite is quite messy about setting `ssr: boolean`, thus we use an extra safe implementation for security purposes.
30
- // It's used for .client.js and .server.js guarantee thus we use aggressive assert() calls for added safety.
31
- function isViteServerBuild_safe(config, options) {
32
- if (config.command === 'build') {
33
- (0, assert_js_1.assert)(typeof config.build.ssr === 'boolean');
34
- const val = config.build.ssr;
35
- if (options?.ssr !== undefined)
36
- (0, assert_js_1.assert)(val === options.ssr);
37
- return val;
38
- }
39
- else {
40
- (0, assert_js_1.assert)(typeof options?.ssr === 'boolean');
41
- const val = options.ssr;
42
- /* This assert() fails (which is very unexpected).
43
- if (typeof config.build.ssr === 'boolean') assert(val === config.build.ssr)
44
- //*/
45
- return val;
46
- }
47
- }
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.loadConfigValues = loadConfigValues;
4
- const utils_js_1 = require("../utils.js");
5
- const parsePageConfigs_js_1 = require("./serialize/parsePageConfigs.js");
6
- async function loadConfigValues(pageConfig, isDev) {
7
- if ('isAllLoaded' in pageConfig &&
8
- // We don't need to cache in dev, since Vite already caches the virtual module
9
- !isDev) {
10
- return pageConfig;
11
- }
12
- const { moduleId, moduleExports } = pageConfig.loadConfigLazy();
13
- const configValuesLoaded = await moduleExports;
14
- // `configValuesLoaded` is sometimes `undefined` https://github.com/vikejs/vike/discussions/2092
15
- if (!configValuesLoaded)
16
- (0, utils_js_1.assert)(false, { moduleExports, configValuesLoaded, moduleId });
17
- const configValues = (0, parsePageConfigs_js_1.parseConfigValuesSerialized)(configValuesLoaded.configValuesSerialized);
18
- Object.assign(pageConfig.configValues, configValues);
19
- (0, utils_js_1.objectAssign)(pageConfig, { isAllLoaded: true });
20
- return pageConfig;
21
- }
@@ -1,23 +0,0 @@
1
- export { debugPageFiles };
2
- export type { PageContextDebugRouteMatches };
3
- import type { RouteMatches } from '../../../shared/route/index.js';
4
- import type { ClientDependency } from '../../../shared/getPageFiles/analyzePageClientSide/ClientDependency.js';
5
- import type { PageFile } from '../../../shared/getPageFiles.js';
6
- import type { GlobalContextServerInternal } from '../globalContext.js';
7
- type PageContextDebugRouteMatches = {
8
- _debugRouteMatches: 'ROUTING_ERROR' | RouteMatches;
9
- };
10
- declare function debugPageFiles({ pageContext, isHtmlOnly, isClientRouting, pageFilesLoaded, pageFilesServerSide, pageFilesClientSide, clientEntries, clientDependencies, }: {
11
- pageContext: {
12
- urlOriginal: string;
13
- pageId: string;
14
- _globalContext: GlobalContextServerInternal;
15
- } & PageContextDebugRouteMatches;
16
- isHtmlOnly: boolean;
17
- isClientRouting: boolean;
18
- pageFilesLoaded: PageFile[];
19
- pageFilesClientSide: PageFile[];
20
- pageFilesServerSide: PageFile[];
21
- clientEntries: string[];
22
- clientDependencies: ClientDependency[];
23
- }): void;
@@ -1,47 +0,0 @@
1
- export { debugPageFiles };
2
- import pc from '@brillout/picocolors';
3
- import { assert, makeFirst, createDebugger } from '../utils.js';
4
- function debugPageFiles({ pageContext, isHtmlOnly, isClientRouting, pageFilesLoaded, pageFilesServerSide, pageFilesClientSide, clientEntries, clientDependencies, }) {
5
- const debug = createDebugger('vike:pageFiles', { serialization: { emptyArray: 'None' } });
6
- const padding = ' - ';
7
- debug('All page files:', printPageFiles(pageContext._globalContext._pageFilesAll, true));
8
- debug(`URL:`, pageContext.urlOriginal);
9
- debug.options({ serialization: { emptyArray: 'No match' } })(`Routing:`, printRouteMatches(pageContext._debugRouteMatches));
10
- debug(`pageId:`, pageContext.pageId);
11
- debug('Page type:', isHtmlOnly ? 'HTML-only' : 'SSR/SPA');
12
- debug(`Routing type:`, !isHtmlOnly && isClientRouting ? 'Client Routing' : 'Server Routing');
13
- debug('Server-side page files:', printPageFiles(pageFilesLoaded));
14
- assert(samePageFiles(pageFilesLoaded, pageFilesServerSide));
15
- debug('Client-side page files:', printPageFiles(pageFilesClientSide));
16
- debug('Client-side entries:', clientEntries);
17
- debug('Client-side dependencies:', clientDependencies);
18
- return;
19
- function printRouteMatches(debugRouteMatches) {
20
- if (debugRouteMatches === 'ROUTING_ERROR') {
21
- return 'Routing Failed';
22
- }
23
- if (debugRouteMatches === 'CUSTOM_ROUTING') {
24
- return 'Custom Routing';
25
- }
26
- return debugRouteMatches;
27
- }
28
- function printPageFiles(pageFiles, genericPageFilesLast = false) {
29
- if (pageFiles.length === 0) {
30
- return 'None';
31
- }
32
- return ('\n' +
33
- pageFiles
34
- .sort((p1, p2) => p1.filePath.localeCompare(p2.filePath))
35
- .sort(makeFirst((p) => (p.isRendererPageFile ? !genericPageFilesLast : null)))
36
- .sort(makeFirst((p) => (p.isDefaultPageFile ? !genericPageFilesLast : null)))
37
- .map((p) => p.filePath)
38
- .map((s) => s.split('_default.page.').join(`${pc.blue('_default')}.page.`))
39
- .map((s) => s.split('/renderer/').join(`/${pc.red('renderer')}/`))
40
- .map((s) => padding + s)
41
- .join('\n'));
42
- }
43
- }
44
- function samePageFiles(pageFiles1, pageFiles2) {
45
- return (pageFiles1.every((p1) => pageFiles2.some((p2) => p2.filePath === p1.filePath)) &&
46
- pageFiles2.every((p2) => pageFiles1.some((p1) => p1.filePath === p2.filePath)));
47
- }
@@ -1,4 +0,0 @@
1
- export { retrieveAssetsDev };
2
- import type { ViteDevServer } from 'vite';
3
- import type { ClientDependency } from '../../../../shared/getPageFiles/analyzePageClientSide/ClientDependency.js';
4
- declare function retrieveAssetsDev(clientDependencies: ClientDependency[], viteDevServer: ViteDevServer): Promise<string[]>;
@@ -1,4 +0,0 @@
1
- export { retrieveAssetsProd };
2
- import type { ViteManifest } from '../../../../types/ViteManifest.js';
3
- import type { ClientDependency } from '../../../../shared/getPageFiles/analyzePageClientSide/ClientDependency.js';
4
- declare function retrieveAssetsProd(clientDependencies: ClientDependency[], assetsManifest: ViteManifest, includeAssetsImportedByServer: boolean): string[];
@@ -1,11 +0,0 @@
1
- export { virtualFileIdEntryServer };
2
- export { virtualFileIdEntryClientSR };
3
- export { virtualFileIdEntryClientCR };
4
- export { isVirtualFileIdEntry };
5
- declare const virtualFileIdEntryServer = "virtual:vike:entry:server";
6
- declare const virtualFileIdEntryClientSR = "virtual:vike:entry:client:server-routing";
7
- declare const virtualFileIdEntryClientCR = "virtual:vike:entry:client:client-routing";
8
- declare function isVirtualFileIdEntry(id: string): false | {
9
- isForClientSide: boolean;
10
- isClientRouting: boolean;
11
- };
@@ -1,28 +0,0 @@
1
- export { virtualFileIdEntryServer };
2
- export { virtualFileIdEntryClientSR };
3
- export { virtualFileIdEntryClientCR };
4
- export { isVirtualFileIdEntry };
5
- // TODO/now: merge virtualFileEntry.ts and virtualFilePageConfigLazy.ts
6
- // - One function parseVirtualFileIdEntry() to rule them all?
7
- import { assert, assertIsNotBrowser, removeVirtualFileIdPrefix } from '../utils.js';
8
- assertIsNotBrowser();
9
- // TODO/now: rename:
10
- // ```diff
11
- // - virtual:vike:entry:server
12
- // + virtual:vike:entry:global:server
13
- // ```
14
- const virtualFileIdEntryServer = 'virtual:vike:entry:server';
15
- const virtualFileIdEntryClientSR = 'virtual:vike:entry:client:server-routing';
16
- const virtualFileIdEntryClientCR = 'virtual:vike:entry:client:client-routing';
17
- const virtualFileIdEntries = [virtualFileIdEntryServer, virtualFileIdEntryClientCR, virtualFileIdEntryClientSR];
18
- const idBase = 'virtual:vike:entry';
19
- assert(virtualFileIdEntries.every((v) => v.startsWith(`${idBase}:`)));
20
- function isVirtualFileIdEntry(id) {
21
- id = removeVirtualFileIdPrefix(id);
22
- if (!id.startsWith(idBase))
23
- return false;
24
- assert(virtualFileIdEntries.includes(id));
25
- const isForClientSide = id !== virtualFileIdEntryServer;
26
- const isClientRouting = id === virtualFileIdEntryClientCR;
27
- return { isForClientSide, isClientRouting };
28
- }
@@ -1,9 +0,0 @@
1
- export { isVirtualFileIdPageConfigLazy };
2
- export { getVirtualFileIdPageConfigLazy };
3
- declare const idBase = "virtual:vike:pageConfigLazy:";
4
- declare function getVirtualFileIdPageConfigLazy(pageId: string, isForClientSide: boolean): `${typeof idBase}${string}`;
5
- declare function isVirtualFileIdPageConfigLazy(id: string): false | {
6
- isForClientSide: boolean;
7
- pageId: string;
8
- isExtractAssets: boolean;
9
- };
@@ -1,43 +0,0 @@
1
- export { isVirtualFileIdPageConfigLazy };
2
- export { getVirtualFileIdPageConfigLazy };
3
- import { extractAssetsRemoveQuery } from '../extractAssetsQuery.js';
4
- import { assert, assertIsNotBrowser, removeVirtualFileIdPrefix } from '../utils.js';
5
- assertIsNotBrowser();
6
- // TODO/now: rename:
7
- // ```diff
8
- // - virtual:vike:pageConfigLazy:server:
9
- // + virtual:vike:entry:page:server:
10
- // ```
11
- const idBaseClient = 'virtual:vike:pageConfigLazy:client:';
12
- const idBaseServer = 'virtual:vike:pageConfigLazy:server:';
13
- const idBase = 'virtual:vike:pageConfigLazy:';
14
- // TODO/now: rename to generateVirtualFileIdEntry()
15
- function getVirtualFileIdPageConfigLazy(pageId, isForClientSide) {
16
- const id = `${isForClientSide ? idBaseClient : idBaseServer}${pageId}`;
17
- return id;
18
- }
19
- function isVirtualFileIdPageConfigLazy(id) {
20
- id = removeVirtualFileIdPrefix(id);
21
- if (!id.includes(idBase))
22
- return false;
23
- assert(id.startsWith(idBase));
24
- const idOriginal = id;
25
- id = extractAssetsRemoveQuery(id);
26
- const isExtractAssets = idOriginal !== id;
27
- if (id.startsWith(idBaseClient)) {
28
- assert(isExtractAssets === false);
29
- return {
30
- pageId: id.slice(idBaseClient.length),
31
- isForClientSide: true,
32
- isExtractAssets,
33
- };
34
- }
35
- if (id.startsWith(idBaseServer)) {
36
- return {
37
- pageId: id.slice(idBaseServer.length),
38
- isForClientSide: false,
39
- isExtractAssets,
40
- };
41
- }
42
- assert(false);
43
- }
@@ -1,5 +0,0 @@
1
- export { pluginAutoFullBuild };
2
- export { isPrerenderForceExit };
3
- import type { Plugin } from 'vite';
4
- declare function pluginAutoFullBuild(): Plugin[];
5
- declare function isPrerenderForceExit(): boolean;
@@ -1,144 +0,0 @@
1
- export { pluginAutoFullBuild };
2
- export { isPrerenderForceExit };
3
- import { build } from 'vite';
4
- import { assert, assertIsSingleModuleInstance, assertWarning, onSetupBuild } from '../../utils.js';
5
- import { isPrerenderAutoRunEnabled, wasPrerenderRun } from '../../../prerender/context.js';
6
- import { isViteCliCall, getViteConfigFromCli } from '../../shared/isViteCliCall.js';
7
- import pc from '@brillout/picocolors';
8
- import { logErrorHint } from '../../../runtime/renderPage/logErrorHint.js';
9
- import { getVikeConfigInternal } from '../../shared/resolveVikeConfigInternal.js';
10
- import { isVikeCliOrApi } from '../../../api/context.js';
11
- import { handleAssetsManifest, handleAssetsManifest_assertUsageCssTarget } from './handleAssetsManifest.js';
12
- import { isViteClientBuild, isViteServerBuild_onlySsrEnv } from '../../shared/isViteServerBuild.js';
13
- import { runPrerender_forceExit, runPrerenderFromAutoRun } from '../../../prerender/runPrerenderEntry.js';
14
- import { getManifestFilePathRelative } from '../../shared/getManifestFilePathRelative.js';
15
- assertIsSingleModuleInstance('build/pluginAutoFullBuild.ts');
16
- let forceExit = false;
17
- function pluginAutoFullBuild() {
18
- let config;
19
- return [
20
- {
21
- name: 'vike:build:pluginAutoFullBuild',
22
- apply: 'build',
23
- enforce: 'pre',
24
- async configResolved(config_) {
25
- config = config_;
26
- await abortViteBuildSsr();
27
- },
28
- writeBundle: {
29
- /* We can't use this because it breaks Vite's logging. TO-DO/eventually: try again with latest Vite version.
30
- sequential: true,
31
- order: 'pre',
32
- */
33
- async handler(options, bundle) {
34
- try {
35
- await handleAssetsManifest(config, this.environment, options, bundle);
36
- await triggerFullBuild(config, this.environment, bundle);
37
- }
38
- catch (err) {
39
- // We use try-catch also because:
40
- // - Vite/Rollup swallows errors thrown inside the writeBundle() hook. (It doesn't swallow errors thrown inside the first writeBundle() hook while building the client-side, but it does swallow errors thrown inside the second writeBundle() while building the server-side triggered after Vike calls Vite's `build()` API.)
41
- // - Avoid Rollup prefixing the error with [vike:build:pluginAutoFullBuild], see for example https://github.com/vikejs/vike/issues/472#issuecomment-1276274203
42
- console.error(err);
43
- logErrorHint(err);
44
- process.exit(1);
45
- }
46
- },
47
- },
48
- },
49
- {
50
- name: 'vike:build:pluginAutoFullBuild:post',
51
- apply: 'build',
52
- enforce: 'post',
53
- closeBundle: {
54
- sequential: true,
55
- order: 'post',
56
- async handler() {
57
- onSetupBuild();
58
- handleAssetsManifest_assertUsageCssTarget(config);
59
- const vikeConfig = await getVikeConfigInternal();
60
- if (forceExit &&
61
- // Let vike:build:pluginBuildApp force exit
62
- !vikeConfig.config.vite6BuilderApp) {
63
- runPrerender_forceExit();
64
- assert(false);
65
- }
66
- },
67
- },
68
- },
69
- ];
70
- }
71
- async function triggerFullBuild(config, viteEnv, bundle) {
72
- const vikeConfig = await getVikeConfigInternal();
73
- // Whether builder.buildApp() is being used, see plugin:build:pluginBuildApp
74
- const isBuilderApp = vikeConfig.config.vite6BuilderApp;
75
- // If builder.buildApp() => trigger at end of `this.environment.name === 'ssr'`.
76
- // Else => trigger at end of client-side build.
77
- if (isBuilderApp ? !isViteServerBuild_onlySsrEnv(config, viteEnv) : !isViteClientBuild(config, viteEnv))
78
- return;
79
- if (isEntirelyDisabled(vikeConfig))
80
- return;
81
- // Workaround for @vitejs/plugin-legacy
82
- // - The legacy plugin triggers its own Rollup build for the client-side.
83
- // - The legacy plugin doesn't generate a manifest => we can use that to detect the legacy plugin build.
84
- // - Issue & reproduction: https://github.com/vikejs/vike/issues/1154#issuecomment-1965954636
85
- if (!bundle[getManifestFilePathRelative(config.build.manifest)])
86
- return;
87
- const configInline = getFullBuildInlineConfig(config);
88
- if (!isBuilderApp) {
89
- await build(setSSR(configInline));
90
- }
91
- else {
92
- // The server build is already called by builder.buildApp()
93
- }
94
- if (isPrerenderAutoRunEnabled(vikeConfig)) {
95
- const res = await runPrerenderFromAutoRun(configInline);
96
- forceExit = res.forceExit;
97
- assert(wasPrerenderRun());
98
- }
99
- }
100
- function setSSR(configInline) {
101
- return {
102
- ...configInline,
103
- build: {
104
- ...configInline.build,
105
- ssr: true,
106
- },
107
- };
108
- }
109
- async function abortViteBuildSsr() {
110
- const vikeConfig = await getVikeConfigInternal();
111
- if (vikeConfig.config.disableAutoFullBuild !== true && isViteCliCall() && getViteConfigFromCli()?.build.ssr) {
112
- assertWarning(false, `The CLI call ${pc.cyan('$ vite build --ssr')} is superfluous since ${pc.cyan('$ vite build')} also builds the server-side. If you want two separate build steps then use https://vike.dev/disableAutoFullBuild or use Vite's ${pc.cyan('build()')} API.`, { onlyOnce: true });
113
- process.exit(0);
114
- }
115
- }
116
- function isEntirelyDisabled(vikeConfig) {
117
- const { disableAutoFullBuild } = vikeConfig.config;
118
- if (disableAutoFullBuild === undefined || disableAutoFullBuild === 'prerender') {
119
- const isUserUsingViteApi = !isViteCliCall() && !isVikeCliOrApi();
120
- return isUserUsingViteApi;
121
- }
122
- else {
123
- return disableAutoFullBuild;
124
- }
125
- }
126
- function isPrerenderForceExit() {
127
- return forceExit;
128
- }
129
- function getFullBuildInlineConfig(config) {
130
- const configFromCli = !isViteCliCall() ? null : getViteConfigFromCli();
131
- if (config._viteConfigFromUserEnhanced) {
132
- return config._viteConfigFromUserEnhanced;
133
- }
134
- else {
135
- return {
136
- ...configFromCli,
137
- configFile: configFromCli?.configFile || config.configFile,
138
- root: config.root,
139
- build: {
140
- ...configFromCli?.build,
141
- },
142
- };
143
- }
144
- }
@@ -1,5 +0,0 @@
1
- export { getVirtualFileEntry };
2
- import type { ResolvedConfig } from 'vite';
3
- declare function getVirtualFileEntry(id: string, options: {
4
- ssr?: boolean;
5
- } | undefined, config: ResolvedConfig, isDev: boolean): Promise<string>;
@@ -1,3 +0,0 @@
1
- export { getVirtualFilePageConfigLazy };
2
- import type { ResolvedConfig } from 'vite';
3
- declare function getVirtualFilePageConfigLazy(id: string, isDev: boolean, config: ResolvedConfig): Promise<string>;
@@ -1,2 +0,0 @@
1
- export { getVirtualFilePageConfigsEager };
2
- declare function getVirtualFilePageConfigsEager(isForClientSide: boolean, isDev: boolean, id: string, isClientRouting: boolean): Promise<string>;