vike 0.4.236 → 0.4.237-commit-85e89b1

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 (261) hide show
  1. package/dist/cjs/client/runtime-client-routing/globalContext.js +2 -2
  2. package/dist/cjs/client/runtime-server-routing/globalContext.js +2 -2
  3. package/dist/cjs/client/shared/createGetGlobalContextClient.js +21 -13
  4. package/dist/cjs/client/shared/getJsonSerializedInHtml.js +10 -1
  5. package/dist/cjs/client/shared/utils.js +1 -0
  6. package/dist/cjs/node/api/preview.js +1 -1
  7. package/dist/cjs/node/prerender/runPrerender.js +4 -4
  8. package/dist/cjs/node/runtime/globalContext.js +127 -41
  9. package/dist/cjs/node/runtime/html/injectAssets/getHtmlTags.js +2 -2
  10. package/dist/cjs/node/runtime/html/injectAssets/getViteDevScript.js +3 -1
  11. package/dist/cjs/node/runtime/html/serializeContext.js +25 -64
  12. package/dist/cjs/node/runtime/html/stream.js +1 -1
  13. package/dist/cjs/node/runtime/renderPage/analyzePage.js +3 -3
  14. package/dist/cjs/node/runtime/renderPage/createPageContextServerSide.js +4 -7
  15. package/dist/cjs/node/runtime/renderPage/getPageAssets/getManifestEntry.js +5 -4
  16. package/dist/cjs/node/runtime/renderPage/getPageAssets/{retrieveAssetsDev.js → retrievePageAssetsDev.js} +21 -2
  17. package/dist/cjs/node/runtime/renderPage/getPageAssets/{retrieveAssetsProd.js → retrievePageAssetsProd.js} +19 -2
  18. package/dist/cjs/node/runtime/renderPage/getPageAssets.js +8 -34
  19. package/dist/cjs/node/runtime/renderPage/handlePageContextRequestUrl.js +50 -14
  20. package/dist/cjs/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +23 -9
  21. package/dist/cjs/node/runtime/renderPage/renderPageAlreadyRouted.js +3 -5
  22. package/dist/cjs/node/runtime/renderPage.js +9 -8
  23. package/dist/cjs/node/runtime/utils.js +4 -0
  24. package/dist/cjs/node/shared/utils.js +1 -0
  25. package/dist/cjs/node/shared/virtualFileId.js +110 -0
  26. package/dist/cjs/node/vite/index.js +5 -3
  27. package/dist/cjs/node/vite/onLoad.js +5 -3
  28. package/dist/cjs/node/vite/plugins/pluginBuild/handleAssetsManifest.js +31 -23
  29. package/dist/cjs/node/vite/plugins/pluginBuild/pluginAutoFullBuild.js +3 -3
  30. package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildApp.js +29 -13
  31. package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildConfig.js +20 -14
  32. package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildEntry.js +4 -4
  33. package/dist/cjs/node/vite/plugins/pluginBuild/pluginDistFileNames.js +17 -5
  34. package/dist/cjs/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.js +1 -1
  35. package/dist/cjs/node/vite/plugins/pluginBuild/pluginModuleBanner.js +6 -12
  36. package/dist/cjs/node/vite/plugins/pluginCommon.js +1 -0
  37. package/dist/cjs/node/vite/plugins/pluginDev/determineOptimizeDeps.js +119 -73
  38. package/dist/cjs/node/vite/plugins/pluginEnvVars.js +8 -15
  39. package/dist/cjs/node/vite/plugins/pluginExtractAssets.js +8 -9
  40. package/dist/cjs/node/vite/plugins/pluginExtractExportNames.js +7 -3
  41. package/dist/cjs/node/vite/plugins/pluginNonRunnableDev.js +47 -0
  42. package/dist/cjs/node/vite/plugins/pluginPreview.js +11 -4
  43. package/dist/cjs/node/vite/plugins/pluginReplaceConstants.js +6 -13
  44. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/{getVirtualFilePageConfigsEager.js → generateVirtualFileGlobalEntry.js} +11 -9
  45. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/{getVirtualFileEntry.js → generateVirtualFileGlobalEntryWithOldDesign.js} +11 -11
  46. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/{getVirtualFilePageConfigLazy.js → generateVirtualFilePageEntry.js} +10 -11
  47. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/getConfigValueSourcesRelevant.js +67 -0
  48. package/dist/cjs/node/vite/plugins/pluginVirtualFiles.js +18 -17
  49. package/dist/cjs/node/vite/shared/findPageFiles.js +1 -1
  50. package/dist/cjs/node/vite/shared/{resolveClientEntriesDev.js → getClientEntrySrcDev.js} +2 -2
  51. package/dist/cjs/node/vite/shared/getMagicString.js +18 -0
  52. package/dist/cjs/node/vite/shared/getManifestFilePathRelative.js +10 -0
  53. package/dist/cjs/node/vite/shared/getOutDirs.js +18 -12
  54. package/dist/cjs/node/vite/shared/getViteConfigRuntime.js +1 -1
  55. package/dist/cjs/node/vite/shared/isViteServerBuild.js +54 -31
  56. package/dist/cjs/node/vite/shared/loggerVite.js +1 -1
  57. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.js +31 -3
  58. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles.js +1 -3
  59. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal.js +8 -19
  60. package/dist/cjs/node/vite/utils.js +1 -0
  61. package/dist/cjs/shared/createGlobalContextShared.js +36 -15
  62. package/dist/cjs/shared/getPageFiles/{parseVirtualFileExports.js → parseVirtualFileExportsGlobalEntry.js} +20 -20
  63. package/dist/cjs/shared/getProxyForPublicUsage.js +2 -2
  64. package/dist/cjs/shared/modifyUrlSameOrigin.js +9 -4
  65. package/dist/cjs/shared/page-configs/loadPageEntry.js +25 -0
  66. package/dist/cjs/shared/page-configs/resolveVikeConfigPublic.js +4 -4
  67. package/dist/cjs/shared/page-configs/serialize/{parsePageConfigs.js → parsePageConfigsSerialized.js} +2 -2
  68. package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +16 -16
  69. package/dist/cjs/shared/utils.js +2 -0
  70. package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
  71. package/dist/cjs/utils/assertSetup.js +7 -5
  72. package/dist/cjs/utils/cast.js +1 -1
  73. package/dist/cjs/utils/debug.js +1 -0
  74. package/dist/cjs/utils/getViteRPC.js +79 -0
  75. package/dist/cjs/utils/isFilePathAbsoluteFilesystem.js +1 -0
  76. package/dist/cjs/utils/isRunnableDevEnvironment.js +9 -0
  77. package/dist/cjs/utils/virtualFileId.js +39 -0
  78. package/dist/esm/client/node.js +1 -1
  79. package/dist/esm/client/runtime-client-routing/createPageContextClientSide.d.ts +3 -3
  80. package/dist/esm/client/runtime-client-routing/getPageContextCurrent.d.ts +2 -2
  81. package/dist/esm/client/runtime-client-routing/getPageContextFromHooks.d.ts +14 -14
  82. package/dist/esm/client/runtime-client-routing/getPageContextFromHooks.js +35 -48
  83. package/dist/esm/client/runtime-client-routing/globalContext.d.ts +3 -3
  84. package/dist/esm/client/runtime-client-routing/globalContext.js +2 -2
  85. package/dist/esm/client/runtime-client-routing/history.d.ts +3 -5
  86. package/dist/esm/client/runtime-client-routing/history.js +39 -22
  87. package/dist/esm/client/runtime-client-routing/initClientRouter.js +2 -3
  88. package/dist/esm/client/runtime-client-routing/prefetch/getPrefetchSettings.d.ts +2 -2
  89. package/dist/esm/client/runtime-client-routing/prefetch.d.ts +2 -2
  90. package/dist/esm/client/runtime-client-routing/prefetch.js +2 -2
  91. package/dist/esm/client/runtime-client-routing/preparePageContextForPublicUsageClient.d.ts +2 -2
  92. package/dist/esm/client/runtime-client-routing/renderPageClientSide.d.ts +5 -5
  93. package/dist/esm/client/runtime-client-routing/renderPageClientSide.js +43 -30
  94. package/dist/esm/client/runtime-client-routing/utils.d.ts +2 -0
  95. package/dist/esm/client/runtime-client-routing/utils.js +2 -0
  96. package/dist/esm/client/runtime-server-routing/createPageContextClientSide.d.ts +4 -4
  97. package/dist/esm/client/runtime-server-routing/globalContext.d.ts +3 -3
  98. package/dist/esm/client/runtime-server-routing/globalContext.js +2 -2
  99. package/dist/esm/client/runtime-server-routing/preparePageContextForPublicUsageClient.d.ts +2 -2
  100. package/dist/esm/client/shared/createGetGlobalContextClient.d.ts +4 -4
  101. package/dist/esm/client/shared/createGetGlobalContextClient.js +21 -13
  102. package/dist/esm/client/shared/execHookOnRenderClient.d.ts +2 -2
  103. package/dist/esm/client/shared/getJsonSerializedInHtml.js +10 -1
  104. package/dist/esm/client/shared/loadPageConfigsLazyClientSide.d.ts +1 -1
  105. package/dist/esm/client/shared/loadPageConfigsLazyClientSide.js +4 -4
  106. package/dist/esm/client/shared/preparePageContextForPublicUsageClientShared.d.ts +2 -2
  107. package/dist/esm/client/shared/utils.d.ts +1 -0
  108. package/dist/esm/client/shared/utils.js +1 -0
  109. package/dist/esm/node/api/preview.js +1 -1
  110. package/dist/esm/node/prerender/runPrerender.d.ts +49 -141
  111. package/dist/esm/node/prerender/runPrerender.js +4 -4
  112. package/dist/esm/node/runtime/globalContext.d.ts +43 -63
  113. package/dist/esm/node/runtime/globalContext.js +128 -42
  114. package/dist/esm/node/runtime/html/injectAssets/getHtmlTags.js +2 -2
  115. package/dist/esm/node/runtime/html/injectAssets/getViteDevScript.js +4 -2
  116. package/dist/esm/node/runtime/html/serializeContext.d.ts +11 -6
  117. package/dist/esm/node/runtime/html/serializeContext.js +25 -64
  118. package/dist/esm/node/runtime/html/stream.js +1 -1
  119. package/dist/esm/node/runtime/renderPage/analyzePage.js +3 -3
  120. package/dist/esm/node/runtime/renderPage/createPageContextServerSide.d.ts +13 -36
  121. package/dist/esm/node/runtime/renderPage/createPageContextServerSide.js +4 -7
  122. package/dist/esm/node/runtime/renderPage/execHookServer.d.ts +2 -2
  123. package/dist/esm/node/runtime/renderPage/getPageAssets/getManifestEntry.js +5 -4
  124. package/dist/esm/node/runtime/renderPage/getPageAssets/retrievePageAssetsDev.d.ts +10 -0
  125. package/dist/esm/node/runtime/renderPage/getPageAssets/{retrieveAssetsDev.js → retrievePageAssetsDev.js} +22 -3
  126. package/dist/esm/node/runtime/renderPage/getPageAssets/retrievePageAssetsProd.d.ts +10 -0
  127. package/dist/esm/node/runtime/renderPage/getPageAssets/{retrieveAssetsProd.js → retrievePageAssetsProd.js} +19 -2
  128. package/dist/esm/node/runtime/renderPage/getPageAssets.d.ts +0 -6
  129. package/dist/esm/node/runtime/renderPage/getPageAssets.js +8 -34
  130. package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.d.ts +2 -2
  131. package/dist/esm/node/runtime/renderPage/handlePageContextRequestUrl.d.ts +1 -1
  132. package/dist/esm/node/runtime/renderPage/handlePageContextRequestUrl.js +51 -15
  133. package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.d.ts +3 -3
  134. package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +26 -12
  135. package/dist/esm/node/runtime/renderPage/log404/index.d.ts +2 -2
  136. package/dist/esm/node/runtime/renderPage/preparePageContextForPublicUsageServer.d.ts +2 -3
  137. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +30 -77
  138. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.js +3 -5
  139. package/dist/esm/node/runtime/renderPage.d.ts +13 -35
  140. package/dist/esm/node/runtime/renderPage.js +9 -8
  141. package/dist/esm/node/runtime/utils.d.ts +4 -0
  142. package/dist/esm/node/runtime/utils.js +4 -0
  143. package/dist/esm/node/shared/utils.d.ts +1 -0
  144. package/dist/esm/node/shared/utils.js +1 -0
  145. package/dist/esm/node/shared/virtualFileId.d.ts +28 -0
  146. package/dist/esm/node/shared/virtualFileId.js +107 -0
  147. package/dist/esm/node/vite/index.js +5 -3
  148. package/dist/esm/node/vite/onLoad.js +5 -3
  149. package/dist/esm/node/vite/plugins/pluginBuild/handleAssetsManifest.d.ts +3 -3
  150. package/dist/esm/node/vite/plugins/pluginBuild/handleAssetsManifest.js +32 -24
  151. package/dist/esm/node/vite/plugins/pluginBuild/pluginAutoFullBuild.js +3 -3
  152. package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildApp.js +29 -13
  153. package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildConfig.d.ts +0 -2
  154. package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildConfig.js +21 -14
  155. package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildEntry.js +4 -4
  156. package/dist/esm/node/vite/plugins/pluginBuild/pluginDistFileNames.js +17 -5
  157. package/dist/esm/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.js +1 -1
  158. package/dist/esm/node/vite/plugins/pluginBuild/pluginModuleBanner.js +7 -10
  159. package/dist/esm/node/vite/plugins/pluginCommon.d.ts +3 -0
  160. package/dist/esm/node/vite/plugins/pluginCommon.js +1 -0
  161. package/dist/esm/node/vite/plugins/pluginDev/determineOptimizeDeps.js +121 -75
  162. package/dist/esm/node/vite/plugins/pluginEnvVars.js +6 -10
  163. package/dist/esm/node/vite/plugins/pluginExtractAssets.js +7 -8
  164. package/dist/esm/node/vite/plugins/pluginExtractExportNames.js +6 -2
  165. package/dist/esm/node/vite/plugins/pluginNonRunnableDev.d.ts +26 -0
  166. package/dist/esm/node/vite/plugins/pluginNonRunnableDev.js +45 -0
  167. package/dist/esm/node/vite/plugins/pluginPreview.js +13 -6
  168. package/dist/esm/node/vite/plugins/pluginReplaceConstants.js +6 -10
  169. package/dist/esm/node/vite/plugins/pluginVirtualFiles/generateVirtualFileGlobalEntry.d.ts +2 -0
  170. package/dist/esm/node/vite/plugins/pluginVirtualFiles/{getVirtualFilePageConfigsEager.js → generateVirtualFileGlobalEntry.js} +11 -9
  171. package/dist/esm/node/vite/plugins/pluginVirtualFiles/generateVirtualFileGlobalEntryWithOldDesign.d.ts +6 -0
  172. package/dist/esm/node/vite/plugins/pluginVirtualFiles/{getVirtualFileEntry.js → generateVirtualFileGlobalEntryWithOldDesign.js} +11 -11
  173. package/dist/esm/node/vite/plugins/pluginVirtualFiles/generateVirtualFilePageEntry.d.ts +3 -0
  174. package/dist/esm/node/vite/plugins/pluginVirtualFiles/{getVirtualFilePageConfigLazy.js → generateVirtualFilePageEntry.js} +10 -11
  175. package/dist/esm/node/vite/plugins/pluginVirtualFiles/getConfigValueSourcesRelevant.d.ts +14 -0
  176. package/dist/esm/node/vite/plugins/pluginVirtualFiles/getConfigValueSourcesRelevant.js +65 -0
  177. package/dist/esm/node/vite/plugins/pluginVirtualFiles.js +17 -16
  178. package/dist/esm/node/vite/shared/findPageFiles.js +1 -1
  179. package/dist/esm/node/vite/shared/getClientEntrySrcDev.d.ts +4 -0
  180. package/dist/esm/node/vite/shared/{resolveClientEntriesDev.js → getClientEntrySrcDev.js} +2 -2
  181. package/dist/esm/node/vite/shared/getMagicString.d.ts +9 -0
  182. package/dist/esm/node/vite/shared/getMagicString.js +13 -0
  183. package/dist/esm/node/vite/shared/getManifestFilePathRelative.d.ts +2 -0
  184. package/dist/esm/node/vite/shared/getManifestFilePathRelative.js +8 -0
  185. package/dist/esm/node/vite/shared/getOutDirs.d.ts +6 -3
  186. package/dist/esm/node/vite/shared/getOutDirs.js +19 -13
  187. package/dist/esm/node/vite/shared/getViteConfigRuntime.js +1 -1
  188. package/dist/esm/node/vite/shared/isViteServerBuild.d.ts +14 -11
  189. package/dist/esm/node/vite/shared/isViteServerBuild.js +55 -31
  190. package/dist/esm/node/vite/shared/loggerVite.js +1 -1
  191. package/dist/esm/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.d.ts +2 -2
  192. package/dist/esm/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.js +31 -3
  193. package/dist/esm/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles.js +1 -3
  194. package/dist/esm/node/vite/shared/resolveVikeConfigInternal.d.ts +3 -5
  195. package/dist/esm/node/vite/shared/resolveVikeConfigInternal.js +10 -21
  196. package/dist/esm/node/vite/utils.d.ts +1 -0
  197. package/dist/esm/node/vite/utils.js +1 -0
  198. package/dist/esm/shared/createGlobalContextShared.d.ts +8 -8
  199. package/dist/esm/shared/createGlobalContextShared.js +38 -17
  200. package/dist/esm/shared/getPageFiles/{parseVirtualFileExports.d.ts → parseVirtualFileExportsGlobalEntry.d.ts} +2 -2
  201. package/dist/esm/shared/getPageFiles/{parseVirtualFileExports.js → parseVirtualFileExportsGlobalEntry.js} +20 -20
  202. package/dist/esm/shared/getPageFiles.d.ts +1 -1
  203. package/dist/esm/shared/hooks/execHook.d.ts +2 -2
  204. package/dist/esm/shared/hooks/getHook.d.ts +3 -3
  205. package/dist/esm/shared/modifyUrlSameOrigin.d.ts +1 -1
  206. package/dist/esm/shared/modifyUrlSameOrigin.js +9 -4
  207. package/dist/esm/shared/page-configs/loadPageEntry.d.ts +3 -0
  208. package/dist/esm/shared/page-configs/loadPageEntry.js +23 -0
  209. package/dist/esm/shared/page-configs/resolveVikeConfigPublic.d.ts +9 -9
  210. package/dist/esm/shared/page-configs/resolveVikeConfigPublic.js +4 -4
  211. package/dist/esm/shared/page-configs/serialize/PageConfigSerialized.d.ts +1 -1
  212. package/dist/esm/shared/page-configs/serialize/{parsePageConfigs.d.ts → parsePageConfigsSerialized.d.ts} +2 -2
  213. package/dist/esm/shared/page-configs/serialize/{parsePageConfigs.js → parsePageConfigsSerialized.js} +2 -2
  214. package/dist/esm/shared/page-configs/serialize/serializeConfigValues.d.ts +3 -2
  215. package/dist/esm/shared/page-configs/serialize/serializeConfigValues.js +17 -17
  216. package/dist/esm/shared/utils.d.ts +2 -0
  217. package/dist/esm/shared/utils.js +2 -0
  218. package/dist/esm/types/Config.d.ts +33 -98
  219. package/dist/esm/types/PageConfig.d.ts +9 -7
  220. package/dist/esm/types/VikeNamespace.d.ts +13 -0
  221. package/dist/esm/types/index.d.ts +3 -1
  222. package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
  223. package/dist/esm/utils/PROJECT_VERSION.js +1 -1
  224. package/dist/esm/utils/assertSetup.js +7 -5
  225. package/dist/esm/utils/cast.d.ts +2 -2
  226. package/dist/esm/utils/cast.js +1 -1
  227. package/dist/esm/utils/debug.d.ts +1 -1
  228. package/dist/esm/utils/debug.js +1 -0
  229. package/dist/esm/utils/getViteRPC.d.ts +6 -0
  230. package/dist/esm/utils/getViteRPC.js +77 -0
  231. package/dist/esm/utils/isFilePathAbsoluteFilesystem.d.ts +7 -0
  232. package/dist/esm/utils/isFilePathAbsoluteFilesystem.js +1 -0
  233. package/dist/esm/utils/isRunnableDevEnvironment.d.ts +3 -0
  234. package/dist/esm/utils/isRunnableDevEnvironment.js +7 -0
  235. package/dist/esm/utils/objectFilter.d.ts +1 -1
  236. package/dist/esm/utils/virtualFileId.d.ts +6 -0
  237. package/dist/esm/{node/shared/virtualFiles.js → utils/virtualFileId.js} +15 -17
  238. package/package.json +16 -7
  239. package/dist/cjs/node/shared/virtualFiles/virtualFileEntry.js +0 -29
  240. package/dist/cjs/node/shared/virtualFiles/virtualFilePageConfigLazy.js +0 -39
  241. package/dist/cjs/node/shared/virtualFiles.js +0 -41
  242. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/isRuntimeEnvMatch.js +0 -23
  243. package/dist/cjs/node/vite/shared/applyRegExWithMagicString.js +0 -10
  244. package/dist/cjs/shared/page-configs/loadConfigValues.js +0 -21
  245. package/dist/esm/node/runtime/renderPage/getPageAssets/retrieveAssetsDev.d.ts +0 -4
  246. package/dist/esm/node/runtime/renderPage/getPageAssets/retrieveAssetsProd.d.ts +0 -4
  247. package/dist/esm/node/shared/virtualFiles/virtualFileEntry.d.ts +0 -11
  248. package/dist/esm/node/shared/virtualFiles/virtualFileEntry.js +0 -26
  249. package/dist/esm/node/shared/virtualFiles/virtualFilePageConfigLazy.d.ts +0 -9
  250. package/dist/esm/node/shared/virtualFiles/virtualFilePageConfigLazy.js +0 -37
  251. package/dist/esm/node/shared/virtualFiles.d.ts +0 -8
  252. package/dist/esm/node/vite/plugins/pluginVirtualFiles/getVirtualFileEntry.d.ts +0 -5
  253. package/dist/esm/node/vite/plugins/pluginVirtualFiles/getVirtualFilePageConfigLazy.d.ts +0 -3
  254. package/dist/esm/node/vite/plugins/pluginVirtualFiles/getVirtualFilePageConfigsEager.d.ts +0 -2
  255. package/dist/esm/node/vite/plugins/pluginVirtualFiles/isRuntimeEnvMatch.d.ts +0 -7
  256. package/dist/esm/node/vite/plugins/pluginVirtualFiles/isRuntimeEnvMatch.js +0 -21
  257. package/dist/esm/node/vite/shared/applyRegExWithMagicString.d.ts +0 -3
  258. package/dist/esm/node/vite/shared/applyRegExWithMagicString.js +0 -8
  259. package/dist/esm/node/vite/shared/resolveClientEntriesDev.d.ts +0 -4
  260. package/dist/esm/shared/page-configs/loadConfigValues.d.ts +0 -3
  261. package/dist/esm/shared/page-configs/loadConfigValues.js +0 -19
@@ -1,12 +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
- const isRuntimeEnvMatch_js_1 = require("./isRuntimeEnvMatch.js");
8
7
  const serializeConfigValues_js_1 = require("../../../../shared/page-configs/serialize/serializeConfigValues.js");
9
- async function getVirtualFilePageConfigsEager(isForClientSide, isDev, id, isClientRouting) {
8
+ async function generateVirtualFileGlobalEntry(isForClientSide, isDev, id, isClientRouting) {
10
9
  const vikeConfig = await (0, resolveVikeConfigInternal_js_1.getVikeConfigInternal)(true);
11
10
  const { _pageConfigs: pageConfigs, _pageConfigGlobal: pageConfigGlobal } = vikeConfig;
12
11
  return getCode(pageConfigs, pageConfigGlobal, isForClientSide, isDev, id, isClientRouting);
@@ -21,6 +20,10 @@ function getCode(pageConfigs, pageConfigGlobal, isForClientSide, isDev, id, isCl
21
20
  lines.push('export const pageConfigGlobalSerialized = {');
22
21
  lines.push(getCodePageConfigGlobalSerialized(pageConfigGlobal, isForClientSide, isClientRouting, isDev, importStatements, filesEnv));
23
22
  lines.push('};');
23
+ if (!isForClientSide && isDev) {
24
+ // https://vite.dev/guide/api-environment-frameworks.html
25
+ lines.push('if ((undefined)) (undefined).accept();');
26
+ }
24
27
  const code = [...importStatements, ...lines].join('\n');
25
28
  (0, debug_js_1.debug)(id, isForClientSide ? 'CLIENT-SIDE' : 'SERVER-SIDE', code);
26
29
  return code;
@@ -33,11 +36,10 @@ function getCodePageConfigsSerialized(pageConfigs, isForClientSide, isClientRout
33
36
  lines.push(` pageId: ${JSON.stringify(pageId)},`);
34
37
  lines.push(` isErrorPage: ${JSON.stringify(isErrorPage)},`);
35
38
  lines.push(` routeFilesystem: ${JSON.stringify(routeFilesystem)},`);
36
- const virtualFileId = JSON.stringify((0, virtualFilePageConfigLazy_js_1.getVirtualFileIdPageConfigLazy)(pageId, isForClientSide));
37
- const load = `() => ({ moduleId: ${virtualFileId}, moduleExports: import(${virtualFileId}) })`;
38
- 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}) }),`);
39
41
  lines.push(` configValuesSerialized: {`);
40
- lines.push(...(0, serializeConfigValues_js_1.serializeConfigValues)(pageConfig, importStatements, filesEnv, (configEnv) => (0, isRuntimeEnvMatch_js_1.isRuntimeEnvMatch)(configEnv, { isForClientSide, isClientRouting, isDev }), ' ', true));
42
+ lines.push(...(0, serializeConfigValues_js_1.serializeConfigValues)(pageConfig, importStatements, filesEnv, { isForClientSide, isClientRouting, isDev }, ' ', true));
41
43
  lines.push(` },`);
42
44
  lines.push(` },`);
43
45
  });
@@ -47,7 +49,7 @@ function getCodePageConfigsSerialized(pageConfigs, isForClientSide, isClientRout
47
49
  function getCodePageConfigGlobalSerialized(pageConfigGlobal, isForClientSide, isClientRouting, isDev, importStatements, filesEnv) {
48
50
  const lines = [];
49
51
  lines.push(` configValuesSerialized: {`);
50
- lines.push(...(0, serializeConfigValues_js_1.serializeConfigValues)(pageConfigGlobal, importStatements, filesEnv, (configEnv) => (0, isRuntimeEnvMatch_js_1.isRuntimeEnvMatch)(configEnv, { isForClientSide, isClientRouting, isDev }), ' ', null));
52
+ lines.push(...(0, serializeConfigValues_js_1.serializeConfigValues)(pageConfigGlobal, importStatements, filesEnv, { isForClientSide, isClientRouting, isDev }, ' ', null));
51
53
  lines.push(` },`);
52
54
  const code = lines.join('\n');
53
55
  return code;
@@ -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
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);
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, isViteServerBuild_js_1.isViteServerBuild_extraSafe)(config, options, env));
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;
3
+ exports.generateVirtualFilePageEntry = generateVirtualFilePageEntry;
4
4
  const utils_js_1 = require("../../utils.js");
5
- const virtualFilePageConfigLazy_js_1 = require("../../../shared/virtualFiles/virtualFilePageConfigLazy.js");
5
+ const virtualFileId_js_1 = require("../../../shared/virtualFileId.js");
6
6
  const resolveVikeConfigInternal_js_1 = require("../../shared/resolveVikeConfigInternal.js");
7
7
  const extractAssetsQuery_js_1 = require("../../../shared/extractAssetsQuery.js");
8
8
  const debug_js_1 = require("./debug.js");
9
- const isRuntimeEnvMatch_js_1 = require("./isRuntimeEnvMatch.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, config) {
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,20 +34,20 @@ 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), 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, config, isDev) {
43
42
  const lines = [];
44
43
  const importStatements = [];
45
44
  const filesEnv = new Map();
46
45
  const isClientRouting = (0, getConfigValueBuildTime_js_1.getConfigValueBuildTime)(pageConfig, 'clientRouting', 'boolean')?.value ?? false;
47
46
  lines.push('export const configValuesSerialized = {');
48
- lines.push(...(0, serializeConfigValues_js_1.serializeConfigValues)(pageConfig, importStatements, filesEnv, (configEnv) => (0, isRuntimeEnvMatch_js_1.isRuntimeEnvMatch)(configEnv, { isForClientSide, isClientRouting, isDev }), '', false));
47
+ lines.push(...(0, serializeConfigValues_js_1.serializeConfigValues)(pageConfig, importStatements, filesEnv, { isForClientSide, isClientRouting, isDev }, '', false));
49
48
  lines.push('};');
50
49
  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))}'`);
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;
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getConfigValueSourcesRelevant = getConfigValueSourcesRelevant;
4
+ exports.isRuntimeEnvMatch = isRuntimeEnvMatch;
5
+ const utils_js_1 = require("../../utils.js");
6
+ function getConfigValueSourcesRelevant(configName, runtimeEnv, pageConfig) {
7
+ const configDef = pageConfig.configDefinitions[configName];
8
+ (0, utils_js_1.assert)(configDef);
9
+ let sourcesRelevant = pageConfig.configValueSources[configName];
10
+ if (!sourcesRelevant)
11
+ return [];
12
+ if (!configDef.cumulative) {
13
+ const source = sourcesRelevant[0];
14
+ if (source) {
15
+ sourcesRelevant = [source];
16
+ }
17
+ else {
18
+ (0, utils_js_1.assert)(sourcesRelevant.length === 0);
19
+ }
20
+ }
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));
24
+ }
25
+ sourcesRelevant = sourcesRelevant.filter((source) => isRuntimeEnvMatch(source.configEnv, runtimeEnv));
26
+ return sourcesRelevant;
27
+ }
28
+ function isRuntimeEnvMatch(configEnv, runtimeEnv) {
29
+ if ('isForConfig' in runtimeEnv)
30
+ return !!configEnv.config;
31
+ // Runtime
32
+ if (!runtimeEnv.isForClientSide) {
33
+ if (!configEnv.server)
34
+ return false;
35
+ }
36
+ else {
37
+ if (!configEnv.client)
38
+ return false;
39
+ if (configEnv.client === 'if-client-routing' && !runtimeEnv.isClientRouting)
40
+ return false;
41
+ }
42
+ // Production/development
43
+ if (configEnv.production !== undefined) {
44
+ (0, utils_js_1.assert)(typeof configEnv.production === 'boolean');
45
+ (0, utils_js_1.assert)(typeof runtimeEnv.isDev === 'boolean');
46
+ if (configEnv.production) {
47
+ if (runtimeEnv.isDev)
48
+ return false;
49
+ }
50
+ else {
51
+ if (!runtimeEnv.isDev)
52
+ return false;
53
+ }
54
+ }
55
+ return true;
56
+ }
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;
67
+ }
@@ -5,12 +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 virtualFiles_js_1 = require("../../shared/virtualFiles.js");
12
- const virtualFilePageConfigLazy_js_1 = require("../../shared/virtualFiles/virtualFilePageConfigLazy.js");
13
- const virtualFileEntry_js_1 = require("../../shared/virtualFiles/virtualFileEntry.js");
11
+ const virtualFileId_js_1 = require("../../shared/virtualFileId.js");
14
12
  const resolveVikeConfigInternal_js_1 = require("../shared/resolveVikeConfigInternal.js");
15
13
  const picocolors_1 = __importDefault(require("@brillout/picocolors"));
16
14
  const loggerNotProd_js_1 = require("../shared/loggerNotProd.js");
@@ -30,8 +28,8 @@ function pluginVirtualFiles() {
30
28
  config.experimental.importGlobRestoreExtension = true;
31
29
  },
32
30
  resolveId(id) {
33
- if ((0, virtualFiles_js_1.isVirtualFileId)(id)) {
34
- return (0, virtualFiles_js_1.resolveVirtualFileId)(id);
31
+ if ((0, utils_js_1.isVirtualFileId)(id)) {
32
+ return (0, utils_js_1.addVirtualFileIdPrefix)(id);
35
33
  }
36
34
  },
37
35
  async handleHotUpdate(ctx) {
@@ -45,18 +43,21 @@ function pluginVirtualFiles() {
45
43
  }
46
44
  },
47
45
  async load(id, options) {
48
- if (!(0, virtualFiles_js_1.isVirtualFileId)(id))
46
+ if (!(0, utils_js_1.isVirtualFileId)(id))
49
47
  return undefined;
50
- id = (0, virtualFiles_js_1.getVirtualFileId)(id);
48
+ id = (0, utils_js_1.removeVirtualFileIdPrefix)(id);
51
49
  const isDev = config._isDev;
52
50
  (0, utils_js_1.assert)(typeof isDev === 'boolean');
53
- if ((0, virtualFilePageConfigLazy_js_1.isVirtualFileIdPageConfigLazy)(id)) {
54
- const code = await (0, getVirtualFilePageConfigLazy_js_1.getVirtualFilePageConfigLazy)(id, isDev, config);
55
- return code;
56
- }
57
- if ((0, virtualFileEntry_js_1.isVirtualFileIdEntry)(id)) {
58
- const code = await (0, getVirtualFileEntry_js_1.getVirtualFileEntry)(id, options, config, isDev);
59
- 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, config);
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
+ }
60
61
  }
61
62
  },
62
63
  configureServer(server) {
@@ -169,7 +170,7 @@ function reloadConfig(filePath, config, op, server) {
169
170
  }
170
171
  function getVikeVirtualFiles(server) {
171
172
  const vikeVirtualFiles = Array.from(server.moduleGraph.urlToModuleMap.keys())
172
- .filter((url) => (0, virtualFilePageConfigLazy_js_1.isVirtualFileIdPageConfigLazy)(url) || (0, virtualFileEntry_js_1.isVirtualFileIdEntry)(url))
173
+ .filter((url) => (0, virtualFileId_js_1.parseVirtualFileId)(url))
173
174
  .map((url) => {
174
175
  const mod = server.moduleGraph.urlToModuleMap.get(url);
175
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);
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getMagicString = getMagicString;
7
+ const magic_string_1 = __importDefault(require("magic-string"));
8
+ // Used everywhere instead of `new MagicString()` for consistent source map generation
9
+ function getMagicString(code, id) {
10
+ const magicString = new magic_string_1.default(code);
11
+ const getMagicStringResult = () => {
12
+ return {
13
+ code: magicString.toString(),
14
+ map: magicString.generateMap({ hires: true, source: id }),
15
+ };
16
+ };
17
+ return { magicString, getMagicStringResult };
18
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getManifestFilePathRelative = getManifestFilePathRelative;
4
+ const utils_js_1 = require("../utils.js");
5
+ function getManifestFilePathRelative(manifestConfig) {
6
+ (0, utils_js_1.assert)(['string', 'boolean'].includes(typeof manifestConfig));
7
+ (0, utils_js_1.assert)(manifestConfig !== false);
8
+ const manifestFileRelative = typeof manifestConfig === 'string' ? manifestConfig : '.vite/manifest.json';
9
+ return manifestFileRelative;
10
+ }
@@ -5,23 +5,27 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.getOutDirs = getOutDirs;
7
7
  exports.resolveOutDir = resolveOutDir;
8
+ exports.resolveOutDir_configEnvironment = resolveOutDir_configEnvironment;
8
9
  const picocolors_1 = __importDefault(require("@brillout/picocolors"));
9
10
  const utils_js_1 = require("../utils.js");
10
11
  const isViteServerBuild_js_1 = require("./isViteServerBuild.js");
11
12
  const debug = (0, utils_js_1.createDebugger)('vike:outDir');
12
13
  function getOutDirs(configGlobal, viteEnv) {
13
- const configEnv = viteEnv?.config ?? configGlobal;
14
14
  debug('getOutDirs()', new Error().stack);
15
- const outDir = getOutDirFromViteResolvedConfig(configEnv);
16
- if (!isOutDirRoot(outDir))
17
- assertOutDirResolved(outDir, configEnv);
18
- const outDirs = getOutDirsAll(outDir, configEnv.root);
15
+ const outDir = getOutDirFromResolvedConfig(configGlobal);
16
+ assertOutDirResolved(outDir, configGlobal, viteEnv);
17
+ const outDirs = getOutDirsAll(outDir, configGlobal.root);
19
18
  return outDirs;
20
19
  }
20
+ function resolveOutDir_configEnvironment(configGlobal, envName, configEnv) {
21
+ (0, utils_js_1.assert)(configGlobal && envName && configEnv);
22
+ const viteEnv = { name: envName, config: configEnv };
23
+ const isServerSide = (0, isViteServerBuild_js_1.isViteServerBuild)(configGlobal, viteEnv);
24
+ return resolveOutDir(configEnv, isServerSide);
25
+ }
21
26
  /** Appends `client/` or `server/` to `config.build.outDir` */
22
- function resolveOutDir(config, isSSR) {
27
+ function resolveOutDir(config, isServerSide) {
23
28
  debug('resolveOutDir()', new Error().stack);
24
- const isServerSide = (0, isViteServerBuild_js_1.isViteServerBuild)(config) || isSSR;
25
29
  debug('isServerSide', isServerSide);
26
30
  const outDir = getOutDirFromViteUserConfig(config) || 'dist';
27
31
  debug('outDir', outDir);
@@ -103,14 +107,16 @@ function isOutDirRoot(outDirRot) {
103
107
  function assertIsNotOutDirRoot(outDir) {
104
108
  (0, utils_js_1.assert)(outDir.endsWith('/client') || outDir.endsWith('/server'));
105
109
  }
106
- /** Assert that `outDir` ends with `/server` or `/client` */
107
- function assertOutDirResolved(outDir, config) {
110
+ /** Assert that `outDir` ends with the correct directory `/server` or `/client` */
111
+ function assertOutDirResolved(outDir, configGlobal, viteEnv) {
108
112
  (0, utils_js_1.assertPosixPath)(outDir);
109
- assertIsNotOutDirRoot(outDir);
113
+ if (isOutDirRoot(outDir))
114
+ return;
115
+ (0, utils_js_1.assert)(outDir.endsWith('/client') || outDir.endsWith('/server')); // we normalized outDir
110
116
  (0, utils_js_1.assert)('/client'.length === '/server'.length);
111
117
  const outDirCorrected = outDir.slice(0, -1 * '/client'.length);
112
118
  const wrongUsage = `You've set Vite's config.build.outDir to ${picocolors_1.default.cyan(outDir)} but you should set it to ${picocolors_1.default.cyan(outDirCorrected)} instead.`;
113
- if ((0, isViteServerBuild_js_1.isViteServerBuild)(config)) {
119
+ if ((0, isViteServerBuild_js_1.isViteServerBuild_withoutEnv)(configGlobal, viteEnv)) {
114
120
  (0, utils_js_1.assertUsage)(outDir.endsWith('/server'), wrongUsage);
115
121
  }
116
122
  else {
@@ -124,7 +130,7 @@ function getOutDirFromViteUserConfig(config) {
124
130
  outDir = normalizeOutDir(outDir);
125
131
  return outDir;
126
132
  }
127
- function getOutDirFromViteResolvedConfig(config) {
133
+ function getOutDirFromResolvedConfig(config) {
128
134
  let outDir = config.build.outDir;
129
135
  (0, utils_js_1.assert)(outDir);
130
136
  outDir = normalizeOutDir(outDir);
@@ -5,7 +5,7 @@ const utils_js_1 = require("../utils.js");
5
5
  const getOutDirs_js_1 = require("./getOutDirs.js");
6
6
  function getViteConfigRuntime(config) {
7
7
  (0, utils_js_1.assert)((0, utils_js_1.hasProp)(config, '_baseViteOriginal', 'string'));
8
- const { outDirRoot } = (0, getOutDirs_js_1.getOutDirs)(config);
8
+ const { outDirRoot } = (0, getOutDirs_js_1.getOutDirs)(config, undefined);
9
9
  (0, utils_js_1.assertFilePathAbsoluteFilesystem)(outDirRoot);
10
10
  const viteConfigRuntime = {
11
11
  root: config.root,
@@ -2,46 +2,69 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isViteServerBuild = isViteServerBuild;
4
4
  exports.isViteClientBuild = isViteClientBuild;
5
- exports.isViteServerBuild_options = isViteServerBuild_options;
6
- exports.isViteServerBuild_safe = isViteServerBuild_safe;
5
+ exports.isViteServerBuild_withoutEnv = isViteServerBuild_withoutEnv;
7
6
  exports.isViteServerBuild_onlySsrEnv = isViteServerBuild_onlySsrEnv;
7
+ exports.isViteServerBuild_extraSafe = isViteServerBuild_extraSafe;
8
8
  const assert_js_1 = require("../../../utils/assert.js");
9
- function isViteServerBuild(configGlobal, viteEnv) {
10
- const configEnv = viteEnv?.config ?? configGlobal;
11
- return !!configEnv?.build?.ssr;
9
+ function isViteServerBuild_withoutEnv(configGlobal, viteEnv) {
10
+ (0, assert_js_1.assert)(!('consumer' in configGlobal)); // make sure configGlobal isn't viteEnv.config
11
+ const isServerSide1 = !viteEnv?.config.consumer ? null : viteEnv.config.consumer !== 'client';
12
+ const isServerSide2 = !viteEnv?.name ? null : viteEnv.name !== 'client'; // I can't think of a use case for creating another client-side environment
13
+ const isServerSide3 = !viteEnv ? null : !!viteEnv.config.build?.ssr;
14
+ const isServerSide4 = !!configGlobal.build?.ssr;
15
+ const debug = {
16
+ envIsUndefined: !viteEnv,
17
+ envName: viteEnv?.name ?? null,
18
+ envConsumer: viteEnv?.config.consumer ?? null,
19
+ configEnvBuildSsr: viteEnv?.config.build?.ssr ?? null,
20
+ configGlobalBuildSsr: configGlobal.build?.ssr ?? null,
21
+ isServerSide1,
22
+ isServerSide2,
23
+ isServerSide3,
24
+ isServerSide4,
25
+ };
26
+ if (isServerSide1 !== null) {
27
+ (0, assert_js_1.assert)(isServerSide1 === isServerSide2 || isServerSide2 === null, debug);
28
+ (0, assert_js_1.assert)(isServerSide1 === isServerSide3, debug);
29
+ return isServerSide1;
30
+ }
31
+ if (isServerSide2 !== null) {
32
+ /* This assertion can fail, seems to be a Vite bug?
33
+ assert(isServerSide2 === isServerSide3, debug)
34
+ */
35
+ return isServerSide2;
36
+ }
37
+ if (isServerSide3 !== null) {
38
+ return isServerSide3;
39
+ }
40
+ return isServerSide4;
12
41
  }
13
- // Only `ssr` env: for example don't include `vercel_edge` nor `vercel_node`.
14
- function isViteServerBuild_onlySsrEnv(configGlobal, viteEnv) {
15
- return viteEnv ? viteEnv.name === 'ssr' : isViteServerBuild(configGlobal);
42
+ function isViteServerBuild(configGlobal, viteEnv) {
43
+ return isViteServerBuild_withoutEnv(configGlobal, viteEnv);
16
44
  }
17
45
  function isViteClientBuild(configGlobal, viteEnv) {
18
- const yes = !isViteServerBuild(configGlobal, viteEnv);
19
- const isVite5 = viteEnv === undefined;
20
- if (!isVite5) {
21
- const yes2 = viteEnv.name === 'client';
22
- (0, assert_js_1.assert)(yes === yes2);
23
- }
24
- return yes;
46
+ return !isViteServerBuild(configGlobal, viteEnv);
25
47
  }
26
- function isViteServerBuild_options(options) {
27
- return !!options?.ssr;
48
+ // Only `ssr` env: for example don't include `vercel_edge` nor `vercel_node`.
49
+ function isViteServerBuild_onlySsrEnv(configGlobal, viteEnv) {
50
+ return viteEnv ? viteEnv.name === 'ssr' : isViteServerBuild(configGlobal, viteEnv);
28
51
  }
29
- // Vite is quite messy about setting `ssr: boolean`, thus we use an extra safe implementation for security purposes.
30
- // It's used for .client.js and .server.js guarantee thus we use aggressive assert() calls for added safety.
31
- function isViteServerBuild_safe(config, options) {
52
+ // Vite is quite messy about setting config.build.ssr for security purposes, we use an extra safe implementation with lots of assertions, which is needed for the .client.js and .server.js guarantee.
53
+ function isViteServerBuild_extraSafe(config, options, viteEnv) {
32
54
  if (config.command === 'build') {
33
- (0, assert_js_1.assert)(typeof config.build.ssr === 'boolean');
34
- const val = config.build.ssr;
35
- if (options?.ssr !== undefined)
36
- (0, assert_js_1.assert)(val === options.ssr);
37
- return val;
55
+ const res = config.build.ssr;
56
+ (0, assert_js_1.assert)(typeof res === 'boolean');
57
+ (0, assert_js_1.assert)(res === options?.ssr || options?.ssr === undefined);
58
+ (0, assert_js_1.assert)(res === isViteServerBuild(config, viteEnv));
59
+ return res;
38
60
  }
39
61
  else {
40
- (0, assert_js_1.assert)(typeof options?.ssr === 'boolean');
41
- const val = options.ssr;
42
- /* This assert() fails (which is very unexpected).
43
- if (typeof config.build.ssr === 'boolean') assert(val === config.build.ssr)
44
- //*/
45
- return val;
62
+ const res = options?.ssr;
63
+ (0, assert_js_1.assert)(typeof res === 'boolean');
64
+ /* This assertion can fail, seems to be a Vite bug? It's very unexpected.
65
+ if (typeof config.build.ssr === 'boolean') assert(res === config.build.ssr)
66
+ */
67
+ (0, assert_js_1.assert)(res === isViteServerBuild(config, viteEnv));
68
+ return res;
46
69
  }
47
70
  }
@@ -33,7 +33,7 @@ function intercept(logType, config) {
33
33
  // We swallow Vite's message: we didn't see it add any value so far.
34
34
  // - It can even be confusing, such as the following:
35
35
  // ```
36
- // Error when evaluating SSR module virtual:vike:pageConfigLazy:server:/pages/abort: failed to import "/pages/abort/+Page.mdx"
36
+ // Error when evaluating SSR module virtual:vike:page-entry:server:/pages/abort: failed to import "/pages/abort/+Page.mdx"
37
37
  // ```
38
38
  (0, utils_js_1.assert)(!(0, isErrorDebug_js_1.isErrorDebug)());
39
39
  return;
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.configDefinitionsBuiltIn = void 0;
4
4
  const utils_js_1 = require("../../utils.js");
5
5
  const getConfigDefinedAt_js_1 = require("../../../../shared/page-configs/getConfigDefinedAt.js");
6
+ const getConfigValueSourcesRelevant_js_1 = require("../../plugins/pluginVirtualFiles/getConfigValueSourcesRelevant.js");
6
7
  const configDefinitionsBuiltIn = {
7
8
  onRenderHtml: {
8
9
  env: { server: true },
@@ -97,6 +98,22 @@ const configDefinitionsBuiltIn = {
97
98
  meta: {
98
99
  env: { config: true },
99
100
  },
101
+ serverOnlyHooks: {
102
+ env: { client: true },
103
+ eager: true,
104
+ _computed: (pageConfig) => {
105
+ const sources = ['data', 'onBeforeRender', 'onCreatePageContext']
106
+ .map((hookName) => (0, getConfigValueSourcesRelevant_js_1.getConfigValueSourcesRelevant)(hookName, {
107
+ isForClientSide: false,
108
+ // TO-DO/eventually/remove-server-router: let's eventually remove support for Server Routing
109
+ isClientRouting: true,
110
+ }, pageConfig))
111
+ .flat(1)
112
+ // Server-only
113
+ .filter((source) => !source.configEnv.client);
114
+ return sources.length > 0;
115
+ },
116
+ },
100
117
  // Whether the page loads:
101
118
  // - Vike's client runtime
102
119
  // - User's client hooks
@@ -104,7 +121,8 @@ const configDefinitionsBuiltIn = {
104
121
  isClientRuntimeLoaded: {
105
122
  env: { server: true, client: true },
106
123
  eager: true,
107
- _computed: (configValueSources) => {
124
+ _computed: (pageConfig) => {
125
+ const { configValueSources } = pageConfig;
108
126
  {
109
127
  const source = getConfigValueSource(configValueSources, 'clientHooks');
110
128
  if (source) {
@@ -122,15 +140,25 @@ const configDefinitionsBuiltIn = {
122
140
  !!getConfigEnv(configValueSources, 'Page')?.client);
123
141
  },
124
142
  },
143
+ // TO-DO/soon/cumulative-hooks: remove and replace with new computed prop `clientOnlyHooks: string[]` (see other TO-DO/soon/cumulative-hooks entries)
125
144
  onBeforeRenderEnv: {
126
145
  env: { client: true },
127
146
  eager: true,
128
- _computed: (configValueSources) => !isConfigSet(configValueSources, 'onBeforeRender') ? null : getConfigEnv(configValueSources, 'onBeforeRender'),
147
+ _computed: (pageConfig) => {
148
+ const { configValueSources } = pageConfig;
149
+ return !isConfigSet(configValueSources, 'onBeforeRender')
150
+ ? null
151
+ : getConfigEnv(configValueSources, 'onBeforeRender');
152
+ },
129
153
  },
154
+ // TO-DO/soon/cumulative-hooks: remove and replace with new computed prop `clientOnlyHooks: string[]` (see other TO-DO/soon/cumulative-hooks entries)
130
155
  dataEnv: {
131
156
  env: { client: true },
132
157
  eager: true,
133
- _computed: (configValueSources) => !isConfigSet(configValueSources, 'data') ? null : getConfigEnv(configValueSources, 'data'),
158
+ _computed: (pageConfig) => {
159
+ const { configValueSources } = pageConfig;
160
+ return !isConfigSet(configValueSources, 'data') ? null : getConfigEnv(configValueSources, 'data');
161
+ },
134
162
  },
135
163
  hooksTimeout: {
136
164
  env: { server: true, client: true },
@@ -35,9 +35,7 @@ async function crawlPlusFiles(userRootDir) {
35
35
  : // Fallback to tinyglobby for users that dynamically generate plus files. (Assuming that no plus file is found because of the user's .gitignore list.)
36
36
  filesGlob;
37
37
  (0, utils_js_1.assert)(files);
38
- if (debug.isActivated) {
39
- (0, utils_js_1.assert)(filesGit);
40
- (0, utils_js_1.assert)(filesGlob);
38
+ if (debug.isActivated && filesGit && filesGlob) {
41
39
  (0, utils_js_1.assertWarning)((0, utils_js_1.deepEqual)(filesGlob.slice().sort(), filesGit.slice().sort()), "Git and glob results aren't matching.", { onlyOnce: false });
42
40
  }
43
41
  // Filter build files