// PE — chip trạng thái cuối phiếu ở MỌI danh sách (cây danh sách + picker + inbox):
// [S89] "⚑ Kết thúc · X" khi quy trình có cấp AllowApproverFinalize (kết thúc, không lên CEO).
// [S97 anh Kiệt FDC] "✅ Đã được CEO duyệt" khi phiếu ĐÃ DUYỆT đi HẾT lên CEO (endsBeforeCeo=false).
// SINGLE SOURCE OF TRUTH — mọi người NẮM ngay trạng thái mà KHÔNG cần mở phiếu.

import { PurchaseEvaluationPhase } from '@/types/purchaseEvaluation'

export function PeFinalizeChip({
  endsBeforeCeo,
  finalizeStepName,
  phase,
}: {
  endsBeforeCeo: boolean
  finalizeStepName: string | null
  // PeListItem.phase là number (mirror BE) → prop nhận number, so khớp literal DaDuyet.
  phase?: number
}) {
  // [S97 anh Kiệt FDC] Phiếu đã duyệt KHÔNG kết thúc sớm = đi hết lên CEO/Ban Giám đốc.
  if (!endsBeforeCeo) {
    if (phase === PurchaseEvaluationPhase.DaDuyet) {
      return (
        <span
          className="inline-flex shrink-0 items-center rounded bg-emerald-100 px-1.5 py-0.5 text-[11px] font-semibold text-emerald-800"
          title="Phiếu đã được CEO / Ban Giám đốc duyệt (đi hết quy trình, không kết thúc sớm ở cấp dưới)"
        >
          ✅ Đã được CEO duyệt
        </span>
      )
    }
    return null
  }
  return (
    <span
      className="inline-flex shrink-0 items-center rounded bg-violet-100 px-1.5 py-0.5 text-[11px] font-semibold text-violet-800"
      title={`Quy trình kết thúc tại ${finalizeStepName ?? 'cấp này'} — không trình CEO`}
    >
      {finalizeStepName ? `⚑ Kết thúc · ${finalizeStepName}` : '⚑ Không lên CEO'}
    </span>
  )
}
