Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | 1x 1x | import {
CheckStatusApiResponse,
PassportStatusesCertificateApplicationIdentification,
PassportStatusesGetCertificateApplicationResponse,
} from '../types'
/**
* Map passport status object returned by the API to the client
* filter external API fields
* @param getCertificateApplicationResponse Passport status object returned by the API
* @returns Frontend check status object
*/
export const mapToCheckStatusApiResponse = (
getCertificateApplicationResponse: PassportStatusesGetCertificateApplicationResponse,
): CheckStatusApiResponse => ({
manifestNumber: getManifestNumber(
getCertificateApplicationResponse.CertificateApplication
.CertificateApplicationIdentification,
),
status:
getCertificateApplicationResponse.CertificateApplication
.CertificateApplicationStatus.StatusCode,
})
/**
* Returns the manifest number (aka parcel tracking system number) of the first element
* where category text is equals to "Manifest Number", and undefined otherwise
*/
export const getManifestNumber = (
identifications?: PassportStatusesCertificateApplicationIdentification[],
): string | undefined => {
return identifications?.find(
(x) =>
x.IdentificationCategoryText.toLowerCase() ===
'Manifest Number'.toLowerCase(),
)?.IdentificationID
}
|