COMPLETE: CardMedia component

This commit is contained in:
2024-02-03 02:05:53 +04:00
parent df1d0c2599
commit 133f34949b
15 changed files with 1017 additions and 1086 deletions

View File

@@ -1,21 +1,17 @@
// import { forwardRef } from 'react';
// import { CardMediaProps, CardMedia } from "./card.types";
import React, { forwardRef } from 'react';
import { CardMediaProps, CardMediaType } from './card.types';
// export const CardMedia = forwardRef<CardMedia, CardMediaProps>(
// ({rounded = true, preview = true, type, ...props}, ref) => {
// const classes = `m3 m3-card-media${rounded ? ' media-rounded' : ''}${preview ? ' media-preview' : ''} ${props.className ?? ''}`.trimEnd();
// switch (type){
// case "audio":
// break;
// case "iframe":
// break;
// case "img":
// break;
// case "picture":
// break;
// case "video":
// break;
// default:
// break;
// }
// }
export const CardMedia = forwardRef<CardMediaType, CardMediaProps>(
(
{ rounded = true, preview = true, type, className = '', ...props },
ref,
) => {
const classes =
`m3 m3-card-media${rounded ? ' m3-rounded' : ''}${preview ? ' m3-preview' : ''} ${className}`.trimEnd();
return React.createElement(type, {
...props,
className: classes,
ref: ref,
});
},
);