import { Alert as AlertIcon, ClockBorderless as ClockIcon } from '@transferwise/icons'; import { clsx } from 'clsx'; import { PropsWithChildren } from 'react'; import Alert from '../alert'; import { Sentiment } from '../common'; import Circle, { CircleProps } from '../common/circle'; import SentimentSurface from '../sentimentSurface'; export type CriticalCommsBannerSentiment = | `${Sentiment.WARNING}` | `${Sentiment.NEGATIVE}` | `${Sentiment.NEUTRAL}`; export type CriticalCommsBannerProps = { title: string; subtitle?: string; action?: { label: string; href?: string; target?: HTMLAnchorElement['target']; onClick?: () => void; }; sentiment?: CriticalCommsBannerSentiment; className?: string; }; const makeSurface = (sentiment: CriticalCommsBannerSentiment) => { const Surface = (props: PropsWithChildren>) => ( ); Surface.displayName = `CriticalCommsSurface(${sentiment})`; return Surface; }; const iconBySentiment: Record = { [Sentiment.NEGATIVE]: ( ), [Sentiment.WARNING]: ( ), [Sentiment.NEUTRAL]: ( ), }; function CriticalCommsBanner({ title, subtitle, action, sentiment = Sentiment.NEGATIVE, className, }: CriticalCommsBannerProps) { return ( ); } export default CriticalCommsBanner;