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 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 | 2x 2x 2x 2x 2x | import { MouseEventHandler } from 'react'
import { CheckStatusApiResponse, StatusCode } from '../lib/types'
import ActionButton, { ActionButtonStyle } from './ActionButton'
import CheckStatusFileBeingProcessed from './check-status-responses/CheckStatusFileBeingProcessed'
import CheckStatusNoRecord from './check-status-responses/CheckStatusNoRecord'
import CheckStatusNotAcceptable from './check-status-responses/CheckStatusNotAcceptable'
import CheckStatusReadyForPickup from './check-status-responses/CheckStatusReadyForPickup'
import CheckStatusShippingCanadaPost from './check-status-responses/CheckStatusShippingCanadaPost'
import CheckStatusShippingFedex from './check-status-responses/CheckStatusShippingFedex'
export interface CheckStatusInfoProps {
id: string
onGoBackClick: MouseEventHandler<HTMLButtonElement>
goBackText: string
goBackStyle?: ActionButtonStyle
checkStatusResponse?: CheckStatusApiResponse | null
}
export const CheckStatusInfo = ({
goBackText,
id,
onGoBackClick,
goBackStyle,
checkStatusResponse,
}: CheckStatusInfoProps) => {
//Determine which status response to render
let statusComponent
switch (checkStatusResponse?.status) {
case StatusCode.FILE_BEING_PROCESSED:
statusComponent = <CheckStatusFileBeingProcessed />
break
case StatusCode.PASSPORT_ISSUED_READY_FOR_PICKUP:
statusComponent = <CheckStatusReadyForPickup />
break
case StatusCode.PASSPORT_ISSUED_SHIPPING_CANADA_POST:
statusComponent = (
<CheckStatusShippingCanadaPost
trackingNumber={checkStatusResponse.manifestNumber}
/>
)
break
case StatusCode.PASSPORT_ISSUED_SHIPPING_FEDEX:
statusComponent = (
<CheckStatusShippingFedex
trackingNumber={checkStatusResponse.manifestNumber}
/>
)
break
case StatusCode.NOT_ACCEPTABLE_FOR_PROCESSING:
statusComponent = <CheckStatusNotAcceptable />
break
default:
statusComponent = <CheckStatusNoRecord />
break
}
return (
<div id={id}>
{statusComponent}
<div className="my-8">
<ActionButton
onClick={onGoBackClick}
text={goBackText}
style={goBackStyle}
/>
</div>
</div>
)
}
export default CheckStatusInfo
|