@opengovsg/refx-ts-sdk 0.0.7
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/Client.d.ts +66 -0
- package/Client.js +178 -0
- package/README.md +153 -0
- package/api/client/index.d.ts +1 -0
- package/api/client/index.js +17 -0
- package/api/client/requests/CreateNoteReq.d.ts +15 -0
- package/api/client/requests/CreateNoteReq.js +5 -0
- package/api/client/requests/index.d.ts +1 -0
- package/api/client/requests/index.js +2 -0
- package/api/errors/NotFoundError.d.ts +7 -0
- package/api/errors/NotFoundError.js +41 -0
- package/api/errors/index.d.ts +1 -0
- package/api/errors/index.js +17 -0
- package/api/index.d.ts +4 -0
- package/api/index.js +20 -0
- package/api/resources/eligibility/client/Client.d.ts +40 -0
- package/api/resources/eligibility/client/Client.js +108 -0
- package/api/resources/eligibility/client/index.d.ts +1 -0
- package/api/resources/eligibility/client/index.js +17 -0
- package/api/resources/eligibility/client/requests/EligibilityGetRequest.d.ts +20 -0
- package/api/resources/eligibility/client/requests/EligibilityGetRequest.js +5 -0
- package/api/resources/eligibility/client/requests/index.d.ts +1 -0
- package/api/resources/eligibility/client/requests/index.js +2 -0
- package/api/resources/eligibility/index.d.ts +1 -0
- package/api/resources/eligibility/index.js +17 -0
- package/api/resources/health/client/Client.d.ts +36 -0
- package/api/resources/health/client/Client.js +99 -0
- package/api/resources/health/client/index.d.ts +1 -0
- package/api/resources/health/client/index.js +2 -0
- package/api/resources/health/index.d.ts +1 -0
- package/api/resources/health/index.js +17 -0
- package/api/resources/index.d.ts +11 -0
- package/api/resources/index.js +40 -0
- package/api/resources/offerings/client/Client.d.ts +55 -0
- package/api/resources/offerings/client/Client.js +197 -0
- package/api/resources/offerings/client/index.d.ts +1 -0
- package/api/resources/offerings/client/index.js +17 -0
- package/api/resources/offerings/client/requests/OfferingsListTimeslotsRequest.d.ts +13 -0
- package/api/resources/offerings/client/requests/OfferingsListTimeslotsRequest.js +5 -0
- package/api/resources/offerings/client/requests/index.d.ts +1 -0
- package/api/resources/offerings/client/requests/index.js +2 -0
- package/api/resources/offerings/index.d.ts +1 -0
- package/api/resources/offerings/index.js +17 -0
- package/api/resources/public/client/Client.d.ts +40 -0
- package/api/resources/public/client/Client.js +115 -0
- package/api/resources/public/client/index.d.ts +1 -0
- package/api/resources/public/client/index.js +17 -0
- package/api/resources/public/client/requests/PublicGetReferralRequest.d.ts +10 -0
- package/api/resources/public/client/requests/PublicGetReferralRequest.js +5 -0
- package/api/resources/public/client/requests/index.d.ts +1 -0
- package/api/resources/public/client/requests/index.js +2 -0
- package/api/resources/public/index.d.ts +1 -0
- package/api/resources/public/index.js +17 -0
- package/api/resources/referrals/client/Client.d.ts +131 -0
- package/api/resources/referrals/client/Client.js +478 -0
- package/api/resources/referrals/client/index.d.ts +1 -0
- package/api/resources/referrals/client/index.js +17 -0
- package/api/resources/referrals/client/requests/AmendReferralReq.d.ts +13 -0
- package/api/resources/referrals/client/requests/AmendReferralReq.js +5 -0
- package/api/resources/referrals/client/requests/CancelReferralReq.d.ts +13 -0
- package/api/resources/referrals/client/requests/CancelReferralReq.js +5 -0
- package/api/resources/referrals/client/requests/CreateReferralReq.d.ts +59 -0
- package/api/resources/referrals/client/requests/CreateReferralReq.js +5 -0
- package/api/resources/referrals/client/requests/EaConfirmReferralBody.d.ts +15 -0
- package/api/resources/referrals/client/requests/EaConfirmReferralBody.js +5 -0
- package/api/resources/referrals/client/requests/EaRejectReferralBody.d.ts +13 -0
- package/api/resources/referrals/client/requests/EaRejectReferralBody.js +5 -0
- package/api/resources/referrals/client/requests/ReferralsGetRequest.d.ts +10 -0
- package/api/resources/referrals/client/requests/ReferralsGetRequest.js +5 -0
- package/api/resources/referrals/client/requests/ReferralsListRequest.d.ts +29 -0
- package/api/resources/referrals/client/requests/ReferralsListRequest.js +5 -0
- package/api/resources/referrals/client/requests/index.d.ts +7 -0
- package/api/resources/referrals/client/requests/index.js +2 -0
- package/api/resources/referrals/index.d.ts +2 -0
- package/api/resources/referrals/index.js +18 -0
- package/api/resources/referrals/types/ReferralsListRequestRole.d.ts +8 -0
- package/api/resources/referrals/types/ReferralsListRequestRole.js +10 -0
- package/api/resources/referrals/types/ReferralsListRequestStatusItem.d.ts +11 -0
- package/api/resources/referrals/types/ReferralsListRequestStatusItem.js +13 -0
- package/api/resources/referrals/types/index.d.ts +2 -0
- package/api/resources/referrals/types/index.js +18 -0
- package/api/resources/webhooks/client/Client.d.ts +43 -0
- package/api/resources/webhooks/client/Client.js +143 -0
- package/api/resources/webhooks/client/index.d.ts +1 -0
- package/api/resources/webhooks/client/index.js +2 -0
- package/api/resources/webhooks/index.d.ts +1 -0
- package/api/resources/webhooks/index.js +17 -0
- package/api/types/AttachmentDto.d.ts +7 -0
- package/api/types/AttachmentDto.js +5 -0
- package/api/types/CancelledEventMetadata.d.ts +6 -0
- package/api/types/CancelledEventMetadata.js +5 -0
- package/api/types/CreatePatientReq.d.ts +16 -0
- package/api/types/CreatePatientReq.js +5 -0
- package/api/types/CreatePatientReqGender.d.ts +11 -0
- package/api/types/CreatePatientReqGender.js +10 -0
- package/api/types/CreatedEventMetadata.d.ts +6 -0
- package/api/types/CreatedEventMetadata.js +5 -0
- package/api/types/EaReminderSentMetadata.d.ts +6 -0
- package/api/types/EaReminderSentMetadata.js +5 -0
- package/api/types/EligibilityRes.d.ts +8 -0
- package/api/types/EligibilityRes.js +5 -0
- package/api/types/FormResponse.d.ts +5 -0
- package/api/types/FormResponse.js +5 -0
- package/api/types/FullReferralDto.d.ts +26 -0
- package/api/types/FullReferralDto.js +5 -0
- package/api/types/FullReferralDtoReferringDoctor.d.ts +9 -0
- package/api/types/FullReferralDtoReferringDoctor.js +5 -0
- package/api/types/FullReferralDtoStatus.d.ts +21 -0
- package/api/types/FullReferralDtoStatus.js +23 -0
- package/api/types/GetReferralPatientDto.d.ts +18 -0
- package/api/types/GetReferralPatientDto.js +5 -0
- package/api/types/GetReferralPatientDtoGender.d.ts +11 -0
- package/api/types/GetReferralPatientDtoGender.js +10 -0
- package/api/types/InstitutionCoreDto.d.ts +14 -0
- package/api/types/InstitutionCoreDto.js +5 -0
- package/api/types/NoteCreatedMetadata.d.ts +8 -0
- package/api/types/NoteCreatedMetadata.js +5 -0
- package/api/types/NoteDto.d.ts +11 -0
- package/api/types/NoteDto.js +5 -0
- package/api/types/OfferingCoreDto.d.ts +15 -0
- package/api/types/OfferingCoreDto.js +5 -0
- package/api/types/OfferingFullDto.d.ts +18 -0
- package/api/types/OfferingFullDto.js +5 -0
- package/api/types/OkResponse.d.ts +6 -0
- package/api/types/OkResponse.js +5 -0
- package/api/types/PaginatedQuery.d.ts +9 -0
- package/api/types/PaginatedQuery.js +5 -0
- package/api/types/PaginatedReferralsDto.d.ts +8 -0
- package/api/types/PaginatedReferralsDto.js +5 -0
- package/api/types/PaginationMetadata.d.ts +9 -0
- package/api/types/PaginationMetadata.js +5 -0
- package/api/types/PublicReferralDto.d.ts +19 -0
- package/api/types/PublicReferralDto.js +5 -0
- package/api/types/PublicReferralDtoReferringDoctor.d.ts +9 -0
- package/api/types/PublicReferralDtoReferringDoctor.js +5 -0
- package/api/types/ReferralAmendedMetadata.d.ts +7 -0
- package/api/types/ReferralAmendedMetadata.js +5 -0
- package/api/types/ReferralDto.d.ts +25 -0
- package/api/types/ReferralDto.js +5 -0
- package/api/types/ReferralDtoReferringDoctor.d.ts +9 -0
- package/api/types/ReferralDtoReferringDoctor.js +5 -0
- package/api/types/ReferralDtoStatus.d.ts +21 -0
- package/api/types/ReferralDtoStatus.js +23 -0
- package/api/types/ReferralEligibility.d.ts +7 -0
- package/api/types/ReferralEligibility.js +5 -0
- package/api/types/RejectedEventMetadata.d.ts +7 -0
- package/api/types/RejectedEventMetadata.js +5 -0
- package/api/types/RescheduleEventMetadata.d.ts +8 -0
- package/api/types/RescheduleEventMetadata.js +5 -0
- package/api/types/SingHealthPatientDetailsMetadata.d.ts +7 -0
- package/api/types/SingHealthPatientDetailsMetadata.js +5 -0
- package/api/types/SubsidyEligibility.d.ts +8 -0
- package/api/types/SubsidyEligibility.js +5 -0
- package/api/types/TimelineEventDto.d.ts +10 -0
- package/api/types/TimelineEventDto.js +5 -0
- package/api/types/TimelineEventDtoMetadata.d.ts +5 -0
- package/api/types/TimelineEventDtoMetadata.js +5 -0
- package/api/types/TimelineEventDtoSystem.d.ts +10 -0
- package/api/types/TimelineEventDtoSystem.js +12 -0
- package/api/types/TimelineEventDtoType.d.ts +25 -0
- package/api/types/TimelineEventDtoType.js +27 -0
- package/api/types/Timeslot.d.ts +9 -0
- package/api/types/Timeslot.js +5 -0
- package/api/types/index.d.ts +38 -0
- package/api/types/index.js +54 -0
- package/core/fetcher/APIResponse.d.ts +10 -0
- package/core/fetcher/APIResponse.js +2 -0
- package/core/fetcher/Fetcher.d.ts +39 -0
- package/core/fetcher/Fetcher.js +99 -0
- package/core/fetcher/Supplier.d.ts +4 -0
- package/core/fetcher/Supplier.js +22 -0
- package/core/fetcher/createRequestUrl.d.ts +1 -0
- package/core/fetcher/createRequestUrl.js +13 -0
- package/core/fetcher/getFetchFn.d.ts +4 -0
- package/core/fetcher/getFetchFn.js +59 -0
- package/core/fetcher/getHeader.d.ts +1 -0
- package/core/fetcher/getHeader.js +12 -0
- package/core/fetcher/getRequestBody.d.ts +7 -0
- package/core/fetcher/getRequestBody.js +23 -0
- package/core/fetcher/getResponseBody.d.ts +1 -0
- package/core/fetcher/getResponseBody.js +55 -0
- package/core/fetcher/index.d.ts +5 -0
- package/core/fetcher/index.js +9 -0
- package/core/fetcher/makeRequest.d.ts +1 -0
- package/core/fetcher/makeRequest.js +42 -0
- package/core/fetcher/requestWithRetries.d.ts +1 -0
- package/core/fetcher/requestWithRetries.js +41 -0
- package/core/fetcher/signals.d.ts +12 -0
- package/core/fetcher/signals.js +37 -0
- package/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.d.ts +30 -0
- package/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.js +247 -0
- package/core/fetcher/stream-wrappers/NodePre18StreamWrapper.d.ts +22 -0
- package/core/fetcher/stream-wrappers/NodePre18StreamWrapper.js +124 -0
- package/core/fetcher/stream-wrappers/UndiciStreamWrapper.d.ts +31 -0
- package/core/fetcher/stream-wrappers/UndiciStreamWrapper.js +229 -0
- package/core/fetcher/stream-wrappers/chooseStreamWrapper.d.ts +18 -0
- package/core/fetcher/stream-wrappers/chooseStreamWrapper.js +50 -0
- package/core/index.d.ts +2 -0
- package/core/index.js +18 -0
- package/core/runtime/index.d.ts +1 -0
- package/core/runtime/index.js +5 -0
- package/core/runtime/runtime.d.ts +9 -0
- package/core/runtime/runtime.js +93 -0
- package/dist/Client.d.ts +66 -0
- package/dist/Client.js +178 -0
- package/dist/api/client/index.d.ts +1 -0
- package/dist/api/client/index.js +17 -0
- package/dist/api/client/requests/CreateNoteReq.d.ts +15 -0
- package/dist/api/client/requests/CreateNoteReq.js +5 -0
- package/dist/api/client/requests/index.d.ts +1 -0
- package/dist/api/client/requests/index.js +2 -0
- package/dist/api/errors/NotFoundError.d.ts +7 -0
- package/dist/api/errors/NotFoundError.js +41 -0
- package/dist/api/errors/index.d.ts +1 -0
- package/dist/api/errors/index.js +17 -0
- package/dist/api/index.d.ts +4 -0
- package/dist/api/index.js +20 -0
- package/dist/api/resources/eligibility/client/Client.d.ts +40 -0
- package/dist/api/resources/eligibility/client/Client.js +108 -0
- package/dist/api/resources/eligibility/client/index.d.ts +1 -0
- package/dist/api/resources/eligibility/client/index.js +17 -0
- package/dist/api/resources/eligibility/client/requests/EligibilityGetRequest.d.ts +20 -0
- package/dist/api/resources/eligibility/client/requests/EligibilityGetRequest.js +5 -0
- package/dist/api/resources/eligibility/client/requests/index.d.ts +1 -0
- package/dist/api/resources/eligibility/client/requests/index.js +2 -0
- package/dist/api/resources/eligibility/index.d.ts +1 -0
- package/dist/api/resources/eligibility/index.js +17 -0
- package/dist/api/resources/health/client/Client.d.ts +36 -0
- package/dist/api/resources/health/client/Client.js +99 -0
- package/dist/api/resources/health/client/index.d.ts +1 -0
- package/dist/api/resources/health/client/index.js +2 -0
- package/dist/api/resources/health/index.d.ts +1 -0
- package/dist/api/resources/health/index.js +17 -0
- package/dist/api/resources/index.d.ts +11 -0
- package/dist/api/resources/index.js +40 -0
- package/dist/api/resources/offerings/client/Client.d.ts +55 -0
- package/dist/api/resources/offerings/client/Client.js +197 -0
- package/dist/api/resources/offerings/client/index.d.ts +1 -0
- package/dist/api/resources/offerings/client/index.js +17 -0
- package/dist/api/resources/offerings/client/requests/OfferingsListTimeslotsRequest.d.ts +13 -0
- package/dist/api/resources/offerings/client/requests/OfferingsListTimeslotsRequest.js +5 -0
- package/dist/api/resources/offerings/client/requests/index.d.ts +1 -0
- package/dist/api/resources/offerings/client/requests/index.js +2 -0
- package/dist/api/resources/offerings/index.d.ts +1 -0
- package/dist/api/resources/offerings/index.js +17 -0
- package/dist/api/resources/public/client/Client.d.ts +40 -0
- package/dist/api/resources/public/client/Client.js +115 -0
- package/dist/api/resources/public/client/index.d.ts +1 -0
- package/dist/api/resources/public/client/index.js +17 -0
- package/dist/api/resources/public/client/requests/PublicGetReferralRequest.d.ts +10 -0
- package/dist/api/resources/public/client/requests/PublicGetReferralRequest.js +5 -0
- package/dist/api/resources/public/client/requests/index.d.ts +1 -0
- package/dist/api/resources/public/client/requests/index.js +2 -0
- package/dist/api/resources/public/index.d.ts +1 -0
- package/dist/api/resources/public/index.js +17 -0
- package/dist/api/resources/referrals/client/Client.d.ts +131 -0
- package/dist/api/resources/referrals/client/Client.js +478 -0
- package/dist/api/resources/referrals/client/index.d.ts +1 -0
- package/dist/api/resources/referrals/client/index.js +17 -0
- package/dist/api/resources/referrals/client/requests/AmendReferralReq.d.ts +13 -0
- package/dist/api/resources/referrals/client/requests/AmendReferralReq.js +5 -0
- package/dist/api/resources/referrals/client/requests/CancelReferralReq.d.ts +13 -0
- package/dist/api/resources/referrals/client/requests/CancelReferralReq.js +5 -0
- package/dist/api/resources/referrals/client/requests/CreateReferralReq.d.ts +59 -0
- package/dist/api/resources/referrals/client/requests/CreateReferralReq.js +5 -0
- package/dist/api/resources/referrals/client/requests/EaConfirmReferralBody.d.ts +15 -0
- package/dist/api/resources/referrals/client/requests/EaConfirmReferralBody.js +5 -0
- package/dist/api/resources/referrals/client/requests/EaRejectReferralBody.d.ts +13 -0
- package/dist/api/resources/referrals/client/requests/EaRejectReferralBody.js +5 -0
- package/dist/api/resources/referrals/client/requests/ReferralsGetRequest.d.ts +10 -0
- package/dist/api/resources/referrals/client/requests/ReferralsGetRequest.js +5 -0
- package/dist/api/resources/referrals/client/requests/ReferralsListRequest.d.ts +29 -0
- package/dist/api/resources/referrals/client/requests/ReferralsListRequest.js +5 -0
- package/dist/api/resources/referrals/client/requests/index.d.ts +7 -0
- package/dist/api/resources/referrals/client/requests/index.js +2 -0
- package/dist/api/resources/referrals/index.d.ts +2 -0
- package/dist/api/resources/referrals/index.js +18 -0
- package/dist/api/resources/referrals/types/ReferralsListRequestRole.d.ts +8 -0
- package/dist/api/resources/referrals/types/ReferralsListRequestRole.js +10 -0
- package/dist/api/resources/referrals/types/ReferralsListRequestStatusItem.d.ts +11 -0
- package/dist/api/resources/referrals/types/ReferralsListRequestStatusItem.js +13 -0
- package/dist/api/resources/referrals/types/index.d.ts +2 -0
- package/dist/api/resources/referrals/types/index.js +18 -0
- package/dist/api/resources/webhooks/client/Client.d.ts +43 -0
- package/dist/api/resources/webhooks/client/Client.js +143 -0
- package/dist/api/resources/webhooks/client/index.d.ts +1 -0
- package/dist/api/resources/webhooks/client/index.js +2 -0
- package/dist/api/resources/webhooks/index.d.ts +1 -0
- package/dist/api/resources/webhooks/index.js +17 -0
- package/dist/api/types/AttachmentDto.d.ts +7 -0
- package/dist/api/types/AttachmentDto.js +5 -0
- package/dist/api/types/CancelledEventMetadata.d.ts +6 -0
- package/dist/api/types/CancelledEventMetadata.js +5 -0
- package/dist/api/types/CreatePatientReq.d.ts +16 -0
- package/dist/api/types/CreatePatientReq.js +5 -0
- package/dist/api/types/CreatePatientReqGender.d.ts +11 -0
- package/dist/api/types/CreatePatientReqGender.js +10 -0
- package/dist/api/types/CreatedEventMetadata.d.ts +6 -0
- package/dist/api/types/CreatedEventMetadata.js +5 -0
- package/dist/api/types/EaReminderSentMetadata.d.ts +6 -0
- package/dist/api/types/EaReminderSentMetadata.js +5 -0
- package/dist/api/types/EligibilityRes.d.ts +8 -0
- package/dist/api/types/EligibilityRes.js +5 -0
- package/dist/api/types/FormResponse.d.ts +5 -0
- package/dist/api/types/FormResponse.js +5 -0
- package/dist/api/types/FullReferralDto.d.ts +26 -0
- package/dist/api/types/FullReferralDto.js +5 -0
- package/dist/api/types/FullReferralDtoReferringDoctor.d.ts +9 -0
- package/dist/api/types/FullReferralDtoReferringDoctor.js +5 -0
- package/dist/api/types/FullReferralDtoStatus.d.ts +21 -0
- package/dist/api/types/FullReferralDtoStatus.js +23 -0
- package/dist/api/types/GetReferralPatientDto.d.ts +18 -0
- package/dist/api/types/GetReferralPatientDto.js +5 -0
- package/dist/api/types/GetReferralPatientDtoGender.d.ts +11 -0
- package/dist/api/types/GetReferralPatientDtoGender.js +10 -0
- package/dist/api/types/InstitutionCoreDto.d.ts +14 -0
- package/dist/api/types/InstitutionCoreDto.js +5 -0
- package/dist/api/types/NoteCreatedMetadata.d.ts +8 -0
- package/dist/api/types/NoteCreatedMetadata.js +5 -0
- package/dist/api/types/NoteDto.d.ts +11 -0
- package/dist/api/types/NoteDto.js +5 -0
- package/dist/api/types/OfferingCoreDto.d.ts +15 -0
- package/dist/api/types/OfferingCoreDto.js +5 -0
- package/dist/api/types/OfferingFullDto.d.ts +18 -0
- package/dist/api/types/OfferingFullDto.js +5 -0
- package/dist/api/types/OkResponse.d.ts +6 -0
- package/dist/api/types/OkResponse.js +5 -0
- package/dist/api/types/PaginatedQuery.d.ts +9 -0
- package/dist/api/types/PaginatedQuery.js +5 -0
- package/dist/api/types/PaginatedReferralsDto.d.ts +8 -0
- package/dist/api/types/PaginatedReferralsDto.js +5 -0
- package/dist/api/types/PaginationMetadata.d.ts +9 -0
- package/dist/api/types/PaginationMetadata.js +5 -0
- package/dist/api/types/PublicReferralDto.d.ts +19 -0
- package/dist/api/types/PublicReferralDto.js +5 -0
- package/dist/api/types/PublicReferralDtoReferringDoctor.d.ts +9 -0
- package/dist/api/types/PublicReferralDtoReferringDoctor.js +5 -0
- package/dist/api/types/ReferralAmendedMetadata.d.ts +7 -0
- package/dist/api/types/ReferralAmendedMetadata.js +5 -0
- package/dist/api/types/ReferralDto.d.ts +25 -0
- package/dist/api/types/ReferralDto.js +5 -0
- package/dist/api/types/ReferralDtoReferringDoctor.d.ts +9 -0
- package/dist/api/types/ReferralDtoReferringDoctor.js +5 -0
- package/dist/api/types/ReferralDtoStatus.d.ts +21 -0
- package/dist/api/types/ReferralDtoStatus.js +23 -0
- package/dist/api/types/ReferralEligibility.d.ts +7 -0
- package/dist/api/types/ReferralEligibility.js +5 -0
- package/dist/api/types/RejectedEventMetadata.d.ts +7 -0
- package/dist/api/types/RejectedEventMetadata.js +5 -0
- package/dist/api/types/RescheduleEventMetadata.d.ts +8 -0
- package/dist/api/types/RescheduleEventMetadata.js +5 -0
- package/dist/api/types/SingHealthPatientDetailsMetadata.d.ts +7 -0
- package/dist/api/types/SingHealthPatientDetailsMetadata.js +5 -0
- package/dist/api/types/SubsidyEligibility.d.ts +8 -0
- package/dist/api/types/SubsidyEligibility.js +5 -0
- package/dist/api/types/TimelineEventDto.d.ts +10 -0
- package/dist/api/types/TimelineEventDto.js +5 -0
- package/dist/api/types/TimelineEventDtoMetadata.d.ts +5 -0
- package/dist/api/types/TimelineEventDtoMetadata.js +5 -0
- package/dist/api/types/TimelineEventDtoSystem.d.ts +10 -0
- package/dist/api/types/TimelineEventDtoSystem.js +12 -0
- package/dist/api/types/TimelineEventDtoType.d.ts +25 -0
- package/dist/api/types/TimelineEventDtoType.js +27 -0
- package/dist/api/types/Timeslot.d.ts +9 -0
- package/dist/api/types/Timeslot.js +5 -0
- package/dist/api/types/index.d.ts +38 -0
- package/dist/api/types/index.js +54 -0
- package/dist/core/fetcher/APIResponse.d.ts +10 -0
- package/dist/core/fetcher/APIResponse.js +2 -0
- package/dist/core/fetcher/Fetcher.d.ts +39 -0
- package/dist/core/fetcher/Fetcher.js +99 -0
- package/dist/core/fetcher/Supplier.d.ts +4 -0
- package/dist/core/fetcher/Supplier.js +22 -0
- package/dist/core/fetcher/createRequestUrl.d.ts +1 -0
- package/dist/core/fetcher/createRequestUrl.js +13 -0
- package/dist/core/fetcher/getFetchFn.d.ts +4 -0
- package/dist/core/fetcher/getFetchFn.js +59 -0
- package/dist/core/fetcher/getHeader.d.ts +1 -0
- package/dist/core/fetcher/getHeader.js +12 -0
- package/dist/core/fetcher/getRequestBody.d.ts +7 -0
- package/dist/core/fetcher/getRequestBody.js +23 -0
- package/dist/core/fetcher/getResponseBody.d.ts +1 -0
- package/dist/core/fetcher/getResponseBody.js +55 -0
- package/dist/core/fetcher/index.d.ts +5 -0
- package/dist/core/fetcher/index.js +9 -0
- package/dist/core/fetcher/makeRequest.d.ts +1 -0
- package/dist/core/fetcher/makeRequest.js +42 -0
- package/dist/core/fetcher/requestWithRetries.d.ts +1 -0
- package/dist/core/fetcher/requestWithRetries.js +41 -0
- package/dist/core/fetcher/signals.d.ts +12 -0
- package/dist/core/fetcher/signals.js +37 -0
- package/dist/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.d.ts +30 -0
- package/dist/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.js +247 -0
- package/dist/core/fetcher/stream-wrappers/NodePre18StreamWrapper.d.ts +22 -0
- package/dist/core/fetcher/stream-wrappers/NodePre18StreamWrapper.js +124 -0
- package/dist/core/fetcher/stream-wrappers/UndiciStreamWrapper.d.ts +31 -0
- package/dist/core/fetcher/stream-wrappers/UndiciStreamWrapper.js +229 -0
- package/dist/core/fetcher/stream-wrappers/chooseStreamWrapper.d.ts +18 -0
- package/dist/core/fetcher/stream-wrappers/chooseStreamWrapper.js +50 -0
- package/dist/core/index.d.ts +2 -0
- package/dist/core/index.js +18 -0
- package/dist/core/runtime/index.d.ts +1 -0
- package/dist/core/runtime/index.js +5 -0
- package/dist/core/runtime/runtime.d.ts +9 -0
- package/dist/core/runtime/runtime.js +93 -0
- package/dist/errors/ReferralExchangeError.d.ts +12 -0
- package/dist/errors/ReferralExchangeError.js +32 -0
- package/dist/errors/ReferralExchangeTimeoutError.d.ts +6 -0
- package/dist/errors/ReferralExchangeTimeoutError.js +13 -0
- package/dist/errors/index.d.ts +2 -0
- package/dist/errors/index.js +7 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +32 -0
- package/dist/version.d.ts +1 -0
- package/dist/version.js +4 -0
- package/errors/ReferralExchangeError.d.ts +12 -0
- package/errors/ReferralExchangeError.js +32 -0
- package/errors/ReferralExchangeTimeoutError.d.ts +6 -0
- package/errors/ReferralExchangeTimeoutError.js +13 -0
- package/errors/index.d.ts +2 -0
- package/errors/index.js +7 -0
- package/index.d.ts +3 -0
- package/index.js +32 -0
- package/jest.config.js +5 -0
- package/package.json +42 -0
- package/reference.md +901 -0
- package/version.d.ts +1 -0
- package/version.js +4 -0
|
@@ -0,0 +1,54 @@
|
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./ReferralEligibility"), exports);
|
|
18
|
+
__exportStar(require("./SubsidyEligibility"), exports);
|
|
19
|
+
__exportStar(require("./EligibilityRes"), exports);
|
|
20
|
+
__exportStar(require("./InstitutionCoreDto"), exports);
|
|
21
|
+
__exportStar(require("./OfferingFullDto"), exports);
|
|
22
|
+
__exportStar(require("./GetReferralPatientDtoGender"), exports);
|
|
23
|
+
__exportStar(require("./GetReferralPatientDto"), exports);
|
|
24
|
+
__exportStar(require("./FormResponse"), exports);
|
|
25
|
+
__exportStar(require("./AttachmentDto"), exports);
|
|
26
|
+
__exportStar(require("./NoteDto"), exports);
|
|
27
|
+
__exportStar(require("./ReferralDtoReferringDoctor"), exports);
|
|
28
|
+
__exportStar(require("./ReferralDtoStatus"), exports);
|
|
29
|
+
__exportStar(require("./ReferralDto"), exports);
|
|
30
|
+
__exportStar(require("./PaginatedQuery"), exports);
|
|
31
|
+
__exportStar(require("./PaginationMetadata"), exports);
|
|
32
|
+
__exportStar(require("./PaginatedReferralsDto"), exports);
|
|
33
|
+
__exportStar(require("./CreatedEventMetadata"), exports);
|
|
34
|
+
__exportStar(require("./RejectedEventMetadata"), exports);
|
|
35
|
+
__exportStar(require("./NoteCreatedMetadata"), exports);
|
|
36
|
+
__exportStar(require("./RescheduleEventMetadata"), exports);
|
|
37
|
+
__exportStar(require("./SingHealthPatientDetailsMetadata"), exports);
|
|
38
|
+
__exportStar(require("./CancelledEventMetadata"), exports);
|
|
39
|
+
__exportStar(require("./ReferralAmendedMetadata"), exports);
|
|
40
|
+
__exportStar(require("./EaReminderSentMetadata"), exports);
|
|
41
|
+
__exportStar(require("./TimelineEventDtoType"), exports);
|
|
42
|
+
__exportStar(require("./TimelineEventDtoMetadata"), exports);
|
|
43
|
+
__exportStar(require("./TimelineEventDtoSystem"), exports);
|
|
44
|
+
__exportStar(require("./TimelineEventDto"), exports);
|
|
45
|
+
__exportStar(require("./FullReferralDtoReferringDoctor"), exports);
|
|
46
|
+
__exportStar(require("./FullReferralDtoStatus"), exports);
|
|
47
|
+
__exportStar(require("./FullReferralDto"), exports);
|
|
48
|
+
__exportStar(require("./CreatePatientReqGender"), exports);
|
|
49
|
+
__exportStar(require("./CreatePatientReq"), exports);
|
|
50
|
+
__exportStar(require("./OfferingCoreDto"), exports);
|
|
51
|
+
__exportStar(require("./Timeslot"), exports);
|
|
52
|
+
__exportStar(require("./PublicReferralDtoReferringDoctor"), exports);
|
|
53
|
+
__exportStar(require("./PublicReferralDto"), exports);
|
|
54
|
+
__exportStar(require("./OkResponse"), exports);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare type APIResponse<Success, Failure> = SuccessfulResponse<Success> | FailedResponse<Failure>;
|
|
2
|
+
export interface SuccessfulResponse<T> {
|
|
3
|
+
ok: true;
|
|
4
|
+
body: T;
|
|
5
|
+
headers?: Record<string, any>;
|
|
6
|
+
}
|
|
7
|
+
export interface FailedResponse<T> {
|
|
8
|
+
ok: false;
|
|
9
|
+
error: T;
|
|
10
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { APIResponse } from "./APIResponse";
|
|
2
|
+
export declare type FetchFunction = <R = unknown>(args: Fetcher.Args) => Promise<APIResponse<R, Fetcher.Error>>;
|
|
3
|
+
export declare namespace Fetcher {
|
|
4
|
+
interface Args {
|
|
5
|
+
url: string;
|
|
6
|
+
method: string;
|
|
7
|
+
contentType?: string;
|
|
8
|
+
headers?: Record<string, string | undefined>;
|
|
9
|
+
queryParameters?: Record<string, string | string[] | object | object[]>;
|
|
10
|
+
body?: unknown;
|
|
11
|
+
timeoutMs?: number;
|
|
12
|
+
maxRetries?: number;
|
|
13
|
+
withCredentials?: boolean;
|
|
14
|
+
abortSignal?: AbortSignal;
|
|
15
|
+
requestType?: "json" | "file" | "bytes";
|
|
16
|
+
responseType?: "json" | "blob" | "sse" | "streaming" | "text" | "arrayBuffer";
|
|
17
|
+
duplex?: "half";
|
|
18
|
+
}
|
|
19
|
+
type Error = FailedStatusCodeError | NonJsonError | TimeoutError | UnknownError;
|
|
20
|
+
interface FailedStatusCodeError {
|
|
21
|
+
reason: "status-code";
|
|
22
|
+
statusCode: number;
|
|
23
|
+
body: unknown;
|
|
24
|
+
}
|
|
25
|
+
interface NonJsonError {
|
|
26
|
+
reason: "non-json";
|
|
27
|
+
statusCode: number;
|
|
28
|
+
rawBody: string;
|
|
29
|
+
}
|
|
30
|
+
interface TimeoutError {
|
|
31
|
+
reason: "timeout";
|
|
32
|
+
}
|
|
33
|
+
interface UnknownError {
|
|
34
|
+
reason: "unknown";
|
|
35
|
+
errorMessage: string;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
export declare function fetcherImpl<R = unknown>(args: Fetcher.Args): Promise<APIResponse<R, Fetcher.Error>>;
|
|
39
|
+
export declare const fetcher: FetchFunction;
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.fetcher = exports.fetcherImpl = void 0;
|
|
13
|
+
const createRequestUrl_1 = require("./createRequestUrl");
|
|
14
|
+
const getFetchFn_1 = require("./getFetchFn");
|
|
15
|
+
const getRequestBody_1 = require("./getRequestBody");
|
|
16
|
+
const getResponseBody_1 = require("./getResponseBody");
|
|
17
|
+
const makeRequest_1 = require("./makeRequest");
|
|
18
|
+
const requestWithRetries_1 = require("./requestWithRetries");
|
|
19
|
+
function fetcherImpl(args) {
|
|
20
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
21
|
+
const headers = {};
|
|
22
|
+
if (args.body !== undefined && args.contentType != null) {
|
|
23
|
+
headers["Content-Type"] = args.contentType;
|
|
24
|
+
}
|
|
25
|
+
if (args.headers != null) {
|
|
26
|
+
for (const [key, value] of Object.entries(args.headers)) {
|
|
27
|
+
if (value != null) {
|
|
28
|
+
headers[key] = value;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
const url = (0, createRequestUrl_1.createRequestUrl)(args.url, args.queryParameters);
|
|
33
|
+
let requestBody = yield (0, getRequestBody_1.getRequestBody)({
|
|
34
|
+
body: args.body,
|
|
35
|
+
type: args.requestType === "json" ? "json" : "other",
|
|
36
|
+
});
|
|
37
|
+
const fetchFn = yield (0, getFetchFn_1.getFetchFn)();
|
|
38
|
+
try {
|
|
39
|
+
const response = yield (0, requestWithRetries_1.requestWithRetries)(() => __awaiter(this, void 0, void 0, function* () {
|
|
40
|
+
return (0, makeRequest_1.makeRequest)(fetchFn, url, args.method, headers, requestBody, args.timeoutMs, args.abortSignal, args.withCredentials, args.duplex);
|
|
41
|
+
}), args.maxRetries);
|
|
42
|
+
let responseBody = yield (0, getResponseBody_1.getResponseBody)(response, args.responseType);
|
|
43
|
+
if (response.status >= 200 && response.status < 400) {
|
|
44
|
+
return {
|
|
45
|
+
ok: true,
|
|
46
|
+
body: responseBody,
|
|
47
|
+
headers: response.headers,
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
return {
|
|
52
|
+
ok: false,
|
|
53
|
+
error: {
|
|
54
|
+
reason: "status-code",
|
|
55
|
+
statusCode: response.status,
|
|
56
|
+
body: responseBody,
|
|
57
|
+
},
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
catch (error) {
|
|
62
|
+
if (args.abortSignal != null && args.abortSignal.aborted) {
|
|
63
|
+
return {
|
|
64
|
+
ok: false,
|
|
65
|
+
error: {
|
|
66
|
+
reason: "unknown",
|
|
67
|
+
errorMessage: "The user aborted a request",
|
|
68
|
+
},
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
else if (error instanceof Error && error.name === "AbortError") {
|
|
72
|
+
return {
|
|
73
|
+
ok: false,
|
|
74
|
+
error: {
|
|
75
|
+
reason: "timeout",
|
|
76
|
+
},
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
else if (error instanceof Error) {
|
|
80
|
+
return {
|
|
81
|
+
ok: false,
|
|
82
|
+
error: {
|
|
83
|
+
reason: "unknown",
|
|
84
|
+
errorMessage: error.message,
|
|
85
|
+
},
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
return {
|
|
89
|
+
ok: false,
|
|
90
|
+
error: {
|
|
91
|
+
reason: "unknown",
|
|
92
|
+
errorMessage: JSON.stringify(error),
|
|
93
|
+
},
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
exports.fetcherImpl = fetcherImpl;
|
|
99
|
+
exports.fetcher = fetcherImpl;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.Supplier = void 0;
|
|
13
|
+
exports.Supplier = {
|
|
14
|
+
get: (supplier) => __awaiter(void 0, void 0, void 0, function* () {
|
|
15
|
+
if (typeof supplier === "function") {
|
|
16
|
+
return supplier();
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
return supplier;
|
|
20
|
+
}
|
|
21
|
+
}),
|
|
22
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function createRequestUrl(baseUrl: string, queryParameters?: Record<string, string | string[] | object | object[]>): string;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.createRequestUrl = void 0;
|
|
7
|
+
const qs_1 = __importDefault(require("qs"));
|
|
8
|
+
function createRequestUrl(baseUrl, queryParameters) {
|
|
9
|
+
return Object.keys(queryParameters !== null && queryParameters !== void 0 ? queryParameters : {}).length > 0
|
|
10
|
+
? `${baseUrl}?${qs_1.default.stringify(queryParameters, { arrayFormat: "repeat" })}`
|
|
11
|
+
: baseUrl;
|
|
12
|
+
}
|
|
13
|
+
exports.createRequestUrl = createRequestUrl;
|
|
@@ -0,0 +1,59 @@
|
|
|
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
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
+
exports.getFetchFn = void 0;
|
|
36
|
+
const runtime_1 = require("../runtime");
|
|
37
|
+
/**
|
|
38
|
+
* Returns a fetch function based on the runtime
|
|
39
|
+
*/
|
|
40
|
+
function getFetchFn() {
|
|
41
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
42
|
+
// In Node.js 18+ environments, use native fetch
|
|
43
|
+
if (runtime_1.RUNTIME.type === "node" && runtime_1.RUNTIME.parsedVersion != null && runtime_1.RUNTIME.parsedVersion >= 18) {
|
|
44
|
+
return fetch;
|
|
45
|
+
}
|
|
46
|
+
// In Node.js 18 or lower environments, the SDK always uses`node-fetch`.
|
|
47
|
+
if (runtime_1.RUNTIME.type === "node") {
|
|
48
|
+
return (yield Promise.resolve().then(() => __importStar(require("node-fetch")))).default;
|
|
49
|
+
}
|
|
50
|
+
// Otherwise the SDK uses global fetch if available,
|
|
51
|
+
// and falls back to node-fetch.
|
|
52
|
+
if (typeof fetch == "function") {
|
|
53
|
+
return fetch;
|
|
54
|
+
}
|
|
55
|
+
// Defaults to node `node-fetch` if global fetch isn't available
|
|
56
|
+
return (yield Promise.resolve().then(() => __importStar(require("node-fetch")))).default;
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
exports.getFetchFn = getFetchFn;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getHeader(headers: Record<string, any>, header: string): string | undefined;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getHeader = void 0;
|
|
4
|
+
function getHeader(headers, header) {
|
|
5
|
+
for (const [headerKey, headerValue] of Object.entries(headers)) {
|
|
6
|
+
if (headerKey.toLowerCase() === header.toLowerCase()) {
|
|
7
|
+
return headerValue;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
return undefined;
|
|
11
|
+
}
|
|
12
|
+
exports.getHeader = getHeader;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.getRequestBody = void 0;
|
|
13
|
+
function getRequestBody({ body, type }) {
|
|
14
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
15
|
+
if (type.includes("json")) {
|
|
16
|
+
return JSON.stringify(body);
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
return body;
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
exports.getRequestBody = getRequestBody;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getResponseBody(response: Response, responseType?: string): Promise<unknown>;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.getResponseBody = void 0;
|
|
13
|
+
const chooseStreamWrapper_1 = require("./stream-wrappers/chooseStreamWrapper");
|
|
14
|
+
function getResponseBody(response, responseType) {
|
|
15
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
16
|
+
if (response.body != null && responseType === "blob") {
|
|
17
|
+
return yield response.blob();
|
|
18
|
+
}
|
|
19
|
+
else if (response.body != null && responseType === "arrayBuffer") {
|
|
20
|
+
return yield response.arrayBuffer();
|
|
21
|
+
}
|
|
22
|
+
else if (response.body != null && responseType === "sse") {
|
|
23
|
+
return response.body;
|
|
24
|
+
}
|
|
25
|
+
else if (response.body != null && responseType === "streaming") {
|
|
26
|
+
return (0, chooseStreamWrapper_1.chooseStreamWrapper)(response.body);
|
|
27
|
+
}
|
|
28
|
+
else if (response.body != null && responseType === "text") {
|
|
29
|
+
return yield response.text();
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
const text = yield response.text();
|
|
33
|
+
if (text.length > 0) {
|
|
34
|
+
try {
|
|
35
|
+
let responseBody = JSON.parse(text);
|
|
36
|
+
return responseBody;
|
|
37
|
+
}
|
|
38
|
+
catch (err) {
|
|
39
|
+
return {
|
|
40
|
+
ok: false,
|
|
41
|
+
error: {
|
|
42
|
+
reason: "non-json",
|
|
43
|
+
statusCode: response.status,
|
|
44
|
+
rawBody: text,
|
|
45
|
+
},
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
return undefined;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
exports.getResponseBody = getResponseBody;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Supplier = exports.getHeader = exports.fetcher = void 0;
|
|
4
|
+
var Fetcher_1 = require("./Fetcher");
|
|
5
|
+
Object.defineProperty(exports, "fetcher", { enumerable: true, get: function () { return Fetcher_1.fetcher; } });
|
|
6
|
+
var getHeader_1 = require("./getHeader");
|
|
7
|
+
Object.defineProperty(exports, "getHeader", { enumerable: true, get: function () { return getHeader_1.getHeader; } });
|
|
8
|
+
var Supplier_1 = require("./Supplier");
|
|
9
|
+
Object.defineProperty(exports, "Supplier", { enumerable: true, get: function () { return Supplier_1.Supplier; } });
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const makeRequest: (fetchFn: (url: string, init: RequestInit) => Promise<Response>, url: string, method: string, headers: Record<string, string>, requestBody: BodyInit | undefined, timeoutMs?: number | undefined, abortSignal?: AbortSignal | undefined, withCredentials?: boolean | undefined, duplex?: "half" | undefined) => Promise<Response>;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.makeRequest = void 0;
|
|
13
|
+
const signals_1 = require("./signals");
|
|
14
|
+
const makeRequest = (fetchFn, url, method, headers, requestBody, timeoutMs, abortSignal, withCredentials, duplex) => __awaiter(void 0, void 0, void 0, function* () {
|
|
15
|
+
const signals = [];
|
|
16
|
+
// Add timeout signal
|
|
17
|
+
let timeoutAbortId = undefined;
|
|
18
|
+
if (timeoutMs != null) {
|
|
19
|
+
const { signal, abortId } = (0, signals_1.getTimeoutSignal)(timeoutMs);
|
|
20
|
+
timeoutAbortId = abortId;
|
|
21
|
+
signals.push(signal);
|
|
22
|
+
}
|
|
23
|
+
// Add arbitrary signal
|
|
24
|
+
if (abortSignal != null) {
|
|
25
|
+
signals.push(abortSignal);
|
|
26
|
+
}
|
|
27
|
+
let newSignals = (0, signals_1.anySignal)(signals);
|
|
28
|
+
const response = yield fetchFn(url, {
|
|
29
|
+
method: method,
|
|
30
|
+
headers,
|
|
31
|
+
body: requestBody,
|
|
32
|
+
signal: newSignals,
|
|
33
|
+
credentials: withCredentials ? "include" : undefined,
|
|
34
|
+
// @ts-ignore
|
|
35
|
+
duplex,
|
|
36
|
+
});
|
|
37
|
+
if (timeoutAbortId != null) {
|
|
38
|
+
clearTimeout(timeoutAbortId);
|
|
39
|
+
}
|
|
40
|
+
return response;
|
|
41
|
+
});
|
|
42
|
+
exports.makeRequest = makeRequest;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function requestWithRetries(requestFn: () => Promise<Response>, maxRetries?: number): Promise<Response>;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.requestWithRetries = void 0;
|
|
13
|
+
const INITIAL_RETRY_DELAY = 1000; // in milliseconds
|
|
14
|
+
const MAX_RETRY_DELAY = 60000; // in milliseconds
|
|
15
|
+
const DEFAULT_MAX_RETRIES = 2;
|
|
16
|
+
const JITTER_FACTOR = 0.2; // 20% random jitter
|
|
17
|
+
function addJitter(delay) {
|
|
18
|
+
// Generate a random value between -JITTER_FACTOR and +JITTER_FACTOR
|
|
19
|
+
const jitterMultiplier = 1 + (Math.random() * 2 - 1) * JITTER_FACTOR;
|
|
20
|
+
return delay * jitterMultiplier;
|
|
21
|
+
}
|
|
22
|
+
function requestWithRetries(requestFn, maxRetries = DEFAULT_MAX_RETRIES) {
|
|
23
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
24
|
+
let response = yield requestFn();
|
|
25
|
+
for (let i = 0; i < maxRetries; ++i) {
|
|
26
|
+
if ([408, 409, 429].includes(response.status) || response.status >= 500) {
|
|
27
|
+
// Calculate base delay using exponential backoff (in milliseconds)
|
|
28
|
+
const baseDelay = Math.min(INITIAL_RETRY_DELAY * Math.pow(2, i), MAX_RETRY_DELAY);
|
|
29
|
+
// Add jitter to the delay
|
|
30
|
+
const delayWithJitter = addJitter(baseDelay);
|
|
31
|
+
yield new Promise((resolve) => setTimeout(resolve, delayWithJitter));
|
|
32
|
+
response = yield requestFn();
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
break;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return response;
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
exports.requestWithRetries = requestWithRetries;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
export declare function getTimeoutSignal(timeoutMs: number): {
|
|
3
|
+
signal: AbortSignal;
|
|
4
|
+
abortId: NodeJS.Timeout;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Returns an abort signal that is getting aborted when
|
|
8
|
+
* at least one of the specified abort signals is aborted.
|
|
9
|
+
*
|
|
10
|
+
* Requires at least node.js 18.
|
|
11
|
+
*/
|
|
12
|
+
export declare function anySignal(...args: AbortSignal[] | [AbortSignal[]]): AbortSignal;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.anySignal = exports.getTimeoutSignal = void 0;
|
|
4
|
+
const TIMEOUT = "timeout";
|
|
5
|
+
function getTimeoutSignal(timeoutMs) {
|
|
6
|
+
const controller = new AbortController();
|
|
7
|
+
const abortId = setTimeout(() => controller.abort(TIMEOUT), timeoutMs);
|
|
8
|
+
return { signal: controller.signal, abortId };
|
|
9
|
+
}
|
|
10
|
+
exports.getTimeoutSignal = getTimeoutSignal;
|
|
11
|
+
/**
|
|
12
|
+
* Returns an abort signal that is getting aborted when
|
|
13
|
+
* at least one of the specified abort signals is aborted.
|
|
14
|
+
*
|
|
15
|
+
* Requires at least node.js 18.
|
|
16
|
+
*/
|
|
17
|
+
function anySignal(...args) {
|
|
18
|
+
// Allowing signals to be passed either as array
|
|
19
|
+
// of signals or as multiple arguments.
|
|
20
|
+
const signals = (args.length === 1 && Array.isArray(args[0]) ? args[0] : args);
|
|
21
|
+
const controller = new AbortController();
|
|
22
|
+
for (const signal of signals) {
|
|
23
|
+
if (signal.aborted) {
|
|
24
|
+
// Exiting early if one of the signals
|
|
25
|
+
// is already aborted.
|
|
26
|
+
controller.abort(signal === null || signal === void 0 ? void 0 : signal.reason);
|
|
27
|
+
break;
|
|
28
|
+
}
|
|
29
|
+
// Listening for signals and removing the listeners
|
|
30
|
+
// when at least one symbol is aborted.
|
|
31
|
+
signal.addEventListener("abort", () => controller.abort(signal === null || signal === void 0 ? void 0 : signal.reason), {
|
|
32
|
+
signal: controller.signal,
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
return controller.signal;
|
|
36
|
+
}
|
|
37
|
+
exports.anySignal = anySignal;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { Writable } from "readable-stream";
|
|
2
|
+
import { EventCallback, StreamWrapper } from "./chooseStreamWrapper";
|
|
3
|
+
export declare class Node18UniversalStreamWrapper<ReadFormat extends Uint8Array | Uint16Array | Uint32Array> implements StreamWrapper<Node18UniversalStreamWrapper<ReadFormat> | Writable | WritableStream<ReadFormat>, ReadFormat> {
|
|
4
|
+
private readableStream;
|
|
5
|
+
private reader;
|
|
6
|
+
private events;
|
|
7
|
+
private paused;
|
|
8
|
+
private resumeCallback;
|
|
9
|
+
private encoding;
|
|
10
|
+
constructor(readableStream: ReadableStream<ReadFormat>);
|
|
11
|
+
on(event: string, callback: EventCallback): void;
|
|
12
|
+
off(event: string, callback: EventCallback): void;
|
|
13
|
+
pipe(dest: Node18UniversalStreamWrapper<ReadFormat> | Writable | WritableStream<ReadFormat>): Node18UniversalStreamWrapper<ReadFormat> | Writable | WritableStream<ReadFormat>;
|
|
14
|
+
pipeTo(dest: Node18UniversalStreamWrapper<ReadFormat> | Writable | WritableStream<ReadFormat>): Node18UniversalStreamWrapper<ReadFormat> | Writable | WritableStream<ReadFormat>;
|
|
15
|
+
unpipe(dest: Node18UniversalStreamWrapper<ReadFormat> | Writable | WritableStream<ReadFormat>): void;
|
|
16
|
+
destroy(error?: Error): void;
|
|
17
|
+
pause(): void;
|
|
18
|
+
resume(): void;
|
|
19
|
+
get isPaused(): boolean;
|
|
20
|
+
read(): Promise<ReadFormat | undefined>;
|
|
21
|
+
setEncoding(encoding: string): void;
|
|
22
|
+
text(): Promise<string>;
|
|
23
|
+
json<T>(): Promise<T>;
|
|
24
|
+
private _write;
|
|
25
|
+
private _end;
|
|
26
|
+
private _error;
|
|
27
|
+
private _emit;
|
|
28
|
+
private _startReading;
|
|
29
|
+
[Symbol.asyncIterator](): AsyncIterableIterator<ReadFormat>;
|
|
30
|
+
}
|