vike 0.4.217 → 0.4.218-commit-ed9b3d4
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.
- package/dist/cjs/__internal/index.js +9 -8
- package/dist/cjs/node/api/build.js +21 -12
- package/dist/cjs/node/api/context.js +5 -1
- package/dist/cjs/node/api/index.js +17 -7
- package/dist/cjs/node/api/prepareViteApiCall.js +128 -26
- package/dist/cjs/node/api/utils.js +2 -0
- package/dist/cjs/node/cli/entry.js +19 -7
- package/dist/cjs/node/plugin/index.js +6 -5
- package/dist/cjs/node/plugin/plugins/autoFullBuild.js +3 -4
- package/dist/cjs/node/plugin/plugins/baseUrls.js +20 -18
- package/dist/cjs/node/plugin/plugins/buildConfig.js +2 -2
- package/dist/cjs/node/plugin/plugins/{importBuild → buildEntry}/index.js +16 -17
- package/dist/cjs/node/plugin/plugins/commonConfig.js +6 -6
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +2 -3
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.js +22 -111
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +189 -16
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigs.js +2 -1
- package/dist/cjs/node/plugin/plugins/setGlobalContext.js +1 -1
- package/dist/cjs/node/plugin/plugins/{vite6HmrRegressionWorkaround.js → workaroundVite6HmrRegression.js} +3 -3
- package/dist/cjs/node/plugin/shared/getHttpRequestAsyncStore.js +17 -7
- package/dist/cjs/node/prerender/isPrerenderEnabled.js +8 -0
- package/dist/cjs/node/prerender/runPrerender.js +22 -35
- package/dist/cjs/node/runtime/globalContext.js +76 -29
- package/dist/cjs/node/runtime/html/injectAssets/getHtmlTags.js +2 -2
- package/dist/cjs/node/runtime/index-common.js +0 -15
- package/dist/cjs/node/runtime/onLoad.js +17 -3
- package/dist/cjs/node/runtime/renderPage/analyzePage.js +2 -2
- package/dist/cjs/node/runtime/renderPage/createHttpResponse/getCacheControl.js +2 -2
- package/dist/cjs/node/runtime/renderPage/loadUserFilesServerSide.js +1 -1
- package/dist/cjs/node/runtime/renderPage/renderPageAlreadyRouted.js +3 -3
- package/dist/cjs/node/runtime/utils.js +1 -0
- package/dist/cjs/node/runtime-dev/index.js +17 -7
- package/dist/cjs/node/shared/resolveBase.js +2 -2
- package/dist/cjs/shared/getPageFiles/analyzeClientSide.js +3 -3
- package/dist/cjs/shared/getPageFiles/{setPageFiles.js → getPageFiles.js} +2 -3
- package/dist/cjs/shared/getPageFiles.js +3 -9
- package/dist/cjs/shared/hooks/getHook.js +3 -3
- package/dist/cjs/shared/{getPageFiles/getExports.js → page-configs/getPageConfigUserFriendly.js} +113 -81
- package/dist/cjs/shared/page-configs/serialize/serializeConfigValues.js +79 -54
- package/dist/cjs/shared/route/loadPageRoutes.js +3 -3
- package/dist/cjs/shared/utils.js +1 -0
- package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
- package/dist/cjs/utils/assert.js +4 -3
- package/dist/cjs/utils/debug.js +11 -6
- package/dist/cjs/utils/objectReplace.js +9 -0
- package/dist/esm/__internal/index.d.ts +3 -5
- package/dist/esm/__internal/index.js +4 -5
- package/dist/esm/client/client-routing-runtime/createPageContext.js +7 -1
- package/dist/esm/client/client-routing-runtime/entry.d.ts +1 -1
- package/dist/esm/client/client-routing-runtime/entry.js +0 -1
- package/dist/esm/client/client-routing-runtime/getPageContextCurrent.d.ts +2 -2
- package/dist/esm/client/client-routing-runtime/getPageContextFromHooks.d.ts +4 -4
- package/dist/esm/client/client-routing-runtime/getPageContextFromHooks.js +1 -1
- package/dist/esm/client/client-routing-runtime/prefetch/getPrefetchSettings.d.ts +2 -2
- package/dist/esm/client/client-routing-runtime/prefetch.d.ts +2 -2
- package/dist/esm/client/client-routing-runtime/prefetch.js +2 -2
- package/dist/esm/client/server-routing-runtime/entry.d.ts +1 -1
- package/dist/esm/client/server-routing-runtime/entry.js +0 -1
- package/dist/esm/client/server-routing-runtime/getPageContext.d.ts +1 -1
- package/dist/esm/client/server-routing-runtime/getPageContext.js +8 -2
- package/dist/esm/client/shared/executeOnRenderClientHook.d.ts +2 -2
- package/dist/esm/client/shared/loadUserFilesClientSide.d.ts +2 -2
- package/dist/esm/client/shared/loadUserFilesClientSide.js +2 -2
- package/dist/esm/client/shared/preparePageContextForUserConsumptionClientSide.d.ts +2 -2
- package/dist/esm/node/api/build.js +4 -5
- package/dist/esm/node/api/context.d.ts +3 -1
- package/dist/esm/node/api/context.js +6 -2
- package/dist/esm/node/api/prepareViteApiCall.d.ts +9 -3
- package/dist/esm/node/api/prepareViteApiCall.js +111 -22
- package/dist/esm/node/api/utils.d.ts +2 -0
- package/dist/esm/node/api/utils.js +2 -0
- package/dist/esm/node/cli/entry.js +2 -0
- package/dist/esm/node/cli/parseCli.d.ts +1 -1
- package/dist/esm/node/plugin/index.d.ts +1 -1
- package/dist/esm/node/plugin/index.js +6 -5
- package/dist/esm/node/plugin/plugins/autoFullBuild.js +3 -4
- package/dist/esm/node/plugin/plugins/baseUrls.d.ts +1 -2
- package/dist/esm/node/plugin/plugins/baseUrls.js +21 -19
- package/dist/esm/node/plugin/plugins/buildConfig.js +2 -2
- package/dist/esm/node/plugin/plugins/{importBuild → buildEntry}/getVikeManifest.d.ts +1 -1
- package/dist/esm/node/plugin/plugins/{importBuild → buildEntry}/index.d.ts +2 -2
- package/dist/esm/node/plugin/plugins/{importBuild → buildEntry}/index.js +16 -17
- package/dist/esm/node/plugin/plugins/commonConfig.d.ts +7 -1
- package/dist/esm/node/plugin/plugins/commonConfig.js +2 -2
- package/dist/esm/node/plugin/plugins/importUserCode/getVirtualFileImportUserCode.d.ts +1 -1
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.d.ts +1 -1
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js +2 -3
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.d.ts +1 -1
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/crawlPlusFiles.js +23 -112
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.d.ts +99 -1
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js +189 -16
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVirtualFilePageConfigs.js +2 -1
- package/dist/esm/node/plugin/plugins/setGlobalContext.js +1 -1
- package/dist/esm/node/plugin/plugins/workaroundVite6HmrRegression.d.ts +3 -0
- package/dist/esm/node/plugin/plugins/{vite6HmrRegressionWorkaround.js → workaroundVite6HmrRegression.js} +3 -3
- package/dist/esm/node/plugin/shared/getEnvVarObject.d.ts +1 -1
- package/dist/esm/node/prerender/isPrerenderEnabled.d.ts +3 -0
- package/dist/esm/node/prerender/isPrerenderEnabled.js +6 -0
- package/dist/esm/node/prerender/runPrerender.d.ts +1 -2
- package/dist/esm/node/prerender/runPrerender.js +4 -27
- package/dist/esm/node/runtime/globalContext.d.ts +6 -4
- package/dist/esm/node/runtime/globalContext.js +76 -29
- package/dist/esm/node/runtime/html/injectAssets/getHtmlTags.js +1 -1
- package/dist/esm/node/runtime/index-common.d.ts +0 -1
- package/dist/esm/node/runtime/index-common.js +0 -15
- package/dist/esm/node/runtime/index-deprecated.d.ts +1 -0
- package/dist/esm/node/runtime/onLoad.js +16 -2
- package/dist/esm/node/runtime/renderPage/analyzePage.js +1 -1
- package/dist/esm/node/runtime/renderPage/createHttpResponse/getCacheControl.js +1 -1
- package/dist/esm/node/runtime/renderPage/executeOnBeforeRenderAndDataHooks.d.ts +2 -2
- package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.d.ts +1 -1
- package/dist/esm/node/runtime/renderPage/loadUserFilesServerSide.js +2 -2
- package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.d.ts +2 -2
- package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.d.ts +5 -5
- package/dist/esm/node/runtime/renderPage/renderPageAlreadyRouted.js +3 -3
- package/dist/esm/node/runtime/utils.d.ts +1 -0
- package/dist/esm/node/runtime/utils.js +1 -0
- package/dist/esm/node/shared/resolveBase.js +2 -2
- package/dist/esm/shared/getPageFiles/analyzeClientSide.js +1 -1
- package/dist/esm/shared/getPageFiles/{setPageFiles.js → getPageFiles.js} +2 -3
- package/dist/esm/shared/getPageFiles.d.ts +2 -5
- package/dist/esm/shared/getPageFiles.js +1 -4
- package/dist/esm/shared/hooks/getHook.d.ts +3 -3
- package/dist/esm/shared/hooks/getHook.js +1 -1
- package/dist/esm/shared/page-configs/Config.d.ts +8 -2
- package/dist/esm/shared/page-configs/PageConfig.d.ts +7 -3
- package/dist/esm/shared/{getPageFiles/getExports.d.ts → page-configs/getPageConfigUserFriendly.d.ts} +23 -12
- package/dist/esm/shared/{getPageFiles/getExports.js → page-configs/getPageConfigUserFriendly.js} +112 -80
- package/dist/esm/shared/page-configs/serialize/serializeConfigValues.d.ts +28 -4
- package/dist/esm/shared/page-configs/serialize/serializeConfigValues.js +79 -54
- package/dist/esm/shared/route/executeGuardHook.d.ts +2 -2
- package/dist/esm/shared/route/loadPageRoutes.js +1 -1
- package/dist/esm/shared/types.d.ts +1 -1
- package/dist/esm/shared/utils.d.ts +1 -0
- package/dist/esm/shared/utils.js +1 -0
- package/dist/esm/types/index.d.ts +1 -1
- package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
- package/dist/esm/utils/PROJECT_VERSION.js +1 -1
- package/dist/esm/utils/assert.js +4 -3
- package/dist/esm/utils/debug.d.ts +1 -1
- package/dist/esm/utils/debug.js +11 -6
- package/dist/esm/utils/objectReplace.d.ts +1 -0
- package/dist/esm/utils/objectReplace.js +6 -0
- package/dist/esm/utils/projectInfo.d.ts +1 -1
- package/package.json +3 -22
- package/__internal/loadImportBuild.js +0 -3
- package/__internal/setup.js +0 -3
- package/dist/cjs/node/plugin/plugins/commonConfig/pluginName.js +0 -4
- package/dist/cjs/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolveVikeConfigGlobal.js +0 -128
- package/dist/cjs/node/runtime/globalContext/loadImportBuild.js +0 -25
- package/dist/cjs/node/runtime/page-files/getPageFilesExports.js +0 -22
- package/dist/cjs/node/runtime/page-files/setup.js +0 -5
- package/dist/esm/client/client-routing-runtime/pageFiles.d.ts +0 -1
- package/dist/esm/client/client-routing-runtime/pageFiles.js +0 -4
- package/dist/esm/client/server-routing-runtime/pageFiles.d.ts +0 -1
- package/dist/esm/client/server-routing-runtime/pageFiles.js +0 -4
- package/dist/esm/node/plugin/plugins/commonConfig/pluginName.d.ts +0 -1
- package/dist/esm/node/plugin/plugins/commonConfig/pluginName.js +0 -1
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolveVikeConfigGlobal.d.ts +0 -104
- package/dist/esm/node/plugin/plugins/importUserCode/v1-design/getVikeConfig/resolveVikeConfigGlobal.js +0 -123
- package/dist/esm/node/plugin/plugins/vite6HmrRegressionWorkaround.d.ts +0 -3
- package/dist/esm/node/runtime/globalContext/loadImportBuild.d.ts +0 -18
- package/dist/esm/node/runtime/globalContext/loadImportBuild.js +0 -23
- package/dist/esm/node/runtime/page-files/getPageFilesExports.d.ts +0 -2
- package/dist/esm/node/runtime/page-files/getPageFilesExports.js +0 -20
- package/dist/esm/node/runtime/page-files/setup.d.ts +0 -1
- package/dist/esm/node/runtime/page-files/setup.js +0 -3
- package/dist/cjs/node/plugin/plugins/{importBuild → buildEntry}/getVikeManifest.js +0 -0
- package/dist/cjs/shared/page-configs/{getConfigValue.js → getConfigValueRuntime.js} +0 -0
- package/dist/esm/node/plugin/plugins/{importBuild → buildEntry}/getVikeManifest.js +0 -0
- package/dist/esm/shared/getPageFiles/{setPageFiles.d.ts → getPageFiles.d.ts} +1 -1
- /package/dist/esm/shared/page-configs/{getConfigValue.d.ts → getConfigValueRuntime.d.ts} +0 -0
- /package/dist/esm/shared/page-configs/{getConfigValue.js → getConfigValueRuntime.js} +0 -0
|
@@ -6,4 +6,3 @@ export { getGlobalContextSync, getGlobalContextAsync } from './globalContext.js'
|
|
|
6
6
|
export { createDevMiddleware } from '../runtime-dev/index.js';
|
|
7
7
|
export { injectAssets__public as _injectAssets } from './html/injectAssets/injectAssets__public.js';
|
|
8
8
|
export { createPageRenderer } from '../createPageRenderer.js';
|
|
9
|
-
import './page-files/setup.js';
|
|
@@ -8,18 +8,3 @@ export { createDevMiddleware } from '../runtime-dev/index.js';
|
|
|
8
8
|
export { injectAssets__public as _injectAssets } from './html/injectAssets/injectAssets__public.js';
|
|
9
9
|
// TODO/v1-release: remove
|
|
10
10
|
export { createPageRenderer } from '../createPageRenderer.js';
|
|
11
|
-
addEcosystemStamp();
|
|
12
|
-
import './page-files/setup.js';
|
|
13
|
-
// Used by:
|
|
14
|
-
// - Telefunc (to detect the user's stack https://github.com/brillout/telefunc/blob/8288310e88e06a42b710d39c39fb502364ca6d30/telefunc/utils/isVikeApp.ts#L4)
|
|
15
|
-
function addEcosystemStamp() {
|
|
16
|
-
const g = globalThis;
|
|
17
|
-
g._isVikeApp =
|
|
18
|
-
/* Don't set to true so that consumers do `!!globalThis._isVikeApp` instead of `globalThis._isVikeApp === true`.
|
|
19
|
-
true
|
|
20
|
-
*/
|
|
21
|
-
// We use an object so that we can eventually, in the future, add helpful information as needed. (E.g. the Vike version, or global settings.)
|
|
22
|
-
{};
|
|
23
|
-
// We keep the old stamp for older Telefunc versions
|
|
24
|
-
g._isVitePluginSsr = true;
|
|
25
|
-
}
|
|
@@ -1,13 +1,27 @@
|
|
|
1
1
|
export { onLoad };
|
|
2
2
|
import { assertIsNotBrowser } from '../../utils/assertIsNotBrowser.js';
|
|
3
3
|
import { assertNodeVersion } from '../../utils/assertNodeVersion.js';
|
|
4
|
+
import { setAlwaysShowStackTrace } from '../../utils/assert.js';
|
|
4
5
|
import { installRequireShim } from '@brillout/require-shim';
|
|
5
|
-
import { setAlwaysShowStackTrace } from './utils.js';
|
|
6
6
|
import { isErrorDebug } from '../shared/isErrorDebug.js';
|
|
7
7
|
function onLoad() {
|
|
8
8
|
assertIsNotBrowser();
|
|
9
9
|
assertNodeVersion();
|
|
10
|
-
installRequireShim();
|
|
11
10
|
if (isErrorDebug())
|
|
12
11
|
setAlwaysShowStackTrace();
|
|
12
|
+
addEcosystemStamp();
|
|
13
|
+
installRequireShim();
|
|
14
|
+
}
|
|
15
|
+
// Used by:
|
|
16
|
+
// - Telefunc (to detect the user's stack https://github.com/brillout/telefunc/blob/8288310e88e06a42b710d39c39fb502364ca6d30/telefunc/utils/isVikeApp.ts#L4)
|
|
17
|
+
function addEcosystemStamp() {
|
|
18
|
+
const g = globalThis;
|
|
19
|
+
g._isVikeApp =
|
|
20
|
+
/* Don't set to true so that consumers do `!!globalThis._isVikeApp` instead of `globalThis._isVikeApp === true`.
|
|
21
|
+
true
|
|
22
|
+
*/
|
|
23
|
+
// We use an object so that we can eventually, in the future, add helpful information as needed. (E.g. the Vike version, or global settings.)
|
|
24
|
+
{};
|
|
25
|
+
// We keep the old stamp for older Telefunc versions
|
|
26
|
+
g._isVitePluginSsr = true;
|
|
13
27
|
}
|
|
@@ -4,7 +4,7 @@ import { analyzePageClientSide } from '../../../shared/getPageFiles/analyzePageC
|
|
|
4
4
|
import { getVirtualFileIdPageConfigValuesAll } from '../../shared/virtual-files/virtualFilePageConfigValuesAll.js';
|
|
5
5
|
import { analyzeClientSide } from '../../../shared/getPageFiles/analyzeClientSide.js';
|
|
6
6
|
import { getGlobalContext } from '../globalContext.js';
|
|
7
|
-
import { getConfigValueRuntime } from '../../../shared/page-configs/
|
|
7
|
+
import { getConfigValueRuntime } from '../../../shared/page-configs/getConfigValueRuntime.js';
|
|
8
8
|
function analyzePage(pageFilesAll, pageConfig, pageId) {
|
|
9
9
|
if (pageConfig) {
|
|
10
10
|
const { isClientRuntimeLoaded, isClientRouting } = analyzeClientSide(pageConfig, pageFilesAll, pageId);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { getCacheControl };
|
|
2
2
|
import { getPageConfig } from '../../../../shared/page-configs/helpers.js';
|
|
3
|
-
import { getConfigValueRuntime } from '../../../../shared/page-configs/
|
|
3
|
+
import { getConfigValueRuntime } from '../../../../shared/page-configs/getConfigValueRuntime.js';
|
|
4
4
|
const defaultValue = 'no-store, max-age=0';
|
|
5
5
|
function getCacheControl(pageId, pageConfigs, statusCode) {
|
|
6
6
|
// TODO/v1-release: remove
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { executeOnBeforeRenderAndDataHooks };
|
|
2
|
-
import { type
|
|
2
|
+
import { type PageConfigUserFriendly } 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
|
-
} &
|
|
7
|
+
} & PageConfigUserFriendly & PageContextForUserConsumptionServerSide): Promise<void>;
|
|
@@ -14,7 +14,7 @@ type PageContext_loadUserFilesServerSide = PageContextGetPageAssets & PageContex
|
|
|
14
14
|
type PageFiles = PromiseType<ReturnType<typeof loadUserFilesServerSide>>;
|
|
15
15
|
declare function loadUserFilesServerSide(pageContext: {
|
|
16
16
|
pageId: string;
|
|
17
|
-
} & PageContext_loadUserFilesServerSide): Promise<import("../../../shared/getPageFiles.js").
|
|
17
|
+
} & PageContext_loadUserFilesServerSide): Promise<import("../../../shared/getPageFiles.js").PageConfigUserFriendly & {
|
|
18
18
|
Page: unknown;
|
|
19
19
|
_isHtmlOnly: boolean;
|
|
20
20
|
_passToClient: string[];
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { loadUserFilesServerSide };
|
|
2
|
-
import { getPageFilesServerSide,
|
|
2
|
+
import { getPageFilesServerSide, getPageConfigUserFriendly } from '../../../shared/getPageFiles.js';
|
|
3
3
|
import { analyzePageClientSideInit } from '../../../shared/getPageFiles/analyzePageClientSide.js';
|
|
4
4
|
import { assert, assertUsage, assertWarning, hasProp, isArrayOfStrings, objectAssign, isArray } from '../utils.js';
|
|
5
5
|
import { getPageAssets } from './getPageAssets.js';
|
|
@@ -99,7 +99,7 @@ async function loadPageUserFiles(pageFilesAll, pageConfig, pageId, isDev) {
|
|
|
99
99
|
const pageFilesServerSide = getPageFilesServerSide(pageFilesAll, pageId);
|
|
100
100
|
const pageConfigLoaded = !pageConfig ? null : await loadConfigValues(pageConfig, isDev);
|
|
101
101
|
await Promise.all(pageFilesServerSide.map((p) => p.loadFile?.()));
|
|
102
|
-
const pageContextExports =
|
|
102
|
+
const pageContextExports = getPageConfigUserFriendly(pageFilesServerSide, pageConfigLoaded);
|
|
103
103
|
return {
|
|
104
104
|
pageContextExports,
|
|
105
105
|
pageFilesLoaded: pageFilesServerSide
|
package/dist/esm/node/runtime/renderPage/preparePageContextForUserConsumptionServerSide.d.ts
CHANGED
|
@@ -2,9 +2,9 @@ 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 {
|
|
5
|
+
import type { PageConfigUserFriendly } from '../../../shared/page-configs/getPageConfigUserFriendly.js';
|
|
6
6
|
import { PageContextBuiltInServerInternal } from '../../../shared/types.js';
|
|
7
|
-
type PageContextForUserConsumptionServerSide = PageContextBuiltInServerInternal &
|
|
7
|
+
type PageContextForUserConsumptionServerSide = PageContextBuiltInServerInternal & PageConfigUserFriendly & {
|
|
8
8
|
urlOriginal: string;
|
|
9
9
|
/** @deprecated */
|
|
10
10
|
url: string;
|
|
@@ -6,7 +6,7 @@ export { getRenderContext };
|
|
|
6
6
|
export type { RenderContext };
|
|
7
7
|
export type { PageContextAfterRender };
|
|
8
8
|
export type { PageContextInitEnhanced };
|
|
9
|
-
import {
|
|
9
|
+
import type { PageFile } from '../../../shared/getPageFiles/getPageFileObject.js';
|
|
10
10
|
import { type PageContextUrlInternal } from '../../../shared/getPageContextUrlComputed.js';
|
|
11
11
|
import { HttpResponse } from './createHttpResponse.js';
|
|
12
12
|
import { PageContext_loadUserFilesServerSide, type PageFiles } from './loadUserFilesServerSide.js';
|
|
@@ -65,7 +65,7 @@ declare function prerenderPage(pageContext: PageContextInitEnhanced & PageFiles
|
|
|
65
65
|
url: string;
|
|
66
66
|
} & {
|
|
67
67
|
headers: Record<string, string> | null;
|
|
68
|
-
} & import("../../../shared/getPageFiles.js").
|
|
68
|
+
} & import("../../../shared/getPageFiles.js").PageConfigUserFriendly & {
|
|
69
69
|
Page: unknown;
|
|
70
70
|
_isHtmlOnly: boolean;
|
|
71
71
|
_passToClient: string[];
|
|
@@ -116,7 +116,7 @@ declare function prerenderPage(pageContext: PageContextInitEnhanced & PageFiles
|
|
|
116
116
|
url: string;
|
|
117
117
|
} & {
|
|
118
118
|
headers: Record<string, string> | null;
|
|
119
|
-
} & import("../../../shared/getPageFiles.js").
|
|
119
|
+
} & import("../../../shared/getPageFiles.js").PageConfigUserFriendly & {
|
|
120
120
|
Page: unknown;
|
|
121
121
|
_isHtmlOnly: boolean;
|
|
122
122
|
_passToClient: string[];
|
|
@@ -168,7 +168,7 @@ declare function prerender404Page(renderContext: RenderContext, pageContextInit_
|
|
|
168
168
|
url: string;
|
|
169
169
|
} & {
|
|
170
170
|
headers: Record<string, string> | null;
|
|
171
|
-
} & import("../../../shared/getPageFiles.js").
|
|
171
|
+
} & import("../../../shared/getPageFiles.js").PageConfigUserFriendly & {
|
|
172
172
|
Page: unknown;
|
|
173
173
|
_isHtmlOnly: boolean;
|
|
174
174
|
_passToClient: string[];
|
|
@@ -219,7 +219,7 @@ declare function prerender404Page(renderContext: RenderContext, pageContextInit_
|
|
|
219
219
|
url: string;
|
|
220
220
|
} & {
|
|
221
221
|
headers: Record<string, string> | null;
|
|
222
|
-
} & import("../../../shared/getPageFiles.js").
|
|
222
|
+
} & import("../../../shared/getPageFiles.js").PageConfigUserFriendly & {
|
|
223
223
|
Page: unknown;
|
|
224
224
|
_isHtmlOnly: boolean;
|
|
225
225
|
_passToClient: string[];
|
|
@@ -5,7 +5,7 @@ export { getPageContextInitEnhanced };
|
|
|
5
5
|
export { getRenderContext };
|
|
6
6
|
import { getErrorPageId } from '../../../shared/error-page.js';
|
|
7
7
|
import { getHtmlString } from '../html/renderHtml.js';
|
|
8
|
-
import { getPageFilesAll } from '../../../shared/getPageFiles.js';
|
|
8
|
+
import { getPageFilesAll } from '../../../shared/getPageFiles/getPageFiles.js';
|
|
9
9
|
import { assert, assertUsage, assertWarning, hasProp, normalizeHeaders, objectAssign } from '../utils.js';
|
|
10
10
|
import { serializePageContextClientSide } from '../html/serializePageContextClientSide.js';
|
|
11
11
|
import { getPageContextUrlComputed } from '../../../shared/getPageContextUrlComputed.js';
|
|
@@ -169,10 +169,10 @@ async function getRenderContext() {
|
|
|
169
169
|
// pageConfigs is PageConfigRuntime[] but assertV1Design() requires PageConfigBuildTime[]
|
|
170
170
|
pageConfigs.length > 0, pageFilesAll);
|
|
171
171
|
const renderContext = {
|
|
172
|
-
pageFilesAll
|
|
172
|
+
pageFilesAll,
|
|
173
173
|
pageConfigs,
|
|
174
174
|
pageConfigGlobal,
|
|
175
|
-
allPageIds
|
|
175
|
+
allPageIds,
|
|
176
176
|
pageRoutes,
|
|
177
177
|
onBeforeRouteHook
|
|
178
178
|
};
|
|
@@ -15,6 +15,7 @@ export * from '../../utils/projectInfo.js';
|
|
|
15
15
|
export * from '../../utils/isArray.js';
|
|
16
16
|
export * from '../../utils/isObject.js';
|
|
17
17
|
export * from '../../utils/objectAssign.js';
|
|
18
|
+
export * from '../../utils/objectReplace.js';
|
|
18
19
|
export * from '../../utils/PromiseType.js';
|
|
19
20
|
export * from '../../utils/compareString.js';
|
|
20
21
|
export * from '../../utils/isObjectWithKeys.js';
|
|
@@ -19,6 +19,7 @@ export * from '../../utils/projectInfo.js';
|
|
|
19
19
|
export * from '../../utils/isArray.js';
|
|
20
20
|
export * from '../../utils/isObject.js';
|
|
21
21
|
export * from '../../utils/objectAssign.js';
|
|
22
|
+
export * from '../../utils/objectReplace.js';
|
|
22
23
|
export * from '../../utils/PromiseType.js';
|
|
23
24
|
export * from '../../utils/compareString.js';
|
|
24
25
|
export * from '../../utils/isObjectWithKeys.js';
|
|
@@ -4,12 +4,12 @@ import { assert, assertUsage, isBaseServer, isBaseAssets } from './utils.js';
|
|
|
4
4
|
import pc from '@brillout/picocolors';
|
|
5
5
|
function resolveBaseFromResolvedConfig(baseServer, baseAssets, config) {
|
|
6
6
|
let baseViteOriginal = config._baseViteOriginal;
|
|
7
|
-
if (baseViteOriginal === '/__UNSET__')
|
|
8
|
-
baseViteOriginal = null;
|
|
9
7
|
assert(baseViteOriginal === null || typeof baseViteOriginal == 'string');
|
|
10
8
|
return resolveBase(baseViteOriginal, baseServer, baseAssets);
|
|
11
9
|
}
|
|
12
10
|
function resolveBase(baseViteOriginal, baseServerUnresolved, baseAssetsUnresolved) {
|
|
11
|
+
if (baseViteOriginal === '/__UNSET__')
|
|
12
|
+
baseViteOriginal = null;
|
|
13
13
|
{
|
|
14
14
|
const wrongBase = (val) => `should start with ${pc.cyan('/')}, ${pc.cyan('http://')}, or ${pc.cyan('https://')} (it's ${pc.cyan(val)} instead)`;
|
|
15
15
|
assertUsage(baseViteOriginal === null || isBaseAssets(baseViteOriginal), `vite.config.js#base ${wrongBase(baseViteOriginal)}`);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { analyzeClientSide };
|
|
2
|
-
import { getConfigValueRuntime } from '../page-configs/
|
|
2
|
+
import { getConfigValueRuntime } from '../page-configs/getConfigValueRuntime.js';
|
|
3
3
|
import { analyzePageClientSide } from './analyzePageClientSide.js';
|
|
4
4
|
function analyzeClientSide(pageConfig, pageFilesAll, pageId) {
|
|
5
5
|
// V1 design
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
+
export { getPageFilesAll };
|
|
1
2
|
export { setPageFiles };
|
|
2
3
|
export { setPageFilesAsync };
|
|
3
|
-
export { getPageFilesAll };
|
|
4
4
|
import { assert, unique } from '../utils.js';
|
|
5
5
|
import { parseGlobResults } from './parseGlobResults.js';
|
|
6
6
|
import { getGlobalObject } from '../../utils/getGlobalObject.js';
|
|
7
7
|
const globalObject = getGlobalObject('setPageFiles.ts', {});
|
|
8
|
-
// TODO:v1-design-release: rename setPageFiles() getPageFilesAll() parseGlobResult()
|
|
9
8
|
function setPageFiles(pageFilesExports) {
|
|
10
9
|
const { pageFiles, pageConfigs, pageConfigGlobal } = parseGlobResults(pageFilesExports);
|
|
11
10
|
globalObject.pageFilesAll = pageFiles;
|
|
@@ -23,11 +22,11 @@ async function getPageFilesAll(isClientSide, isProduction) {
|
|
|
23
22
|
assert(isProduction === undefined);
|
|
24
23
|
}
|
|
25
24
|
else {
|
|
26
|
-
assert(globalObject.pageFilesGetter);
|
|
27
25
|
assert(typeof isProduction === 'boolean');
|
|
28
26
|
if (!globalObject.pageFilesAll ||
|
|
29
27
|
// We reload all glob imports in dev to make auto-reload work
|
|
30
28
|
!isProduction) {
|
|
29
|
+
assert(globalObject.pageFilesGetter);
|
|
31
30
|
await globalObject.pageFilesGetter();
|
|
32
31
|
}
|
|
33
32
|
}
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
export type { PageFile } from './getPageFiles/getPageFileObject.js';
|
|
2
|
-
export type { ExportsAll,
|
|
3
|
-
export { getPageFilesAll } from './getPageFiles/setPageFiles.js';
|
|
4
|
-
export { setPageFiles } from './getPageFiles/setPageFiles.js';
|
|
5
|
-
export { setPageFilesAsync } from './getPageFiles/setPageFiles.js';
|
|
2
|
+
export type { ExportsAll, PageConfigUserFriendly } from './page-configs/getPageConfigUserFriendly.js';
|
|
6
3
|
export { getPageFilesClientSide } from './getPageFiles/getAllPageIdFiles.js';
|
|
7
4
|
export { getPageFilesServerSide } from './getPageFiles/getAllPageIdFiles.js';
|
|
8
|
-
export {
|
|
5
|
+
export { getPageConfigUserFriendly } from './page-configs/getPageConfigUserFriendly.js';
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
export { getPageFilesAll } from './getPageFiles/setPageFiles.js';
|
|
2
|
-
export { setPageFiles } from './getPageFiles/setPageFiles.js';
|
|
3
|
-
export { setPageFilesAsync } from './getPageFiles/setPageFiles.js';
|
|
4
1
|
export { getPageFilesClientSide } from './getPageFiles/getAllPageIdFiles.js';
|
|
5
2
|
export { getPageFilesServerSide } from './getPageFiles/getAllPageIdFiles.js';
|
|
6
|
-
export {
|
|
3
|
+
export { getPageConfigUserFriendly } from './page-configs/getPageConfigUserFriendly.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 {
|
|
12
|
+
import type { PageConfigUserFriendly } 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:
|
|
29
|
+
declare function getHook(pageContext: PageConfigUserFriendly, 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
|
|
32
|
+
declare function assertHook<TPageContext extends PageConfigUserFriendly, 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;
|
|
@@ -8,7 +8,7 @@ export { getHook_setIsPrerenderering };
|
|
|
8
8
|
export { getHookTimeoutDefault };
|
|
9
9
|
import { getGlobalObject } from '../../utils/getGlobalObject.js';
|
|
10
10
|
import { getHookFilePathToShowToUser } from '../page-configs/helpers.js';
|
|
11
|
-
import { getConfigValueRuntime } from '../page-configs/
|
|
11
|
+
import { getConfigValueRuntime } from '../page-configs/getConfigValueRuntime.js';
|
|
12
12
|
import { assert, assertUsage, checkType, isCallable, isObject } from '../utils.js';
|
|
13
13
|
import pc from '@brillout/picocolors';
|
|
14
14
|
const globalObject = getGlobalObject('getHook.ts', {});
|
|
@@ -35,15 +35,16 @@ import type { PrefetchSetting, PrefetchStaticAssets } from '../../client/client-
|
|
|
35
35
|
import type { ConfigDefinition } from '../../node/plugin/plugins/importUserCode/v1-design/getVikeConfig/configDefinitionsBuiltIn.js';
|
|
36
36
|
import type { DocumentHtml } from '../../node/runtime/html/renderHtml.js';
|
|
37
37
|
import type { InjectFilterEntry } from '../../types/index.js';
|
|
38
|
-
import type { VikeVitePluginOptions } from '../../node/plugin/plugins/importUserCode/v1-design/getVikeConfig
|
|
38
|
+
import type { VikeVitePluginOptions } from '../../node/plugin/plugins/importUserCode/v1-design/getVikeConfig.js';
|
|
39
39
|
import type { Vike, VikePackages } from '../VikeNamespace.js';
|
|
40
40
|
import type { HooksTimeoutProvidedByUser } from '../hooks/getHook.js';
|
|
41
41
|
import type { PageContextClient, PageContextServer } from '../types.js';
|
|
42
|
+
import type { InlineConfig } from 'vite';
|
|
42
43
|
type HookName = HookNamePage | HookNameGlobal | HookNameOldDesign;
|
|
43
44
|
type HookNamePage = 'onHydrationEnd' | 'onBeforePrerenderStart' | 'onBeforeRender' | 'onPageTransitionStart' | 'onPageTransitionEnd' | 'onRenderHtml' | 'onRenderClient' | 'guard' | 'data';
|
|
44
45
|
type HookNameGlobal = 'onBeforePrerender' | 'onBeforeRoute' | 'onPrerenderStart';
|
|
45
46
|
type HookNameOldDesign = 'render' | 'prerender';
|
|
46
|
-
type ConfigNameBuiltIn = Exclude<keyof Config, keyof VikeVitePluginOptions | 'onBeforeRoute' | 'onPrerenderStart'> | 'prerender' | 'isClientRuntimeLoaded' | 'onBeforeRenderEnv' | 'dataEnv' | 'hooksTimeout' | 'clientHooks' | 'middleware';
|
|
47
|
+
type ConfigNameBuiltIn = Exclude<keyof Config, keyof VikeVitePluginOptions | 'onBeforeRoute' | 'onPrerenderStart' | 'vite'> | 'prerender' | 'isClientRuntimeLoaded' | 'onBeforeRenderEnv' | 'dataEnv' | 'hooksTimeout' | 'clientHooks' | 'middleware';
|
|
47
48
|
type Config = ConfigBuiltIn & Vike.Config & (VikePackages.ConfigVikeReact | VikePackages.ConfigVikeVue | VikePackages.ConfigVikeSolid | VikePackages.ConfigVikeSvelte | VikePackages.ConfigVikeAngular);
|
|
48
49
|
/** Hook for fetching data.
|
|
49
50
|
*
|
|
@@ -344,6 +345,11 @@ type ConfigBuiltIn = {
|
|
|
344
345
|
* https://vike.dev/meta
|
|
345
346
|
*/
|
|
346
347
|
meta?: ConfigMeta | ImportString;
|
|
348
|
+
/** Vite configuration.
|
|
349
|
+
*
|
|
350
|
+
* https://vite.dev/config/
|
|
351
|
+
*/
|
|
352
|
+
vite?: InlineConfig;
|
|
347
353
|
/**
|
|
348
354
|
* @experimental DON'T USE: the API *will* have breaking changes upon any minor version release.
|
|
349
355
|
*
|
|
@@ -54,6 +54,7 @@ type PageConfigGlobalRuntime = {
|
|
|
54
54
|
type PageConfigGlobalBuildTime = {
|
|
55
55
|
configValueSources: ConfigValueSources;
|
|
56
56
|
configDefinitions: ConfigDefinitions;
|
|
57
|
+
configValuesComputed?: undefined;
|
|
57
58
|
};
|
|
58
59
|
/** In what environment(s) the config value is loaded.
|
|
59
60
|
*
|
|
@@ -70,6 +71,8 @@ type ConfigEnvInternal = Omit<ConfigEnv, 'client'> & {
|
|
|
70
71
|
/** Load value only in production, or only in development. */
|
|
71
72
|
production?: boolean;
|
|
72
73
|
};
|
|
74
|
+
type ConfigValueSources = Record<string, // configName
|
|
75
|
+
ConfigValueSource[]>;
|
|
73
76
|
type ConfigValueSource = {
|
|
74
77
|
value?: unknown;
|
|
75
78
|
configEnv: ConfigEnvInternal;
|
|
@@ -85,11 +88,13 @@ type ConfigValueSource = {
|
|
|
85
88
|
type DefinedAtFilePath = DefinedAtFile & FilePath & {
|
|
86
89
|
fileExportName?: string;
|
|
87
90
|
};
|
|
88
|
-
type
|
|
89
|
-
|
|
91
|
+
type ConfigValuesComputed = Record<string, // configName
|
|
92
|
+
{
|
|
90
93
|
configEnv: ConfigEnvInternal;
|
|
91
94
|
value: unknown;
|
|
92
95
|
}>;
|
|
96
|
+
type ConfigValues = Record<string, // configName
|
|
97
|
+
ConfigValue>;
|
|
93
98
|
type ConfigValue = ConfigValueStandard | ConfigValueCumulative | ConfigValueComputed;
|
|
94
99
|
/** Defined by a unique source (thus unique file path). */
|
|
95
100
|
type ConfigValueStandard = {
|
|
@@ -109,7 +114,6 @@ type ConfigValueComputed = {
|
|
|
109
114
|
value: unknown;
|
|
110
115
|
definedAtData: null;
|
|
111
116
|
};
|
|
112
|
-
type ConfigValues = Record<string, ConfigValue>;
|
|
113
117
|
type DefinedAtData = DefinedAtFile | DefinedAtFile[] | null;
|
|
114
118
|
type DefinedAtFile = {
|
|
115
119
|
filePathToShowToUser: string;
|
package/dist/esm/shared/{getPageFiles/getExports.d.ts → page-configs/getPageConfigUserFriendly.d.ts}
RENAMED
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { getPageConfigUserFriendly };
|
|
2
|
+
export { getPageConfigUserFriendlyNew };
|
|
3
|
+
export type { PageConfigUserFriendly };
|
|
4
|
+
export type { Source };
|
|
5
|
+
export type { Sources };
|
|
6
|
+
export type { From };
|
|
2
7
|
export type { ExportsAll };
|
|
3
|
-
export type { PageContextExports };
|
|
4
8
|
export type { ConfigEntries };
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
import type
|
|
9
|
-
import type { PageConfigRuntimeLoaded } from './../page-configs/PageConfig.js';
|
|
10
|
-
import type { PageFile } from './getPageFileObject.js';
|
|
11
|
-
import { type ConfigDefinedAtOptional } from '../page-configs/getConfigDefinedAt.js';
|
|
9
|
+
import type { FileType } from '../getPageFiles/fileTypes.js';
|
|
10
|
+
import type { PageFile } from '../getPageFiles/getPageFileObject.js';
|
|
11
|
+
import type { ConfigValues, PageConfigRuntimeLoaded } from './PageConfig.js';
|
|
12
|
+
import { type ConfigDefinedAtOptional } from './getConfigDefinedAt.js';
|
|
12
13
|
type ExportsAll = Record<string, {
|
|
13
14
|
exportValue: unknown;
|
|
14
15
|
exportSource: string;
|
|
@@ -29,11 +30,11 @@ type ConfigEntries = Record<string, {
|
|
|
29
30
|
configDefinedAt: ConfigDefinedAtOptional;
|
|
30
31
|
configDefinedByFile: string | null;
|
|
31
32
|
}[]>;
|
|
32
|
-
type
|
|
33
|
+
type PageConfigUserFriendly = {
|
|
34
|
+
config: Record<string, unknown>;
|
|
33
35
|
source: Source;
|
|
34
36
|
sources: Sources;
|
|
35
37
|
from: From;
|
|
36
|
-
config: Record<string, unknown>;
|
|
37
38
|
configEntries: ConfigEntries;
|
|
38
39
|
exports: Record<string, unknown>;
|
|
39
40
|
exportsAll: ExportsAll;
|
|
@@ -70,4 +71,14 @@ type SourceConfigsComputed = {
|
|
|
70
71
|
type: 'configsComputed';
|
|
71
72
|
value: unknown;
|
|
72
73
|
};
|
|
73
|
-
declare function
|
|
74
|
+
declare function getPageConfigUserFriendly(pageFiles: PageFile[], pageConfig: PageConfigRuntimeLoaded | null): PageConfigUserFriendly;
|
|
75
|
+
declare function getPageConfigUserFriendlyNew(pageConfig: {
|
|
76
|
+
configValues: ConfigValues;
|
|
77
|
+
}): {
|
|
78
|
+
config: Record<string, unknown>;
|
|
79
|
+
configEntries: ConfigEntries;
|
|
80
|
+
exportsAll: ExportsAll;
|
|
81
|
+
source: Source;
|
|
82
|
+
sources: Sources;
|
|
83
|
+
from: From;
|
|
84
|
+
};
|