vike 0.4.238 → 0.4.239-commit-33e55d4
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/node/prerender/resolvePrerenderConfig.js +3 -2
- package/dist/cjs/node/prerender/runPrerender.js +1 -0
- package/dist/cjs/node/runtime/globalContext.js +10 -0
- package/dist/cjs/node/runtime/index.js +3 -3
- package/dist/cjs/node/runtime/page-files/setup.js +3 -1
- package/dist/cjs/node/runtime/renderPage/createHttpResponse.js +2 -9
- package/dist/cjs/node/runtime/renderPage/createPageContextServerSide.js +2 -2
- package/dist/cjs/node/runtime/renderPage/csp.js +47 -0
- package/dist/cjs/node/runtime/renderPage/execHookOnRenderHtml.js +2 -2
- package/dist/cjs/node/runtime/renderPage/getEarlyHints.js +1 -1
- package/dist/cjs/node/runtime/renderPage/getHttpResponseBody.js +2 -2
- package/dist/cjs/node/runtime/renderPage/headersResponse.js +48 -0
- package/dist/cjs/node/runtime/{html → renderPage/html}/injectAssets/getHtmlTags.js +16 -13
- package/dist/cjs/node/runtime/{html → renderPage/html}/injectAssets/getViteDevScript.js +1 -1
- package/dist/cjs/node/runtime/{html → renderPage/html}/injectAssets/inferHtmlTags.js +8 -6
- package/dist/cjs/node/runtime/{html → renderPage/html}/injectAssets/injectAssets__public.js +1 -1
- package/dist/cjs/node/runtime/{html → renderPage/html}/injectAssets/injectHtmlTags.js +1 -1
- package/dist/cjs/node/runtime/{html → renderPage/html}/injectAssets/mergeScriptTags.js +5 -3
- package/dist/cjs/node/runtime/{html → renderPage/html}/injectAssets.js +2 -2
- package/dist/cjs/node/runtime/{html → renderPage/html}/propKeys.js +1 -1
- package/dist/cjs/node/runtime/{html → renderPage/html}/renderHtml.js +1 -1
- package/dist/cjs/node/runtime/{html → renderPage/html}/serializeContext.js +6 -6
- package/dist/cjs/node/runtime/{html → renderPage/html}/stream/react-streaming.js +1 -1
- package/dist/cjs/node/runtime/{html → renderPage/html}/stream.js +1 -1
- package/dist/cjs/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +17 -38
- package/dist/cjs/node/runtime/renderPage/renderPageAfterRoute.js +2 -2
- package/dist/cjs/node/runtime/renderPage.js +1 -1
- package/dist/cjs/node/vite/onLoad.js +1 -1
- package/dist/cjs/node/vite/plugins/pluginBaseUrls.js +32 -28
- package/dist/cjs/node/vite/plugins/pluginBuild/handleAssetsManifest.js +1 -1
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildApp.js +24 -20
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginBuildConfig.js +4 -2
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginDistFileNames.js +76 -74
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.js +18 -14
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginModuleBanner.js +17 -9
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginProdBuildEntry.js +4 -2
- package/dist/cjs/node/vite/plugins/pluginBuild/pluginSuppressRollupWarning.js +20 -18
- package/dist/cjs/node/vite/plugins/pluginCommon.js +7 -21
- package/dist/cjs/node/vite/plugins/pluginDev.js +51 -47
- package/dist/cjs/node/vite/plugins/pluginEnvVars.js +62 -57
- package/dist/cjs/node/vite/plugins/pluginExtractAssets.js +107 -93
- package/dist/cjs/node/vite/plugins/pluginExtractExportNames.js +27 -13
- package/dist/cjs/node/vite/plugins/pluginFileEnv.js +107 -84
- package/dist/cjs/node/vite/plugins/pluginNonRunnableDev.js +40 -21
- package/dist/cjs/node/vite/plugins/pluginPreview.js +30 -24
- package/dist/cjs/node/vite/plugins/pluginReplaceConstants.js +59 -33
- package/dist/cjs/node/vite/plugins/pluginSetGlobalContext.js +4 -2
- package/dist/cjs/node/vite/plugins/pluginVirtualFiles/generateVirtualFileGlobalEntryWithOldDesign.js +1 -1
- package/dist/cjs/node/vite/plugins/pluginVirtualFiles.js +54 -36
- package/dist/cjs/node/vite/plugins/pluginWorkaroundCssModuleHmr.js +8 -6
- package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.js +3 -0
- package/dist/cjs/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles.js +1 -1
- package/dist/cjs/node/vite/shared/resolveVikeConfigInternal.js +20 -22
- package/dist/cjs/shared/createGlobalContextShared.js +4 -22
- package/dist/cjs/shared/createPageContextShared.js +2 -2
- package/dist/cjs/shared/page-configs/resolveVikeConfigPublic.js +62 -43
- package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
- package/dist/cjs/utils/assert.js +16 -1
- package/dist/cjs/utils/assertNodeVersion.js +3 -1
- package/dist/cjs/utils/assertVersion.js +26 -5
- package/dist/cjs/utils/joinEnglish.js +2 -1
- package/dist/cjs/utils/virtualFileId.js +15 -11
- package/dist/esm/client/runtime-client-routing/createPageContextClientSide.d.ts +40 -17
- package/dist/esm/client/runtime-client-routing/createPageContextClientSide.js +1 -1
- package/dist/esm/client/runtime-client-routing/getPageContextCurrent.d.ts +2 -2
- package/dist/esm/client/runtime-client-routing/getPageContextFromHooks.d.ts +99 -85
- package/dist/esm/client/runtime-client-routing/globalContext.d.ts +39 -11
- package/dist/esm/client/runtime-client-routing/prefetch/getPrefetchSettings.d.ts +2 -2
- package/dist/esm/client/runtime-client-routing/prefetch.d.ts +2 -2
- package/dist/esm/client/runtime-client-routing/prefetch.js +2 -2
- package/dist/esm/client/runtime-client-routing/preparePageContextForPublicUsageClient.d.ts +2 -2
- package/dist/esm/client/runtime-client-routing/renderPageClientSide.d.ts +44 -29
- package/dist/esm/client/runtime-server-routing/createPageContextClientSide.d.ts +40 -17
- package/dist/esm/client/runtime-server-routing/createPageContextClientSide.js +1 -1
- package/dist/esm/client/runtime-server-routing/globalContext.d.ts +39 -11
- package/dist/esm/client/runtime-server-routing/preparePageContextForPublicUsageClient.d.ts +2 -2
- package/dist/esm/client/shared/createGetGlobalContextClient.d.ts +39 -11
- package/dist/esm/client/shared/execHookOnRenderClient.d.ts +2 -2
- package/dist/esm/client/shared/loadPageConfigsLazyClientSide.d.ts +1 -1
- package/dist/esm/client/shared/loadPageConfigsLazyClientSide.js +2 -3
- package/dist/esm/client/shared/preparePageContextForPublicUsageClientShared.d.ts +2 -2
- package/dist/esm/node/prerender/resolvePrerenderConfig.js +4 -3
- package/dist/esm/node/prerender/runPrerender.d.ts +61 -16
- package/dist/esm/node/prerender/runPrerender.js +2 -1
- package/dist/esm/node/runtime/globalContext.d.ts +167 -42
- package/dist/esm/node/runtime/globalContext.js +11 -1
- package/dist/esm/node/runtime/index.d.ts +3 -3
- package/dist/esm/node/runtime/index.js +3 -3
- package/dist/esm/node/runtime/page-files/setup.js +3 -1
- package/dist/esm/node/runtime/renderPage/createHttpResponse.d.ts +1 -1
- package/dist/esm/node/runtime/renderPage/createHttpResponse.js +2 -9
- package/dist/esm/node/runtime/renderPage/createPageContextServerSide.d.ts +56 -12
- package/dist/esm/node/runtime/renderPage/createPageContextServerSide.js +2 -2
- package/dist/esm/node/runtime/renderPage/csp.d.ts +12 -0
- package/dist/esm/node/runtime/renderPage/csp.js +45 -0
- package/dist/esm/node/runtime/renderPage/execHookOnRenderHtml.d.ts +2 -2
- package/dist/esm/node/runtime/renderPage/execHookOnRenderHtml.js +2 -2
- package/dist/esm/node/runtime/renderPage/execHookServer.d.ts +2 -2
- package/dist/esm/node/runtime/renderPage/getEarlyHints.js +1 -1
- package/dist/esm/node/runtime/renderPage/getHttpResponseBody.d.ts +2 -2
- package/dist/esm/node/runtime/renderPage/getHttpResponseBody.js +2 -2
- package/dist/esm/node/runtime/renderPage/headersResponse.d.ts +10 -0
- package/dist/esm/node/runtime/renderPage/headersResponse.js +46 -0
- package/dist/esm/node/runtime/{html → renderPage/html}/injectAssets/getHtmlTags.d.ts +1 -1
- package/dist/esm/node/runtime/{html → renderPage/html}/injectAssets/getHtmlTags.js +16 -13
- package/dist/esm/node/runtime/{html → renderPage/html}/injectAssets/getViteDevScript.d.ts +1 -1
- package/dist/esm/node/runtime/{html → renderPage/html}/injectAssets/getViteDevScript.js +1 -1
- package/dist/esm/node/runtime/renderPage/html/injectAssets/inferHtmlTags.d.ts +10 -0
- package/dist/esm/node/runtime/{html → renderPage/html}/injectAssets/inferHtmlTags.js +7 -5
- package/dist/esm/node/runtime/{html → renderPage/html}/injectAssets/injectAssets__public.js +1 -1
- package/dist/esm/node/runtime/{html → renderPage/html}/injectAssets/injectHtmlTags.js +1 -1
- package/dist/esm/node/runtime/renderPage/html/injectAssets/mergeScriptTags.d.ts +3 -0
- package/dist/esm/node/runtime/{html → renderPage/html}/injectAssets/mergeScriptTags.js +6 -4
- package/dist/esm/node/runtime/{html → renderPage/html}/injectAssets.d.ts +2 -2
- package/dist/esm/node/runtime/{html → renderPage/html}/injectAssets.js +2 -2
- package/dist/esm/node/runtime/{html → renderPage/html}/propKeys.js +1 -1
- package/dist/esm/node/runtime/{html → renderPage/html}/renderHtml.d.ts +1 -1
- package/dist/esm/node/runtime/{html → renderPage/html}/renderHtml.js +1 -1
- package/dist/esm/node/runtime/{html → renderPage/html}/serializeContext.d.ts +6 -5
- package/dist/esm/node/runtime/{html → renderPage/html}/serializeContext.js +6 -6
- package/dist/esm/node/runtime/{html → renderPage/html}/stream/react-streaming.js +1 -1
- package/dist/esm/node/runtime/{html → renderPage/html}/stream.js +1 -1
- package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.d.ts +66 -17
- package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +18 -39
- package/dist/esm/node/runtime/renderPage/preparePageContextForPublicUsageServer.d.ts +2 -2
- package/dist/esm/node/runtime/renderPage/renderPageAfterRoute.d.ts +122 -32
- package/dist/esm/node/runtime/renderPage/renderPageAfterRoute.js +2 -2
- package/dist/esm/node/runtime/renderPage.d.ts +56 -12
- package/dist/esm/node/runtime/renderPage.js +1 -1
- package/dist/esm/node/vite/onLoad.js +1 -1
- package/dist/esm/node/vite/plugins/pluginBaseUrls.js +32 -28
- package/dist/esm/node/vite/plugins/pluginBuild/handleAssetsManifest.js +1 -1
- package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildApp.js +24 -20
- package/dist/esm/node/vite/plugins/pluginBuild/pluginBuildConfig.js +4 -2
- package/dist/esm/node/vite/plugins/pluginBuild/pluginDistFileNames.js +76 -74
- package/dist/esm/node/vite/plugins/pluginBuild/pluginDistPackageJsonFile.js +18 -14
- package/dist/esm/node/vite/plugins/pluginBuild/pluginModuleBanner.js +18 -10
- package/dist/esm/node/vite/plugins/pluginBuild/pluginProdBuildEntry.js +4 -2
- package/dist/esm/node/vite/plugins/pluginBuild/pluginSuppressRollupWarning.js +20 -18
- package/dist/esm/node/vite/plugins/pluginCommon.js +8 -22
- package/dist/esm/node/vite/plugins/pluginDev.js +51 -47
- package/dist/esm/node/vite/plugins/pluginEnvVars.js +62 -57
- package/dist/esm/node/vite/plugins/pluginExtractAssets.js +107 -91
- package/dist/esm/node/vite/plugins/pluginExtractExportNames.js +27 -13
- package/dist/esm/node/vite/plugins/pluginFileEnv.js +107 -84
- package/dist/esm/node/vite/plugins/pluginNonRunnableDev.js +41 -22
- package/dist/esm/node/vite/plugins/pluginPreview.js +30 -24
- package/dist/esm/node/vite/plugins/pluginReplaceConstants.d.ts +11 -0
- package/dist/esm/node/vite/plugins/pluginReplaceConstants.js +58 -33
- package/dist/esm/node/vite/plugins/pluginSetGlobalContext.js +4 -2
- package/dist/esm/node/vite/plugins/pluginVirtualFiles/generateVirtualFileGlobalEntryWithOldDesign.js +2 -2
- package/dist/esm/node/vite/plugins/pluginVirtualFiles.js +56 -38
- package/dist/esm/node/vite/plugins/pluginWorkaroundCssModuleHmr.js +8 -6
- package/dist/esm/node/vite/shared/resolveVikeConfigInternal/configDefinitionsBuiltIn.js +3 -0
- package/dist/esm/node/vite/shared/resolveVikeConfigInternal/crawlPlusFiles.js +2 -2
- package/dist/esm/node/vite/shared/resolveVikeConfigInternal.d.ts +4 -8
- package/dist/esm/node/vite/shared/resolveVikeConfigInternal.js +22 -24
- package/dist/esm/shared/createGlobalContextShared.d.ts +75 -19
- package/dist/esm/shared/createGlobalContextShared.js +5 -23
- package/dist/esm/shared/createPageContextShared.d.ts +2 -7
- package/dist/esm/shared/createPageContextShared.js +2 -2
- package/dist/esm/shared/getPageFiles.d.ts +1 -1
- package/dist/esm/shared/hooks/execHook.d.ts +2 -2
- package/dist/esm/shared/hooks/getHook.d.ts +3 -3
- package/dist/esm/shared/page-configs/resolveVikeConfigPublic.d.ts +91 -31
- package/dist/esm/shared/page-configs/resolveVikeConfigPublic.js +62 -43
- package/dist/esm/types/Config/ConfigResolved.d.ts +8 -0
- package/dist/esm/types/Config.d.ts +14 -6
- package/dist/esm/types/PageContext.d.ts +8 -25
- package/dist/esm/types/VikeNamespace.d.ts +0 -27
- package/dist/esm/types/index.d.ts +2 -2
- 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 +16 -1
- package/dist/esm/utils/assertNodeVersion.js +3 -1
- package/dist/esm/utils/assertVersion.d.ts +4 -3
- package/dist/esm/utils/assertVersion.js +23 -5
- package/dist/esm/utils/joinEnglish.js +2 -1
- package/dist/esm/utils/virtualFileId.d.ts +4 -0
- package/dist/esm/utils/virtualFileId.js +14 -11
- package/package.json +5 -5
- package/dist/cjs/types/Config/helpers.js +0 -2
- package/dist/esm/node/runtime/html/injectAssets/inferHtmlTags.d.ts +0 -9
- package/dist/esm/node/runtime/html/injectAssets/mergeScriptTags.d.ts +0 -2
- package/dist/esm/types/Config/PageContextConfig.d.ts +0 -15
- package/dist/esm/types/Config/helpers.d.ts +0 -10
- package/dist/esm/types/Config/helpers.js +0 -1
- /package/dist/cjs/node/runtime/{html → renderPage/html}/injectAssets/sanitizeJson.js +0 -0
- /package/dist/cjs/types/Config/{PageContextConfig.js → ConfigResolved.js} +0 -0
- /package/dist/esm/node/runtime/{html → renderPage/html}/injectAssets/injectAssets__public.d.ts +0 -0
- /package/dist/esm/node/runtime/{html → renderPage/html}/injectAssets/injectHtmlTags.d.ts +0 -0
- /package/dist/esm/node/runtime/{html → renderPage/html}/injectAssets/sanitizeJson.d.ts +0 -0
- /package/dist/esm/node/runtime/{html → renderPage/html}/injectAssets/sanitizeJson.js +0 -0
- /package/dist/esm/node/runtime/{html → renderPage/html}/propKeys.d.ts +0 -0
- /package/dist/esm/node/runtime/{html → renderPage/html}/stream/react-streaming.d.ts +0 -0
- /package/dist/esm/node/runtime/{html → renderPage/html}/stream.d.ts +0 -0
- /package/dist/esm/types/Config/{PageContextConfig.js → ConfigResolved.js} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { loadPageConfigsLazyServerSide };
|
|
2
2
|
import { getPageFilesServerSide } from '../../../shared/getPageFiles.js';
|
|
3
|
-
import {
|
|
3
|
+
import { resolvePageContextConfig } from '../../../shared/page-configs/resolveVikeConfigPublic.js';
|
|
4
4
|
import { analyzePageClientSideInit } from '../../../shared/getPageFiles/analyzePageClientSide.js';
|
|
5
5
|
import { assertUsage, assertWarning, hasProp, isArray, isObject, objectAssign, updateType, } from '../utils.js';
|
|
6
6
|
import { getPageAssets } from './getPageAssets.js';
|
|
@@ -8,13 +8,14 @@ import { findPageConfig } from '../../../shared/page-configs/findPageConfig.js';
|
|
|
8
8
|
import { analyzePage } from './analyzePage.js';
|
|
9
9
|
import { loadAndParseVirtualFilePageEntry } from '../../../shared/page-configs/loadAndParseVirtualFilePageEntry.js';
|
|
10
10
|
import { execHookServer } from './execHookServer.js';
|
|
11
|
-
import {
|
|
11
|
+
import { resolveHeadersResponseEarly } from './headersResponse.js';
|
|
12
|
+
import { resolvePageContextCspNone } from './csp.js';
|
|
12
13
|
async function loadPageConfigsLazyServerSide(pageContext) {
|
|
13
14
|
objectAssign(pageContext, {
|
|
14
15
|
_pageConfig: findPageConfig(pageContext._globalContext._pageConfigs, pageContext.pageId),
|
|
15
16
|
});
|
|
16
17
|
// Load the page's + files
|
|
17
|
-
|
|
18
|
+
objectAssign(pageContext, await loadPageUserFiles(pageContext));
|
|
18
19
|
// Resolve new computed pageContext properties
|
|
19
20
|
updateType(pageContext, await resolvePageContext(pageContext));
|
|
20
21
|
// Execute +onCreatePageContext
|
|
@@ -53,12 +54,13 @@ async function resolvePageContext(pageContext) {
|
|
|
53
54
|
passToClient.push(...valS);
|
|
54
55
|
});
|
|
55
56
|
}
|
|
57
|
+
objectAssign(pageContext, await resolvePageContextCspNone(pageContext));
|
|
56
58
|
objectAssign(pageContext, {
|
|
57
59
|
Page: pageContext.exports.Page,
|
|
58
60
|
_isHtmlOnly: isHtmlOnly,
|
|
59
61
|
_passToClient: passToClient,
|
|
60
|
-
headersResponse: resolveHeadersResponse(pageContext),
|
|
61
62
|
});
|
|
63
|
+
objectAssign(pageContext, await resolveHeadersResponseEarly(pageContext));
|
|
62
64
|
objectAssign(pageContext, {
|
|
63
65
|
__getPageAssets: async () => {
|
|
64
66
|
if ('_pageAssets' in pageContext) {
|
|
@@ -101,43 +103,20 @@ async function resolvePageContext(pageContext) {
|
|
|
101
103
|
return pageContext;
|
|
102
104
|
}
|
|
103
105
|
async function loadPageUserFiles(pageContext) {
|
|
104
|
-
const [{
|
|
105
|
-
|
|
106
|
+
const [{ pageContextAddendum }] = await Promise.all([
|
|
107
|
+
(async () => {
|
|
108
|
+
const pageFilesServerSide = getPageFilesServerSide(pageContext._pageFilesAll, pageContext.pageId);
|
|
109
|
+
const isDev = !pageContext._globalContext._isProduction;
|
|
110
|
+
const pageConfigLoaded = !pageContext._pageConfig
|
|
111
|
+
? null
|
|
112
|
+
: await loadAndParseVirtualFilePageEntry(pageContext._pageConfig, isDev);
|
|
113
|
+
await Promise.all(pageFilesServerSide.map((p) => p.loadFile?.()));
|
|
114
|
+
const pageContextAddendum = resolvePageContextConfig(pageFilesServerSide, pageConfigLoaded, pageContext._globalContext._pageConfigGlobal);
|
|
115
|
+
return { pageContextAddendum };
|
|
116
|
+
})(),
|
|
106
117
|
analyzePageClientSideInit(pageContext._globalContext._pageFilesAll, pageContext.pageId, {
|
|
107
118
|
sharedPageFilesAlreadyLoaded: true,
|
|
108
119
|
}),
|
|
109
120
|
]);
|
|
110
|
-
|
|
111
|
-
return pageContext;
|
|
112
|
-
}
|
|
113
|
-
async function loadPageUserFiles_v1Design(pageContext) {
|
|
114
|
-
const pageFilesServerSide = getPageFilesServerSide(pageContext._pageFilesAll, pageContext.pageId);
|
|
115
|
-
const isDev = !pageContext._globalContext._isProduction;
|
|
116
|
-
const pageConfigLoaded = !pageContext._pageConfig
|
|
117
|
-
? null
|
|
118
|
-
: await loadAndParseVirtualFilePageEntry(pageContext._pageConfig, isDev);
|
|
119
|
-
await Promise.all(pageFilesServerSide.map((p) => p.loadFile?.()));
|
|
120
|
-
const configPublicPageLazy = resolveVikeConfigPublicPageLazyLoaded(pageFilesServerSide, pageConfigLoaded, pageContext._globalContext._pageConfigGlobal);
|
|
121
|
-
return {
|
|
122
|
-
configPublicPageLazy,
|
|
123
|
-
pageFilesLoaded: pageFilesServerSide,
|
|
124
|
-
};
|
|
125
|
-
}
|
|
126
|
-
function resolveHeadersResponse(pageContext) {
|
|
127
|
-
const headersResponse = mergeHeaders(pageContext.config.headersResponse);
|
|
128
|
-
if (!headersResponse.get('Cache-Control')) {
|
|
129
|
-
const cacheControl = getCacheControl(pageContext.pageId, pageContext._globalContext._pageConfigs);
|
|
130
|
-
if (cacheControl)
|
|
131
|
-
headersResponse.set('Cache-Control', cacheControl);
|
|
132
|
-
}
|
|
133
|
-
return headersResponse;
|
|
134
|
-
}
|
|
135
|
-
function mergeHeaders(headersList = []) {
|
|
136
|
-
const headersMerged = new Headers();
|
|
137
|
-
headersList.forEach((headers) => {
|
|
138
|
-
new Headers(headers).forEach((value, key) => {
|
|
139
|
-
headersMerged.append(key, value);
|
|
140
|
-
});
|
|
141
|
-
});
|
|
142
|
-
return headersMerged;
|
|
121
|
+
return pageContextAddendum;
|
|
143
122
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
export { preparePageContextForPublicUsageServer };
|
|
2
2
|
export type { PageContextForPublicUsageServer };
|
|
3
3
|
import type { PageContextUrlInternal } from '../../../shared/getPageContextUrlComputed.js';
|
|
4
|
-
import type {
|
|
4
|
+
import type { PageContextConfig } from '../../../shared/page-configs/resolveVikeConfigPublic.js';
|
|
5
5
|
import type { PageContextInternalServer } from '../../../types/PageContext.js';
|
|
6
6
|
import type { GlobalContextServerInternal } from '../globalContext.js';
|
|
7
|
-
type PageContextForPublicUsageServer = PageContextInternalServer &
|
|
7
|
+
type PageContextForPublicUsageServer = PageContextInternalServer & PageContextConfig & {
|
|
8
8
|
urlOriginal: string;
|
|
9
9
|
/** @deprecated */
|
|
10
10
|
url: string;
|
|
@@ -39,24 +39,52 @@ declare function prerenderPage(pageContext: PageContextCreated & PageConfigsLazy
|
|
|
39
39
|
url?: string;
|
|
40
40
|
headers?: Record<string, string>;
|
|
41
41
|
} & {
|
|
42
|
-
_globalContext: {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
42
|
+
_globalContext: ({
|
|
43
|
+
_globalConfigPublic: {
|
|
44
|
+
pages: {
|
|
45
|
+
[k: string]: {
|
|
46
|
+
config: import("../../../types/index.js").ConfigResolved;
|
|
47
|
+
_source: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Source;
|
|
48
|
+
_sources: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Sources;
|
|
49
|
+
_from: import("../../../shared/page-configs/resolveVikeConfigPublic.js").From;
|
|
50
|
+
} & ({
|
|
51
|
+
route: import("../../../types/Config.js").Route;
|
|
52
|
+
isErrorPage?: undefined;
|
|
53
|
+
} | {
|
|
54
|
+
route?: undefined;
|
|
55
|
+
isErrorPage: true;
|
|
56
|
+
});
|
|
57
|
+
};
|
|
51
58
|
config: import("../../../types/index.js").ConfigResolved;
|
|
52
59
|
_source: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Source;
|
|
53
60
|
_sources: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Sources;
|
|
54
61
|
_from: import("../../../shared/page-configs/resolveVikeConfigPublic.js").From;
|
|
55
62
|
};
|
|
56
|
-
config: import("../../../types/index.js").ConfigResolved;
|
|
57
63
|
pages: {
|
|
58
|
-
[k: string]:
|
|
64
|
+
[k: string]: {
|
|
65
|
+
config: import("../../../types/index.js").ConfigResolved;
|
|
66
|
+
_source: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Source;
|
|
67
|
+
_sources: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Sources;
|
|
68
|
+
_from: import("../../../shared/page-configs/resolveVikeConfigPublic.js").From;
|
|
69
|
+
} & ({
|
|
70
|
+
route: import("../../../types/Config.js").Route;
|
|
71
|
+
isErrorPage?: undefined;
|
|
72
|
+
} | {
|
|
73
|
+
route?: undefined;
|
|
74
|
+
isErrorPage: true;
|
|
75
|
+
});
|
|
59
76
|
};
|
|
77
|
+
config: import("../../../types/index.js").ConfigResolved;
|
|
78
|
+
_source: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Source;
|
|
79
|
+
_sources: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Sources;
|
|
80
|
+
_from: import("../../../shared/page-configs/resolveVikeConfigPublic.js").From;
|
|
81
|
+
isGlobalContext: true;
|
|
82
|
+
_isOriginalObject: true;
|
|
83
|
+
_virtualFileExportsGlobalEntry: unknown;
|
|
84
|
+
_pageFilesAll: import("../../../shared/getPageFiles.js").PageFile[];
|
|
85
|
+
_pageConfigs: import("../../../types/PageConfig.js").PageConfigRuntime[];
|
|
86
|
+
_pageConfigGlobal: import("../../../types/PageConfig.js").PageConfigGlobalRuntime;
|
|
87
|
+
_allPageIds: string[];
|
|
60
88
|
} & (({
|
|
61
89
|
_isProduction: false;
|
|
62
90
|
_isPrerendering: false;
|
|
@@ -99,7 +127,9 @@ declare function prerenderPage(pageContext: PageContextCreated & PageConfigsLazy
|
|
|
99
127
|
inject: boolean | undefined;
|
|
100
128
|
};
|
|
101
129
|
};
|
|
102
|
-
})
|
|
130
|
+
})) & {
|
|
131
|
+
prerenderContext: import("../../prerender/runPrerender.js").PrerenderContextPublic | undefined;
|
|
132
|
+
};
|
|
103
133
|
_pageFilesAll: import("../../../shared/getPageFiles.js").PageFile[];
|
|
104
134
|
_baseServer: string;
|
|
105
135
|
_baseAssets: string;
|
|
@@ -108,6 +138,20 @@ declare function prerenderPage(pageContext: PageContextCreated & PageConfigsLazy
|
|
|
108
138
|
_urlHandler: ((url: string) => string) | null;
|
|
109
139
|
isClientSideNavigation: boolean;
|
|
110
140
|
} & {
|
|
141
|
+
pages: {
|
|
142
|
+
[k: string]: {
|
|
143
|
+
config: import("../../../types/index.js").ConfigResolved;
|
|
144
|
+
_source: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Source;
|
|
145
|
+
_sources: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Sources;
|
|
146
|
+
_from: import("../../../shared/page-configs/resolveVikeConfigPublic.js").From;
|
|
147
|
+
} & ({
|
|
148
|
+
route: import("../../../types/Config.js").Route;
|
|
149
|
+
isErrorPage?: undefined;
|
|
150
|
+
} | {
|
|
151
|
+
route?: undefined;
|
|
152
|
+
isErrorPage: true;
|
|
153
|
+
});
|
|
154
|
+
};
|
|
111
155
|
config: import("../../../types/index.js").ConfigResolved;
|
|
112
156
|
_source: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Source;
|
|
113
157
|
_sources: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Sources;
|
|
@@ -123,14 +167,15 @@ declare function prerenderPage(pageContext: PageContextCreated & PageConfigsLazy
|
|
|
123
167
|
pageId: string;
|
|
124
168
|
} & {
|
|
125
169
|
_pageConfig: import("../../../types/PageConfig.js").PageConfigRuntime | null;
|
|
126
|
-
} & {
|
|
127
|
-
_pageConfig: null | import("../../../types/PageConfig.js").PageConfigRuntime;
|
|
128
|
-
} & import("../../../shared/getPageFiles.js").VikeConfigPublicPageLazyLoaded & {
|
|
170
|
+
} & import("../../../shared/getPageFiles.js").PageContextConfig & {
|
|
129
171
|
_pageConfig: null | import("../../../types/PageConfig.js").PageConfigRuntime;
|
|
172
|
+
} & {
|
|
173
|
+
cspNonce: string | null;
|
|
130
174
|
} & {
|
|
131
175
|
Page: unknown;
|
|
132
176
|
_isHtmlOnly: boolean;
|
|
133
|
-
_passToClient: import("
|
|
177
|
+
_passToClient: import("./html/serializeContext.js").PassToClient;
|
|
178
|
+
} & {
|
|
134
179
|
headersResponse: Headers;
|
|
135
180
|
} & {
|
|
136
181
|
__getPageAssets: () => Promise<import("./getPageAssets.js").PageAsset[]>;
|
|
@@ -158,24 +203,52 @@ declare function prerenderPage(pageContext: PageContextCreated & PageConfigsLazy
|
|
|
158
203
|
url?: string;
|
|
159
204
|
headers?: Record<string, string>;
|
|
160
205
|
} & {
|
|
161
|
-
_globalContext: {
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
206
|
+
_globalContext: ({
|
|
207
|
+
_globalConfigPublic: {
|
|
208
|
+
pages: {
|
|
209
|
+
[k: string]: {
|
|
210
|
+
config: import("../../../types/index.js").ConfigResolved;
|
|
211
|
+
_source: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Source;
|
|
212
|
+
_sources: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Sources;
|
|
213
|
+
_from: import("../../../shared/page-configs/resolveVikeConfigPublic.js").From;
|
|
214
|
+
} & ({
|
|
215
|
+
route: import("../../../types/Config.js").Route;
|
|
216
|
+
isErrorPage?: undefined;
|
|
217
|
+
} | {
|
|
218
|
+
route?: undefined;
|
|
219
|
+
isErrorPage: true;
|
|
220
|
+
});
|
|
221
|
+
};
|
|
170
222
|
config: import("../../../types/index.js").ConfigResolved;
|
|
171
223
|
_source: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Source;
|
|
172
224
|
_sources: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Sources;
|
|
173
225
|
_from: import("../../../shared/page-configs/resolveVikeConfigPublic.js").From;
|
|
174
226
|
};
|
|
175
|
-
config: import("../../../types/index.js").ConfigResolved;
|
|
176
227
|
pages: {
|
|
177
|
-
[k: string]:
|
|
228
|
+
[k: string]: {
|
|
229
|
+
config: import("../../../types/index.js").ConfigResolved;
|
|
230
|
+
_source: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Source;
|
|
231
|
+
_sources: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Sources;
|
|
232
|
+
_from: import("../../../shared/page-configs/resolveVikeConfigPublic.js").From;
|
|
233
|
+
} & ({
|
|
234
|
+
route: import("../../../types/Config.js").Route;
|
|
235
|
+
isErrorPage?: undefined;
|
|
236
|
+
} | {
|
|
237
|
+
route?: undefined;
|
|
238
|
+
isErrorPage: true;
|
|
239
|
+
});
|
|
178
240
|
};
|
|
241
|
+
config: import("../../../types/index.js").ConfigResolved;
|
|
242
|
+
_source: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Source;
|
|
243
|
+
_sources: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Sources;
|
|
244
|
+
_from: import("../../../shared/page-configs/resolveVikeConfigPublic.js").From;
|
|
245
|
+
isGlobalContext: true;
|
|
246
|
+
_isOriginalObject: true;
|
|
247
|
+
_virtualFileExportsGlobalEntry: unknown;
|
|
248
|
+
_pageFilesAll: import("../../../shared/getPageFiles.js").PageFile[];
|
|
249
|
+
_pageConfigs: import("../../../types/PageConfig.js").PageConfigRuntime[];
|
|
250
|
+
_pageConfigGlobal: import("../../../types/PageConfig.js").PageConfigGlobalRuntime;
|
|
251
|
+
_allPageIds: string[];
|
|
179
252
|
} & (({
|
|
180
253
|
_isProduction: false;
|
|
181
254
|
_isPrerendering: false;
|
|
@@ -218,7 +291,9 @@ declare function prerenderPage(pageContext: PageContextCreated & PageConfigsLazy
|
|
|
218
291
|
inject: boolean | undefined;
|
|
219
292
|
};
|
|
220
293
|
};
|
|
221
|
-
})
|
|
294
|
+
})) & {
|
|
295
|
+
prerenderContext: import("../../prerender/runPrerender.js").PrerenderContextPublic | undefined;
|
|
296
|
+
};
|
|
222
297
|
_pageFilesAll: import("../../../shared/getPageFiles.js").PageFile[];
|
|
223
298
|
_baseServer: string;
|
|
224
299
|
_baseAssets: string;
|
|
@@ -227,6 +302,20 @@ declare function prerenderPage(pageContext: PageContextCreated & PageConfigsLazy
|
|
|
227
302
|
_urlHandler: ((url: string) => string) | null;
|
|
228
303
|
isClientSideNavigation: boolean;
|
|
229
304
|
} & {
|
|
305
|
+
pages: {
|
|
306
|
+
[k: string]: {
|
|
307
|
+
config: import("../../../types/index.js").ConfigResolved;
|
|
308
|
+
_source: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Source;
|
|
309
|
+
_sources: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Sources;
|
|
310
|
+
_from: import("../../../shared/page-configs/resolveVikeConfigPublic.js").From;
|
|
311
|
+
} & ({
|
|
312
|
+
route: import("../../../types/Config.js").Route;
|
|
313
|
+
isErrorPage?: undefined;
|
|
314
|
+
} | {
|
|
315
|
+
route?: undefined;
|
|
316
|
+
isErrorPage: true;
|
|
317
|
+
});
|
|
318
|
+
};
|
|
230
319
|
config: import("../../../types/index.js").ConfigResolved;
|
|
231
320
|
_source: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Source;
|
|
232
321
|
_sources: import("../../../shared/page-configs/resolveVikeConfigPublic.js").Sources;
|
|
@@ -242,14 +331,15 @@ declare function prerenderPage(pageContext: PageContextCreated & PageConfigsLazy
|
|
|
242
331
|
pageId: string;
|
|
243
332
|
} & {
|
|
244
333
|
_pageConfig: import("../../../types/PageConfig.js").PageConfigRuntime | null;
|
|
245
|
-
} & {
|
|
246
|
-
_pageConfig: null | import("../../../types/PageConfig.js").PageConfigRuntime;
|
|
247
|
-
} & import("../../../shared/getPageFiles.js").VikeConfigPublicPageLazyLoaded & {
|
|
334
|
+
} & import("../../../shared/getPageFiles.js").PageContextConfig & {
|
|
248
335
|
_pageConfig: null | import("../../../types/PageConfig.js").PageConfigRuntime;
|
|
336
|
+
} & {
|
|
337
|
+
cspNonce: string | null;
|
|
249
338
|
} & {
|
|
250
339
|
Page: unknown;
|
|
251
340
|
_isHtmlOnly: boolean;
|
|
252
|
-
_passToClient: import("
|
|
341
|
+
_passToClient: import("./html/serializeContext.js").PassToClient;
|
|
342
|
+
} & {
|
|
253
343
|
headersResponse: Headers;
|
|
254
344
|
} & {
|
|
255
345
|
__getPageAssets: () => Promise<import("./getPageAssets.js").PageAsset[]>;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export { renderPageAfterRoute };
|
|
2
2
|
export { prerenderPage };
|
|
3
3
|
import { getErrorPageId } from '../../../shared/error-page.js';
|
|
4
|
-
import { getHtmlString } from '
|
|
4
|
+
import { getHtmlString } from './html/renderHtml.js';
|
|
5
5
|
import { assert, assertUsage, updateType, hasProp, objectAssign } from '../utils.js';
|
|
6
|
-
import { getPageContextClientSerialized } from '
|
|
6
|
+
import { getPageContextClientSerialized } from './html/serializeContext.js';
|
|
7
7
|
import { createHttpResponsePage, createHttpResponsePageContextJson } from './createHttpResponse.js';
|
|
8
8
|
import { loadPageConfigsLazyServerSide, } from './loadPageConfigsLazyServerSide.js';
|
|
9
9
|
import { execHookOnRenderHtml } from './execHookOnRenderHtml.js';
|
|
@@ -31,24 +31,52 @@ declare function getPageContextBegin(pageContextInit: PageContextInit, globalCon
|
|
|
31
31
|
/** @deprecated Set `pageContextInit.urlOriginal` instead */ url?: string;
|
|
32
32
|
/** @deprecated Set pageContextInit.headersOriginal instead */ headers?: Record<string, string>;
|
|
33
33
|
} & {
|
|
34
|
-
_globalContext: {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
34
|
+
_globalContext: ({
|
|
35
|
+
_globalConfigPublic: {
|
|
36
|
+
pages: {
|
|
37
|
+
[k: string]: {
|
|
38
|
+
config: import("../../types/index.js").ConfigResolved;
|
|
39
|
+
_source: import("../../shared/page-configs/resolveVikeConfigPublic.js").Source;
|
|
40
|
+
_sources: import("../../shared/page-configs/resolveVikeConfigPublic.js").Sources;
|
|
41
|
+
_from: import("../../shared/page-configs/resolveVikeConfigPublic.js").From;
|
|
42
|
+
} & ({
|
|
43
|
+
route: import("../../types/Config.js").Route;
|
|
44
|
+
isErrorPage?: undefined;
|
|
45
|
+
} | {
|
|
46
|
+
route?: undefined;
|
|
47
|
+
isErrorPage: true;
|
|
48
|
+
});
|
|
49
|
+
};
|
|
43
50
|
config: import("../../types/index.js").ConfigResolved;
|
|
44
51
|
_source: import("../../shared/page-configs/resolveVikeConfigPublic.js").Source;
|
|
45
52
|
_sources: import("../../shared/page-configs/resolveVikeConfigPublic.js").Sources;
|
|
46
53
|
_from: import("../../shared/page-configs/resolveVikeConfigPublic.js").From;
|
|
47
54
|
};
|
|
48
|
-
config: import("../../types/index.js").ConfigResolved;
|
|
49
55
|
pages: {
|
|
50
|
-
[k: string]:
|
|
56
|
+
[k: string]: {
|
|
57
|
+
config: import("../../types/index.js").ConfigResolved;
|
|
58
|
+
_source: import("../../shared/page-configs/resolveVikeConfigPublic.js").Source;
|
|
59
|
+
_sources: import("../../shared/page-configs/resolveVikeConfigPublic.js").Sources;
|
|
60
|
+
_from: import("../../shared/page-configs/resolveVikeConfigPublic.js").From;
|
|
61
|
+
} & ({
|
|
62
|
+
route: import("../../types/Config.js").Route;
|
|
63
|
+
isErrorPage?: undefined;
|
|
64
|
+
} | {
|
|
65
|
+
route?: undefined;
|
|
66
|
+
isErrorPage: true;
|
|
67
|
+
});
|
|
51
68
|
};
|
|
69
|
+
config: import("../../types/index.js").ConfigResolved;
|
|
70
|
+
_source: import("../../shared/page-configs/resolveVikeConfigPublic.js").Source;
|
|
71
|
+
_sources: import("../../shared/page-configs/resolveVikeConfigPublic.js").Sources;
|
|
72
|
+
_from: import("../../shared/page-configs/resolveVikeConfigPublic.js").From;
|
|
73
|
+
isGlobalContext: true;
|
|
74
|
+
_isOriginalObject: true;
|
|
75
|
+
_virtualFileExportsGlobalEntry: unknown;
|
|
76
|
+
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
77
|
+
_pageConfigs: import("../../types/PageConfig.js").PageConfigRuntime[];
|
|
78
|
+
_pageConfigGlobal: import("../../types/PageConfig.js").PageConfigGlobalRuntime;
|
|
79
|
+
_allPageIds: string[];
|
|
52
80
|
} & (({
|
|
53
81
|
_isProduction: false;
|
|
54
82
|
_isPrerendering: false;
|
|
@@ -91,7 +119,9 @@ declare function getPageContextBegin(pageContextInit: PageContextInit, globalCon
|
|
|
91
119
|
inject: boolean | undefined;
|
|
92
120
|
};
|
|
93
121
|
};
|
|
94
|
-
})
|
|
122
|
+
})) & {
|
|
123
|
+
prerenderContext: import("../prerender/runPrerender.js").PrerenderContextPublic | undefined;
|
|
124
|
+
};
|
|
95
125
|
_pageFilesAll: import("../../shared/getPageFiles.js").PageFile[];
|
|
96
126
|
_baseServer: string;
|
|
97
127
|
_baseAssets: string;
|
|
@@ -100,6 +130,20 @@ declare function getPageContextBegin(pageContextInit: PageContextInit, globalCon
|
|
|
100
130
|
_urlHandler: ((url: string) => string) | null;
|
|
101
131
|
isClientSideNavigation: boolean;
|
|
102
132
|
} & {
|
|
133
|
+
pages: {
|
|
134
|
+
[k: string]: {
|
|
135
|
+
config: import("../../types/index.js").ConfigResolved;
|
|
136
|
+
_source: import("../../shared/page-configs/resolveVikeConfigPublic.js").Source;
|
|
137
|
+
_sources: import("../../shared/page-configs/resolveVikeConfigPublic.js").Sources;
|
|
138
|
+
_from: import("../../shared/page-configs/resolveVikeConfigPublic.js").From;
|
|
139
|
+
} & ({
|
|
140
|
+
route: import("../../types/Config.js").Route;
|
|
141
|
+
isErrorPage?: undefined;
|
|
142
|
+
} | {
|
|
143
|
+
route?: undefined;
|
|
144
|
+
isErrorPage: true;
|
|
145
|
+
});
|
|
146
|
+
};
|
|
103
147
|
config: import("../../types/index.js").ConfigResolved;
|
|
104
148
|
_source: import("../../shared/page-configs/resolveVikeConfigPublic.js").Source;
|
|
105
149
|
_sources: import("../../shared/page-configs/resolveVikeConfigPublic.js").Sources;
|
|
@@ -13,7 +13,7 @@ import { isNewError } from './renderPage/isNewError.js';
|
|
|
13
13
|
import { assertArguments } from './renderPage/assertArguments.js';
|
|
14
14
|
import { log404 } from './renderPage/log404/index.js';
|
|
15
15
|
import pc from '@brillout/picocolors';
|
|
16
|
-
import { getPageContextClientSerializedAbort, getPageContextClientSerialized } from './html/serializeContext.js';
|
|
16
|
+
import { getPageContextClientSerializedAbort, getPageContextClientSerialized, } from './renderPage/html/serializeContext.js';
|
|
17
17
|
import { getErrorPageId } from '../../shared/error-page.js';
|
|
18
18
|
import { handleErrorWithoutErrorPage } from './renderPage/handleErrorWithoutErrorPage.js';
|
|
19
19
|
import { loadPageConfigsLazyServerSide } from './renderPage/loadPageConfigsLazyServerSide.js';
|
|
@@ -13,7 +13,7 @@ function onLoad() {
|
|
|
13
13
|
// TO-DO/eventually: let's also use this.meta.viteVersion
|
|
14
14
|
// - https://github.com/vitejs/vite/pull/20088
|
|
15
15
|
// - https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md#700-2025-06-24
|
|
16
|
-
assertVersion('Vite', version, '6.
|
|
16
|
+
assertVersion('Vite', version, ['6.3.0']);
|
|
17
17
|
// Ensure we don't bloat the server runtime with heavy dependencies such Vite and esbuild
|
|
18
18
|
assertIsNotProductionRuntime();
|
|
19
19
|
}
|
|
@@ -7,35 +7,39 @@ function pluginBaseUrls() {
|
|
|
7
7
|
return {
|
|
8
8
|
name: 'vike:pluginBaseUrls',
|
|
9
9
|
enforce: 'post',
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
10
|
+
config: {
|
|
11
|
+
async handler(config) {
|
|
12
|
+
const isDev = config._isDev;
|
|
13
|
+
assert(typeof isDev === 'boolean');
|
|
14
|
+
const baseViteOriginal = config.base ?? '/__UNSET__'; // '/__UNSET__' because Vite resolves `_baseViteOriginal: null` to `undefined`
|
|
15
|
+
const vikeConfig = await getVikeConfigInternal();
|
|
16
|
+
basesResolved = resolveBase(baseViteOriginal, vikeConfig.config.baseServer ?? null, vikeConfig.config.baseAssets ?? null);
|
|
17
|
+
// We cannot define these in configResolved() because Vite picks up the env variables before any configResolved() hook is called
|
|
18
|
+
process.env.BASE_SERVER = basesResolved.baseServer;
|
|
19
|
+
process.env.BASE_ASSETS = basesResolved.baseAssets;
|
|
20
|
+
return {
|
|
21
|
+
envPrefix: [
|
|
22
|
+
'VITE_', // Vite doesn't seem to merge in its default, see https://github.com/vikejs/vike/issues/554
|
|
23
|
+
'BASE_SERVER',
|
|
24
|
+
'BASE_ASSETS',
|
|
25
|
+
],
|
|
26
|
+
base: basesResolved.baseAssets, // Make Vite inject baseAssets to imports e.g. `import logoUrl from './logo.svg.js'`
|
|
27
|
+
_baseViteOriginal: baseViteOriginal,
|
|
28
|
+
};
|
|
29
|
+
},
|
|
28
30
|
},
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
31
|
+
configResolved: {
|
|
32
|
+
async handler(config) {
|
|
33
|
+
const vikeConfig = await getVikeConfigInternal();
|
|
34
|
+
const basesResolved2 = resolveBaseFromResolvedConfig(vikeConfig.config.baseServer ?? null, vikeConfig.config.baseAssets ?? null, config);
|
|
35
|
+
assert(basesResolved2.baseServer === basesResolved.baseServer);
|
|
36
|
+
assert(basesResolved2.baseAssets === basesResolved.baseAssets);
|
|
37
|
+
/* In dev, Vite seems buggy around setting vite.config.js#base to an absolute URL (e.g. http://localhost:8080/cdn/)
|
|
38
|
+
* - In dev, Vite removes the URL origin. (I.e. it resolves the user config `vite.config.js#base: 'http://localhost:8080/cdn/'` to resolved config `config.base === '/cdn/'`.)
|
|
39
|
+
* - Instead of having an internal Vike assertion fail, we let the user discover Vite's buggy behavior.
|
|
40
|
+
assert(config.base === baseAssets)
|
|
41
|
+
*/
|
|
42
|
+
},
|
|
39
43
|
},
|
|
40
44
|
};
|
|
41
45
|
}
|
|
@@ -19,7 +19,7 @@ import { getManifestFilePathRelative } from '../../shared/getManifestFilePathRel
|
|
|
19
19
|
const globalObject = getGlobalObject('build/handleAssetsManifest.ts', {
|
|
20
20
|
assetsJsonFilePath: undefined,
|
|
21
21
|
});
|
|
22
|
-
//
|
|
22
|
+
// yes => use workaround config.build.ssrEmitAssets
|
|
23
23
|
// false => use workaround extractAssets plugin
|
|
24
24
|
function handleAssetsManifest_isFixEnabled() {
|
|
25
25
|
// Allow user to toggle between the two workarounds? E.g. based on https://vike.dev/includeAssetsImportedByServer.
|
|
@@ -46,35 +46,39 @@ function pluginBuildApp() {
|
|
|
46
46
|
{
|
|
47
47
|
name: 'vike:build:pluginBuildApp',
|
|
48
48
|
apply: 'build',
|
|
49
|
-
config
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
49
|
+
config: {
|
|
50
|
+
handler(config) {
|
|
51
|
+
return {
|
|
52
|
+
environments: {
|
|
53
|
+
ssr: {
|
|
54
|
+
consumer: 'server',
|
|
55
|
+
build: {
|
|
56
|
+
outDir: resolveOutDir(config, true),
|
|
57
|
+
ssr: true,
|
|
58
|
+
},
|
|
57
59
|
},
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
60
|
+
client: {
|
|
61
|
+
consumer: 'client',
|
|
62
|
+
build: {
|
|
63
|
+
outDir: resolveOutDir(config, false),
|
|
64
|
+
copyPublicDir: true,
|
|
65
|
+
ssr: false,
|
|
66
|
+
},
|
|
65
67
|
},
|
|
66
68
|
},
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
+
};
|
|
70
|
+
},
|
|
69
71
|
},
|
|
70
72
|
},
|
|
71
73
|
{
|
|
72
74
|
name: 'vike:build:pluginBuildApp:autoFullBuild:pre',
|
|
73
75
|
apply: 'build',
|
|
74
76
|
enforce: 'pre',
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
77
|
+
configResolved: {
|
|
78
|
+
async handler(config_) {
|
|
79
|
+
config = config_;
|
|
80
|
+
await abortViteBuildSsr();
|
|
81
|
+
},
|
|
78
82
|
},
|
|
79
83
|
// TO-DO/eventually: stop using this writeBundle() hack and, instead, use the buildApp() implementation above.
|
|
80
84
|
// - Could it cause issues if a tool uses the writeBundle() hack together with getVikeConfig() ?
|