vike 0.4.238-commit-5762291 → 0.4.238-commit-3c1a09d
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/runtime/renderPage/loadPageConfigsLazyServerSide.js +14 -7
- package/dist/cjs/utils/PROJECT_VERSION.js +1 -1
- package/dist/esm/node/runtime/renderPage/loadPageConfigsLazyServerSide.js +15 -8
- package/dist/esm/types/Config.d.ts +2 -2
- package/dist/esm/utils/PROJECT_VERSION.d.ts +1 -1
- package/dist/esm/utils/PROJECT_VERSION.js +1 -1
- package/package.json +1 -1
|
@@ -61,7 +61,7 @@ async function resolvePageContext(pageContext) {
|
|
|
61
61
|
Page: pageContext.exports.Page,
|
|
62
62
|
_isHtmlOnly: isHtmlOnly,
|
|
63
63
|
_passToClient: passToClient,
|
|
64
|
-
headersResponse: resolveHeadersResponse(pageContext),
|
|
64
|
+
headersResponse: await resolveHeadersResponse(pageContext),
|
|
65
65
|
});
|
|
66
66
|
(0, utils_js_1.objectAssign)(pageContext, {
|
|
67
67
|
__getPageAssets: async () => {
|
|
@@ -128,8 +128,8 @@ async function loadPageUserFiles_v1Design(pageContext) {
|
|
|
128
128
|
};
|
|
129
129
|
}
|
|
130
130
|
// TODO/now: move all response headers code to headersResponse.ts
|
|
131
|
-
function resolveHeadersResponse(pageContext) {
|
|
132
|
-
const headersResponse = mergeHeaders(pageContext
|
|
131
|
+
async function resolveHeadersResponse(pageContext) {
|
|
132
|
+
const headersResponse = await mergeHeaders(pageContext);
|
|
133
133
|
if (!headersResponse.get('Cache-Control')) {
|
|
134
134
|
const cacheControl = (0, getCacheControl_js_1.getCacheControl)(pageContext.pageId, pageContext._globalContext._pageConfigs);
|
|
135
135
|
if (cacheControl)
|
|
@@ -138,12 +138,19 @@ function resolveHeadersResponse(pageContext) {
|
|
|
138
138
|
(0, csp_js_1.addCspHeader)(pageContext, headersResponse);
|
|
139
139
|
return headersResponse;
|
|
140
140
|
}
|
|
141
|
-
function mergeHeaders(
|
|
141
|
+
async function mergeHeaders(pageContext) {
|
|
142
142
|
const headersMerged = new Headers();
|
|
143
|
-
|
|
144
|
-
|
|
143
|
+
await Promise.all((pageContext.config.headersResponse ?? []).map(async (headers) => {
|
|
144
|
+
let headersInit;
|
|
145
|
+
if ((0, utils_js_1.isCallable)(headers)) {
|
|
146
|
+
headersInit = await headers(pageContext);
|
|
147
|
+
}
|
|
148
|
+
else {
|
|
149
|
+
headersInit = headers;
|
|
150
|
+
}
|
|
151
|
+
new Headers(headersInit).forEach((value, key) => {
|
|
145
152
|
headersMerged.append(key, value);
|
|
146
153
|
});
|
|
147
|
-
});
|
|
154
|
+
}));
|
|
148
155
|
return headersMerged;
|
|
149
156
|
}
|
|
@@ -2,7 +2,7 @@ export { loadPageConfigsLazyServerSide };
|
|
|
2
2
|
import { getPageFilesServerSide } from '../../../shared/getPageFiles.js';
|
|
3
3
|
import { resolveVikeConfigPublicPageLazyLoaded } from '../../../shared/page-configs/resolveVikeConfigPublic.js';
|
|
4
4
|
import { analyzePageClientSideInit } from '../../../shared/getPageFiles/analyzePageClientSide.js';
|
|
5
|
-
import { assertUsage, assertWarning, hasProp, isArray, isObject, objectAssign, updateType, } from '../utils.js';
|
|
5
|
+
import { assertUsage, assertWarning, hasProp, isArray, isCallable, isObject, objectAssign, updateType, } from '../utils.js';
|
|
6
6
|
import { getPageAssets } from './getPageAssets.js';
|
|
7
7
|
import { findPageConfig } from '../../../shared/page-configs/findPageConfig.js';
|
|
8
8
|
import { analyzePage } from './analyzePage.js';
|
|
@@ -59,7 +59,7 @@ async function resolvePageContext(pageContext) {
|
|
|
59
59
|
Page: pageContext.exports.Page,
|
|
60
60
|
_isHtmlOnly: isHtmlOnly,
|
|
61
61
|
_passToClient: passToClient,
|
|
62
|
-
headersResponse: resolveHeadersResponse(pageContext),
|
|
62
|
+
headersResponse: await resolveHeadersResponse(pageContext),
|
|
63
63
|
});
|
|
64
64
|
objectAssign(pageContext, {
|
|
65
65
|
__getPageAssets: async () => {
|
|
@@ -126,8 +126,8 @@ async function loadPageUserFiles_v1Design(pageContext) {
|
|
|
126
126
|
};
|
|
127
127
|
}
|
|
128
128
|
// TODO/now: move all response headers code to headersResponse.ts
|
|
129
|
-
function resolveHeadersResponse(pageContext) {
|
|
130
|
-
const headersResponse = mergeHeaders(pageContext
|
|
129
|
+
async function resolveHeadersResponse(pageContext) {
|
|
130
|
+
const headersResponse = await mergeHeaders(pageContext);
|
|
131
131
|
if (!headersResponse.get('Cache-Control')) {
|
|
132
132
|
const cacheControl = getCacheControl(pageContext.pageId, pageContext._globalContext._pageConfigs);
|
|
133
133
|
if (cacheControl)
|
|
@@ -136,12 +136,19 @@ function resolveHeadersResponse(pageContext) {
|
|
|
136
136
|
addCspHeader(pageContext, headersResponse);
|
|
137
137
|
return headersResponse;
|
|
138
138
|
}
|
|
139
|
-
function mergeHeaders(
|
|
139
|
+
async function mergeHeaders(pageContext) {
|
|
140
140
|
const headersMerged = new Headers();
|
|
141
|
-
|
|
142
|
-
|
|
141
|
+
await Promise.all((pageContext.config.headersResponse ?? []).map(async (headers) => {
|
|
142
|
+
let headersInit;
|
|
143
|
+
if (isCallable(headers)) {
|
|
144
|
+
headersInit = await headers(pageContext);
|
|
145
|
+
}
|
|
146
|
+
else {
|
|
147
|
+
headersInit = headers;
|
|
148
|
+
}
|
|
149
|
+
new Headers(headersInit).forEach((value, key) => {
|
|
143
150
|
headersMerged.append(key, value);
|
|
144
151
|
});
|
|
145
|
-
});
|
|
152
|
+
}));
|
|
146
153
|
return headersMerged;
|
|
147
154
|
}
|
|
@@ -445,7 +445,7 @@ type ConfigBuiltIn = {
|
|
|
445
445
|
*
|
|
446
446
|
* https://vike.dev/headers#response
|
|
447
447
|
*/
|
|
448
|
-
headersResponse?: HeadersInit;
|
|
448
|
+
headersResponse?: HeadersInit | ((pageContext: PageContextServer) => HeadersInit | Promise<HeadersInit>);
|
|
449
449
|
/**
|
|
450
450
|
* Make development/preview server available over LAN and public addresses.
|
|
451
451
|
*
|
|
@@ -507,7 +507,7 @@ type ConfigBuiltInResolved = {
|
|
|
507
507
|
redirects?: Record<string, string>[];
|
|
508
508
|
prerender?: Exclude<Config['prerender'], ImportString | undefined>[];
|
|
509
509
|
middleware?: Function[];
|
|
510
|
-
headersResponse?:
|
|
510
|
+
headersResponse?: Exclude<Config['headersResponse'], ImportString | undefined>[];
|
|
511
511
|
};
|
|
512
512
|
type ConfigMeta = Record<string, ConfigDefinition>;
|
|
513
513
|
type ImportString = `import:${string}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const PROJECT_VERSION: "0.4.238-commit-
|
|
1
|
+
export declare const PROJECT_VERSION: "0.4.238-commit-3c1a09d";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// Automatically updated by @brillout/release-me
|
|
2
|
-
export const PROJECT_VERSION = '0.4.238-commit-
|
|
2
|
+
export const PROJECT_VERSION = '0.4.238-commit-3c1a09d';
|