feat(SW-2541): Adjust for ImageVault custom field return types changes

Approved-by: Bianca Widstam
Approved-by: Matilda Landström
This commit is contained in:
Erik Tiekstra
2025-09-10 08:57:49 +00:00
parent ddd4b7c531
commit 15711cb3a4
47 changed files with 388 additions and 458 deletions

View File

@@ -15,9 +15,14 @@ import {
import styles from './jsontohtml.module.css'
import { insertResponseToImageVaultAsset } from './insertResponseToImageVaultAsset'
import {
DeprecatedImageVaultAssetResponse,
ImageVaultAssetResponse,
mapImageVaultAssetResponseToImageVaultAsset,
mapInsertResponseToImageVaultAsset,
} from '@scandic-hotels/common/utils/imageVault'
import type { EmbedByUid } from './JsonToHtml'
import type { Attributes, RTEImageVaultAttrs } from './types/rte/attrs'
import type { Attributes } from './types/rte/attrs'
import {
AvailableParagraphFormatEnum,
RTEItemTypeEnum,
@@ -478,13 +483,26 @@ export const renderOptions: RenderOptions = {
return null
}
const attrs = node.attrs as RTEImageVaultAttrs
const image =
'dimensions' in attrs ? attrs : insertResponseToImageVaultAsset(attrs)
let image = undefined
if ('imageVaultId' in node.attrs && 'fileName' in node.attrs) {
image = mapImageVaultAssetResponseToImageVaultAsset(
node.attrs as unknown as ImageVaultAssetResponse
)
}
if ('Name' in node.attrs && 'Id' in node.attrs) {
image = mapInsertResponseToImageVaultAsset(
node.attrs as unknown as DeprecatedImageVaultAssetResponse
)
}
if (!image) {
return null
}
const alt = image.meta.alt ?? image.title
const caption = image.meta.caption
const { className, ...props } = extractPossibleAttributes(attrs)
const { className, ...props } = extractPossibleAttributes(node.attrs)
return (
<div key={node.uid} className={styles.imageWithCaption}>
<div className={styles.imageWrapper}>