Streamline nextimageurl signatures
This commit is contained in:
parent
1ff7404f6e
commit
fd89e2b48a
@ -36,8 +36,8 @@ export const formatPhotoForApi = (photo: Photo): PublicApiPhoto => ({
|
||||
...photo.tags.length > 0 && { tags: photo.tags },
|
||||
takenAtNaive: formatDateFromPostgresString(photo.takenAtNaive),
|
||||
src: {
|
||||
small: getNextImageUrlForRequest(photo.url, 200),
|
||||
medium: getNextImageUrlForRequest(photo.url, 640),
|
||||
large: getNextImageUrlForRequest(photo.url, 1200),
|
||||
small: getNextImageUrlForRequest({ imageUrl: photo.url, size: 200 }),
|
||||
medium: getNextImageUrlForRequest({ imageUrl: photo.url, size: 640 }),
|
||||
large: getNextImageUrlForRequest({ imageUrl: photo.url, size: 1200 }),
|
||||
},
|
||||
});
|
||||
|
||||
@ -69,13 +69,11 @@ export default function ImagePhotoGrid({
|
||||
}}
|
||||
>
|
||||
<img {...{
|
||||
src: getNextImageUrlForRequest(
|
||||
url,
|
||||
nextImageWidth,
|
||||
undefined,
|
||||
undefined,
|
||||
IS_PREVIEW,
|
||||
),
|
||||
src: getNextImageUrlForRequest({
|
||||
imageUrl: url,
|
||||
size: nextImageWidth,
|
||||
addBypassSecret: IS_PREVIEW,
|
||||
}),
|
||||
style: {
|
||||
...imageStyle,
|
||||
width: '100%',
|
||||
|
||||
@ -321,13 +321,11 @@ export const getKeywordsForPhoto = (photo: Photo) =>
|
||||
export const isNextImageReadyBasedOnPhotos = async (
|
||||
photos: Photo[],
|
||||
): Promise<boolean> =>
|
||||
photos.length > 0 && fetch(getNextImageUrlForRequest(
|
||||
photos[0].url,
|
||||
640,
|
||||
undefined,
|
||||
undefined,
|
||||
IS_PREVIEW,
|
||||
))
|
||||
photos.length > 0 && fetch(getNextImageUrlForRequest({
|
||||
imageUrl: photos[0].url,
|
||||
size: 640,
|
||||
addBypassSecret: IS_PREVIEW,
|
||||
}))
|
||||
.then(response => response.ok)
|
||||
.catch(() => false);
|
||||
|
||||
|
||||
@ -14,13 +14,19 @@ export type NextImageSize = NextCustomSize | NextImageDeviceSize;
|
||||
|
||||
export const MAX_IMAGE_SIZE: NextImageSize = 3840;
|
||||
|
||||
export const getNextImageUrlForRequest = (
|
||||
imageUrl: string,
|
||||
size: NextImageSize,
|
||||
export const getNextImageUrlForRequest = ({
|
||||
imageUrl,
|
||||
size,
|
||||
quality = IMAGE_QUALITY,
|
||||
baseUrl = BASE_URL,
|
||||
addBypassSecret = false,
|
||||
) => {
|
||||
addBypassSecret,
|
||||
}: {
|
||||
imageUrl: string
|
||||
size: NextImageSize
|
||||
quality?: number
|
||||
baseUrl?: string
|
||||
addBypassSecret?: boolean
|
||||
}) => {
|
||||
const url = new URL(`${baseUrl}/_next/image`);
|
||||
|
||||
url.searchParams.append('url', imageUrl);
|
||||
@ -38,6 +44,10 @@ export const getNextImageUrlForRequest = (
|
||||
// generating blur data or image thumbnails for AI text generation
|
||||
export const getNextImageUrlForManipulation = (
|
||||
imageUrl: string,
|
||||
addBypassSecret = false,
|
||||
addBypassSecret: boolean,
|
||||
) =>
|
||||
getNextImageUrlForRequest(imageUrl, 640, 90, undefined, addBypassSecret);
|
||||
getNextImageUrlForRequest({
|
||||
imageUrl,
|
||||
size: 640,
|
||||
addBypassSecret,
|
||||
});
|
||||
|
||||
Loading…
Reference in New Issue
Block a user