/* eslint react/no-array-index-key: "off" */ import { Components } from 'botframework-webchat-component'; import PropTypes from 'prop-types'; import React, { FC } from 'react'; import type { DirectLineVideoCard } from 'botframework-webchat-core'; import CommonCard from './CommonCard'; import useStyleSet from '../../hooks/useStyleSet'; const { VideoContent } = Components; type VideoCardContentProps = { actionPerformedClassName?: string; content: DirectLineVideoCard & { autoloop?: boolean; autostart?: boolean; image?: { url?: string }; media?: { profile?: string; url?: string }[]; }; disabled?: boolean; }; const VideoCardContent: FC = ({ actionPerformedClassName, content, disabled }) => { const { autoloop, autostart, image: { url: imageURL } = { url: undefined }, media } = content; const [{ audioCardAttachment: audioCardAttachmentStyleSet }] = useStyleSet(); return (
); }; VideoCardContent.defaultProps = { actionPerformedClassName: '', disabled: undefined }; VideoCardContent.propTypes = { actionPerformedClassName: PropTypes.string, // PropTypes cannot fully capture TypeScript types. // @ts-ignore content: PropTypes.shape({ autoloop: PropTypes.bool, autostart: PropTypes.bool, image: PropTypes.shape({ url: PropTypes.string.isRequired }), media: PropTypes.arrayOf( PropTypes.shape({ profile: PropTypes.string, url: PropTypes.string.isRequired }) ).isRequired }).isRequired, disabled: PropTypes.bool }; export default VideoCardContent;