import * as React from 'react' import { useState } from 'react' import { mergeClasses } from '../../utils/classNames' import { ButtonWidget } from '../Button/ButtonWidget' export interface ChatConfirmationAction { label: string onClick: () => void } export interface ChatConfirmationProps { /** Confirmation message to display */ message: string /** Primary action button */ primaryAction: ChatConfirmationAction /** Optional secondary action button */ secondaryAction?: ChatConfirmationAction /** Whether the confirmation has been acted on */ completed?: boolean /** Additional Tailwind classes for prototype-specific styling (not part of SAIL API) */ className?: string } export const ChatConfirmation: React.FC = ({ message, primaryAction, secondaryAction, completed: controlledCompleted, className, }) => { const [internalCompleted, setInternalCompleted] = useState(false) const isControlled = controlledCompleted !== undefined const completed = isControlled ? controlledCompleted : internalCompleted const handleClick = (action: ChatConfirmationAction) => { if (!isControlled) setInternalCompleted(true) action.onClick() } const sailClasses = `bg-blue-50 border-l-4 px-5 py-4${completed ? ' border-blue-200' : ' border-blue-500'}` return (

{message}

handleClick(primaryAction)} /> {secondaryAction && ( handleClick(secondaryAction)} /> )}
) }