import ConfirmDialog from '@/components/ConfirmDialog'; import ToastHost from '@/components/ToastHost'; import { t } from '@/lib/i18n'; import type { ToastMessage } from '@/lib/types'; export interface AppConfirmState { title: string; message: string; danger?: boolean; showIcon?: boolean; confirmText?: string; cancelText?: string; hideCancel?: boolean; onConfirm: () => void; onCancel?: () => void; } interface AppGlobalOverlaysProps { toasts: ToastMessage[]; onCloseToast: (id: string) => void; confirm: AppConfirmState | null; onCancelConfirm: () => void; pendingTotpOpen: boolean; totpCode: string; rememberDevice: boolean; onTotpCodeChange: (value: string) => void; onRememberDeviceChange: (checked: boolean) => void; onConfirmTotp: () => void; onCancelTotp: () => void; onUseRecoveryCode: () => void; totpSubmitting: boolean; disableTotpOpen: boolean; disableTotpPassword: string; onDisableTotpPasswordChange: (value: string) => void; onConfirmDisableTotp: () => void; onCancelDisableTotp: () => void; disableTotpSubmitting: boolean; } export default function AppGlobalOverlays(props: AppGlobalOverlaysProps) { return ( <> props.confirm?.onConfirm()} onCancel={props.confirm?.onCancel || props.onCancelConfirm} />
)} >
); }