vike 0.4.239-commit-33e55d4 → 0.4.239-commit-4d0d950

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 (420) hide show
  1. package/dist/esm/client/runtime-client-routing/entry.js +5 -0
  2. package/dist/esm/client/runtime-client-routing/globalContext.d.ts +1 -1
  3. package/dist/esm/client/runtime-client-routing/globalContext.js +9 -3
  4. package/dist/esm/client/runtime-client-routing/renderPageClientSide.d.ts +2 -2
  5. package/dist/esm/client/runtime-client-routing/renderPageClientSide.js +15 -1
  6. package/dist/esm/client/runtime-server-routing/createPageContextClientSide.d.ts +1 -1
  7. package/dist/esm/client/runtime-server-routing/entry.js +5 -0
  8. package/dist/esm/client/runtime-server-routing/globalContext.d.ts +2 -2
  9. package/dist/esm/client/runtime-server-routing/globalContext.js +7 -3
  10. package/dist/esm/client/shared/createGetGlobalContextClient.d.ts +4 -3
  11. package/dist/esm/client/shared/createGetGlobalContextClient.js +38 -34
  12. package/dist/esm/node/vite/index.js +34 -15
  13. package/dist/esm/node/vite/plugins/pluginBaseUrls.d.ts +1 -1
  14. package/dist/esm/node/vite/plugins/pluginBaseUrls.js +37 -35
  15. package/dist/esm/node/vite/plugins/pluginBuild/handleAssetsManifest.d.ts +4 -0
  16. package/dist/esm/node/vite/plugins/pluginBuild/handleAssetsManifest.js +21 -6
  17. package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildConfig.js +16 -4
  18. package/dist/esm/node/vite/plugins/pluginBuild/pluginDistFileNames.d.ts +1 -1
  19. package/dist/esm/node/vite/plugins/pluginBuild/pluginDistFileNames.js +82 -80
  20. package/dist/esm/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.d.ts +1 -1
  21. package/dist/esm/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.js +23 -21
  22. package/dist/esm/node/vite/plugins/pluginBuild/pluginModuleBanner.d.ts +1 -1
  23. package/dist/esm/node/vite/plugins/pluginBuild/pluginModuleBanner.js +38 -36
  24. package/dist/esm/node/vite/plugins/pluginBuild/pluginSuppressRollupWarning.d.ts +1 -1
  25. package/dist/esm/node/vite/plugins/pluginBuild/pluginSuppressRollupWarning.js +26 -24
  26. package/dist/esm/node/vite/plugins/pluginCommon.js +1 -1
  27. package/dist/esm/node/vite/plugins/pluginDev/determineFsAllowList.js +0 -1
  28. package/dist/esm/node/vite/plugins/pluginEnvVars.d.ts +1 -1
  29. package/dist/esm/node/vite/plugins/pluginEnvVars.js +87 -65
  30. package/dist/esm/node/vite/plugins/pluginExtractExportNames.d.ts +1 -1
  31. package/dist/esm/node/vite/plugins/pluginExtractExportNames.js +29 -27
  32. package/dist/esm/node/vite/plugins/pluginFileEnv.d.ts +1 -1
  33. package/dist/esm/node/vite/plugins/pluginFileEnv.js +75 -73
  34. package/dist/esm/node/vite/plugins/pluginNonRunnableDev.d.ts +1 -1
  35. package/dist/esm/node/vite/plugins/pluginNonRunnableDev.js +30 -28
  36. package/dist/esm/node/vite/plugins/pluginPreview.d.ts +1 -1
  37. package/dist/esm/node/vite/plugins/pluginPreview.js +35 -33
  38. package/dist/esm/node/vite/plugins/pluginReplaceGlobalThisConstants.d.ts +9 -0
  39. package/dist/esm/node/vite/plugins/pluginReplaceGlobalThisConstants.js +45 -0
  40. package/dist/esm/node/vite/plugins/pluginReplaceIsClientSide.d.ts +3 -0
  41. package/dist/esm/node/vite/plugins/pluginReplaceIsClientSide.js +89 -0
  42. package/dist/esm/node/vite/plugins/pluginVirtualFiles.d.ts +1 -1
  43. package/dist/esm/node/vite/plugins/pluginVirtualFiles.js +50 -48
  44. package/dist/esm/node/vite/plugins/pluginWorkaroundCssModuleHmr.d.ts +1 -1
  45. package/dist/esm/node/vite/plugins/pluginWorkaroundCssModuleHmr.js +12 -10
  46. package/dist/esm/node/vite/plugins/pluginWorkaroundVite6HmrRegression.d.ts +1 -1
  47. package/dist/esm/node/vite/plugins/pluginWorkaroundVite6HmrRegression.js +26 -24
  48. package/dist/esm/shared/createGlobalContextShared.js +1 -0
  49. package/dist/esm/shared/route/abort.d.ts +22 -11
  50. package/dist/esm/shared/route/abort.js +37 -5
  51. package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
  52. package/dist/esm/utils/PROJECT_VERSION.js +1 -1
  53. package/dist/esm/utils/findPackageJson.js +0 -1
  54. package/dist/esm/utils/getViteRPC.js +0 -2
  55. package/dist/esm/utils/requireResolve.js +0 -1
  56. package/package.json +3 -22
  57. package/dist/cjs/__internal/index.js +0 -35
  58. package/dist/cjs/client/runtime-client-routing/globalContext.js +0 -49
  59. package/dist/cjs/client/runtime-client-routing/prefetch/PrefetchSetting.js +0 -2
  60. package/dist/cjs/client/runtime-server-routing/globalContext.js +0 -41
  61. package/dist/cjs/client/runtime-server-routing/onLoad.js +0 -7
  62. package/dist/cjs/client/runtime-server-routing/utils.js +0 -34
  63. package/dist/cjs/client/shared/createGetGlobalContextClient.js +0 -65
  64. package/dist/cjs/client/shared/getJsonSerializedInHtml.js +0 -40
  65. package/dist/cjs/client/shared/preparePageContextForPublicUsageClientShared.js +0 -41
  66. package/dist/cjs/client/shared/utils.js +0 -23
  67. package/dist/cjs/node/api/build.js +0 -24
  68. package/dist/cjs/node/api/context.js +0 -23
  69. package/dist/cjs/node/api/dev.js +0 -18
  70. package/dist/cjs/node/api/index.js +0 -44
  71. package/dist/cjs/node/api/onLoad.js +0 -9
  72. package/dist/cjs/node/api/prepareViteApiCall.js +0 -206
  73. package/dist/cjs/node/api/prerender.js +0 -18
  74. package/dist/cjs/node/api/preview.js +0 -38
  75. package/dist/cjs/node/api/types.js +0 -2
  76. package/dist/cjs/node/api/utils.js +0 -27
  77. package/dist/cjs/node/cli/context.js +0 -17
  78. package/dist/cjs/node/cli/entry.js +0 -121
  79. package/dist/cjs/node/cli/index.js +0 -12
  80. package/dist/cjs/node/cli/onLoad.js +0 -9
  81. package/dist/cjs/node/cli/parseCli.js +0 -95
  82. package/dist/cjs/node/cli/utils.js +0 -24
  83. package/dist/cjs/node/client/router.js +0 -19
  84. package/dist/cjs/node/createPageRenderer.js +0 -132
  85. package/dist/cjs/node/importBuild.js +0 -3
  86. package/dist/cjs/node/prerender/context.js +0 -26
  87. package/dist/cjs/node/prerender/index.js +0 -12
  88. package/dist/cjs/node/prerender/resolvePrerenderConfig.js +0 -66
  89. package/dist/cjs/node/prerender/runPrerender.js +0 -778
  90. package/dist/cjs/node/prerender/runPrerenderEntry.js +0 -55
  91. package/dist/cjs/node/prerender/utils.js +0 -37
  92. package/dist/cjs/node/runtime/globalContext.js +0 -582
  93. package/dist/cjs/node/runtime/index-deprecated.js +0 -33
  94. package/dist/cjs/node/runtime/index.js +0 -74
  95. package/dist/cjs/node/runtime/loggerRuntime.js +0 -17
  96. package/dist/cjs/node/runtime/onLoad.js +0 -29
  97. package/dist/cjs/node/runtime/page-files/setup.js +0 -5
  98. package/dist/cjs/node/runtime/renderPage/analyzePage.js +0 -71
  99. package/dist/cjs/node/runtime/renderPage/assertArguments.js +0 -42
  100. package/dist/cjs/node/runtime/renderPage/createHttpResponse/assertNoInfiniteHttpRedirect.js +0 -51
  101. package/dist/cjs/node/runtime/renderPage/createHttpResponse.js +0 -114
  102. package/dist/cjs/node/runtime/renderPage/createPageContextServerSide.js +0 -59
  103. package/dist/cjs/node/runtime/renderPage/csp.js +0 -47
  104. package/dist/cjs/node/runtime/renderPage/execHookDataAndOnBeforeRender.js +0 -31
  105. package/dist/cjs/node/runtime/renderPage/execHookOnRenderHtml.js +0 -120
  106. package/dist/cjs/node/runtime/renderPage/execHookServer.js +0 -8
  107. package/dist/cjs/node/runtime/renderPage/getCacheControl.js +0 -24
  108. package/dist/cjs/node/runtime/renderPage/getEarlyHints.js +0 -20
  109. package/dist/cjs/node/runtime/renderPage/getHttpResponseBody.js +0 -137
  110. package/dist/cjs/node/runtime/renderPage/getPageAssets/getManifestEntry.js +0 -125
  111. package/dist/cjs/node/runtime/renderPage/getPageAssets/retrievePageAssetsDev.js +0 -86
  112. package/dist/cjs/node/runtime/renderPage/getPageAssets/retrievePageAssetsProd.js +0 -77
  113. package/dist/cjs/node/runtime/renderPage/getPageAssets/sortPageAssetsForEarlyHintsHeader.js +0 -36
  114. package/dist/cjs/node/runtime/renderPage/getPageAssets.js +0 -50
  115. package/dist/cjs/node/runtime/renderPage/handleErrorWithoutErrorPage.js +0 -41
  116. package/dist/cjs/node/runtime/renderPage/handlePageContextRequestUrl.js +0 -68
  117. package/dist/cjs/node/runtime/renderPage/headersResponse.js +0 -48
  118. package/dist/cjs/node/runtime/renderPage/html/injectAssets/getHtmlTags.js +0 -269
  119. package/dist/cjs/node/runtime/renderPage/html/injectAssets/getViteDevScript.js +0 -32
  120. package/dist/cjs/node/runtime/renderPage/html/injectAssets/inferHtmlTags.js +0 -55
  121. package/dist/cjs/node/runtime/renderPage/html/injectAssets/injectAssets__public.js +0 -31
  122. package/dist/cjs/node/runtime/renderPage/html/injectAssets/injectHtmlTags.js +0 -161
  123. package/dist/cjs/node/runtime/renderPage/html/injectAssets/mergeScriptTags.js +0 -73
  124. package/dist/cjs/node/runtime/renderPage/html/injectAssets/sanitizeJson.js +0 -8
  125. package/dist/cjs/node/runtime/renderPage/html/injectAssets.js +0 -93
  126. package/dist/cjs/node/runtime/renderPage/html/propKeys.js +0 -47
  127. package/dist/cjs/node/runtime/renderPage/html/renderHtml.js +0 -245
  128. package/dist/cjs/node/runtime/renderPage/html/serializeContext.js +0 -189
  129. package/dist/cjs/node/runtime/renderPage/html/stream/react-streaming.js +0 -36
  130. package/dist/cjs/node/runtime/renderPage/html/stream.js +0 -829
  131. package/dist/cjs/node/runtime/renderPage/inferMediaType.js +0 -81
  132. package/dist/cjs/node/runtime/renderPage/isFontFallback.js +0 -29
  133. package/dist/cjs/node/runtime/renderPage/isNewError.js +0 -25
  134. package/dist/cjs/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +0 -124
  135. package/dist/cjs/node/runtime/renderPage/log404/index.js +0 -154
  136. package/dist/cjs/node/runtime/renderPage/logErrorHint/errors.js +0 -20
  137. package/dist/cjs/node/runtime/renderPage/logErrorHint.js +0 -200
  138. package/dist/cjs/node/runtime/renderPage/loggerProd.js +0 -34
  139. package/dist/cjs/node/runtime/renderPage/preparePageContextForPublicUsageServer.js +0 -10
  140. package/dist/cjs/node/runtime/renderPage/renderPageAfterRoute.js +0 -83
  141. package/dist/cjs/node/runtime/renderPage/resolveRedirects.js +0 -71
  142. package/dist/cjs/node/runtime/renderPage.js +0 -502
  143. package/dist/cjs/node/runtime/universal-middleware.js +0 -20
  144. package/dist/cjs/node/runtime/utils.js +0 -83
  145. package/dist/cjs/node/runtime-dev/createDevMiddleware.js +0 -27
  146. package/dist/cjs/node/runtime-dev/index.js +0 -42
  147. package/dist/cjs/node/shared/assertV1Design.js +0 -30
  148. package/dist/cjs/node/shared/extractAssetsQuery.js +0 -29
  149. package/dist/cjs/node/shared/getVikeConfigError.js +0 -22
  150. package/dist/cjs/node/shared/isErrorDebug.js +0 -7
  151. package/dist/cjs/node/shared/prependEntriesDir.js +0 -13
  152. package/dist/cjs/node/shared/resolveBase.js +0 -35
  153. package/dist/cjs/node/shared/utils.js +0 -35
  154. package/dist/cjs/node/shared/virtualFileId.js +0 -110
  155. package/dist/cjs/node/vite/index.js +0 -69
  156. package/dist/cjs/node/vite/onLoad.js +0 -21
  157. package/dist/cjs/node/vite/plugins/pluginBaseUrls.js +0 -52
  158. package/dist/cjs/node/vite/plugins/pluginBuild/handleAssetsManifest.js +0 -342
  159. package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildApp.js +0 -183
  160. package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildConfig.js +0 -222
  161. package/dist/cjs/node/vite/plugins/pluginBuild/pluginDistFileNames.js +0 -256
  162. package/dist/cjs/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.js +0 -40
  163. package/dist/cjs/node/vite/plugins/pluginBuild/pluginModuleBanner.js +0 -49
  164. package/dist/cjs/node/vite/plugins/pluginBuild/pluginProdBuildEntry.js +0 -111
  165. package/dist/cjs/node/vite/plugins/pluginBuild/pluginSuppressRollupWarning.js +0 -65
  166. package/dist/cjs/node/vite/plugins/pluginBuild.js +0 -21
  167. package/dist/cjs/node/vite/plugins/pluginCommon/assertResolveAlias.js +0 -88
  168. package/dist/cjs/node/vite/plugins/pluginCommon.js +0 -183
  169. package/dist/cjs/node/vite/plugins/pluginDev/determineFsAllowList.js +0 -28
  170. package/dist/cjs/node/vite/plugins/pluginDev/determineOptimizeDeps.js +0 -163
  171. package/dist/cjs/node/vite/plugins/pluginDev.js +0 -111
  172. package/dist/cjs/node/vite/plugins/pluginEnvVars.js +0 -92
  173. package/dist/cjs/node/vite/plugins/pluginExtractAssets.js +0 -241
  174. package/dist/cjs/node/vite/plugins/pluginExtractExportNames.js +0 -113
  175. package/dist/cjs/node/vite/plugins/pluginFileEnv.js +0 -172
  176. package/dist/cjs/node/vite/plugins/pluginNonRunnableDev.js +0 -70
  177. package/dist/cjs/node/vite/plugins/pluginPreview.js +0 -82
  178. package/dist/cjs/node/vite/plugins/pluginReplaceConstants.js +0 -95
  179. package/dist/cjs/node/vite/plugins/pluginSetGlobalContext.js +0 -51
  180. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/debug.js +0 -5
  181. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/generateVirtualFileGlobalEntry.js +0 -56
  182. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/generateVirtualFileGlobalEntryWithOldDesign.js +0 -190
  183. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/generateVirtualFilePageEntry.js +0 -54
  184. package/dist/cjs/node/vite/plugins/pluginVirtualFiles/getConfigValueSourcesRelevant.js +0 -97
  185. package/dist/cjs/node/vite/plugins/pluginVirtualFiles.js +0 -233
  186. package/dist/cjs/node/vite/plugins/pluginWorkaroundCssModuleHmr.js +0 -17
  187. package/dist/cjs/node/vite/plugins/pluginWorkaroundVite6HmrRegression.js +0 -35
  188. package/dist/cjs/node/vite/shared/addSsrMiddleware.js +0 -60
  189. package/dist/cjs/node/vite/shared/findPageFiles.js +0 -25
  190. package/dist/cjs/node/vite/shared/getAssetsDir.js +0 -10
  191. package/dist/cjs/node/vite/shared/getClientEntrySrcDev.js +0 -42
  192. package/dist/cjs/node/vite/shared/getEnvVarObject.js +0 -37
  193. package/dist/cjs/node/vite/shared/getFilePath.js +0 -172
  194. package/dist/cjs/node/vite/shared/getHttpRequestAsyncStore.js +0 -125
  195. package/dist/cjs/node/vite/shared/getMagicString.js +0 -18
  196. package/dist/cjs/node/vite/shared/getManifestFilePathRelative.js +0 -10
  197. package/dist/cjs/node/vite/shared/getOutDirs.js +0 -146
  198. package/dist/cjs/node/vite/shared/getViteConfigRuntime.js +0 -21
  199. package/dist/cjs/node/vite/shared/isAsset.js +0 -40
  200. package/dist/cjs/node/vite/shared/isViteCliCall.js +0 -83
  201. package/dist/cjs/node/vite/shared/isViteServerSide.js +0 -68
  202. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errBabelReact.js +0 -15
  203. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errBabelSolid.js +0 -15
  204. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errEsbuild.js +0 -38
  205. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errMdx1.js +0 -26
  206. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errMdx2.js +0 -85
  207. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errPostcss.js +0 -30
  208. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errSwc.js +0 -19
  209. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errSwcBig.js +0 -19
  210. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueCss.js +0 -29
  211. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueHtml.js +0 -13
  212. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet/fixture-errors/errVueJavascript.js +0 -15
  213. package/dist/cjs/node/vite/shared/loggerNotProd/errorWithCodeSnippet.js +0 -162
  214. package/dist/cjs/node/vite/shared/loggerNotProd/log.js +0 -102
  215. package/dist/cjs/node/vite/shared/loggerNotProd.js +0 -208
  216. package/dist/cjs/node/vite/shared/loggerVite/removeSuperfluousViteLog.js +0 -26
  217. package/dist/cjs/node/vite/shared/loggerVite.js +0 -54
  218. package/dist/cjs/node/vite/shared/normalizeId.js +0 -9
  219. package/dist/cjs/node/vite/shared/parseEsModule.js +0 -33
  220. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/assertExtensions.js +0 -136
  221. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.js +0 -262
  222. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles/ignorePatternsBuiltIn.js +0 -18
  223. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles.js +0 -252
  224. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/filesystemRouting.js +0 -190
  225. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/getConfigFileExport.js +0 -17
  226. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/getPlusFilesAll.js +0 -127
  227. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/loadFileAtConfigTime.js +0 -129
  228. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/pointerImports.js +0 -195
  229. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/resolvePointerImport.js +0 -102
  230. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/transpileAndExecuteFile.js +0 -425
  231. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal.js +0 -1151
  232. package/dist/cjs/node/vite/shared/rollupIsEsm.js +0 -15
  233. package/dist/cjs/node/vite/utils.js +0 -45
  234. package/dist/cjs/package.json +0 -1
  235. package/dist/cjs/shared/NOT_SERIALIZABLE.js +0 -4
  236. package/dist/cjs/shared/RenderErrorPage.js +0 -6
  237. package/dist/cjs/shared/abort.js +0 -16
  238. package/dist/cjs/shared/addIs404ToPageProps.js +0 -18
  239. package/dist/cjs/shared/assertHookReturnedObject.js +0 -21
  240. package/dist/cjs/shared/assertOnBeforeRenderHookReturn.js +0 -21
  241. package/dist/cjs/shared/assertPageContextProvidedByUser.js +0 -20
  242. package/dist/cjs/shared/createGlobalContextShared.js +0 -109
  243. package/dist/cjs/shared/createPageContextShared.js +0 -17
  244. package/dist/cjs/shared/determinePageIdOld.js +0 -11
  245. package/dist/cjs/shared/error-page.js +0 -40
  246. package/dist/cjs/shared/getPageContext.js +0 -6
  247. package/dist/cjs/shared/getPageContextRequestUrl.js +0 -16
  248. package/dist/cjs/shared/getPageContextUrlComputed.js +0 -132
  249. package/dist/cjs/shared/getPageFiles/analyzeClientSide.js +0 -19
  250. package/dist/cjs/shared/getPageFiles/analyzePageClientSide/ClientDependency.js +0 -2
  251. package/dist/cjs/shared/getPageFiles/analyzePageClientSide/analyzeExports.js +0 -50
  252. package/dist/cjs/shared/getPageFiles/analyzePageClientSide/determineClientEntry.js +0 -30
  253. package/dist/cjs/shared/getPageFiles/analyzePageClientSide/getExportNames.js +0 -15
  254. package/dist/cjs/shared/getPageFiles/analyzePageClientSide.js +0 -59
  255. package/dist/cjs/shared/getPageFiles/analyzePageServerSide.js +0 -22
  256. package/dist/cjs/shared/getPageFiles/assert_exports_old_design.js +0 -24
  257. package/dist/cjs/shared/getPageFiles/fileTypes.js +0 -52
  258. package/dist/cjs/shared/getPageFiles/getAllPageIdFiles.js +0 -102
  259. package/dist/cjs/shared/getPageFiles/getPageFileObject.js +0 -56
  260. package/dist/cjs/shared/getPageFiles/parseVirtualFileExportsGlobalEntry.js +0 -100
  261. package/dist/cjs/shared/getPageFiles.js +0 -7
  262. package/dist/cjs/shared/getProxyForPublicUsage.js +0 -56
  263. package/dist/cjs/shared/hooks/execHook.js +0 -147
  264. package/dist/cjs/shared/hooks/getHook.js +0 -173
  265. package/dist/cjs/shared/htmlElementIds.js +0 -5
  266. package/dist/cjs/shared/misc/isServerSideError.js +0 -4
  267. package/dist/cjs/shared/misc/pageContextInitIsPassedToClient.js +0 -4
  268. package/dist/cjs/shared/modifyUrl.js +0 -28
  269. package/dist/cjs/shared/modifyUrlSameOrigin.js +0 -47
  270. package/dist/cjs/shared/page-configs/assertPlusFileExport.js +0 -42
  271. package/dist/cjs/shared/page-configs/findPageConfig.js +0 -10
  272. package/dist/cjs/shared/page-configs/getConfigDefinedAt.js +0 -65
  273. package/dist/cjs/shared/page-configs/getConfigValueBuildTime.js +0 -68
  274. package/dist/cjs/shared/page-configs/getConfigValueRuntime.js +0 -10
  275. package/dist/cjs/shared/page-configs/getConfigValueTyped.js +0 -32
  276. package/dist/cjs/shared/page-configs/getExportPath.js +0 -29
  277. package/dist/cjs/shared/page-configs/helpers.js +0 -27
  278. package/dist/cjs/shared/page-configs/loadAndParseVirtualFilePageEntry.js +0 -25
  279. package/dist/cjs/shared/page-configs/resolveVikeConfigPublic.js +0 -287
  280. package/dist/cjs/shared/page-configs/serialize/PageConfigSerialized.js +0 -2
  281. package/dist/cjs/shared/page-configs/serialize/assertPageConfigsSerialized.js +0 -1
  282. package/dist/cjs/shared/page-configs/serialize/parsePageConfigsSerialized.js +0 -145
  283. package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +0 -290
  284. package/dist/cjs/shared/prepareGlobalContextForPublicUsage.js +0 -10
  285. package/dist/cjs/shared/preparePageContextForPublicUsage.js +0 -80
  286. package/dist/cjs/shared/route/abort.js +0 -178
  287. package/dist/cjs/shared/route/debug.js +0 -23
  288. package/dist/cjs/shared/route/deduceRouteStringFromFilesystemPath.js +0 -52
  289. package/dist/cjs/shared/route/execHookGuard.js +0 -37
  290. package/dist/cjs/shared/route/execHookOnBeforeRoute.js +0 -84
  291. package/dist/cjs/shared/route/index.js +0 -107
  292. package/dist/cjs/shared/route/loadPageRoutes.js +0 -197
  293. package/dist/cjs/shared/route/noRouteMatch.js +0 -4
  294. package/dist/cjs/shared/route/resolvePrecedence.js +0 -93
  295. package/dist/cjs/shared/route/resolveRoute.js +0 -20
  296. package/dist/cjs/shared/route/resolveRouteFunction.js +0 -73
  297. package/dist/cjs/shared/route/resolveRouteString.js +0 -153
  298. package/dist/cjs/shared/route/resolveUrlPathname.js +0 -47
  299. package/dist/cjs/shared/route/routing.js +0 -9
  300. package/dist/cjs/shared/route/utils.js +0 -40
  301. package/dist/cjs/shared/utils.js +0 -49
  302. package/dist/cjs/types/Config/ConfigResolved.js +0 -2
  303. package/dist/cjs/types/Config.js +0 -2
  304. package/dist/cjs/types/FilePath.js +0 -2
  305. package/dist/cjs/types/PageConfig.js +0 -2
  306. package/dist/cjs/types/PageContext.js +0 -2
  307. package/dist/cjs/types/VikeGlobalInternal.js +0 -2
  308. package/dist/cjs/types/VikeNamespace.js +0 -2
  309. package/dist/cjs/types/ViteManifest.js +0 -2
  310. package/dist/cjs/types/defineConfig.js +0 -6
  311. package/dist/cjs/types/index-dreprecated.js +0 -3
  312. package/dist/cjs/types/index.js +0 -5
  313. package/dist/cjs/utils/PROJECT_VERSION.js +0 -5
  314. package/dist/cjs/utils/PromiseType.js +0 -2
  315. package/dist/cjs/utils/assert.js +0 -211
  316. package/dist/cjs/utils/assertIsBrowser.js +0 -8
  317. package/dist/cjs/utils/assertIsNotBrowser.js +0 -9
  318. package/dist/cjs/utils/assertKeys.js +0 -27
  319. package/dist/cjs/utils/assertNodeVersion.js +0 -14
  320. package/dist/cjs/utils/assertRoutingType.js +0 -29
  321. package/dist/cjs/utils/assertSetup.js +0 -171
  322. package/dist/cjs/utils/assertSingleInstance.js +0 -110
  323. package/dist/cjs/utils/assertVersion.js +0 -60
  324. package/dist/cjs/utils/capitalizeFirstLetter.js +0 -9
  325. package/dist/cjs/utils/cast.js +0 -6
  326. package/dist/cjs/utils/catchInfiniteLoop.js +0 -34
  327. package/dist/cjs/utils/changeEnumerable.js +0 -8
  328. package/dist/cjs/utils/checkType.js +0 -6
  329. package/dist/cjs/utils/compareString.js +0 -10
  330. package/dist/cjs/utils/createErrorWithCleanStackTrace.js +0 -39
  331. package/dist/cjs/utils/debug.js +0 -178
  332. package/dist/cjs/utils/debugGlob.js +0 -6
  333. package/dist/cjs/utils/deepEqual.js +0 -10
  334. package/dist/cjs/utils/escapeHtml.js +0 -13
  335. package/dist/cjs/utils/escapeRegex.js +0 -7
  336. package/dist/cjs/utils/findFile.js +0 -30
  337. package/dist/cjs/utils/findPackageJson.js +0 -18
  338. package/dist/cjs/utils/formatHintLog.js +0 -17
  339. package/dist/cjs/utils/freezePartial.js +0 -35
  340. package/dist/cjs/utils/genPromise.js +0 -51
  341. package/dist/cjs/utils/getFileExtension.js +0 -16
  342. package/dist/cjs/utils/getGlobalObject.js +0 -15
  343. package/dist/cjs/utils/getMostSimilar.js +0 -68
  344. package/dist/cjs/utils/getPropAccessNotation.js +0 -9
  345. package/dist/cjs/utils/getRandomId.js +0 -14
  346. package/dist/cjs/utils/getTerminalWidth.js +0 -7
  347. package/dist/cjs/utils/getValuePrintable.js +0 -10
  348. package/dist/cjs/utils/getViteRPC.js +0 -79
  349. package/dist/cjs/utils/hasProp.js +0 -50
  350. package/dist/cjs/utils/humanizeTime.js +0 -24
  351. package/dist/cjs/utils/includes.js +0 -13
  352. package/dist/cjs/utils/injectRollupInputs.js +0 -29
  353. package/dist/cjs/utils/isArray.js +0 -7
  354. package/dist/cjs/utils/isArrayOfStrings.js +0 -7
  355. package/dist/cjs/utils/isBrowser.js +0 -8
  356. package/dist/cjs/utils/isCallable.js +0 -6
  357. package/dist/cjs/utils/isDev.js +0 -20
  358. package/dist/cjs/utils/isDocker.js +0 -45
  359. package/dist/cjs/utils/isEqualStringList.js +0 -13
  360. package/dist/cjs/utils/isFilePathAbsoluteFilesystem.js +0 -66
  361. package/dist/cjs/utils/isHtml.js +0 -9
  362. package/dist/cjs/utils/isImportPath.js +0 -21
  363. package/dist/cjs/utils/isNodeJS.js +0 -16
  364. package/dist/cjs/utils/isNonRunnableDev.js +0 -12
  365. package/dist/cjs/utils/isNullish.js +0 -16
  366. package/dist/cjs/utils/isObject.js +0 -6
  367. package/dist/cjs/utils/isObjectOfStrings.js +0 -7
  368. package/dist/cjs/utils/isObjectWithKeys.js +0 -15
  369. package/dist/cjs/utils/isPlainObject.js +0 -19
  370. package/dist/cjs/utils/isPromise.js +0 -7
  371. package/dist/cjs/utils/isPropertyGetter.js +0 -7
  372. package/dist/cjs/utils/isReact.js +0 -23
  373. package/dist/cjs/utils/isRunnableDevEnvironment.js +0 -9
  374. package/dist/cjs/utils/isSameErrorMessage.js +0 -9
  375. package/dist/cjs/utils/isScriptFile.js +0 -67
  376. package/dist/cjs/utils/isVikeReactApp.js +0 -8
  377. package/dist/cjs/utils/isVitest.js +0 -6
  378. package/dist/cjs/utils/joinEnglish.js +0 -14
  379. package/dist/cjs/utils/normalizeHeaders.js +0 -17
  380. package/dist/cjs/utils/objectAssign.js +0 -14
  381. package/dist/cjs/utils/objectAssignSafe.js +0 -7
  382. package/dist/cjs/utils/objectDefineProperty.js +0 -7
  383. package/dist/cjs/utils/objectEntries.js +0 -8
  384. package/dist/cjs/utils/objectEntriesForEach.js +0 -7
  385. package/dist/cjs/utils/objectFilter.js +0 -10
  386. package/dist/cjs/utils/objectFromEntries.js +0 -7
  387. package/dist/cjs/utils/objectKeys.js +0 -9
  388. package/dist/cjs/utils/objectReplace.js +0 -9
  389. package/dist/cjs/utils/onPageVisibilityChange.js +0 -18
  390. package/dist/cjs/utils/pLimit.js +0 -134
  391. package/dist/cjs/utils/parseNpmPackage.js +0 -106
  392. package/dist/cjs/utils/parseUrl-extras.js +0 -110
  393. package/dist/cjs/utils/parseUrl.js +0 -338
  394. package/dist/cjs/utils/path.js +0 -59
  395. package/dist/cjs/utils/pick.js +0 -12
  396. package/dist/cjs/utils/preservePropertyGetters.js +0 -30
  397. package/dist/cjs/utils/redirectHard.js +0 -6
  398. package/dist/cjs/utils/removeEmptyLines.js +0 -9
  399. package/dist/cjs/utils/removeFileExtension.js +0 -6
  400. package/dist/cjs/utils/requireResolve.js +0 -214
  401. package/dist/cjs/utils/rollupSourceMap.js +0 -19
  402. package/dist/cjs/utils/sleep.js +0 -6
  403. package/dist/cjs/utils/slice.js +0 -35
  404. package/dist/cjs/utils/sorter.js +0 -117
  405. package/dist/cjs/utils/stringifyStringArray.js +0 -6
  406. package/dist/cjs/utils/stripAnsi.js +0 -21
  407. package/dist/cjs/utils/styleFileRE.js +0 -6
  408. package/dist/cjs/utils/throttle.js +0 -15
  409. package/dist/cjs/utils/trackLogs.js +0 -31
  410. package/dist/cjs/utils/trimWithAnsi.js +0 -40
  411. package/dist/cjs/utils/truncateString.js +0 -23
  412. package/dist/cjs/utils/unique.js +0 -6
  413. package/dist/cjs/utils/updateType.js +0 -9
  414. package/dist/cjs/utils/urlToFile.js +0 -36
  415. package/dist/cjs/utils/virtualFileId.js +0 -43
  416. package/dist/cjs/utils/warnIfErrorIsNotObject.js +0 -23
  417. package/dist/esm/node/vite/plugins/pluginBuild.d.ts +0 -3
  418. package/dist/esm/node/vite/plugins/pluginBuild.js +0 -19
  419. package/dist/esm/node/vite/plugins/pluginReplaceConstants.d.ts +0 -14
  420. package/dist/esm/node/vite/plugins/pluginReplaceConstants.js +0 -92
@@ -3,9 +3,14 @@ assertClientRouting();
3
3
  import { initClientRouter } from './initClientRouter.js';
4
4
  import { assertSingleInstance_onClientEntryClientRouting } from './utils.js';
5
5
  import { removeFoucBuster } from '../shared/removeFoucBuster.js';
6
+ import { setVirtualFileExportsGlobalEntry } from '../shared/createGetGlobalContextClient.js';
7
+ // @ts-expect-error
8
+ import * as virtualFileExportsGlobalEntry from 'virtual:vike:global-entry:client:client-routing';
9
+ // TODO/now: remove this ts-ignore
6
10
  // @ts-ignore Since dist/cjs/client/ is never used, we can ignore this error.
7
11
  const isProd = import.meta.env.PROD;
8
12
  assertSingleInstance_onClientEntryClientRouting(isProd);
13
+ setVirtualFileExportsGlobalEntry(virtualFileExportsGlobalEntry, true);
9
14
  initClientRouter();
10
15
  if (import.meta.env.DEV)
11
16
  removeFoucBuster();
@@ -4,7 +4,7 @@ export type { GlobalContextClientInternal };
4
4
  import type { GlobalContextBasePublic } from '../../shared/createGlobalContextShared.js';
5
5
  type GlobalContextClient = GlobalContextBasePublic & Pick<GlobalContextClientInternal, 'isClientSide'> & Vike.GlobalContext & Vike.GlobalContextClient & {};
6
6
  type GlobalContextClientInternal = Awaited<ReturnType<typeof getGlobalContextClientInternal>>;
7
- declare const getGlobalContextClientInternal: () => Promise<{
7
+ declare function getGlobalContextClientInternal(): Promise<{
8
8
  _globalConfigPublic: {
9
9
  pages: {
10
10
  [k: string]: {
@@ -1,9 +1,15 @@
1
+ // TODO/now: rename file
2
+ // TODO/now: rename export
1
3
  export { getGlobalContextClientInternal };
2
4
  import { createGetGlobalContextClient } from '../shared/createGetGlobalContextClient.js';
3
5
  import { loadPageRoutes } from '../../shared/route/loadPageRoutes.js';
4
- // @ts-ignore
5
- import * as virtualFileExportsGlobalEntry from 'virtual:vike:global-entry:client:client-routing';
6
- const getGlobalContextClientInternal = createGetGlobalContextClient(virtualFileExportsGlobalEntry, true, addGlobalContext);
6
+ import { objectAssign } from './utils.js';
7
+ async function getGlobalContextClientInternal() {
8
+ const globalContext = await createGetGlobalContextClient();
9
+ objectAssign(globalContext, await addGlobalContext(globalContext));
10
+ return globalContext;
11
+ }
12
+ // TO-DO/next-major-release make this function sync
7
13
  async function addGlobalContext(globalContext) {
8
14
  const { pageRoutes, onBeforeRouteHook } = await loadPageRoutes(globalContext._pageFilesAll, globalContext._pageConfigs, globalContext._pageConfigGlobal, globalContext._allPageIds);
9
15
  return {
@@ -7,7 +7,7 @@ export type { PageContextBegin };
7
7
  import { type PageContextFromRewrite } from '../../shared/route/abort.js';
8
8
  import { type ScrollTarget } from './setScrollPosition.js';
9
9
  import type { PageContextConfig } from '../../shared/getPageFiles.js';
10
- import type { PageContextClient } from '../../types/PageContext.js';
10
+ import type { PageContextClient, PageContextInternalClient } from '../../types/PageContext.js';
11
11
  import type { VikeGlobalInternal } from '../../types/VikeGlobalInternal.js';
12
12
  declare const firstRenderStartPromise: Promise<void>;
13
13
  type PageContextRouted = {
@@ -107,7 +107,7 @@ declare function getPageContextBegin(isForErrorPage: boolean, { urlOriginal, isB
107
107
  isHydration: boolean;
108
108
  previousPageContext: ({
109
109
  pageId: string;
110
- } & PageContextConfig & PageContextRouted & import("../../shared/preparePageContextForPublicUsage.js").PageContextPrepareMinimum & import("../../types/PageContext.js").PageContextInternalClient & Omit<Partial<PageContextConfig & {
110
+ } & PageContextConfig & PageContextRouted & import("../../shared/preparePageContextForPublicUsage.js").PageContextPrepareMinimum & PageContextInternalClient & Omit<Partial<PageContextConfig & {
111
111
  isPageContext: true;
112
112
  Page: import("../../types/Config.js").Config["Page"];
113
113
  routeParams: Record<string, string>;
@@ -16,7 +16,7 @@ import { route } from '../../shared/route/index.js';
16
16
  import { isClientSideRoutable } from './isClientSideRoutable.js';
17
17
  import { setScrollPosition } from './setScrollPosition.js';
18
18
  import { scrollRestoration_initialRenderIsDone } from './scrollRestoration.js';
19
- import { getErrorPageId } from '../../shared/error-page.js';
19
+ import { getErrorPageId, isErrorPage } from '../../shared/error-page.js';
20
20
  import { setPageContextCurrent } from './getPageContextCurrent.js';
21
21
  import { getRouteStringParameterList } from '../../shared/route/resolveRouteString.js';
22
22
  import { getCurrentUrl } from '../shared/getCurrentUrl.js';
@@ -644,3 +644,17 @@ function handleErrorFetchingStaticAssets(err, pageContext, isFirstRender) {
644
644
  redirectHard(pageContext.urlOriginal);
645
645
  return true;
646
646
  }
647
+ // [HMR] If error page is shown => re-render whole page
648
+ if (import.meta.env.DEV && import.meta.hot)
649
+ // TODO/now use after event
650
+ import.meta.hot.on('vite:beforeUpdate', () => {
651
+ const pageContext = globalObject.renderedPageContext;
652
+ if (pageContext?.pageId && isErrorPage(pageContext.pageId, pageContext._globalContext._pageConfigs)) {
653
+ renderPageClientSide({
654
+ scrollTarget: { preserveScroll: false },
655
+ urlOriginal: getCurrentUrl(),
656
+ overwriteLastHistoryEntry: true,
657
+ isBackwardNavigation: false,
658
+ });
659
+ }
660
+ });
@@ -54,7 +54,7 @@ declare function createPageContextClientSide(): Promise<{
54
54
  _allPageIds: string[];
55
55
  } & {
56
56
  isClientSide: true;
57
- } & object;
57
+ };
58
58
  _pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
59
59
  isBackwardNavigation: null;
60
60
  _hasPageContextFromServer: true;
@@ -6,9 +6,14 @@ import { assertSingleInstance_onClientEntryServerRouting } from './utils.js';
6
6
  import { removeFoucBuster } from '../shared/removeFoucBuster.js';
7
7
  import { execHook } from '../../shared/hooks/execHook.js';
8
8
  import { preparePageContextForPublicUsageClient } from './preparePageContextForPublicUsageClient.js';
9
+ import { setVirtualFileExportsGlobalEntry } from '../shared/createGetGlobalContextClient.js';
10
+ // @ts-expect-error
11
+ import * as virtualFileExportsGlobalEntry from 'virtual:vike:global-entry:client:server-routing';
12
+ // TODO/now: remove this ts-ignore
9
13
  // @ts-ignore Since dist/cjs/client/ is never used, we can ignore this error.
10
14
  const isProd = import.meta.env.PROD;
11
15
  assertSingleInstance_onClientEntryServerRouting(isProd);
16
+ setVirtualFileExportsGlobalEntry(virtualFileExportsGlobalEntry, false);
12
17
  if (import.meta.env.DEV)
13
18
  removeFoucBuster();
14
19
  hydrate();
@@ -4,7 +4,7 @@ export type { GlobalContextClientInternalWithServerRouting };
4
4
  import type { GlobalContextBasePublic } from '../../shared/createGlobalContextShared.js';
5
5
  type GlobalContextClientWithServerRouting = GlobalContextBasePublic & Pick<GlobalContextClientInternalWithServerRouting, 'isClientSide'> & Vike.GlobalContext & Vike.GlobalContextClient & {};
6
6
  type GlobalContextClientInternalWithServerRouting = Awaited<ReturnType<typeof getGlobalContextClientInternal>>;
7
- declare const getGlobalContextClientInternal: () => Promise<{
7
+ declare function getGlobalContextClientInternal(): Promise<{
8
8
  _globalConfigPublic: {
9
9
  pages: {
10
10
  [k: string]: {
@@ -52,4 +52,4 @@ declare const getGlobalContextClientInternal: () => Promise<{
52
52
  _allPageIds: string[];
53
53
  } & {
54
54
  isClientSide: true;
55
- } & object>;
55
+ }>;
@@ -1,5 +1,9 @@
1
+ // TODO/now: rename file
2
+ // TODO/now: rename export
1
3
  export { getGlobalContextClientInternal };
2
4
  import { createGetGlobalContextClient } from '../shared/createGetGlobalContextClient.js';
3
- // @ts-ignore
4
- import * as virtualFileExportsGlobalEntry from 'virtual:vike:global-entry:client:server-routing';
5
- const getGlobalContextClientInternal = createGetGlobalContextClient(virtualFileExportsGlobalEntry, false);
5
+ // TODO/now: remove this useless function and re-export instead?
6
+ async function getGlobalContextClientInternal() {
7
+ const globalContext = await createGetGlobalContextClient();
8
+ return globalContext;
9
+ }
@@ -1,11 +1,11 @@
1
1
  export { getGlobalContext };
2
2
  export { getGlobalContextSync };
3
+ export { setVirtualFileExportsGlobalEntry };
3
4
  export { createGetGlobalContextClient };
4
5
  export type GlobalContextClientInternalShared = GlobalContextClientInternal | GlobalContextClientInternalWithServerRouting;
5
- import { type GlobalContextBase } from '../../shared/createGlobalContextShared.js';
6
6
  import type { GlobalContextClientInternal } from '../runtime-client-routing/globalContext.js';
7
7
  import type { GlobalContextClientInternalWithServerRouting } from '../runtime-server-routing/globalContext.js';
8
- declare function createGetGlobalContextClient<GlobalContextAddendum extends object>(virtualFileExportsGlobalEntry: unknown, isClientRouting: boolean, addGlobalContext?: (globalContext: GlobalContextBase) => Promise<GlobalContextAddendum>): () => Promise<{
8
+ declare function createGetGlobalContextClient(): Promise<{
9
9
  _globalConfigPublic: {
10
10
  pages: {
11
11
  [k: string]: {
@@ -58,7 +58,8 @@ declare function createGetGlobalContextClient<GlobalContextAddendum extends obje
58
58
  * We recommend using `import.meta.env.SSR` instead, see https://vike.dev/globalContext
59
59
  */
60
60
  isClientSide: true;
61
- } & Awaited<GlobalContextAddendum>>;
61
+ }>;
62
62
  type NeverExported = never;
63
63
  declare function getGlobalContext(): Promise<NeverExported>;
64
64
  declare function getGlobalContextSync(): NeverExported;
65
+ declare function setVirtualFileExportsGlobalEntry(virtualFileExportsGlobalEntry: unknown, isClientRouting: boolean): Promise<void>;
@@ -1,7 +1,10 @@
1
1
  // Public usage
2
2
  export { getGlobalContext };
3
3
  export { getGlobalContextSync };
4
+ export { setVirtualFileExportsGlobalEntry };
4
5
  // Internal usage
6
+ // TODO/now rename export
7
+ // TODO/now rename file
5
8
  export { createGetGlobalContextClient };
6
9
  import { createGlobalContextShared, getGlobalContextSyncErrMsg, } from '../../shared/createGlobalContextShared.js';
7
10
  import { getGlobalContextSerializedInHtml } from './getJsonSerializedInHtml.js';
@@ -13,42 +16,31 @@ const globalObject = getGlobalObject('createGetGlobalContextClient.ts', (() => {
13
16
  globalContextInitialPromiseResolve,
14
17
  };
15
18
  })());
16
- function createGetGlobalContextClient(virtualFileExportsGlobalEntry, isClientRouting, addGlobalContext) {
17
- assert(globalObject.isClientRouting === undefined || globalObject.isClientRouting === isClientRouting);
18
- globalObject.isClientRouting = isClientRouting;
19
- // Eagerly call onCreateGlobalContext() hook
20
- getGlobalContext();
21
- return getGlobalContext;
22
- async function getGlobalContext() {
23
- // HMR => virtualFileExportsGlobalEntry differ
24
- if (globalObject.virtualFileExportsGlobalEntry === virtualFileExportsGlobalEntry) {
25
- const globalContext = await globalObject.globalContextPromise;
26
- return globalContext;
27
- }
28
- else {
29
- globalObject.virtualFileExportsGlobalEntry = virtualFileExportsGlobalEntry;
30
- }
31
- // Create
32
- const globalContextPromise = createGlobalContextShared(virtualFileExportsGlobalEntry, globalObject, undefined, async (globalContext) => {
33
- const globalContextAddendum = {
34
- /**
35
- * Whether the environment is client-side or server-side / pre-rendering.
36
- *
37
- * We recommend using `import.meta.env.SSR` instead, see https://vike.dev/globalContext
38
- */
39
- isClientSide: true,
40
- };
41
- objectAssign(globalContextAddendum, getGlobalContextSerializedInHtml());
42
- objectAssign(globalContextAddendum, await addGlobalContext?.(globalContext));
43
- return globalContextAddendum;
44
- });
45
- globalObject.globalContextPromise = globalContextPromise;
46
- const globalContext = await globalContextPromise;
47
- assert(globalObject.globalContext === globalContext);
48
- globalObject.globalContextInitialPromiseResolve();
49
- // Return
19
+ async function createGetGlobalContextClient() {
20
+ if (globalObject.globalContextPromise) {
21
+ const globalContext = await globalObject.globalContextPromise;
50
22
  return globalContext;
51
23
  }
24
+ // Create
25
+ const globalContextPromise = createGlobalContextShared(globalObject.virtualFileExportsGlobalEntry, globalObject, undefined, async (globalContext) => {
26
+ const globalContextAddendum = {
27
+ // TODO/now update JSDocs
28
+ /**
29
+ * Whether the environment is client-side or server-side / pre-rendering.
30
+ *
31
+ * We recommend using `import.meta.env.SSR` instead, see https://vike.dev/globalContext
32
+ */
33
+ isClientSide: true,
34
+ };
35
+ objectAssign(globalContextAddendum, getGlobalContextSerializedInHtml());
36
+ return globalContextAddendum;
37
+ });
38
+ globalObject.globalContextPromise = globalContextPromise;
39
+ const globalContext = await globalContextPromise;
40
+ assert(globalObject.globalContext === globalContext);
41
+ globalObject.globalContextInitialPromiseResolve();
42
+ // Return
43
+ return globalContext;
52
44
  }
53
45
  async function getGlobalContext() {
54
46
  await globalObject.globalContextInitialPromise;
@@ -63,3 +55,15 @@ function getGlobalContextSync() {
63
55
  checkType(globalContext);
64
56
  return globalContext;
65
57
  }
58
+ async function setVirtualFileExportsGlobalEntry(virtualFileExportsGlobalEntry, isClientRouting) {
59
+ // TODO/now: remove unused globalObject.isClientRouting
60
+ assert(globalObject.isClientRouting === undefined || globalObject.isClientRouting === isClientRouting);
61
+ globalObject.isClientRouting = isClientRouting;
62
+ // HMR => virtualFileExportsGlobalEntry differ
63
+ if (globalObject.virtualFileExportsGlobalEntry !== virtualFileExportsGlobalEntry) {
64
+ delete globalObject.globalContextPromise;
65
+ globalObject.virtualFileExportsGlobalEntry = virtualFileExportsGlobalEntry;
66
+ // Eagerly call +onCreateGlobalContext() hooks
67
+ await createGetGlobalContextClient();
68
+ }
69
+ }
@@ -4,8 +4,10 @@ export { plugin };
4
4
  export { plugin as ssr };
5
5
  export { getVikeConfig } from './shared/resolveVikeConfigInternal.js';
6
6
  export { PROJECT_VERSION as version } from './utils.js';
7
+ import { getClientEntrySrcDev } from './shared/getClientEntrySrcDev.js';
8
+ import { setGetClientEntrySrcDev } from '../runtime/renderPage/getPageAssets/retrievePageAssetsDev.js';
7
9
  import { assertUsage } from './utils.js';
8
- import { pluginBuild } from './plugins/pluginBuild.js';
10
+ import pc from '@brillout/picocolors';
9
11
  import { pluginPreview } from './plugins/pluginPreview.js';
10
12
  import { pluginDev } from './plugins/pluginDev.js';
11
13
  import { pluginVirtualFiles } from './plugins/pluginVirtualFiles.js';
@@ -15,38 +17,55 @@ import { pluginSetGlobalContext } from './plugins/pluginSetGlobalContext.js';
15
17
  import { pluginCommon } from './plugins/pluginCommon.js';
16
18
  import { pluginBaseUrls } from './plugins/pluginBaseUrls.js';
17
19
  import { pluginEnvVars } from './plugins/pluginEnvVars.js';
18
- import pc from '@brillout/picocolors';
19
20
  import { pluginFileEnv } from './plugins/pluginFileEnv.js';
20
- import { getClientEntrySrcDev } from './shared/getClientEntrySrcDev.js';
21
21
  import { pluginWorkaroundCssModuleHmr } from './plugins/pluginWorkaroundCssModuleHmr.js';
22
22
  import { pluginWorkaroundVite6HmrRegression } from './plugins/pluginWorkaroundVite6HmrRegression.js';
23
- import { pluginReplaceConstants } from './plugins/pluginReplaceConstants.js';
23
+ import { pluginReplaceIsClientSide } from './plugins/pluginReplaceIsClientSide.js';
24
+ import { pluginReplaceGlobalThisConstants } from './plugins/pluginReplaceGlobalThisConstants.js';
24
25
  import { pluginNonRunnableDev } from './plugins/pluginNonRunnableDev.js';
25
- import { setGetClientEntrySrcDev } from '../runtime/renderPage/getPageAssets/retrievePageAssetsDev.js';
26
+ import { pluginBuildApp } from './plugins/pluginBuild/pluginBuildApp.js';
27
+ import { pluginDistPackageJsonFile } from './plugins/pluginBuild/pluginDistPackageJsonFile.js';
28
+ import { pluginSuppressRollupWarning } from './plugins/pluginBuild/pluginSuppressRollupWarning.js';
29
+ import { pluginDistFileNames } from './plugins/pluginBuild/pluginDistFileNames.js';
30
+ import { pluginProdBuildEntry } from './plugins/pluginBuild/pluginProdBuildEntry.js';
31
+ import { pluginBuildConfig } from './plugins/pluginBuild/pluginBuildConfig.js';
32
+ import { pluginModuleBanner } from './plugins/pluginBuild/pluginModuleBanner.js';
26
33
  // We don't call this in ./onLoad.ts to avoid a cyclic dependency with utils.ts
27
34
  setGetClientEntrySrcDev(getClientEntrySrcDev);
28
35
  // Return `PluginInterop` instead of `Plugin` to avoid type mismatch upon different Vite versions
29
36
  function plugin(vikeVitePluginOptions = {}) {
30
37
  const plugins = [
31
38
  ...pluginCommon(vikeVitePluginOptions),
32
- pluginVirtualFiles(),
39
+ ...pluginVirtualFiles(),
33
40
  ...pluginDev(),
34
41
  ...pluginBuild(),
35
- pluginPreview(),
42
+ ...pluginPreview(),
36
43
  ...pluginExtractAssets(),
37
- pluginExtractExportNames(),
44
+ ...pluginExtractExportNames(),
38
45
  ...pluginSetGlobalContext(),
39
- pluginBaseUrls(),
40
- pluginEnvVars(),
41
- pluginFileEnv(),
42
- pluginWorkaroundCssModuleHmr(),
43
- pluginWorkaroundVite6HmrRegression(),
44
- pluginReplaceConstants(),
45
- pluginNonRunnableDev(),
46
+ ...pluginBaseUrls(),
47
+ ...pluginEnvVars(),
48
+ ...pluginFileEnv(),
49
+ ...pluginWorkaroundCssModuleHmr(),
50
+ ...pluginWorkaroundVite6HmrRegression(),
51
+ ...pluginReplaceIsClientSide(),
52
+ ...pluginReplaceGlobalThisConstants(),
53
+ ...pluginNonRunnableDev(),
46
54
  ];
47
55
  Object.assign(plugins, { _vikeVitePluginOptions: vikeVitePluginOptions });
48
56
  return plugins;
49
57
  }
58
+ function pluginBuild() {
59
+ return [
60
+ ...pluginBuildConfig(),
61
+ ...pluginBuildApp(),
62
+ ...pluginProdBuildEntry(),
63
+ ...pluginDistPackageJsonFile(),
64
+ ...pluginSuppressRollupWarning(),
65
+ ...pluginDistFileNames(),
66
+ ...pluginModuleBanner(),
67
+ ];
68
+ }
50
69
  // Error upon wrong usage
51
70
  Object.defineProperty(plugin, 'apply', {
52
71
  enumerable: true,
@@ -1,3 +1,3 @@
1
1
  export { pluginBaseUrls };
2
2
  import type { Plugin } from 'vite';
3
- declare function pluginBaseUrls(): Plugin;
3
+ declare function pluginBaseUrls(): Plugin[];
@@ -4,44 +4,46 @@ import { assert } from '../utils.js';
4
4
  import { getVikeConfigInternal } from '../shared/resolveVikeConfigInternal.js';
5
5
  function pluginBaseUrls() {
6
6
  let basesResolved;
7
- return {
8
- name: 'vike:pluginBaseUrls',
9
- enforce: 'post',
10
- config: {
11
- async handler(config) {
12
- const isDev = config._isDev;
13
- assert(typeof isDev === 'boolean');
14
- const baseViteOriginal = config.base ?? '/__UNSET__'; // '/__UNSET__' because Vite resolves `_baseViteOriginal: null` to `undefined`
15
- const vikeConfig = await getVikeConfigInternal();
16
- basesResolved = resolveBase(baseViteOriginal, vikeConfig.config.baseServer ?? null, vikeConfig.config.baseAssets ?? null);
17
- // We cannot define these in configResolved() because Vite picks up the env variables before any configResolved() hook is called
18
- process.env.BASE_SERVER = basesResolved.baseServer;
19
- process.env.BASE_ASSETS = basesResolved.baseAssets;
20
- return {
21
- envPrefix: [
22
- 'VITE_', // Vite doesn't seem to merge in its default, see https://github.com/vikejs/vike/issues/554
23
- 'BASE_SERVER',
24
- 'BASE_ASSETS',
25
- ],
26
- base: basesResolved.baseAssets, // Make Vite inject baseAssets to imports e.g. `import logoUrl from './logo.svg.js'`
27
- _baseViteOriginal: baseViteOriginal,
28
- };
7
+ return [
8
+ {
9
+ name: 'vike:pluginBaseUrls',
10
+ enforce: 'post',
11
+ config: {
12
+ async handler(config) {
13
+ const isDev = config._isDev;
14
+ assert(typeof isDev === 'boolean');
15
+ const baseViteOriginal = config.base ?? '/__UNSET__'; // '/__UNSET__' because Vite resolves `_baseViteOriginal: null` to `undefined`
16
+ const vikeConfig = await getVikeConfigInternal();
17
+ basesResolved = resolveBase(baseViteOriginal, vikeConfig.config.baseServer ?? null, vikeConfig.config.baseAssets ?? null);
18
+ // We cannot define these in configResolved() because Vite picks up the env variables before any configResolved() hook is called
19
+ process.env.BASE_SERVER = basesResolved.baseServer;
20
+ process.env.BASE_ASSETS = basesResolved.baseAssets;
21
+ return {
22
+ envPrefix: [
23
+ 'VITE_', // Vite doesn't seem to merge in its default, see https://github.com/vikejs/vike/issues/554
24
+ 'BASE_SERVER',
25
+ 'BASE_ASSETS',
26
+ ],
27
+ base: basesResolved.baseAssets, // Make Vite inject baseAssets to imports e.g. `import logoUrl from './logo.svg.js'`
28
+ _baseViteOriginal: baseViteOriginal,
29
+ };
30
+ },
29
31
  },
30
- },
31
- configResolved: {
32
- async handler(config) {
33
- const vikeConfig = await getVikeConfigInternal();
34
- const basesResolved2 = resolveBaseFromResolvedConfig(vikeConfig.config.baseServer ?? null, vikeConfig.config.baseAssets ?? null, config);
35
- assert(basesResolved2.baseServer === basesResolved.baseServer);
36
- assert(basesResolved2.baseAssets === basesResolved.baseAssets);
37
- /* In dev, Vite seems buggy around setting vite.config.js#base to an absolute URL (e.g. http://localhost:8080/cdn/)
38
- * - In dev, Vite removes the URL origin. (I.e. it resolves the user config `vite.config.js#base: 'http://localhost:8080/cdn/'` to resolved config `config.base === '/cdn/'`.)
39
- * - Instead of having an internal Vike assertion fail, we let the user discover Vite's buggy behavior.
40
- assert(config.base === baseAssets)
41
- */
32
+ configResolved: {
33
+ async handler(config) {
34
+ const vikeConfig = await getVikeConfigInternal();
35
+ const basesResolved2 = resolveBaseFromResolvedConfig(vikeConfig.config.baseServer ?? null, vikeConfig.config.baseAssets ?? null, config);
36
+ assert(basesResolved2.baseServer === basesResolved.baseServer);
37
+ assert(basesResolved2.baseAssets === basesResolved.baseAssets);
38
+ /* In dev, Vite seems buggy around setting vite.config.js#base to an absolute URL (e.g. http://localhost:8080/cdn/)
39
+ * - In dev, Vite removes the URL origin. (I.e. it resolves the user config `vite.config.js#base: 'http://localhost:8080/cdn/'` to resolved config `config.base === '/cdn/'`.)
40
+ * - Instead of having an internal Vike assertion fail, we let the user discover Vite's buggy behavior.
41
+ assert(config.base === baseAssets)
42
+ */
43
+ },
42
44
  },
43
45
  },
44
- };
46
+ ];
45
47
  }
46
48
  function resolveBaseFromResolvedConfig(baseServer, baseAssets, config) {
47
49
  let baseViteOriginal = config._baseViteOriginal;
@@ -3,10 +3,14 @@ export { handleAssetsManifest_getBuildConfig };
3
3
  export { handleAssetsManifest_isFixEnabled };
4
4
  export { handleAssetsManifest_assertUsageCssCodeSplit };
5
5
  export { handleAssetsManifest_assertUsageCssTarget };
6
+ export { handleAssetsManifest_workaroundCssTarget_part1 };
7
+ export { handleAssetsManifest_workaroundCssTarget_part2 };
6
8
  import type { Environment, ResolvedConfig, Rollup } from 'vite';
7
9
  type Bundle = Rollup.OutputBundle;
8
10
  declare function handleAssetsManifest_isFixEnabled(): boolean;
9
11
  declare function handleAssetsManifest_assertUsageCssCodeSplit(config: ResolvedConfig): void;
12
+ declare function handleAssetsManifest_workaroundCssTarget_part1(config: ResolvedConfig): void;
13
+ declare function handleAssetsManifest_workaroundCssTarget_part2(): void;
10
14
  declare function handleAssetsManifest_assertUsageCssTarget(config: ResolvedConfig, env: Environment): void;
11
15
  declare function handleAssetsManifest_getBuildConfig(): Promise<{
12
16
  readonly ssrEmitAssets: true | undefined;
@@ -3,6 +3,8 @@ export { handleAssetsManifest_getBuildConfig };
3
3
  export { handleAssetsManifest_isFixEnabled };
4
4
  export { handleAssetsManifest_assertUsageCssCodeSplit };
5
5
  export { handleAssetsManifest_assertUsageCssTarget };
6
+ export { handleAssetsManifest_workaroundCssTarget_part1 };
7
+ export { handleAssetsManifest_workaroundCssTarget_part2 };
6
8
  import fs from 'node:fs/promises';
7
9
  import fs_sync from 'node:fs';
8
10
  import path from 'node:path';
@@ -13,11 +15,14 @@ import { getAssetsDir } from '../../shared/getAssetsDir.js';
13
15
  import pc from '@brillout/picocolors';
14
16
  import { isV1Design } from '../../shared/resolveVikeConfigInternal.js';
15
17
  import { getOutDirs } from '../../shared/getOutDirs.js';
16
- import { isViteServerSide_onlySsrEnv, isViteServerSide } from '../../shared/isViteServerSide.js';
18
+ import { isViteServerSide_onlySsrEnv, isViteServerSide, isViteServerSide_viteEnvOptional, } from '../../shared/isViteServerSide.js';
17
19
  import { set_macro_ASSETS_MANIFEST } from './pluginProdBuildEntry.js';
18
20
  import { getManifestFilePathRelative } from '../../shared/getManifestFilePathRelative.js';
19
- const globalObject = getGlobalObject('build/handleAssetsManifest.ts', {
21
+ const globalObject = getGlobalObject('handleAssetsManifest.ts', {
20
22
  assetsJsonFilePath: undefined,
23
+ cssTarget: '__VIKE__UNSET',
24
+ targetsAll: [],
25
+ configsAll: [],
21
26
  });
22
27
  // yes => use workaround config.build.ssrEmitAssets
23
28
  // false => use workaround extractAssets plugin
@@ -216,16 +221,26 @@ function handleAssetsManifest_assertUsageCssCodeSplit(config) {
216
221
  return;
217
222
  assertWarning(config.build.cssCodeSplit, `${pc.cyan('build.cssCodeSplit')} shouldn't be set to ${pc.cyan('false')} (https://github.com/vikejs/vike/issues/1993)`, { onlyOnce: true });
218
223
  }
219
- const targets = [];
224
+ function handleAssetsManifest_workaroundCssTarget_part1(config) {
225
+ globalObject.configsAll.push(config);
226
+ if (!isViteServerSide_viteEnvOptional(config, undefined)) {
227
+ globalObject.cssTarget = config.build.cssTarget;
228
+ }
229
+ }
230
+ function handleAssetsManifest_workaroundCssTarget_part2() {
231
+ assert(globalObject.cssTarget !== '__VIKE__UNSET');
232
+ globalObject.configsAll.forEach((c) => (c.build.cssTarget = globalObject.cssTarget));
233
+ }
220
234
  function handleAssetsManifest_assertUsageCssTarget(config, env) {
221
235
  if (!handleAssetsManifest_isFixEnabled())
222
236
  return;
223
237
  const isServerSide = isViteServerSide(config, env);
224
238
  assert(typeof isServerSide === 'boolean');
225
239
  assert(config.build.target !== undefined);
226
- targets.push({ global: config.build.target, css: config.build.cssTarget, isServerSide });
227
- const targetsServer = targets.filter((t) => t.isServerSide);
228
- const targetsClient = targets.filter((t) => !t.isServerSide);
240
+ const { targetsAll } = globalObject;
241
+ targetsAll.push({ global: config.build.target, css: config.build.cssTarget, isServerSide });
242
+ const targetsServer = targetsAll.filter((t) => t.isServerSide);
243
+ const targetsClient = targetsAll.filter((t) => !t.isServerSide);
229
244
  targetsClient.forEach((targetClient) => {
230
245
  const targetCssResolvedClient = resolveCssTarget(targetClient);
231
246
  targetsServer.forEach((targetServer) => {
@@ -10,20 +10,32 @@ import { prependEntriesDir } from '../../../shared/prependEntriesDir.js';
10
10
  import { getFilePathResolved } from '../../shared/getFilePath.js';
11
11
  import { getConfigValueBuildTime } from '../../../../shared/page-configs/getConfigValueBuildTime.js';
12
12
  import { isViteServerSide_viteEnvOptional } from '../../shared/isViteServerSide.js';
13
- import { handleAssetsManifest_assertUsageCssCodeSplit, handleAssetsManifest_getBuildConfig, } from './handleAssetsManifest.js';
13
+ import { handleAssetsManifest_assertUsageCssCodeSplit, handleAssetsManifest_getBuildConfig, handleAssetsManifest_workaroundCssTarget_part1, handleAssetsManifest_workaroundCssTarget_part2, } from './handleAssetsManifest.js';
14
14
  import { resolveIncludeAssetsImportedByServer } from '../../../runtime/renderPage/getPageAssets/retrievePageAssetsProd.js';
15
15
  function pluginBuildConfig() {
16
16
  let config;
17
17
  return [
18
18
  {
19
- name: 'vike:build:pluginBuildConfig',
19
+ name: 'vike:build:pluginBuildConfig:post1',
20
20
  apply: 'build',
21
21
  enforce: 'post',
22
22
  configResolved: {
23
23
  order: 'post',
24
- async handler(config_) {
25
- onSetupBuild();
24
+ handler(config_) {
26
25
  config = config_;
26
+ handleAssetsManifest_workaroundCssTarget_part1(config);
27
+ },
28
+ },
29
+ },
30
+ {
31
+ name: 'vike:build:pluginBuildConfig:post2',
32
+ apply: 'build',
33
+ enforce: 'post',
34
+ configResolved: {
35
+ order: 'post',
36
+ async handler() {
37
+ handleAssetsManifest_workaroundCssTarget_part2();
38
+ onSetupBuild();
27
39
  assertRollupInput(config);
28
40
  const entries = await getEntries(config);
29
41
  assert(Object.keys(entries).length > 0);
@@ -1,3 +1,3 @@
1
1
  export { pluginDistFileNames };
2
2
  import type { Plugin } from 'vite';
3
- declare function pluginDistFileNames(): Plugin;
3
+ declare function pluginDistFileNames(): Plugin[];