@metriport/shared 0.19.2 → 0.19.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/domain/ehr.d.ts +4 -0
- package/dist/domain/ehr.d.ts.map +1 -0
- package/dist/domain/ehr.js +9 -0
- package/dist/domain/ehr.js.map +1 -0
- package/dist/domain/jwt-token.d.ts +5 -0
- package/dist/domain/jwt-token.d.ts.map +1 -0
- package/dist/domain/jwt-token.js +3 -0
- package/dist/domain/jwt-token.js.map +1 -0
- package/dist/interface/external/canvas/appointment.d.ts +111 -0
- package/dist/interface/external/canvas/appointment.d.ts.map +1 -0
- package/dist/interface/external/canvas/appointment.js +15 -0
- package/dist/interface/external/canvas/appointment.js.map +1 -0
- package/dist/interface/external/canvas/cx-mapping.d.ts +16 -0
- package/dist/interface/external/canvas/cx-mapping.d.ts.map +1 -0
- package/dist/interface/external/canvas/cx-mapping.js +8 -0
- package/dist/interface/external/canvas/cx-mapping.js.map +1 -0
- package/dist/interface/external/canvas/index.d.ts +3 -0
- package/dist/interface/external/canvas/index.d.ts.map +1 -0
- package/dist/interface/external/canvas/index.js +19 -0
- package/dist/interface/external/canvas/index.js.map +1 -0
- package/dist/interface/external/canvas/jwt-token.d.ts +43 -0
- package/dist/interface/external/canvas/jwt-token.d.ts.map +1 -0
- package/dist/interface/external/canvas/jwt-token.js +17 -0
- package/dist/interface/external/canvas/jwt-token.js.map +1 -0
- package/dist/interface/external/canvas/patient.d.ts +306 -0
- package/dist/interface/external/canvas/patient.d.ts.map +1 -0
- package/dist/interface/external/canvas/patient.js +36 -0
- package/dist/interface/external/canvas/patient.js.map +1 -0
- package/dist/interface/external/elation/jwt-token.d.ts +26 -0
- package/dist/interface/external/elation/jwt-token.d.ts.map +1 -0
- package/dist/interface/external/elation/jwt-token.js +13 -0
- package/dist/interface/external/elation/jwt-token.js.map +1 -0
- package/dist/interface/external/shared/ehr/patient.d.ts +577 -0
- package/dist/interface/external/shared/ehr/patient.d.ts.map +1 -0
- package/dist/interface/external/shared/ehr/patient.js +52 -0
- package/dist/interface/external/shared/ehr/patient.js.map +1 -0
- package/dist/jwt-token.d.ts +26 -0
- package/dist/jwt-token.d.ts.map +1 -0
- package/dist/jwt-token.js +13 -0
- package/dist/jwt-token.js.map +1 -0
- package/dist/medical/webhook/webhook-request.d.ts +452 -0
- package/dist/medical/webhook/webhook-request.d.ts.map +1 -1
- package/dist/medical/webhook/webhook-request.js +29 -23
- package/dist/medical/webhook/webhook-request.js.map +1 -1
- package/dist/packages/shared/src/__tests__/env-setup.d.ts +2 -0
- package/dist/packages/shared/src/__tests__/env-setup.d.ts.map +1 -0
- package/dist/packages/shared/src/__tests__/env-setup.js +35 -0
- package/dist/packages/shared/src/__tests__/env-setup.js.map +1 -0
- package/dist/packages/shared/src/api/index.d.ts +2 -0
- package/dist/packages/shared/src/api/index.d.ts.map +1 -0
- package/dist/packages/shared/src/api/index.js +18 -0
- package/dist/packages/shared/src/api/index.js.map +1 -0
- package/dist/packages/shared/src/api/pagination.d.ts +13 -0
- package/dist/packages/shared/src/api/pagination.d.ts.map +1 -0
- package/dist/packages/shared/src/api/pagination.js +3 -0
- package/dist/packages/shared/src/api/pagination.js.map +1 -0
- package/dist/packages/shared/src/common/__tests__/boolean.test.d.ts +2 -0
- package/dist/packages/shared/src/common/__tests__/boolean.test.d.ts.map +1 -0
- package/dist/packages/shared/src/common/__tests__/boolean.test.js +46 -0
- package/dist/packages/shared/src/common/__tests__/boolean.test.js.map +1 -0
- package/dist/packages/shared/src/common/__tests__/date.test.d.ts +2 -0
- package/dist/packages/shared/src/common/__tests__/date.test.d.ts.map +1 -0
- package/dist/packages/shared/src/common/__tests__/date.test.js +12 -0
- package/dist/packages/shared/src/common/__tests__/date.test.js.map +1 -0
- package/dist/packages/shared/src/common/__tests__/normalize-oid.test.d.ts +2 -0
- package/dist/packages/shared/src/common/__tests__/normalize-oid.test.d.ts.map +1 -0
- package/dist/packages/shared/src/common/__tests__/normalize-oid.test.js +54 -0
- package/dist/packages/shared/src/common/__tests__/normalize-oid.test.js.map +1 -0
- package/dist/packages/shared/src/common/__tests__/npi.d.ts +7 -0
- package/dist/packages/shared/src/common/__tests__/npi.d.ts.map +1 -0
- package/dist/packages/shared/src/common/__tests__/npi.js +32 -0
- package/dist/packages/shared/src/common/__tests__/npi.js.map +1 -0
- package/dist/packages/shared/src/common/__tests__/retry.test.d.ts +2 -0
- package/dist/packages/shared/src/common/__tests__/retry.test.d.ts.map +1 -0
- package/dist/packages/shared/src/common/__tests__/retry.test.js +202 -0
- package/dist/packages/shared/src/common/__tests__/retry.test.js.map +1 -0
- package/dist/packages/shared/src/common/__tests__/string.test.d.ts +2 -0
- package/dist/packages/shared/src/common/__tests__/string.test.d.ts.map +1 -0
- package/dist/packages/shared/src/common/__tests__/string.test.js +62 -0
- package/dist/packages/shared/src/common/__tests__/string.test.js.map +1 -0
- package/dist/packages/shared/src/common/__tests__/title-case.test.d.ts +2 -0
- package/dist/packages/shared/src/common/__tests__/title-case.test.d.ts.map +1 -0
- package/dist/packages/shared/src/common/__tests__/title-case.test.js +66 -0
- package/dist/packages/shared/src/common/__tests__/title-case.test.js.map +1 -0
- package/dist/packages/shared/src/common/__tests__/validate-npi.test.d.ts +2 -0
- package/dist/packages/shared/src/common/__tests__/validate-npi.test.d.ts.map +1 -0
- package/dist/packages/shared/src/common/__tests__/validate-npi.test.js +24 -0
- package/dist/packages/shared/src/common/__tests__/validate-npi.test.js.map +1 -0
- package/dist/packages/shared/src/common/array.d.ts +2 -0
- package/dist/packages/shared/src/common/array.d.ts.map +1 -0
- package/dist/packages/shared/src/common/array.js +11 -0
- package/dist/packages/shared/src/common/array.js.map +1 -0
- package/dist/packages/shared/src/common/boolean.d.ts +9 -0
- package/dist/packages/shared/src/common/boolean.d.ts.map +1 -0
- package/dist/packages/shared/src/common/boolean.js +27 -0
- package/dist/packages/shared/src/common/boolean.js.map +1 -0
- package/dist/packages/shared/src/common/date.d.ts +25 -0
- package/dist/packages/shared/src/common/date.d.ts.map +1 -0
- package/dist/packages/shared/src/common/date.js +64 -0
- package/dist/packages/shared/src/common/date.js.map +1 -0
- package/dist/packages/shared/src/common/duration.d.ts +8 -0
- package/dist/packages/shared/src/common/duration.d.ts.map +1 -0
- package/dist/packages/shared/src/common/duration.js +30 -0
- package/dist/packages/shared/src/common/duration.js.map +1 -0
- package/dist/packages/shared/src/common/email.d.ts +5 -0
- package/dist/packages/shared/src/common/email.d.ts.map +1 -0
- package/dist/packages/shared/src/common/email.js +14 -0
- package/dist/packages/shared/src/common/email.js.map +1 -0
- package/dist/packages/shared/src/common/env-var.d.ts +10 -0
- package/dist/packages/shared/src/common/env-var.d.ts.map +1 -0
- package/dist/packages/shared/src/common/env-var.js +31 -0
- package/dist/packages/shared/src/common/env-var.js.map +1 -0
- package/dist/packages/shared/src/common/error.d.ts +16 -0
- package/dist/packages/shared/src/common/error.d.ts.map +1 -0
- package/dist/packages/shared/src/common/error.js +36 -0
- package/dist/packages/shared/src/common/error.js.map +1 -0
- package/dist/packages/shared/src/common/filter-map.d.ts +11 -0
- package/dist/packages/shared/src/common/filter-map.d.ts.map +1 -0
- package/dist/packages/shared/src/common/filter-map.js +17 -0
- package/dist/packages/shared/src/common/filter-map.js.map +1 -0
- package/dist/packages/shared/src/common/general.d.ts +2 -0
- package/dist/packages/shared/src/common/general.d.ts.map +1 -0
- package/dist/packages/shared/src/common/general.js +9 -0
- package/dist/packages/shared/src/common/general.js.map +1 -0
- package/dist/packages/shared/src/common/metriport-organization.d.ts +3 -0
- package/dist/packages/shared/src/common/metriport-organization.d.ts.map +1 -0
- package/dist/packages/shared/src/common/metriport-organization.js +25 -0
- package/dist/packages/shared/src/common/metriport-organization.js.map +1 -0
- package/dist/packages/shared/src/common/net.d.ts +2 -0
- package/dist/packages/shared/src/common/net.d.ts.map +1 -0
- package/dist/packages/shared/src/common/net.js +16 -0
- package/dist/packages/shared/src/common/net.js.map +1 -0
- package/dist/packages/shared/src/common/normalize-oid.d.ts +2 -0
- package/dist/packages/shared/src/common/normalize-oid.d.ts.map +1 -0
- package/dist/packages/shared/src/common/normalize-oid.js +34 -0
- package/dist/packages/shared/src/common/normalize-oid.js.map +1 -0
- package/dist/packages/shared/src/common/numbers.d.ts +7 -0
- package/dist/packages/shared/src/common/numbers.d.ts.map +1 -0
- package/dist/packages/shared/src/common/numbers.js +19 -0
- package/dist/packages/shared/src/common/numbers.js.map +1 -0
- package/dist/packages/shared/src/common/purpose-of-use.d.ts +30 -0
- package/dist/packages/shared/src/common/purpose-of-use.d.ts.map +1 -0
- package/dist/packages/shared/src/common/purpose-of-use.js +35 -0
- package/dist/packages/shared/src/common/purpose-of-use.js.map +1 -0
- package/dist/packages/shared/src/common/retry.d.ts +76 -0
- package/dist/packages/shared/src/common/retry.d.ts.map +1 -0
- package/dist/packages/shared/src/common/retry.js +117 -0
- package/dist/packages/shared/src/common/retry.js.map +1 -0
- package/dist/packages/shared/src/common/sleep.d.ts +14 -0
- package/dist/packages/shared/src/common/sleep.d.ts.map +1 -0
- package/dist/packages/shared/src/common/sleep.js +29 -0
- package/dist/packages/shared/src/common/sleep.js.map +1 -0
- package/dist/packages/shared/src/common/string.d.ts +7 -0
- package/dist/packages/shared/src/common/string.d.ts.map +1 -0
- package/dist/packages/shared/src/common/string.js +16 -0
- package/dist/packages/shared/src/common/string.js.map +1 -0
- package/dist/packages/shared/src/common/title-case.d.ts +2 -0
- package/dist/packages/shared/src/common/title-case.d.ts.map +1 -0
- package/dist/packages/shared/src/common/title-case.js +16 -0
- package/dist/packages/shared/src/common/title-case.js.map +1 -0
- package/dist/packages/shared/src/common/types.d.ts +9 -0
- package/dist/packages/shared/src/common/types.d.ts.map +1 -0
- package/dist/packages/shared/src/common/types.js +17 -0
- package/dist/packages/shared/src/common/types.js.map +1 -0
- package/dist/packages/shared/src/common/uuid.d.ts +5 -0
- package/dist/packages/shared/src/common/uuid.d.ts.map +1 -0
- package/dist/packages/shared/src/common/uuid.js +12 -0
- package/dist/packages/shared/src/common/uuid.js.map +1 -0
- package/dist/packages/shared/src/common/validate-npi.d.ts +10 -0
- package/dist/packages/shared/src/common/validate-npi.d.ts.map +1 -0
- package/dist/packages/shared/src/common/validate-npi.js +41 -0
- package/dist/packages/shared/src/common/validate-npi.js.map +1 -0
- package/dist/packages/shared/src/common/xml-parser.d.ts +3 -0
- package/dist/packages/shared/src/common/xml-parser.d.ts.map +1 -0
- package/dist/packages/shared/src/common/xml-parser.js +17 -0
- package/dist/packages/shared/src/common/xml-parser.js.map +1 -0
- package/dist/packages/shared/src/domain/address/__tests__/normalize-zip.test.d.ts +2 -0
- package/dist/packages/shared/src/domain/address/__tests__/normalize-zip.test.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/address/__tests__/normalize-zip.test.js +83 -0
- package/dist/packages/shared/src/domain/address/__tests__/normalize-zip.test.js.map +1 -0
- package/dist/packages/shared/src/domain/address/__tests__/state.test.d.ts +2 -0
- package/dist/packages/shared/src/domain/address/__tests__/state.test.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/address/__tests__/state.test.js +40 -0
- package/dist/packages/shared/src/domain/address/__tests__/state.test.js.map +1 -0
- package/dist/packages/shared/src/domain/address/__tests__/territory.test.d.ts +2 -0
- package/dist/packages/shared/src/domain/address/__tests__/territory.test.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/address/__tests__/territory.test.js +35 -0
- package/dist/packages/shared/src/domain/address/__tests__/territory.test.js.map +1 -0
- package/dist/packages/shared/src/domain/address/index.d.ts +8 -0
- package/dist/packages/shared/src/domain/address/index.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/address/index.js +21 -0
- package/dist/packages/shared/src/domain/address/index.js.map +1 -0
- package/dist/packages/shared/src/domain/address/state.d.ts +57 -0
- package/dist/packages/shared/src/domain/address/state.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/address/state.js +126 -0
- package/dist/packages/shared/src/domain/address/state.js.map +1 -0
- package/dist/packages/shared/src/domain/address/territory.d.ts +10 -0
- package/dist/packages/shared/src/domain/address/territory.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/address/territory.js +32 -0
- package/dist/packages/shared/src/domain/address/territory.js.map +1 -0
- package/dist/packages/shared/src/domain/address/zip.d.ts +7 -0
- package/dist/packages/shared/src/domain/address/zip.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/address/zip.js +52 -0
- package/dist/packages/shared/src/domain/address/zip.js.map +1 -0
- package/dist/packages/shared/src/domain/contact/__tests__/email.test.d.ts +2 -0
- package/dist/packages/shared/src/domain/contact/__tests__/email.test.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/contact/__tests__/email.test.js +39 -0
- package/dist/packages/shared/src/domain/contact/__tests__/email.test.js.map +1 -0
- package/dist/packages/shared/src/domain/contact/__tests__/phone.test.d.ts +2 -0
- package/dist/packages/shared/src/domain/contact/__tests__/phone.test.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/contact/__tests__/phone.test.js +190 -0
- package/dist/packages/shared/src/domain/contact/__tests__/phone.test.js.map +1 -0
- package/dist/packages/shared/src/domain/contact/email.d.ts +11 -0
- package/dist/packages/shared/src/domain/contact/email.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/contact/email.js +58 -0
- package/dist/packages/shared/src/domain/contact/email.js.map +1 -0
- package/dist/packages/shared/src/domain/contact/phone.d.ts +25 -0
- package/dist/packages/shared/src/domain/contact/phone.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/contact/phone.js +68 -0
- package/dist/packages/shared/src/domain/contact/phone.js.map +1 -0
- package/dist/packages/shared/src/domain/dob.d.ts +3 -0
- package/dist/packages/shared/src/domain/dob.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/dob.js +25 -0
- package/dist/packages/shared/src/domain/dob.js.map +1 -0
- package/dist/packages/shared/src/domain/externalId.d.ts +2 -0
- package/dist/packages/shared/src/domain/externalId.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/externalId.js +8 -0
- package/dist/packages/shared/src/domain/externalId.js.map +1 -0
- package/dist/packages/shared/src/domain/gender.d.ts +4 -0
- package/dist/packages/shared/src/domain/gender.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/gender.js +28 -0
- package/dist/packages/shared/src/domain/gender.js.map +1 -0
- package/dist/packages/shared/src/domain/jwt-token.d.ts +5 -0
- package/dist/packages/shared/src/domain/jwt-token.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/jwt-token.js +3 -0
- package/dist/packages/shared/src/domain/jwt-token.js.map +1 -0
- package/dist/packages/shared/src/domain/metriport.d.ts +9 -0
- package/dist/packages/shared/src/domain/metriport.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/metriport.js +13 -0
- package/dist/packages/shared/src/domain/metriport.js.map +1 -0
- package/dist/packages/shared/src/domain/patient/patient-import.d.ts +152 -0
- package/dist/packages/shared/src/domain/patient/patient-import.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/patient/patient-import.js +32 -0
- package/dist/packages/shared/src/domain/patient/patient-import.js.map +1 -0
- package/dist/packages/shared/src/domain/patient/patient.d.ts +41 -0
- package/dist/packages/shared/src/domain/patient/patient.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/patient/patient.js +14 -0
- package/dist/packages/shared/src/domain/patient/patient.js.map +1 -0
- package/dist/packages/shared/src/domain/rate-limiting/index.d.ts +49 -0
- package/dist/packages/shared/src/domain/rate-limiting/index.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/rate-limiting/index.js +46 -0
- package/dist/packages/shared/src/domain/rate-limiting/index.js.map +1 -0
- package/dist/packages/shared/src/domain/secrets.d.ts +3 -0
- package/dist/packages/shared/src/domain/secrets.d.ts.map +1 -0
- package/dist/packages/shared/src/domain/secrets.js +6 -0
- package/dist/packages/shared/src/domain/secrets.js.map +1 -0
- package/dist/packages/shared/src/error/bad-request.d.ts +9 -0
- package/dist/packages/shared/src/error/bad-request.d.ts.map +1 -0
- package/dist/packages/shared/src/error/bad-request.js +18 -0
- package/dist/packages/shared/src/error/bad-request.js.map +1 -0
- package/dist/packages/shared/src/error/metriport-error.d.ts +8 -0
- package/dist/packages/shared/src/error/metriport-error.d.ts.map +1 -0
- package/dist/packages/shared/src/error/metriport-error.js +18 -0
- package/dist/packages/shared/src/error/metriport-error.js.map +1 -0
- package/dist/packages/shared/src/error/not-found.d.ts +5 -0
- package/dist/packages/shared/src/error/not-found.d.ts.map +1 -0
- package/dist/packages/shared/src/error/not-found.js +18 -0
- package/dist/packages/shared/src/error/not-found.js.map +1 -0
- package/dist/packages/shared/src/error/shared.d.ts +8 -0
- package/dist/packages/shared/src/error/shared.d.ts.map +1 -0
- package/dist/packages/shared/src/error/shared.js +34 -0
- package/dist/packages/shared/src/error/shared.js.map +1 -0
- package/dist/packages/shared/src/error/too-many-requests.d.ts +9 -0
- package/dist/packages/shared/src/error/too-many-requests.d.ts.map +1 -0
- package/dist/packages/shared/src/error/too-many-requests.js +18 -0
- package/dist/packages/shared/src/error/too-many-requests.js.map +1 -0
- package/dist/packages/shared/src/index.d.ts +43 -0
- package/dist/packages/shared/src/index.d.ts.map +1 -0
- package/dist/packages/shared/src/index.js +93 -0
- package/dist/packages/shared/src/index.js.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/appointment.d.ts +105 -0
- package/dist/packages/shared/src/interface/external/athenahealth/appointment.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/appointment.js +18 -0
- package/dist/packages/shared/src/interface/external/athenahealth/appointment.js.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/cx-mapping.d.ts +16 -0
- package/dist/packages/shared/src/interface/external/athenahealth/cx-mapping.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/cx-mapping.js +8 -0
- package/dist/packages/shared/src/interface/external/athenahealth/cx-mapping.js.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/department.d.ts +49 -0
- package/dist/packages/shared/src/interface/external/athenahealth/department.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/department.js +11 -0
- package/dist/packages/shared/src/interface/external/athenahealth/department.js.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/index.d.ts +10 -0
- package/dist/packages/shared/src/interface/external/athenahealth/index.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/index.js +26 -0
- package/dist/packages/shared/src/interface/external/athenahealth/index.js.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/jwt-token.d.ts +31 -0
- package/dist/packages/shared/src/interface/external/athenahealth/jwt-token.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/jwt-token.js +13 -0
- package/dist/packages/shared/src/interface/external/athenahealth/jwt-token.js.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/medication.d.ts +77 -0
- package/dist/packages/shared/src/interface/external/athenahealth/medication.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/medication.js +19 -0
- package/dist/packages/shared/src/interface/external/athenahealth/medication.js.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/patient.d.ts +825 -0
- package/dist/packages/shared/src/interface/external/athenahealth/patient.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/patient.js +58 -0
- package/dist/packages/shared/src/interface/external/athenahealth/patient.js.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/problem.d.ts +39 -0
- package/dist/packages/shared/src/interface/external/athenahealth/problem.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/problem.js +14 -0
- package/dist/packages/shared/src/interface/external/athenahealth/problem.js.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/subscription.d.ts +32 -0
- package/dist/packages/shared/src/interface/external/athenahealth/subscription.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/subscription.js +11 -0
- package/dist/packages/shared/src/interface/external/athenahealth/subscription.js.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/vitals.d.ts +58 -0
- package/dist/packages/shared/src/interface/external/athenahealth/vitals.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/external/athenahealth/vitals.js +14 -0
- package/dist/packages/shared/src/interface/external/athenahealth/vitals.js.map +1 -0
- package/dist/packages/shared/src/interface/external/canvas/index.d.ts +2 -0
- package/dist/packages/shared/src/interface/external/canvas/index.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/external/canvas/index.js +18 -0
- package/dist/packages/shared/src/interface/external/canvas/index.js.map +1 -0
- package/dist/packages/shared/src/interface/external/canvas/jwt-token.d.ts +10 -0
- package/dist/packages/shared/src/interface/external/canvas/jwt-token.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/external/canvas/jwt-token.js +3 -0
- package/dist/packages/shared/src/interface/external/canvas/jwt-token.js.map +1 -0
- package/dist/packages/shared/src/interface/external/carequality/directory/simplified-org.d.ts +10 -0
- package/dist/packages/shared/src/interface/external/carequality/directory/simplified-org.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/external/carequality/directory/simplified-org.js +3 -0
- package/dist/packages/shared/src/interface/external/carequality/directory/simplified-org.js.map +1 -0
- package/dist/packages/shared/src/interface/external/elation/appointment.d.ts +111 -0
- package/dist/packages/shared/src/interface/external/elation/appointment.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/external/elation/appointment.js +15 -0
- package/dist/packages/shared/src/interface/external/elation/appointment.js.map +1 -0
- package/dist/packages/shared/src/interface/external/elation/index.d.ts +4 -0
- package/dist/packages/shared/src/interface/external/elation/index.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/external/elation/index.js +20 -0
- package/dist/packages/shared/src/interface/external/elation/index.js.map +1 -0
- package/dist/packages/shared/src/interface/external/elation/patient.d.ts +280 -0
- package/dist/packages/shared/src/interface/external/elation/patient.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/external/elation/patient.js +40 -0
- package/dist/packages/shared/src/interface/external/elation/patient.js.map +1 -0
- package/dist/packages/shared/src/interface/index.d.ts +3 -0
- package/dist/packages/shared/src/interface/index.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/index.js +19 -0
- package/dist/packages/shared/src/interface/index.js.map +1 -0
- package/dist/packages/shared/src/interface/internal/consolidated.d.ts +258 -0
- package/dist/packages/shared/src/interface/internal/consolidated.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/internal/consolidated.js +16 -0
- package/dist/packages/shared/src/interface/internal/consolidated.js.map +1 -0
- package/dist/packages/shared/src/interface/internal/index.d.ts +2 -0
- package/dist/packages/shared/src/interface/internal/index.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/internal/index.js +18 -0
- package/dist/packages/shared/src/interface/internal/index.js.map +1 -0
- package/dist/packages/shared/src/interface/schema/feedback.d.ts +48 -0
- package/dist/packages/shared/src/interface/schema/feedback.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/schema/feedback.js +17 -0
- package/dist/packages/shared/src/interface/schema/feedback.js.map +1 -0
- package/dist/packages/shared/src/interface/schema/index.d.ts +2 -0
- package/dist/packages/shared/src/interface/schema/index.d.ts.map +1 -0
- package/dist/packages/shared/src/interface/schema/index.js +18 -0
- package/dist/packages/shared/src/interface/schema/index.js.map +1 -0
- package/dist/packages/shared/src/medical/fhir/bundle.d.ts +8 -0
- package/dist/packages/shared/src/medical/fhir/bundle.d.ts.map +1 -0
- package/dist/packages/shared/src/medical/fhir/bundle.js +24 -0
- package/dist/packages/shared/src/medical/fhir/bundle.js.map +1 -0
- package/dist/packages/shared/src/medical/fhir/conversion.d.ts +3 -0
- package/dist/packages/shared/src/medical/fhir/conversion.d.ts.map +1 -0
- package/dist/packages/shared/src/medical/fhir/conversion.js +5 -0
- package/dist/packages/shared/src/medical/fhir/conversion.js.map +1 -0
- package/dist/packages/shared/src/medical/fhir/observations.d.ts +9 -0
- package/dist/packages/shared/src/medical/fhir/observations.d.ts.map +1 -0
- package/dist/packages/shared/src/medical/fhir/observations.js +56 -0
- package/dist/packages/shared/src/medical/fhir/observations.js.map +1 -0
- package/dist/packages/shared/src/medical/fhir/resources.d.ts +145 -0
- package/dist/packages/shared/src/medical/fhir/resources.d.ts.map +1 -0
- package/dist/packages/shared/src/medical/fhir/resources.js +81 -0
- package/dist/packages/shared/src/medical/fhir/resources.js.map +1 -0
- package/dist/packages/shared/src/medical/index.d.ts +7 -0
- package/dist/packages/shared/src/medical/index.d.ts.map +1 -0
- package/dist/packages/shared/src/medical/index.js +23 -0
- package/dist/packages/shared/src/medical/index.js.map +1 -0
- package/dist/packages/shared/src/medical/webhook/webhook-request.d.ts +1497 -0
- package/dist/packages/shared/src/medical/webhook/webhook-request.d.ts.map +1 -0
- package/dist/packages/shared/src/medical/webhook/webhook-request.js +139 -0
- package/dist/packages/shared/src/medical/webhook/webhook-request.js.map +1 -0
- package/dist/packages/shared/src/medical/webhook/webhook-status-response.d.ts +7 -0
- package/dist/packages/shared/src/medical/webhook/webhook-status-response.d.ts.map +1 -0
- package/dist/packages/shared/src/medical/webhook/webhook-status-response.js +3 -0
- package/dist/packages/shared/src/medical/webhook/webhook-status-response.js.map +1 -0
- package/dist/packages/shared/src/net/__tests__/axios.d.ts +92 -0
- package/dist/packages/shared/src/net/__tests__/axios.d.ts.map +1 -0
- package/dist/packages/shared/src/net/__tests__/axios.js +103 -0
- package/dist/packages/shared/src/net/__tests__/axios.js.map +1 -0
- package/dist/packages/shared/src/net/__tests__/retry.test.d.ts +2 -0
- package/dist/packages/shared/src/net/__tests__/retry.test.d.ts.map +1 -0
- package/dist/packages/shared/src/net/__tests__/retry.test.js +257 -0
- package/dist/packages/shared/src/net/__tests__/retry.test.js.map +1 -0
- package/dist/packages/shared/src/net/error.d.ts +35 -0
- package/dist/packages/shared/src/net/error.d.ts.map +1 -0
- package/dist/packages/shared/src/net/error.js +57 -0
- package/dist/packages/shared/src/net/error.js.map +1 -0
- package/dist/packages/shared/src/net/retry.d.ts +36 -0
- package/dist/packages/shared/src/net/retry.d.ts.map +1 -0
- package/dist/packages/shared/src/net/retry.js +104 -0
- package/dist/packages/shared/src/net/retry.js.map +1 -0
- package/dist/packages/shared/src/net/url.d.ts +2 -0
- package/dist/packages/shared/src/net/url.d.ts.map +1 -0
- package/dist/packages/shared/src/net/url.js +16 -0
- package/dist/packages/shared/src/net/url.js.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhook-request.d.ts","sourceRoot":"","sources":["../../../../../../src/medical/webhook/webhook-request.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isDocumentBulkDownloadWebhookRequest = exports.isDocumentConversionWebhookRequest = exports.isDocumentDownloadWebhookRequest = exports.isConsolidatedWebhookRequest = exports.isPingWebhookRequest = exports.WebhookRequestParsingFailure = exports.webhookRequestSchema = exports.documentBulkDownloadWebhookRequestSchema = exports.documentConversionWebhookRequestSchema = exports.documentConversionWebhookPatientSchema = exports.documentDownloadWebhookRequestSchema = exports.documentDownloadWebhookPatientSchema = exports.consolidatedWebhookRequestSchema = exports.consolidatedWebhookPatientSchema = exports.filtersSchema = exports.pingWebhookRequestDataSchema = exports.webhookMetadataSchema = exports.baseWebhookMetadataSchema = exports.webhookRequestStatus = exports.webhookTypeSchema = exports.mapiWebhookTypeSchema = exports.docBulkDownloadWebhookTypeSchema = exports.docConversionWebhookTypeSchema = exports.docDownloadWebhookTypeSchema = exports.consolidatedWebhookTypeSchema = exports.pingWebhookTypeSchema = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const date_1 = require("../../common/date");
|
|
6
|
+
exports.pingWebhookTypeSchema = zod_1.z.literal(`ping`);
|
|
7
|
+
exports.consolidatedWebhookTypeSchema = zod_1.z.literal(`medical.consolidated-data`);
|
|
8
|
+
exports.docDownloadWebhookTypeSchema = zod_1.z.literal(`medical.document-download`);
|
|
9
|
+
exports.docConversionWebhookTypeSchema = zod_1.z.literal(`medical.document-conversion`);
|
|
10
|
+
exports.docBulkDownloadWebhookTypeSchema = zod_1.z.literal(`medical.document-bulk-download-urls`);
|
|
11
|
+
exports.mapiWebhookTypeSchema = exports.consolidatedWebhookTypeSchema
|
|
12
|
+
.or(exports.consolidatedWebhookTypeSchema)
|
|
13
|
+
.or(exports.docDownloadWebhookTypeSchema)
|
|
14
|
+
.or(exports.docConversionWebhookTypeSchema)
|
|
15
|
+
.or(exports.docBulkDownloadWebhookTypeSchema);
|
|
16
|
+
exports.webhookTypeSchema = exports.pingWebhookTypeSchema.or(exports.mapiWebhookTypeSchema);
|
|
17
|
+
exports.webhookRequestStatus = ["processing", "success", "failure"];
|
|
18
|
+
exports.baseWebhookMetadataSchema = zod_1.z.object({
|
|
19
|
+
messageId: zod_1.z.string(),
|
|
20
|
+
when: date_1.dateSchema,
|
|
21
|
+
/**
|
|
22
|
+
* The metadata sent by the customer when they triggered the operation that resulted in this webhook.
|
|
23
|
+
*/
|
|
24
|
+
data: zod_1.z.unknown().nullish(),
|
|
25
|
+
});
|
|
26
|
+
exports.webhookMetadataSchema = exports.baseWebhookMetadataSchema.merge(zod_1.z.object({
|
|
27
|
+
type: zod_1.z.string(),
|
|
28
|
+
}));
|
|
29
|
+
function createWebhookMetadataSchema(itemSchema) {
|
|
30
|
+
return exports.baseWebhookMetadataSchema.merge(zod_1.z.object({
|
|
31
|
+
type: itemSchema,
|
|
32
|
+
}));
|
|
33
|
+
}
|
|
34
|
+
exports.pingWebhookRequestDataSchema = zod_1.z.object({
|
|
35
|
+
meta: createWebhookMetadataSchema(exports.pingWebhookTypeSchema),
|
|
36
|
+
ping: zod_1.z.string(),
|
|
37
|
+
});
|
|
38
|
+
exports.filtersSchema = zod_1.z.record(zod_1.z.string(), zod_1.z.string().or(zod_1.z.boolean().nullish()));
|
|
39
|
+
exports.consolidatedWebhookPatientSchema = zod_1.z.object({
|
|
40
|
+
patientId: zod_1.z.string(),
|
|
41
|
+
externalId: zod_1.z.string().optional(),
|
|
42
|
+
status: zod_1.z.enum(["completed", "failed"]),
|
|
43
|
+
bundle: zod_1.z.custom(),
|
|
44
|
+
filters: exports.filtersSchema.nullish(),
|
|
45
|
+
});
|
|
46
|
+
exports.consolidatedWebhookRequestSchema = zod_1.z.object({
|
|
47
|
+
meta: createWebhookMetadataSchema(exports.consolidatedWebhookTypeSchema),
|
|
48
|
+
patients: exports.consolidatedWebhookPatientSchema.array(),
|
|
49
|
+
});
|
|
50
|
+
exports.documentDownloadWebhookPatientSchema = zod_1.z.object({
|
|
51
|
+
patientId: zod_1.z.string(),
|
|
52
|
+
status: zod_1.z.enum(["completed", "failed"]),
|
|
53
|
+
documents: zod_1.z.array(zod_1.z.object({
|
|
54
|
+
id: zod_1.z.string(),
|
|
55
|
+
fileName: zod_1.z.string(),
|
|
56
|
+
description: zod_1.z.string().optional(),
|
|
57
|
+
status: zod_1.z.string().optional(),
|
|
58
|
+
indexed: zod_1.z.string().optional(),
|
|
59
|
+
mimeType: zod_1.z.string().optional(),
|
|
60
|
+
size: zod_1.z.number().optional(),
|
|
61
|
+
type: zod_1.z
|
|
62
|
+
.object({
|
|
63
|
+
coding: zod_1.z
|
|
64
|
+
.array(zod_1.z.object({
|
|
65
|
+
system: zod_1.z.string().optional().nullable(),
|
|
66
|
+
code: zod_1.z.string().optional().nullable(),
|
|
67
|
+
display: zod_1.z.string().optional().nullable(),
|
|
68
|
+
}))
|
|
69
|
+
.optional(),
|
|
70
|
+
text: zod_1.z.string().optional(),
|
|
71
|
+
})
|
|
72
|
+
.optional(),
|
|
73
|
+
})),
|
|
74
|
+
});
|
|
75
|
+
exports.documentDownloadWebhookRequestSchema = zod_1.z.object({
|
|
76
|
+
meta: createWebhookMetadataSchema(exports.docDownloadWebhookTypeSchema),
|
|
77
|
+
patients: exports.documentDownloadWebhookPatientSchema.array(),
|
|
78
|
+
});
|
|
79
|
+
exports.documentConversionWebhookPatientSchema = zod_1.z.object({
|
|
80
|
+
patientId: zod_1.z.string(),
|
|
81
|
+
status: zod_1.z.enum(["completed", "failed"]),
|
|
82
|
+
});
|
|
83
|
+
exports.documentConversionWebhookRequestSchema = zod_1.z.object({
|
|
84
|
+
meta: createWebhookMetadataSchema(exports.docConversionWebhookTypeSchema),
|
|
85
|
+
patients: exports.documentConversionWebhookPatientSchema.array(),
|
|
86
|
+
});
|
|
87
|
+
// TODO Implement
|
|
88
|
+
exports.documentBulkDownloadWebhookRequestSchema = zod_1.z.object({
|
|
89
|
+
meta: createWebhookMetadataSchema(exports.docBulkDownloadWebhookTypeSchema),
|
|
90
|
+
});
|
|
91
|
+
exports.webhookRequestSchema = zod_1.z.union([
|
|
92
|
+
exports.pingWebhookRequestDataSchema,
|
|
93
|
+
exports.consolidatedWebhookRequestSchema,
|
|
94
|
+
exports.documentDownloadWebhookRequestSchema,
|
|
95
|
+
exports.documentConversionWebhookRequestSchema,
|
|
96
|
+
exports.documentBulkDownloadWebhookRequestSchema,
|
|
97
|
+
]);
|
|
98
|
+
class WebhookRequestParsingFailure {
|
|
99
|
+
constructor(errors, flattened) {
|
|
100
|
+
this.errors = errors;
|
|
101
|
+
this.flattened = flattened;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
exports.WebhookRequestParsingFailure = WebhookRequestParsingFailure;
|
|
105
|
+
function isPingWebhookRequest(whRequest) {
|
|
106
|
+
if (whRequest.meta.type === "ping")
|
|
107
|
+
return true;
|
|
108
|
+
return false;
|
|
109
|
+
}
|
|
110
|
+
exports.isPingWebhookRequest = isPingWebhookRequest;
|
|
111
|
+
function isConsolidatedWebhookRequest(whRequest) {
|
|
112
|
+
if (whRequest.meta.type === "medical.consolidated-data") {
|
|
113
|
+
return true;
|
|
114
|
+
}
|
|
115
|
+
return false;
|
|
116
|
+
}
|
|
117
|
+
exports.isConsolidatedWebhookRequest = isConsolidatedWebhookRequest;
|
|
118
|
+
function isDocumentDownloadWebhookRequest(whRequest) {
|
|
119
|
+
if (whRequest.meta.type === "medical.document-download") {
|
|
120
|
+
return true;
|
|
121
|
+
}
|
|
122
|
+
return false;
|
|
123
|
+
}
|
|
124
|
+
exports.isDocumentDownloadWebhookRequest = isDocumentDownloadWebhookRequest;
|
|
125
|
+
function isDocumentConversionWebhookRequest(whRequest) {
|
|
126
|
+
if (whRequest.meta.type === "medical.document-conversion") {
|
|
127
|
+
return true;
|
|
128
|
+
}
|
|
129
|
+
return false;
|
|
130
|
+
}
|
|
131
|
+
exports.isDocumentConversionWebhookRequest = isDocumentConversionWebhookRequest;
|
|
132
|
+
function isDocumentBulkDownloadWebhookRequest(whRequest) {
|
|
133
|
+
if (whRequest.meta.type === "medical.document-bulk-download-urls") {
|
|
134
|
+
return true;
|
|
135
|
+
}
|
|
136
|
+
return false;
|
|
137
|
+
}
|
|
138
|
+
exports.isDocumentBulkDownloadWebhookRequest = isDocumentBulkDownloadWebhookRequest;
|
|
139
|
+
//# sourceMappingURL=webhook-request.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhook-request.js","sourceRoot":"","sources":["../../../../../../src/medical/webhook/webhook-request.ts"],"names":[],"mappings":";;;AAAA,6BAAqD;AACrD,4CAA+C;AAGlC,QAAA,qBAAqB,GAAG,OAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AAG1C,QAAA,6BAA6B,GAAG,OAAC,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;AAGvE,QAAA,4BAA4B,GAAG,OAAC,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;AAGtE,QAAA,8BAA8B,GAAG,OAAC,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;AAG1E,QAAA,gCAAgC,GAAG,OAAC,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC;AAGpF,QAAA,qBAAqB,GAAG,qCAA6B;KAC/D,EAAE,CAAC,qCAA6B,CAAC;KACjC,EAAE,CAAC,oCAA4B,CAAC;KAChC,EAAE,CAAC,sCAA8B,CAAC;KAClC,EAAE,CAAC,wCAAgC,CAAC,CAAC;AAG3B,QAAA,iBAAiB,GAAG,6BAAqB,CAAC,EAAE,CAAC,6BAAqB,CAAC,CAAC;AAGpE,QAAA,oBAAoB,GAAG,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,CAAU,CAAC;AAGrE,QAAA,yBAAyB,GAAG,OAAC,CAAC,MAAM,CAAC;IAChD,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,IAAI,EAAE,iBAAU;IAChB;;OAEG;IACH,IAAI,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE;CAC5B,CAAC,CAAC;AACU,QAAA,qBAAqB,GAAG,iCAAyB,CAAC,KAAK,CAClE,OAAC,CAAC,MAAM,CAAC;IACP,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;CACjB,CAAC,CACH,CAAC;AAGF,SAAS,2BAA2B,CAAmC,UAAa;IAClF,OAAO,iCAAyB,CAAC,KAAK,CACpC,OAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,UAAU;KACjB,CAAC,CACH,CAAC;AACJ,CAAC;AAEY,QAAA,4BAA4B,GAAG,OAAC,CAAC,MAAM,CAAC;IACnD,IAAI,EAAE,2BAA2B,CAAC,6BAAqB,CAAC;IACxD,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;CACjB,CAAC,CAAC;AAGU,QAAA,aAAa,GAAG,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,OAAC,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;AAE3E,QAAA,gCAAgC,GAAG,OAAC,CAAC,MAAM,CAAC;IACvD,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,MAAM,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACvC,MAAM,EAAE,OAAC,CAAC,MAAM,EAA+B;IAC/C,OAAO,EAAE,qBAAa,CAAC,OAAO,EAAE;CACjC,CAAC,CAAC;AAGU,QAAA,gCAAgC,GAAG,OAAC,CAAC,MAAM,CAAC;IACvD,IAAI,EAAE,2BAA2B,CAAC,qCAA6B,CAAC;IAChE,QAAQ,EAAE,wCAAgC,CAAC,KAAK,EAAE;CACnD,CAAC,CAAC;AAGU,QAAA,oCAAoC,GAAG,OAAC,CAAC,MAAM,CAAC;IAC3D,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,MAAM,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACvC,SAAS,EAAE,OAAC,CAAC,KAAK,CAChB,OAAC,CAAC,MAAM,CAAC;QACP,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE;QACd,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;QACpB,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAClC,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC7B,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC9B,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC/B,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC3B,IAAI,EAAE,OAAC;aACJ,MAAM,CAAC;YACN,MAAM,EAAE,OAAC;iBACN,KAAK,CACJ,OAAC,CAAC,MAAM,CAAC;gBACP,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;gBACxC,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;gBACtC,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;aAC1C,CAAC,CACH;iBACA,QAAQ,EAAE;YACb,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAC5B,CAAC;aACD,QAAQ,EAAE;KACd,CAAC,CACH;CACF,CAAC,CAAC;AAGU,QAAA,oCAAoC,GAAG,OAAC,CAAC,MAAM,CAAC;IAC3D,IAAI,EAAE,2BAA2B,CAAC,oCAA4B,CAAC;IAC/D,QAAQ,EAAE,4CAAoC,CAAC,KAAK,EAAE;CACvD,CAAC,CAAC;AAGU,QAAA,sCAAsC,GAAG,OAAC,CAAC,MAAM,CAAC;IAC7D,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE;IACrB,MAAM,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;CACxC,CAAC,CAAC;AAKU,QAAA,sCAAsC,GAAG,OAAC,CAAC,MAAM,CAAC;IAC7D,IAAI,EAAE,2BAA2B,CAAC,sCAA8B,CAAC;IACjE,QAAQ,EAAE,8CAAsC,CAAC,KAAK,EAAE;CACzD,CAAC,CAAC;AAKH,iBAAiB;AACJ,QAAA,wCAAwC,GAAG,OAAC,CAAC,MAAM,CAAC;IAC/D,IAAI,EAAE,2BAA2B,CAAC,wCAAgC,CAAC;CACpE,CAAC,CAAC;AAKU,QAAA,oBAAoB,GAAG,OAAC,CAAC,KAAK,CAAC;IAC1C,oCAA4B;IAC5B,wCAAgC;IAChC,4CAAoC;IACpC,8CAAsC;IACtC,gDAAwC;CACzC,CAAC,CAAC;AAGH,MAAa,4BAA4B;IACvC,YACW,MAAgC,EAChC,SAA4C;QAD5C,WAAM,GAAN,MAAM,CAA0B;QAChC,cAAS,GAAT,SAAS,CAAmC;IACpD,CAAC;CACL;AALD,oEAKC;AAED,SAAgB,oBAAoB,CAAC,SAAyB;IAC5D,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IAChD,OAAO,KAAK,CAAC;AACf,CAAC;AAHD,oDAGC;AAED,SAAgB,4BAA4B,CAC1C,SAAyB;IAEzB,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,KAAK,2BAA2B,EAAE;QACvD,OAAO,IAAI,CAAC;KACb;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAPD,oEAOC;AAED,SAAgB,gCAAgC,CAC9C,SAAyB;IAEzB,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,KAAK,2BAA2B,EAAE;QACvD,OAAO,IAAI,CAAC;KACb;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAPD,4EAOC;AAED,SAAgB,kCAAkC,CAChD,SAAyB;IAEzB,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,KAAK,6BAA6B,EAAE;QACzD,OAAO,IAAI,CAAC;KACb;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAPD,gFAOC;AAED,SAAgB,oCAAoC,CAClD,SAAyB;IAEzB,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,KAAK,qCAAqC,EAAE;QACjE,OAAO,IAAI,CAAC;KACb;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAPD,oFAOC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhook-status-response.d.ts","sourceRoot":"","sources":["../../../../../../src/medical/webhook/webhook-status-response.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,OAAO,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,yBAAyB,EAAE,MAAM,CAAC;IAClC,qBAAqB,EAAE,MAAM,CAAC;CAC/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhook-status-response.js","sourceRoot":"","sources":["../../../../../../src/medical/webhook/webhook-status-response.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/// <reference types="jest" />
|
|
2
|
+
import { AxiosResponse } from "axios";
|
|
3
|
+
export declare function mockAxios(): {
|
|
4
|
+
axios: jest.MockedFunctionDeep<import("axios").AxiosStatic>;
|
|
5
|
+
get: (<T = any, R = AxiosResponse<T, any>, D = any>(
|
|
6
|
+
url: string,
|
|
7
|
+
config?: import("axios").AxiosRequestConfig<D> | undefined
|
|
8
|
+
) => Promise<R>) &
|
|
9
|
+
jest.MockWithArgs<
|
|
10
|
+
<T = any, R = AxiosResponse<T, any>, D = any>(
|
|
11
|
+
url: string,
|
|
12
|
+
config?: import("axios").AxiosRequestConfig<D> | undefined
|
|
13
|
+
) => Promise<R>
|
|
14
|
+
> & {} & {};
|
|
15
|
+
post: (<T_1 = any, R_1 = AxiosResponse<T_1, any>, D_1 = any>(
|
|
16
|
+
url: string,
|
|
17
|
+
data?: D_1 | undefined,
|
|
18
|
+
config?: import("axios").AxiosRequestConfig<D_1> | undefined
|
|
19
|
+
) => Promise<R_1>) &
|
|
20
|
+
jest.MockWithArgs<
|
|
21
|
+
<T_1 = any, R_1 = AxiosResponse<T_1, any>, D_1 = any>(
|
|
22
|
+
url: string,
|
|
23
|
+
data?: D_1 | undefined,
|
|
24
|
+
config?: import("axios").AxiosRequestConfig<D_1> | undefined
|
|
25
|
+
) => Promise<R_1>
|
|
26
|
+
> & {} & {};
|
|
27
|
+
put: (<T_2 = any, R_2 = AxiosResponse<T_2, any>, D_2 = any>(
|
|
28
|
+
url: string,
|
|
29
|
+
data?: D_2 | undefined,
|
|
30
|
+
config?: import("axios").AxiosRequestConfig<D_2> | undefined
|
|
31
|
+
) => Promise<R_2>) &
|
|
32
|
+
jest.MockWithArgs<
|
|
33
|
+
<T_2 = any, R_2 = AxiosResponse<T_2, any>, D_2 = any>(
|
|
34
|
+
url: string,
|
|
35
|
+
data?: D_2 | undefined,
|
|
36
|
+
config?: import("axios").AxiosRequestConfig<D_2> | undefined
|
|
37
|
+
) => Promise<R_2>
|
|
38
|
+
> & {} & {};
|
|
39
|
+
delete: (<T_3 = any, R_3 = AxiosResponse<T_3, any>, D_3 = any>(
|
|
40
|
+
url: string,
|
|
41
|
+
config?: import("axios").AxiosRequestConfig<D_3> | undefined
|
|
42
|
+
) => Promise<R_3>) &
|
|
43
|
+
jest.MockWithArgs<
|
|
44
|
+
<T_3 = any, R_3 = AxiosResponse<T_3, any>, D_3 = any>(
|
|
45
|
+
url: string,
|
|
46
|
+
config?: import("axios").AxiosRequestConfig<D_3> | undefined
|
|
47
|
+
) => Promise<R_3>
|
|
48
|
+
> & {} & {};
|
|
49
|
+
};
|
|
50
|
+
export declare function makeAxiosResponse({
|
|
51
|
+
method,
|
|
52
|
+
status,
|
|
53
|
+
data,
|
|
54
|
+
statusText,
|
|
55
|
+
headers,
|
|
56
|
+
config,
|
|
57
|
+
}: {
|
|
58
|
+
method?: AxiosResponse["config"]["method"];
|
|
59
|
+
} & Partial<
|
|
60
|
+
Pick<AxiosResponse, "status" | "data" | "statusText" | "headers" | "config">
|
|
61
|
+
>): AxiosResponse;
|
|
62
|
+
export declare const errorWithCauseAxiosError: {
|
|
63
|
+
errorType: string;
|
|
64
|
+
errorMessage: string;
|
|
65
|
+
cause: {
|
|
66
|
+
errorType: string;
|
|
67
|
+
errorMessage: string;
|
|
68
|
+
cause: {
|
|
69
|
+
message: string;
|
|
70
|
+
name: string;
|
|
71
|
+
stack: string;
|
|
72
|
+
code: string;
|
|
73
|
+
status: null;
|
|
74
|
+
isAxiosError: boolean;
|
|
75
|
+
};
|
|
76
|
+
additionalInfo: {
|
|
77
|
+
headers: {
|
|
78
|
+
Authorization: string;
|
|
79
|
+
};
|
|
80
|
+
inputUrl: string;
|
|
81
|
+
outputStream: string;
|
|
82
|
+
};
|
|
83
|
+
stack: string[];
|
|
84
|
+
};
|
|
85
|
+
additionalInfo: {
|
|
86
|
+
documentLocation: string;
|
|
87
|
+
details: string;
|
|
88
|
+
};
|
|
89
|
+
status: number;
|
|
90
|
+
stack: string[];
|
|
91
|
+
};
|
|
92
|
+
//# sourceMappingURL=axios.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"axios.d.ts","sourceRoot":"","sources":["../../../../../../src/net/__tests__/axios.ts"],"names":[],"mappings":";AAAA,OAAc,EAAgB,aAAa,EAAE,MAAM,OAAO,CAAC;AAG3D,wBAAgB,SAAS;;;;;;EASxB;AAED,wBAAgB,iBAAiB,CAAC,EAChC,MAAM,EACN,MAAM,EACN,IAAI,EACJ,UAAU,EACV,OAAO,EACP,MAAM,GACP,EAAE;IAAE,MAAM,CAAC,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAA;CAAE,GAAG,OAAO,CACzD,IAAI,CAAC,aAAa,EAAE,QAAQ,GAAG,MAAM,GAAG,YAAY,GAAG,SAAS,GAAG,QAAQ,CAAC,CAC7E,GAAG,aAAa,CAWhB;AAED,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkDpC,CAAC"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.errorWithCauseAxiosError = exports.makeAxiosResponse = exports.mockAxios = void 0;
|
|
27
|
+
const axios_1 = __importStar(require("axios"));
|
|
28
|
+
jest.mock("axios");
|
|
29
|
+
function mockAxios() {
|
|
30
|
+
const mockedAxios = jest.mocked(axios_1.default);
|
|
31
|
+
return {
|
|
32
|
+
axios: mockedAxios.mockImplementation(),
|
|
33
|
+
get: mockedAxios.get.mockImplementation(),
|
|
34
|
+
post: mockedAxios.post.mockImplementation(),
|
|
35
|
+
put: mockedAxios.put.mockImplementation(),
|
|
36
|
+
delete: mockedAxios.delete.mockImplementation(),
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
exports.mockAxios = mockAxios;
|
|
40
|
+
function makeAxiosResponse({ method, status, data, statusText, headers, config, }) {
|
|
41
|
+
return {
|
|
42
|
+
status: status ?? 200,
|
|
43
|
+
data: data ?? {},
|
|
44
|
+
statusText: statusText ?? "OK",
|
|
45
|
+
headers: headers ?? {},
|
|
46
|
+
config: config ?? {
|
|
47
|
+
headers: new axios_1.AxiosHeaders(),
|
|
48
|
+
method: method ?? "get",
|
|
49
|
+
},
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
exports.makeAxiosResponse = makeAxiosResponse;
|
|
53
|
+
exports.errorWithCauseAxiosError = {
|
|
54
|
+
errorType: "Error",
|
|
55
|
+
errorMessage: "CW - Error downloading document",
|
|
56
|
+
cause: {
|
|
57
|
+
errorType: "Error",
|
|
58
|
+
errorMessage: "Error retrieve document",
|
|
59
|
+
cause: {
|
|
60
|
+
message: "connect ETIMEDOUT 107.21.162.233:443",
|
|
61
|
+
name: "Error",
|
|
62
|
+
stack: "Error: connect ETIMEDOUT 107.21.162.233:443...",
|
|
63
|
+
code: "ETIMEDOUT",
|
|
64
|
+
status: null,
|
|
65
|
+
isAxiosError: true,
|
|
66
|
+
},
|
|
67
|
+
additionalInfo: {
|
|
68
|
+
headers: {
|
|
69
|
+
Authorization: "Bearer ...",
|
|
70
|
+
},
|
|
71
|
+
inputUrl: "https://rest.api.commonwellalliance.org/v2/Binary/xxxxxx",
|
|
72
|
+
outputStream: "[object]",
|
|
73
|
+
},
|
|
74
|
+
stack: [
|
|
75
|
+
"Error: Error retrieve document",
|
|
76
|
+
" at Object.retrieve (/opt/nodejs/node_modules/@metriport/commonwell-sdk/dist/client/document.js:64:15)",
|
|
77
|
+
" at process.processTicksAndRejections (node:internal/process/task_queues:95:5)",
|
|
78
|
+
" at async executeWithRetries (/opt/nodejs/node_modules/@metriport/shared/dist/common/retry.js:46:28)",
|
|
79
|
+
" at async DocumentDownloaderLocal.downloadDocumentFromCW (/opt/nodejs/node_modules/@metriport/core/dist/external/commonwell/document/document-downloader-local.js:225:13)",
|
|
80
|
+
" at async DocumentDownloaderLocal.downloadFromCommonwellIntoS3 (/opt/nodejs/node_modules/@metriport/core/dist/external/commonwell/document/document-downloader-local.js:188:9)",
|
|
81
|
+
" at async executeWithRetries (/opt/nodejs/node_modules/@metriport/shared/dist/common/retry.js:46:28)",
|
|
82
|
+
" at async DocumentDownloaderLocal.download (/opt/nodejs/node_modules/@metriport/core/dist/external/commonwell/document/document-downloader-local.js:58:30)",
|
|
83
|
+
" at async /var/task/document-downloader.js:79:20",
|
|
84
|
+
" at async Runtime.handler (/opt/nodejs/node_modules/@sentry/serverless/cjs/awslambda.js:280:12)",
|
|
85
|
+
],
|
|
86
|
+
},
|
|
87
|
+
additionalInfo: {
|
|
88
|
+
documentLocation: "https://rest.api.commonwellalliance.org/v2/Binary/xxxxxx",
|
|
89
|
+
details: "Error retrieve document ({ headers: { Authorization: 'Bearer ...' }, inputUrl: 'https://rest.api.commonwellalliance.org/v2/Binary/xxxxxx', outputStream: '[object]' }); caused by connect ETIMEDOUT 107.21.162.233:443 (ETIMEDOUT); caused by connect ETIMEDOUT 107.21.162.233:443 (ETIMEDOUT)",
|
|
90
|
+
},
|
|
91
|
+
status: 500,
|
|
92
|
+
stack: [
|
|
93
|
+
"Error: CW - Error downloading document",
|
|
94
|
+
" at DocumentDownloaderLocal.downloadDocumentFromCW (/opt/nodejs/node_modules/@metriport/core/dist/external/commonwell/document/document-downloader-local.js:244:19)",
|
|
95
|
+
" at process.processTicksAndRejections (node:internal/process/task_queues:95:5)",
|
|
96
|
+
" at async DocumentDownloaderLocal.downloadFromCommonwellIntoS3 (/opt/nodejs/node_modules/@metriport/core/dist/external/commonwell/document/document-downloader-local.js:188:9)",
|
|
97
|
+
" at async executeWithRetries (/opt/nodejs/node_modules/@metriport/shared/dist/common/retry.js:46:28)",
|
|
98
|
+
" at async DocumentDownloaderLocal.download (/opt/nodejs/node_modules/@metriport/core/dist/external/commonwell/document/document-downloader-local.js:58:30)",
|
|
99
|
+
" at async /var/task/document-downloader.js:79:20",
|
|
100
|
+
" at async Runtime.handler (/opt/nodejs/node_modules/@sentry/serverless/cjs/awslambda.js:280:12)",
|
|
101
|
+
],
|
|
102
|
+
};
|
|
103
|
+
//# sourceMappingURL=axios.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"axios.js","sourceRoot":"","sources":["../../../../../../src/net/__tests__/axios.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAA2D;AAC3D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAEnB,SAAgB,SAAS;IACvB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,eAAK,CAAC,CAAC;IACvC,OAAO;QACL,KAAK,EAAE,WAAW,CAAC,kBAAkB,EAAE;QACvC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,kBAAkB,EAAE;QACzC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,kBAAkB,EAAE;QAC3C,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,kBAAkB,EAAE;QACzC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,kBAAkB,EAAE;KAChD,CAAC;AACJ,CAAC;AATD,8BASC;AAED,SAAgB,iBAAiB,CAAC,EAChC,MAAM,EACN,MAAM,EACN,IAAI,EACJ,UAAU,EACV,OAAO,EACP,MAAM,GAGP;IACC,OAAO;QACL,MAAM,EAAE,MAAM,IAAI,GAAG;QACrB,IAAI,EAAE,IAAI,IAAI,EAAE;QAChB,UAAU,EAAE,UAAU,IAAI,IAAI;QAC9B,OAAO,EAAE,OAAO,IAAI,EAAE;QACtB,MAAM,EAAE,MAAM,IAAI;YAChB,OAAO,EAAE,IAAI,oBAAY,EAAE;YAC3B,MAAM,EAAE,MAAM,IAAI,KAAK;SACxB;KACF,CAAC;AACJ,CAAC;AApBD,8CAoBC;AAEY,QAAA,wBAAwB,GAAG;IACtC,SAAS,EAAE,OAAO;IAClB,YAAY,EAAE,iCAAiC;IAC/C,KAAK,EAAE;QACL,SAAS,EAAE,OAAO;QAClB,YAAY,EAAE,yBAAyB;QACvC,KAAK,EAAE;YACL,OAAO,EAAE,sCAAsC;YAC/C,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,gDAAgD;YACvD,IAAI,EAAE,WAAW;YACjB,MAAM,EAAE,IAAI;YACZ,YAAY,EAAE,IAAI;SACnB;QACD,cAAc,EAAE;YACd,OAAO,EAAE;gBACP,aAAa,EAAE,YAAY;aAC5B;YACD,QAAQ,EAAE,0DAA0D;YACpE,YAAY,EAAE,UAAU;SACzB;QACD,KAAK,EAAE;YACL,gCAAgC;YAChC,2GAA2G;YAC3G,mFAAmF;YACnF,yGAAyG;YACzG,8KAA8K;YAC9K,mLAAmL;YACnL,yGAAyG;YACzG,+JAA+J;YAC/J,qDAAqD;YACrD,oGAAoG;SACrG;KACF;IACD,cAAc,EAAE;QACd,gBAAgB,EAAE,0DAA0D;QAC5E,OAAO,EACL,gSAAgS;KACnS;IACD,MAAM,EAAE,GAAG;IACX,KAAK,EAAE;QACL,wCAAwC;QACxC,wKAAwK;QACxK,mFAAmF;QACnF,mLAAmL;QACnL,yGAAyG;QACzG,+JAA+J;QAC/J,qDAAqD;QACrD,oGAAoG;KACrG;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry.test.d.ts","sourceRoot":"","sources":["../../../../../../src/net/__tests__/retry.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
/* eslint-disable @typescript-eslint/no-empty-function */
|
|
27
|
+
const faker_1 = require("@faker-js/faker");
|
|
28
|
+
const axios_1 = require("axios");
|
|
29
|
+
const retry = __importStar(require("../../common/retry"));
|
|
30
|
+
const metriport_error_1 = require("../../error/metriport-error");
|
|
31
|
+
const retry_1 = require("../retry");
|
|
32
|
+
const axios_2 = require("./axios");
|
|
33
|
+
describe("net retry", () => {
|
|
34
|
+
describe("executeWithNetworkRetries", () => {
|
|
35
|
+
const fn = jest.fn();
|
|
36
|
+
afterEach(() => {
|
|
37
|
+
jest.resetAllMocks();
|
|
38
|
+
});
|
|
39
|
+
it("returns when no error", async () => {
|
|
40
|
+
const expectedResult = faker_1.faker.lorem.word();
|
|
41
|
+
fn.mockImplementation(() => expectedResult);
|
|
42
|
+
const resp = await (0, retry_1.executeWithNetworkRetries)(fn, {
|
|
43
|
+
initialDelay: 1,
|
|
44
|
+
maxAttempts: 2,
|
|
45
|
+
});
|
|
46
|
+
expect(resp).toEqual(expectedResult);
|
|
47
|
+
});
|
|
48
|
+
it("retries on ECONNREFUSED", async () => {
|
|
49
|
+
fn.mockImplementation(() => {
|
|
50
|
+
const error = new axios_1.AxiosError("mock error");
|
|
51
|
+
error.code = "ECONNREFUSED";
|
|
52
|
+
throw error;
|
|
53
|
+
});
|
|
54
|
+
await expect(async () => (0, retry_1.executeWithNetworkRetries)(fn, {
|
|
55
|
+
initialDelay: 1,
|
|
56
|
+
maxAttempts: 2,
|
|
57
|
+
})).rejects.toThrow();
|
|
58
|
+
expect(fn).toHaveBeenCalledTimes(2);
|
|
59
|
+
});
|
|
60
|
+
it("retries on ECONNRESET", async () => {
|
|
61
|
+
fn.mockImplementation(() => {
|
|
62
|
+
const error = new axios_1.AxiosError("mock error");
|
|
63
|
+
error.code = "ECONNRESET";
|
|
64
|
+
throw error;
|
|
65
|
+
});
|
|
66
|
+
await expect(async () => (0, retry_1.executeWithNetworkRetries)(fn, {
|
|
67
|
+
initialDelay: 1,
|
|
68
|
+
maxAttempts: 2,
|
|
69
|
+
})).rejects.toThrow();
|
|
70
|
+
expect(fn).toHaveBeenCalledTimes(2);
|
|
71
|
+
});
|
|
72
|
+
it("does not retry on AxiosError.ETIMEDOUT", async () => {
|
|
73
|
+
fn.mockImplementation(() => {
|
|
74
|
+
const error = new axios_1.AxiosError("mock error");
|
|
75
|
+
error.code = "ETIMEDOUT";
|
|
76
|
+
throw error;
|
|
77
|
+
});
|
|
78
|
+
await expect(async () => (0, retry_1.executeWithNetworkRetries)(fn, {
|
|
79
|
+
initialDelay: 1,
|
|
80
|
+
maxAttempts: 2,
|
|
81
|
+
})).rejects.toThrow();
|
|
82
|
+
expect(fn).toHaveBeenCalledTimes(1);
|
|
83
|
+
});
|
|
84
|
+
it("does not retry on AxiosError.ECONNABORTED", async () => {
|
|
85
|
+
fn.mockImplementation(() => {
|
|
86
|
+
const error = new axios_1.AxiosError("mock error");
|
|
87
|
+
error.code = "ECONNABORTED";
|
|
88
|
+
throw error;
|
|
89
|
+
});
|
|
90
|
+
await expect(async () => (0, retry_1.executeWithNetworkRetries)(fn, {
|
|
91
|
+
initialDelay: 1,
|
|
92
|
+
maxAttempts: 2,
|
|
93
|
+
})).rejects.toThrow();
|
|
94
|
+
expect(fn).toHaveBeenCalledTimes(1);
|
|
95
|
+
});
|
|
96
|
+
it("does not retry on ECONNREFUSED when gets array of status without ECONNREFUSED", async () => {
|
|
97
|
+
fn.mockImplementation(() => {
|
|
98
|
+
const error = new axios_1.AxiosError("mock error");
|
|
99
|
+
error.code = "ECONNREFUSED";
|
|
100
|
+
throw error;
|
|
101
|
+
});
|
|
102
|
+
await expect(async () => (0, retry_1.executeWithNetworkRetries)(fn, {
|
|
103
|
+
initialDelay: 1,
|
|
104
|
+
maxAttempts: 2,
|
|
105
|
+
httpCodesToRetry: ["ECONNRESET"],
|
|
106
|
+
})).rejects.toThrow();
|
|
107
|
+
expect(fn).toHaveBeenCalledTimes(1);
|
|
108
|
+
});
|
|
109
|
+
it("does not retry on ECONNRESET when gets array of status without ECONNRESET", async () => {
|
|
110
|
+
fn.mockImplementation(() => {
|
|
111
|
+
const error = new axios_1.AxiosError("mock error");
|
|
112
|
+
error.code = "ECONNRESET";
|
|
113
|
+
throw error;
|
|
114
|
+
});
|
|
115
|
+
await expect(async () => (0, retry_1.executeWithNetworkRetries)(fn, {
|
|
116
|
+
initialDelay: 1,
|
|
117
|
+
maxAttempts: 2,
|
|
118
|
+
httpCodesToRetry: ["ECONNREFUSED"],
|
|
119
|
+
})).rejects.toThrow();
|
|
120
|
+
expect(fn).toHaveBeenCalledTimes(1);
|
|
121
|
+
});
|
|
122
|
+
it("does not retry when error is not AxiosError", async () => {
|
|
123
|
+
fn.mockImplementation(() => {
|
|
124
|
+
throw new Error("mock error");
|
|
125
|
+
});
|
|
126
|
+
await expect(async () => (0, retry_1.executeWithNetworkRetries)(fn, {
|
|
127
|
+
initialDelay: 1,
|
|
128
|
+
maxAttempts: 2,
|
|
129
|
+
})).rejects.toThrow();
|
|
130
|
+
expect(fn).toHaveBeenCalledTimes(1);
|
|
131
|
+
});
|
|
132
|
+
it("does not retry when retryOnTimeout is false and error is timeout", async () => {
|
|
133
|
+
fn.mockImplementation(() => {
|
|
134
|
+
const error = new axios_1.AxiosError("mock error");
|
|
135
|
+
error.code = axios_1.AxiosError.ETIMEDOUT;
|
|
136
|
+
throw error;
|
|
137
|
+
});
|
|
138
|
+
await expect(async () => (0, retry_1.executeWithNetworkRetries)(fn, {
|
|
139
|
+
initialDelay: 1,
|
|
140
|
+
maxAttempts: 2,
|
|
141
|
+
retryOnTimeout: false,
|
|
142
|
+
})).rejects.toThrow();
|
|
143
|
+
expect(fn).toHaveBeenCalledTimes(1);
|
|
144
|
+
});
|
|
145
|
+
it("does not retry when retryOnTimeout is empty and error is timeout", async () => {
|
|
146
|
+
fn.mockImplementation(() => {
|
|
147
|
+
const error = new axios_1.AxiosError("mock error");
|
|
148
|
+
error.code = axios_1.AxiosError.ETIMEDOUT;
|
|
149
|
+
throw error;
|
|
150
|
+
});
|
|
151
|
+
await expect(async () => (0, retry_1.executeWithNetworkRetries)(fn, {
|
|
152
|
+
initialDelay: 1,
|
|
153
|
+
maxAttempts: 2,
|
|
154
|
+
})).rejects.toThrow();
|
|
155
|
+
expect(fn).toHaveBeenCalledTimes(1);
|
|
156
|
+
});
|
|
157
|
+
it("retries when retryOnTimeout is true and error is timeout", async () => {
|
|
158
|
+
fn.mockImplementation(() => {
|
|
159
|
+
const error = new axios_1.AxiosError("mock error");
|
|
160
|
+
error.code = axios_1.AxiosError.ETIMEDOUT;
|
|
161
|
+
throw error;
|
|
162
|
+
});
|
|
163
|
+
await expect(async () => (0, retry_1.executeWithNetworkRetries)(fn, {
|
|
164
|
+
initialDelay: 1,
|
|
165
|
+
maxAttempts: 2,
|
|
166
|
+
retryOnTimeout: true,
|
|
167
|
+
})).rejects.toThrow();
|
|
168
|
+
expect(fn).toHaveBeenCalledTimes(2);
|
|
169
|
+
});
|
|
170
|
+
it("retries when retryOnTimeout is false and error is timeout and httpCodesToRetry contains timeout code", async () => {
|
|
171
|
+
fn.mockImplementation(() => {
|
|
172
|
+
const error = new axios_1.AxiosError("mock error");
|
|
173
|
+
error.code = axios_1.AxiosError.ETIMEDOUT;
|
|
174
|
+
throw error;
|
|
175
|
+
});
|
|
176
|
+
await expect(async () => (0, retry_1.executeWithNetworkRetries)(fn, {
|
|
177
|
+
initialDelay: 1,
|
|
178
|
+
maxAttempts: 2,
|
|
179
|
+
retryOnTimeout: false,
|
|
180
|
+
httpCodesToRetry: [axios_1.AxiosError.ETIMEDOUT],
|
|
181
|
+
})).rejects.toThrow();
|
|
182
|
+
expect(fn).toHaveBeenCalledTimes(2);
|
|
183
|
+
});
|
|
184
|
+
it("retries when 429 Too Many Requests and uses modified delay", async () => {
|
|
185
|
+
const spyDefaultGetTimeToWait = jest.spyOn(retry, "defaultGetTimeToWait");
|
|
186
|
+
fn.mockImplementation(() => {
|
|
187
|
+
const error = new axios_1.AxiosError("mock error");
|
|
188
|
+
error.response = {
|
|
189
|
+
status: 429,
|
|
190
|
+
data: {},
|
|
191
|
+
statusText: "Too Many Requests",
|
|
192
|
+
headers: {},
|
|
193
|
+
config: {
|
|
194
|
+
headers: new axios_1.AxiosHeaders(),
|
|
195
|
+
method: "post",
|
|
196
|
+
url: "",
|
|
197
|
+
},
|
|
198
|
+
};
|
|
199
|
+
throw error;
|
|
200
|
+
});
|
|
201
|
+
await expect(async () => (0, retry_1.executeWithNetworkRetries)(fn, {
|
|
202
|
+
initialDelay: 1,
|
|
203
|
+
maxAttempts: 2,
|
|
204
|
+
})).rejects.toThrow();
|
|
205
|
+
expect(fn).toHaveBeenCalledTimes(2);
|
|
206
|
+
expect(spyDefaultGetTimeToWait).toHaveBeenCalledWith(expect.objectContaining({
|
|
207
|
+
initialDelay: 3,
|
|
208
|
+
}));
|
|
209
|
+
});
|
|
210
|
+
});
|
|
211
|
+
describe("getHttpCodeFromError", () => {
|
|
212
|
+
it("returns undefined when error is not Axios", async () => {
|
|
213
|
+
const resp = (0, retry_1.getHttpCodeFromError)(new Error("something"));
|
|
214
|
+
expect(resp).toBeFalsy();
|
|
215
|
+
});
|
|
216
|
+
it("returns code when error is Axios", async () => {
|
|
217
|
+
const expectedCode = faker_1.faker.lorem.word();
|
|
218
|
+
const error = new axios_1.AxiosError("something");
|
|
219
|
+
error.code = expectedCode;
|
|
220
|
+
const resp = (0, retry_1.getHttpCodeFromError)(error);
|
|
221
|
+
expect(resp).toEqual(expectedCode);
|
|
222
|
+
});
|
|
223
|
+
it("returns code when error is not axios but the cause is", async () => {
|
|
224
|
+
const expectedCode = faker_1.faker.lorem.word();
|
|
225
|
+
const error = new axios_1.AxiosError("something");
|
|
226
|
+
error.code = expectedCode;
|
|
227
|
+
const resp = (0, retry_1.getHttpCodeFromError)(new metriport_error_1.MetriportError("something", error));
|
|
228
|
+
expect(resp).toEqual(expectedCode);
|
|
229
|
+
});
|
|
230
|
+
it("returns code when error is not axios but the 2nd cause is", async () => {
|
|
231
|
+
const expectedCode = "ETIMEDOUT";
|
|
232
|
+
const resp = (0, retry_1.getHttpCodeFromError)(axios_2.errorWithCauseAxiosError);
|
|
233
|
+
expect(resp).toEqual(expectedCode);
|
|
234
|
+
});
|
|
235
|
+
});
|
|
236
|
+
describe("getHttpStatusFromError", () => {
|
|
237
|
+
it("returns undefined when error is not Axios", async () => {
|
|
238
|
+
const resp = (0, retry_1.getHttpStatusFromError)(new Error("something"));
|
|
239
|
+
expect(resp).toBeFalsy();
|
|
240
|
+
});
|
|
241
|
+
it("returns status when error is Axios", async () => {
|
|
242
|
+
const expectedStatus = faker_1.faker.number.int();
|
|
243
|
+
const error = new axios_1.AxiosError("something");
|
|
244
|
+
error.response = (0, axios_2.makeAxiosResponse)({ status: expectedStatus });
|
|
245
|
+
const resp = (0, retry_1.getHttpStatusFromError)(error);
|
|
246
|
+
expect(resp).toEqual(expectedStatus);
|
|
247
|
+
});
|
|
248
|
+
it("returns status when error is not axios but the cause is", async () => {
|
|
249
|
+
const expectedStatus = faker_1.faker.number.int();
|
|
250
|
+
const error = new axios_1.AxiosError("something");
|
|
251
|
+
error.response = (0, axios_2.makeAxiosResponse)({ status: expectedStatus });
|
|
252
|
+
const resp = (0, retry_1.getHttpStatusFromError)(new metriport_error_1.MetriportError("something", error));
|
|
253
|
+
expect(resp).toEqual(expectedStatus);
|
|
254
|
+
});
|
|
255
|
+
});
|
|
256
|
+
});
|
|
257
|
+
//# sourceMappingURL=retry.test.js.map
|