@frankieone/one-sdk 0.3.2-rc.0 → 0.3.2-rc.2
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/cjs/modules/biometrics/constants.d.ts +2 -0
- package/dist/cjs/modules/biometrics/constants.js +5 -0
- package/dist/cjs/modules/biometrics/constants.js.map +1 -0
- package/dist/cjs/modules/biometrics/index.d.ts +4 -0
- package/dist/cjs/modules/biometrics/index.js +100 -0
- package/dist/cjs/modules/biometrics/index.js.map +1 -0
- package/dist/cjs/modules/biometrics/parseConfiguration.d.ts +4 -0
- package/dist/cjs/modules/biometrics/parseConfiguration.js +13 -0
- package/dist/cjs/modules/biometrics/parseConfiguration.js.map +1 -0
- package/dist/cjs/modules/biometrics/types/events.d.ts +30 -0
- package/dist/cjs/modules/biometrics/types/events.js +3 -0
- package/dist/cjs/modules/biometrics/types/events.js.map +1 -0
- package/dist/cjs/modules/biometrics/types/index.d.ts +3 -0
- package/dist/cjs/modules/biometrics/types/index.js +20 -0
- package/dist/cjs/modules/biometrics/types/index.js.map +1 -0
- package/dist/cjs/modules/biometrics/types/module.d.ts +8 -0
- package/dist/cjs/modules/biometrics/types/module.js +3 -0
- package/dist/cjs/modules/biometrics/types/module.js.map +1 -0
- package/dist/cjs/modules/biometrics/types/wrapper.d.ts +19 -0
- package/dist/cjs/modules/biometrics/types/wrapper.js +3 -0
- package/dist/cjs/modules/biometrics/types/wrapper.js.map +1 -0
- package/dist/cjs/modules/biometrics/wrappers/OcrLabs/index.d.ts +2 -0
- package/dist/cjs/modules/biometrics/wrappers/OcrLabs/index.js +262 -0
- package/dist/cjs/modules/biometrics/wrappers/OcrLabs/index.js.map +1 -0
- package/dist/cjs/modules/biometrics/wrappers/dummy-biometrics/green-tick-svg.d.ts +1 -0
- package/dist/cjs/modules/biometrics/wrappers/dummy-biometrics/green-tick-svg.js +7 -0
- package/dist/cjs/modules/biometrics/wrappers/dummy-biometrics/green-tick-svg.js.map +1 -0
- package/dist/cjs/modules/biometrics/wrappers/dummy-biometrics/index.d.ts +2 -0
- package/dist/cjs/modules/biometrics/wrappers/dummy-biometrics/index.js +102 -0
- package/dist/cjs/modules/biometrics/wrappers/dummy-biometrics/index.js.map +1 -0
- package/dist/cjs/modules/common/constants.d.ts +7 -0
- package/dist/cjs/modules/common/constants.js +12 -0
- package/dist/cjs/modules/common/constants.js.map +1 -0
- package/dist/cjs/modules/common/index.d.ts +10 -0
- package/dist/cjs/modules/common/index.js +27 -0
- package/dist/cjs/modules/common/index.js.map +1 -0
- package/dist/cjs/modules/common/modules/ReactiveStore.d.ts +74 -0
- package/dist/cjs/modules/common/modules/ReactiveStore.js +157 -0
- package/dist/cjs/modules/common/modules/ReactiveStore.js.map +1 -0
- package/dist/cjs/modules/common/modules/UnpersistedModel.d.ts +17 -0
- package/dist/cjs/modules/common/modules/UnpersistedModel.js +39 -0
- package/dist/cjs/modules/common/modules/UnpersistedModel.js.map +1 -0
- package/dist/cjs/modules/common/modules/base64.d.ts +11 -0
- package/dist/cjs/modules/common/modules/base64.js +52 -0
- package/dist/cjs/modules/common/modules/base64.js.map +1 -0
- package/dist/cjs/modules/common/modules/env2url.d.ts +10 -0
- package/dist/cjs/modules/common/modules/env2url.js +37 -0
- package/dist/cjs/modules/common/modules/env2url.js.map +1 -0
- package/dist/cjs/modules/common/modules/error.d.ts +3 -0
- package/dist/cjs/modules/common/modules/error.js +12 -0
- package/dist/cjs/modules/common/modules/error.js.map +1 -0
- package/dist/cjs/modules/common/modules/eventHub.d.ts +34 -0
- package/dist/cjs/modules/common/modules/eventHub.js +30 -0
- package/dist/cjs/modules/common/modules/eventHub.js.map +1 -0
- package/dist/cjs/modules/common/modules/loadAsyncAsset.d.ts +1 -0
- package/dist/cjs/modules/common/modules/loadAsyncAsset.js +16 -0
- package/dist/cjs/modules/common/modules/loadAsyncAsset.js.map +1 -0
- package/dist/cjs/modules/common/modules/merge.d.ts +1 -0
- package/dist/cjs/modules/common/modules/merge.js +9 -0
- package/dist/cjs/modules/common/modules/merge.js.map +1 -0
- package/dist/cjs/modules/common/modules/objectUtils.d.ts +15 -0
- package/dist/cjs/modules/common/modules/objectUtils.js +73 -0
- package/dist/cjs/modules/common/modules/objectUtils.js.map +1 -0
- package/dist/cjs/modules/common/modules/rxjsOperators.d.ts +1 -0
- package/dist/cjs/modules/common/modules/rxjsOperators.js +9 -0
- package/dist/cjs/modules/common/modules/rxjsOperators.js.map +1 -0
- package/dist/cjs/modules/common/shared/KvpList.d.ts +29 -0
- package/dist/cjs/modules/common/shared/KvpList.js +138 -0
- package/dist/cjs/modules/common/shared/KvpList.js.map +1 -0
- package/dist/cjs/modules/common/shared/data/aus_states.json +10 -0
- package/dist/cjs/modules/common/shared/data/country.json +14964 -0
- package/dist/cjs/modules/common/shared/models/Address.d.ts +67 -0
- package/dist/cjs/modules/common/shared/models/Address.js +160 -0
- package/dist/cjs/modules/common/shared/models/Address.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/Admin.d.ts +1295 -0
- package/dist/cjs/modules/common/shared/models/Admin.js +7 -0
- package/dist/cjs/modules/common/shared/models/Admin.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/AmlCheckResult.d.ts +77 -0
- package/dist/cjs/modules/common/shared/models/AmlCheckResult.js +50 -0
- package/dist/cjs/modules/common/shared/models/AmlCheckResult.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/AmlMatchDetails.d.ts +37 -0
- package/dist/cjs/modules/common/shared/models/AmlMatchDetails.js +23 -0
- package/dist/cjs/modules/common/shared/models/AmlMatchDetails.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/Applicant.d.ts +119 -0
- package/dist/cjs/modules/common/shared/models/Applicant.js +171 -0
- package/dist/cjs/modules/common/shared/models/Applicant.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/ApplicantSummary.d.ts +90 -0
- package/dist/cjs/modules/common/shared/models/ApplicantSummary.js +58 -0
- package/dist/cjs/modules/common/shared/models/ApplicantSummary.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/AssociatedParty.d.ts +42 -0
- package/dist/cjs/modules/common/shared/models/AssociatedParty.js +43 -0
- package/dist/cjs/modules/common/shared/models/AssociatedParty.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/AuditEntry.d.ts +81 -0
- package/dist/cjs/modules/common/shared/models/AuditEntry.js +114 -0
- package/dist/cjs/modules/common/shared/models/AuditEntry.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/AuditLogV2.d.ts +57 -0
- package/dist/cjs/modules/common/shared/models/AuditLogV2.js +82 -0
- package/dist/cjs/modules/common/shared/models/AuditLogV2.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/BiometryReport.d.ts +35 -0
- package/dist/cjs/modules/common/shared/models/BiometryReport.js +26 -0
- package/dist/cjs/modules/common/shared/models/BiometryReport.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/BlockListSummary.d.ts +46 -0
- package/dist/cjs/modules/common/shared/models/BlockListSummary.js +61 -0
- package/dist/cjs/modules/common/shared/models/BlockListSummary.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/Blueprint.d.ts +26 -0
- package/dist/cjs/modules/common/shared/models/Blueprint.js +3 -0
- package/dist/cjs/modules/common/shared/models/Blueprint.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/BusinessInfo.d.ts +32 -0
- package/dist/cjs/modules/common/shared/models/BusinessInfo.js +70 -0
- package/dist/cjs/modules/common/shared/models/BusinessInfo.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/CheckSummary.d.ts +190 -0
- package/dist/cjs/modules/common/shared/models/CheckSummary.js +241 -0
- package/dist/cjs/modules/common/shared/models/CheckSummary.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/Comment.d.ts +19 -0
- package/dist/cjs/modules/common/shared/models/Comment.js +23 -0
- package/dist/cjs/modules/common/shared/models/Comment.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/Core.d.ts +2898 -0
- package/dist/cjs/modules/common/shared/models/Core.js +7 -0
- package/dist/cjs/modules/common/shared/models/Core.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/Document.d.ts +123 -0
- package/dist/cjs/modules/common/shared/models/Document.js +147 -0
- package/dist/cjs/modules/common/shared/models/Document.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/Duplicate.d.ts +38 -0
- package/dist/cjs/modules/common/shared/models/Duplicate.js +30 -0
- package/dist/cjs/modules/common/shared/models/Duplicate.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/DynamicUIComponent.d.ts +52 -0
- package/dist/cjs/modules/common/shared/models/DynamicUIComponent.js +122 -0
- package/dist/cjs/modules/common/shared/models/DynamicUIComponent.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/Event.d.ts +16 -0
- package/dist/cjs/modules/common/shared/models/Event.js +22 -0
- package/dist/cjs/modules/common/shared/models/Event.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/EventFactory.d.ts +16 -0
- package/dist/cjs/modules/common/shared/models/EventFactory.js +15 -0
- package/dist/cjs/modules/common/shared/models/EventFactory.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/File.d.ts +24 -0
- package/dist/cjs/modules/common/shared/models/File.js +29 -0
- package/dist/cjs/modules/common/shared/models/File.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/FraudCheckResult.d.ts +10 -0
- package/dist/cjs/modules/common/shared/models/FraudCheckResult.js +19 -0
- package/dist/cjs/modules/common/shared/models/FraudCheckResult.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/FraudMatchDetail.d.ts +48 -0
- package/dist/cjs/modules/common/shared/models/FraudMatchDetail.js +45 -0
- package/dist/cjs/modules/common/shared/models/FraudMatchDetail.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/IChangeStamp.d.ts +11 -0
- package/dist/cjs/modules/common/shared/models/IChangeStamp.js +10 -0
- package/dist/cjs/modules/common/shared/models/IChangeStamp.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/KYCHostedFlow.d.ts +17 -0
- package/dist/cjs/modules/common/shared/models/KYCHostedFlow.js +24 -0
- package/dist/cjs/modules/common/shared/models/KYCHostedFlow.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/KvpList.d.ts +29 -0
- package/dist/cjs/modules/common/shared/models/KvpList.js +138 -0
- package/dist/cjs/modules/common/shared/models/KvpList.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/OCRDocumentDetail.d.ts +49 -0
- package/dist/cjs/modules/common/shared/models/OCRDocumentDetail.js +37 -0
- package/dist/cjs/modules/common/shared/models/OCRDocumentDetail.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/OCRReport.d.ts +20 -0
- package/dist/cjs/modules/common/shared/models/OCRReport.js +21 -0
- package/dist/cjs/modules/common/shared/models/OCRReport.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/Organisation.d.ts +36 -0
- package/dist/cjs/modules/common/shared/models/Organisation.js +55 -0
- package/dist/cjs/modules/common/shared/models/Organisation.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/OrganizationAnalytics.d.ts +14 -0
- package/dist/cjs/modules/common/shared/models/OrganizationAnalytics.js +153 -0
- package/dist/cjs/modules/common/shared/models/OrganizationAnalytics.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/PortalFeatureConfig.d.ts +79 -0
- package/dist/cjs/modules/common/shared/models/PortalFeatureConfig.js +87 -0
- package/dist/cjs/modules/common/shared/models/PortalFeatureConfig.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/Profile.d.ts +27 -0
- package/dist/cjs/modules/common/shared/models/Profile.js +103 -0
- package/dist/cjs/modules/common/shared/models/Profile.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/ReportAttributes.d.ts +21 -0
- package/dist/cjs/modules/common/shared/models/ReportAttributes.js +22 -0
- package/dist/cjs/modules/common/shared/models/ReportAttributes.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/RiskIndicator.d.ts +48 -0
- package/dist/cjs/modules/common/shared/models/RiskIndicator.js +35 -0
- package/dist/cjs/modules/common/shared/models/RiskIndicator.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/Session.d.ts +5 -0
- package/dist/cjs/modules/common/shared/models/Session.js +3 -0
- package/dist/cjs/modules/common/shared/models/Session.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/SupportingDocument.d.ts +96 -0
- package/dist/cjs/modules/common/shared/models/SupportingDocument.js +95 -0
- package/dist/cjs/modules/common/shared/models/SupportingDocument.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/TApplicantIssue.d.ts +12 -0
- package/dist/cjs/modules/common/shared/models/TApplicantIssue.js +3 -0
- package/dist/cjs/modules/common/shared/models/TApplicantIssue.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/TApplicantStatus.d.ts +7 -0
- package/dist/cjs/modules/common/shared/models/TApplicantStatus.js +3 -0
- package/dist/cjs/modules/common/shared/models/TApplicantStatus.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/TKycMethod.d.ts +1 -0
- package/dist/cjs/modules/common/shared/models/TKycMethod.js +3 -0
- package/dist/cjs/modules/common/shared/models/TKycMethod.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/TValidation.d.ts +6 -0
- package/dist/cjs/modules/common/shared/models/TValidation.js +3 -0
- package/dist/cjs/modules/common/shared/models/TValidation.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/TransactionDetails.d.ts +70 -0
- package/dist/cjs/modules/common/shared/models/TransactionDetails.js +59 -0
- package/dist/cjs/modules/common/shared/models/TransactionDetails.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/UBOData.d.ts +483 -0
- package/dist/cjs/modules/common/shared/models/UBOData.js +644 -0
- package/dist/cjs/modules/common/shared/models/UBOData.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/UIBlueprint.d.ts +33 -0
- package/dist/cjs/modules/common/shared/models/UIBlueprint.js +168 -0
- package/dist/cjs/modules/common/shared/models/UIBlueprint.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/User.d.ts +27 -0
- package/dist/cjs/modules/common/shared/models/User.js +3 -0
- package/dist/cjs/modules/common/shared/models/User.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/api.d.ts +124 -0
- package/dist/cjs/modules/common/shared/models/api.js +3 -0
- package/dist/cjs/modules/common/shared/models/api.js.map +1 -0
- package/dist/cjs/modules/common/shared/models/general.d.ts +31 -0
- package/dist/cjs/modules/common/shared/models/general.js +3 -0
- package/dist/cjs/modules/common/shared/models/general.js.map +1 -0
- package/dist/cjs/modules/common/shared/transformers/apiAlert.d.ts +4 -0
- package/dist/cjs/modules/common/shared/transformers/apiAlert.js +109 -0
- package/dist/cjs/modules/common/shared/transformers/apiAlert.js.map +1 -0
- package/dist/cjs/modules/common/shared/transformers/apiGetRiskLevel.d.ts +2 -0
- package/dist/cjs/modules/common/shared/transformers/apiGetRiskLevel.js +44 -0
- package/dist/cjs/modules/common/shared/transformers/apiGetRiskLevel.js.map +1 -0
- package/dist/cjs/modules/common/shared/transformers/apiState.d.ts +23 -0
- package/dist/cjs/modules/common/shared/transformers/apiState.js +105 -0
- package/dist/cjs/modules/common/shared/transformers/apiState.js.map +1 -0
- package/dist/cjs/modules/common/shared/transformers/index.d.ts +3 -0
- package/dist/cjs/modules/common/shared/transformers/index.js +20 -0
- package/dist/cjs/modules/common/shared/transformers/index.js.map +1 -0
- package/dist/cjs/modules/common/shared/utils/address.d.ts +2 -0
- package/dist/cjs/modules/common/shared/utils/address.js +25 -0
- package/dist/cjs/modules/common/shared/utils/address.js.map +1 -0
- package/dist/cjs/modules/common/shared/utils/base64.d.ts +11 -0
- package/dist/cjs/modules/common/shared/utils/base64.js +49 -0
- package/dist/cjs/modules/common/shared/utils/base64.js.map +1 -0
- package/dist/cjs/modules/common/shared/utils/buildCycleUtils.d.ts +1 -0
- package/dist/cjs/modules/common/shared/utils/buildCycleUtils.js +32 -0
- package/dist/cjs/modules/common/shared/utils/buildCycleUtils.js.map +1 -0
- package/dist/cjs/modules/common/shared/utils/constants.d.ts +75 -0
- package/dist/cjs/modules/common/shared/utils/constants.js +223 -0
- package/dist/cjs/modules/common/shared/utils/constants.js.map +1 -0
- package/dist/cjs/modules/common/shared/utils/date.d.ts +5 -0
- package/dist/cjs/modules/common/shared/utils/date.js +73 -0
- package/dist/cjs/modules/common/shared/utils/date.js.map +1 -0
- package/dist/cjs/modules/common/shared/utils/dotNotation.d.ts +4 -0
- package/dist/cjs/modules/common/shared/utils/dotNotation.js +16 -0
- package/dist/cjs/modules/common/shared/utils/dotNotation.js.map +1 -0
- package/dist/cjs/modules/common/shared/utils/getCountryDetails.d.ts +9 -0
- package/dist/cjs/modules/common/shared/utils/getCountryDetails.js +23 -0
- package/dist/cjs/modules/common/shared/utils/getCountryDetails.js.map +1 -0
- package/dist/cjs/modules/common/shared/utils/getDocumentDetails.d.ts +8 -0
- package/dist/cjs/modules/common/shared/utils/getDocumentDetails.js +10 -0
- package/dist/cjs/modules/common/shared/utils/getDocumentDetails.js.map +1 -0
- package/dist/cjs/modules/common/shared/utils/helper.d.ts +4 -0
- package/dist/cjs/modules/common/shared/utils/helper.js +38 -0
- package/dist/cjs/modules/common/shared/utils/helper.js.map +1 -0
- package/dist/cjs/modules/common/shared/utils/index.d.ts +11 -0
- package/dist/cjs/modules/common/shared/utils/index.js +41 -0
- package/dist/cjs/modules/common/shared/utils/index.js.map +1 -0
- package/dist/cjs/modules/common/shared/utils/isEmpty.d.ts +5 -0
- package/dist/cjs/modules/common/shared/utils/isEmpty.js +27 -0
- package/dist/cjs/modules/common/shared/utils/isEmpty.js.map +1 -0
- package/dist/cjs/modules/common/shared/utils/sanitiser.d.ts +7 -0
- package/dist/cjs/modules/common/shared/utils/sanitiser.js +31 -0
- package/dist/cjs/modules/common/shared/utils/sanitiser.js.map +1 -0
- package/dist/cjs/modules/common/shared/utils/string.d.ts +1 -0
- package/dist/cjs/modules/common/shared/utils/string.js +9 -0
- package/dist/cjs/modules/common/shared/utils/string.js.map +1 -0
- package/dist/cjs/modules/common/types/Accessors.d.ts +51 -0
- package/dist/cjs/modules/common/types/Accessors.js +3 -0
- package/dist/cjs/modules/common/types/Accessors.js.map +1 -0
- package/dist/cjs/modules/common/types/Configuration.d.ts +25 -0
- package/dist/cjs/modules/common/types/Configuration.js +3 -0
- package/dist/cjs/modules/common/types/Configuration.js.map +1 -0
- package/dist/cjs/modules/common/types/Object.d.ts +3 -0
- package/dist/cjs/modules/common/types/Object.js +3 -0
- package/dist/cjs/modules/common/types/Object.js.map +1 -0
- package/dist/cjs/modules/common/types/Session.d.ts +16 -0
- package/dist/cjs/modules/common/types/Session.js +6 -0
- package/dist/cjs/modules/common/types/Session.js.map +1 -0
- package/dist/cjs/modules/device/constants.d.ts +4 -0
- package/dist/cjs/modules/device/constants.js +7 -0
- package/dist/cjs/modules/device/constants.js.map +1 -0
- package/dist/cjs/modules/device/index.d.ts +4 -0
- package/dist/cjs/modules/device/index.js +125 -0
- package/dist/cjs/modules/device/index.js.map +1 -0
- package/dist/cjs/modules/device/parseConfiguration.d.ts +5 -0
- package/dist/cjs/modules/device/parseConfiguration.js +29 -0
- package/dist/cjs/modules/device/parseConfiguration.js.map +1 -0
- package/dist/cjs/modules/device/types/events.d.ts +31 -0
- package/dist/cjs/modules/device/types/events.js +3 -0
- package/dist/cjs/modules/device/types/events.js.map +1 -0
- package/dist/cjs/modules/device/types/index.d.ts +3 -0
- package/dist/cjs/modules/device/types/index.js +20 -0
- package/dist/cjs/modules/device/types/index.js.map +1 -0
- package/dist/cjs/modules/device/types/module.d.ts +12 -0
- package/dist/cjs/modules/device/types/module.js +3 -0
- package/dist/cjs/modules/device/types/module.js.map +1 -0
- package/dist/cjs/modules/device/types/wrapper.d.ts +33 -0
- package/dist/cjs/modules/device/types/wrapper.js +3 -0
- package/dist/cjs/modules/device/types/wrapper.js.map +1 -0
- package/dist/cjs/modules/device/vendors/Sardine.d.ts +25 -0
- package/dist/cjs/modules/device/vendors/Sardine.js +85 -0
- package/dist/cjs/modules/device/vendors/Sardine.js.map +1 -0
- package/dist/cjs/modules/device/vendors/Threatmetrix/index.d.ts +2 -0
- package/dist/cjs/modules/device/vendors/Threatmetrix/index.js +64 -0
- package/dist/cjs/modules/device/vendors/Threatmetrix/index.js.map +1 -0
- package/dist/cjs/modules/device/vendors/Threatmetrix/nolint_fp-clientlib-v4.d.ts +11 -0
- package/dist/cjs/modules/device/vendors/Threatmetrix/nolint_fp-clientlib-v4.js +90 -0
- package/dist/cjs/modules/device/vendors/Threatmetrix/nolint_fp-clientlib-v4.js.map +1 -0
- package/dist/cjs/modules/frankie-client/ClientsDictionary.d.ts +13 -0
- package/dist/cjs/modules/frankie-client/ClientsDictionary.js +3 -0
- package/dist/cjs/modules/frankie-client/ClientsDictionary.js.map +1 -0
- package/dist/cjs/modules/frankie-client/DummyFrankieApiClient.d.ts +48 -0
- package/dist/cjs/modules/frankie-client/DummyFrankieApiClient.js +197 -0
- package/dist/cjs/modules/frankie-client/DummyFrankieApiClient.js.map +1 -0
- package/dist/cjs/modules/frankie-client/FrankieApiClient.d.ts +32 -0
- package/dist/cjs/modules/frankie-client/FrankieApiClient.js +139 -0
- package/dist/cjs/modules/frankie-client/FrankieApiClient.js.map +1 -0
- package/dist/cjs/modules/frankie-client/clients/ApplicantClient.d.ts +24 -0
- package/dist/cjs/modules/frankie-client/clients/ApplicantClient.js +106 -0
- package/dist/cjs/modules/frankie-client/clients/ApplicantClient.js.map +1 -0
- package/dist/cjs/modules/frankie-client/clients/BaseClient.d.ts +10 -0
- package/dist/cjs/modules/frankie-client/clients/BaseClient.js +20 -0
- package/dist/cjs/modules/frankie-client/clients/BaseClient.js.map +1 -0
- package/dist/cjs/modules/frankie-client/clients/ConfigurationClient.d.ts +10 -0
- package/dist/cjs/modules/frankie-client/clients/ConfigurationClient.js +34 -0
- package/dist/cjs/modules/frankie-client/clients/ConfigurationClient.js.map +1 -0
- package/dist/cjs/modules/frankie-client/clients/IDVClient.d.ts +21 -0
- package/dist/cjs/modules/frankie-client/clients/IDVClient.js +27 -0
- package/dist/cjs/modules/frankie-client/clients/IDVClient.js.map +1 -0
- package/dist/cjs/modules/frankie-client/clients/OCRClient.d.ts +31 -0
- package/dist/cjs/modules/frankie-client/clients/OCRClient.js +121 -0
- package/dist/cjs/modules/frankie-client/clients/OCRClient.js.map +1 -0
- package/dist/cjs/modules/frankie-client/index.d.ts +9 -0
- package/dist/cjs/modules/frankie-client/index.js +56 -0
- package/dist/cjs/modules/frankie-client/index.js.map +1 -0
- package/dist/cjs/modules/frankie-client/mocks/biometrics/idvSubmission.d.ts +4 -0
- package/dist/cjs/modules/frankie-client/mocks/biometrics/idvSubmission.js +43 -0
- package/dist/cjs/modules/frankie-client/mocks/biometrics/idvSubmission.js.map +1 -0
- package/dist/cjs/modules/frankie-client/mocks/index.d.ts +8 -0
- package/dist/cjs/modules/frankie-client/mocks/index.js +34 -0
- package/dist/cjs/modules/frankie-client/mocks/index.js.map +1 -0
- package/dist/cjs/modules/frankie-client/mocks/individual/loadIndividual.d.ts +28 -0
- package/dist/cjs/modules/frankie-client/mocks/individual/loadIndividual.js +73 -0
- package/dist/cjs/modules/frankie-client/mocks/individual/loadIndividual.js.map +1 -0
- package/dist/cjs/modules/frankie-client/mocks/individual/submitData.d.ts +3 -0
- package/dist/cjs/modules/frankie-client/mocks/individual/submitData.js +33 -0
- package/dist/cjs/modules/frankie-client/mocks/individual/submitData.js.map +1 -0
- package/dist/cjs/modules/frankie-client/mocks/initialisation/loadConfiguration.d.ts +2 -0
- package/dist/cjs/modules/frankie-client/mocks/initialisation/loadConfiguration.js +26 -0
- package/dist/cjs/modules/frankie-client/mocks/initialisation/loadConfiguration.js.map +1 -0
- package/dist/cjs/modules/frankie-client/mocks/initialisation/validateToken.d.ts +2 -0
- package/dist/cjs/modules/frankie-client/mocks/initialisation/validateToken.js +12 -0
- package/dist/cjs/modules/frankie-client/mocks/initialisation/validateToken.js.map +1 -0
- package/dist/cjs/modules/frankie-client/mocks/ocr/ocrSubmission.d.ts +23 -0
- package/dist/cjs/modules/frankie-client/mocks/ocr/ocrSubmission.js +129 -0
- package/dist/cjs/modules/frankie-client/mocks/ocr/ocrSubmission.js.map +1 -0
- package/dist/cjs/modules/frankie-client/mocks/simplifier.d.ts +28 -0
- package/dist/cjs/modules/frankie-client/mocks/simplifier.js +214 -0
- package/dist/cjs/modules/frankie-client/mocks/simplifier.js.map +1 -0
- package/dist/cjs/modules/index.d.ts +24 -0
- package/dist/cjs/modules/index.js +44 -0
- package/dist/cjs/modules/index.js.map +1 -0
- package/dist/cjs/modules/individual/actions/consents.d.ts +4 -0
- package/dist/cjs/modules/individual/actions/consents.js +11 -0
- package/dist/cjs/modules/individual/actions/consents.js.map +1 -0
- package/dist/cjs/modules/individual/actions/documents.d.ts +9 -0
- package/dist/cjs/modules/individual/actions/documents.js +26 -0
- package/dist/cjs/modules/individual/actions/documents.js.map +1 -0
- package/dist/cjs/modules/individual/actions/emitEvents.d.ts +6 -0
- package/dist/cjs/modules/individual/actions/emitEvents.js +11 -0
- package/dist/cjs/modules/individual/actions/emitEvents.js.map +1 -0
- package/dist/cjs/modules/individual/actions/search.d.ts +17 -0
- package/dist/cjs/modules/individual/actions/search.js +57 -0
- package/dist/cjs/modules/individual/actions/search.js.map +1 -0
- package/dist/cjs/modules/individual/actions/submit.d.ts +15 -0
- package/dist/cjs/modules/individual/actions/submit.js +41 -0
- package/dist/cjs/modules/individual/actions/submit.js.map +1 -0
- package/dist/cjs/modules/individual/index.d.ts +2 -0
- package/dist/cjs/modules/individual/index.js +77 -0
- package/dist/cjs/modules/individual/index.js.map +1 -0
- package/dist/cjs/modules/individual/types/events.d.ts +7 -0
- package/dist/cjs/modules/individual/types/events.js +3 -0
- package/dist/cjs/modules/individual/types/events.js.map +1 -0
- package/dist/cjs/modules/individual/types/index.d.ts +2 -0
- package/dist/cjs/modules/individual/types/index.js +19 -0
- package/dist/cjs/modules/individual/types/index.js.map +1 -0
- package/dist/cjs/modules/individual/types/module.d.ts +31 -0
- package/dist/cjs/modules/individual/types/module.js +3 -0
- package/dist/cjs/modules/individual/types/module.js.map +1 -0
- package/dist/cjs/modules/ocr/actions/start.d.ts +52 -0
- package/dist/cjs/modules/ocr/actions/start.js +278 -0
- package/dist/cjs/modules/ocr/actions/start.js.map +1 -0
- package/dist/cjs/modules/ocr/index.d.ts +13 -0
- package/dist/cjs/modules/ocr/index.js +66 -0
- package/dist/cjs/modules/ocr/index.js.map +1 -0
- package/dist/cjs/modules/ocr/types/events.d.ts +21 -0
- package/dist/cjs/modules/ocr/types/events.js +3 -0
- package/dist/cjs/modules/ocr/types/events.js.map +1 -0
- package/dist/cjs/modules/ocr/types/index.d.ts +2 -0
- package/dist/cjs/modules/ocr/types/index.js +19 -0
- package/dist/cjs/modules/ocr/types/index.js.map +1 -0
- package/dist/cjs/modules/ocr/types/module.d.ts +26 -0
- package/dist/cjs/modules/ocr/types/module.js +3 -0
- package/dist/cjs/modules/ocr/types/module.js.map +1 -0
- package/dist/cjs/modules/sdk/ComponentLoader.d.ts +18 -0
- package/dist/cjs/modules/sdk/ComponentLoader.js +71 -0
- package/dist/cjs/modules/sdk/ComponentLoader.js.map +1 -0
- package/dist/cjs/modules/sdk/index.d.ts +3 -0
- package/dist/cjs/modules/sdk/index.js +33 -0
- package/dist/cjs/modules/sdk/index.js.map +1 -0
- package/dist/cjs/modules/sdk/parseConfiguration.d.ts +3 -0
- package/dist/cjs/modules/sdk/parseConfiguration.js +97 -0
- package/dist/cjs/modules/sdk/parseConfiguration.js.map +1 -0
- package/dist/cjs/modules/sdk/types/components.d.ts +25 -0
- package/dist/cjs/modules/sdk/types/components.js +3 -0
- package/dist/cjs/modules/sdk/types/components.js.map +1 -0
- package/dist/cjs/modules/sdk/types/configuration.d.ts +82 -0
- package/dist/cjs/modules/sdk/types/configuration.js +41 -0
- package/dist/cjs/modules/sdk/types/configuration.js.map +1 -0
- package/dist/cjs/modules/sdk/types/events.d.ts +5 -0
- package/dist/cjs/modules/sdk/types/events.js +3 -0
- package/dist/cjs/modules/sdk/types/events.js.map +1 -0
- package/dist/cjs/modules/sdk/types/index.d.ts +4 -0
- package/dist/cjs/modules/sdk/types/index.js +21 -0
- package/dist/cjs/modules/sdk/types/index.js.map +1 -0
- package/dist/cjs/modules/sdk/types/module.d.ts +16 -0
- package/dist/cjs/modules/sdk/types/module.js +3 -0
- package/dist/cjs/modules/sdk/types/module.js.map +1 -0
- package/dist/cjs/types/Primitives.d.ts +1 -0
- package/dist/cjs/types/Primitives.js +3 -0
- package/dist/cjs/types/Primitives.js.map +1 -0
- package/dist/cjs/types/Utilities.d.ts +25 -0
- package/dist/cjs/types/Utilities.js +3 -0
- package/dist/cjs/types/Utilities.js.map +1 -0
- package/dist/cjs/types/index.d.ts +2 -0
- package/dist/cjs/types/index.js +19 -0
- package/dist/cjs/types/index.js.map +1 -0
- package/dist/commit.txt +1 -1
- package/dist/esm/modules/biometrics/types/events.d.ts +1 -2
- package/dist/esm/modules/biometrics/wrappers/OcrLabs/index.js +16 -20
- package/dist/esm/modules/biometrics/wrappers/OcrLabs/index.js.map +1 -1
- package/dist/esm/modules/biometrics/wrappers/dummy-biometrics/index.js +0 -1
- package/dist/esm/modules/biometrics/wrappers/dummy-biometrics/index.js.map +1 -1
- package/dist/esm/modules/common/modules/ReactiveStore.d.ts +52 -7
- package/dist/esm/modules/common/modules/ReactiveStore.js +62 -8
- package/dist/esm/modules/common/modules/ReactiveStore.js.map +1 -1
- package/dist/esm/modules/common/modules/objectUtils.js +1 -1
- package/dist/esm/modules/common/modules/objectUtils.js.map +1 -1
- package/dist/esm/modules/common/shared/data/aus_states.json +10 -0
- package/dist/esm/modules/common/shared/data/country.json +14964 -0
- package/dist/esm/modules/common/shared/models/UBOData.d.ts +2 -4
- package/dist/esm/modules/common/shared/models/UBOData.js.map +1 -1
- package/dist/esm/modules/common/shared/utils/getCountryDetails.js +2 -2
- package/dist/esm/modules/common/shared/utils/getCountryDetails.js.map +1 -1
- package/dist/esm/modules/common/types/Accessors.d.ts +35 -3
- package/dist/esm/modules/common/types/Configuration.d.ts +2 -1
- package/dist/esm/modules/device/constants.d.ts +1 -1
- package/dist/esm/modules/device/constants.js +1 -1
- package/dist/esm/modules/device/constants.js.map +1 -1
- package/dist/esm/modules/device/index.js +18 -23
- package/dist/esm/modules/device/index.js.map +1 -1
- package/dist/esm/modules/device/parseConfiguration.js +21 -5
- package/dist/esm/modules/device/parseConfiguration.js.map +1 -1
- package/dist/esm/modules/device/types/events.d.ts +2 -2
- package/dist/esm/modules/device/types/module.d.ts +2 -4
- package/dist/esm/modules/device/types/wrapper.d.ts +2 -1
- package/dist/esm/modules/device/vendors/Sardine.d.ts +7 -1
- package/dist/esm/modules/device/vendors/Sardine.js +13 -9
- package/dist/esm/modules/device/vendors/Sardine.js.map +1 -1
- package/dist/esm/modules/device/vendors/Threatmetrix/index.js +2 -1
- package/dist/esm/modules/device/vendors/Threatmetrix/index.js.map +1 -1
- package/dist/esm/modules/frankie-client/mocks/individual/loadIndividual.d.ts +2 -2
- package/dist/esm/modules/individual/actions/emitEvents.d.ts +3 -3
- package/dist/esm/modules/individual/actions/emitEvents.js.map +1 -1
- package/dist/esm/modules/individual/types/module.d.ts +1 -1
- package/dist/esm/modules/ocr/types/module.d.ts +1 -1
- package/dist/esm/modules/sdk/types/components.d.ts +2 -2
- package/dist/esm/modules/sdk/types/configuration.d.ts +4 -3
- package/dist/esm/types/Primitives.d.ts +1 -0
- package/dist/esm/types/Primitives.js +2 -0
- package/dist/esm/types/Primitives.js.map +1 -0
- package/dist/esm/types/Utilities.d.ts +19 -1
- package/dist/esm/types/index.d.ts +1 -0
- package/dist/esm/types/index.js +1 -0
- package/dist/esm/types/index.js.map +1 -1
- package/dist/umd/727.js.map +1 -1
- package/dist/umd/biometrics-dummy.js +1 -1
- package/dist/umd/biometrics-dummy.js.map +1 -1
- package/dist/umd/biometrics-ocrlabs.js +1 -1
- package/dist/umd/biometrics-ocrlabs.js.map +1 -1
- package/dist/umd/device-sardine.js +1 -1
- package/dist/umd/device-sardine.js.map +1 -1
- package/dist/umd/device-threatmetrix.js +1 -1
- package/dist/umd/device-threatmetrix.js.map +1 -1
- package/dist/umd/oneSdk.umd.js +1 -1
- package/dist/umd/oneSdk.umd.js.LICENSE.txt +0 -2
- package/dist/umd/oneSdk.umd.js.map +1 -1
- package/package.json +34 -11
- package/dist/esm/modules/common/shared/data/ID_TYPES.d.ts +0 -18
- package/dist/esm/modules/common/shared/data/ID_TYPES.js +0 -18
- package/dist/esm/modules/common/shared/data/ID_TYPES.js.map +0 -1
- package/dist/esm/modules/common/shared/data/aus_states.d.ts +0 -5
- package/dist/esm/modules/common/shared/data/aus_states.js +0 -11
- package/dist/esm/modules/common/shared/data/aus_states.js.map +0 -1
- package/dist/esm/modules/common/shared/data/country.d.ts +0 -52
- package/dist/esm/modules/common/shared/data/country.js +0 -14931
- package/dist/esm/modules/common/shared/data/country.js.map +0 -1
- package/dist/esm/modules/common/shared/models/ConfigurationWrapper.d.ts +0 -15
- package/dist/esm/modules/common/shared/models/ConfigurationWrapper.js +0 -44
- package/dist/esm/modules/common/shared/models/ConfigurationWrapper.js.map +0 -1
|
@@ -0,0 +1,57 @@
|
|
|
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.mkSearchMethod = void 0;
|
|
13
|
+
const Applicant_1 = require("@module/common/shared/models/Applicant");
|
|
14
|
+
const Session_1 = require("@module/common/types/Session");
|
|
15
|
+
const Profile_1 = require("../../common/shared/models/Profile");
|
|
16
|
+
const mkSearchMethod = (deps) => () => __awaiter(void 0, void 0, void 0, function* () {
|
|
17
|
+
const { client, eventHub, state$, recipeName } = deps;
|
|
18
|
+
let applicant = null;
|
|
19
|
+
let documents = null;
|
|
20
|
+
let hasLoaded = false;
|
|
21
|
+
try {
|
|
22
|
+
const found = yield client.load();
|
|
23
|
+
applicant = found.applicant;
|
|
24
|
+
documents = found.documents;
|
|
25
|
+
hasLoaded = true;
|
|
26
|
+
}
|
|
27
|
+
catch (e) {
|
|
28
|
+
if ((0, Session_1.hasEntityId)(client.entityIdentifier)) {
|
|
29
|
+
const errorMessage = `Critical error! There was an issue loading the individual's details. Is the entityId (${client.entityIdentifier.entityId}) used to create this session valid?`;
|
|
30
|
+
eventHub.emit("error", {
|
|
31
|
+
message: errorMessage,
|
|
32
|
+
payload: e,
|
|
33
|
+
});
|
|
34
|
+
hasLoaded = false;
|
|
35
|
+
throw new Error(errorMessage);
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
hasLoaded = true;
|
|
39
|
+
applicant = new Applicant_1.Applicant();
|
|
40
|
+
documents = [];
|
|
41
|
+
const profile = new Profile_1.Profile(recipeName, "electronic");
|
|
42
|
+
applicant.profile = profile;
|
|
43
|
+
applicant.customerReference = client.entityIdentifier.reference;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
const isPreloaded = Boolean(applicant === null || applicant === void 0 ? void 0 : applicant.entityId);
|
|
47
|
+
state$.next({
|
|
48
|
+
applicant,
|
|
49
|
+
documents,
|
|
50
|
+
hasLoaded,
|
|
51
|
+
isPreloaded,
|
|
52
|
+
});
|
|
53
|
+
if (hasLoaded)
|
|
54
|
+
eventHub.emit("data_loaded", Object.assign(Object.assign({}, client.entityIdentifier), { isPreloaded }));
|
|
55
|
+
});
|
|
56
|
+
exports.mkSearchMethod = mkSearchMethod;
|
|
57
|
+
//# sourceMappingURL=search.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../../../../modules/individual/actions/search.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,sEAAmE;AAEnE,0DAA2D;AAE3D,gEAA6D;AAGtD,MAAM,cAAc,GACzB,CAAC,IAA+G,EAAE,EAAE,CACpH,GAAS,EAAE;IACT,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;IACtD,IAAI,SAAS,GAAc,IAAI,CAAC;IAChC,IAAI,SAAS,GAAe,IAAI,CAAC;IACjC,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,IAAI;QACF,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QAClC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QAC5B,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QAC5B,SAAS,GAAG,IAAI,CAAC;KAClB;IAAC,OAAO,CAAC,EAAE;QACV,IAAI,IAAA,qBAAW,EAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE;YACxC,MAAM,YAAY,GAAG,yFAAyF,MAAM,CAAC,gBAAgB,CAAC,QAAQ,sCAAsC,CAAC;YACrL,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE;gBACrB,OAAO,EAAE,YAAY;gBACrB,OAAO,EAAE,CAAC;aACX,CAAC,CAAC;YACH,SAAS,GAAG,KAAK,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;SAC/B;aAAM;YACL,SAAS,GAAG,IAAI,CAAC;YACjB,SAAS,GAAG,IAAI,qBAAS,EAAE,CAAC;YAC5B,SAAS,GAAG,EAAE,CAAC;YAEf,MAAM,OAAO,GAAG,IAAI,iBAAO,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;YACtD,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC;YAC5B,SAAS,CAAC,iBAAiB,GAAG,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC;SACjE;KACF;IACD,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,CAAC,CAAC;IACjD,MAAM,CAAC,IAAI,CAAC;QACV,SAAS;QACT,SAAS;QACT,SAAS;QACT,WAAW;KACZ,CAAC,CAAC;IACH,IAAI,SAAS;QAAE,QAAQ,CAAC,IAAI,CAAC,aAAa,kCAAO,MAAM,CAAC,gBAAgB,KAAE,WAAW,IAAG,CAAC;AAC3F,CAAC,CAAA,CAAC;AAxCS,QAAA,cAAc,kBAwCvB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Accessors, EventHub } from "@module/common";
|
|
2
|
+
import { Applicant } from "@module/common/shared/models/Applicant";
|
|
3
|
+
import { Document } from "@module/common/shared/models/Document";
|
|
4
|
+
import { ApplicantClient } from "@module/frankie-client/clients/ApplicantClient";
|
|
5
|
+
import { PublicAccessors } from "../types";
|
|
6
|
+
import { Events } from "../types/events";
|
|
7
|
+
export declare const mkSubmitMethod: (deps: {
|
|
8
|
+
consentsGiven$: PublicAccessors["consentsGiven"];
|
|
9
|
+
applicant$: Accessors<Applicant>;
|
|
10
|
+
eventHub: EventHub<Events>;
|
|
11
|
+
client: ApplicantClient;
|
|
12
|
+
documents$: Accessors<Document[]>;
|
|
13
|
+
}) => <T extends boolean>(o?: {
|
|
14
|
+
verify: T;
|
|
15
|
+
}) => Promise<T extends true ? import("../../common/shared/models/CheckSummary").CheckSummary : true>;
|
|
@@ -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.mkSubmitMethod = void 0;
|
|
13
|
+
const mkSubmitMethod = (deps) => ((o) => __awaiter(void 0, void 0, void 0, function* () {
|
|
14
|
+
const { applicant$, eventHub, client, documents$ } = deps;
|
|
15
|
+
// skipping requirements for consents initially
|
|
16
|
+
const hasConsentGiven = true; // consentsGiven$.getValue().length > 0;
|
|
17
|
+
const hasEntityId = Boolean(applicant$.getValue().entityId);
|
|
18
|
+
if (!hasConsentGiven) {
|
|
19
|
+
const message = "Consent needs to be provided before submitting any data.";
|
|
20
|
+
eventHub.emit("error", {
|
|
21
|
+
message,
|
|
22
|
+
payload: {
|
|
23
|
+
hint: "Capture user's consent and provide it using the method addConsent({ type }), where 'type' is one of the values defined in our api documentation",
|
|
24
|
+
},
|
|
25
|
+
});
|
|
26
|
+
throw new Error(message);
|
|
27
|
+
}
|
|
28
|
+
const method = hasEntityId ? client.updateApplicant : client.createApplicant;
|
|
29
|
+
const applicant = applicant$.getValue();
|
|
30
|
+
const documents = documents$.getValue();
|
|
31
|
+
const { entityId } = yield method.bind(client)({ applicant, documents });
|
|
32
|
+
if (!hasEntityId) {
|
|
33
|
+
applicant.entityId = entityId;
|
|
34
|
+
applicant$.setValue(applicant);
|
|
35
|
+
}
|
|
36
|
+
if (o === null || o === void 0 ? void 0 : o.verify)
|
|
37
|
+
return yield client.triggerChecks();
|
|
38
|
+
return true;
|
|
39
|
+
}));
|
|
40
|
+
exports.mkSubmitMethod = mkSubmitMethod;
|
|
41
|
+
//# sourceMappingURL=submit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"submit.js","sourceRoot":"","sources":["../../../../../modules/individual/actions/submit.ts"],"names":[],"mappings":";;;;;;;;;;;;AAOO,MAAM,cAAc,GAAG,CAAC,IAM9B,EAAE,EAAE,CACH,CAAC,CAAO,CAAC,EAAE,EAAE;IACX,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;IAC1D,+CAA+C;IAC/C,MAAM,eAAe,GAAG,IAAI,CAAC,CAAC,wCAAwC;IACtE,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC;IAE5D,IAAI,CAAC,eAAe,EAAE;QACpB,MAAM,OAAO,GAAG,0DAA0D,CAAC;QAC3E,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE;YACrB,OAAO;YACP,OAAO,EAAE;gBACP,IAAI,EAAE,iJAAiJ;aACxJ;SACF,CAAC,CAAC;QACH,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;KAC1B;IACD,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC;IAC7E,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC;IACxC,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC;IAExC,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;IACzE,IAAI,CAAC,WAAW,EAAE;QAChB,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC9B,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;KAChC;IAED,IAAI,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,MAAM;QAAE,OAAO,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC;IACnD,OAAO,IAAI,CAAC;AACd,CAAC,CAAA,CAAsC,CAAC;AAnC7B,QAAA,cAAc,kBAmCe"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.individualModule = void 0;
|
|
4
|
+
const common_1 = require("@module/common");
|
|
5
|
+
const ApplicantClient_1 = require("@module/frankie-client/clients/ApplicantClient");
|
|
6
|
+
const consents_1 = require("./actions/consents");
|
|
7
|
+
const documents_1 = require("./actions/documents");
|
|
8
|
+
const emitEvents_1 = require("./actions/emitEvents");
|
|
9
|
+
const search_1 = require("./actions/search");
|
|
10
|
+
const submit_1 = require("./actions/submit");
|
|
11
|
+
exports.individualModule = {
|
|
12
|
+
initialise(o) {
|
|
13
|
+
const { frankieClient } = o;
|
|
14
|
+
const client = new ApplicantClient_1.ApplicantClient(frankieClient);
|
|
15
|
+
const state$ = new common_1.ReactiveStore({
|
|
16
|
+
applicant: null,
|
|
17
|
+
documents: null,
|
|
18
|
+
hasLoaded: false,
|
|
19
|
+
isPreloaded: null,
|
|
20
|
+
});
|
|
21
|
+
const documents$ = state$.getRootAccessors("documents");
|
|
22
|
+
const applicant$ = state$.getRootAccessors("applicant");
|
|
23
|
+
const hasLoaded$ = state$.getRootAccessors("hasLoaded");
|
|
24
|
+
const isPreloaded$ = state$.getRootAccessors("isPreloaded");
|
|
25
|
+
const entityId$ = common_1.ReactiveStore.mkPropertyAccessors(applicant$, { propertyName: "entityId" });
|
|
26
|
+
const name$ = common_1.ReactiveStore.mkPropertyAccessors(applicant$, { propertyName: "name" });
|
|
27
|
+
const dob$ = common_1.ReactiveStore.mkPropertyAccessors(applicant$, { propertyName: "dateOfBirth" });
|
|
28
|
+
const addresses$ = common_1.ReactiveStore.mkPropertyAccessors(applicant$, { propertyName: "addresses" });
|
|
29
|
+
const consentsGiven$ = common_1.ReactiveStore.mkPropertyAccessors(applicant$, { propertyName: "consents" });
|
|
30
|
+
// when adding a new public field, make sure to update the PublicFields type in ./types/module
|
|
31
|
+
const publicAccessors = {
|
|
32
|
+
entityId: entityId$,
|
|
33
|
+
name: name$,
|
|
34
|
+
documents: documents$,
|
|
35
|
+
addresses: addresses$,
|
|
36
|
+
dateOfBirth: dob$,
|
|
37
|
+
hasLoaded: hasLoaded$,
|
|
38
|
+
consentsGiven: consentsGiven$,
|
|
39
|
+
};
|
|
40
|
+
// Events mapping
|
|
41
|
+
const eventHub = (0, common_1.mkEventHub)();
|
|
42
|
+
// For each public field, emit "data_updated" when they change
|
|
43
|
+
(0, emitEvents_1.subscribeAndEmitEvents)({
|
|
44
|
+
eventHub,
|
|
45
|
+
publicAccessors,
|
|
46
|
+
});
|
|
47
|
+
// methods
|
|
48
|
+
const search = (0, search_1.mkSearchMethod)({
|
|
49
|
+
client,
|
|
50
|
+
eventHub,
|
|
51
|
+
state$,
|
|
52
|
+
recipeName: o.recipe.name,
|
|
53
|
+
});
|
|
54
|
+
const submitData = (0, submit_1.mkSubmitMethod)({
|
|
55
|
+
applicant$,
|
|
56
|
+
client,
|
|
57
|
+
consentsGiven$,
|
|
58
|
+
documents$,
|
|
59
|
+
eventHub,
|
|
60
|
+
});
|
|
61
|
+
const addConsent = (0, consents_1.mkAddConsents)({
|
|
62
|
+
consentsGiven$,
|
|
63
|
+
});
|
|
64
|
+
const addDocument = (0, documents_1.mkAddDocument)({
|
|
65
|
+
documents$,
|
|
66
|
+
});
|
|
67
|
+
const updateDocument = (0, documents_1.mkUpdateDocument)({
|
|
68
|
+
documents$,
|
|
69
|
+
});
|
|
70
|
+
// Refresh state automatically on initialisation
|
|
71
|
+
search();
|
|
72
|
+
return Object.assign(Object.assign({}, (0, common_1.mkEventListener)(eventHub)), { access: (fieldName) => publicAccessors[fieldName], isPreloaded: () => isPreloaded$.getValue(), hasLoaded: () => hasLoaded$.getValue(), submit: submitData, addDocument,
|
|
73
|
+
updateDocument,
|
|
74
|
+
addConsent });
|
|
75
|
+
},
|
|
76
|
+
};
|
|
77
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../modules/individual/index.ts"],"names":[],"mappings":";;;AAAA,2CAA4E;AAG5E,oFAAiF;AACjF,iDAAmD;AACnD,mDAAsE;AACtE,qDAA8D;AAC9D,6CAAkD;AAClD,6CAAkD;AAIrC,QAAA,gBAAgB,GAAqB;IAChD,UAAU,CAAC,CAAC;QACV,MAAM,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;QAC5B,MAAM,MAAM,GAAG,IAAI,iCAAe,CAAC,aAAa,CAAC,CAAC;QAElD,MAAM,MAAM,GAAG,IAAI,sBAAa,CAAC;YAC/B,SAAS,EAAE,IAAiB;YAC5B,SAAS,EAAE,IAAkB;YAC7B,SAAS,EAAE,KAAgB;YAC3B,WAAW,EAAE,IAAe;SAC7B,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,MAAM,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QACxD,MAAM,UAAU,GAAG,MAAM,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QACxD,MAAM,UAAU,GAAG,MAAM,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QACxD,MAAM,YAAY,GAAG,MAAM,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAE5D,MAAM,SAAS,GAAG,sBAAa,CAAC,mBAAmB,CAAC,UAAU,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,CAAC;QAC9F,MAAM,KAAK,GAAG,sBAAa,CAAC,mBAAmB,CAAC,UAAU,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;QACtF,MAAM,IAAI,GAAG,sBAAa,CAAC,mBAAmB,CAAC,UAAU,EAAE,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC,CAAC;QAC5F,MAAM,UAAU,GAAG,sBAAa,CAAC,mBAAmB,CAAC,UAAU,EAAE,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC;QAChG,MAAM,cAAc,GAAG,sBAAa,CAAC,mBAAmB,CAAC,UAAU,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,CAAC;QAEnG,8FAA8F;QAC9F,MAAM,eAAe,GAAoB;YACvC,QAAQ,EAAE,SAAS;YACnB,IAAI,EAAE,KAAK;YACX,SAAS,EAAE,UAAU;YACrB,SAAS,EAAE,UAAU;YACrB,WAAW,EAAE,IAAI;YACjB,SAAS,EAAE,UAAU;YACrB,aAAa,EAAE,cAAc;SAC9B,CAAC;QAEF,iBAAiB;QACjB,MAAM,QAAQ,GAAG,IAAA,mBAAU,GAAU,CAAC;QAEtC,8DAA8D;QAC9D,IAAA,mCAAsB,EAAC;YACrB,QAAQ;YACR,eAAe;SAChB,CAAC,CAAC;QAEH,UAAU;QACV,MAAM,MAAM,GAAG,IAAA,uBAAc,EAAC;YAC5B,MAAM;YACN,QAAQ;YACR,MAAM;YACN,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI;SAC1B,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,IAAA,uBAAc,EAAC;YAChC,UAAU;YACV,MAAM;YACN,cAAc;YACd,UAAU;YACV,QAAQ;SACT,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,IAAA,wBAAa,EAAC;YAC/B,cAAc;SACf,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,IAAA,yBAAa,EAAC;YAChC,UAAU;SACX,CAAC,CAAC;QACH,MAAM,cAAc,GAAG,IAAA,4BAAgB,EAAC;YACtC,UAAU;SACX,CAAC,CAAC;QACH,gDAAgD;QAChD,MAAM,EAAE,CAAC;QAET,uCACK,IAAA,wBAAe,EAAC,QAAQ,CAAC,KAC5B,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,CAAC,EACjD,WAAW,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,EAC1C,SAAS,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,EACtC,MAAM,EAAE,UAAU,EAClB,WAAW;YACX,cAAc;YACd,UAAU,IACV;IACJ,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../../../modules/individual/types/events.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,19 @@
|
|
|
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("./events"), exports);
|
|
18
|
+
__exportStar(require("./module"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../modules/individual/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,2CAAyB"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { Address } from "@module/common/shared/models/Address";
|
|
2
|
+
import { Applicant } from "@module/common/shared/models/Applicant";
|
|
3
|
+
import type { CheckSummary } from "@module/common/shared/models/CheckSummary";
|
|
4
|
+
import type { Document } from "@module/common/shared/models/Document";
|
|
5
|
+
import type { BaseModuleOptions, ModuleContext } from "@module/sdk/types";
|
|
6
|
+
import { AccessFunction, AccessorsDictionary } from "../../common/types/Accessors";
|
|
7
|
+
import { Events } from "./events";
|
|
8
|
+
export interface IndividualModule {
|
|
9
|
+
initialise: (o: BaseModuleOptions) => IndividualModuleContext;
|
|
10
|
+
}
|
|
11
|
+
export declare type IndividualModuleContext = ModuleContext<{
|
|
12
|
+
hasLoaded: () => boolean;
|
|
13
|
+
isPreloaded: () => boolean;
|
|
14
|
+
addConsent: (type: string) => void;
|
|
15
|
+
addDocument: (details: Document) => void;
|
|
16
|
+
updateDocument: (id: string, details: Document) => void;
|
|
17
|
+
submit: <T extends boolean>(o?: {
|
|
18
|
+
verify: T;
|
|
19
|
+
}) => Promise<T extends true ? CheckSummary : true>;
|
|
20
|
+
access: AccessFunction<PublicFields>;
|
|
21
|
+
}, Events>;
|
|
22
|
+
export declare type PublicFields = {
|
|
23
|
+
entityId: Applicant["entityId"];
|
|
24
|
+
name: Applicant["name"];
|
|
25
|
+
dateOfBirth: Applicant["dateOfBirth"];
|
|
26
|
+
consentsGiven: Applicant["consents"];
|
|
27
|
+
documents: Document[];
|
|
28
|
+
addresses: Address[];
|
|
29
|
+
hasLoaded: boolean;
|
|
30
|
+
};
|
|
31
|
+
export declare type PublicAccessors = AccessorsDictionary<PublicFields>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module.js","sourceRoot":"","sources":["../../../../../modules/individual/types/module.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { Accessors, EventHub, ReadonlyAccessors } from "@module/common";
|
|
2
|
+
import { Document } from "@module/common/shared/models/Document";
|
|
3
|
+
import { CompleteStatus, FailedStatus, InputRequiredStatus, OCRClient, OCRResults, Status } from "@module/frankie-client/clients/OCRClient";
|
|
4
|
+
import { IndividualModuleContext } from "@module/individual/types";
|
|
5
|
+
import { Events } from "../types";
|
|
6
|
+
declare type Dependencies = {
|
|
7
|
+
_expectedSide$: ReadonlyAccessors<"front" | "back">;
|
|
8
|
+
status$: Accessors<InputRequiredStatus | CompleteStatus>;
|
|
9
|
+
document$: Accessors<Document>;
|
|
10
|
+
files$: Accessors<File[]>;
|
|
11
|
+
individual: IndividualModuleContext;
|
|
12
|
+
eventHub: EventHub<Events>;
|
|
13
|
+
client: OCRClient;
|
|
14
|
+
isPreloaded$: Accessors<boolean>;
|
|
15
|
+
failedStatus$: Accessors<FailedStatus>;
|
|
16
|
+
};
|
|
17
|
+
export declare type DependenciesWithInterrupt = Dependencies & {
|
|
18
|
+
interruptOCR: InterruptOCR;
|
|
19
|
+
};
|
|
20
|
+
declare type InterruptOCR = (e: {
|
|
21
|
+
message: string;
|
|
22
|
+
payload?: unknown;
|
|
23
|
+
}) => void;
|
|
24
|
+
/**
|
|
25
|
+
* Returns the start method called by customers to trigger the OCR flow
|
|
26
|
+
* It first generates two observables by branching off the OCR's internal state variables
|
|
27
|
+
* a) status$
|
|
28
|
+
* Which will cycle on every new status and
|
|
29
|
+
* will interrupt the cycle once the value of status is COMPLETE OR there is a forced interruption
|
|
30
|
+
* b) failedStatus$
|
|
31
|
+
* Which will cycle on every new fail status, ignoring null values, issued when failures are resolved
|
|
32
|
+
* Will be interrupted by any forced interruptions
|
|
33
|
+
*
|
|
34
|
+
* Forced interruptions occur when the function interruptOCR is called by either the customer or internally,
|
|
35
|
+
* when we reach an unrecoverable state. So far the unrecoverable states are
|
|
36
|
+
* - Receiving a status PROVIDER_OFFLINE form backend
|
|
37
|
+
* - File submission fails due to server/network issues
|
|
38
|
+
* - Receiving a status WAITING_OCR_RUN, reattempting automatically and failing with another WAITING_OCR_RUN
|
|
39
|
+
*
|
|
40
|
+
* @param deps dependencies passed from the OCR module
|
|
41
|
+
* @returns { interruptOCR }, where interruptOCR forces the end of the OCR cycles
|
|
42
|
+
*/
|
|
43
|
+
export declare const mkStartMethod: (deps: Dependencies) => () => Promise<{
|
|
44
|
+
interruptOCR: () => void;
|
|
45
|
+
}>;
|
|
46
|
+
export declare const isOcrPreloaded: (d: Document) => boolean;
|
|
47
|
+
export declare const resetCurrentStatus: (deps: DependenciesWithInterrupt) => Promise<void>;
|
|
48
|
+
export declare const completeOCR: (deps: DependenciesWithInterrupt) => void;
|
|
49
|
+
export declare const inputRequired: (status: Status, deps: DependenciesWithInterrupt) => void;
|
|
50
|
+
export declare const mkProvideFile: (deps: DependenciesWithInterrupt) => (file: File) => void;
|
|
51
|
+
export declare const mkEvaluateResults: (deps: DependenciesWithInterrupt) => (results: OCRResults, recursionFlag?: boolean) => void;
|
|
52
|
+
export {};
|
|
@@ -0,0 +1,278 @@
|
|
|
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.mkEvaluateResults = exports.mkProvideFile = exports.inputRequired = exports.completeOCR = exports.resetCurrentStatus = exports.isOcrPreloaded = exports.mkStartMethod = void 0;
|
|
13
|
+
const Document_1 = require("@module/common/shared/models/Document");
|
|
14
|
+
const OCRClient_1 = require("@module/frankie-client/clients/OCRClient");
|
|
15
|
+
const rxjs_1 = require("rxjs");
|
|
16
|
+
/**
|
|
17
|
+
* Returns the start method called by customers to trigger the OCR flow
|
|
18
|
+
* It first generates two observables by branching off the OCR's internal state variables
|
|
19
|
+
* a) status$
|
|
20
|
+
* Which will cycle on every new status and
|
|
21
|
+
* will interrupt the cycle once the value of status is COMPLETE OR there is a forced interruption
|
|
22
|
+
* b) failedStatus$
|
|
23
|
+
* Which will cycle on every new fail status, ignoring null values, issued when failures are resolved
|
|
24
|
+
* Will be interrupted by any forced interruptions
|
|
25
|
+
*
|
|
26
|
+
* Forced interruptions occur when the function interruptOCR is called by either the customer or internally,
|
|
27
|
+
* when we reach an unrecoverable state. So far the unrecoverable states are
|
|
28
|
+
* - Receiving a status PROVIDER_OFFLINE form backend
|
|
29
|
+
* - File submission fails due to server/network issues
|
|
30
|
+
* - Receiving a status WAITING_OCR_RUN, reattempting automatically and failing with another WAITING_OCR_RUN
|
|
31
|
+
*
|
|
32
|
+
* @param deps dependencies passed from the OCR module
|
|
33
|
+
* @returns { interruptOCR }, where interruptOCR forces the end of the OCR cycles
|
|
34
|
+
*/
|
|
35
|
+
const mkStartMethod = (deps) => () => __awaiter(void 0, void 0, void 0, function* () {
|
|
36
|
+
const { status$, failedStatus$, eventHub, document$, files$, isPreloaded$ } = deps;
|
|
37
|
+
// If flow was interrupted with an error, interrupt observable as well
|
|
38
|
+
const interruptor = new rxjs_1.Subject();
|
|
39
|
+
const interruptOCR = ({ message, payload = null }) => interruptor.error({ message, payload });
|
|
40
|
+
// Loop until Status is COMPLETE, then unsubscribe automatically
|
|
41
|
+
// Repeated statuses do not trigger another cycle, so this assumes IDV always returns either a new status or a status flagging an issue
|
|
42
|
+
const statusUntilComplete$ = status$.observable.pipe((0, rxjs_1.filter)(Boolean), (0, rxjs_1.takeUntil)(interruptor), (0, rxjs_1.takeWhile)(statusIsNotComplete));
|
|
43
|
+
// Ignore null failures (when error is resolved). Run until interrupted
|
|
44
|
+
const failedStatusExceptNull$ = failedStatus$.observable.pipe((0, rxjs_1.filter)(Boolean), (0, rxjs_1.takeUntil)(interruptor));
|
|
45
|
+
const depsWithManualInterrupt = Object.assign(Object.assign({}, deps), { interruptOCR });
|
|
46
|
+
// callback definitions
|
|
47
|
+
const resetState = () => {
|
|
48
|
+
status$.setValue(null);
|
|
49
|
+
failedStatus$.setValue(null);
|
|
50
|
+
document$.setValue(null);
|
|
51
|
+
files$.setValue([]);
|
|
52
|
+
isPreloaded$.setValue(null);
|
|
53
|
+
};
|
|
54
|
+
const subscriber = {
|
|
55
|
+
next: (newStatus) => {
|
|
56
|
+
// For each new status/failureStatus, trigger inputRequired part of the flow
|
|
57
|
+
(0, exports.inputRequired)(newStatus, depsWithManualInterrupt);
|
|
58
|
+
},
|
|
59
|
+
complete: () => {
|
|
60
|
+
// when flow is flagged as completed by the operator takeWhile above
|
|
61
|
+
(0, exports.completeOCR)(depsWithManualInterrupt);
|
|
62
|
+
resetState();
|
|
63
|
+
},
|
|
64
|
+
error: (e) => {
|
|
65
|
+
// when flow is interrupted by calling interruptOCR, which will in turn
|
|
66
|
+
// emit an error internally, trigerring this error callback
|
|
67
|
+
eventHub.emit("error", { message: "While executing OCR callbacks: " + e.message, payload: e.payload });
|
|
68
|
+
resetState();
|
|
69
|
+
},
|
|
70
|
+
};
|
|
71
|
+
// Before starting the OCR flow, analyse the existing documents to
|
|
72
|
+
// either continue a flow, or start a new one
|
|
73
|
+
yield (0, exports.resetCurrentStatus)(depsWithManualInterrupt);
|
|
74
|
+
// register callbacks to each data stream
|
|
75
|
+
// for status
|
|
76
|
+
statusUntilComplete$.subscribe(subscriber);
|
|
77
|
+
// for failed statuses
|
|
78
|
+
failedStatusExceptNull$.subscribe(subscriber.next);
|
|
79
|
+
// expose interruptOCR() to allow interruption of an active flow, which unregister all listeners
|
|
80
|
+
return {
|
|
81
|
+
interruptOCR: () => interruptOCR({
|
|
82
|
+
message: "OCR Flow interrupted externally",
|
|
83
|
+
payload: {
|
|
84
|
+
document: deps.document$.getValue(),
|
|
85
|
+
status: deps.status$.getValue(),
|
|
86
|
+
failedStatus: deps.failedStatus$.getValue(),
|
|
87
|
+
},
|
|
88
|
+
}),
|
|
89
|
+
};
|
|
90
|
+
});
|
|
91
|
+
exports.mkStartMethod = mkStartMethod;
|
|
92
|
+
const statusIsNotComplete = (status) => !(0, OCRClient_1.isCompleteStatus)(status);
|
|
93
|
+
const isOcrPreloaded = (d) => {
|
|
94
|
+
var _a, _b;
|
|
95
|
+
// d.verified.{manual|electronic} can have boolean or null values
|
|
96
|
+
const { manual = null, electronic = null } = (_a = d.verified) !== null && _a !== void 0 ? _a : {};
|
|
97
|
+
if (!((_b = d.ocrResult) === null || _b === void 0 ? void 0 : _b.status))
|
|
98
|
+
return false;
|
|
99
|
+
if (manual === false)
|
|
100
|
+
return false;
|
|
101
|
+
if (electronic === false && manual !== true)
|
|
102
|
+
return false;
|
|
103
|
+
// COMPLETE, WAITING_FRONT, WAITING_BACK, WAITING_OCR_RUN, FAILED
|
|
104
|
+
return true;
|
|
105
|
+
};
|
|
106
|
+
exports.isOcrPreloaded = isOcrPreloaded;
|
|
107
|
+
const resetCurrentStatus = (deps) => __awaiter(void 0, void 0, void 0, function* () {
|
|
108
|
+
/**
|
|
109
|
+
* Resolve the status, the document object and the "isPreloaded" flag before initiating the ocr flow
|
|
110
|
+
* The only statuses that should come out of this function are COMPLETE, WAITING_FRONT and WAITING_BACK
|
|
111
|
+
*
|
|
112
|
+
* 1) Determine if any document already has any valid OCR results
|
|
113
|
+
* 1.a) has ocrResult.status
|
|
114
|
+
* 1.b) has no failed KYC (neither manually or electronically rejected). Here manual verification takes precedence for this decision.
|
|
115
|
+
|
|
116
|
+
*/
|
|
117
|
+
const { individual, document$, status$, isPreloaded$, client, failedStatus$, interruptOCR } = deps;
|
|
118
|
+
const allDocuments = individual.access("documents");
|
|
119
|
+
// helpers
|
|
120
|
+
const isOcrInterrupted = (status) => status === OCRClient_1.Status.WAITING_OCR_RUN;
|
|
121
|
+
const isOcrWaitingOrComplete = (status) => (0, OCRClient_1.isInputRequiredStatus)(status) || (0, OCRClient_1.isCompleteStatus)(status);
|
|
122
|
+
const initialiseWith = (status, document, isPreloaded) => {
|
|
123
|
+
status$.setValue(status);
|
|
124
|
+
failedStatus$.setValue(null);
|
|
125
|
+
document$.setValue(document);
|
|
126
|
+
isPreloaded$.setValue(isPreloaded);
|
|
127
|
+
};
|
|
128
|
+
const startNewFlow = () => initialiseWith(OCRClient_1.Status.WAITING_FRONT, new Document_1.Document(), false);
|
|
129
|
+
// Search for existing document with ocr
|
|
130
|
+
const [latestFoundOcrDocument] = allDocuments
|
|
131
|
+
.getValue()
|
|
132
|
+
.filter(exports.isOcrPreloaded)
|
|
133
|
+
.sort((a, b) => +new Date(a.ocrResult.runDate) - +new Date(b.ocrResult.runDate))
|
|
134
|
+
.reverse();
|
|
135
|
+
// if none found, start a new flow
|
|
136
|
+
if (!latestFoundOcrDocument)
|
|
137
|
+
startNewFlow();
|
|
138
|
+
else if ((0, OCRClient_1.isFailedStatus)(latestFoundOcrDocument.ocrResult.status)) {
|
|
139
|
+
// if failed status, use existing docuemnt with status WAITING_FRONT
|
|
140
|
+
initialiseWith(OCRClient_1.Status.WAITING_FRONT, latestFoundOcrDocument, true);
|
|
141
|
+
}
|
|
142
|
+
else if (isOcrInterrupted(latestFoundOcrDocument.ocrResult.status)) {
|
|
143
|
+
// If latest OCR document was interrupted and has no 'continuable status', attempt to continue it
|
|
144
|
+
const { documentStatus, ocrDocument } = yield client.rerun(latestFoundOcrDocument.documentId);
|
|
145
|
+
// IF results are: WAITING_FRONT, WAITING_BACK, COMPLETE_OCR, use that
|
|
146
|
+
if ((0, OCRClient_1.isInputRequiredStatus)(documentStatus) || (0, OCRClient_1.isCompleteStatus)(documentStatus))
|
|
147
|
+
initialiseWith(documentStatus, ocrDocument, true);
|
|
148
|
+
// IF attempt fails with PROVIDER_OFFLINE, interrupt flow
|
|
149
|
+
else if (documentStatus === OCRClient_1.Status.PROVIDER_OFFLINE)
|
|
150
|
+
interruptOCR({
|
|
151
|
+
message: `Provider is offline. Either switch providers and restart or skip OCR temporarily. Status ${OCRClient_1.Status.PROVIDER_OFFLINE}`,
|
|
152
|
+
payload: null,
|
|
153
|
+
});
|
|
154
|
+
// If attempt fails, start new flow with WAITING_FRONT
|
|
155
|
+
else
|
|
156
|
+
startNewFlow();
|
|
157
|
+
}
|
|
158
|
+
else if (isOcrWaitingOrComplete(latestFoundOcrDocument.ocrResult.status)) {
|
|
159
|
+
// WAITING_FRONT, WAITING_BACK, COMPLETE_OCR
|
|
160
|
+
const storedStatus = latestFoundOcrDocument.ocrResult.status;
|
|
161
|
+
// OUTCOME: WAITING_FRONT, WAITING_BACK, COMPLETE_OCR
|
|
162
|
+
initialiseWith(storedStatus, latestFoundOcrDocument, true);
|
|
163
|
+
// anything else starts a new flow with WAITING_FRONT
|
|
164
|
+
}
|
|
165
|
+
else
|
|
166
|
+
startNewFlow();
|
|
167
|
+
});
|
|
168
|
+
exports.resetCurrentStatus = resetCurrentStatus;
|
|
169
|
+
const completeOCR = (deps) => {
|
|
170
|
+
const { document$, eventHub, individual } = deps;
|
|
171
|
+
const document = document$.getValue();
|
|
172
|
+
individual.updateDocument(document.documentId, document);
|
|
173
|
+
eventHub.emit("results", { document });
|
|
174
|
+
};
|
|
175
|
+
exports.completeOCR = completeOCR;
|
|
176
|
+
const inputRequired = (status, deps) => {
|
|
177
|
+
const { document$, _expectedSide$, eventHub } = deps;
|
|
178
|
+
const document = document$.getValue();
|
|
179
|
+
const idType = document.idType === "OTHER" ? null : document.idType;
|
|
180
|
+
const info = {
|
|
181
|
+
documentType: idType,
|
|
182
|
+
side: _expectedSide$.getValue(),
|
|
183
|
+
};
|
|
184
|
+
const message = "Callback 'submitFile' on event 'input_required' called twice. Second call was ignored";
|
|
185
|
+
const provideFile = (0, exports.mkProvideFile)(deps);
|
|
186
|
+
eventHub.emit("input_required", info, status, runOnce(provideFile, message));
|
|
187
|
+
};
|
|
188
|
+
exports.inputRequired = inputRequired;
|
|
189
|
+
const runOnce = (func, errorMessage) => {
|
|
190
|
+
let wasCalled = false;
|
|
191
|
+
return ((...args) => {
|
|
192
|
+
if (wasCalled)
|
|
193
|
+
throw new Error(errorMessage);
|
|
194
|
+
const result = func(...args);
|
|
195
|
+
wasCalled = true;
|
|
196
|
+
return result;
|
|
197
|
+
});
|
|
198
|
+
};
|
|
199
|
+
const mkProvideFile = (deps) => (file) => {
|
|
200
|
+
const { files$, document$, client } = deps;
|
|
201
|
+
if (!file.type)
|
|
202
|
+
throw new Error("File is missing mime type. Provide a 'type' option in the File constructor");
|
|
203
|
+
if (!file.type.match(/^image/))
|
|
204
|
+
throw new Error("Invalid mime type. Provided files must be of type 'image'");
|
|
205
|
+
const files = files$.getValue();
|
|
206
|
+
files.push(file);
|
|
207
|
+
files$.setValue(files);
|
|
208
|
+
const { documentId } = document$.getValue();
|
|
209
|
+
const evaluateResults = (0, exports.mkEvaluateResults)(deps);
|
|
210
|
+
const submit = documentId
|
|
211
|
+
? () => client.updateOCRDocument(file, documentId)
|
|
212
|
+
: () => client.attachNewOCRDocument(file);
|
|
213
|
+
submit()
|
|
214
|
+
.then(evaluateResults)
|
|
215
|
+
.catch((e) => {
|
|
216
|
+
deps.interruptOCR({ message: "Error submitting file", payload: e });
|
|
217
|
+
});
|
|
218
|
+
};
|
|
219
|
+
exports.mkProvideFile = mkProvideFile;
|
|
220
|
+
const mkEvaluateResults = (deps) => (results, recursionFlag) => {
|
|
221
|
+
const { _expectedSide$, document$, eventHub, status$, client, failedStatus$, interruptOCR } = deps;
|
|
222
|
+
const { documentStatus, ocrDocument } = results;
|
|
223
|
+
// Update local document object first
|
|
224
|
+
const document = ocrDocument.clone();
|
|
225
|
+
document$.setValue(document);
|
|
226
|
+
// if not a failure and not a WAITING_OCR_RUN, emit logs to confirm file upload
|
|
227
|
+
if (!(0, OCRClient_1.isFailedStatus)(documentStatus) && documentStatus !== OCRClient_1.Status.WAITING_OCR_RUN) {
|
|
228
|
+
const expectedSide = _expectedSide$.getValue();
|
|
229
|
+
const expectedScanSide = expectedSide === "front" ? "F" : "B";
|
|
230
|
+
const foundScan = ocrDocument.scans.find((s) => expectedScanSide === s.side);
|
|
231
|
+
if (foundScan) {
|
|
232
|
+
eventHub.emit("file_uploaded", {
|
|
233
|
+
fileName: foundScan.scanName,
|
|
234
|
+
mimeType: foundScan.mimeType,
|
|
235
|
+
scanId: foundScan.scanId,
|
|
236
|
+
statusAfterUpload: documentStatus,
|
|
237
|
+
statusBeforeUpload: status$.getValue(),
|
|
238
|
+
});
|
|
239
|
+
}
|
|
240
|
+
else {
|
|
241
|
+
eventHub.emit("warning", {
|
|
242
|
+
message: `File was uploaded successfully, but there was an issue identifying it within the document payload: document.scans[].side didn't match expected side ${expectedSide} (${expectedScanSide}) `,
|
|
243
|
+
});
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
if (documentStatus === OCRClient_1.Status.PROVIDER_OFFLINE) {
|
|
247
|
+
interruptOCR({
|
|
248
|
+
message: `Provider is offline. Either switch providers and restart or skip OCR temporarily. Status ${OCRClient_1.Status.PROVIDER_OFFLINE}`,
|
|
249
|
+
payload: null,
|
|
250
|
+
});
|
|
251
|
+
}
|
|
252
|
+
else if (documentStatus === OCRClient_1.Status.WAITING_OCR_RUN) {
|
|
253
|
+
// If request previously returned WAITING_OCR_RUN, we tried again and got another WAITING_OCR_RUN,
|
|
254
|
+
// throw error, which will interruptOCR
|
|
255
|
+
if (recursionFlag)
|
|
256
|
+
throw new Error(`Two attempts to get OCR results failed with an unresolved "${OCRClient_1.Status.WAITING_OCR_RUN}". This is a system failure.`);
|
|
257
|
+
// If waiting_ocr_run is returned, try to rerun and reevaluate results
|
|
258
|
+
const evaluateResults = (0, exports.mkEvaluateResults)(deps);
|
|
259
|
+
client
|
|
260
|
+
.rerun(ocrDocument.documentId)
|
|
261
|
+
.then((res) => evaluateResults(res, true))
|
|
262
|
+
.catch((e) => interruptOCR({
|
|
263
|
+
message: `Attempting to resolve the status ${OCRClient_1.Status.WAITING_OCR_RUN} resulted in an error`,
|
|
264
|
+
payload: e,
|
|
265
|
+
}));
|
|
266
|
+
}
|
|
267
|
+
else if ((0, OCRClient_1.isFailedStatus)(documentStatus)) {
|
|
268
|
+
// if failed, set failedStatus and keep status the same
|
|
269
|
+
failedStatus$.setValue(documentStatus);
|
|
270
|
+
}
|
|
271
|
+
else {
|
|
272
|
+
// otherwise, update status to new received status
|
|
273
|
+
failedStatus$.setValue(null);
|
|
274
|
+
status$.setValue(documentStatus);
|
|
275
|
+
}
|
|
276
|
+
};
|
|
277
|
+
exports.mkEvaluateResults = mkEvaluateResults;
|
|
278
|
+
//# sourceMappingURL=start.js.map
|