import { StatusBadge, StatusVariantMap } from 'dbaas/components/StatusBadge'
import { ConnectorStatusColorMap as StatusColorMap } from 'dbaas/features/Changefeed'
import {
  DataflowConnectorStatus as DedicatedChangefeedStatus,
  ConsoleapiChangefeedStatus as PremiumChangefeedStatus
} from 'dbaas/services/dataflow/interface'

export const ChangefeedStatus = ({
  status,
  error,
  withinPortal = true
}: {
  status: DedicatedChangefeedStatus | PremiumChangefeedStatus
  error?: string
  withinPortal?: boolean
}) => {
  const color = StatusColorMap[status] as any
  const variant = StatusVariantMap[color] ?? 'default'
  return <StatusBadge variant={variant} status={status} error={error} color={color} hoverCardProps={{ withinPortal }} />
}
