Files
klz-cables.com/.pnpm-store/v10/files/4f/fb8a44cab9cf7db52682a52d95bb5cfd424820c1a60b513526f2d8ff7ee3d3f3ac9d597fda41b850437bf56476787aa5558e274442d227c4c4ab7d248bb443
Marc Mintel 5397309103
Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 20s
Build & Deploy / 🧪 QA (push) Failing after 34s
Build & Deploy / 🏗️ Build (push) Has started running
Build & Deploy / 🚀 Deploy (push) Has been cancelled
Build & Deploy / 🧪 Smoke Test (push) Has been cancelled
Build & Deploy / ⚡ Lighthouse (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled
fix(products): fix breadcrumbs and product filtering (backport from main)
2026-02-24 16:04:21 +01:00

41 lines
1.8 KiB
Plaintext

export const headersWithCors = ({ headers, req })=>{
const cors = req?.payload?.config.cors;
const requestOrigin = req?.headers?.get('Origin');
if (cors) {
const defaultAllowedHeaders = [
'Origin',
'X-Requested-With',
'Content-Type',
'Accept',
'Authorization',
'Content-Encoding',
'x-apollo-tracing',
'X-Payload-HTTP-Method-Override'
];
// Only set default CORS headers if they haven't been set by custom handler
if (!headers.has('Access-Control-Allow-Methods')) {
headers.set('Access-Control-Allow-Methods', 'PUT, PATCH, POST, GET, DELETE, OPTIONS');
}
if (!headers.has('Access-Control-Allow-Headers')) {
if (typeof cors === 'object' && 'headers' in cors) {
headers.set('Access-Control-Allow-Headers', [
...defaultAllowedHeaders,
...cors.headers
].filter(Boolean).join(', '));
} else {
headers.set('Access-Control-Allow-Headers', defaultAllowedHeaders.join(', '));
}
}
if (!headers.has('Access-Control-Allow-Origin')) {
if (cors === '*' || typeof cors === 'object' && 'origins' in cors && cors.origins === '*') {
headers.set('Access-Control-Allow-Origin', '*');
} else if (Array.isArray(cors) && cors.indexOf(requestOrigin) > -1 || !Array.isArray(cors) && typeof cors === 'object' && 'origins' in cors && cors.origins.indexOf(requestOrigin) > -1) {
headers.set('Access-Control-Allow-Credentials', 'true');
headers.set('Access-Control-Allow-Origin', requestOrigin);
}
}
}
return headers;
};
//# sourceMappingURL=headersWithCors.js.map