vike 0.4.228 → 0.4.229

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 (225) hide show
  1. package/dist/cjs/__internal/index.js +2 -2
  2. package/dist/cjs/client/client-routing-runtime/globalContext.js +49 -0
  3. package/dist/cjs/client/server-routing-runtime/globalContext.js +41 -0
  4. package/dist/cjs/client/server-routing-runtime/utils.js +1 -1
  5. package/dist/cjs/client/shared/createGetGlobalContextClient.js +58 -0
  6. package/dist/cjs/client/shared/getJsonSerializedInHtml.js +31 -0
  7. package/dist/cjs/client/shared/utils.js +22 -0
  8. package/dist/cjs/node/plugin/plugins/baseUrls.js +1 -1
  9. package/dist/cjs/node/plugin/plugins/build/handleAssetsManifest.js +10 -5
  10. package/dist/cjs/node/plugin/plugins/build/pluginBuildApp.js +1 -1
  11. package/dist/cjs/node/plugin/plugins/build/pluginBuildConfig.js +3 -10
  12. package/dist/cjs/node/plugin/plugins/build/pluginBuildEntry.js +9 -5
  13. package/dist/cjs/node/plugin/plugins/build/pluginModuleBanner.js +5 -1
  14. package/dist/cjs/node/plugin/plugins/commonConfig/assertResolveAlias.js +1 -1
  15. package/dist/cjs/node/plugin/plugins/commonConfig.js +14 -3
  16. package/dist/cjs/node/plugin/plugins/devConfig/determineFsAllowList.js +2 -7
  17. package/dist/cjs/node/plugin/plugins/devConfig/determineOptimizeDeps.js +1 -1
  18. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +10 -0
  19. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles/ignorePatternsBuiltIn.js +2 -0
  20. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +2 -2
  21. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/{transformPointerImports.js → pointerImports.js} +13 -0
  22. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.js +20 -19
  23. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +13 -10
  24. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +11 -11
  25. package/dist/cjs/node/plugin/shared/getFilePath.js +2 -2
  26. package/dist/cjs/node/plugin/shared/resolveClientEntriesDev.js +7 -19
  27. package/dist/cjs/node/plugin/utils.js +1 -0
  28. package/dist/cjs/node/prerender/runPrerender.js +44 -41
  29. package/dist/cjs/node/prerender/utils.js +1 -1
  30. package/dist/cjs/node/runtime/globalContext.js +102 -125
  31. package/dist/cjs/node/runtime/html/injectAssets/getHtmlTags.js +18 -5
  32. package/dist/cjs/node/runtime/html/injectAssets/getViteDevScript.js +2 -2
  33. package/dist/cjs/node/runtime/html/propKeys.js +47 -0
  34. package/dist/cjs/node/runtime/html/renderHtml.js +1 -1
  35. package/dist/cjs/node/runtime/html/{serializePageContextClientSide.js → serializeContext.js} +37 -67
  36. package/dist/cjs/node/runtime/index-deprecated.js +9 -38
  37. package/dist/cjs/node/runtime/index.js +56 -2
  38. package/dist/cjs/node/runtime/renderPage/analyzePage.js +1 -1
  39. package/dist/cjs/node/runtime/renderPage/createHttpResponse.js +8 -3
  40. package/dist/cjs/node/runtime/renderPage/createPageContextServerSide.js +73 -0
  41. package/dist/cjs/node/runtime/renderPage/executeOnBeforeRenderAndDataHooks.js +2 -2
  42. package/dist/cjs/node/runtime/renderPage/executeOnRenderHtmlHook.js +2 -2
  43. package/dist/cjs/node/runtime/renderPage/getPageAssets/getManifestEntry.js +1 -1
  44. package/dist/cjs/node/runtime/renderPage/getPageAssets/retrieveAssetsDev.js +1 -17
  45. package/dist/cjs/node/runtime/renderPage/getPageAssets/retrieveAssetsProd.js +1 -1
  46. package/dist/cjs/node/runtime/renderPage/getPageAssets.js +2 -2
  47. package/dist/cjs/node/runtime/renderPage/handleErrorWithoutErrorPage.js +1 -1
  48. package/dist/cjs/node/runtime/renderPage/loadUserFilesServerSide.js +1 -1
  49. package/dist/cjs/node/runtime/renderPage/log404/index.js +1 -1
  50. package/dist/cjs/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.js +1 -1
  51. package/dist/cjs/node/runtime/renderPage/renderPageAlreadyRouted.js +3 -68
  52. package/dist/cjs/node/runtime/renderPage.js +102 -81
  53. package/dist/cjs/node/runtime/universal-middleware.js +7 -1
  54. package/dist/cjs/node/runtime/utils.js +3 -2
  55. package/dist/cjs/shared/assertPageContextProvidedByUser.js +1 -1
  56. package/dist/cjs/shared/createGlobalContextShared.js +54 -0
  57. package/dist/cjs/shared/createPageContextShared.js +17 -0
  58. package/dist/cjs/shared/getPageFiles/fileTypes.js +1 -1
  59. package/dist/cjs/shared/hooks/executeHookGeneric.js +18 -0
  60. package/dist/cjs/shared/hooks/getHook.js +45 -27
  61. package/dist/cjs/shared/htmlElementIds.js +5 -0
  62. package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +3 -7
  63. package/dist/cjs/shared/route/executeGuardHook.js +1 -1
  64. package/dist/cjs/shared/route/loadPageRoutes.js +2 -1
  65. package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
  66. package/dist/cjs/utils/catchInfiniteLoop.js +3 -3
  67. package/dist/cjs/utils/getPublicProxy.js +27 -0
  68. package/dist/cjs/utils/isImportPath.js +21 -0
  69. package/dist/cjs/utils/objectAssign.js +6 -10
  70. package/dist/cjs/utils/objectReplace.js +4 -4
  71. package/dist/cjs/utils/{isNpmPackage.js → parseNpmPackage.js} +23 -23
  72. package/dist/cjs/utils/path.js +12 -2
  73. package/dist/cjs/utils/requireResolve.js +134 -53
  74. package/dist/esm/__internal/index.js +3 -3
  75. package/dist/esm/client/client-routing-runtime/createPageContext.d.ts +29 -10
  76. package/dist/esm/client/client-routing-runtime/createPageContext.js +23 -22
  77. package/dist/esm/client/client-routing-runtime/getPageContextFromHooks.js +5 -4
  78. package/dist/esm/client/client-routing-runtime/globalContext.d.ts +20 -0
  79. package/dist/esm/client/client-routing-runtime/globalContext.js +13 -0
  80. package/dist/esm/client/client-routing-runtime/initOnLinkClick.js +2 -2
  81. package/dist/esm/client/client-routing-runtime/prefetch.js +2 -2
  82. package/dist/esm/client/client-routing-runtime/renderPageClientSide.js +8 -7
  83. package/dist/esm/client/client-routing-runtime/utils.d.ts +0 -1
  84. package/dist/esm/client/client-routing-runtime/utils.js +0 -1
  85. package/dist/esm/client/index.d.ts +1 -0
  86. package/dist/esm/client/index.js +4 -0
  87. package/dist/esm/client/node.js +1 -3
  88. package/dist/esm/client/server-routing-runtime/createPageContextClientSide.d.ts +36 -0
  89. package/dist/esm/client/server-routing-runtime/createPageContextClientSide.js +47 -0
  90. package/dist/esm/client/server-routing-runtime/entry.js +2 -2
  91. package/dist/esm/client/server-routing-runtime/globalContext.d.ts +17 -0
  92. package/dist/esm/client/server-routing-runtime/globalContext.js +5 -0
  93. package/dist/esm/client/server-routing-runtime/utils.d.ts +1 -1
  94. package/dist/esm/client/server-routing-runtime/utils.js +1 -1
  95. package/dist/esm/client/shared/createGetGlobalContextClient.d.ts +23 -0
  96. package/dist/esm/client/shared/createGetGlobalContextClient.js +58 -0
  97. package/dist/esm/client/shared/executeOnRenderClientHook.js +5 -4
  98. package/dist/esm/client/shared/{getPageContextSerializedInHtml.d.ts → getJsonSerializedInHtml.d.ts} +2 -0
  99. package/dist/esm/client/shared/getJsonSerializedInHtml.js +29 -0
  100. package/dist/esm/client/shared/removeFoucBuster.js +1 -0
  101. package/dist/esm/client/shared/utils.d.ts +4 -0
  102. package/dist/esm/client/shared/utils.js +4 -0
  103. package/dist/esm/node/plugin/plugins/baseUrls.js +2 -2
  104. package/dist/esm/node/plugin/plugins/build/handleAssetsManifest.js +11 -6
  105. package/dist/esm/node/plugin/plugins/build/pluginBuildApp.js +2 -2
  106. package/dist/esm/node/plugin/plugins/build/pluginBuildConfig.js +4 -11
  107. package/dist/esm/node/plugin/plugins/build/pluginBuildEntry.d.ts +1 -1
  108. package/dist/esm/node/plugin/plugins/build/pluginBuildEntry.js +10 -6
  109. package/dist/esm/node/plugin/plugins/build/pluginModuleBanner.js +5 -1
  110. package/dist/esm/node/plugin/plugins/commonConfig/assertResolveAlias.js +2 -2
  111. package/dist/esm/node/plugin/plugins/commonConfig.d.ts +2 -0
  112. package/dist/esm/node/plugin/plugins/commonConfig.js +15 -4
  113. package/dist/esm/node/plugin/plugins/devConfig/determineFsAllowList.js +3 -8
  114. package/dist/esm/node/plugin/plugins/devConfig/determineOptimizeDeps.js +2 -2
  115. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +10 -0
  116. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles/ignorePatternsBuiltIn.d.ts +1 -1
  117. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles/ignorePatternsBuiltIn.js +2 -0
  118. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +1 -1
  119. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/{transformPointerImports.d.ts → pointerImports.d.ts} +2 -0
  120. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/{transformPointerImports.js → pointerImports.js} +14 -1
  121. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.d.ts +1 -1
  122. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolvePointerImport.js +20 -19
  123. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +13 -10
  124. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +11 -11
  125. package/dist/esm/node/plugin/shared/getFilePath.js +3 -3
  126. package/dist/esm/node/plugin/shared/resolveClientEntriesDev.js +8 -20
  127. package/dist/esm/node/plugin/utils.d.ts +1 -0
  128. package/dist/esm/node/plugin/utils.js +1 -0
  129. package/dist/esm/node/prerender/runPrerender.d.ts +314 -5
  130. package/dist/esm/node/prerender/runPrerender.js +48 -45
  131. package/dist/esm/node/prerender/utils.d.ts +1 -1
  132. package/dist/esm/node/prerender/utils.js +1 -1
  133. package/dist/esm/node/runtime/globalContext.d.ts +425 -47
  134. package/dist/esm/node/runtime/globalContext.js +103 -126
  135. package/dist/esm/node/runtime/html/injectAssets/getHtmlTags.js +18 -5
  136. package/dist/esm/node/runtime/html/injectAssets/getViteDevScript.d.ts +2 -2
  137. package/dist/esm/node/runtime/html/injectAssets/getViteDevScript.js +2 -2
  138. package/dist/esm/node/runtime/html/injectAssets.d.ts +3 -3
  139. package/dist/esm/node/runtime/html/propKeys.d.ts +8 -0
  140. package/dist/esm/node/runtime/html/propKeys.js +45 -0
  141. package/dist/esm/node/runtime/html/renderHtml.js +1 -1
  142. package/dist/esm/node/runtime/html/{serializePageContextClientSide.d.ts → serializeContext.d.ts} +7 -6
  143. package/dist/esm/node/runtime/html/{serializePageContextClientSide.js → serializeContext.js} +36 -67
  144. package/dist/esm/node/runtime/index-deprecated.d.ts +1 -16
  145. package/dist/esm/node/runtime/index-deprecated.js +9 -36
  146. package/dist/esm/node/runtime/index.d.ts +23 -1
  147. package/dist/esm/node/runtime/index.js +38 -3
  148. package/dist/esm/node/runtime/renderPage/analyzePage.d.ts +2 -2
  149. package/dist/esm/node/runtime/renderPage/analyzePage.js +1 -1
  150. package/dist/esm/node/runtime/renderPage/createHttpResponse.d.ts +5 -4
  151. package/dist/esm/node/runtime/renderPage/createHttpResponse.js +8 -3
  152. package/dist/esm/node/runtime/renderPage/createPageContextServerSide.d.ts +155 -0
  153. package/dist/esm/node/runtime/renderPage/createPageContextServerSide.js +71 -0
  154. package/dist/esm/node/runtime/renderPage/executeOnBeforeRenderAndDataHooks.js +3 -3
  155. package/dist/esm/node/runtime/renderPage/executeOnRenderHtmlHook.d.ts +1 -1
  156. package/dist/esm/node/runtime/renderPage/executeOnRenderHtmlHook.js +3 -3
  157. package/dist/esm/node/runtime/renderPage/getPageAssets/getManifestEntry.js +2 -2
  158. package/dist/esm/node/runtime/renderPage/getPageAssets/retrieveAssetsDev.js +1 -17
  159. package/dist/esm/node/runtime/renderPage/getPageAssets/retrieveAssetsProd.js +2 -2
  160. package/dist/esm/node/runtime/renderPage/getPageAssets.d.ts +2 -2
  161. package/dist/esm/node/runtime/renderPage/getPageAssets.js +2 -2
  162. package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.d.ts +2 -2
  163. package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.js +1 -1
  164. package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.d.ts +2 -2
  165. package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.js +1 -1
  166. package/dist/esm/node/runtime/renderPage/log404/index.d.ts +2 -2
  167. package/dist/esm/node/runtime/renderPage/log404/index.js +1 -1
  168. package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.d.ts +3 -3
  169. package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.js +1 -1
  170. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +225 -179
  171. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.js +4 -69
  172. package/dist/esm/node/runtime/renderPage.d.ts +146 -7
  173. package/dist/esm/node/runtime/renderPage.js +105 -84
  174. package/dist/esm/node/runtime/universal-middleware.js +7 -1
  175. package/dist/esm/node/runtime/utils.d.ts +3 -2
  176. package/dist/esm/node/runtime/utils.js +3 -2
  177. package/dist/esm/shared/VikeNamespace.d.ts +35 -13
  178. package/dist/esm/shared/assertPageContextProvidedByUser.js +1 -1
  179. package/dist/esm/shared/createGlobalContextShared.d.ts +39 -0
  180. package/dist/esm/shared/createGlobalContextShared.js +51 -0
  181. package/dist/esm/shared/createPageContextShared.d.ts +9 -0
  182. package/dist/esm/shared/createPageContextShared.js +15 -0
  183. package/dist/esm/shared/getPageFiles/fileTypes.js +1 -1
  184. package/dist/esm/shared/hooks/executeHookGeneric.d.ts +8 -0
  185. package/dist/esm/shared/hooks/executeHookGeneric.js +16 -0
  186. package/dist/esm/shared/hooks/getHook.d.ts +5 -3
  187. package/dist/esm/shared/hooks/getHook.js +47 -29
  188. package/dist/esm/shared/htmlElementIds.d.ts +2 -0
  189. package/dist/esm/shared/htmlElementIds.js +2 -0
  190. package/dist/esm/shared/page-configs/Config.d.ts +12 -2
  191. package/dist/esm/shared/page-configs/getConfigDefinedAt.d.ts +1 -1
  192. package/dist/esm/shared/page-configs/serialize/serializeConfigValues.js +3 -7
  193. package/dist/esm/shared/route/executeGuardHook.js +2 -2
  194. package/dist/esm/shared/route/loadPageRoutes.js +2 -1
  195. package/dist/esm/shared/types.d.ts +64 -32
  196. package/dist/esm/types/index.d.ts +1 -5
  197. package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
  198. package/dist/esm/utils/PROJECT_VERSION.js +1 -1
  199. package/dist/esm/utils/catchInfiniteLoop.js +4 -4
  200. package/dist/esm/utils/getGlobalObject.d.ts +1 -1
  201. package/dist/esm/utils/getPublicProxy.d.ts +2 -0
  202. package/dist/esm/utils/getPublicProxy.js +25 -0
  203. package/dist/esm/utils/isImportPath.d.ts +4 -0
  204. package/dist/esm/utils/isImportPath.js +19 -0
  205. package/dist/esm/utils/objectAssign.d.ts +1 -1
  206. package/dist/esm/utils/objectAssign.js +6 -10
  207. package/dist/esm/utils/objectReplace.d.ts +1 -1
  208. package/dist/esm/utils/objectReplace.js +4 -4
  209. package/dist/esm/utils/parseNpmPackage.d.ts +17 -0
  210. package/dist/esm/utils/{isNpmPackage.js → parseNpmPackage.js} +23 -23
  211. package/dist/esm/utils/path.d.ts +1 -1
  212. package/dist/esm/utils/path.js +12 -2
  213. package/dist/esm/utils/requireResolve.d.ts +20 -7
  214. package/dist/esm/utils/requireResolve.js +134 -53
  215. package/package.json +14 -13
  216. package/dist/cjs/node/runtime/index-common.js +0 -27
  217. package/dist/cjs/utils/makePublicCopy.js +0 -32
  218. package/dist/esm/client/server-routing-runtime/getPageContext.d.ts +0 -19
  219. package/dist/esm/client/server-routing-runtime/getPageContext.js +0 -44
  220. package/dist/esm/client/shared/getPageContextSerializedInHtml.js +0 -20
  221. package/dist/esm/node/runtime/index-common.d.ts +0 -8
  222. package/dist/esm/node/runtime/index-common.js +0 -10
  223. package/dist/esm/utils/isNpmPackage.d.ts +0 -17
  224. package/dist/esm/utils/makePublicCopy.d.ts +0 -3
  225. package/dist/esm/utils/makePublicCopy.js +0 -30
@@ -1,6 +1,4 @@
1
1
  "use strict";
2
- // TODO/v1-release: replace this with:
3
- // assertUsage(false, "`import { something } from 'vike'` doesn't exist: instead import from 'vike/server', 'vike/client', 'vike/plugin', ...")
4
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
5
3
  if (k2 === undefined) k2 = k;
6
4
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -19,44 +17,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
19
17
  return (mod && mod.__esModule) ? mod : { "default": mod };
20
18
  };
21
19
  Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.RenderErrorPage = void 0;
23
- const isBrowser_js_1 = require("../../utils/isBrowser.js");
24
- const assert_js_1 = require("../../utils/assert.js");
25
- (0, assert_js_1.assertUsage)(!(0, isBrowser_js_1.isBrowser)(), "It's forbidden to `import { something } from 'vike'` on the client-side: the module 'vike' is a server-only module.", { showStackTrace: true });
26
- __exportStar(require("./index-common.js"), exports);
27
- __exportStar(require("../../types/index-dreprecated.js"), exports);
20
+ // TODO/soon: point package.json#exports['./server'] to this file.
21
+ // - Write migration guide, see comment below.
22
+ __exportStar(require("./index.js"), exports);
28
23
  const utils_js_1 = require("./utils.js");
29
24
  const picocolors_1 = __importDefault(require("@brillout/picocolors"));
30
- const abort_js_1 = require("../../shared/route/abort.js");
31
- /** @deprecated
32
- * Replace:
33
- * ```
34
- * import { RenderErrorPage } from 'vike'
35
- * ```
36
- * With:
37
- * ```
38
- * import { render } from 'vike/abort'
39
- * ```
40
- *
41
- * See https://vike.dev/render
42
- */
43
- const RenderErrorPage = (...args) => {
44
- (0, utils_js_1.assertWarning)(false, [
45
- 'Replace:',
46
- picocolors_1.default.red(" import { RenderErrorPage } from 'vike'"),
47
- 'With:',
48
- picocolors_1.default.green(" import { render } from 'vike/abort'"),
49
- 'See https://vike.dev/render'
50
- ].join('\n'), { onlyOnce: true, showStackTrace: true });
51
- return (0, abort_js_1.RenderErrorPage)(...args);
52
- };
53
- exports.RenderErrorPage = RenderErrorPage;
54
25
  (0, utils_js_1.assertWarning)(false, [
55
- 'You have following imports which are outdated:',
56
- picocolors_1.default.red(" import { something } from 'vike'"),
26
+ 'You have outdated imports:',
27
+ picocolors_1.default.bold(picocolors_1.default.red(" import { something } from 'vike/server'")),
57
28
  'Replace them with:',
58
- picocolors_1.default.green(" import { something } from 'vike/server'"),
59
- `Or if ${picocolors_1.default.cyan('something')} is a type:`,
60
- picocolors_1.default.green(" import type { something } from 'vike/types'"),
61
- "Make sure to import renderPage(), escapeInject, html, dangerouslySkipEscape(), pipeWebStream(), pipeNodeStream(), pipeStream(), stampPipe() from 'vike/server'. (Or inspect the error stack below to find the import causing this warning.)"
29
+ picocolors_1.default.bold(picocolors_1.default.green(" import { something } from 'vike'"))
30
+ /* Add migration guide, with migration scritps such as `$ rename vike/server vike`
31
+ `See ${pc.underline('https://vike.dev/migration/0.4.xxx')}`
32
+ */
62
33
  ].join('\n'), { showStackTrace: true, onlyOnce: true });
@@ -13,8 +13,62 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
13
13
  var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
16
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.RenderErrorPage = exports.createPageRenderer = exports._injectAssets = exports.createDevMiddleware = exports.getGlobalContextAsync = exports.getGlobalContextSync = exports.getGlobalContext = exports.version = exports.stampPipe = exports.pipeStream = exports.pipeNodeStream = exports.pipeWebStream = exports.dangerouslySkipEscape = exports.escapeInject = exports.renderPage = void 0;
17
21
  const isBrowser_js_1 = require("../../utils/isBrowser.js");
18
22
  const assert_js_1 = require("../../utils/assert.js");
19
- (0, assert_js_1.assertUsage)(!(0, isBrowser_js_1.isBrowser)(), "It's forbidden to `import { something } from 'vike/server'` on the client-side: the module 'vike/server' is a server-only module.", { showStackTrace: true });
20
- __exportStar(require("./index-common.js"), exports);
23
+ (0, assert_js_1.assert)(!(0, isBrowser_js_1.isBrowser)());
24
+ var renderPage_js_1 = require("./renderPage.js");
25
+ Object.defineProperty(exports, "renderPage", { enumerable: true, get: function () { return renderPage_js_1.renderPage; } });
26
+ var renderHtml_js_1 = require("./html/renderHtml.js");
27
+ Object.defineProperty(exports, "escapeInject", { enumerable: true, get: function () { return renderHtml_js_1.escapeInject; } });
28
+ Object.defineProperty(exports, "dangerouslySkipEscape", { enumerable: true, get: function () { return renderHtml_js_1.dangerouslySkipEscape; } });
29
+ var stream_js_1 = require("./html/stream.js");
30
+ Object.defineProperty(exports, "pipeWebStream", { enumerable: true, get: function () { return stream_js_1.pipeWebStream; } });
31
+ Object.defineProperty(exports, "pipeNodeStream", { enumerable: true, get: function () { return stream_js_1.pipeNodeStream; } });
32
+ Object.defineProperty(exports, "pipeStream", { enumerable: true, get: function () { return stream_js_1.pipeStream; } });
33
+ Object.defineProperty(exports, "stampPipe", { enumerable: true, get: function () { return stream_js_1.stampPipe; } });
34
+ var utils_js_1 = require("./utils.js");
35
+ Object.defineProperty(exports, "version", { enumerable: true, get: function () { return utils_js_1.PROJECT_VERSION; } });
36
+ var globalContext_js_1 = require("./globalContext.js");
37
+ Object.defineProperty(exports, "getGlobalContext", { enumerable: true, get: function () { return globalContext_js_1.getGlobalContext; } });
38
+ Object.defineProperty(exports, "getGlobalContextSync", { enumerable: true, get: function () { return globalContext_js_1.getGlobalContextSync; } });
39
+ Object.defineProperty(exports, "getGlobalContextAsync", { enumerable: true, get: function () { return globalContext_js_1.getGlobalContextAsync; } });
40
+ var index_js_1 = require("../runtime-dev/index.js");
41
+ Object.defineProperty(exports, "createDevMiddleware", { enumerable: true, get: function () { return index_js_1.createDevMiddleware; } });
42
+ // TODO/v1-release: remove
43
+ // Deprecated exports
44
+ __exportStar(require("../../types/index-dreprecated.js"), exports);
45
+ var injectAssets__public_js_1 = require("./html/injectAssets/injectAssets__public.js");
46
+ Object.defineProperty(exports, "_injectAssets", { enumerable: true, get: function () { return injectAssets__public_js_1.injectAssets__public; } });
47
+ var createPageRenderer_js_1 = require("../createPageRenderer.js");
48
+ Object.defineProperty(exports, "createPageRenderer", { enumerable: true, get: function () { return createPageRenderer_js_1.createPageRenderer; } });
49
+ const utils_js_2 = require("./utils.js");
50
+ const picocolors_1 = __importDefault(require("@brillout/picocolors"));
51
+ const abort_js_1 = require("../../shared/route/abort.js");
52
+ /** @deprecated
53
+ * Replace:
54
+ * ```
55
+ * import { RenderErrorPage } from 'vike'
56
+ * ```
57
+ * With:
58
+ * ```
59
+ * import { render } from 'vike/abort'
60
+ * ```
61
+ *
62
+ * See https://vike.dev/render
63
+ */
64
+ const RenderErrorPage = (...args) => {
65
+ (0, utils_js_2.assertWarning)(false, [
66
+ 'Replace:',
67
+ picocolors_1.default.red(" import { RenderErrorPage } from 'vike'"),
68
+ 'With:',
69
+ picocolors_1.default.green(" import { render } from 'vike/abort'"),
70
+ 'See https://vike.dev/render'
71
+ ].join('\n'), { onlyOnce: true, showStackTrace: true });
72
+ return (0, abort_js_1.RenderErrorPage)(...args);
73
+ };
74
+ exports.RenderErrorPage = RenderErrorPage;
@@ -22,7 +22,7 @@ async function analyzePage(pageFilesAll, pageConfig, pageId, globalContext) {
22
22
  eagerlyImported: false
23
23
  });
24
24
  // In production we inject the import of the server virtual module with ?extractAssets inside the client virtual module
25
- if (!globalContext.isProduction) {
25
+ if (!globalContext._isProduction) {
26
26
  clientDependencies.push({
27
27
  id: (0, virtualFilePageConfigValuesAll_js_1.getVirtualFileIdPageConfigValuesAll)(pageConfig.pageId, false),
28
28
  onlyAssets: true,
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createHttpResponsePage = createHttpResponsePage;
4
4
  exports.createHttpResponsePageContextJson = createHttpResponsePageContextJson;
5
5
  exports.createHttpResponseError = createHttpResponseError;
6
+ exports.createHttpResponseErrorWithoutGlobalContext = createHttpResponseErrorWithoutGlobalContext;
6
7
  exports.createHttpResponseRedirect = createHttpResponseRedirect;
7
8
  exports.createHttpResponseFavicon404 = createHttpResponseFavicon404;
8
9
  exports.createHttpResponseBaseIsMissing = createHttpResponseBaseIsMissing;
@@ -66,9 +67,6 @@ function createHttpResponseBaseIsMissing(urlOriginal, baseServer) {
66
67
  }
67
68
  function createHttpResponseError(pageContext) {
68
69
  const reason = (() => {
69
- if (!pageContext) {
70
- return 'no error page (https://vike.dev/error-page) could be rendered';
71
- }
72
70
  const errorPageId = (0, error_page_js_1.getErrorPageId)(pageContext._pageFilesAll, pageContext._pageConfigs);
73
71
  if (errorPageId) {
74
72
  return "the error page (https://vike.dev/error-page) couldn't be rendered (for example if an error occurred while rendering the error page)";
@@ -77,6 +75,13 @@ function createHttpResponseError(pageContext) {
77
75
  return 'no error page (https://vike.dev/error-page) is defined, make sure to create one';
78
76
  }
79
77
  })();
78
+ return createHttpResponseError_(reason);
79
+ }
80
+ function createHttpResponseErrorWithoutGlobalContext() {
81
+ const reason = 'no error page (https://vike.dev/error-page) could be rendered';
82
+ return createHttpResponseError_(reason);
83
+ }
84
+ function createHttpResponseError_(reason) {
80
85
  const httpResponse = createHttpResponse(500, 'text/html;charset=utf-8', [], `<p>An error occurred.</p><script>console.log(${JSON.stringify(`This HTTP response was generated by Vike. Vike returned this response because ${reason}.`)})</script>`);
81
86
  return httpResponse;
82
87
  }
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createPageContextServerSide = createPageContextServerSide;
4
+ exports.createPageContextServerSideWithoutGlobalContext = createPageContextServerSideWithoutGlobalContext;
5
+ const utils_js_1 = require("../utils.js");
6
+ const getPageContextUrlComputed_js_1 = require("../../../shared/getPageContextUrlComputed.js");
7
+ const createPageContextShared_js_1 = require("../../../shared/createPageContextShared.js");
8
+ async function createPageContextServerSide(pageContextInit, globalContext, globalObject_public, { isPrerendering, ssr: { urlHandler, isClientSideNavigation } = {
9
+ urlHandler: null,
10
+ isClientSideNavigation: false
11
+ } }) {
12
+ (0, utils_js_1.assert)(pageContextInit.urlOriginal);
13
+ const pageContextCreated = createPageContext(pageContextInit, isPrerendering);
14
+ (0, utils_js_1.objectAssign)(pageContextCreated, {
15
+ /* Don't spread globalContext for now? Or never spread it as it leads to confusion? The convenience isn't worth the added confusion?
16
+ // We must use Flatten<T> otherwise TypeScript complains upon assigning types
17
+ ...(globalContext as Flatten<typeof globalContext>), // least precedence
18
+ */
19
+ globalContext: globalObject_public,
20
+ _globalContext: globalContext,
21
+ // The following is defined on `pageContext` because we can eventually make these non-global
22
+ _baseServer: globalContext.baseServer,
23
+ _baseAssets: globalContext.baseAssets,
24
+ // TODO/now: add meta.default
25
+ _includeAssetsImportedByServer: globalContext.config.includeAssetsImportedByServer ?? true,
26
+ // TODO/soon: use GloablContext instead
27
+ _pageFilesAll: globalContext._pageFilesAll,
28
+ _pageConfigs: globalContext._pageConfigs,
29
+ _pageConfigGlobal: globalContext._pageConfigGlobal,
30
+ _allPageIds: globalContext._allPageIds,
31
+ _pageRoutes: globalContext._pageRoutes,
32
+ _onBeforeRouteHook: globalContext._onBeforeRouteHook,
33
+ _pageContextInit: pageContextInit,
34
+ _urlRewrite: null,
35
+ _urlHandler: urlHandler,
36
+ isClientSideNavigation
37
+ });
38
+ // pageContext.urlParsed
39
+ const pageContextUrlComputed = (0, getPageContextUrlComputed_js_1.getPageContextUrlComputed)(pageContextCreated);
40
+ (0, utils_js_1.objectAssign)(pageContextCreated, pageContextUrlComputed);
41
+ // pageContext.headers
42
+ {
43
+ let headers;
44
+ if (pageContextInit.headersOriginal) {
45
+ headers = (0, utils_js_1.normalizeHeaders)(pageContextInit.headersOriginal);
46
+ (0, utils_js_1.assertUsage)(!('headers' in pageContextInit), "You're defining pageContextInit.headersOriginal as well as pageContextInit.headers but you should only define pageContextInit.headersOriginal instead, see https://vike.dev/headers");
47
+ }
48
+ else if (pageContextInit.headers) {
49
+ headers = pageContextInit.headers;
50
+ // TODO/next-major-release: remove
51
+ (0, utils_js_1.assertWarning)(false, 'Setting pageContextInit.headers is deprecated: set pageContextInit.headersOriginal instead, see https://vike.dev/headers', { onlyOnce: true });
52
+ }
53
+ else {
54
+ headers = null;
55
+ }
56
+ (0, utils_js_1.objectAssign)(pageContextCreated, { headers });
57
+ }
58
+ const pageContextAugmented = await (0, createPageContextShared_js_1.createPageContextShared)(pageContextCreated, globalContext._pageConfigGlobal);
59
+ (0, utils_js_1.augmentType)(pageContextCreated, pageContextAugmented);
60
+ return pageContextCreated;
61
+ }
62
+ function createPageContextServerSideWithoutGlobalContext(pageContextInit) {
63
+ const pageContext = createPageContext(pageContextInit, false);
64
+ return pageContext;
65
+ }
66
+ function createPageContext(pageContextInit, isPrerendering) {
67
+ const pageContext = {
68
+ isClientSide: false,
69
+ isPrerendering
70
+ };
71
+ (0, utils_js_1.objectAssign)(pageContext, pageContextInit);
72
+ return pageContext;
73
+ }
@@ -9,8 +9,8 @@ async function executeOnBeforeRenderAndDataHooks(pageContext) {
9
9
  if (pageContext._pageContextAlreadyProvidedByOnPrerenderHook) {
10
10
  return;
11
11
  }
12
- const dataHook = (0, getHook_js_1.getHook)(pageContext, 'data');
13
- const onBeforeRenderHook = (0, getHook_js_1.getHook)(pageContext, 'onBeforeRender');
12
+ const dataHook = (0, getHook_js_1.getHookFromPageContext)(pageContext, 'data');
13
+ const onBeforeRenderHook = (0, getHook_js_1.getHookFromPageContext)(pageContext, 'onBeforeRender');
14
14
  if (!dataHook && !onBeforeRenderHook) {
15
15
  return;
16
16
  }
@@ -41,12 +41,12 @@ function getRenderHook(pageContext) {
41
41
  {
42
42
  let hook;
43
43
  let hookName = undefined;
44
- hook = (0, getHook_js_1.getHook)(pageContext, 'onRenderHtml');
44
+ hook = (0, getHook_js_1.getHookFromPageContext)(pageContext, 'onRenderHtml');
45
45
  if (hook) {
46
46
  hookName = 'onRenderHtml';
47
47
  }
48
48
  else {
49
- hook = (0, getHook_js_1.getHook)(pageContext, 'render');
49
+ hook = (0, getHook_js_1.getHookFromPageContext)(pageContext, 'render');
50
50
  if (hook) {
51
51
  hookName = 'render';
52
52
  }
@@ -42,7 +42,7 @@ function getManifestEntry(id, assetsManifest) {
42
42
  return { manifestEntry, manifestKey };
43
43
  }
44
44
  // npm package import
45
- (0, utils_js_1.assertIsNpmPackageImport)(id);
45
+ (0, utils_js_1.assertIsImportPathNpmPackage)(id);
46
46
  const found = Object.entries(assetsManifest).find(([, e]) => e.name === (0, prependEntriesDir_js_1.prependEntriesDir)(id));
47
47
  (0, utils_js_1.assert)(found);
48
48
  const [manifestKey, manifestEntry] = found;
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.retrieveAssetsDev = retrieveAssetsDev;
4
4
  const utils_js_1 = require("../../utils.js");
5
5
  async function retrieveAssetsDev(clientDependencies, viteDevServer) {
6
- const visitedModules = new Set();
7
6
  const assetUrls = new Set();
8
7
  await Promise.all(clientDependencies.map(async ({ id }) => {
9
8
  if (id.startsWith('@@vike'))
@@ -22,7 +21,7 @@ async function retrieveAssetsDev(clientDependencies, viteDevServer) {
22
21
  return;
23
22
  }
24
23
  (0, utils_js_1.assert)(mod, { id });
25
- collectCss(mod, assetUrls, visitedModules);
24
+ collectCss(mod, assetUrls, new Set());
26
25
  }));
27
26
  return Array.from(assetUrls);
28
27
  }
@@ -52,9 +51,6 @@ function collectCss(mod, styleUrls, visitedModules, importer) {
52
51
  // Is this useful? Maybe for virtual modules that don't respect the \0 virtual module convention?
53
52
  styleUrls.add(`/@id/${mod.url}`);
54
53
  }
55
- /* Debug:
56
- logModule(mod)
57
- //*/
58
54
  }
59
55
  mod.importedModules.forEach((dep) => {
60
56
  collectCss(dep, styleUrls, visitedModules, mod);
@@ -69,15 +65,3 @@ function isStyle(mod) {
69
65
  // CSS of .vue files
70
66
  (mod.id && /\?vue&type=style/.test(mod.id)));
71
67
  }
72
- /*
73
- function logModule(mod: ModuleNode) {
74
- const redacted = 'redacted'
75
- console.log({
76
- ...mod,
77
- ssrModule: redacted,
78
- ssrTransformResult: redacted,
79
- importedModules: redacted,
80
- importers: redacted
81
- })
82
- }
83
- //*/
@@ -16,7 +16,7 @@ function retrieveAssetsProd(clientDependencies, assetsManifest, includeAssetsImp
16
16
  onlyAssets &&
17
17
  id.includes('.page.server.') &&
18
18
  // We assume that all npm packages have already built their files: bundlers (Rollup, esbuild, tsup, ...) extract the CSS out of JavaScript => we can assume JavaScript to not import any CSS/assets.
19
- !(0, utils_js_1.isNpmPackageImport)(id, {
19
+ !(0, utils_js_1.isImportPathNpmPackage)(id, {
20
20
  // I presume Vite already resolves path aliases when Vite sets the module's id
21
21
  cannotBePathAlias: true
22
22
  })) {
@@ -13,12 +13,12 @@ const globalObject = (0, utils_js_1.getGlobalObject)('renderPage/getPageAssets.t
13
13
  });
14
14
  async function getPageAssets(pageContext, clientDependencies, clientEntries) {
15
15
  const globalContext = pageContext._globalContext;
16
- const { isProduction } = globalContext;
16
+ const { _isProduction: isProduction } = globalContext;
17
17
  const isDev = !isProduction;
18
18
  let assetUrls;
19
19
  let clientEntriesSrc;
20
20
  if (isDev) {
21
- const { viteDevServer } = globalContext;
21
+ const { _viteDevServer: viteDevServer } = globalContext;
22
22
  clientEntriesSrc = await Promise.all(clientEntries.map((clientEntry) => globalObject.resolveClientEntriesDev(clientEntry, viteDevServer)));
23
23
  assetUrls = await (0, retrieveAssetsDev_js_1.retrieveAssetsDev)(clientDependencies, viteDevServer);
24
24
  }
@@ -14,7 +14,7 @@ async function handleErrorWithoutErrorPage(pageContext) {
14
14
  (0, utils_js_1.assert)(pageContext.errorWhileRendering || pageContext.is404);
15
15
  {
16
16
  const isV1 = pageContext._pageConfigs.length > 0;
17
- await warnMissingErrorPage(isV1, pageContext._globalContext.isProduction);
17
+ await warnMissingErrorPage(isV1, pageContext._globalContext._isProduction);
18
18
  }
19
19
  if (!pageContext.isClientSideNavigation) {
20
20
  const httpResponse = (0, createHttpResponse_js_1.createHttpResponseError)(pageContext);
@@ -14,7 +14,7 @@ async function loadUserFilesServerSide(pageContext) {
14
14
  const pageConfig = (0, findPageConfig_js_1.findPageConfig)(pageContext._pageConfigs, pageContext.pageId); // Make pageConfig globally available as pageContext._pageConfig?
15
15
  const globalContext = pageContext._globalContext;
16
16
  const [{ pageFilesLoaded, pageContextExports }] = await Promise.all([
17
- loadPageUserFiles(pageContext._pageFilesAll, pageConfig, globalContext.pageConfigGlobal, pageContext.pageId, !globalContext.isProduction),
17
+ loadPageUserFiles(pageContext._pageFilesAll, pageConfig, globalContext._pageConfigGlobal, pageContext.pageId, !globalContext._isProduction),
18
18
  (0, analyzePageClientSide_js_1.analyzePageClientSideInit)(pageContext._pageFilesAll, pageContext.pageId, { sharedPageFilesAlreadyLoaded: true })
19
19
  ]);
20
20
  const { isHtmlOnly, isClientRouting, clientEntries, clientDependencies, pageFilesClientSide, pageFilesServerSide } = await (0, analyzePage_js_1.analyzePage)(pageContext._pageFilesAll, pageConfig, pageContext.pageId, globalContext);
@@ -17,7 +17,7 @@ async function log404(pageContext) {
17
17
  */
18
18
  );
19
19
  const globalContext = pageContext._globalContext;
20
- if (!globalContext.isProduction && !isFileRequest(urlPathname) && !pageContext.isClientSideNavigation) {
20
+ if (!globalContext._isProduction && !isFileRequest(urlPathname) && !pageContext.isClientSideNavigation) {
21
21
  const routesInfo = getRoutesInfo(pageRoutes);
22
22
  let msg = `URL ${picocolors_1.default.cyan(urlPathname)} ${noRouteMatch_js_1.noRouteMatch}`;
23
23
  const outro = 'See https://vike.dev/routing for more information about routing.';
@@ -9,7 +9,7 @@ function preparePageContextForUserConsumptionServerSide(pageContext) {
9
9
  (0, utils_js_1.assert)((0, utils_js_1.isPlainObject)(pageContext.routeParams));
10
10
  (0, utils_js_1.assert)('Page' in pageContext);
11
11
  (0, utils_js_1.assert)(typeof pageContext.isClientSideNavigation === 'boolean');
12
- (0, utils_js_1.assert)(pageContext._isPageContextObject);
12
+ (0, utils_js_1.assert)(pageContext.isPageContext);
13
13
  (0, utils_js_1.assert)(pageContext.isClientSide === false);
14
14
  (0, utils_js_1.assert)(typeof pageContext.isPrerendering === 'boolean');
15
15
  (0, preparePageContextForUserConsumption_js_1.preparePageContextForUserConsumption)(pageContext);
@@ -5,13 +5,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.renderPageAlreadyRouted = renderPageAlreadyRouted;
7
7
  exports.prerenderPage = prerenderPage;
8
- exports.getPageContextInitEnhanced = getPageContextInitEnhanced;
9
- exports.createPageContext = createPageContext;
10
8
  const error_page_js_1 = require("../../../shared/error-page.js");
11
9
  const renderHtml_js_1 = require("../html/renderHtml.js");
12
10
  const utils_js_1 = require("../utils.js");
13
- const serializePageContextClientSide_js_1 = require("../html/serializePageContextClientSide.js");
14
- const getPageContextUrlComputed_js_1 = require("../../../shared/getPageContextUrlComputed.js");
11
+ const serializeContext_js_1 = require("../html/serializeContext.js");
15
12
  const createHttpResponse_js_1 = require("./createHttpResponse.js");
16
13
  const loadUserFilesServerSide_js_1 = require("./loadUserFilesServerSide.js");
17
14
  const executeOnRenderHtmlHook_js_1 = require("./executeOnRenderHtmlHook.js");
@@ -50,7 +47,7 @@ async function renderPageAlreadyRouted(pageContext) {
50
47
  if (isError) {
51
48
  (0, utils_js_1.objectAssign)(pageContext, { [isServerSideError_js_1.isServerSideError]: true });
52
49
  }
53
- const pageContextSerialized = (0, serializePageContextClientSide_js_1.serializePageContextClientSide)(pageContext);
50
+ const pageContextSerialized = (0, serializeContext_js_1.getPageContextClientSerialized)(pageContext);
54
51
  const httpResponse = await (0, createHttpResponse_js_1.createHttpResponsePageContextJson)(pageContextSerialized);
55
52
  (0, utils_js_1.objectAssign)(pageContext, { httpResponse });
56
53
  return pageContext;
@@ -80,69 +77,7 @@ async function prerenderPage(pageContext) {
80
77
  return { documentHtml, pageContextSerialized: null, pageContext };
81
78
  }
82
79
  else {
83
- const pageContextSerialized = (0, serializePageContextClientSide_js_1.serializePageContextClientSide)(pageContext);
80
+ const pageContextSerialized = (0, serializeContext_js_1.getPageContextClientSerialized)(pageContext);
84
81
  return { documentHtml, pageContextSerialized, pageContext };
85
82
  }
86
83
  }
87
- async function getPageContextInitEnhanced(pageContextInit, globalContext, isPrerendering, { ssr: { urlRewrite, urlHandler, isClientSideNavigation } = {
88
- urlRewrite: null,
89
- urlHandler: null,
90
- isClientSideNavigation: false
91
- } } = {}) {
92
- (0, utils_js_1.assert)(pageContextInit.urlOriginal);
93
- const pageContextInitEnhanced = createPageContext(pageContextInit, isPrerendering);
94
- (0, utils_js_1.objectAssign)(pageContextInitEnhanced, pageContextInit);
95
- (0, utils_js_1.objectAssign)(pageContextInitEnhanced, {
96
- _objectCreatedByVike: true,
97
- // The following is defined on `pageContext` because we can eventually make these non-global
98
- _baseServer: globalContext.baseServer,
99
- _baseAssets: globalContext.baseAssets,
100
- // TODO/now: add meta.default
101
- _includeAssetsImportedByServer: globalContext.config.includeAssetsImportedByServer ?? true,
102
- // TODO/soon: use GloablContext instead
103
- _pageFilesAll: globalContext.pageFilesAll,
104
- _pageConfigs: globalContext.pageConfigs,
105
- _pageConfigGlobal: globalContext.pageConfigGlobal,
106
- _allPageIds: globalContext.allPageIds,
107
- _pageRoutes: globalContext.pageRoutes,
108
- _onBeforeRouteHook: globalContext.onBeforeRouteHook,
109
- _globalContext: globalContext,
110
- // TODO/now: add PageContext['globalContext']
111
- /** @experimental This is a beta feature https://vike.dev/getGlobalContext */
112
- globalContext: globalContext.globalContext_public,
113
- _pageContextInit: pageContextInit,
114
- _urlRewrite: urlRewrite,
115
- _urlHandler: urlHandler,
116
- isClientSideNavigation
117
- });
118
- // pageContext.urlParsed
119
- const pageContextUrlComputed = (0, getPageContextUrlComputed_js_1.getPageContextUrlComputed)(pageContextInitEnhanced);
120
- (0, utils_js_1.objectAssign)(pageContextInitEnhanced, pageContextUrlComputed);
121
- // pageContext.headers
122
- {
123
- let headers;
124
- if (pageContextInit.headersOriginal) {
125
- headers = (0, utils_js_1.normalizeHeaders)(pageContextInit.headersOriginal);
126
- (0, utils_js_1.assertUsage)(!('headers' in pageContextInit), "You're defining pageContextInit.headersOriginal as well as pageContextInit.headers but you should only define pageContextInit.headersOriginal instead, see https://vike.dev/headers");
127
- }
128
- else if (pageContextInit.headers) {
129
- headers = pageContextInit.headers;
130
- // TODO/next-major-release: assertUsage() instead of assertWarning()
131
- (0, utils_js_1.assertWarning)(false, 'Setting pageContextInit.headers is deprecated: set pageContextInit.headersOriginal instead, see https://vike.dev/headers', { onlyOnce: true });
132
- }
133
- else {
134
- headers = null;
135
- }
136
- (0, utils_js_1.objectAssign)(pageContextInitEnhanced, { headers });
137
- }
138
- return pageContextInitEnhanced;
139
- }
140
- function createPageContext(pageContextInit, isPrerendering) {
141
- const pageContext = {
142
- _isPageContextObject: true,
143
- isClientSide: false,
144
- isPrerendering
145
- };
146
- (0, utils_js_1.objectAssign)(pageContext, pageContextInit);
147
- return pageContext;
148
- }