vike 0.4.221 → 0.4.222-commit-6647d1e

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 (99) hide show
  1. package/dist/cjs/node/api/prepareViteApiCall.js +18 -16
  2. package/dist/cjs/node/plugin/index.js +1 -1
  3. package/dist/cjs/node/plugin/plugins/baseUrls.js +6 -1
  4. package/dist/cjs/node/plugin/plugins/buildConfig/fixServerAssets.js +8 -10
  5. package/dist/cjs/node/plugin/plugins/buildConfig.js +0 -1
  6. package/dist/cjs/node/plugin/plugins/commonConfig.js +4 -1
  7. package/dist/cjs/node/plugin/plugins/importUserCode/index.js +73 -39
  8. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.js +64 -14
  9. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/filesystemRouting.js +0 -5
  10. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/getPlusFilesAll.js +2 -40
  11. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +1 -1
  12. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +6 -3
  13. package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +45 -21
  14. package/dist/cjs/node/runtime/globalContext.js +24 -8
  15. package/dist/cjs/node/runtime/renderPage/loadUserFilesServerSide.js +3 -3
  16. package/dist/cjs/node/runtime/renderPage/renderPageAlreadyRouted.js +2 -4
  17. package/dist/cjs/node/runtime/renderPage.js +4 -8
  18. package/dist/cjs/node/runtime-dev/createDevMiddleware.js +3 -3
  19. package/dist/cjs/node/shared/resolveBase.js +0 -13
  20. package/dist/cjs/shared/getPageConfigsRuntime.js +5 -2
  21. package/dist/cjs/shared/page-configs/getPageConfigUserFriendly.js +45 -11
  22. package/dist/cjs/shared/page-configs/serialize/parsePageConfigs.js +2 -8
  23. package/dist/cjs/shared/route/loadPageRoutes.js +1 -1
  24. package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
  25. package/dist/cjs/utils/assertSingleInstance.js +1 -1
  26. package/dist/cjs/utils/debug.js +9 -6
  27. package/dist/esm/client/client-routing-runtime/getPageContextCurrent.d.ts +2 -2
  28. package/dist/esm/client/client-routing-runtime/getPageContextFromHooks.d.ts +4 -4
  29. package/dist/esm/client/client-routing-runtime/prefetch/getPrefetchSettings.d.ts +2 -2
  30. package/dist/esm/client/client-routing-runtime/prefetch.d.ts +2 -2
  31. package/dist/esm/client/client-routing-runtime/prefetch.js +3 -3
  32. package/dist/esm/client/client-routing-runtime/renderPageClientSide.d.ts +5 -0
  33. package/dist/esm/client/client-routing-runtime/renderPageClientSide.js +9 -2
  34. package/dist/esm/client/server-routing-runtime/getPageContext.d.ts +2 -1
  35. package/dist/esm/client/server-routing-runtime/getPageContext.js +4 -3
  36. package/dist/esm/client/shared/executeOnRenderClientHook.d.ts +2 -2
  37. package/dist/esm/client/shared/loadUserFilesClientSide.d.ts +5 -4
  38. package/dist/esm/client/shared/loadUserFilesClientSide.js +3 -3
  39. package/dist/esm/client/shared/preparePageContextForUserConsumptionClientSide.d.ts +2 -2
  40. package/dist/esm/node/api/prepareViteApiCall.d.ts +2 -2
  41. package/dist/esm/node/api/prepareViteApiCall.js +18 -16
  42. package/dist/esm/node/plugin/index.d.ts +4 -1
  43. package/dist/esm/node/plugin/index.js +1 -1
  44. package/dist/esm/node/plugin/plugins/baseUrls.js +6 -1
  45. package/dist/esm/node/plugin/plugins/buildConfig/fixServerAssets.d.ts +0 -2
  46. package/dist/esm/node/plugin/plugins/buildConfig/fixServerAssets.js +8 -10
  47. package/dist/esm/node/plugin/plugins/buildConfig.js +1 -2
  48. package/dist/esm/node/plugin/plugins/commonConfig.d.ts +1 -0
  49. package/dist/esm/node/plugin/plugins/commonConfig.js +4 -1
  50. package/dist/esm/node/plugin/plugins/importUserCode/index.js +73 -39
  51. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.d.ts +4 -0
  52. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.js +65 -15
  53. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/filesystemRouting.d.ts +0 -3
  54. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/filesystemRouting.js +0 -5
  55. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/getPlusFilesAll.d.ts +0 -2
  56. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/getPlusFilesAll.js +2 -37
  57. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/loadFileAtConfigTime.js +1 -1
  58. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.d.ts +1 -1
  59. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/transpileAndExecuteFile.js +6 -3
  60. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.d.ts +3 -2
  61. package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +47 -23
  62. package/dist/esm/node/runtime/globalContext.d.ts +11 -8
  63. package/dist/esm/node/runtime/globalContext.js +24 -8
  64. package/dist/esm/node/runtime/html/injectAssets/getViteDevScript.d.ts +2 -2
  65. package/dist/esm/node/runtime/html/injectAssets.d.ts +2 -2
  66. package/dist/esm/node/runtime/renderPage/analyzePage.d.ts +2 -2
  67. package/dist/esm/node/runtime/renderPage/executeOnBeforeRenderAndDataHooks.d.ts +2 -2
  68. package/dist/esm/node/runtime/renderPage/getPageAssets.d.ts +2 -2
  69. package/dist/esm/node/runtime/renderPage/handleErrorWithoutErrorPage.d.ts +2 -2
  70. package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.d.ts +3 -3
  71. package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.js +4 -4
  72. package/dist/esm/node/runtime/renderPage/log404/index.d.ts +2 -2
  73. package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.d.ts +4 -4
  74. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +12 -12
  75. package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.js +2 -4
  76. package/dist/esm/node/runtime/renderPage.js +4 -8
  77. package/dist/esm/node/runtime-dev/createDevMiddleware.js +3 -3
  78. package/dist/esm/node/shared/resolveBase.d.ts +1 -9
  79. package/dist/esm/node/shared/resolveBase.js +0 -13
  80. package/dist/esm/shared/getPageConfigsRuntime.d.ts +3 -2
  81. package/dist/esm/shared/getPageConfigsRuntime.js +6 -3
  82. package/dist/esm/shared/getPageFiles.d.ts +1 -1
  83. package/dist/esm/shared/hooks/getHook.d.ts +3 -3
  84. package/dist/esm/shared/page-configs/Config.d.ts +3 -1
  85. package/dist/esm/shared/page-configs/PageConfig.d.ts +9 -2
  86. package/dist/esm/shared/page-configs/getPageConfigUserFriendly.d.ts +24 -10
  87. package/dist/esm/shared/page-configs/getPageConfigUserFriendly.js +45 -11
  88. package/dist/esm/shared/page-configs/serialize/PageConfigSerialized.d.ts +3 -2
  89. package/dist/esm/shared/page-configs/serialize/parsePageConfigs.js +2 -8
  90. package/dist/esm/shared/route/executeGuardHook.d.ts +2 -2
  91. package/dist/esm/shared/route/loadPageRoutes.js +1 -1
  92. package/dist/esm/shared/types.d.ts +9 -0
  93. package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
  94. package/dist/esm/utils/PROJECT_VERSION.js +1 -1
  95. package/dist/esm/utils/assertSingleInstance.js +1 -1
  96. package/dist/esm/utils/debug.d.ts +1 -1
  97. package/dist/esm/utils/debug.js +9 -6
  98. package/dist/esm/utils/projectInfo.d.ts +1 -1
  99. package/package.json +1 -1
@@ -18,7 +18,7 @@ export { assertBuildInfo };
18
18
  export { getViteConfigRuntime };
19
19
  export { updateUserFiles };
20
20
  // The core logic revolves around:
21
- // - globalObject.userFiles which is the main requirement for assembleGlobalContext()
21
+ // - globalObject.userFiles which is the main requirement for resolveGlobalContext()
22
22
  // - In production: globalObject.buildEntry which is the production entry set by @brillout/vite-plugin-server-entry
23
23
  // - loadBuildEntry() sets globalObject.buildEntry and then sets globalObject.userFiles
24
24
  // - With vike-server it's set at server start: @brillout/vite-plugin-server-entry injects `import './entry.mjs'` (the production entry generated by @brillout/vite-plugin-server-entry) as first line of code of dist/server/index.mjs while dist/server/entry.mjs calls setGlobalContext_buildEntry()
@@ -32,6 +32,7 @@ import pc from '@brillout/picocolors';
32
32
  import { loadPageRoutes } from '../../shared/route/loadPageRoutes.js';
33
33
  import { assertV1Design } from '../shared/assertV1Design.js';
34
34
  import { getPageConfigsRuntime } from '../../shared/getPageConfigsRuntime.js';
35
+ import { resolveBase } from '../shared/resolveBase.js';
35
36
  const debug = createDebugger('vike:globalContext');
36
37
  const globalObject = getGlobalObject('globalContext.ts', getInitialGlobalContext());
37
38
  async function getGlobalContextInternal() {
@@ -75,8 +76,14 @@ async function getGlobalContextAsync(isProduction) {
75
76
  return globalContext_public;
76
77
  }
77
78
  function makePublic(globalContext) {
78
- // TODO/soon: add `pages`
79
- const globalContextPublic = makePublicCopy(globalContext, 'globalContext', ['assetsManifest', 'config', 'viteConfig']);
79
+ const globalContextPublic = makePublicCopy(globalContext, 'globalContext', [
80
+ 'assetsManifest',
81
+ 'config',
82
+ 'viteConfig',
83
+ 'pages',
84
+ 'baseServer',
85
+ 'baseAssets'
86
+ ]);
80
87
  return globalContextPublic;
81
88
  }
82
89
  async function setGlobalContext_viteDevServer(viteDevServer) {
@@ -180,7 +187,7 @@ function setIsProduction(isProduction) {
180
187
  globalObject.isProduction = isProduction;
181
188
  }
182
189
  function defineGlobalContext() {
183
- const globalContext = assembleGlobalContext();
190
+ const globalContext = resolveGlobalContext();
184
191
  assertIsDefined(globalContext);
185
192
  const globalContext_public = makePublic(globalContext);
186
193
  objectAssign(globalContext, { globalContext_public });
@@ -189,7 +196,7 @@ function defineGlobalContext() {
189
196
  assertGlobalContextIsDefined();
190
197
  onSetupRuntime();
191
198
  }
192
- function assembleGlobalContext() {
199
+ function resolveGlobalContext() {
193
200
  const { viteDevServer, viteConfig, isPrerendering, isProduction, userFiles } = globalObject;
194
201
  assert(typeof isProduction === 'boolean');
195
202
  let globalContext;
@@ -208,7 +215,8 @@ function assembleGlobalContext() {
208
215
  viteDevServer,
209
216
  viteConfig,
210
217
  ...userFiles,
211
- viteConfigRuntime
218
+ viteConfigRuntime,
219
+ ...resolveBaseRuntime(viteConfigRuntime, userFiles.config)
212
220
  };
213
221
  }
214
222
  else {
@@ -225,7 +233,8 @@ function assembleGlobalContext() {
225
233
  ...userFiles,
226
234
  viteDevServer: null,
227
235
  viteConfigRuntime: buildInfo.viteConfigRuntime,
228
- usesClientRouter: buildInfo.usesClientRouter
236
+ usesClientRouter: buildInfo.usesClientRouter,
237
+ ...resolveBaseRuntime(buildInfo.viteConfigRuntime, userFiles.config)
229
238
  };
230
239
  if (isPrerendering) {
231
240
  assert(viteConfig);
@@ -250,7 +259,7 @@ async function getUserFiles() {
250
259
  const globalObject_ = globalObject;
251
260
  const { pageConfigsRuntime } = globalObject_;
252
261
  assert(pageConfigsRuntime);
253
- const { pageFilesAll, allPageIds, pageConfigs, pageConfigGlobal, globalConfig } = pageConfigsRuntime;
262
+ const { pageFilesAll, allPageIds, pageConfigs, pageConfigGlobal, globalConfig, pageConfigsUserFriendly } = pageConfigsRuntime;
254
263
  const { pageRoutes, onBeforeRouteHook } = await loadPageRoutes(pageFilesAll, pageConfigs, pageConfigGlobal, allPageIds);
255
264
  const userFiles = {
256
265
  pageFilesAll,
@@ -259,6 +268,7 @@ async function getUserFiles() {
259
268
  allPageIds,
260
269
  pageRoutes,
261
270
  onBeforeRouteHook,
271
+ pages: pageConfigsUserFriendly,
262
272
  config: globalConfig.config
263
273
  };
264
274
  assertV1Design(
@@ -393,3 +403,9 @@ function getInitialGlobalContext() {
393
403
  viteDevServerPromiseResolve
394
404
  };
395
405
  }
406
+ function resolveBaseRuntime(viteConfigRuntime, config) {
407
+ const baseViteOriginal = viteConfigRuntime._baseViteOriginal;
408
+ const baseServerUnresolved = config.baseServer ?? null;
409
+ const baseAssetsUnresolved = config.baseAssets ?? null;
410
+ return resolveBase(baseViteOriginal, baseServerUnresolved, baseAssetsUnresolved);
411
+ }
@@ -1,5 +1,5 @@
1
1
  export { getViteDevScript };
2
- import type { GlobalContext } from '../../globalContext.js';
2
+ import type { GlobalContextInternal } from '../../globalContext.js';
3
3
  declare function getViteDevScript(pageContext: {
4
- _globalContext: GlobalContext;
4
+ _globalContext: GlobalContextInternal;
5
5
  }): Promise<string>;
@@ -8,7 +8,7 @@ import { type PreloadFilter } from './injectAssets/getHtmlTags.js';
8
8
  import type { StreamFromReactStreamingPackage } from './stream/react-streaming.js';
9
9
  import type { PageConfigRuntime } from '../../../shared/page-configs/PageConfig.js';
10
10
  import type { PageContextSerialization } from './serializePageContextClientSide.js';
11
- import type { GlobalContext } from '../globalContext.js';
11
+ import type { GlobalContextInternal } from '../globalContext.js';
12
12
  type PageContextInjectAssets = {
13
13
  urlPathname: string;
14
14
  __getPageAssets: () => Promise<PageAsset[]>;
@@ -22,7 +22,7 @@ type PageContextInjectAssets = {
22
22
  _baseServer: string;
23
23
  _pageConfigs: PageConfigRuntime[];
24
24
  is404: null | boolean;
25
- _globalContext: GlobalContext;
25
+ _globalContext: GlobalContextInternal;
26
26
  } & PageContextSerialization;
27
27
  declare function injectHtmlTagsToString(htmlParts: HtmlPart[], pageContext: PageContextInjectAssets & {
28
28
  _isStream: false;
@@ -2,5 +2,5 @@ export { analyzePage };
2
2
  import type { PageFile } from '../../../shared/getPageFiles/getPageFileObject.js';
3
3
  import type { PageConfigRuntime } from '../../../shared/page-configs/PageConfig.js';
4
4
  import { type AnalysisResult } from '../../../shared/getPageFiles/analyzePageClientSide.js';
5
- import type { GlobalContext } from '../globalContext.js';
6
- declare function analyzePage(pageFilesAll: PageFile[], pageConfig: null | PageConfigRuntime, pageId: string, globalContext: GlobalContext): Promise<AnalysisResult>;
5
+ import type { GlobalContextInternal } from '../globalContext.js';
6
+ declare function analyzePage(pageFilesAll: PageFile[], pageConfig: null | PageConfigRuntime, pageId: string, globalContext: GlobalContextInternal): Promise<AnalysisResult>;
@@ -1,7 +1,7 @@
1
1
  export { executeOnBeforeRenderAndDataHooks };
2
- import { type PageConfigUserFriendly } from '../../../shared/getPageFiles.js';
2
+ import { type PageConfigUserFriendlyOld } from '../../../shared/getPageFiles.js';
3
3
  import { type PageContextForUserConsumptionServerSide } from './preparePageContextForUserConsumptionServerSide.js';
4
4
  declare function executeOnBeforeRenderAndDataHooks(pageContext: {
5
5
  pageId: string;
6
6
  _pageContextAlreadyProvidedByOnPrerenderHook?: true;
7
- } & PageConfigUserFriendly & PageContextForUserConsumptionServerSide): Promise<void>;
7
+ } & PageConfigUserFriendlyOld & PageContextForUserConsumptionServerSide): Promise<void>;
@@ -5,7 +5,7 @@ export type { GetPageAssets };
5
5
  export type { PageContextGetPageAssets };
6
6
  import { type MediaType } from './inferMediaType.js';
7
7
  import type { ClientDependency } from '../../../shared/getPageFiles/analyzePageClientSide/ClientDependency.js';
8
- import type { GlobalContext } from '../globalContext.js';
8
+ import type { GlobalContextInternal } from '../globalContext.js';
9
9
  import type { ResolveClientEntriesDev } from '../../plugin/shared/resolveClientEntriesDev.js';
10
10
  type PageAsset = {
11
11
  src: string;
@@ -18,7 +18,7 @@ type PageContextGetPageAssets = {
18
18
  _baseServer: string;
19
19
  _baseAssets: string | null;
20
20
  _includeAssetsImportedByServer: boolean;
21
- _globalContext: GlobalContext;
21
+ _globalContext: GlobalContextInternal;
22
22
  };
23
23
  declare function getPageAssets(pageContext: PageContextGetPageAssets, clientDependencies: ClientDependency[], clientEntries: string[]): Promise<PageAsset[]>;
24
24
  declare function setResolveClientEntriesDev(resolveClientEntriesDev: ResolveClientEntriesDev): void;
@@ -1,5 +1,5 @@
1
1
  export { handleErrorWithoutErrorPage };
2
- import type { GlobalContext } from '../globalContext.js';
2
+ import type { GlobalContextInternal } from '../globalContext.js';
3
3
  import type { PageContextAfterRender } from './renderPageAlreadyRouted.js';
4
4
  import type { PageConfigRuntime } from '../../../shared/page-configs/PageConfig.js';
5
5
  import type { PageFile } from '../../../shared/getPageFiles.js';
@@ -10,6 +10,6 @@ declare function handleErrorWithoutErrorPage<PageContext extends {
10
10
  pageId: null;
11
11
  _pageFilesAll: PageFile[];
12
12
  _pageConfigs: PageConfigRuntime[];
13
- _globalContext: GlobalContext;
13
+ _globalContext: GlobalContextInternal;
14
14
  urlOriginal: string;
15
15
  }>(pageContext: PageContext): Promise<PageContext & PageContextAfterRender>;
@@ -6,17 +6,17 @@ import { PromiseType } from '../utils.js';
6
6
  import { PageContextGetPageAssets, type PageAsset } from './getPageAssets.js';
7
7
  import { type PageContextDebugRouteMatches } from './debugPageFiles.js';
8
8
  import type { PageConfigRuntime } from '../../../shared/page-configs/PageConfig.js';
9
- import type { GlobalContext } from '../globalContext.js';
9
+ import type { GlobalContextInternal } from '../globalContext.js';
10
10
  type PageContext_loadUserFilesServerSide = PageContextGetPageAssets & PageContextDebugRouteMatches & {
11
11
  urlOriginal: string;
12
12
  _pageFilesAll: PageFile[];
13
13
  _pageConfigs: PageConfigRuntime[];
14
- _globalContext: GlobalContext;
14
+ _globalContext: GlobalContextInternal;
15
15
  };
16
16
  type PageFiles = PromiseType<ReturnType<typeof loadUserFilesServerSide>>;
17
17
  declare function loadUserFilesServerSide(pageContext: {
18
18
  pageId: string;
19
- } & PageContext_loadUserFilesServerSide): Promise<import("../../../shared/getPageFiles.js").PageConfigUserFriendly & {
19
+ } & PageContext_loadUserFilesServerSide): Promise<import("../../../shared/getPageFiles.js").PageConfigUserFriendlyOld & {
20
20
  Page: unknown;
21
21
  _isHtmlOnly: boolean;
22
22
  _passToClient: string[];
@@ -1,6 +1,6 @@
1
1
  export { loadUserFilesServerSide };
2
2
  import { getPageFilesServerSide } from '../../../shared/getPageFiles.js';
3
- import { getPageConfigUserFriendlyOld } from '../../../shared/page-configs/getPageConfigUserFriendly.js';
3
+ import { getPageConfigUserFriendly_oldDesign } from '../../../shared/page-configs/getPageConfigUserFriendly.js';
4
4
  import { analyzePageClientSideInit } from '../../../shared/getPageFiles/analyzePageClientSide.js';
5
5
  import { assert, assertUsage, assertWarning, hasProp, isArrayOfStrings, objectAssign, isArray } from '../utils.js';
6
6
  import { getPageAssets } from './getPageAssets.js';
@@ -12,7 +12,7 @@ async function loadUserFilesServerSide(pageContext) {
12
12
  const pageConfig = findPageConfig(pageContext._pageConfigs, pageContext.pageId); // Make pageConfig globally available as pageContext._pageConfig?
13
13
  const globalContext = pageContext._globalContext;
14
14
  const [{ pageFilesLoaded, pageContextExports }] = await Promise.all([
15
- loadPageUserFiles(pageContext._pageFilesAll, pageConfig, pageContext.pageId, !globalContext.isProduction),
15
+ loadPageUserFiles(pageContext._pageFilesAll, pageConfig, globalContext.pageConfigGlobal, pageContext.pageId, !globalContext.isProduction),
16
16
  analyzePageClientSideInit(pageContext._pageFilesAll, pageContext.pageId, { sharedPageFilesAlreadyLoaded: true })
17
17
  ]);
18
18
  const { isHtmlOnly, isClientRouting, clientEntries, clientDependencies, pageFilesClientSide, pageFilesServerSide } = await analyzePage(pageContext._pageFilesAll, pageConfig, pageContext.pageId, globalContext);
@@ -96,11 +96,11 @@ async function loadUserFilesServerSide(pageContext) {
96
96
  }
97
97
  return pageContextAddendum;
98
98
  }
99
- async function loadPageUserFiles(pageFilesAll, pageConfig, pageId, isDev) {
99
+ async function loadPageUserFiles(pageFilesAll, pageConfig, pageConfigGlobal, pageId, isDev) {
100
100
  const pageFilesServerSide = getPageFilesServerSide(pageFilesAll, pageId);
101
101
  const pageConfigLoaded = !pageConfig ? null : await loadConfigValues(pageConfig, isDev);
102
102
  await Promise.all(pageFilesServerSide.map((p) => p.loadFile?.()));
103
- const pageContextExports = getPageConfigUserFriendlyOld(pageFilesServerSide, pageConfigLoaded);
103
+ const pageContextExports = getPageConfigUserFriendly_oldDesign(pageFilesServerSide, pageConfigLoaded, pageConfigGlobal);
104
104
  return {
105
105
  pageContextExports,
106
106
  pageFilesLoaded: pageFilesServerSide
@@ -1,12 +1,12 @@
1
1
  export { log404 };
2
2
  export { getRoutesInfo };
3
3
  import type { PageRoutes } from '../../../../shared/route/index.js';
4
- import type { GlobalContext } from '../../globalContext.js';
4
+ import type { GlobalContextInternal } from '../../globalContext.js';
5
5
  declare function log404(pageContext: {
6
6
  urlPathname: string;
7
7
  errorWhileRendering: null | Error;
8
8
  isClientSideNavigation: boolean;
9
9
  _pageRoutes: PageRoutes;
10
- _globalContext: GlobalContext;
10
+ _globalContext: GlobalContextInternal;
11
11
  }): Promise<void>;
12
12
  declare function getRoutesInfo(pageRoutes: PageRoutes): string | null;
@@ -2,10 +2,10 @@ export { preparePageContextForUserConsumptionServerSide };
2
2
  export type { PageContextForUserConsumptionServerSide };
3
3
  import { PageContextUrlInternal } from '../../../shared/getPageContextUrlComputed.js';
4
4
  import type { PageConfigRuntime } from '../../../shared/page-configs/PageConfig.js';
5
- import type { PageConfigUserFriendly } from '../../../shared/page-configs/getPageConfigUserFriendly.js';
5
+ import type { PageConfigUserFriendlyOld } from '../../../shared/page-configs/getPageConfigUserFriendly.js';
6
6
  import { PageContextBuiltInServerInternal } from '../../../shared/types.js';
7
- import type { GlobalContext, GlobalContextPublic } from '../globalContext.js';
8
- type PageContextForUserConsumptionServerSide = PageContextBuiltInServerInternal & PageConfigUserFriendly & {
7
+ import type { GlobalContextInternal, GlobalContextPublic } from '../globalContext.js';
8
+ type PageContextForUserConsumptionServerSide = PageContextBuiltInServerInternal & PageConfigUserFriendlyOld & {
9
9
  urlOriginal: string;
10
10
  /** @deprecated */
11
11
  url: string;
@@ -18,7 +18,7 @@ type PageContextForUserConsumptionServerSide = PageContextBuiltInServerInternal
18
18
  is404: null | boolean;
19
19
  isClientSideNavigation: boolean;
20
20
  pageProps?: Record<string, unknown>;
21
- _globalContext: GlobalContext;
21
+ _globalContext: GlobalContextInternal;
22
22
  globalContext: GlobalContextPublic;
23
23
  } & Record<string, unknown>;
24
24
  declare function preparePageContextForUserConsumptionServerSide(pageContext: PageContextForUserConsumptionServerSide): void;
@@ -5,7 +5,7 @@ export { getPageContextInitEnhanced };
5
5
  export type { PageContextAfterRender };
6
6
  export type { PageContextInitEnhanced };
7
7
  import { type PageContextUrlInternal } from '../../../shared/getPageContextUrlComputed.js';
8
- import type { GlobalContext } from '../globalContext.js';
8
+ import type { GlobalContextInternal } from '../globalContext.js';
9
9
  import { HttpResponse } from './createHttpResponse.js';
10
10
  import { PageContext_loadUserFilesServerSide, type PageFiles } from './loadUserFilesServerSide.js';
11
11
  type PageContextAfterRender = {
@@ -46,7 +46,7 @@ declare function prerenderPage(pageContext: PageContextInitEnhanced & PageFiles
46
46
  _allPageIds: string[];
47
47
  _pageRoutes: import("../../../__internal/index.js").PageRoutes;
48
48
  _onBeforeRouteHook: import("../../../shared/hooks/getHook.js").Hook | null;
49
- _globalContext: GlobalContext;
49
+ _globalContext: GlobalContextInternal;
50
50
  /** @experimental This is a beta feature https://vike.dev/getGlobalContext */
51
51
  globalContext: import("../globalContext.js").GlobalContextPublic;
52
52
  _pageContextInit: {
@@ -63,7 +63,7 @@ declare function prerenderPage(pageContext: PageContextInitEnhanced & PageFiles
63
63
  url: string;
64
64
  } & {
65
65
  headers: Record<string, string> | null;
66
- } & import("../../../shared/getPageFiles.js").PageConfigUserFriendly & {
66
+ } & import("../../../shared/getPageFiles.js").PageConfigUserFriendlyOld & {
67
67
  Page: unknown;
68
68
  _isHtmlOnly: boolean;
69
69
  _passToClient: string[];
@@ -100,7 +100,7 @@ declare function prerenderPage(pageContext: PageContextInitEnhanced & PageFiles
100
100
  _allPageIds: string[];
101
101
  _pageRoutes: import("../../../__internal/index.js").PageRoutes;
102
102
  _onBeforeRouteHook: import("../../../shared/hooks/getHook.js").Hook | null;
103
- _globalContext: GlobalContext;
103
+ _globalContext: GlobalContextInternal;
104
104
  /** @experimental This is a beta feature https://vike.dev/getGlobalContext */
105
105
  globalContext: import("../globalContext.js").GlobalContextPublic;
106
106
  _pageContextInit: {
@@ -117,7 +117,7 @@ declare function prerenderPage(pageContext: PageContextInitEnhanced & PageFiles
117
117
  url: string;
118
118
  } & {
119
119
  headers: Record<string, string> | null;
120
- } & import("../../../shared/getPageFiles.js").PageConfigUserFriendly & {
120
+ } & import("../../../shared/getPageFiles.js").PageConfigUserFriendlyOld & {
121
121
  Page: unknown;
122
122
  _isHtmlOnly: boolean;
123
123
  _passToClient: string[];
@@ -137,7 +137,7 @@ declare function prerenderPage(pageContext: PageContextInitEnhanced & PageFiles
137
137
  _urlHandler: null;
138
138
  };
139
139
  }>;
140
- declare function prerender404Page(pageContextInit_: Record<string, unknown> | null, globalContext: GlobalContext): Promise<{
140
+ declare function prerender404Page(pageContextInit_: Record<string, unknown> | null, globalContext: GlobalContextInternal): Promise<{
141
141
  documentHtml: string;
142
142
  pageContextSerialized: null;
143
143
  pageContext: {
@@ -155,7 +155,7 @@ declare function prerender404Page(pageContextInit_: Record<string, unknown> | nu
155
155
  _allPageIds: string[];
156
156
  _pageRoutes: import("../../../__internal/index.js").PageRoutes;
157
157
  _onBeforeRouteHook: import("../../../shared/hooks/getHook.js").Hook | null;
158
- _globalContext: GlobalContext;
158
+ _globalContext: GlobalContextInternal;
159
159
  /** @experimental This is a beta feature https://vike.dev/getGlobalContext */
160
160
  globalContext: import("../globalContext.js").GlobalContextPublic;
161
161
  _pageContextInit: {
@@ -172,7 +172,7 @@ declare function prerender404Page(pageContextInit_: Record<string, unknown> | nu
172
172
  url: string;
173
173
  } & {
174
174
  headers: Record<string, string> | null;
175
- } & import("../../../shared/getPageFiles.js").PageConfigUserFriendly & {
175
+ } & import("../../../shared/getPageFiles.js").PageConfigUserFriendlyOld & {
176
176
  Page: unknown;
177
177
  _isHtmlOnly: boolean;
178
178
  _passToClient: string[];
@@ -209,7 +209,7 @@ declare function prerender404Page(pageContextInit_: Record<string, unknown> | nu
209
209
  _allPageIds: string[];
210
210
  _pageRoutes: import("../../../__internal/index.js").PageRoutes;
211
211
  _onBeforeRouteHook: import("../../../shared/hooks/getHook.js").Hook | null;
212
- _globalContext: GlobalContext;
212
+ _globalContext: GlobalContextInternal;
213
213
  /** @experimental This is a beta feature https://vike.dev/getGlobalContext */
214
214
  globalContext: import("../globalContext.js").GlobalContextPublic;
215
215
  _pageContextInit: {
@@ -226,7 +226,7 @@ declare function prerender404Page(pageContextInit_: Record<string, unknown> | nu
226
226
  url: string;
227
227
  } & {
228
228
  headers: Record<string, string> | null;
229
- } & import("../../../shared/getPageFiles.js").PageConfigUserFriendly & {
229
+ } & import("../../../shared/getPageFiles.js").PageConfigUserFriendlyOld & {
230
230
  Page: unknown;
231
231
  _isHtmlOnly: boolean;
232
232
  _passToClient: string[];
@@ -251,7 +251,7 @@ declare function getPageContextInitEnhanced(pageContextInit: {
251
251
  urlOriginal: string;
252
252
  headersOriginal?: unknown;
253
253
  headers?: unknown;
254
- }, globalContext: GlobalContext, { ssr: { urlRewrite, urlHandler, isClientSideNavigation } }?: {
254
+ }, globalContext: GlobalContextInternal, { ssr: { urlRewrite, urlHandler, isClientSideNavigation } }?: {
255
255
  ssr?: {
256
256
  urlRewrite: null | string;
257
257
  urlHandler: null | ((url: string) => string);
@@ -272,7 +272,7 @@ declare function getPageContextInitEnhanced(pageContextInit: {
272
272
  _allPageIds: string[];
273
273
  _pageRoutes: import("../../../__internal/index.js").PageRoutes;
274
274
  _onBeforeRouteHook: import("../../../shared/hooks/getHook.js").Hook | null;
275
- _globalContext: GlobalContext;
275
+ _globalContext: GlobalContextInternal;
276
276
  /** @experimental This is a beta feature https://vike.dev/getGlobalContext */
277
277
  globalContext: import("../globalContext.js").GlobalContextPublic;
278
278
  _pageContextInit: {
@@ -17,7 +17,6 @@ import { preparePageContextForUserConsumptionServerSide } from './preparePageCon
17
17
  import { executeGuardHook } from '../../../shared/route/executeGuardHook.js';
18
18
  import pc from '@brillout/picocolors';
19
19
  import { isServerSideError } from '../../../shared/misc/isServerSideError.js';
20
- import { resolveBaseRuntime } from '../../shared/resolveBase.js';
21
20
  async function renderPageAlreadyRouted(pageContext) {
22
21
  // pageContext.pageId can either be the:
23
22
  // - ID of the page matching the routing, or the
@@ -112,14 +111,13 @@ async function getPageContextInitEnhanced(pageContextInit, globalContext, { ssr:
112
111
  isClientSideNavigation: false
113
112
  } } = {}) {
114
113
  assert(pageContextInit.urlOriginal);
115
- const { baseServer, baseAssets } = resolveBaseRuntime(globalContext);
116
114
  const pageContextInitEnhanced = {};
117
115
  objectAssign(pageContextInitEnhanced, pageContextInit);
118
116
  objectAssign(pageContextInitEnhanced, {
119
117
  _objectCreatedByVike: true,
120
118
  // The following is defined on `pageContext` because we can eventually make these non-global
121
- _baseServer: baseServer,
122
- _baseAssets: baseAssets,
119
+ _baseServer: globalContext.baseServer,
120
+ _baseAssets: globalContext.baseAssets,
123
121
  // TODO/now: add meta.default
124
122
  _includeAssetsImportedByServer: globalContext.config.includeAssetsImportedByServer ?? true,
125
123
  // TODO/soon: use GloablContext instead
@@ -18,7 +18,6 @@ import { getErrorPageId } from '../../shared/error-page.js';
18
18
  import { handleErrorWithoutErrorPage } from './renderPage/handleErrorWithoutErrorPage.js';
19
19
  import { loadUserFilesServerSide } from './renderPage/loadUserFilesServerSide.js';
20
20
  import { resolveRedirects } from './renderPage/resolveRedirects.js';
21
- import { resolveBaseRuntime } from '../shared/resolveBase.js';
22
21
  const globalObject = getGlobalObject('runtime/renderPage.ts', {
23
22
  httpRequestsCount: 0
24
23
  });
@@ -337,7 +336,6 @@ function assertIsNotViteRequest(urlPathname, urlOriginal) {
337
336
  assertUsage(false, `${pc.code('renderPage(pageContextInit)')} called with ${pc.code(`pageContextInit.urlOriginal===${JSON.stringify(urlOriginal)}`)} which is unexpected because the URL ${pc.bold(urlOriginal)} should have already been handled by the development middleware: make sure the ${pc.cyan('createDevMiddleware()')} middleware is executed *before* the ${pc.cyan('renderPage()')} middleware, see ${pc.underline('https://vike.dev/renderPage')}`);
338
337
  }
339
338
  async function normalizeUrl(pageContextInit, globalContext, httpRequestId) {
340
- const { baseServer } = resolveBaseRuntime(globalContext);
341
339
  const { trailingSlash, disableUrlNormalization } = globalContext.config;
342
340
  if (disableUrlNormalization)
343
341
  return null;
@@ -345,7 +343,7 @@ async function normalizeUrl(pageContextInit, globalContext, httpRequestId) {
345
343
  const { isPageContextRequest } = handlePageContextRequestUrl(urlOriginal);
346
344
  if (isPageContextRequest)
347
345
  return null;
348
- const urlNormalized = normalizeUrlPathname(urlOriginal, trailingSlash ?? false, baseServer);
346
+ const urlNormalized = normalizeUrlPathname(urlOriginal, trailingSlash ?? false, globalContext.baseServer);
349
347
  if (!urlNormalized)
350
348
  return null;
351
349
  logRuntimeInfo?.(`URL normalized from ${pc.cyan(urlOriginal)} to ${pc.cyan(urlNormalized)} (https://vike.dev/url-normalization)`, httpRequestId, 'info');
@@ -355,8 +353,7 @@ async function normalizeUrl(pageContextInit, globalContext, httpRequestId) {
355
353
  return pageContextHttpResponse;
356
354
  }
357
355
  async function getPermanentRedirect(pageContextInit, globalContext, httpRequestId) {
358
- const { baseServer } = resolveBaseRuntime(globalContext);
359
- const urlWithoutBase = removeBaseServer(pageContextInit.urlOriginal, baseServer);
356
+ const urlWithoutBase = removeBaseServer(pageContextInit.urlOriginal, globalContext.baseServer);
360
357
  let origin = null;
361
358
  let urlTargetExternal = null;
362
359
  let urlTarget = modifyUrlPathname(urlWithoutBase, (urlPathname) => {
@@ -387,9 +384,8 @@ async function getPermanentRedirect(pageContextInit, globalContext, httpRequestI
387
384
  }
388
385
  if (normalize(urlTarget) === normalize(urlWithoutBase))
389
386
  return null;
390
- const { baseServer } = resolveBaseRuntime(globalContext);
391
387
  if (!originChanged)
392
- urlTarget = prependBase(urlTarget, baseServer);
388
+ urlTarget = prependBase(urlTarget, globalContext.baseServer);
393
389
  assert(urlTarget !== pageContextInit.urlOriginal);
394
390
  }
395
391
  logRuntimeInfo?.(`Permanent redirection defined by config.redirects (https://vike.dev/redirects)`, httpRequestId, 'info');
@@ -453,7 +449,7 @@ pageContextNominalPageInit, httpRequestId, pageContextErrorPageInit, globalConte
453
449
  return { pageContextAbort };
454
450
  }
455
451
  async function assertBaseUrl(pageContextInit, globalContext) {
456
- const { baseServer } = resolveBaseRuntime(globalContext);
452
+ const { baseServer } = globalContext;
457
453
  const { urlOriginal } = pageContextInit;
458
454
  const { urlWithoutPageContextRequestSuffix } = handlePageContextRequestUrl(urlOriginal);
459
455
  const { hasBaseServer } = parseUrl(urlWithoutPageContextRequestSuffix, baseServer);
@@ -9,7 +9,7 @@ import { setGlobalContext_isProduction } from '../runtime/globalContext.js';
9
9
  */
10
10
  async function createDevMiddleware(options = {}) {
11
11
  setGlobalContext_isProduction(false);
12
- const viteConfig = {
12
+ const viteConfigFromOptions = {
13
13
  ...options.viteConfig,
14
14
  server: {
15
15
  ...options.viteConfig?.server,
@@ -17,8 +17,8 @@ async function createDevMiddleware(options = {}) {
17
17
  }
18
18
  };
19
19
  if (options.root)
20
- viteConfig.root = options.root;
21
- const { viteConfigEnhanced } = await prepareViteApiCall(viteConfig, 'dev');
20
+ viteConfigFromOptions.root = options.root;
21
+ const { viteConfigEnhanced } = await prepareViteApiCall(viteConfigFromOptions, 'dev');
22
22
  const server = await createServer(viteConfigEnhanced);
23
23
  const devMiddleware = server.middlewares;
24
24
  return { devMiddleware, viteServer: server, viteConfig: server.config };
@@ -1,15 +1,7 @@
1
1
  export { resolveBase };
2
- export { resolveBaseRuntime };
3
- export { resolveBaseFromResolvedConfig };
4
- import type { ResolvedConfig } from 'vite';
5
- import type { GlobalContext } from '../runtime/globalContext.js';
6
- declare function resolveBaseFromResolvedConfig(baseServer: string | null, baseAssets: string | null, config: ResolvedConfig): {
7
- baseServer: string;
8
- baseAssets: string;
9
- };
2
+ export type { BaseUrlsResolved };
10
3
  type BaseUrlsResolved = {
11
4
  baseServer: string;
12
5
  baseAssets: string;
13
6
  };
14
- declare function resolveBaseRuntime(globalContext: GlobalContext): BaseUrlsResolved;
15
7
  declare function resolveBase(baseViteOriginal: string | null, baseServerUnresolved: string | null, baseAssetsUnresolved: string | null): BaseUrlsResolved;
@@ -1,19 +1,6 @@
1
1
  export { resolveBase };
2
- export { resolveBaseRuntime };
3
- export { resolveBaseFromResolvedConfig };
4
2
  import { assert, assertUsage, isBaseServer, isBaseAssets } from './utils.js';
5
3
  import pc from '@brillout/picocolors';
6
- function resolveBaseFromResolvedConfig(baseServer, baseAssets, config) {
7
- let baseViteOriginal = config._baseViteOriginal;
8
- assert(baseViteOriginal === null || typeof baseViteOriginal == 'string');
9
- return resolveBase(baseViteOriginal, baseServer, baseAssets);
10
- }
11
- function resolveBaseRuntime(globalContext) {
12
- const baseViteOriginal = globalContext.viteConfigRuntime._baseViteOriginal;
13
- const baseServerUnresolved = globalContext.config.baseServer ?? null;
14
- const baseAssetsUnresolved = globalContext.config.baseAssets ?? null;
15
- return resolveBase(baseViteOriginal, baseServerUnresolved, baseAssetsUnresolved);
16
- }
17
4
  function resolveBase(baseViteOriginal, baseServerUnresolved, baseAssetsUnresolved) {
18
5
  if (baseViteOriginal === '/__UNSET__')
19
6
  baseViteOriginal = null;
@@ -1,13 +1,14 @@
1
1
  export { getPageConfigsRuntime };
2
2
  export { getAllPageIds };
3
3
  import type { PageFile } from './getPageFiles.js';
4
- import { type ConfigUserFriendly } from './page-configs/getPageConfigUserFriendly.js';
4
+ import { type PageConfigUserFriendly, type PageConfigsUserFriendly } from './page-configs/getPageConfigUserFriendly.js';
5
5
  import type { PageConfigGlobalRuntime, PageConfigRuntime } from './page-configs/PageConfig.js';
6
6
  declare function getPageConfigsRuntime(virtualFileExports: unknown): {
7
7
  pageFilesAll: PageFile[];
8
8
  allPageIds: string[];
9
9
  pageConfigs: PageConfigRuntime[];
10
10
  pageConfigGlobal: PageConfigGlobalRuntime;
11
- globalConfig: ConfigUserFriendly;
11
+ globalConfig: PageConfigUserFriendly;
12
+ pageConfigsUserFriendly: PageConfigsUserFriendly;
12
13
  };
13
14
  declare function getAllPageIds(pageFilesAll: PageFile[], pageConfigs: PageConfigRuntime[]): string[];
@@ -1,14 +1,17 @@
1
1
  export { getPageConfigsRuntime };
2
2
  export { getAllPageIds };
3
3
  import { parseGlobResults } from './getPageFiles/parseGlobResults.js';
4
- import { getPageConfigUserFriendlyNew } from './page-configs/getPageConfigUserFriendly.js';
4
+ import { getPageConfigGlobalUserFriendly, getPageConfigUserFriendly } from './page-configs/getPageConfigUserFriendly.js';
5
5
  import { unique } from './utils.js';
6
6
  function getPageConfigsRuntime(virtualFileExports) {
7
7
  const { pageFilesAll, pageConfigs, pageConfigGlobal } = parseGlobResults(virtualFileExports);
8
8
  const allPageIds = getAllPageIds(pageFilesAll, pageConfigs);
9
9
  // TODO/now: re-use this call, instead of calling it twice
10
- const globalConfig = getPageConfigUserFriendlyNew(pageConfigGlobal);
11
- return { pageFilesAll, allPageIds, pageConfigs, pageConfigGlobal, globalConfig };
10
+ const globalConfig = getPageConfigGlobalUserFriendly({ pageConfigGlobalValues: pageConfigGlobal.configValues });
11
+ const pageConfigsUserFriendly = Object.fromEntries(pageConfigs.map((pageConfig) => {
12
+ return getPageConfigUserFriendly(pageConfigGlobal.configValues, pageConfig, pageConfig.configValues);
13
+ }));
14
+ return { pageFilesAll, allPageIds, pageConfigs, pageConfigGlobal, globalConfig, pageConfigsUserFriendly };
12
15
  }
13
16
  function getAllPageIds(pageFilesAll, pageConfigs) {
14
17
  const fileIds = pageFilesAll.filter(({ isDefaultPageFile }) => !isDefaultPageFile).map(({ pageId }) => pageId);
@@ -1,4 +1,4 @@
1
1
  export type { PageFile } from './getPageFiles/getPageFileObject.js';
2
- export type { ExportsAll, PageConfigUserFriendly } from './page-configs/getPageConfigUserFriendly.js';
2
+ export type { ExportsAll, PageConfigUserFriendlyOld } from './page-configs/getPageConfigUserFriendly.js';
3
3
  export { getPageFilesClientSide } from './getPageFiles/getAllPageIdFiles.js';
4
4
  export { getPageFilesServerSide } from './getPageFiles/getAllPageIdFiles.js';
@@ -9,7 +9,7 @@ export type { HookLoc };
9
9
  export type { HookTimeout };
10
10
  export type { HooksTimeoutProvidedByUser };
11
11
  export { getHookTimeoutDefault };
12
- import type { PageConfigUserFriendly } from '../getPageFiles.js';
12
+ import type { PageConfigUserFriendlyOld } from '../getPageFiles.js';
13
13
  import type { HookName, HookNamePage, HookNameGlobal } from '../page-configs/Config.js';
14
14
  import type { PageConfigGlobalRuntime, PageConfigRuntime } from '../page-configs/PageConfig.js';
15
15
  type Hook = HookLoc & {
@@ -26,10 +26,10 @@ type HookTimeout = {
26
26
  warning: number | false;
27
27
  };
28
28
  type HooksTimeoutProvidedByUser = false | Partial<Record<HookName, false | Partial<HookTimeout>>>;
29
- declare function getHook(pageContext: PageConfigUserFriendly, hookName: HookName): null | Hook;
29
+ declare function getHook(pageContext: PageConfigUserFriendlyOld, hookName: HookName): null | Hook;
30
30
  declare function getHookFromPageConfig(pageConfig: PageConfigRuntime, hookName: HookNamePage): null | Hook;
31
31
  declare function getHookFromPageConfigGlobal(pageConfigGlobal: PageConfigGlobalRuntime, hookName: HookNameGlobal): null | Hook;
32
- declare function assertHook<TPageContext extends PageConfigUserFriendly, THookName extends PropertyKey & HookName>(pageContext: TPageContext, hookName: THookName): asserts pageContext is TPageContext & {
32
+ declare function assertHook<TPageContext extends PageConfigUserFriendlyOld, THookName extends PropertyKey & HookName>(pageContext: TPageContext, hookName: THookName): asserts pageContext is TPageContext & {
33
33
  exports: Record<THookName, Function | undefined>;
34
34
  };
35
35
  declare function getHookTimeoutDefault(hookName: HookName): HookTimeout;
@@ -32,6 +32,7 @@ export type { OnRenderHtmlAsync };
32
32
  export type { OnRenderHtmlSync };
33
33
  export type { RouteAsync };
34
34
  export type { RouteSync };
35
+ export type { Route };
35
36
  export type { KeepScrollPosition };
36
37
  import type { PrefetchSetting, PrefetchStaticAssets } from '../../client/client-routing-runtime/prefetch/PrefetchSetting.js';
37
38
  import type { ConfigDefinition } from '../../node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js';
@@ -223,6 +224,7 @@ type RouteSync = (pageContext: PageContextServer | PageContextClient) => {
223
224
  routeParams?: Record<string, string>;
224
225
  precedence?: number;
225
226
  } | boolean;
227
+ type Route = string | RouteSync | RouteAsync;
226
228
  /** Whether the page scrolls to the top upon navigation.
227
229
  *
228
230
  * https://vike.dev/keepScrollPosition
@@ -239,7 +241,7 @@ type ConfigBuiltIn = {
239
241
  *
240
242
  * https://vike.dev/route
241
243
  */
242
- route?: string | RouteAsync | RouteSync | ImportString;
244
+ route?: Route | ImportString;
243
245
  /** Protect page(s), e.g. forbid unauthorized access.
244
246
  *
245
247
  * https://vike.dev/guard