Files
web/apps/scandic-web/utils/imageGallery.ts
Matilda Landström 9679212864 Merged in feat/SW-1956-add-English-caption-fallback (pull request #2574)
Feat/SW-1956 add English caption fallback

* feat(SW-1956): add English fallback to gallery caption

* feat(SW-1956): add English fallback to gallery caption


Approved-by: Anton Gunnarsson
2025-07-29 06:12:57 +00:00

40 lines
1.1 KiB
TypeScript

import type { ApiImage } from "@scandic-hotels/trpc/types/hotel"
import type { ImageVaultAsset } from "@scandic-hotels/trpc/types/imageVault"
import type { GalleryImage } from "@/types/components/imageGallery"
function mapApiImageToGalleryImage(apiImage: ApiImage): GalleryImage {
return {
src: apiImage.imageSizes.medium,
alt:
apiImage.metaData.altText ||
apiImage.metaData.altText_En ||
apiImage.metaData.title ||
apiImage.metaData.title_En,
caption: apiImage.metaData.title || apiImage.metaData.title_En,
smallSrc: apiImage.imageSizes.small,
}
}
export function mapApiImagesToGalleryImages(
apiImages: ApiImage[]
): GalleryImage[] {
return apiImages.map(mapApiImageToGalleryImage)
}
function mapImageVaultImageToGalleryImage(
imageVaultImage: ImageVaultAsset
): GalleryImage {
return {
src: imageVaultImage.url,
alt: imageVaultImage.meta.alt || imageVaultImage.meta.caption || "",
caption: imageVaultImage.meta.caption,
}
}
export function mapImageVaultImagesToGalleryImages(
imageVaultImages: ImageVaultAsset[]
): GalleryImage[] {
return imageVaultImages.map(mapImageVaultImageToGalleryImage)
}