Vercel/src/utility/image.ts
Sam Becker df11a86181 Init
2023-09-05 09:00:57 -05:00

22 lines
556 B
TypeScript

export const getNextImageUrlForRequest = (
imageUrl: string,
request: Request,
width: number,
quality = 75,
) => {
const protocol = (request.headers.get('x-forwarded-proto') || 'https')
.split(',')[0];
const host = (
request.headers.get('x-forwarded-host') ||
request.headers.get('host')
);
const url = new URL(`${protocol}://${host}/_next/image`);
url.searchParams.append('url', imageUrl);
url.searchParams.append('w', width.toString());
url.searchParams.append('q', quality.toString());
return url.toString();
};