// utils/mapDocuments.ts
export type DocumentType =
  | "Aadhar Front"
  | "Aadhar Back"
  | "PAN Card"
  | "Passport Photo";

type DocumentInput = {
  aadharFront?: string;
  aadharBack?: string;
  panCard?: string;
  passportPhoto?: string;
};

export type Document = {
  id: string;
  name: string;
  url?: string;
  uploadDate?: string;
  generatedDate?: string | null;
  status: string;
};

export const mapDocumentFieldsToList = (data: DocumentInput): Document[] => {
  const map: { key: keyof DocumentInput; name: DocumentType }[] = [
    { key: "aadharFront", name: "Aadhar Front" },
    { key: "aadharBack", name: "Aadhar Back" },
    { key: "panCard", name: "PAN Card" },
    { key: "passportPhoto", name: "Passport Photo" },
  ];

  return map
    .filter(({ key }) => data[key])
    .map(({ key, name }) => ({
      id: key,
      name,
      url: data[key],
      status: "Verified",
      uploadDate: new Date().toISOString(),
    }));
};
