// @design-system: domain/EscapeRouteNotice
/**
 * EscapeRouteNotice — informs user that opening a fraud/safety case
 * skips vendor review and goes directly to human support.
 */

import { useT } from '@/lib/i18n/react';
import { Icon } from '@/components/ui/icons/Icon';
import type { StringBundle } from '@/lib/i18n/types';
import type { CaseCategory } from '@/server/support/state-machines';

export interface EscapeRouteNoticeProps {
  category: CaseCategory;
}

export function EscapeRouteNotice({ category }: EscapeRouteNoticeProps) {
  const t = useT('cases');
  const tEscape = t('escape') as unknown as StringBundle['cases']['escape'];

  if (category !== 'fraud' && category !== 'safety') return null;

  const body = category === 'fraud' ? tEscape.fraud_body : tEscape.safety_body;

  return (
    <aside
      role="note"
      className="bg-warning-50 border-warning-200 flex gap-3 rounded-lg border p-4"
    >
      <Icon name="AlertCircle" size="sm" className="text-warning-600 mt-0.5 shrink-0" />
      <div className="space-y-0.5">
        <p className="text-warning-800 text-sm font-semibold">{tEscape.title}</p>
        <p className="text-warning-700 text-sm">{body}</p>
      </div>
    </aside>
  );
}
