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
@@ -16,8 +16,8 @@ const handleAssetsManifest_js_1 = require("./pluginBuild/handleAssetsManifest.js
16
16
  const resolveVikeConfigInternal_js_1 = require("../shared/resolveVikeConfigInternal.js");
17
17
  const assertV1Design_js_1 = require("../../shared/assertV1Design.js");
18
18
  const normalizeId_js_1 = require("../shared/normalizeId.js");
19
- const isViteServerBuild_js_1 = require("../shared/isViteServerBuild.js");
20
- const getPageAssets_js_1 = require("../../runtime/renderPage/getPageAssets.js");
19
+ const isViteServerSide_js_1 = require("../shared/isViteServerSide.js");
20
+ const retrievePageAssetsProd_js_1 = require("../../runtime/renderPage/getPageAssets/retrievePageAssetsProd.js");
21
21
  const extractAssetsRE = /(\?|&)extractAssets(?:&|$)/;
22
22
  exports.extractAssetsRE = extractAssetsRE;
23
23
  const rawRE = /(\?|&)raw(?:&|$)/;
@@ -45,9 +45,9 @@ function pluginExtractAssets() {
45
45
  (0, assertV1Design_js_1.assertV1Design)(vikeConfig._pageConfigs, true);
46
46
  (0, utils_js_1.assert)(false);
47
47
  }
48
- const includeAssetsImportedByServer = (0, getPageAssets_js_1.resolveIncludeAssetsImportedByServer)(vikeConfig.config);
48
+ const includeAssetsImportedByServer = (0, retrievePageAssetsProd_js_1.resolveIncludeAssetsImportedByServer)(vikeConfig.config);
49
49
  (0, utils_js_1.assert)(includeAssetsImportedByServer);
50
- (0, utils_js_1.assert)(!(0, isViteServerBuild_js_1.isViteServerBuild_safe)(config, options));
50
+ (0, utils_js_1.assert)(!(0, isViteServerSide_js_1.isViteServerSide_extraSafe)(config, this.environment, options));
51
51
  const importStatements = await (0, parseEsModule_js_1.getImportStatements)(src);
52
52
  const moduleNames = getImportedModules(importStatements);
53
53
  const code = moduleNames.map((moduleName) => `import '${moduleName}';`).join('\n');
@@ -64,7 +64,7 @@ function pluginExtractAssets() {
64
64
  // - Vite's `vite:resolve` plugin; https://github.com/vitejs/vite/blob/d649daba7682791178b711d9a3e44a6b5d00990c/packages/vite/src/node/plugins/resolve.ts#L105
65
65
  enforce: 'pre',
66
66
  async resolveId(source, importer, options) {
67
- if ((0, isViteServerBuild_js_1.isViteServerBuild_safe)(config, options)) {
67
+ if ((0, isViteServerSide_js_1.isViteServerSide_extraSafe)(config, this.environment, options)) {
68
68
  // When building for the server, there should never be a `?extractAssets` query
69
69
  (0, utils_js_1.assert)(!extractAssetsRE.test(source));
70
70
  (0, utils_js_1.assert)(importer === undefined || !extractAssetsRE.test(importer));
@@ -79,7 +79,7 @@ function pluginExtractAssets() {
79
79
  if (!extractAssetsRE.test(importer)) {
80
80
  return;
81
81
  }
82
- const includeAssetsImportedByServer = (0, getPageAssets_js_1.resolveIncludeAssetsImportedByServer)(vikeConfig.config);
82
+ const includeAssetsImportedByServer = (0, retrievePageAssetsProd_js_1.resolveIncludeAssetsImportedByServer)(vikeConfig.config);
83
83
  (0, utils_js_1.assert)(includeAssetsImportedByServer);
84
84
  let resolution = null;
85
85
  try {
@@ -141,7 +141,7 @@ function pluginExtractAssets() {
141
141
  async configResolved(config_) {
142
142
  config = config_;
143
143
  vikeConfig = await (0, resolveVikeConfigInternal_js_1.getVikeConfigInternal)();
144
- isFixEnabled = (0, handleAssetsManifest_js_1.handleAssetsManifest_isFixEnabled)(config);
144
+ isFixEnabled = (0, handleAssetsManifest_js_1.handleAssetsManifest_isFixEnabled)();
145
145
  if (!isFixEnabled) {
146
146
  // https://github.com/vikejs/vike/issues/1060
147
147
  (0, utils_js_1.assertUsage)(!config.plugins.find((p) => p.name === 'vite-tsconfig-paths'), 'vite-tsconfig-paths not supported, remove it and use vite.config.js#resolve.alias instead');
@@ -6,19 +6,20 @@ exports.isUsingClientRouter = isUsingClientRouter;
6
6
  const utils_js_1 = require("../utils.js");
7
7
  const parseEsModule_js_1 = require("../shared/parseEsModule.js");
8
8
  const normalizeId_js_1 = require("../shared/normalizeId.js");
9
- const isViteServerBuild_js_1 = require("../shared/isViteServerBuild.js");
9
+ const isViteServerSide_js_1 = require("../shared/isViteServerSide.js");
10
10
  const extractExportNamesRE = /(\?|&)extractExportNames(?:&|$)/;
11
11
  exports.extractExportNamesRE = extractExportNamesRE;
12
12
  const debug = (0, utils_js_1.createDebugger)('vike:pluginExtractExportNames');
13
13
  const globalObject = (0, utils_js_1.getGlobalObject)('plugins/pluginExtractExportNames.ts', {});
14
14
  function pluginExtractExportNames() {
15
15
  let isDev = false;
16
+ let config;
16
17
  return {
17
18
  name: 'vike:pluginExtractExportNames',
18
19
  enforce: 'post',
19
20
  async transform(src, id, options) {
20
21
  id = (0, normalizeId_js_1.normalizeId)(id);
21
- const isClientSide = !(0, isViteServerBuild_js_1.isViteServerBuild_options)(options);
22
+ const isClientSide = !(0, isViteServerSide_js_1.isViteServerSide_extraSafe)(config, this.environment, options);
22
23
  if (extractExportNamesRE.test(id)) {
23
24
  const code = await getExtractExportNamesCode(src, isClientSide, !isDev, id);
24
25
  debug('id ' + id, ['result:\n' + code.code.trim(), 'src:\n' + src.trim()]);
@@ -28,6 +29,9 @@ function pluginExtractExportNames() {
28
29
  configureServer() {
29
30
  isDev = true;
30
31
  },
32
+ configResolved(config_) {
33
+ config = config_;
34
+ },
31
35
  config() {
32
36
  if (debug.isActivated) {
33
37
  return { logLevel: 'silent' };
@@ -12,6 +12,7 @@ const getFilePath_js_1 = require("../shared/getFilePath.js");
12
12
  const parseEsModule_js_1 = require("../shared/parseEsModule.js");
13
13
  const normalizeId_js_1 = require("../shared/normalizeId.js");
14
14
  const resolveVikeConfigInternal_js_1 = require("../shared/resolveVikeConfigInternal.js");
15
+ const isViteServerSide_js_1 = require("../shared/isViteServerSide.js");
15
16
  function pluginFileEnv() {
16
17
  let config;
17
18
  let viteDevServer;
@@ -33,7 +34,7 @@ function pluginFileEnv() {
33
34
  const importers = Array.from(moduleInfo.importers)
34
35
  .map((m) => m.id)
35
36
  .filter((id) => id !== null);
36
- assertFileEnv(id, !!options?.ssr, importers,
37
+ assertFileEnv(id, (0, isViteServerSide_js_1.isViteServerSide_extraSafe)(config, this.environment, options), importers,
37
38
  // In dev, we only show a warning because we don't want to disrupt when the user plays with settings such as [ssr](https://vike.dev/ssr).
38
39
  true);
39
40
  },
@@ -45,7 +46,7 @@ function pluginFileEnv() {
45
46
  return;
46
47
  if (skip(id))
47
48
  return;
48
- const isServerSide = !!options?.ssr;
49
+ const isServerSide = (0, isViteServerSide_js_1.isViteServerSide_extraSafe)(config, this.environment, options);
49
50
  if (!isWrongEnv(id, isServerSide))
50
51
  return;
51
52
  const { importers } = this.getModuleInfo(id);
@@ -71,7 +72,7 @@ function pluginFileEnv() {
71
72
  */
72
73
  return;
73
74
  }
74
- assertFileEnv(moduleId, !!config.build.ssr, importers, false);
75
+ assertFileEnv(moduleId, (0, isViteServerSide_js_1.isViteServerSide)(config, this.environment), importers, false);
75
76
  });
76
77
  },
77
78
  configResolved(config_) {
@@ -2,8 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.pluginNonRunnableDev = pluginNonRunnableDev;
4
4
  const utils_js_1 = require("../utils.js");
5
- const resolveClientEntriesDev_js_1 = require("../shared/resolveClientEntriesDev.js");
6
- const retrieveAssetsDev_js_1 = require("../../runtime/renderPage/getPageAssets/retrieveAssetsDev.js");
5
+ const retrievePageAssetsDev_js_1 = require("../../runtime/renderPage/getPageAssets/retrievePageAssetsDev.js");
7
6
  const getViteConfigRuntime_js_1 = require("../shared/getViteConfigRuntime.js");
8
7
  const getMagicString_js_1 = require("../shared/getMagicString.js");
9
8
  (0, utils_js_1.assertIsNotProductionRuntime)();
@@ -12,11 +11,8 @@ function getViteRpcFunctions(viteDevServer) {
12
11
  async transformIndexHtmlRPC(html) {
13
12
  return await viteDevServer.transformIndexHtml('/', html);
14
13
  },
15
- // TODO/now: dedupe retrievePageAssetsDevRPC and retrievePageAssetsDev()
16
14
  async retrievePageAssetsDevRPC(clientDependencies, clientEntries) {
17
- const clientEntriesSrc = clientEntries.map((clientEntry) => (0, resolveClientEntriesDev_js_1.resolveClientEntriesDev)(clientEntry, viteDevServer));
18
- const assetUrls = await (0, retrieveAssetsDev_js_1.retrieveAssetsDev)(clientDependencies, viteDevServer);
19
- return { clientEntriesSrc, assetUrls };
15
+ return await (0, retrievePageAssetsDev_js_1.retrievePageAssetsDev)(viteDevServer, clientDependencies, clientEntries);
20
16
  },
21
17
  async getViteConfigRuntimeRPC() {
22
18
  return (0, getViteConfigRuntime_js_1.getViteConfigRuntime)(viteDevServer.config);
@@ -24,7 +20,8 @@ function getViteRpcFunctions(viteDevServer) {
24
20
  };
25
21
  }
26
22
  function pluginNonRunnableDev() {
27
- const runtimeGlobalContextFilePath = (0, utils_js_1.requireResolveVikeDistFile)('dist/esm/node/runtime/globalContext.js');
23
+ const distFileIsNonRunnableDev = (0, utils_js_1.requireResolveDistFile)('dist/esm/utils/isNonRunnableDev.js');
24
+ const distFileGlobalContext = (0, utils_js_1.requireResolveDistFile)('dist/esm/node/runtime/globalContext.js');
28
25
  let config;
29
26
  return {
30
27
  name: 'vike:pluginNonRunnableDev',
@@ -37,14 +34,17 @@ function pluginNonRunnableDev() {
37
34
  transform(code, id) {
38
35
  if (!config._isDev)
39
36
  return;
40
- if (id !== runtimeGlobalContextFilePath)
37
+ if (id !== distFileIsNonRunnableDev && id !== distFileGlobalContext)
38
+ return;
39
+ if ((0, utils_js_1.isRunnableDevEnvironment)(this.environment))
41
40
  return;
42
- const isNonRunnableDev = !(0, utils_js_1.isRunnableDevEnvironment)(this.environment);
43
41
  const { magicString, getMagicStringResult } = (0, getMagicString_js_1.getMagicString)(code, id);
44
- if (isNonRunnableDev) {
42
+ if (id === distFileIsNonRunnableDev) {
43
+ magicString.replaceAll('__VIKE__IS_NON_RUNNABLE_DEV', JSON.stringify(true));
44
+ }
45
+ if (id === distFileGlobalContext) {
45
46
  magicString.replaceAll('__VIKE__DYNAMIC_IMPORT', 'import');
46
47
  }
47
- magicString.replaceAll('__VIKE__IS_NON_RUNNABLE_DEV', JSON.stringify(isNonRunnableDev));
48
48
  return getMagicStringResult();
49
49
  },
50
50
  };
@@ -19,12 +19,9 @@ function pluginPreview() {
19
19
  return {
20
20
  name: 'vike:pluginPreview',
21
21
  apply: utils_js_1.applyPreview,
22
- config(config) {
22
+ config() {
23
23
  return {
24
24
  appType: 'custom',
25
- build: {
26
- outDir: (0, getOutDirs_js_1.resolveOutDir)(config),
27
- },
28
25
  };
29
26
  },
30
27
  async configResolved(config_) {
@@ -51,7 +48,7 @@ function pluginPreview() {
51
48
  },
52
49
  };
53
50
  function assertDist(isPrerenderingEnabledForAllPages) {
54
- const { outDirRoot, outDirClient, outDirServer } = (0, getOutDirs_js_1.getOutDirs)(config);
51
+ const { outDirRoot, outDirClient, outDirServer } = (0, getOutDirs_js_1.getOutDirs)(config, undefined);
55
52
  const dirS = [outDirRoot, outDirClient];
56
53
  if (!isPrerenderingEnabledForAllPages)
57
54
  dirS.push(outDirServer);
@@ -60,11 +57,11 @@ function pluginPreview() {
60
57
  });
61
58
  }
62
59
  function addStaticAssetsMiddleware(middlewares) {
63
- const { outDirClient } = (0, getOutDirs_js_1.getOutDirs)(config);
60
+ const { outDirClient } = (0, getOutDirs_js_1.getOutDirs)(config, undefined);
64
61
  middlewares.use((0, sirv_1.default)(outDirClient));
65
62
  }
66
63
  function addStatic404Middleware(middlewares) {
67
- const { outDirClient } = (0, getOutDirs_js_1.getOutDirs)(config);
64
+ const { outDirClient } = (0, getOutDirs_js_1.getOutDirs)(config, undefined);
68
65
  middlewares.use(config.base, (_, res, next) => {
69
66
  const file = node_path_1.default.posix.join(outDirClient, './404.html');
70
67
  if (node_fs_1.default.existsSync(file)) {
@@ -1,14 +1,10 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.pluginReplaceConstants = pluginReplaceConstants;
7
- const magic_string_1 = __importDefault(require("magic-string"));
8
4
  const utils_js_1 = require("../utils.js");
9
5
  const normalizeId_js_1 = require("../shared/normalizeId.js");
10
- const isViteServerBuild_js_1 = require("../shared/isViteServerBuild.js");
11
- const applyRegExWithMagicString_js_1 = require("../shared/applyRegExWithMagicString.js");
6
+ const isViteServerSide_js_1 = require("../shared/isViteServerSide.js");
7
+ const getMagicString_js_1 = require("../shared/getMagicString.js");
12
8
  function pluginReplaceConstants() {
13
9
  let config;
14
10
  return {
@@ -35,24 +31,21 @@ function pluginReplaceConstants() {
35
31
  // @ts-expect-error
36
32
  if (config._skipVikeReplaceConstants?.(id))
37
33
  return;
38
- const magicString = new magic_string_1.default(code);
34
+ const { magicString, getMagicStringResult } = (0, getMagicString_js_1.getMagicString)(code, id);
39
35
  const constantsMap = [];
40
36
  constantsMap.push({
41
37
  constants: ['pageContext.isClientSide', 'globalContext.isClientSide', 'pageContext.globalContext.isClientSide'],
42
- replacement: !(0, isViteServerBuild_js_1.isViteServerBuild_safe)(config, options),
38
+ replacement: !(0, isViteServerSide_js_1.isViteServerSide_extraSafe)(config, this.environment, options),
43
39
  });
44
40
  constantsMap.forEach(({ constants, replacement }) => {
45
41
  if (!constants.some((c) => code.includes(c)))
46
42
  return;
47
43
  const regExp = getConstantRegExp(constants);
48
- (0, applyRegExWithMagicString_js_1.applyRegExpWithMagicString)(magicString, regExp, replacement);
44
+ magicString.replaceAll(regExp, JSON.stringify(replacement));
49
45
  });
50
46
  if (!magicString.hasChanged())
51
47
  return null;
52
- return {
53
- code: magicString.toString(),
54
- map: magicString.generateMap({ hires: true, source: id }),
55
- };
48
+ return getMagicStringResult();
56
49
  },
57
50
  };
58
51
  }
@@ -29,7 +29,7 @@ function pluginSetGlobalContext() {
29
29
  order: 'pre',
30
30
  handler(_, env) {
31
31
  const isViteDev = (0, utils_js_1.isDevCheck)(env);
32
- (0, globalContext_js_1.setGlobalContext_isProduction)(!isViteDev);
32
+ (0, globalContext_js_1.setGlobalContext_isProductionAccordingToVite)(!isViteDev);
33
33
  (0, utils_js_1.markSetup_isViteDev)(isViteDev);
34
34
  },
35
35
  },
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getVirtualFilePageConfigsEager = getVirtualFilePageConfigsEager;
4
- const virtualFilePageConfigLazy_js_1 = require("../../../shared/virtualFiles/virtualFilePageConfigLazy.js");
3
+ exports.generateVirtualFileGlobalEntry = generateVirtualFileGlobalEntry;
4
+ const virtualFileId_js_1 = require("../../../shared/virtualFileId.js");
5
5
  const debug_js_1 = require("./debug.js");
6
6
  const resolveVikeConfigInternal_js_1 = require("../../shared/resolveVikeConfigInternal.js");
7
7
  const serializeConfigValues_js_1 = require("../../../../shared/page-configs/serialize/serializeConfigValues.js");
8
- async function getVirtualFilePageConfigsEager(isForClientSide, isDev, id, isClientRouting) {
8
+ async function generateVirtualFileGlobalEntry(isForClientSide, isDev, id, isClientRouting) {
9
9
  const vikeConfig = await (0, resolveVikeConfigInternal_js_1.getVikeConfigInternal)(true);
10
10
  const { _pageConfigs: pageConfigs, _pageConfigGlobal: pageConfigGlobal } = vikeConfig;
11
11
  return getCode(pageConfigs, pageConfigGlobal, isForClientSide, isDev, id, isClientRouting);
@@ -36,9 +36,8 @@ function getCodePageConfigsSerialized(pageConfigs, isForClientSide, isClientRout
36
36
  lines.push(` pageId: ${JSON.stringify(pageId)},`);
37
37
  lines.push(` isErrorPage: ${JSON.stringify(isErrorPage)},`);
38
38
  lines.push(` routeFilesystem: ${JSON.stringify(routeFilesystem)},`);
39
- const virtualFileId = JSON.stringify((0, virtualFilePageConfigLazy_js_1.getVirtualFileIdPageConfigLazy)(pageId, isForClientSide));
40
- const load = `() => ({ moduleId: ${virtualFileId}, moduleExports: import(${virtualFileId}) })`;
41
- lines.push(` loadConfigLazy: ${load},`);
39
+ const virtualFileId = JSON.stringify((0, virtualFileId_js_1.generateVirtualFileId)({ type: 'page-entry', pageId, isForClientSide }));
40
+ lines.push(` loadVirtualFilePageEntry: () => ({ moduleId: ${virtualFileId}, moduleExportsPromise: import(${virtualFileId}) }),`);
42
41
  lines.push(` configValuesSerialized: {`);
43
42
  lines.push(...(0, serializeConfigValues_js_1.serializeConfigValues)(pageConfig, importStatements, filesEnv, { isForClientSide, isClientRouting, isDev }, ' ', true));
44
43
  lines.push(` },`);
@@ -3,22 +3,22 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getVirtualFileEntry = getVirtualFileEntry;
6
+ exports.generateVirtualFileGlobalEntryWithOldDesign = generateVirtualFileGlobalEntryWithOldDesign;
7
7
  const utils_js_1 = require("../../utils.js");
8
- const virtualFileEntry_js_1 = require("../../../shared/virtualFiles/virtualFileEntry.js");
8
+ const virtualFileId_js_1 = require("../../../shared/virtualFileId.js");
9
9
  const vite_1 = require("vite");
10
10
  const fileTypes_js_1 = require("../../../../shared/getPageFiles/fileTypes.js");
11
11
  const node_path_1 = __importDefault(require("node:path"));
12
- const getVirtualFilePageConfigsEager_js_1 = require("./getVirtualFilePageConfigsEager.js");
12
+ const generateVirtualFileGlobalEntry_js_1 = require("./generateVirtualFileGlobalEntry.js");
13
13
  const resolveVikeConfigInternal_js_1 = require("../../shared/resolveVikeConfigInternal.js");
14
14
  const getOutDirs_js_1 = require("../../shared/getOutDirs.js");
15
- const isViteServerBuild_js_1 = require("../../shared/isViteServerBuild.js");
16
- const getPageAssets_js_1 = require("../../../runtime/renderPage/getPageAssets.js");
17
- async function getVirtualFileEntry(id, options, config, isDev) {
18
- const idParsed = (0, virtualFileEntry_js_1.isVirtualFileIdEntry)(id);
19
- (0, utils_js_1.assert)(idParsed);
15
+ const isViteServerSide_js_1 = require("../../shared/isViteServerSide.js");
16
+ const retrievePageAssetsProd_js_1 = require("../../../runtime/renderPage/getPageAssets/retrievePageAssetsProd.js");
17
+ async function generateVirtualFileGlobalEntryWithOldDesign(id, options, config, env, isDev) {
18
+ const idParsed = (0, virtualFileId_js_1.parseVirtualFileId)(id);
19
+ (0, utils_js_1.assert)(idParsed && idParsed.type === 'global-entry');
20
20
  const { isForClientSide, isClientRouting } = idParsed;
21
- (0, utils_js_1.assert)(isForClientSide === !(0, isViteServerBuild_js_1.isViteServerBuild_options)(options));
21
+ (0, utils_js_1.assert)(isForClientSide === !(0, isViteServerSide_js_1.isViteServerSide_extraSafe)(config, env, options));
22
22
  const code = await getCode(config, isForClientSide, isClientRouting, isDev, id);
23
23
  return code;
24
24
  }
@@ -71,7 +71,7 @@ export const pageFilesExportNamesEager = {};
71
71
  export const pageFilesList = [];
72
72
  export const neverLoaded = {};
73
73
 
74
- ${await (0, getVirtualFilePageConfigsEager_js_1.getVirtualFilePageConfigsEager)(isForClientSide, isDev, id, isClientRouting)}
74
+ ${await (0, generateVirtualFileGlobalEntry_js_1.generateVirtualFileGlobalEntry)(isForClientSide, isDev, id, isClientRouting)}
75
75
 
76
76
  `;
77
77
  // We still use import.meta.glob() when using th V1 design in order to not break the V1 design deprecation warning
@@ -96,7 +96,7 @@ ${await (0, getVirtualFilePageConfigsEager_js_1.getVirtualFilePageConfigsEager)(
96
96
  fileContent += getGlobs(globRoots, isBuild, fileType, 'extractExportNames', isV1Design);
97
97
  }
98
98
  });
99
- const includeAssetsImportedByServer = (0, getPageAssets_js_1.resolveIncludeAssetsImportedByServer)(vikeConfig.config);
99
+ const includeAssetsImportedByServer = (0, retrievePageAssetsProd_js_1.resolveIncludeAssetsImportedByServer)(vikeConfig.config);
100
100
  if (includeAssetsImportedByServer && isForClientSide) {
101
101
  fileContent += getGlobs(globRoots, isBuild, '.page.server', 'extractAssets', isV1Design);
102
102
  }
@@ -173,7 +173,7 @@ function getGlobRoots(config) {
173
173
  const globRoots = [
174
174
  {
175
175
  includeDir: '/',
176
- excludeDir: node_path_1.default.posix.relative(config.root, (0, getOutDirs_js_1.getOutDirs)(config).outDirRoot),
176
+ excludeDir: node_path_1.default.posix.relative(config.root, (0, getOutDirs_js_1.getOutDirs)(config, undefined).outDirRoot),
177
177
  },
178
178
  ];
179
179
  return globRoots;
@@ -1,19 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getVirtualFilePageConfigLazy = getVirtualFilePageConfigLazy;
4
- // TODO/now: rename file to generateVirtualFileEntryPage.ts
3
+ exports.generateVirtualFilePageEntry = generateVirtualFilePageEntry;
5
4
  const utils_js_1 = require("../../utils.js");
6
- const virtualFilePageConfigLazy_js_1 = require("../../../shared/virtualFiles/virtualFilePageConfigLazy.js");
5
+ const virtualFileId_js_1 = require("../../../shared/virtualFileId.js");
7
6
  const resolveVikeConfigInternal_js_1 = require("../../shared/resolveVikeConfigInternal.js");
8
7
  const extractAssetsQuery_js_1 = require("../../../shared/extractAssetsQuery.js");
9
8
  const debug_js_1 = require("./debug.js");
10
9
  const serializeConfigValues_js_1 = require("../../../../shared/page-configs/serialize/serializeConfigValues.js");
11
10
  const handleAssetsManifest_js_1 = require("../pluginBuild/handleAssetsManifest.js");
12
11
  const getConfigValueBuildTime_js_1 = require("../../../../shared/page-configs/getConfigValueBuildTime.js");
13
- const getPageAssets_js_1 = require("../../../runtime/renderPage/getPageAssets.js");
14
- async function getVirtualFilePageConfigLazy(id, isDev, config) {
15
- const result = (0, virtualFilePageConfigLazy_js_1.isVirtualFileIdPageConfigLazy)(id);
16
- (0, utils_js_1.assert)(result);
12
+ const retrievePageAssetsProd_js_1 = require("../../../runtime/renderPage/getPageAssets/retrievePageAssetsProd.js");
13
+ async function generateVirtualFilePageEntry(id, isDev) {
14
+ const result = (0, virtualFileId_js_1.parseVirtualFileId)(id);
15
+ (0, utils_js_1.assert)(result && result.type === 'page-entry');
17
16
  /* This assertion fails when using includeAssetsImportedByServer
18
17
  {
19
18
  const isForClientSide = !config.build.ssr
@@ -35,11 +34,11 @@ async function getVirtualFilePageConfigLazy(id, isDev, config) {
35
34
  throw (0, utils_js_1.getProjectError)('Outdated request');
36
35
  //*/
37
36
  }
38
- const code = getLoadConfigLazy(pageConfig, isForClientSide, pageId, (0, getPageAssets_js_1.resolveIncludeAssetsImportedByServer)(vikeConfig.config), config, isDev);
37
+ const code = getCode(pageConfig, isForClientSide, pageId, (0, retrievePageAssetsProd_js_1.resolveIncludeAssetsImportedByServer)(vikeConfig.config), isDev);
39
38
  (0, debug_js_1.debug)(id, isForClientSide ? 'CLIENT-SIDE' : 'SERVER-SIDE', code);
40
39
  return code;
41
40
  }
42
- function getLoadConfigLazy(pageConfig, isForClientSide, pageId, includeAssetsImportedByServer, config, isDev) {
41
+ function getCode(pageConfig, isForClientSide, pageId, includeAssetsImportedByServer, isDev) {
43
42
  const lines = [];
44
43
  const importStatements = [];
45
44
  const filesEnv = new Map();
@@ -47,8 +46,8 @@ function getLoadConfigLazy(pageConfig, isForClientSide, pageId, includeAssetsImp
47
46
  lines.push('export const configValuesSerialized = {');
48
47
  lines.push(...(0, serializeConfigValues_js_1.serializeConfigValues)(pageConfig, importStatements, filesEnv, { isForClientSide, isClientRouting, isDev }, '', false));
49
48
  lines.push('};');
50
- if (!(0, handleAssetsManifest_js_1.handleAssetsManifest_isFixEnabled)(config) && includeAssetsImportedByServer && isForClientSide && !isDev) {
51
- importStatements.push(`import '${(0, extractAssetsQuery_js_1.extractAssetsAddQuery)((0, virtualFilePageConfigLazy_js_1.getVirtualFileIdPageConfigLazy)(pageId, false))}'`);
49
+ if (!(0, handleAssetsManifest_js_1.handleAssetsManifest_isFixEnabled)() && includeAssetsImportedByServer && isForClientSide && !isDev) {
50
+ importStatements.push(`import '${(0, extractAssetsQuery_js_1.extractAssetsAddQuery)((0, virtualFileId_js_1.generateVirtualFileId)({ type: 'page-entry', pageId, isForClientSide: false }))}'`);
52
51
  }
53
52
  const code = [...importStatements, ...lines].join('\n');
54
53
  return code;
@@ -1,30 +1,49 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getConfigValueSourcesRelevant = getConfigValueSourcesRelevant;
4
+ exports.getConfigValueSourceRelevantAnyEnv = getConfigValueSourceRelevantAnyEnv;
4
5
  exports.isRuntimeEnvMatch = isRuntimeEnvMatch;
6
+ exports.isConfigSourceValueNull = isConfigSourceValueNull;
5
7
  const utils_js_1 = require("../../utils.js");
8
+ (0, utils_js_1.assertIsNotBrowser)();
6
9
  function getConfigValueSourcesRelevant(configName, runtimeEnv, pageConfig) {
7
10
  const configDef = pageConfig.configDefinitions[configName];
8
11
  (0, utils_js_1.assert)(configDef);
9
12
  let sourcesRelevant = pageConfig.configValueSources[configName];
10
13
  if (!sourcesRelevant)
11
14
  return [];
12
- if (!configDef.cumulative) {
15
+ // Ignore configs with value `undefined`
16
+ sourcesRelevant = sourcesRelevant.filter((source) => !isConfigSourceValueUndefined(source));
17
+ // Environment filtering
18
+ sourcesRelevant = sourcesRelevant.filter((source) => isRuntimeEnvMatch(source.configEnv, runtimeEnv));
19
+ // Overriding - non-cumulative configs
20
+ if (!configDef.cumulative && sourcesRelevant.length > 1) {
13
21
  const source = sourcesRelevant[0];
14
- if (source) {
15
- sourcesRelevant = [source];
16
- }
17
- else {
18
- (0, utils_js_1.assert)(sourcesRelevant.length === 0);
19
- }
22
+ (0, utils_js_1.assert)(source);
23
+ sourcesRelevant = [source];
20
24
  }
21
- else {
22
- // isOverridden() must be called before isRuntimeEnvMatch() is called (otherwise isOverridden() will return a wrong value)
23
- sourcesRelevant = sourcesRelevant.filter((source) => !isOverridden(source, configName, pageConfig));
25
+ // Overriding - cumulative configs
26
+ if (configDef.cumulative && sourcesRelevant.length > 0) {
27
+ sourcesRelevant = applyFilenameSuffix(sourcesRelevant);
24
28
  }
25
- sourcesRelevant = sourcesRelevant.filter((source) => isRuntimeEnvMatch(source.configEnv, runtimeEnv));
26
29
  return sourcesRelevant;
27
30
  }
31
+ function getConfigValueSourceRelevantAnyEnv(configName, pageConfig) {
32
+ const configDef = pageConfig.configDefinitions[configName];
33
+ (0, utils_js_1.assert)(configDef);
34
+ (0, utils_js_1.assert)(!configDef.cumulative); // So far, this function is only used by non-cumulative configs
35
+ let sourcesRelevant = pageConfig.configValueSources[configName];
36
+ if (!sourcesRelevant)
37
+ return null;
38
+ // Ignore configs with value `undefined`
39
+ sourcesRelevant = sourcesRelevant.filter((source) => !isConfigSourceValueUndefined(source));
40
+ const source = sourcesRelevant[0];
41
+ if (!source)
42
+ return null;
43
+ if (isConfigSourceValueNull(source))
44
+ return null;
45
+ return source;
46
+ }
28
47
  function isRuntimeEnvMatch(configEnv, runtimeEnv) {
29
48
  if ('isForConfig' in runtimeEnv)
30
49
  return !!configEnv.config;
@@ -54,14 +73,25 @@ function isRuntimeEnvMatch(configEnv, runtimeEnv) {
54
73
  }
55
74
  return true;
56
75
  }
57
- function isOverridden(source, configName, pageConfig) {
58
- const configDef = pageConfig.configDefinitions[configName];
59
- (0, utils_js_1.assert)(configDef);
60
- if (configDef.cumulative)
61
- return false;
62
- const sources = pageConfig.configValueSources[configName];
63
- (0, utils_js_1.assert)(sources);
64
- const idx = sources.indexOf(source);
65
- (0, utils_js_1.assert)(idx >= 0);
66
- return idx > 0;
76
+ // Setting a config to `undefined` should be equivalent to not setting it at all
77
+ function isConfigSourceValueUndefined(source) {
78
+ if (!source.valueIsLoaded)
79
+ return null;
80
+ return source.value === undefined;
81
+ }
82
+ // Setting a config to `null` enables the user to suppress inherited config by overriding it with `null` (this only works when setting the config value to `null` inside a +config.js file — it doesn't work when setting the config value to `null` with a +{configName}.js file).
83
+ function isConfigSourceValueNull(source) {
84
+ if (!source.valueIsLoaded)
85
+ return null;
86
+ return source.value === null;
87
+ }
88
+ function applyFilenameSuffix(sourcesRelevant) {
89
+ const getFileName = (source) => source.plusFile?.filePath.fileName ?? '';
90
+ // Apply `clear`: truncate at first clear file
91
+ const clearIndex = sourcesRelevant.findIndex((source) => getFileName(source).includes('.clear.'));
92
+ if (clearIndex !== -1)
93
+ sourcesRelevant = sourcesRelevant.slice(0, clearIndex + 1);
94
+ // Apply `default`: exclude defaults if any non-defaults exist, otherwise keep only first default
95
+ const nonDefaults = sourcesRelevant.filter((source) => !getFileName(source).includes('.default.'));
96
+ return nonDefaults.length > 0 ? nonDefaults : sourcesRelevant.slice(0, 1);
67
97
  }
@@ -5,11 +5,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.pluginVirtualFiles = pluginVirtualFiles;
7
7
  const vite_1 = require("vite");
8
- const getVirtualFilePageConfigLazy_js_1 = require("./pluginVirtualFiles/getVirtualFilePageConfigLazy.js");
9
- const getVirtualFileEntry_js_1 = require("./pluginVirtualFiles/getVirtualFileEntry.js");
8
+ const generateVirtualFilePageEntry_js_1 = require("./pluginVirtualFiles/generateVirtualFilePageEntry.js");
9
+ const generateVirtualFileGlobalEntryWithOldDesign_js_1 = require("./pluginVirtualFiles/generateVirtualFileGlobalEntryWithOldDesign.js");
10
10
  const utils_js_1 = require("../utils.js");
11
- const virtualFilePageConfigLazy_js_1 = require("../../shared/virtualFiles/virtualFilePageConfigLazy.js");
12
- const virtualFileEntry_js_1 = require("../../shared/virtualFiles/virtualFileEntry.js");
11
+ const virtualFileId_js_1 = require("../../shared/virtualFileId.js");
13
12
  const resolveVikeConfigInternal_js_1 = require("../shared/resolveVikeConfigInternal.js");
14
13
  const picocolors_1 = __importDefault(require("@brillout/picocolors"));
15
14
  const loggerNotProd_js_1 = require("../shared/loggerNotProd.js");
@@ -49,13 +48,16 @@ function pluginVirtualFiles() {
49
48
  id = (0, utils_js_1.removeVirtualFileIdPrefix)(id);
50
49
  const isDev = config._isDev;
51
50
  (0, utils_js_1.assert)(typeof isDev === 'boolean');
52
- if ((0, virtualFilePageConfigLazy_js_1.isVirtualFileIdPageConfigLazy)(id)) {
53
- const code = await (0, getVirtualFilePageConfigLazy_js_1.getVirtualFilePageConfigLazy)(id, isDev, config);
54
- return code;
55
- }
56
- if ((0, virtualFileEntry_js_1.isVirtualFileIdEntry)(id)) {
57
- const code = await (0, getVirtualFileEntry_js_1.getVirtualFileEntry)(id, options, config, isDev);
58
- return code;
51
+ const idParsed = (0, virtualFileId_js_1.parseVirtualFileId)(id);
52
+ if (idParsed) {
53
+ if (idParsed.type === 'page-entry') {
54
+ const code = await (0, generateVirtualFilePageEntry_js_1.generateVirtualFilePageEntry)(id, isDev);
55
+ return code;
56
+ }
57
+ if (idParsed.type === 'global-entry') {
58
+ const code = await (0, generateVirtualFileGlobalEntryWithOldDesign_js_1.generateVirtualFileGlobalEntryWithOldDesign)(id, options, config, this.environment, isDev);
59
+ return code;
60
+ }
59
61
  }
60
62
  },
61
63
  configureServer(server) {
@@ -168,7 +170,7 @@ function reloadConfig(filePath, config, op, server) {
168
170
  }
169
171
  function getVikeVirtualFiles(server) {
170
172
  const vikeVirtualFiles = Array.from(server.moduleGraph.urlToModuleMap.keys())
171
- .filter((url) => (0, virtualFilePageConfigLazy_js_1.isVirtualFileIdPageConfigLazy)(url) || (0, virtualFileEntry_js_1.isVirtualFileIdEntry)(url))
173
+ .filter((url) => (0, virtualFileId_js_1.parseVirtualFileId)(url))
172
174
  .map((url) => {
173
175
  const mod = server.moduleGraph.urlToModuleMap.get(url);
174
176
  (0, utils_js_1.assert)(mod);
@@ -10,7 +10,7 @@ const picocolors_1 = __importDefault(require("@brillout/picocolors"));
10
10
  const getOutDirs_js_1 = require("./getOutDirs.js");
11
11
  async function findPageFiles(config, fileTypes, isDev) {
12
12
  const cwd = config.root;
13
- const { outDirRoot } = (0, getOutDirs_js_1.getOutDirs)(config);
13
+ const { outDirRoot } = (0, getOutDirs_js_1.getOutDirs)(config, undefined);
14
14
  const timeBase = new Date().getTime();
15
15
  let pageFiles = await (0, tinyglobby_1.glob)(fileTypes.map((fileType) => `**/*${fileType}.${utils_js_1.scriptFileExtensionPattern}`), { ignore: ['**/node_modules/**', `${outDirRoot}/**`], cwd, dot: false, expandDirectories: false });
16
16
  pageFiles = pageFiles.map((p) => '/' + (0, utils_js_1.toPosixPath)(p));
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.resolveClientEntriesDev = resolveClientEntriesDev;
3
+ exports.getClientEntrySrcDev = getClientEntrySrcDev;
4
4
  const utils_js_1 = require("../utils.js");
5
5
  (0, utils_js_1.assertIsNotProductionRuntime)();
6
- function resolveClientEntriesDev(clientEntry, viteDevServer) {
6
+ function getClientEntrySrcDev(clientEntry, viteDevServer) {
7
7
  let userRootDir = viteDevServer.config.root;
8
8
  (0, utils_js_1.assert)(userRootDir);
9
9
  userRootDir = (0, utils_js_1.toPosixPath)(userRootDir);
@@ -25,7 +25,7 @@ function resolveClientEntriesDev(clientEntry, viteDevServer) {
25
25
  else {
26
26
  if (clientEntry.startsWith('@@vike/')) {
27
27
  (0, utils_js_1.assert)(clientEntry.endsWith('.js'));
28
- filePath = (0, utils_js_1.requireResolveVikeDistFile)(`dist/esm/${clientEntry.replace('@@vike/dist/esm/', '')}`);
28
+ filePath = (0, utils_js_1.requireResolveDistFile)(`dist/esm/${clientEntry.replace('@@vike/dist/esm/', '')}`);
29
29
  }
30
30
  else {
31
31
  (0, utils_js_1.assertIsImportPathNpmPackage)(clientEntry);
@@ -45,7 +45,9 @@ const loggerNotProd_js_1 = require("./loggerNotProd.js");
45
45
  const errorWithCodeSnippet_js_1 = require("./loggerNotProd/errorWithCodeSnippet.js");
46
46
  const node_util_1 = require("node:util");
47
47
  (0, utils_js_1.assertIsNotProductionRuntime)();
48
- let asyncLocalStorage = null;
48
+ const globalObject = (0, utils_js_1.getGlobalObject)('getHttpRequestAsyncStore.ts', {
49
+ asyncLocalStorage: null,
50
+ });
49
51
  async function installHttpRequestAsyncStore() {
50
52
  let mod;
51
53
  try {
@@ -54,9 +56,9 @@ async function installHttpRequestAsyncStore() {
54
56
  catch {
55
57
  return;
56
58
  }
57
- asyncLocalStorage = new mod.AsyncLocalStorage();
59
+ globalObject.asyncLocalStorage = new mod.AsyncLocalStorage();
58
60
  (0, renderPage_js_1.renderPage_addAsyncHookwrapper)(async (httpRequestId, renderPage) => {
59
- (0, utils_js_1.assert)(asyncLocalStorage);
61
+ (0, utils_js_1.assert)(globalObject.asyncLocalStorage);
60
62
  const loggedErrors = new Set();
61
63
  const markErrorAsLogged = (err) => {
62
64
  loggedErrors.add(err);
@@ -79,15 +81,15 @@ async function installHttpRequestAsyncStore() {
79
81
  shouldErrorBeSwallowed,
80
82
  errorDebugNoteAlreadyShown: false,
81
83
  };
82
- const pageContextReturn = await asyncLocalStorage.run(store, renderPage);
84
+ const pageContextReturn = await globalObject.asyncLocalStorage.run(store, renderPage);
83
85
  return { pageContextReturn };
84
86
  });
85
87
  return;
86
88
  }
87
89
  function getHttpRequestAsyncStore() {
88
- if (asyncLocalStorage === null)
90
+ if (globalObject.asyncLocalStorage === null)
89
91
  return null;
90
- const store = asyncLocalStorage.getStore();
92
+ const store = globalObject.asyncLocalStorage.getStore();
91
93
  (0, utils_js_1.assert)(store === undefined || (0, utils_js_1.isObject)(store));
92
94
  return store;
93
95
  }