Files
mtdb_movie/resources/client/admin/channels/channel-content-item-image.tsx
maher 703f50a09d
Some checks failed
Build / run (push) Has been cancelled
first commit
2025-10-29 11:42:25 +01:00

25 lines
721 B
TypeScript
Executable File

import {NormalizedModel} from '@common/datatable/filters/normalized-model';
import {useImageSrc} from '@app/images/use-image-src';
import clsx from 'clsx';
import {ImageIcon} from '@common/icons/material/Image';
interface Props {
item: NormalizedModel;
}
export function ChannelContentItemImage({item}: Props) {
const src = useImageSrc(item.image, {size: 'sm'});
const imageClassName = clsx(
'aspect-square w-40 rounded object-cover',
!src ? 'flex items-center justify-center' : 'block',
);
return src ? (
<img className={imageClassName} src={src} alt="" />
) : (
<span className={imageClassName}>
<ImageIcon className="max-w-[60%] text-divider" size="text-6xl" />
</span>
);
}