import { ClaimRequiredDocumentType } from "src/Types&Enums/claim-request-management/required-document-type.enum"; const REQUIRED_VALUES = new Set( Object.values(ClaimRequiredDocumentType), ); /** * Non-canonical document keys that may still appear on stored * `evaluation.damageExpertResend.resendDocuments` → {@link ClaimRequiredDocumentType}. */ const RESEND_DOCUMENT_KEY_ALIASES: Readonly< Record > = { nationalCertificate: ClaimRequiredDocumentType.NATIONAL_CARD, NationalCertificate: ClaimRequiredDocumentType.NATIONAL_CARD, drivingLicense: ClaimRequiredDocumentType.DAMAGED_DRIVING_LICENSE_FRONT, DrivingLicense: ClaimRequiredDocumentType.DAMAGED_DRIVING_LICENSE_FRONT, carGreenCard: ClaimRequiredDocumentType.CAR_GREEN_CARD, CarGreenCard: ClaimRequiredDocumentType.CAR_GREEN_CARD, carCertificate: ClaimRequiredDocumentType.DAMAGED_CAR_CARD_FRONT, CarCertificate: ClaimRequiredDocumentType.DAMAGED_CAR_CARD_FRONT, plate: ClaimRequiredDocumentType.DAMAGED_METAL_PLATE, carPlate: ClaimRequiredDocumentType.DAMAGED_METAL_PLATE, CarPlate: ClaimRequiredDocumentType.DAMAGED_METAL_PLATE, }; /** Normalize a single key to a {@link ClaimRequiredDocumentType} value, or null if unknown. */ export function canonicalizeResendDocumentKey( raw: string, ): ClaimRequiredDocumentType | null { const t = String(raw || "").trim(); if (!t) return null; if (REQUIRED_VALUES.has(t)) return t as ClaimRequiredDocumentType; return RESEND_DOCUMENT_KEY_ALIASES[t] ?? null; }