vike 0.4.237 → 0.4.238-commit-5762291

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 (299) 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/csp.js +46 -0
  19. package/dist/cjs/node/runtime/globalContext.js +128 -112
  20. package/dist/cjs/node/runtime/html/injectAssets/getHtmlTags.js +11 -8
  21. package/dist/cjs/node/runtime/html/injectAssets/inferHtmlTags.js +5 -2
  22. package/dist/cjs/node/runtime/html/injectAssets/mergeScriptTags.js +4 -2
  23. package/dist/cjs/node/runtime/renderPage/analyzePage.js +6 -4
  24. package/dist/cjs/node/runtime/renderPage/createPageContextServerSide.js +1 -1
  25. package/dist/cjs/node/runtime/renderPage/execHookOnRenderHtml.js +1 -11
  26. package/dist/cjs/node/runtime/renderPage/getPageAssets/getManifestEntry.js +5 -4
  27. package/dist/cjs/node/runtime/renderPage/getPageAssets/{retrieveAssetsDev.js → retrievePageAssetsDev.js} +21 -6
  28. package/dist/cjs/node/runtime/renderPage/getPageAssets/{retrieveAssetsProd.js → retrievePageAssetsProd.js} +19 -2
  29. package/dist/cjs/node/runtime/renderPage/getPageAssets.js +5 -34
  30. package/dist/cjs/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +46 -46
  31. package/dist/cjs/node/runtime/renderPage/{renderPageAlreadyRouted.js → renderPageAfterRoute.js} +3 -4
  32. package/dist/cjs/node/runtime/renderPage.js +18 -16
  33. package/dist/cjs/node/runtime/utils.js +3 -2
  34. package/dist/cjs/node/runtime-dev/createDevMiddleware.js +0 -2
  35. package/dist/cjs/node/shared/virtualFileId.js +110 -0
  36. package/dist/cjs/node/vite/index.js +3 -3
  37. package/dist/cjs/node/vite/onLoad.js +5 -3
  38. package/dist/cjs/node/vite/plugins/pluginBuild/handleAssetsManifest.js +29 -30
  39. package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildApp.js +122 -10
  40. package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildConfig.js +12 -17
  41. package/dist/cjs/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.js +2 -10
  42. package/dist/cjs/node/vite/plugins/pluginBuild/pluginModuleBanner.js +5 -11
  43. package/dist/cjs/node/vite/plugins/pluginBuild/{pluginBuildEntry.js → pluginProdBuildEntry.js} +11 -11
  44. package/dist/cjs/node/vite/plugins/pluginBuild.js +2 -4
  45. package/dist/cjs/node/vite/plugins/pluginDev/determineFsAllowList.js +2 -2
  46. package/dist/cjs/node/vite/plugins/pluginDev/determineOptimizeDeps.js +6 -5
  47. package/dist/cjs/node/vite/plugins/pluginEnvVars.js +6 -13
  48. package/dist/cjs/node/vite/plugins/pluginExtractAssets.js +7 -7
  49. package/dist/cjs/node/vite/plugins/pluginExtractExportNames.js +6 -2
  50. package/dist/cjs/node/vite/plugins/pluginFileEnv.js +4 -3
  51. package/dist/cjs/node/vite/plugins/pluginNonRunnableDev.js +11 -11
  52. package/dist/cjs/node/vite/plugins/pluginPreview.js +4 -7
  53. package/dist/cjs/node/vite/plugins/pluginReplaceConstants.js +6 -13
  54. package/dist/cjs/node/vite/plugins/pluginSetGlobalContext.js +1 -1
  55. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/{getVirtualFilePageConfigsEager.js → generateVirtualFileGlobalEntry.js} +5 -6
  56. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/{getVirtualFileEntry.js → generateVirtualFileGlobalEntryWithOldDesign.js} +12 -12
  57. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/{getVirtualFilePageConfigLazy.js → generateVirtualFilePageEntry.js} +10 -11
  58. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/getConfigValueSourcesRelevant.js +51 -21
  59. package/dist/cjs/node/vite/plugins/pluginVirtualFiles.js +14 -12
  60. package/dist/cjs/node/vite/shared/findPageFiles.js +1 -1
  61. package/dist/cjs/node/vite/shared/{resolveClientEntriesDev.js → getClientEntrySrcDev.js} +3 -3
  62. package/dist/cjs/node/vite/shared/getHttpRequestAsyncStore.js +8 -6
  63. package/dist/cjs/node/vite/shared/getMagicString.js +1 -1
  64. package/dist/cjs/node/vite/shared/getOutDirs.js +21 -22
  65. package/dist/cjs/node/vite/shared/getViteConfigRuntime.js +1 -1
  66. package/dist/cjs/node/vite/shared/isViteServerSide.js +68 -0
  67. package/dist/cjs/node/vite/shared/loggerVite/removeSuperfluousViteLog.js +6 -4
  68. package/dist/cjs/node/vite/shared/loggerVite.js +1 -1
  69. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.js +23 -36
  70. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles.js +5 -4
  71. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal.js +46 -48
  72. package/dist/cjs/shared/createGlobalContextShared.js +16 -14
  73. package/dist/cjs/shared/getPageFiles/{parseVirtualFileExports.js → parseVirtualFileExportsGlobalEntry.js} +20 -26
  74. package/dist/cjs/shared/page-configs/loadAndParseVirtualFilePageEntry.js +25 -0
  75. package/dist/cjs/shared/page-configs/resolveVikeConfigPublic.js +10 -4
  76. package/dist/cjs/shared/page-configs/serialize/{parsePageConfigs.js → parsePageConfigsSerialized.js} +2 -2
  77. package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +3 -3
  78. package/dist/cjs/shared/route/execHookOnBeforeRoute.js +0 -1
  79. package/dist/cjs/shared/route/index.js +0 -1
  80. package/dist/cjs/types/VikeGlobalInternal.js +2 -0
  81. package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
  82. package/dist/cjs/utils/assertSetup.js +2 -3
  83. package/dist/cjs/utils/assertVersion.js +2 -0
  84. package/dist/cjs/utils/debug.js +4 -4
  85. package/dist/cjs/utils/getGlobalObject.js +8 -15
  86. package/dist/cjs/utils/isNonRunnableDev.js +12 -0
  87. package/dist/cjs/utils/isScriptFile.js +1 -1
  88. package/dist/cjs/utils/path.js +5 -5
  89. package/dist/cjs/utils/requireResolve.js +13 -12
  90. package/dist/cjs/utils/{augmentType.js → updateType.js} +3 -3
  91. package/dist/esm/__internal/index.d.ts +2 -2
  92. package/dist/esm/__internal/index.js +3 -3
  93. package/dist/esm/client/runtime-client-routing/createPageContextClientSide.d.ts +2 -2
  94. package/dist/esm/client/runtime-client-routing/createPageContextClientSide.js +2 -2
  95. package/dist/esm/client/runtime-client-routing/getPageContextCurrent.d.ts +2 -2
  96. package/dist/esm/client/runtime-client-routing/getPageContextFromHooks.d.ts +12 -12
  97. package/dist/esm/client/runtime-client-routing/globalContext.d.ts +2 -2
  98. package/dist/esm/client/runtime-client-routing/globalContext.js +2 -2
  99. package/dist/esm/client/runtime-client-routing/prefetch/getPrefetchSettings.d.ts +2 -2
  100. package/dist/esm/client/runtime-client-routing/prefetch.d.ts +2 -2
  101. package/dist/esm/client/runtime-client-routing/prefetch.js +2 -2
  102. package/dist/esm/client/runtime-client-routing/preparePageContextForPublicUsageClient.d.ts +2 -2
  103. package/dist/esm/client/runtime-client-routing/renderPageClientSide.d.ts +6 -7
  104. package/dist/esm/client/runtime-client-routing/renderPageClientSide.js +6 -6
  105. package/dist/esm/client/runtime-client-routing/utils.d.ts +1 -1
  106. package/dist/esm/client/runtime-client-routing/utils.js +1 -1
  107. package/dist/esm/client/runtime-server-routing/createPageContextClientSide.d.ts +3 -3
  108. package/dist/esm/client/runtime-server-routing/createPageContextClientSide.js +3 -3
  109. package/dist/esm/client/runtime-server-routing/globalContext.d.ts +2 -2
  110. package/dist/esm/client/runtime-server-routing/globalContext.js +2 -2
  111. package/dist/esm/client/runtime-server-routing/preparePageContextForPublicUsageClient.d.ts +2 -2
  112. package/dist/esm/client/runtime-server-routing/utils.d.ts +1 -1
  113. package/dist/esm/client/runtime-server-routing/utils.js +1 -1
  114. package/dist/esm/client/shared/createGetGlobalContextClient.d.ts +3 -3
  115. package/dist/esm/client/shared/createGetGlobalContextClient.js +5 -5
  116. package/dist/esm/client/shared/execHookOnRenderClient.d.ts +2 -2
  117. package/dist/esm/client/shared/loadPageConfigsLazyClientSide.d.ts +1 -1
  118. package/dist/esm/client/shared/loadPageConfigsLazyClientSide.js +4 -4
  119. package/dist/esm/client/shared/preparePageContextForPublicUsageClientShared.d.ts +2 -2
  120. package/dist/esm/node/api/build.d.ts +2 -2
  121. package/dist/esm/node/api/build.js +6 -32
  122. package/dist/esm/node/api/context.d.ts +10 -10
  123. package/dist/esm/node/api/context.js +13 -12
  124. package/dist/esm/node/api/dev.d.ts +2 -2
  125. package/dist/esm/node/api/dev.js +0 -2
  126. package/dist/esm/node/api/index.js +0 -2
  127. package/dist/esm/node/api/onLoad.js +1 -1
  128. package/dist/esm/node/api/prepareViteApiCall.d.ts +3 -5
  129. package/dist/esm/node/api/prepareViteApiCall.js +3 -4
  130. package/dist/esm/node/api/preview.d.ts +2 -2
  131. package/dist/esm/node/api/preview.js +2 -3
  132. package/dist/esm/node/api/types.d.ts +4 -4
  133. package/dist/esm/node/api/utils.d.ts +1 -0
  134. package/dist/esm/node/api/utils.js +1 -0
  135. package/dist/esm/node/cli/index.js +1 -1
  136. package/dist/esm/node/cli/onLoad.js +1 -1
  137. package/dist/esm/node/prerender/runPrerender.d.ts +14 -303
  138. package/dist/esm/node/prerender/runPrerender.js +8 -9
  139. package/dist/esm/node/prerender/runPrerenderEntry.js +1 -1
  140. package/dist/esm/node/runtime/csp.d.ts +12 -0
  141. package/dist/esm/node/runtime/csp.js +44 -0
  142. package/dist/esm/node/runtime/globalContext.d.ts +13 -13
  143. package/dist/esm/node/runtime/globalContext.js +125 -109
  144. package/dist/esm/node/runtime/html/injectAssets/getHtmlTags.js +11 -8
  145. package/dist/esm/node/runtime/html/injectAssets/inferHtmlTags.d.ts +2 -1
  146. package/dist/esm/node/runtime/html/injectAssets/inferHtmlTags.js +5 -2
  147. package/dist/esm/node/runtime/html/injectAssets/mergeScriptTags.d.ts +2 -1
  148. package/dist/esm/node/runtime/html/injectAssets/mergeScriptTags.js +4 -2
  149. package/dist/esm/node/runtime/html/serializeContext.d.ts +2 -1
  150. package/dist/esm/node/runtime/renderPage/analyzePage.d.ts +4 -3
  151. package/dist/esm/node/runtime/renderPage/analyzePage.js +6 -4
  152. package/dist/esm/node/runtime/renderPage/createPageContextServerSide.d.ts +2 -2
  153. package/dist/esm/node/runtime/renderPage/createPageContextServerSide.js +2 -2
  154. package/dist/esm/node/runtime/renderPage/execHookOnRenderHtml.d.ts +0 -1
  155. package/dist/esm/node/runtime/renderPage/execHookOnRenderHtml.js +1 -11
  156. package/dist/esm/node/runtime/renderPage/execHookServer.d.ts +2 -2
  157. package/dist/esm/node/runtime/renderPage/getPageAssets/getManifestEntry.js +5 -4
  158. package/dist/esm/node/runtime/renderPage/getPageAssets/retrievePageAssetsDev.d.ts +10 -0
  159. package/dist/esm/node/runtime/renderPage/getPageAssets/{retrieveAssetsDev.js → retrievePageAssetsDev.js} +22 -7
  160. package/dist/esm/node/runtime/renderPage/getPageAssets/retrievePageAssetsProd.d.ts +10 -0
  161. package/dist/esm/node/runtime/renderPage/getPageAssets/{retrieveAssetsProd.js → retrievePageAssetsProd.js} +19 -2
  162. package/dist/esm/node/runtime/renderPage/getPageAssets.d.ts +2 -10
  163. package/dist/esm/node/runtime/renderPage/getPageAssets.js +4 -33
  164. package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.d.ts +1 -1
  165. package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.d.ts +108 -20
  166. package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +48 -48
  167. package/dist/esm/node/runtime/renderPage/preparePageContextForPublicUsageServer.d.ts +2 -2
  168. package/dist/esm/node/runtime/renderPage/{renderPageAlreadyRouted.d.ts → renderPageAfterRoute.d.ts} +30 -10
  169. package/dist/esm/node/runtime/renderPage/{renderPageAlreadyRouted.js → renderPageAfterRoute.js} +5 -6
  170. package/dist/esm/node/runtime/renderPage.d.ts +9 -6
  171. package/dist/esm/node/runtime/renderPage.js +20 -18
  172. package/dist/esm/node/runtime/utils.d.ts +3 -2
  173. package/dist/esm/node/runtime/utils.js +3 -2
  174. package/dist/esm/node/runtime-dev/createDevMiddleware.d.ts +2 -2
  175. package/dist/esm/node/runtime-dev/createDevMiddleware.js +0 -2
  176. package/dist/esm/node/shared/virtualFileId.d.ts +28 -0
  177. package/dist/esm/node/shared/virtualFileId.js +107 -0
  178. package/dist/esm/node/vite/index.js +3 -3
  179. package/dist/esm/node/vite/onLoad.js +5 -3
  180. package/dist/esm/node/vite/plugins/pluginBuild/handleAssetsManifest.d.ts +5 -6
  181. package/dist/esm/node/vite/plugins/pluginBuild/handleAssetsManifest.js +31 -32
  182. package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildApp.js +119 -10
  183. package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildConfig.js +12 -17
  184. package/dist/esm/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.js +2 -10
  185. package/dist/esm/node/vite/plugins/pluginBuild/pluginModuleBanner.js +5 -8
  186. package/dist/esm/node/vite/plugins/pluginBuild/{pluginBuildEntry.d.ts → pluginProdBuildEntry.d.ts} +2 -2
  187. package/dist/esm/node/vite/plugins/pluginBuild/{pluginBuildEntry.js → pluginProdBuildEntry.js} +12 -12
  188. package/dist/esm/node/vite/plugins/pluginBuild.js +2 -4
  189. package/dist/esm/node/vite/plugins/pluginDev/determineFsAllowList.js +3 -3
  190. package/dist/esm/node/vite/plugins/pluginDev/determineOptimizeDeps.js +6 -5
  191. package/dist/esm/node/vite/plugins/pluginEnvVars.js +6 -10
  192. package/dist/esm/node/vite/plugins/pluginExtractAssets.js +5 -5
  193. package/dist/esm/node/vite/plugins/pluginExtractExportNames.js +6 -2
  194. package/dist/esm/node/vite/plugins/pluginFileEnv.js +4 -3
  195. package/dist/esm/node/vite/plugins/pluginNonRunnableDev.js +12 -12
  196. package/dist/esm/node/vite/plugins/pluginPreview.js +5 -8
  197. package/dist/esm/node/vite/plugins/pluginReplaceConstants.js +6 -10
  198. package/dist/esm/node/vite/plugins/pluginSetGlobalContext.js +2 -2
  199. package/dist/esm/node/vite/plugins/pluginVirtualFiles/generateVirtualFileGlobalEntry.d.ts +2 -0
  200. package/dist/esm/node/vite/plugins/pluginVirtualFiles/{getVirtualFilePageConfigsEager.js → generateVirtualFileGlobalEntry.js} +5 -6
  201. package/dist/esm/node/vite/plugins/pluginVirtualFiles/generateVirtualFileGlobalEntryWithOldDesign.d.ts +6 -0
  202. package/dist/esm/node/vite/plugins/pluginVirtualFiles/{getVirtualFileEntry.js → generateVirtualFileGlobalEntryWithOldDesign.js} +11 -11
  203. package/dist/esm/node/vite/plugins/pluginVirtualFiles/generateVirtualFilePageEntry.d.ts +2 -0
  204. package/dist/esm/node/vite/plugins/pluginVirtualFiles/{getVirtualFilePageConfigLazy.js → generateVirtualFilePageEntry.js} +10 -11
  205. package/dist/esm/node/vite/plugins/pluginVirtualFiles/getConfigValueSourcesRelevant.d.ts +5 -1
  206. package/dist/esm/node/vite/plugins/pluginVirtualFiles/getConfigValueSourcesRelevant.js +52 -22
  207. package/dist/esm/node/vite/plugins/pluginVirtualFiles.js +14 -12
  208. package/dist/esm/node/vite/shared/findPageFiles.js +1 -1
  209. package/dist/esm/node/vite/shared/getClientEntrySrcDev.d.ts +4 -0
  210. package/dist/esm/node/vite/shared/{resolveClientEntriesDev.js → getClientEntrySrcDev.js} +4 -4
  211. package/dist/esm/node/vite/shared/getHttpRequestAsyncStore.js +9 -7
  212. package/dist/esm/node/vite/shared/getMagicString.js +1 -1
  213. package/dist/esm/node/vite/shared/getOutDirs.d.ts +4 -3
  214. package/dist/esm/node/vite/shared/getOutDirs.js +21 -22
  215. package/dist/esm/node/vite/shared/getViteConfigRuntime.js +1 -1
  216. package/dist/esm/node/vite/shared/isViteServerSide.d.ts +18 -0
  217. package/dist/esm/node/vite/shared/isViteServerSide.js +66 -0
  218. package/dist/esm/node/vite/shared/loggerVite/removeSuperfluousViteLog.js +7 -5
  219. package/dist/esm/node/vite/shared/loggerVite.js +1 -1
  220. package/dist/esm/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.d.ts +3 -2
  221. package/dist/esm/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.js +24 -37
  222. package/dist/esm/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles.js +6 -5
  223. package/dist/esm/node/vite/shared/resolveVikeConfigInternal.d.ts +4 -2
  224. package/dist/esm/node/vite/shared/resolveVikeConfigInternal.js +49 -51
  225. package/dist/esm/shared/createGlobalContextShared.d.ts +7 -6
  226. package/dist/esm/shared/createGlobalContextShared.js +18 -16
  227. package/dist/esm/shared/getPageFiles/{parseVirtualFileExports.d.ts → parseVirtualFileExportsGlobalEntry.d.ts} +2 -2
  228. package/dist/esm/shared/getPageFiles/{parseVirtualFileExports.js → parseVirtualFileExportsGlobalEntry.js} +20 -26
  229. package/dist/esm/shared/getPageFiles.d.ts +1 -1
  230. package/dist/esm/shared/hooks/execHook.d.ts +2 -2
  231. package/dist/esm/shared/hooks/getHook.d.ts +3 -3
  232. package/dist/esm/shared/page-configs/loadAndParseVirtualFilePageEntry.d.ts +3 -0
  233. package/dist/esm/shared/page-configs/loadAndParseVirtualFilePageEntry.js +23 -0
  234. package/dist/esm/shared/page-configs/resolveVikeConfigPublic.d.ts +9 -9
  235. package/dist/esm/shared/page-configs/resolveVikeConfigPublic.js +10 -4
  236. package/dist/esm/shared/page-configs/serialize/PageConfigSerialized.d.ts +1 -1
  237. package/dist/esm/shared/page-configs/serialize/{parsePageConfigs.d.ts → parsePageConfigsSerialized.d.ts} +2 -2
  238. package/dist/esm/shared/page-configs/serialize/{parsePageConfigs.js → parsePageConfigsSerialized.js} +2 -2
  239. package/dist/esm/shared/page-configs/serialize/serializeConfigValues.js +3 -3
  240. package/dist/esm/shared/route/execHookOnBeforeRoute.d.ts +3 -3
  241. package/dist/esm/shared/route/execHookOnBeforeRoute.js +0 -1
  242. package/dist/esm/shared/route/index.d.ts +5 -6
  243. package/dist/esm/shared/route/index.js +0 -1
  244. package/dist/esm/types/Config.d.ts +11 -7
  245. package/dist/esm/types/PageConfig.d.ts +11 -9
  246. package/dist/esm/types/PageContext.d.ts +6 -0
  247. package/dist/esm/types/VikeGlobalInternal.d.ts +4 -0
  248. package/dist/esm/types/VikeGlobalInternal.js +1 -0
  249. package/dist/esm/types/VikeNamespace.d.ts +13 -0
  250. package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
  251. package/dist/esm/utils/PROJECT_VERSION.js +1 -1
  252. package/dist/esm/utils/assertSetup.js +2 -3
  253. package/dist/esm/utils/assertVersion.js +2 -0
  254. package/dist/esm/utils/debug.js +3 -3
  255. package/dist/esm/utils/getGlobalObject.d.ts +6 -5
  256. package/dist/esm/utils/getGlobalObject.js +8 -15
  257. package/dist/esm/utils/isNonRunnableDev.d.ts +2 -0
  258. package/dist/esm/utils/isNonRunnableDev.js +10 -0
  259. package/dist/esm/utils/isScriptFile.d.ts +1 -1
  260. package/dist/esm/utils/isScriptFile.js +1 -1
  261. package/dist/esm/utils/path.d.ts +2 -0
  262. package/dist/esm/utils/path.js +5 -5
  263. package/dist/esm/utils/requireResolve.d.ts +4 -4
  264. package/dist/esm/utils/requireResolve.js +13 -12
  265. package/dist/esm/utils/updateType.d.ts +3 -0
  266. package/dist/esm/utils/updateType.js +7 -0
  267. package/package.json +6 -6
  268. package/dist/cjs/node/runtime/renderPage/debugPageFiles.js +0 -52
  269. package/dist/cjs/node/shared/virtualFiles/virtualFileEntry.js +0 -31
  270. package/dist/cjs/node/shared/virtualFiles/virtualFilePageConfigLazy.js +0 -45
  271. package/dist/cjs/node/vite/plugins/pluginBuild/pluginAutoFullBuild.js +0 -149
  272. package/dist/cjs/node/vite/shared/applyRegExWithMagicString.js +0 -11
  273. package/dist/cjs/node/vite/shared/isViteServerBuild.js +0 -47
  274. package/dist/cjs/shared/page-configs/loadConfigValues.js +0 -21
  275. package/dist/esm/node/runtime/renderPage/debugPageFiles.d.ts +0 -23
  276. package/dist/esm/node/runtime/renderPage/debugPageFiles.js +0 -47
  277. package/dist/esm/node/runtime/renderPage/getPageAssets/retrieveAssetsDev.d.ts +0 -4
  278. package/dist/esm/node/runtime/renderPage/getPageAssets/retrieveAssetsProd.d.ts +0 -4
  279. package/dist/esm/node/shared/virtualFiles/virtualFileEntry.d.ts +0 -11
  280. package/dist/esm/node/shared/virtualFiles/virtualFileEntry.js +0 -28
  281. package/dist/esm/node/shared/virtualFiles/virtualFilePageConfigLazy.d.ts +0 -9
  282. package/dist/esm/node/shared/virtualFiles/virtualFilePageConfigLazy.js +0 -43
  283. package/dist/esm/node/vite/plugins/pluginBuild/pluginAutoFullBuild.d.ts +0 -5
  284. package/dist/esm/node/vite/plugins/pluginBuild/pluginAutoFullBuild.js +0 -144
  285. package/dist/esm/node/vite/plugins/pluginVirtualFiles/getVirtualFileEntry.d.ts +0 -5
  286. package/dist/esm/node/vite/plugins/pluginVirtualFiles/getVirtualFilePageConfigLazy.d.ts +0 -3
  287. package/dist/esm/node/vite/plugins/pluginVirtualFiles/getVirtualFilePageConfigsEager.d.ts +0 -2
  288. package/dist/esm/node/vite/shared/applyRegExWithMagicString.d.ts +0 -3
  289. package/dist/esm/node/vite/shared/applyRegExWithMagicString.js +0 -9
  290. package/dist/esm/node/vite/shared/isViteServerBuild.d.ts +0 -15
  291. package/dist/esm/node/vite/shared/isViteServerBuild.js +0 -45
  292. package/dist/esm/node/vite/shared/resolveClientEntriesDev.d.ts +0 -4
  293. package/dist/esm/shared/page-configs/loadConfigValues.d.ts +0 -3
  294. package/dist/esm/shared/page-configs/loadConfigValues.js +0 -19
  295. package/dist/esm/utils/augmentType.d.ts +0 -3
  296. package/dist/esm/utils/augmentType.js +0 -7
  297. /package/dist/cjs/utils/{getTerminWidth.js → getTerminalWidth.js} +0 -0
  298. /package/dist/esm/utils/{getTerminWidth.d.ts → getTerminalWidth.d.ts} +0 -0
  299. /package/dist/esm/utils/{getTerminWidth.js → getTerminalWidth.js} +0 -0
@@ -3,19 +3,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getGlobalContextSyncErrMsg = void 0;
4
4
  exports.createGlobalContextShared = createGlobalContextShared;
5
5
  const utils_js_1 = require("./utils.js");
6
- const parseVirtualFileExports_js_1 = require("./getPageFiles/parseVirtualFileExports.js");
6
+ const parseVirtualFileExportsGlobalEntry_js_1 = require("./getPageFiles/parseVirtualFileExportsGlobalEntry.js");
7
7
  const resolveVikeConfigPublic_js_1 = require("./page-configs/resolveVikeConfigPublic.js");
8
8
  const execHook_js_1 = require("./hooks/execHook.js");
9
9
  const prepareGlobalContextForPublicUsage_js_1 = require("./prepareGlobalContextForPublicUsage.js");
10
10
  const getHook_js_1 = require("./hooks/getHook.js");
11
11
  const getGlobalContextSyncErrMsg = "The global context isn't set yet, call getGlobalContextSync() later or use getGlobalContext() instead.";
12
12
  exports.getGlobalContextSyncErrMsg = getGlobalContextSyncErrMsg;
13
- const globalObject_ = (0, utils_js_1.getGlobalObject)('shared/createGlobalContextShared.ts', {});
14
13
  // TO-DO/eventually use flat globalContext — like flat pageContext
15
- async function createGlobalContextShared(virtualFileExports, globalObject, addGlobalContext,
14
+ async function createGlobalContextShared(virtualFileExportsGlobalEntry, globalObject, addGlobalContext,
16
15
  // TO-DO/next-major-release: we'll be able to remove addGlobalContextTmp after loadPageRoutes() is sync (it will be sync after we remove the old design)
17
16
  addGlobalContextTmp, addGlobalContextAsync) {
18
- const { previousCallPromise } = globalObject_;
17
+ const { previousCreateGlobalContextPromise } = globalObject;
19
18
  const { promise, resolve } = (0, utils_js_1.genPromise)({
20
19
  // Avoid this Cloudflare Worker error:
21
20
  // ```console
@@ -23,9 +22,12 @@ addGlobalContextTmp, addGlobalContextAsync) {
23
22
  // ```
24
23
  timeout: null,
25
24
  });
26
- globalObject_.previousCallPromise = promise;
27
- await previousCallPromise;
28
- const globalContext = createGlobalContextBase(virtualFileExports);
25
+ globalObject.previousCreateGlobalContextPromise = promise;
26
+ if (previousCreateGlobalContextPromise) {
27
+ (0, utils_js_1.assert)(globalObject.globalContext);
28
+ await previousCreateGlobalContextPromise;
29
+ }
30
+ const globalContext = createGlobalContextBase(virtualFileExportsGlobalEntry);
29
31
  let isNewGlobalContext;
30
32
  if (!globalObject.globalContext) {
31
33
  // We set globalObject.globalContext early and before any async operations, so that getGlobalContextSync() can be used early.
@@ -37,7 +39,7 @@ addGlobalContextTmp, addGlobalContextAsync) {
37
39
  isNewGlobalContext = true;
38
40
  }
39
41
  if (addGlobalContext &&
40
- // TODO/next-major-release: remove
42
+ // TO-DO/next-major-release: remove
41
43
  globalContext._pageConfigs.length > 0) {
42
44
  const globalContextAdded = addGlobalContext?.(globalContext);
43
45
  (0, utils_js_1.objectAssign)(globalContext, globalContextAdded);
@@ -70,8 +72,8 @@ addGlobalContextTmp, addGlobalContextAsync) {
70
72
  resolve();
71
73
  return globalObject.globalContext;
72
74
  }
73
- function createGlobalContextBase(virtualFileExports) {
74
- const { pageFilesAll, allPageIds, pageConfigs, pageConfigGlobal, vikeConfigPublicGlobal, vikeConfigPublicPagesEager, } = getConfigsAll(virtualFileExports);
75
+ function createGlobalContextBase(virtualFileExportsGlobalEntry) {
76
+ const { pageFilesAll, allPageIds, pageConfigs, pageConfigGlobal, vikeConfigPublicGlobal, vikeConfigPublicPagesEager, } = getConfigsAll(virtualFileExportsGlobalEntry);
75
77
  const globalContext = {
76
78
  /**
77
79
  * Useful for distinguishing `globalContext` from other objects and narrowing down TypeScript unions.
@@ -80,7 +82,7 @@ function createGlobalContextBase(virtualFileExports) {
80
82
  */
81
83
  isGlobalContext: true,
82
84
  _isOriginalObject: true,
83
- _virtualFileExports: virtualFileExports,
85
+ _virtualFileExportsGlobalEntry: virtualFileExportsGlobalEntry,
84
86
  _pageFilesAll: pageFilesAll,
85
87
  _pageConfigs: pageConfigs,
86
88
  _pageConfigGlobal: pageConfigGlobal,
@@ -92,14 +94,14 @@ function createGlobalContextBase(virtualFileExports) {
92
94
  (0, utils_js_1.changeEnumerable)(globalContext, '_isOriginalObject', false);
93
95
  return globalContext;
94
96
  }
95
- function getConfigsAll(virtualFileExports) {
96
- const { pageFilesAll, pageConfigs, pageConfigGlobal } = (0, parseVirtualFileExports_js_1.parseVirtualFileExports)(virtualFileExports);
97
+ function getConfigsAll(virtualFileExportsGlobalEntry) {
98
+ const { pageFilesAll, pageConfigs, pageConfigGlobal } = (0, parseVirtualFileExportsGlobalEntry_js_1.parseVirtualFileExportsGlobalEntry)(virtualFileExportsGlobalEntry);
97
99
  const allPageIds = getAllPageIds(pageFilesAll, pageConfigs);
98
100
  const vikeConfigPublicGlobal = (0, resolveVikeConfigPublic_js_1.resolveVikeConfigPublicGlobal)({
99
101
  pageConfigGlobalValues: pageConfigGlobal.configValues,
100
102
  });
101
103
  const vikeConfigPublicPagesEager = Object.fromEntries(pageConfigs.map((pageConfig) => {
102
- return (0, resolveVikeConfigPublic_js_1.resolveVikeConfigPublicPageEager)(pageConfigGlobal.configValues, pageConfig, pageConfig.configValues);
104
+ return (0, resolveVikeConfigPublic_js_1.resolveVikeConfigPublicPageEagerLoaded)(pageConfigGlobal.configValues, pageConfig, pageConfig.configValues);
103
105
  }));
104
106
  return {
105
107
  pageFilesAll,
@@ -1,35 +1,29 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseVirtualFileExports = parseVirtualFileExports;
4
- // TODO/now: rename parseVirtualFileExportsEntryGlobal
5
- // TODO/now: merge or collocate following both files?
6
- // ```filesystem
7
- // vike/packages/vike/shared/getPageFiles/parseVirtualFileExports.ts
8
- // vike/shared/page-configs/serialize/parsePageConfigs.ts
9
- // ```
3
+ exports.parseVirtualFileExportsGlobalEntry = parseVirtualFileExportsGlobalEntry;
10
4
  // TO-DO/next-major-release: remove old design code, and remove all assertions.
11
5
  const utils_js_1 = require("../utils.js");
12
6
  const assert_exports_old_design_js_1 = require("./assert_exports_old_design.js");
13
7
  const getPageFileObject_js_1 = require("./getPageFileObject.js");
14
8
  const fileTypes_js_1 = require("./fileTypes.js");
15
- const parsePageConfigs_js_1 = require("../page-configs/serialize/parsePageConfigs.js");
16
- function parseVirtualFileExports(virtualFileExports) {
17
- (0, utils_js_1.assert)((0, utils_js_1.hasProp)(virtualFileExports, 'pageFilesLazy', 'object'));
18
- (0, utils_js_1.assert)((0, utils_js_1.hasProp)(virtualFileExports, 'pageFilesEager', 'object'));
19
- (0, utils_js_1.assert)((0, utils_js_1.hasProp)(virtualFileExports, 'pageFilesExportNamesLazy', 'object'));
20
- (0, utils_js_1.assert)((0, utils_js_1.hasProp)(virtualFileExports, 'pageFilesExportNamesEager', 'object'));
21
- (0, utils_js_1.assert)((0, utils_js_1.hasProp)(virtualFileExports.pageFilesLazy, '.page'));
22
- (0, utils_js_1.assert)((0, utils_js_1.hasProp)(virtualFileExports.pageFilesLazy, '.page.client') ||
23
- (0, utils_js_1.hasProp)(virtualFileExports.pageFilesLazy, '.page.server'));
24
- (0, utils_js_1.assert)((0, utils_js_1.hasProp)(virtualFileExports, 'pageFilesList', 'string[]'));
25
- (0, utils_js_1.assert)((0, utils_js_1.hasProp)(virtualFileExports, 'pageConfigsSerialized'));
26
- (0, utils_js_1.assert)((0, utils_js_1.hasProp)(virtualFileExports, 'pageConfigGlobalSerialized'));
27
- const { pageConfigsSerialized, pageConfigGlobalSerialized } = virtualFileExports;
9
+ const parsePageConfigsSerialized_js_1 = require("../page-configs/serialize/parsePageConfigsSerialized.js");
10
+ function parseVirtualFileExportsGlobalEntry(virtualFileExportsGlobalEntry) {
11
+ (0, utils_js_1.assert)((0, utils_js_1.hasProp)(virtualFileExportsGlobalEntry, 'pageFilesLazy', 'object'));
12
+ (0, utils_js_1.assert)((0, utils_js_1.hasProp)(virtualFileExportsGlobalEntry, 'pageFilesEager', 'object'));
13
+ (0, utils_js_1.assert)((0, utils_js_1.hasProp)(virtualFileExportsGlobalEntry, 'pageFilesExportNamesLazy', 'object'));
14
+ (0, utils_js_1.assert)((0, utils_js_1.hasProp)(virtualFileExportsGlobalEntry, 'pageFilesExportNamesEager', 'object'));
15
+ (0, utils_js_1.assert)((0, utils_js_1.hasProp)(virtualFileExportsGlobalEntry.pageFilesLazy, '.page'));
16
+ (0, utils_js_1.assert)((0, utils_js_1.hasProp)(virtualFileExportsGlobalEntry.pageFilesLazy, '.page.client') ||
17
+ (0, utils_js_1.hasProp)(virtualFileExportsGlobalEntry.pageFilesLazy, '.page.server'));
18
+ (0, utils_js_1.assert)((0, utils_js_1.hasProp)(virtualFileExportsGlobalEntry, 'pageFilesList', 'string[]'));
19
+ (0, utils_js_1.assert)((0, utils_js_1.hasProp)(virtualFileExportsGlobalEntry, 'pageConfigsSerialized'));
20
+ (0, utils_js_1.assert)((0, utils_js_1.hasProp)(virtualFileExportsGlobalEntry, 'pageConfigGlobalSerialized'));
21
+ const { pageConfigsSerialized, pageConfigGlobalSerialized } = virtualFileExportsGlobalEntry;
28
22
  assertPageConfigsSerialized(pageConfigsSerialized);
29
23
  assertPageConfigGlobalSerialized(pageConfigGlobalSerialized);
30
- const { pageConfigs, pageConfigGlobal } = (0, parsePageConfigs_js_1.parsePageConfigs)(pageConfigsSerialized, pageConfigGlobalSerialized);
24
+ const { pageConfigs, pageConfigGlobal } = (0, parsePageConfigsSerialized_js_1.parsePageConfigsSerialized)(pageConfigsSerialized, pageConfigGlobalSerialized);
31
25
  const pageFilesMap = {};
32
- parseGlobResult(virtualFileExports.pageFilesLazy).forEach(({ filePath, pageFile, globValue }) => {
26
+ parseGlobResult(virtualFileExportsGlobalEntry.pageFilesLazy).forEach(({ filePath, pageFile, globValue }) => {
33
27
  pageFile = pageFilesMap[filePath] = pageFilesMap[filePath] ?? pageFile;
34
28
  const loadModule = globValue;
35
29
  assertLoadModule(loadModule);
@@ -40,7 +34,7 @@ function parseVirtualFileExports(virtualFileExports) {
40
34
  }
41
35
  };
42
36
  });
43
- parseGlobResult(virtualFileExports.pageFilesExportNamesLazy).forEach(({ filePath, pageFile, globValue }) => {
37
+ parseGlobResult(virtualFileExportsGlobalEntry.pageFilesExportNamesLazy).forEach(({ filePath, pageFile, globValue }) => {
44
38
  pageFile = pageFilesMap[filePath] = pageFilesMap[filePath] ?? pageFile;
45
39
  const loadModule = globValue;
46
40
  assertLoadModule(loadModule);
@@ -53,20 +47,20 @@ function parseVirtualFileExports(virtualFileExports) {
53
47
  };
54
48
  });
55
49
  // `pageFilesEager` contains `.page.route.js` files
56
- parseGlobResult(virtualFileExports.pageFilesEager).forEach(({ filePath, pageFile, globValue }) => {
50
+ parseGlobResult(virtualFileExportsGlobalEntry.pageFilesEager).forEach(({ filePath, pageFile, globValue }) => {
57
51
  pageFile = pageFilesMap[filePath] = pageFilesMap[filePath] ?? pageFile;
58
52
  const moduleExports = globValue;
59
53
  (0, utils_js_1.assert)((0, utils_js_1.isObject)(moduleExports));
60
54
  pageFile.fileExports = moduleExports;
61
55
  });
62
- parseGlobResult(virtualFileExports.pageFilesExportNamesEager).forEach(({ filePath, pageFile, globValue }) => {
56
+ parseGlobResult(virtualFileExportsGlobalEntry.pageFilesExportNamesEager).forEach(({ filePath, pageFile, globValue }) => {
63
57
  pageFile = pageFilesMap[filePath] = pageFilesMap[filePath] ?? pageFile;
64
58
  const moduleExports = globValue;
65
59
  (0, utils_js_1.assert)((0, utils_js_1.isObject)(moduleExports));
66
60
  (0, utils_js_1.assert)((0, utils_js_1.hasProp)(moduleExports, 'exportNames', 'string[]'), pageFile.filePath);
67
61
  pageFile.exportNames = moduleExports.exportNames;
68
62
  });
69
- virtualFileExports.pageFilesList.forEach((filePath) => {
63
+ virtualFileExportsGlobalEntry.pageFilesList.forEach((filePath) => {
70
64
  pageFilesMap[filePath] = pageFilesMap[filePath] ?? (0, getPageFileObject_js_1.getPageFileObject)(filePath);
71
65
  });
72
66
  const pageFilesAll = Object.values(pageFilesMap);
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.loadAndParseVirtualFilePageEntry = loadAndParseVirtualFilePageEntry;
4
+ const utils_js_1 = require("../utils.js");
5
+ const parsePageConfigsSerialized_js_1 = require("./serialize/parsePageConfigsSerialized.js");
6
+ async function loadAndParseVirtualFilePageEntry(pageConfig, isDev) {
7
+ if ('isPageEntryLoaded' 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, moduleExportsPromise } = pageConfig.loadVirtualFilePageEntry();
13
+ const virtualFileExportsPageEntry = await moduleExportsPromise;
14
+ // `configValuesLoaded` is sometimes `undefined` https://github.com/vikejs/vike/discussions/2092
15
+ if (!virtualFileExportsPageEntry)
16
+ (0, utils_js_1.assert)(false, { moduleExportsPromise, virtualFileExportsPageEntry, moduleId });
17
+ const configValues = parseVirtualFileExportsPageEntry(virtualFileExportsPageEntry);
18
+ Object.assign(pageConfig.configValues, configValues);
19
+ (0, utils_js_1.objectAssign)(pageConfig, { isPageEntryLoaded: true });
20
+ return pageConfig;
21
+ }
22
+ function parseVirtualFileExportsPageEntry(virtualFileExportsPageEntry) {
23
+ const configValues = (0, parsePageConfigsSerialized_js_1.parseConfigValuesSerialized)(virtualFileExportsPageEntry.configValuesSerialized);
24
+ return configValues;
25
+ }
@@ -1,17 +1,23 @@
1
1
  "use strict";
2
+ // TODO/now: rename PageConfig names
3
+ // - Use `Internal` suffix, i.e. {Page,Global}ConfigInternal
4
+ // - While keeping {Page,Global}ConfigPublic or remove Public suffix and rename it to {Page,Global}Config ?
5
+ // - rename EagerLoaded EagerlyLoaded
6
+ // - remove `LazyLoaded` suffix
7
+ // TODO/now: rename VikeConfigPublicPageLazyLoaded PageContextSomething (for `pageContext: PageContextSomething` usage)
2
8
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
9
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
10
  };
5
11
  Object.defineProperty(exports, "__esModule", { value: true });
6
12
  exports.resolveVikeConfigPublicGlobal = resolveVikeConfigPublicGlobal;
7
- exports.resolveVikeConfigPublicPageEager = resolveVikeConfigPublicPageEager;
8
- exports.resolveVikeConfigPublicPageLazy = resolveVikeConfigPublicPageLazy;
13
+ exports.resolveVikeConfigPublicPageEagerLoaded = resolveVikeConfigPublicPageEagerLoaded;
14
+ exports.resolveVikeConfigPublicPageLazyLoaded = resolveVikeConfigPublicPageLazyLoaded;
9
15
  const assert_exports_old_design_js_1 = require("../getPageFiles/assert_exports_old_design.js");
10
16
  const getConfigDefinedAt_js_1 = require("./getConfigDefinedAt.js");
11
17
  const helpers_js_1 = require("./helpers.js");
12
18
  const utils_js_1 = require("../utils.js");
13
19
  const picocolors_1 = __importDefault(require("@brillout/picocolors"));
14
- function resolveVikeConfigPublicPageEager(pageConfigGlobalValues, pageConfig, pageConfigValues) {
20
+ function resolveVikeConfigPublicPageEagerLoaded(pageConfigGlobalValues, pageConfig, pageConfigValues) {
15
21
  const vikeConfigPublicPage_ = resolveVikeConfigPublic_base({ pageConfigGlobalValues, pageConfigValues });
16
22
  const vikeConfigPublicPage = getPublicCopy(vikeConfigPublicPage_);
17
23
  let page;
@@ -46,7 +52,7 @@ function resolveVikeConfigPublicGlobal({ pageConfigGlobalValues, }) {
46
52
  const vikeConfigPublicGlobal = resolveVikeConfigPublic_V1Design({ configValues: pageConfigGlobalValues });
47
53
  return getPublicCopy(vikeConfigPublicGlobal);
48
54
  }
49
- function resolveVikeConfigPublicPageLazy(pageFiles, // V0.4 design
55
+ function resolveVikeConfigPublicPageLazyLoaded(pageFiles, // V0.4 design
50
56
  pageConfig, // V1 design
51
57
  pageConfigGlobal) {
52
58
  const config = {};
@@ -1,12 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parsePageConfigs = parsePageConfigs;
3
+ exports.parsePageConfigsSerialized = parsePageConfigsSerialized;
4
4
  exports.parseConfigValuesSerialized = parseConfigValuesSerialized;
5
5
  const utils_js_1 = require("../../utils.js");
6
6
  const getConfigDefinedAt_js_1 = require("../getConfigDefinedAt.js");
7
7
  const parse_1 = require("@brillout/json-serializer/parse");
8
8
  const assertPlusFileExport_js_1 = require("../assertPlusFileExport.js");
9
- function parsePageConfigs(pageConfigsSerialized, pageConfigGlobalSerialized) {
9
+ function parsePageConfigsSerialized(pageConfigsSerialized, pageConfigGlobalSerialized) {
10
10
  // pageConfigs
11
11
  const pageConfigs = pageConfigsSerialized.map((pageConfigSerialized) => {
12
12
  const configValues = parseConfigValuesSerialized(pageConfigSerialized.configValuesSerialized);
@@ -16,9 +16,9 @@ const getConfigValueSourcesRelevant_js_1 = require("../../../node/vite/plugins/p
16
16
  const stringifyOptions = { forbidReactElements: true };
17
17
  const REPLACE_ME_BEFORE = '__VIKE__REPLACE_ME_BEFORE__';
18
18
  const REPLACE_ME_AFTER = '__VIKE__REPLACE_ME_AFTER__';
19
- // This file is never loaded on the client-side but we save it under the vike/shared/ directory in order to collocate it with parsePageConfigs()
20
- // - vike/shared/page-configs/serialize/parsePageConfigs.ts
21
- // - parsePageConfigs() is loaded on both the client- and server-side.
19
+ // This file is never loaded on the client-side but we save it under the vike/shared/ directory in order to collocate it with parsePageConfigsSerialized()
20
+ // - vike/shared/page-configs/serialize/parsePageConfigsSerialized.ts
21
+ // - parsePageConfigsSerialized() is loaded on both the client- and server-side.
22
22
  (0, utils_js_1.assertIsNotBrowser)();
23
23
  (0, assertSetup_js_1.assertIsNotProductionRuntime)();
24
24
  function serializeConfigValues(pageConfig, importStatements, filesEnv, runtimeEnv, tabspace, isEager) {
@@ -28,7 +28,6 @@ async function execHookOnBeforeRoute(pageContext) {
28
28
  }
29
29
  (0, utils_js_1.objectAssign)(pageContextFromOnBeforeRouteHook, {
30
30
  _routingProvidedByOnBeforeRouteHook: true,
31
- _debugRouteMatches: 'CUSTOM_ROUTING',
32
31
  });
33
32
  return pageContextFromOnBeforeRouteHook;
34
33
  }
@@ -86,7 +86,6 @@ async function route(pageContext, skipOnBeforeRouteHook) {
86
86
  (0, resolvePrecedence_js_1.resolvePrecedence)(routeMatches);
87
87
  const winner = routeMatches[0] ?? null;
88
88
  (0, debug_js_1.debug)(`Route matches for URL ${picocolors_1.default.cyan(urlPathname)} (in precedence order):`, routeMatches);
89
- (0, utils_js_1.objectAssign)(pageContextFromRoute, { _debugRouteMatches: routeMatches });
90
89
  // For vite-plugin-vercel https://github.com/magne4000/vite-plugin-vercel/blob/main/packages/vike-integration/vike.ts#L173
91
90
  (0, utils_js_1.objectAssign)(pageContextFromRoute, { _routeMatch: winner });
92
91
  if (!winner) {
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -2,4 +2,4 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PROJECT_VERSION = void 0;
4
4
  // Automatically updated by @brillout/release-me
5
- exports.PROJECT_VERSION = '0.4.237';
5
+ exports.PROJECT_VERSION = '0.4.238-commit-5762291';
@@ -17,6 +17,7 @@ const assert_js_1 = require("./assert.js");
17
17
  const assertIsNotBrowser_js_1 = require("./assertIsNotBrowser.js");
18
18
  const debug_js_1 = require("./debug.js");
19
19
  const getGlobalObject_js_1 = require("./getGlobalObject.js");
20
+ const isNonRunnableDev_js_1 = require("./isNonRunnableDev.js");
20
21
  const isVitest_js_1 = require("./isVitest.js");
21
22
  const picocolors_1 = __importDefault(require("@brillout/picocolors"));
22
23
  (0, assertIsNotBrowser_js_1.assertIsNotBrowser)();
@@ -29,8 +30,6 @@ function assertIsNotProductionRuntime() {
29
30
  setup.shouldNotBeProduction = true;
30
31
  }
31
32
  function onSetupRuntime() {
32
- if (true)
33
- return; // TODO/now refactor this
34
33
  if (debug.isActivated)
35
34
  debug('assertSetup()', new Error().stack);
36
35
  if (isTest())
@@ -38,7 +37,7 @@ function onSetupRuntime() {
38
37
  assertNodeEnvIsNotUndefinedString();
39
38
  if (!setup.viteDevServer && setup.isViteDev === undefined) {
40
39
  // TO-DO/eventually: make it assertUsage() again once https://github.com/vikejs/vike/issues/1528 is implemented.
41
- (0, assert_js_1.assertWarning)(!isNodeEnvDev(), `The ${getEnvDescription()}, which is contradictory because the environment seems to be a production environment (Vite isn't loaded), see ${picocolors_1.default.underline('https://vike.dev/NODE_ENV')} and ${picocolors_1.default.underline('https://vike.dev/warning/setup')}`, { onlyOnce: true });
40
+ (0, assert_js_1.assertWarning)(!isNodeEnvDev() || (0, isNonRunnableDev_js_1.isNonRunnableDev)(), `The ${getEnvDescription()}, which is contradictory because the environment seems to be a production environment (Vite isn't loaded), see ${picocolors_1.default.underline('https://vike.dev/NODE_ENV')} and ${picocolors_1.default.underline('https://vike.dev/warning/setup')}`, { onlyOnce: true });
42
41
  (0, assert_js_1.assertUsage)(!setup.vikeVitePlugin, `Vike's Vite plugin (the ${picocolors_1.default.cyan('vike/plugin')} module) shouldn't be loaded in production, see ${picocolors_1.default.underline('https://vike.dev/warning/setup')}`);
43
42
  // This assert() one of the main goal of this file: it ensures assertIsNotProductionRuntime()
44
43
  (0, assert_js_1.assert)(!setup.shouldNotBeProduction);
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.assertVersion = assertVersion;
4
4
  exports.isVersionOrAbove = isVersionOrAbove;
5
5
  const assert_js_1 = require("./assert.js");
6
+ const assertIsNotBrowser_js_1 = require("./assertIsNotBrowser.js");
7
+ (0, assertIsNotBrowser_js_1.assertIsNotBrowser)();
6
8
  function assertVersion(dependencyName, versionActual, versionExpected) {
7
9
  (0, assert_js_1.assert)(versionActual);
8
10
  (0, assert_js_1.assert)(versionExpected);
@@ -5,17 +5,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.createDebugger = createDebugger;
7
7
  exports.isDebugActivated = isDebugActivated;
8
- const isBrowser_js_1 = require("./isBrowser.js");
9
8
  const isCallable_js_1 = require("./isCallable.js");
10
9
  const objectAssign_js_1 = require("./objectAssign.js");
11
10
  const assert_js_1 = require("./assert.js");
12
11
  const checkType_js_1 = require("./checkType.js");
13
- const getTerminWidth_js_1 = require("./getTerminWidth.js");
12
+ const getTerminalWidth_js_1 = require("./getTerminalWidth.js");
14
13
  const picocolors_1 = __importDefault(require("@brillout/picocolors"));
15
14
  const isArray_js_1 = require("./isArray.js");
16
15
  const isObject_js_1 = require("./isObject.js");
17
16
  const debug_js_1 = require("../shared/route/debug.js");
18
- (0, assert_js_1.assert)(!(0, isBrowser_js_1.isBrowser)());
17
+ const assertIsNotBrowser_js_1 = require("./assertIsNotBrowser.js");
18
+ (0, assertIsNotBrowser_js_1.assertIsNotBrowser)();
19
19
  (0, debug_js_1.setCreateDebugger)(createDebugger); // for isomorphic code
20
20
  const flags = [
21
21
  'vike:crawl',
@@ -117,7 +117,7 @@ function formatMsg(info, options, padding, position) {
117
117
  return str;
118
118
  }
119
119
  function pad(str, padding) {
120
- const terminalWidth = (0, getTerminWidth_js_1.getTerminalWidth)();
120
+ const terminalWidth = (0, getTerminalWidth_js_1.getTerminalWidth)();
121
121
  const lines = [];
122
122
  str.split('\n').forEach((line) => {
123
123
  if (!terminalWidth) {
@@ -1,22 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getGlobalObject = getGlobalObject;
4
- exports.assertIsSingleModuleInstance = assertIsSingleModuleInstance;
5
- const assert_js_1 = require("./assert.js");
6
4
  /** Share information across module instances. */
7
- function getGlobalObject(key, defaultValue) {
8
- const globalObjects = getGlobalObjects();
9
- const globalObject = (globalObjects[key] = globalObjects[key] || defaultValue);
5
+ function getGlobalObject(moduleId, defaultValue) {
6
+ const globals = getGlobals();
7
+ const globalObject = (globals[moduleId] ?? (globals[moduleId] = defaultValue));
10
8
  return globalObject;
11
9
  }
12
- /** Assert that the module is instantiated only once. */
13
- function assertIsSingleModuleInstance(key) {
14
- const globalObjects = getGlobalObjects();
15
- (0, assert_js_1.assert)(!(key in globalObjects));
16
- }
17
- function getGlobalObjects() {
18
- const projectKey = '_vike';
19
- // @ts-ignore
20
- const globalObjects = (globalThis[projectKey] = globalThis[projectKey] || {});
21
- return globalObjects;
10
+ function getGlobals() {
11
+ var _a;
12
+ globalThis._vike ?? (globalThis._vike = {});
13
+ (_a = globalThis._vike).globals ?? (_a.globals = {});
14
+ return globalThis._vike.globals;
22
15
  }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isNonRunnableDev = isNonRunnableDev;
4
+ const assert_js_1 = require("./assert.js");
5
+ const assertIsNotBrowser_js_1 = require("./assertIsNotBrowser.js");
6
+ (0, assertIsNotBrowser_js_1.assertIsNotBrowser)();
7
+ function isNonRunnableDev() {
8
+ if (typeof __VIKE__IS_NON_RUNNABLE_DEV === 'undefined')
9
+ return false;
10
+ (0, assert_js_1.assert)(__VIKE__IS_NON_RUNNABLE_DEV === true);
11
+ return true;
12
+ }
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.scriptFileExtensionList = exports.scriptFileExtensionPattern = void 0;
3
+ exports.scriptFileExtensionPattern = exports.scriptFileExtensionList = void 0;
4
4
  exports.isScriptFile = isScriptFile;
5
5
  exports.isPlainScriptFile = isPlainScriptFile;
6
6
  exports.isTemplateFile = isTemplateFile;
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.pathJoin = pathJoin;
4
4
  exports.pathIsRelative = pathIsRelative;
5
+ exports.pathIsAbsolute = pathIsAbsolute;
5
6
  exports.toPosixPath = toPosixPath;
6
7
  exports.assertPosixPath = assertPosixPath;
7
8
  // Utilities for handling file paths.
@@ -22,12 +23,11 @@ function pathJoin(path1, path2) {
22
23
  joined = '/' + joined;
23
24
  return joined;
24
25
  }
25
- /* https://github.com/brillout/telefunc/blob/0fd44322acbd07857ae29361ba7c998607f17dd5/telefunc/utils/path-shim.ts#L17-L21
26
- const IS_ABSOLUTE_RE = /^[/\\](?![/\\])|^[/\\]{2}(?!\.)|^[A-Za-z]:[/\\]/
27
- function pathIsAbsolute(filePath: string) {
28
- return IS_ABSOLUTE_RE.test(filePath)
26
+ // https://github.com/brillout/telefunc/blob/0fd44322acbd07857ae29361ba7c998607f17dd5/telefunc/utils/path-shim.ts#L17-L21
27
+ const IS_ABSOLUTE_RE = /^[/\\](?![/\\])|^[/\\]{2}(?!\.)|^[A-Za-z]:[/\\]/;
28
+ function pathIsAbsolute(filePath) {
29
+ return IS_ABSOLUTE_RE.test(filePath);
29
30
  }
30
- //*/
31
31
  /**********************/
32
32
  /****** UTILS *********/
33
33
  /**********************/
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.requireResolveOptional = requireResolveOptional;
7
7
  exports.requireResolveOptionalDir = requireResolveOptionalDir;
8
8
  exports.requireResolveNpmPackage = requireResolveNpmPackage;
9
- exports.requireResolveVikeDistFile = requireResolveVikeDistFile;
10
- exports.getVikeNodeModulesRoot = getVikeNodeModulesRoot;
9
+ exports.requireResolveDistFile = requireResolveDistFile;
10
+ exports.getPackageNodeModulesDirectory = getPackageNodeModulesDirectory;
11
11
  const assert_js_1 = require("./assert.js");
12
12
  const assertIsNotBrowser_js_1 = require("./assertIsNotBrowser.js");
13
13
  const assertSetup_js_1 = require("./assertSetup.js");
@@ -109,11 +109,11 @@ function requireResolveNpmPackage({ importPathNpmPackage, userRootDir, }) {
109
109
  throw res.err;
110
110
  return res.importPathResolvedFilePath;
111
111
  }
112
- function requireResolveVikeDistFile(vikeDistFile) {
113
- const vikeNodeModulesRoot = getVikeNodeModulesRoot();
114
- (0, path_js_1.assertPosixPath)(vikeNodeModulesRoot);
115
- (0, path_js_1.assertPosixPath)(vikeDistFile);
116
- const importPathResolvedFilePath = makeNodeFriendly(node_path_1.default.posix.join(vikeNodeModulesRoot, vikeDistFile));
112
+ function requireResolveDistFile(distFile) {
113
+ const packageNodeModulesDirectory = getPackageNodeModulesDirectory();
114
+ (0, path_js_1.assertPosixPath)(packageNodeModulesDirectory);
115
+ (0, path_js_1.assertPosixPath)(distFile);
116
+ const importPathResolvedFilePath = makeNodeFriendly(node_path_1.default.posix.join(packageNodeModulesDirectory, distFile));
117
117
  // Double check
118
118
  {
119
119
  const res = requireResolve_(importPathResolvedFilePath,
@@ -171,11 +171,12 @@ function addFileExtensionsToRequireResolve(require_) {
171
171
  }
172
172
  });
173
173
  }
174
- function getVikeNodeModulesRoot() {
175
- // [RELATIVE_PATH_FROM_DIST] Current file: vike/dist/esm/utils/requireResolve.js
176
- (0, assert_js_1.assert)(importMetaUrl.includes('/dist/esm/') || importMetaUrl.includes('/dist/cjs/'));
177
- const vikeNodeModulesRoot = node_path_1.default.posix.join(removeFilePrefix(importMetaUrl), '../../../../');
178
- return vikeNodeModulesRoot;
174
+ function getPackageNodeModulesDirectory() {
175
+ // [RELATIVE_PATH_FROM_DIST] Current file: node_modules/${packageName}/dist/esm/utils/requireResolve.js
176
+ (0, assert_js_1.assert)(importMetaUrl.includes('/dist/esm/utils/') || importMetaUrl.includes('/dist/cjs/utils/'));
177
+ const packageNodeModulesDirectory = node_path_1.default.posix.join(removeFilePrefix(node_path_1.default.dirname(importMetaUrl)), '../../../');
178
+ // Return `node_modules/${packageName}/`
179
+ return packageNodeModulesDirectory;
179
180
  }
180
181
  function getFakeImporterFile(dirPath) {
181
182
  (0, path_js_1.assertPosixPath)(dirPath);
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.augmentType = augmentType;
3
+ exports.updateType = updateType;
4
4
  const assert_js_1 = require("./assert.js");
5
- /** Help TypeScript augment the type of objects. */
6
- function augmentType(thing, clone) {
5
+ /** Help TypeScript update the type of dynamically modified objects. */
6
+ function updateType(thing, clone) {
7
7
  // @ts-ignore
8
8
  (0, assert_js_1.assert)(thing === clone);
9
9
  }
@@ -1,4 +1,4 @@
1
- export { setGlobalContext_buildEntry } from '../node/runtime/globalContext.js';
1
+ export { setGlobalContext_prodBuildEntry } from '../node/runtime/globalContext.js';
2
2
  export { route, getPagesAndRoutes };
3
3
  export type { PageRoutes, PageFile, PageConfigRuntime as PageConfig };
4
4
  import { route as routeInternal, type PageRoutes } from '../shared/route/index.js';
@@ -16,5 +16,5 @@ declare function getPagesAndRoutes(): Promise<{
16
16
  allPageIds: string[];
17
17
  }>;
18
18
  declare function route(pageContext: Parameters<typeof routeInternal>[0]): Promise<{
19
- pageContextAddendum: import("../shared/route/index.js").PageContextFromRoute;
19
+ pageContextAddendum: import("../shared/route/index.js").PageContextAfterRoute;
20
20
  }>;
@@ -1,6 +1,6 @@
1
- // Needed by Vike
2
- export { setGlobalContext_buildEntry } from '../node/runtime/globalContext.js';
3
- // Needed by vite-plugin-vercel
1
+ // Used by vike:build:pluginProdBuildEntry
2
+ export { setGlobalContext_prodBuildEntry } from '../node/runtime/globalContext.js';
3
+ // Used by vite-plugin-vercel
4
4
  export { route, getPagesAndRoutes };
5
5
  import { route as routeInternal } from '../shared/route/index.js';
6
6
  import { getGlobalContextServerInternal, initGlobalContext_getPagesAndRoutes } from '../node/runtime/globalContext.js';
@@ -10,7 +10,7 @@ declare function createPageContextClientSide(urlOriginal: string): Promise<{
10
10
  _globalContext: {
11
11
  isGlobalContext: true;
12
12
  _isOriginalObject: true;
13
- _virtualFileExports: unknown;
13
+ _virtualFileExportsGlobalEntry: unknown;
14
14
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
15
15
  _pageConfigs: import("../../types/PageConfig.js").PageConfigRuntime[];
16
16
  _pageConfigGlobal: import("../../types/PageConfig.js").PageConfigGlobalRuntime;
@@ -23,7 +23,7 @@ declare function createPageContextClientSide(urlOriginal: string): Promise<{
23
23
  };
24
24
  config: import("../../types/index.js").ConfigResolved;
25
25
  pages: {
26
- [k: string]: import("../../shared/page-configs/resolveVikeConfigPublic.js").VikeConfigPublicPageEager;
26
+ [k: string]: import("../../shared/page-configs/resolveVikeConfigPublic.js").VikeConfigPublicPageEagerLoaded;
27
27
  };
28
28
  } & {
29
29
  isClientSide: true;
@@ -3,7 +3,7 @@ import { createPageContextObject, createPageContextShared } from '../../shared/c
3
3
  import { getPageContextUrlComputed } from '../../shared/getPageContextUrlComputed.js';
4
4
  import { getBaseServer } from './getBaseServer.js';
5
5
  import { getGlobalContextClientInternal } from './globalContext.js';
6
- import { assert, augmentType, isBaseServer, objectAssign } from './utils.js';
6
+ import { assert, updateType, isBaseServer, objectAssign } from './utils.js';
7
7
  async function createPageContextClientSide(urlOriginal) {
8
8
  const globalContext = await getGlobalContextClientInternal();
9
9
  const baseServer = getBaseServer();
@@ -22,6 +22,6 @@ async function createPageContextClientSide(urlOriginal) {
22
22
  const pageContextUrlComputed = getPageContextUrlComputed(pageContextCreated);
23
23
  objectAssign(pageContextCreated, pageContextUrlComputed);
24
24
  const pageContextAugmented = createPageContextShared(pageContextCreated, globalContext._vikeConfigPublicGlobal);
25
- augmentType(pageContextCreated, pageContextAugmented);
25
+ updateType(pageContextCreated, pageContextAugmented);
26
26
  return pageContextCreated;
27
27
  }
@@ -1,7 +1,7 @@
1
1
  export { setPageContextCurrent };
2
2
  export { getPageContextCurrent };
3
- import type { VikeConfigPublicPageLazy } from '../../shared/getPageFiles.js';
4
- type PageContextCurrent = VikeConfigPublicPageLazy & {
3
+ import type { VikeConfigPublicPageLazyLoaded } from '../../shared/getPageFiles.js';
4
+ type PageContextCurrent = VikeConfigPublicPageLazyLoaded & {
5
5
  urlPathname: string;
6
6
  };
7
7
  declare function getPageContextCurrent(): null | PageContextCurrent;