vike 0.4.235 → 0.4.236-commit-64431e7

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 (227) hide show
  1. package/dist/cjs/__internal/index.js +1 -1
  2. package/dist/cjs/client/shared/createGetGlobalContextClient.js +2 -3
  3. package/dist/cjs/client/shared/preparePageContextForPublicUsageClientShared.js +4 -4
  4. package/dist/cjs/node/api/prepareViteApiCall.js +1 -1
  5. package/dist/cjs/node/cli/index.js +1 -1
  6. package/dist/cjs/node/createPageRenderer.js +1 -1
  7. package/dist/cjs/node/importBuild.js +1 -1
  8. package/dist/cjs/node/prerender/context.js +1 -1
  9. package/dist/cjs/node/prerender/index.js +1 -1
  10. package/dist/cjs/node/prerender/resolvePrerenderConfig.js +2 -2
  11. package/dist/cjs/node/prerender/runPrerender.js +9 -13
  12. package/dist/cjs/node/runtime/globalContext.js +109 -28
  13. package/dist/cjs/node/runtime/html/injectAssets/getViteDevScript.js +8 -1
  14. package/dist/cjs/node/runtime/html/injectAssets/injectAssets__public.js +1 -1
  15. package/dist/cjs/node/runtime/html/injectAssets/injectHtmlTags.js +2 -0
  16. package/dist/cjs/node/runtime/html/serializeContext.js +73 -15
  17. package/dist/cjs/node/runtime/index-deprecated.js +1 -1
  18. package/dist/cjs/node/runtime/index.js +1 -1
  19. package/dist/cjs/node/runtime/page-files/setup.js +1 -1
  20. package/dist/cjs/node/runtime/renderPage/assertArguments.js +1 -1
  21. package/dist/cjs/node/runtime/renderPage/createHttpResponse.js +9 -6
  22. package/dist/cjs/node/runtime/renderPage/createPageContextServerSide.js +4 -4
  23. package/dist/cjs/node/runtime/renderPage/execHookDataAndOnBeforeRender.js +2 -2
  24. package/dist/cjs/node/runtime/renderPage/{createHttpResponse/getCacheControl.js → getCacheControl.js} +9 -9
  25. package/dist/cjs/node/runtime/renderPage/getHttpResponseBody.js +4 -4
  26. package/dist/cjs/node/runtime/renderPage/getPageAssets/retrieveAssetsProd.js +1 -1
  27. package/dist/cjs/node/runtime/renderPage/getPageAssets.js +15 -12
  28. package/dist/cjs/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +35 -16
  29. package/dist/cjs/node/runtime/renderPage/preparePageContextForPublicUsageServer.js +1 -1
  30. package/dist/cjs/node/runtime/renderPage/renderPageAlreadyRouted.js +1 -0
  31. package/dist/cjs/node/runtime/renderPage.js +4 -6
  32. package/dist/cjs/node/runtime/utils.js +1 -0
  33. package/dist/cjs/node/vite/index.js +2 -0
  34. package/dist/cjs/node/vite/onLoad.js +1 -1
  35. package/dist/cjs/node/vite/plugins/pluginBuild/handleAssetsManifest.js +3 -3
  36. package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildConfig.js +3 -2
  37. package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildEntry.js +1 -1
  38. package/dist/cjs/node/vite/plugins/pluginBuild/pluginDistFileNames.js +16 -7
  39. package/dist/cjs/node/vite/plugins/pluginCommon/assertResolveAlias.js +1 -1
  40. package/dist/cjs/node/vite/plugins/pluginCommon.js +9 -4
  41. package/dist/cjs/node/vite/plugins/pluginDev.js +1 -1
  42. package/dist/cjs/node/vite/plugins/pluginEnvVars.js +4 -4
  43. package/dist/cjs/node/vite/plugins/pluginExtractExportNames.js +2 -2
  44. package/dist/cjs/node/vite/plugins/pluginFileEnv.js +1 -1
  45. package/dist/cjs/node/vite/plugins/pluginReplaceConstants.js +1 -1
  46. package/dist/cjs/node/vite/plugins/pluginVirtualFiles.js +1 -1
  47. package/dist/cjs/node/vite/plugins/pluginViteRPC.js +42 -0
  48. package/dist/cjs/node/vite/shared/addSsrMiddleware.js +1 -1
  49. package/dist/cjs/node/vite/shared/applyRegExWithMagicString.js +1 -0
  50. package/dist/cjs/node/vite/shared/loggerNotProd.js +10 -6
  51. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.js +5 -1
  52. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles.js +1 -3
  53. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/filesystemRouting.js +4 -6
  54. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/transpileAndExecuteFile.js +1 -1
  55. package/dist/cjs/node/vite/shared/resolveVikeConfigInternal.js +6 -6
  56. package/dist/cjs/shared/RenderErrorPage.js +1 -1
  57. package/dist/cjs/shared/abort.js +1 -1
  58. package/dist/cjs/shared/createGlobalContextShared.js +28 -7
  59. package/dist/cjs/shared/createPageContextShared.js +1 -2
  60. package/dist/cjs/shared/determinePageIdOld.js +1 -1
  61. package/dist/cjs/shared/error-page.js +3 -3
  62. package/dist/cjs/shared/getPageContextUrlComputed.js +4 -4
  63. package/dist/cjs/shared/getPageFiles/analyzeClientSide.js +1 -1
  64. package/dist/cjs/shared/getPageFiles/analyzePageClientSide/analyzeExports.js +1 -1
  65. package/dist/cjs/shared/getPageFiles/analyzePageClientSide/determineClientEntry.js +1 -1
  66. package/dist/cjs/shared/getPageFiles/analyzePageClientSide.js +2 -2
  67. package/dist/cjs/shared/getPageFiles/assert_exports_old_design.js +1 -1
  68. package/dist/cjs/shared/getPageFiles/fileTypes.js +1 -1
  69. package/dist/cjs/shared/getPageFiles/getAllPageIdFiles.js +1 -1
  70. package/dist/cjs/shared/getPageFiles/getPageFileObject.js +1 -1
  71. package/dist/cjs/shared/getPageFiles/parseVirtualFileExports.js +1 -1
  72. package/dist/cjs/shared/getProxyForPublicUsage.js +3 -3
  73. package/dist/cjs/shared/page-configs/getConfigDefinedAt.js +4 -3
  74. package/dist/cjs/shared/page-configs/resolveVikeConfigPublic.js +10 -10
  75. package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +1 -1
  76. package/dist/cjs/shared/preparePageContextForPublicUsage.js +5 -5
  77. package/dist/cjs/shared/route/abort.js +1 -1
  78. package/dist/cjs/shared/route/deduceRouteStringFromFilesystemPath.js +1 -1
  79. package/dist/cjs/shared/route/execHookGuard.js +1 -1
  80. package/dist/cjs/shared/route/execHookOnBeforeRoute.js +1 -1
  81. package/dist/cjs/shared/route/index.js +1 -1
  82. package/dist/cjs/shared/route/loadPageRoutes.js +10 -4
  83. package/dist/cjs/shared/route/resolveRouteFunction.js +3 -3
  84. package/dist/cjs/shared/route/resolveRouteString.js +1 -1
  85. package/dist/cjs/shared/route/routing.js +1 -1
  86. package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
  87. package/dist/cjs/utils/assertSetup.js +11 -8
  88. package/dist/cjs/utils/debug.js +1 -0
  89. package/dist/cjs/utils/debugGlob.js +1 -1
  90. package/dist/cjs/utils/getViteRPC.js +79 -0
  91. package/dist/cjs/utils/parseNpmPackage.js +1 -1
  92. package/dist/esm/__internal/index.d.ts +1 -1
  93. package/dist/esm/__internal/index.js +1 -1
  94. package/dist/esm/client/node.js +1 -1
  95. package/dist/esm/client/runtime-client-routing/createPageContextClientSide.d.ts +1 -1
  96. package/dist/esm/client/runtime-client-routing/createPageContextClientSide.js +2 -2
  97. package/dist/esm/client/runtime-client-routing/getPageContextFromHooks.d.ts +10 -2
  98. package/dist/esm/client/runtime-client-routing/getPageContextFromHooks.js +6 -6
  99. package/dist/esm/client/runtime-client-routing/globalContext.d.ts +1 -1
  100. package/dist/esm/client/runtime-client-routing/index.js +1 -1
  101. package/dist/esm/client/runtime-client-routing/isClientSideRoutable.js +1 -1
  102. package/dist/esm/client/runtime-client-routing/prefetch/getPrefetchSettings.js +6 -6
  103. package/dist/esm/client/runtime-client-routing/prefetch.js +10 -10
  104. package/dist/esm/client/runtime-client-routing/renderPageClientSide.d.ts +3 -1
  105. package/dist/esm/client/runtime-client-routing/renderPageClientSide.js +3 -3
  106. package/dist/esm/client/runtime-client-routing/skipLink.js +1 -1
  107. package/dist/esm/client/runtime-server-routing/createPageContextClientSide.d.ts +1 -1
  108. package/dist/esm/client/runtime-server-routing/createPageContextClientSide.js +2 -2
  109. package/dist/esm/client/runtime-server-routing/globalContext.d.ts +1 -1
  110. package/dist/esm/client/runtime-server-routing/index.js +1 -1
  111. package/dist/esm/client/shared/createGetGlobalContextClient.d.ts +5 -4
  112. package/dist/esm/client/shared/createGetGlobalContextClient.js +1 -2
  113. package/dist/esm/client/shared/execHookOnRenderClient.js +1 -1
  114. package/dist/esm/client/shared/loadPageConfigsLazyClientSide.js +2 -2
  115. package/dist/esm/client/shared/preparePageContextForPublicUsageClientShared.js +4 -4
  116. package/dist/esm/node/api/prepareViteApiCall.js +1 -1
  117. package/dist/esm/node/cli/index.js +1 -1
  118. package/dist/esm/node/createPageRenderer.js +1 -1
  119. package/dist/esm/node/importBuild.js +1 -1
  120. package/dist/esm/node/prerender/context.js +1 -1
  121. package/dist/esm/node/prerender/index.js +1 -1
  122. package/dist/esm/node/prerender/resolvePrerenderConfig.js +2 -2
  123. package/dist/esm/node/prerender/runPrerender.d.ts +42 -133
  124. package/dist/esm/node/prerender/runPrerender.js +9 -13
  125. package/dist/esm/node/runtime/globalContext.d.ts +39 -59
  126. package/dist/esm/node/runtime/globalContext.js +112 -31
  127. package/dist/esm/node/runtime/html/injectAssets/getViteDevScript.js +8 -1
  128. package/dist/esm/node/runtime/html/injectAssets/injectAssets__public.js +1 -1
  129. package/dist/esm/node/runtime/html/injectAssets/injectHtmlTags.js +2 -0
  130. package/dist/esm/node/runtime/html/serializeContext.d.ts +7 -1
  131. package/dist/esm/node/runtime/html/serializeContext.js +73 -15
  132. package/dist/esm/node/runtime/index-deprecated.js +1 -1
  133. package/dist/esm/node/runtime/index.js +1 -1
  134. package/dist/esm/node/runtime/page-files/setup.js +1 -1
  135. package/dist/esm/node/runtime/renderPage/assertArguments.js +1 -1
  136. package/dist/esm/node/runtime/renderPage/createHttpResponse.d.ts +1 -0
  137. package/dist/esm/node/runtime/renderPage/createHttpResponse.js +9 -6
  138. package/dist/esm/node/runtime/renderPage/createPageContextServerSide.d.ts +12 -35
  139. package/dist/esm/node/runtime/renderPage/createPageContextServerSide.js +4 -4
  140. package/dist/esm/node/runtime/renderPage/execHookDataAndOnBeforeRender.js +2 -2
  141. package/dist/esm/node/runtime/renderPage/getCacheControl.d.ts +5 -0
  142. package/dist/esm/node/runtime/renderPage/{createHttpResponse/getCacheControl.js → getCacheControl.js} +8 -9
  143. package/dist/esm/node/runtime/renderPage/getHttpResponseBody.js +4 -4
  144. package/dist/esm/node/runtime/renderPage/getPageAssets/retrieveAssetsProd.js +1 -1
  145. package/dist/esm/node/runtime/renderPage/getPageAssets.js +16 -13
  146. package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.d.ts +8 -4
  147. package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +36 -17
  148. package/dist/esm/node/runtime/renderPage/preparePageContextForPublicUsageServer.js +1 -1
  149. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +24 -68
  150. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.js +1 -0
  151. package/dist/esm/node/runtime/renderPage.d.ts +13 -36
  152. package/dist/esm/node/runtime/renderPage.js +4 -6
  153. package/dist/esm/node/runtime/utils.d.ts +1 -0
  154. package/dist/esm/node/runtime/utils.js +1 -0
  155. package/dist/esm/node/vite/index.js +3 -1
  156. package/dist/esm/node/vite/onLoad.js +1 -1
  157. package/dist/esm/node/vite/plugins/pluginBuild/handleAssetsManifest.d.ts +1 -1
  158. package/dist/esm/node/vite/plugins/pluginBuild/handleAssetsManifest.js +3 -3
  159. package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildConfig.d.ts +1 -1
  160. package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildConfig.js +3 -2
  161. package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildEntry.js +1 -1
  162. package/dist/esm/node/vite/plugins/pluginBuild/pluginDistFileNames.js +16 -7
  163. package/dist/esm/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.js +0 -1
  164. package/dist/esm/node/vite/plugins/pluginCommon/assertResolveAlias.js +1 -1
  165. package/dist/esm/node/vite/plugins/pluginCommon.d.ts +3 -0
  166. package/dist/esm/node/vite/plugins/pluginCommon.js +9 -4
  167. package/dist/esm/node/vite/plugins/pluginDev.js +1 -1
  168. package/dist/esm/node/vite/plugins/pluginEnvVars.js +1 -1
  169. package/dist/esm/node/vite/plugins/pluginFileEnv.js +1 -1
  170. package/dist/esm/node/vite/plugins/pluginVirtualFiles.js +1 -1
  171. package/dist/esm/node/vite/plugins/pluginViteRPC.d.ts +25 -0
  172. package/dist/esm/node/vite/plugins/pluginViteRPC.js +40 -0
  173. package/dist/esm/node/vite/shared/addSsrMiddleware.js +1 -1
  174. package/dist/esm/node/vite/shared/applyRegExWithMagicString.js +1 -0
  175. package/dist/esm/node/vite/shared/loggerNotProd.js +10 -0
  176. package/dist/esm/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.js +5 -1
  177. package/dist/esm/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles.js +1 -3
  178. package/dist/esm/node/vite/shared/resolveVikeConfigInternal/filesystemRouting.js +4 -6
  179. package/dist/esm/node/vite/shared/resolveVikeConfigInternal/transpileAndExecuteFile.js +1 -1
  180. package/dist/esm/node/vite/shared/resolveVikeConfigInternal.js +6 -6
  181. package/dist/esm/shared/RenderErrorPage.js +1 -1
  182. package/dist/esm/shared/abort.js +1 -1
  183. package/dist/esm/shared/createGlobalContextShared.d.ts +3 -3
  184. package/dist/esm/shared/createGlobalContextShared.js +28 -7
  185. package/dist/esm/shared/createPageContextShared.d.ts +2 -3
  186. package/dist/esm/shared/createPageContextShared.js +1 -2
  187. package/dist/esm/shared/determinePageIdOld.js +1 -1
  188. package/dist/esm/shared/error-page.js +3 -3
  189. package/dist/esm/shared/getPageContextUrlComputed.js +4 -4
  190. package/dist/esm/shared/getPageFiles/analyzeClientSide.js +1 -1
  191. package/dist/esm/shared/getPageFiles/analyzePageClientSide/analyzeExports.js +1 -1
  192. package/dist/esm/shared/getPageFiles/analyzePageClientSide/determineClientEntry.js +1 -1
  193. package/dist/esm/shared/getPageFiles/analyzePageClientSide.js +2 -2
  194. package/dist/esm/shared/getPageFiles/assert_exports_old_design.js +1 -1
  195. package/dist/esm/shared/getPageFiles/fileTypes.js +1 -1
  196. package/dist/esm/shared/getPageFiles/getAllPageIdFiles.js +1 -1
  197. package/dist/esm/shared/getPageFiles/getPageFileObject.js +1 -1
  198. package/dist/esm/shared/getPageFiles/parseVirtualFileExports.js +1 -1
  199. package/dist/esm/shared/getProxyForPublicUsage.js +1 -1
  200. package/dist/esm/shared/hooks/getHook.js +1 -1
  201. package/dist/esm/shared/page-configs/getConfigDefinedAt.js +4 -3
  202. package/dist/esm/shared/page-configs/resolveVikeConfigPublic.js +12 -12
  203. package/dist/esm/shared/page-configs/serialize/serializeConfigValues.js +1 -1
  204. package/dist/esm/shared/preparePageContextForPublicUsage.js +5 -5
  205. package/dist/esm/shared/route/abort.js +1 -1
  206. package/dist/esm/shared/route/deduceRouteStringFromFilesystemPath.js +1 -1
  207. package/dist/esm/shared/route/execHookGuard.js +1 -1
  208. package/dist/esm/shared/route/execHookOnBeforeRoute.js +1 -1
  209. package/dist/esm/shared/route/index.js +1 -1
  210. package/dist/esm/shared/route/loadPageRoutes.d.ts +5 -0
  211. package/dist/esm/shared/route/loadPageRoutes.js +10 -4
  212. package/dist/esm/shared/route/resolveRouteFunction.js +3 -3
  213. package/dist/esm/shared/route/resolveRouteString.js +1 -1
  214. package/dist/esm/shared/route/routing.js +1 -1
  215. package/dist/esm/types/Config.d.ts +9 -1
  216. package/dist/esm/types/PageContext.d.ts +8 -2
  217. package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
  218. package/dist/esm/utils/PROJECT_VERSION.js +1 -1
  219. package/dist/esm/utils/assertSetup.js +11 -8
  220. package/dist/esm/utils/debug.d.ts +1 -1
  221. package/dist/esm/utils/debug.js +1 -0
  222. package/dist/esm/utils/debugGlob.js +1 -1
  223. package/dist/esm/utils/getViteRPC.d.ts +6 -0
  224. package/dist/esm/utils/getViteRPC.js +77 -0
  225. package/dist/esm/utils/parseNpmPackage.js +1 -1
  226. package/package.json +12 -6
  227. package/dist/esm/node/runtime/renderPage/createHttpResponse/getCacheControl.d.ts +0 -5
@@ -12,7 +12,7 @@ const assertSetup_js_1 = require("../utils/assertSetup.js");
12
12
  /**
13
13
  * Used by {@link https://github.com/magne4000/vite-plugin-vercel|vite-plugin-vercel} to compute some rewrite rules and extract { isr } configs.
14
14
  *
15
- * TODO/eventually: remove
15
+ * TO-DO/eventually: remove
16
16
  */
17
17
  async function getPagesAndRoutes() {
18
18
  (0, assertSetup_js_1.setNodeEnvProduction)();
@@ -27,12 +27,12 @@ function createGetGlobalContextClient(virtualFileExports, isClientRouting, addGl
27
27
  return globalObject.globalContext;
28
28
  }
29
29
  // Create
30
- const globalContext = await (0, createGlobalContextShared_js_1.createGlobalContextShared)(virtualFileExports, globalObject, async (globalContext) => {
30
+ const globalContext = await (0, createGlobalContextShared_js_1.createGlobalContextShared)(virtualFileExports, globalObject, undefined, async (globalContext) => {
31
31
  const globalContextAddendum = {
32
32
  /**
33
33
  * Whether the environment is client-side or server-side / pre-rendering.
34
34
  *
35
- * We recommend using `import.meta.env.SSR` instead, see https://vike.dev/globalContext
35
+ * We recommend using `({}).SSR` instead, see https://vike.dev/globalContext
36
36
  */
37
37
  isClientSide: true,
38
38
  };
@@ -46,7 +46,6 @@ function createGetGlobalContextClient(virtualFileExports, isClientRouting, addGl
46
46
  return globalContext;
47
47
  }
48
48
  }
49
- // The type is never used: it's the type of the server-side getGlobalContext() that is used.
50
49
  async function getGlobalContext() {
51
50
  const globalContext = await globalObject.globalContextPromise;
52
51
  return globalContext;
@@ -5,14 +5,14 @@ exports.preparePageContextForPublicUsageClientMinimal = preparePageContextForPub
5
5
  const utils_js_1 = require("../runtime-server-routing/utils.js");
6
6
  const preparePageContextForPublicUsage_js_1 = require("../../shared/preparePageContextForPublicUsage.js");
7
7
  function preparePageContextForPublicUsageClientShared(pageContext) {
8
- // TODO/now-proxy use proxy
8
+ // TO-DO/soon/proxy: use proxy
9
9
  const Page = pageContext.config?.Page ||
10
- // TODO/next-major-release: remove
10
+ // TO-DO/next-major-release: remove
11
11
  pageContext.exports?.Page;
12
12
  (0, utils_js_1.objectAssign)(pageContext, { Page });
13
- // TODO/next-major-release: after we remove supportVueReactiviy() we can call this later inside the agnostic preparePageContextForPublicUsage()
13
+ // TO-DO/next-major-release: after we remove supportVueReactiviy() we can call this later inside the agnostic preparePageContextForPublicUsage()
14
14
  (0, preparePageContextForPublicUsage_js_1.assertPropertyGetters)(pageContext);
15
- // TODO/next-major-release: remove
15
+ // TO-DO/next-major-release: remove
16
16
  // - Requires https://github.com/vikejs/vike-vue/issues/198
17
17
  // - Last time I tried to remove it (https://github.com/vikejs/vike/commit/705fd23598d9d69bf46a52c8550216cd7117ce71) the tests were failing as expected: only the Vue integrations that used shallowReactive() failed.
18
18
  supportVueReactiviy(pageContext);
@@ -122,7 +122,7 @@ async function getViteInfo(viteConfigFromUserApiOptions, operation) {
122
122
  const root = normalizeViteRoot(viteConfigResolved.root ?? process.cwd());
123
123
  globalObject.root = root;
124
124
  // - Find options `vike(options)` set in vite.config.js
125
- // - TODO/next-major: remove
125
+ // - TO-DO/next-major-release: remove
126
126
  // - Add Vike's Vite plugin if missing
127
127
  let vikeVitePluginOptions;
128
128
  const found = findVikeVitePlugin(viteConfigResolved);
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- // TODO/v1-release: remove this file
2
+ // TO-DO/next-major-release: remove this file
3
3
  var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  return (mod && mod.__esModule) ? mod : { "default": mod };
5
5
  };
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- // TODO/v1-release: remove this file
2
+ // TO-DO/next-major-release: remove this file
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.createPageRenderer = createPageRenderer;
5
5
  //import { SsrEnv, setSsrEnv } from './ssrEnv.js'
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
- // TODO/v1-release: remove
2
+ // TO-DO/next-major-release: remove
3
3
  console.warn("[vike][Warning] importBuild.js is not needed anymore; it has no effect. Remove `import 'dist/server/importBuild.js'` to remove this warning. More infos at https://vike.dev/importBuild.js");
@@ -14,7 +14,7 @@ function isPrerenderAutoRunEnabled(vikeConfig) {
14
14
  !globalObject.isDisabled &&
15
15
  vikeConfig.config.disableAutoFullBuild !== 'prerender');
16
16
  }
17
- // TODO/v1-release: remove
17
+ // TO-DO/next-major-release: remove
18
18
  function temp_disablePrerenderAutoRun() {
19
19
  globalObject.isDisabled = true;
20
20
  }
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- // TODO/v1-release: remove this file
2
+ // TO-DO/next-major-release: remove this file
3
3
  var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  return (mod && mod.__esModule) ? mod : { "default": mod };
5
5
  };
@@ -24,7 +24,7 @@ function resolvePrerenderConfigGlobal(vikeConfig) {
24
24
  defaultLocalValue = true;
25
25
  }
26
26
  }
27
- // TODO/next-major: remove
27
+ // TO-DO/next-major-release: remove
28
28
  // Backwards compatibility for `vike({prerender:true})` in vite.config.js
29
29
  {
30
30
  const valuesWithDefinedAt = vikeConfig._from.configsCumulative.prerender?.values ?? [];
@@ -39,7 +39,7 @@ function resolvePrerenderConfigGlobal(vikeConfig) {
39
39
  isPrerenderingEnabled: vikeConfig._pageConfigs.length > 0 &&
40
40
  vikeConfig._pageConfigs.some((pageConfig) => resolvePrerenderConfigLocal(pageConfig)?.value ?? defaultLocalValue),
41
41
  });
42
- // TODO/next-major remove
42
+ // TO-DO/next-major-release: remove
43
43
  if (vikeConfig._pageConfigs.length === 0 && defaultLocalValue)
44
44
  prerenderConfigGlobal.isPrerenderingEnabled = true;
45
45
  return prerenderConfigGlobal;
@@ -87,7 +87,7 @@ async function runPrerender(options = {}, trigger) {
87
87
  const { partial, noExtraDir, parallel, defaultLocalValue, isPrerenderingEnabled } = prerenderConfigGlobal;
88
88
  if (!isPrerenderingEnabled) {
89
89
  (0, utils_js_1.assert)(trigger !== 'auto-run');
90
- /* TODO/v1-release: use this assertUsage() again.
90
+ /* TO-DO/next-major-release: use this assertUsage() again.
91
91
  * - Make sure https://github.com/magne4000/vite-plugin-vercel/pull/156 is merged before using this assertUsage() again. (Otherwise vite-plugin-vercel will trigger this assertUsage() call.)
92
92
  * - Done: PR is merged as of June 20205
93
93
  assertUsage(
@@ -169,7 +169,7 @@ async function collectDoNoPrerenderList(pageConfigs, doNotPrerenderList, default
169
169
  }
170
170
  });
171
171
  // Old design
172
- // TODO/v1-release: remove
172
+ // TO-DO/next-major-release: remove
173
173
  await Promise.all(globalContext._pageFilesAll
174
174
  .filter((p) => {
175
175
  assertExportNames(p);
@@ -332,7 +332,7 @@ async function createPageContextPrerendering(urlOriginal, prerenderContext, glob
332
332
  urlOriginal,
333
333
  ...prerenderContext._pageContextInit,
334
334
  };
335
- const pageContext = await (0, createPageContextServerSide_js_1.createPageContextServerSide)(pageContextInit, globalContext, {
335
+ const pageContext = (0, createPageContextServerSide_js_1.createPageContextServerSide)(pageContextInit, globalContext, {
336
336
  isPrerendering: true,
337
337
  });
338
338
  (0, utils_js_1.assert)(pageContext.isPrerendering === true);
@@ -423,7 +423,7 @@ async function callOnPrerenderStartHook(prerenderContext, globalContext, concurr
423
423
  }
424
424
  }
425
425
  // Old design
426
- // TODO/v1-release: remove
426
+ // TO-DO/next-major-release: remove
427
427
  if (globalContext._pageConfigs.length === 0) {
428
428
  const hookTimeout = (0, getHook_js_1.getHookTimeoutDefault)('onBeforePrerender');
429
429
  const pageFilesWithOnBeforePrerenderHook = globalContext._pageFilesAll.filter((p) => {
@@ -463,7 +463,7 @@ async function callOnPrerenderStartHook(prerenderContext, globalContext, concurr
463
463
  (0, utils_js_1.assertUsage)((0, utils_js_1.isCallable)(hookFn), `${msgPrefix} should be a function.`);
464
464
  prerenderContext.pageContexts.forEach((pageContext) => {
465
465
  Object.defineProperty(pageContext, 'url', {
466
- // TODO/v1-release: remove warning
466
+ // TO-DO/next-major-release: remove warning
467
467
  get() {
468
468
  (0, utils_js_1.assertWarning)(false, msgPrefix +
469
469
  ' uses pageContext.url but it should use pageContext.urlOriginal instead, see https://vike.dev/migration/0.4.23', { showStackTrace: true, onlyOnce: true });
@@ -493,7 +493,7 @@ async function callOnPrerenderStartHook(prerenderContext, globalContext, concurr
493
493
  }
494
494
  const errPrefix = `The ${hookName}() hook exported by ${hookFilePath}`;
495
495
  const rightUsage = `${errPrefix} should return ${picocolors_1.default.cyan('null')}, ${picocolors_1.default.cyan('undefined')}, or ${picocolors_1.default.cyan('{ prerenderContext: { pageContexts } }')}`;
496
- // TODO/v1-release: remove
496
+ // TO-DO/next-major-release: remove
497
497
  if ((0, utils_js_1.hasProp)(result, 'globalContext')) {
498
498
  (0, utils_js_1.assertUsage)((0, utils_js_1.isObjectWithKeys)(result, ['globalContext']) &&
499
499
  (0, utils_js_1.hasProp)(result, 'globalContext', 'object') &&
@@ -510,7 +510,7 @@ async function callOnPrerenderStartHook(prerenderContext, globalContext, concurr
510
510
  (0, utils_js_1.hasProp)(result.prerenderContext, 'pageContexts', 'array'), rightUsage);
511
511
  prerenderContext.pageContexts = result.prerenderContext.pageContexts;
512
512
  prerenderContext.pageContexts.forEach((pageContext) => {
513
- // TODO/v1-release: remove
513
+ // TO-DO/next-major-release: remove
514
514
  if (pageContext.url && !(0, utils_js_1.isPropertyGetter)(pageContext, 'url')) {
515
515
  (0, utils_js_1.assertWarning)(false, msgPrefix +
516
516
  ' provided pageContext.url but it should provide pageContext.urlOriginal instead, see https://vike.dev/migration/0.4.23', { onlyOnce: true });
@@ -571,10 +571,6 @@ function warnContradictoryNoPrerenderList(prerenderedPageContexts, doNotPrerende
571
571
  async function warnMissingPages(prerenderedPageContexts, globalContext, doNotPrerenderList, partial) {
572
572
  const isV1 = globalContext._pageConfigs.length > 0;
573
573
  const hookName = isV1 ? 'onBeforePrerenderStart' : 'prerender';
574
- /* TODO/after-v1-design-release: document setting `prerender: false` as an alternative to using prerender.partial (both in the warnings and the docs)
575
- const optOutName = isV1 ? 'prerender' : 'doNotPrerender'
576
- const msgAddendum = `Explicitly opt-out by setting the config ${optOutName} to ${isV1 ? 'false' : 'true'} or use the option prerender.partial`
577
- */
578
574
  globalContext._allPageIds
579
575
  .filter((pageId) => !prerenderedPageContexts[pageId])
580
576
  .filter((pageId) => !doNotPrerenderList.find((p) => p.pageId === pageId))
@@ -677,7 +673,7 @@ function normalizeOnPrerenderHookResult(prerenderResult, prerenderHookFile, hook
677
673
  return prerenderElement;
678
674
  }
679
675
  }
680
- // TODO/v1-release: remove
676
+ // TO-DO/next-major-release: remove
681
677
  function checkOutdatedOptions(options) {
682
678
  (0, utils_js_1.assertUsage)(options.root === undefined, 'Option `prerender({ root })` deprecated: set `prerender({ viteConfig: { root }})` instead.', { showStackTrace: true });
683
679
  (0, utils_js_1.assertUsage)(options.configFile === undefined, 'Option `prerender({ configFile })` deprecated: set `prerender({ viteConfig: { configFile }})` instead.', { showStackTrace: true });
@@ -722,7 +718,7 @@ function assertIsNotAbort(err, urlOriginal) {
722
718
  (0, utils_js_1.assertUsage)(false, `${picocolors_1.default.cyan(abortCall)} thrown${thrownBy} while pre-rendering ${urlOriginal} but ${picocolors_1.default.cyan(abortCaller)} isn't supported for pre-rendered pages`);
723
719
  }
724
720
  function preparePrerenderContextForPublicUsage(prerenderContext) {
725
- // TODO/v1-release: remove
721
+ // TO-DO/next-major-release: remove
726
722
  if (!('prerenderPageContexts' in prerenderContext)) {
727
723
  Object.defineProperty(prerenderContext, 'prerenderPageContexts', {
728
724
  get() {
@@ -42,7 +42,7 @@ const loggerRuntime_js_1 = require("./loggerRuntime.js");
42
42
  const getVikeConfigError_js_1 = require("../shared/getVikeConfigError.js");
43
43
  const isNewError_js_1 = require("./renderPage/isNewError.js");
44
44
  const debug = (0, utils_js_1.createDebugger)('vike:globalContext');
45
- const globalObject = (0, utils_js_1.getGlobalObject)('runtime/globalContext.ts', getInitialGlobalContext());
45
+ const globalObject = (0, utils_js_1.getGlobalObject)('runtime/globalContext.ts', getInitialGlobalObject());
46
46
  // Trick to break down TypeScript circular dependency
47
47
  // https://chat.deepseek.com/a/chat/s/d7e9f90a-c7f3-4108-9cd5-4ad6caed3539
48
48
  const globalObjectTyped = globalObject;
@@ -103,17 +103,19 @@ async function getGlobalContextAsync(isProduction) {
103
103
  * Get runtime information about your app.
104
104
  *
105
105
  * https://vike.dev/getGlobalContext
106
- *
107
- * @deprecated
108
106
  */
109
107
  function getGlobalContextSync() {
110
108
  debug('getGlobalContextSync()');
111
109
  const { globalContext } = globalObjectTyped;
112
110
  (0, utils_js_1.assertUsage)(globalContext, createGlobalContextShared_js_1.getGlobalContextSyncErrMsg);
113
- (0, utils_js_1.assertWarning)(false,
114
- // We discourage users from using it because `pageContext.globalContext` is safer: I ain't sure but there could be race conditions when using `getGlobalContextSync()` inside React/Vue components upon HMR.
115
- // We're lying about "is going to be deprecated in the next major release": let's keep it and see if users need it (so far I can't see a use case for it).
116
- 'getGlobalContextSync() is going to be deprecated in the next major release, see https://vike.dev/getGlobalContext', { onlyOnce: true });
111
+ const isProd = globalContext._isProduction;
112
+ (0, utils_js_1.assert)(typeof isProd === 'boolean');
113
+ (0, utils_js_1.assertWarning)(isProd,
114
+ // - We discourage users from using it in development because `pageContext.globalContext` is safer: I ain't sure but there could be race conditions when using `getGlobalContextSync()` inside React/Vue components upon HMR.
115
+ // - I don't see any issues with getGlobalContextSync() in production.
116
+ // - getGlobalContextSync() is used in production by vike-vercel
117
+ // - https://discord.com/channels/@me/942519153502339072/1389546794676916344 (PM between Rom and Joël)
118
+ "getGlobalContextSync() shouldn't be used in development, see https://vike.dev/getGlobalContext", { onlyOnce: true });
117
119
  return getGlobalContextForPublicUsage();
118
120
  }
119
121
  function getGlobalContextForPublicUsage() {
@@ -152,7 +154,12 @@ function setGlobalContext_isPrerendering() {
152
154
  globalObject.isPrerendering = true;
153
155
  setIsProduction(true);
154
156
  }
155
- function setGlobalContext_isProduction(isProduction, tolerateContraditction) {
157
+ function setGlobalContext_isProduction(isProduction, tolerateContraditction = false) {
158
+ // TODO/now: try to remove globalObject.isProduction ?
159
+ // TODO/now: `rename tolerateContraditction tolerateContradiction`
160
+ tolerateContraditction = true;
161
+ if (debug.isActivated)
162
+ debug('setGlobalContext_isProduction()', { isProduction, tolerateContraditction });
156
163
  if (globalObject.isProduction === undefined) {
157
164
  setIsProduction(isProduction);
158
165
  }
@@ -201,7 +208,12 @@ async function initGlobalContext() {
201
208
  const { isProduction } = globalObject;
202
209
  (0, utils_js_1.assert)(typeof isProduction === 'boolean');
203
210
  if (!isProduction) {
204
- await globalObject.viteDevServerPromise;
211
+ if (isProcessSharedWithVite()) {
212
+ await globalObject.viteDevServerPromise;
213
+ }
214
+ else {
215
+ await updateUserFiles();
216
+ }
205
217
  (0, utils_js_1.assert)(globalObject.waitForUserFilesUpdate);
206
218
  await globalObject.waitForUserFilesUpdate;
207
219
  }
@@ -234,6 +246,7 @@ function assertViteManifest(manifest) {
234
246
  async function loadBuildEntry(outDir) {
235
247
  debug('loadBuildEntry()');
236
248
  if (globalObject.globalContext) {
249
+ debug('loadBuildEntry() - already done');
237
250
  return;
238
251
  }
239
252
  if (!globalObject.buildEntry) {
@@ -259,6 +272,8 @@ async function loadBuildEntry(outDir) {
259
272
  globalObject.buildInfo = buildEntry.buildInfo;
260
273
  await setGlobalContext(buildEntry.virtualFileExports);
261
274
  }
275
+ // This is the production entry, see:
276
+ // https://github.com/vikejs/vike/blob/798e5465dc3e3e6723b38b601a50350c0a006fb8/packages/vike/node/vite/plugins/pluginBuild/pluginBuildEntry.ts#L47
262
277
  async function setGlobalContext_buildEntry(buildEntry) {
263
278
  debug('setGlobalContext_buildEntry()');
264
279
  setIsProduction(true);
@@ -268,6 +283,7 @@ async function setGlobalContext_buildEntry(buildEntry) {
268
283
  (0, utils_js_1.assert)(globalObject.buildEntry); // ensure no infinite loop
269
284
  await loadBuildEntry();
270
285
  assertGlobalContextIsDefined();
286
+ debug('setGlobalContext_buildEntry() - done');
271
287
  }
272
288
  function assertBuildEntry(buildEntry) {
273
289
  (0, utils_js_1.assert)((0, utils_js_1.isObject)(buildEntry));
@@ -331,16 +347,27 @@ async function updateUserFiles() {
331
347
  // Avoid race condition: abort if there is a new globalObject.viteDevServer (happens when vite.config.js is modified => Vite's dev server is fully reloaded).
332
348
  viteDevServer !== globalObject.viteDevServer;
333
349
  const { viteDevServer } = globalObject;
334
- (0, utils_js_1.assert)(viteDevServer);
335
350
  let hasError = false;
336
351
  let virtualFileExports;
337
352
  let err;
338
- try {
339
- virtualFileExports = await viteDevServer.ssrLoadModule(virtualFileEntry_js_1.virtualFileIdEntryServer);
353
+ if (viteDevServer) {
354
+ try {
355
+ virtualFileExports = await viteDevServer.ssrLoadModule(virtualFileEntry_js_1.virtualFileIdEntryServer);
356
+ }
357
+ catch (err_) {
358
+ hasError = true;
359
+ err = err_;
360
+ }
340
361
  }
341
- catch (err_) {
342
- hasError = true;
343
- err = err_;
362
+ else {
363
+ try {
364
+ // We don't directly use import() to workaround what seems to be a Vite HMR bug: using import() breaks the HMR of normal non-worker apps.
365
+ virtualFileExports = await __VIKE__DYNAMIC_IMPORT('virtual:vike:entry:server');
366
+ }
367
+ catch (err_) {
368
+ hasError = true;
369
+ err = err_;
370
+ }
344
371
  }
345
372
  if (isOutdated())
346
373
  return { success: false };
@@ -364,40 +391,46 @@ async function updateUserFiles() {
364
391
  return onSuccess();
365
392
  }
366
393
  async function setGlobalContext(virtualFileExports) {
394
+ debug('setGlobalContext()');
367
395
  (0, utils_js_1.assert)(!(0, getVikeConfigError_js_1.getVikeConfigErrorBuild)());
368
- const globalContext = await (0, createGlobalContextShared_js_1.createGlobalContextShared)(virtualFileExports, globalObject, addGlobalContext);
396
+ const globalContext = await (0, createGlobalContextShared_js_1.createGlobalContextShared)(virtualFileExports, globalObject, addGlobalContext, addGlobalContextTmp, addGlobalContextAsync);
369
397
  (0, assertV1Design_js_1.assertV1Design)(
370
398
  // pageConfigs is PageConfigRuntime[] but assertV1Design() requires PageConfigBuildTime[]
371
399
  globalContext._pageConfigs.length > 0, globalContext._pageFilesAll);
372
400
  assertGlobalContextIsDefined();
373
401
  (0, utils_js_1.onSetupRuntime)();
402
+ debug('setGlobalContext() - done');
374
403
  // Never actually used, only used for TypeScript `ReturnType<typeof setGlobalContext>`
375
404
  return globalContext;
376
405
  }
377
- async function addGlobalContext(globalContext) {
406
+ async function addGlobalContextTmp(globalContext) {
407
+ debug('addGlobalContextTmp()');
378
408
  const { pageRoutes, onBeforeRouteHook } = await (0, loadPageRoutes_js_1.loadPageRoutes)(globalContext._pageFilesAll, globalContext._pageConfigs, globalContext._pageConfigGlobal, globalContext._allPageIds);
409
+ return addGlobalContextCommon(globalContext, pageRoutes, onBeforeRouteHook);
410
+ }
411
+ function addGlobalContext(globalContext) {
412
+ debug('addGlobalContext()');
413
+ const { pageRoutes, onBeforeRouteHook } = (0, loadPageRoutes_js_1.loadPageRoutesSync)(globalContext._pageFilesAll, globalContext._pageConfigs, globalContext._pageConfigGlobal, globalContext._allPageIds);
414
+ return addGlobalContextCommon(globalContext, pageRoutes, onBeforeRouteHook);
415
+ }
416
+ function addGlobalContextCommon(globalContext, pageRoutes, onBeforeRouteHook) {
379
417
  const globalContextBase = {
380
418
  isClientSide: false,
381
419
  _pageRoutes: pageRoutes,
382
420
  _onBeforeRouteHook: onBeforeRouteHook,
383
421
  };
384
- const { viteDevServer, viteConfig, viteConfigRuntime, isPrerendering, isProduction } = globalObject;
422
+ const { viteDevServer, viteConfig, isPrerendering, isProduction } = globalObject;
385
423
  (0, utils_js_1.assert)(typeof isProduction === 'boolean');
386
424
  if (!isProduction) {
387
- (0, utils_js_1.assert)(viteDevServer);
388
425
  (0, utils_js_1.assert)(globalContext); // main common requirement
389
- (0, utils_js_1.assert)(viteConfig);
390
- (0, utils_js_1.assert)(viteConfigRuntime);
391
426
  (0, utils_js_1.assert)(!isPrerendering);
392
427
  return {
393
428
  ...globalContextBase,
394
- ...resolveBaseRuntime(viteConfigRuntime, globalContext.config),
395
429
  _isProduction: false,
396
430
  _isPrerendering: false,
397
431
  assetsManifest: null,
398
432
  _viteDevServer: viteDevServer,
399
433
  viteConfig,
400
- viteConfigRuntime,
401
434
  };
402
435
  }
403
436
  else {
@@ -408,11 +441,9 @@ async function addGlobalContext(globalContext) {
408
441
  (0, utils_js_1.assert)(assetsManifest);
409
442
  const globalContextBase2 = {
410
443
  ...globalContextBase,
411
- ...resolveBaseRuntime(buildInfo.viteConfigRuntime, globalContext.config),
412
444
  _isProduction: true,
413
445
  assetsManifest,
414
446
  _viteDevServer: null,
415
- viteConfigRuntime: buildInfo.viteConfigRuntime,
416
447
  _usesClientRouter: buildInfo.usesClientRouter,
417
448
  };
418
449
  if (isPrerendering) {
@@ -432,14 +463,45 @@ async function addGlobalContext(globalContext) {
432
463
  }
433
464
  }
434
465
  }
466
+ async function addGlobalContextAsync(globalContext) {
467
+ debug('addGlobalContextAsync()');
468
+ let { viteConfigRuntime, buildInfo } = globalObject;
469
+ if (!viteConfigRuntime) {
470
+ if (buildInfo) {
471
+ viteConfigRuntime = buildInfo.viteConfigRuntime;
472
+ }
473
+ else {
474
+ if (!isProcessSharedWithVite()) {
475
+ if (!globalObject.isProduction) {
476
+ const rpc = (0, utils_js_1.getViteRPC)();
477
+ viteConfigRuntime = await rpc.getViteConfigRuntimeRPC();
478
+ }
479
+ else {
480
+ (0, utils_js_1.assert)(false); // production => globalObject.buildInfo should be set
481
+ }
482
+ }
483
+ else {
484
+ (0, utils_js_1.assert)(false); // process shared with Vite => globalObject.viteConfigRuntime should be set
485
+ }
486
+ }
487
+ }
488
+ (0, utils_js_1.assert)(viteConfigRuntime);
489
+ return {
490
+ viteConfigRuntime,
491
+ ...resolveBaseRuntime(viteConfigRuntime, globalContext.config),
492
+ };
493
+ }
435
494
  function clearGlobalContext() {
436
495
  debug('clearGlobalContext()');
437
- (0, utils_js_1.objectReplace)(globalObject, getInitialGlobalContext(), ['buildEntryPrevious']);
496
+ (0, utils_js_1.objectReplace)(globalObject, getInitialGlobalObject(), ['buildEntryPrevious']);
438
497
  }
439
- function getInitialGlobalContext() {
440
- debug('getInitialGlobalContext()');
498
+ function getInitialGlobalObject() {
499
+ const isProduction = getIsProductionStatic();
500
+ if (debug.isActivated)
501
+ debug('getInitialGlobalObject()', { isProduction });
441
502
  const { promise: viteDevServerPromise, resolve: viteDevServerPromiseResolve } = (0, utils_js_1.genPromise)();
442
503
  return {
504
+ isProduction,
443
505
  viteDevServerPromise,
444
506
  viteDevServerPromiseResolve,
445
507
  };
@@ -450,3 +512,22 @@ function resolveBaseRuntime(viteConfigRuntime, config) {
450
512
  const baseAssetsUnresolved = config.baseAssets ?? null;
451
513
  return (0, resolveBase_js_1.resolveBase)(baseViteOriginal, baseServerUnresolved, baseAssetsUnresolved);
452
514
  }
515
+ function getIsProductionStatic() {
516
+ // TODO/now add @ts-ignore comments
517
+ // @ts-ignore
518
+ if (!({}))
519
+ return undefined;
520
+ // @ts-ignore
521
+ const PROD = ({}).PROD;
522
+ return PROD;
523
+ }
524
+ function isProcessSharedWithVite() {
525
+ const ret = globalThis.__VIKE__IS_PROCESS_SHARED_WITH_VITE;
526
+ if (globalObject.isProcessSharedWithVite !== undefined) {
527
+ (0, utils_js_1.assert)(globalObject.isProcessSharedWithVite === ret);
528
+ }
529
+ else {
530
+ globalObject.isProcessSharedWithVite = ret;
531
+ }
532
+ return ret;
533
+ }
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.getViteDevScript = getViteDevScript;
7
+ const getViteRPC_js_1 = require("../../../../utils/getViteRPC.js");
7
8
  const utils_js_1 = require("../../utils.js");
8
9
  const picocolors_1 = __importDefault(require("@brillout/picocolors"));
9
10
  const reachOutCTA = 'Create a new GitHub issue to discuss a solution.';
@@ -16,7 +17,13 @@ async function getViteDevScript(pageContext) {
16
17
  const fakeHtmlBegin = '<html> <head>'; // White space to test whether user is using a minifier
17
18
  const fakeHtmlEnd = '</head><body></body></html>';
18
19
  let fakeHtml = fakeHtmlBegin + fakeHtmlEnd;
19
- fakeHtml = await viteDevServer.transformIndexHtml('/', fakeHtml);
20
+ if (viteDevServer) {
21
+ fakeHtml = await viteDevServer.transformIndexHtml('/', fakeHtml);
22
+ }
23
+ else {
24
+ const rpc = (0, getViteRPC_js_1.getViteRPC)();
25
+ fakeHtml = await rpc.transformIndexHtmlRPC(fakeHtml);
26
+ }
20
27
  (0, utils_js_1.assertUsage)(!fakeHtml.includes('vite-plugin-pwa'), `The HTML transformer of ${picocolors_1.default.cyan('vite-plugin-pwa')} cannot be applied, see workaround at https://github.com/vikejs/vike/issues/388#issuecomment-1199280084`);
21
28
  (0, utils_js_1.assertUsage)(!fakeHtml.startsWith(fakeHtmlBegin.replace(' ', '')), `Vite plugins that minify the HTML cannot be applied, see https://github.com/vikejs/vike/issues/224`);
22
29
  (0, utils_js_1.assertUsage)(fakeHtml.startsWith(fakeHtmlBegin) && fakeHtml.endsWith(fakeHtmlEnd), `You are using a Vite Plugin that transforms the HTML in a way that conflicts with Vike. ${reachOutCTA}`);
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.injectAssets__public = injectAssets__public;
4
4
  const utils_js_1 = require("../../utils.js");
5
5
  const injectAssets_js_1 = require("../injectAssets.js");
6
- // TODO/v1-release: remove
6
+ // TO-DO/next-major-release: remove
7
7
  async function injectAssets__public(htmlString, pageContext) {
8
8
  (0, utils_js_1.assertWarning)(false, '`_injectAssets()` is deprecated and will be removed.', { onlyOnce: true, showStackTrace: true });
9
9
  (0, utils_js_1.assertUsage)(typeof htmlString === 'string', '[injectAssets(htmlString, pageContext)]: Argument `htmlString` should be a string.', { showStackTrace: true });
@@ -150,6 +150,8 @@ function getTagClosing(tag) {
150
150
  return tagClosing;
151
151
  }
152
152
  function injectAtPlaceholder(htmlFragment, htmlString, isFirst) {
153
+ // TO-DO/eventually: soft deprecate in favor of https://github.com/vikejs/vike/issues/695
154
+ // Used by BurdaForward https://github.com/vikejs/vike/discussions/2528#discussioncomment-13637156
153
155
  const placeholder = isFirst ? '__VITE_PLUGIN_SSR__ASSETS_FIRST__' : '__VITE_PLUGIN__SSR_ASSETS_LAST__';
154
156
  const parts = htmlString.split(placeholder);
155
157
  if (parts.length === 1)