@frankieone/one-sdk 0.1.0-poc.15 → 0.2.2-alpha
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/README.md +1 -25
- package/dist/commit.txt +1 -0
- package/dist/esm/modules/biometrics/constants.d.ts +2 -0
- package/dist/esm/modules/biometrics/constants.js +2 -0
- package/dist/esm/modules/biometrics/constants.js.map +1 -0
- package/dist/esm/modules/biometrics/index.d.ts +4 -0
- package/dist/esm/modules/biometrics/index.js +71 -0
- package/dist/esm/modules/biometrics/index.js.map +1 -0
- package/dist/esm/modules/biometrics/parseConfiguration.d.ts +4 -0
- package/dist/esm/modules/biometrics/parseConfiguration.js +9 -0
- package/dist/esm/modules/biometrics/parseConfiguration.js.map +1 -0
- package/dist/esm/modules/biometrics/types/events.d.ts +23 -0
- package/dist/esm/modules/biometrics/types/events.js +2 -0
- package/dist/esm/modules/biometrics/types/events.js.map +1 -0
- package/dist/esm/modules/biometrics/types/index.d.ts +3 -0
- package/dist/esm/modules/biometrics/types/index.js +4 -0
- package/dist/esm/modules/biometrics/types/index.js.map +1 -0
- package/dist/esm/modules/biometrics/types/module.d.ts +8 -0
- package/dist/esm/modules/biometrics/types/module.js +2 -0
- package/dist/esm/modules/biometrics/types/module.js.map +1 -0
- package/dist/esm/modules/biometrics/types/wrapper.d.ts +19 -0
- package/dist/esm/modules/biometrics/types/wrapper.js +2 -0
- package/dist/esm/modules/biometrics/types/wrapper.js.map +1 -0
- package/dist/esm/modules/biometrics/wrappers/OcrLabs/index.d.ts +2 -0
- package/dist/esm/modules/biometrics/wrappers/OcrLabs/index.js +221 -0
- package/dist/esm/modules/biometrics/wrappers/OcrLabs/index.js.map +1 -0
- package/dist/esm/modules/biometrics/wrappers/dummy-biometrics/green-tick-svg.d.ts +1 -0
- package/dist/esm/modules/biometrics/wrappers/dummy-biometrics/green-tick-svg.js +2 -0
- package/dist/esm/modules/biometrics/wrappers/dummy-biometrics/green-tick-svg.js.map +1 -0
- package/dist/esm/modules/biometrics/wrappers/dummy-biometrics/index.d.ts +2 -0
- package/dist/esm/modules/biometrics/wrappers/dummy-biometrics/index.js +98 -0
- package/dist/esm/modules/biometrics/wrappers/dummy-biometrics/index.js.map +1 -0
- package/dist/esm/modules/common/constants.d.ts +7 -0
- package/dist/esm/modules/common/constants.js +9 -0
- package/dist/esm/modules/common/constants.js.map +1 -0
- package/dist/esm/modules/common/index.d.ts +10 -0
- package/dist/esm/modules/common/index.js +11 -0
- package/dist/esm/modules/common/index.js.map +1 -0
- package/dist/esm/modules/common/modules/ReactiveStore.d.ts +29 -0
- package/dist/esm/modules/common/modules/ReactiveStore.js +98 -0
- package/dist/esm/modules/common/modules/ReactiveStore.js.map +1 -0
- package/dist/esm/modules/common/modules/UnpersistedModel.d.ts +17 -0
- package/dist/esm/modules/common/modules/UnpersistedModel.js +33 -0
- package/dist/esm/modules/common/modules/UnpersistedModel.js.map +1 -0
- package/dist/{types/utils → esm/modules/common/modules}/base64.d.ts +11 -11
- package/dist/esm/modules/common/modules/base64.js +37 -0
- package/dist/esm/modules/common/modules/base64.js.map +1 -0
- package/dist/esm/modules/common/modules/env2url.d.ts +10 -0
- package/dist/esm/modules/common/modules/env2url.js +33 -0
- package/dist/esm/modules/common/modules/env2url.js.map +1 -0
- package/dist/esm/modules/common/modules/error.d.ts +3 -0
- package/dist/esm/modules/common/modules/error.js +8 -0
- package/dist/esm/modules/common/modules/error.js.map +1 -0
- package/dist/esm/modules/common/modules/eventHub.d.ts +34 -0
- package/dist/esm/modules/common/modules/eventHub.js +22 -0
- package/dist/esm/modules/common/modules/eventHub.js.map +1 -0
- package/dist/esm/modules/common/modules/loadAsyncAsset.d.ts +1 -0
- package/dist/esm/modules/common/modules/loadAsyncAsset.js +9 -0
- package/dist/esm/modules/common/modules/loadAsyncAsset.js.map +1 -0
- package/dist/esm/modules/common/modules/merge.d.ts +1 -0
- package/dist/esm/modules/common/modules/merge.js +2 -0
- package/dist/esm/modules/common/modules/merge.js.map +1 -0
- package/dist/esm/modules/common/modules/objectUtils.d.ts +14 -0
- package/dist/esm/modules/common/modules/objectUtils.js +64 -0
- package/dist/esm/modules/common/modules/objectUtils.js.map +1 -0
- package/dist/esm/modules/common/modules/rxjsOperators.d.ts +1 -0
- package/dist/esm/modules/common/modules/rxjsOperators.js +5 -0
- package/dist/esm/modules/common/modules/rxjsOperators.js.map +1 -0
- package/dist/esm/modules/common/shared/KvpList.d.ts +29 -0
- package/dist/esm/modules/common/shared/KvpList.js +134 -0
- package/dist/esm/modules/common/shared/KvpList.js.map +1 -0
- package/dist/esm/modules/common/shared/data/aus_states.json +10 -0
- package/dist/esm/modules/common/shared/data/country.json +19592 -0
- package/dist/{types → esm/modules/common/shared}/models/Address.d.ts +67 -67
- package/dist/esm/modules/common/shared/models/Address.js +155 -0
- package/dist/esm/modules/common/shared/models/Address.js.map +1 -0
- package/dist/{types → esm/modules/common/shared}/models/Admin.d.ts +1295 -1295
- package/dist/esm/modules/common/shared/models/Admin.js +6 -0
- package/dist/esm/modules/common/shared/models/Admin.js.map +1 -0
- package/dist/esm/modules/common/shared/models/AmlCheckResult.d.ts +77 -0
- package/dist/esm/modules/common/shared/models/AmlCheckResult.js +45 -0
- package/dist/esm/modules/common/shared/models/AmlCheckResult.js.map +1 -0
- package/dist/esm/modules/common/shared/models/AmlMatchDetails.d.ts +37 -0
- package/dist/esm/modules/common/shared/models/AmlMatchDetails.js +19 -0
- package/dist/esm/modules/common/shared/models/AmlMatchDetails.js.map +1 -0
- package/dist/{types → esm/modules/common/shared}/models/Applicant.d.ts +119 -115
- package/dist/esm/modules/common/shared/models/Applicant.js +167 -0
- package/dist/esm/modules/common/shared/models/Applicant.js.map +1 -0
- package/dist/esm/modules/common/shared/models/ApplicantSummary.d.ts +90 -0
- package/dist/esm/modules/common/shared/models/ApplicantSummary.js +52 -0
- package/dist/esm/modules/common/shared/models/ApplicantSummary.js.map +1 -0
- package/dist/esm/modules/common/shared/models/AssociatedParty.d.ts +42 -0
- package/dist/esm/modules/common/shared/models/AssociatedParty.js +39 -0
- package/dist/esm/modules/common/shared/models/AssociatedParty.js.map +1 -0
- package/dist/esm/modules/common/shared/models/AuditEntry.d.ts +81 -0
- package/dist/esm/modules/common/shared/models/AuditEntry.js +106 -0
- package/dist/esm/modules/common/shared/models/AuditEntry.js.map +1 -0
- package/dist/esm/modules/common/shared/models/AuditLogV2.d.ts +57 -0
- package/dist/esm/modules/common/shared/models/AuditLogV2.js +75 -0
- package/dist/esm/modules/common/shared/models/AuditLogV2.js.map +1 -0
- package/dist/esm/modules/common/shared/models/BiometryReport.d.ts +35 -0
- package/dist/esm/modules/common/shared/models/BiometryReport.js +22 -0
- package/dist/esm/modules/common/shared/models/BiometryReport.js.map +1 -0
- package/dist/esm/modules/common/shared/models/BlockListSummary.d.ts +46 -0
- package/dist/esm/modules/common/shared/models/BlockListSummary.js +56 -0
- package/dist/esm/modules/common/shared/models/BlockListSummary.js.map +1 -0
- package/dist/esm/modules/common/shared/models/Blueprint.d.ts +26 -0
- package/dist/esm/modules/common/shared/models/Blueprint.js +2 -0
- package/dist/esm/modules/common/shared/models/Blueprint.js.map +1 -0
- package/dist/esm/modules/common/shared/models/BusinessInfo.d.ts +32 -0
- package/dist/esm/modules/common/shared/models/BusinessInfo.js +66 -0
- package/dist/esm/modules/common/shared/models/BusinessInfo.js.map +1 -0
- package/dist/{types → esm/modules/common/shared}/models/CheckSummary.d.ts +190 -164
- package/dist/esm/modules/common/shared/models/CheckSummary.js +233 -0
- package/dist/esm/modules/common/shared/models/CheckSummary.js.map +1 -0
- package/dist/esm/modules/common/shared/models/Comment.d.ts +19 -0
- package/dist/esm/modules/common/shared/models/Comment.js +19 -0
- package/dist/esm/modules/common/shared/models/Comment.js.map +1 -0
- package/dist/esm/modules/common/shared/models/ConfigurationWrapper.d.ts +15 -0
- package/dist/esm/modules/common/shared/models/ConfigurationWrapper.js +44 -0
- package/dist/esm/modules/common/shared/models/ConfigurationWrapper.js.map +1 -0
- package/dist/{types → esm/modules/common/shared}/models/Core.d.ts +2898 -2725
- package/dist/esm/modules/common/shared/models/Core.js +6 -0
- package/dist/esm/modules/common/shared/models/Core.js.map +1 -0
- package/dist/{types → esm/modules/common/shared}/models/Document.d.ts +124 -112
- package/dist/esm/modules/common/shared/models/Document.js +139 -0
- package/dist/esm/modules/common/shared/models/Document.js.map +1 -0
- package/dist/esm/modules/common/shared/models/Duplicate.d.ts +38 -0
- package/dist/esm/modules/common/shared/models/Duplicate.js +26 -0
- package/dist/esm/modules/common/shared/models/Duplicate.js.map +1 -0
- package/dist/esm/modules/common/shared/models/DynamicUIComponent.d.ts +52 -0
- package/dist/esm/modules/common/shared/models/DynamicUIComponent.js +118 -0
- package/dist/esm/modules/common/shared/models/DynamicUIComponent.js.map +1 -0
- package/dist/esm/modules/common/shared/models/Event.d.ts +16 -0
- package/dist/esm/modules/common/shared/models/Event.js +15 -0
- package/dist/esm/modules/common/shared/models/Event.js.map +1 -0
- package/dist/esm/modules/common/shared/models/EventFactory.d.ts +16 -0
- package/dist/esm/modules/common/shared/models/EventFactory.js +11 -0
- package/dist/esm/modules/common/shared/models/EventFactory.js.map +1 -0
- package/dist/esm/modules/common/shared/models/File.d.ts +24 -0
- package/dist/esm/modules/common/shared/models/File.js +25 -0
- package/dist/esm/modules/common/shared/models/File.js.map +1 -0
- package/dist/esm/modules/common/shared/models/FraudCheckResult.d.ts +10 -0
- package/dist/esm/modules/common/shared/models/FraudCheckResult.js +15 -0
- package/dist/esm/modules/common/shared/models/FraudCheckResult.js.map +1 -0
- package/dist/esm/modules/common/shared/models/FraudMatchDetail.d.ts +48 -0
- package/dist/esm/modules/common/shared/models/FraudMatchDetail.js +41 -0
- package/dist/esm/modules/common/shared/models/FraudMatchDetail.js.map +1 -0
- package/dist/esm/modules/common/shared/models/IChangeStamp.d.ts +11 -0
- package/dist/esm/modules/common/shared/models/IChangeStamp.js +7 -0
- package/dist/esm/modules/common/shared/models/IChangeStamp.js.map +1 -0
- package/dist/esm/modules/common/shared/models/KYCHostedFlow.d.ts +17 -0
- package/dist/esm/modules/common/shared/models/KYCHostedFlow.js +20 -0
- package/dist/esm/modules/common/shared/models/KYCHostedFlow.js.map +1 -0
- package/dist/esm/modules/common/shared/models/KvpList.d.ts +29 -0
- package/dist/esm/modules/common/shared/models/KvpList.js +134 -0
- package/dist/esm/modules/common/shared/models/KvpList.js.map +1 -0
- package/dist/esm/modules/common/shared/models/OCRDocumentDetail.d.ts +49 -0
- package/dist/esm/modules/common/shared/models/OCRDocumentDetail.js +33 -0
- package/dist/esm/modules/common/shared/models/OCRDocumentDetail.js.map +1 -0
- package/dist/esm/modules/common/shared/models/OCRReport.d.ts +20 -0
- package/dist/esm/modules/common/shared/models/OCRReport.js +17 -0
- package/dist/esm/modules/common/shared/models/OCRReport.js.map +1 -0
- package/dist/{types → esm/modules/common/shared}/models/Organisation.d.ts +36 -36
- package/dist/esm/modules/common/shared/models/Organisation.js +51 -0
- package/dist/esm/modules/common/shared/models/Organisation.js.map +1 -0
- package/dist/esm/modules/common/shared/models/OrganizationAnalytics.d.ts +14 -0
- package/dist/esm/modules/common/shared/models/OrganizationAnalytics.js +149 -0
- package/dist/esm/modules/common/shared/models/OrganizationAnalytics.js.map +1 -0
- package/dist/esm/modules/common/shared/models/PortalFeatureConfig.d.ts +79 -0
- package/dist/esm/modules/common/shared/models/PortalFeatureConfig.js +83 -0
- package/dist/esm/modules/common/shared/models/PortalFeatureConfig.js.map +1 -0
- package/dist/{types → esm/modules/common/shared}/models/Profile.d.ts +27 -27
- package/dist/esm/modules/common/shared/models/Profile.js +96 -0
- package/dist/esm/modules/common/shared/models/Profile.js.map +1 -0
- package/dist/esm/modules/common/shared/models/ReportAttributes.d.ts +21 -0
- package/dist/esm/modules/common/shared/models/ReportAttributes.js +18 -0
- package/dist/esm/modules/common/shared/models/ReportAttributes.js.map +1 -0
- package/dist/esm/modules/common/shared/models/RiskIndicator.d.ts +48 -0
- package/dist/esm/modules/common/shared/models/RiskIndicator.js +30 -0
- package/dist/esm/modules/common/shared/models/RiskIndicator.js.map +1 -0
- package/dist/esm/modules/common/shared/models/Session.d.ts +5 -0
- package/dist/esm/modules/common/shared/models/Session.js +2 -0
- package/dist/esm/modules/common/shared/models/Session.js.map +1 -0
- package/dist/{types → esm/modules/common/shared}/models/SupportingDocument.d.ts +96 -95
- package/dist/esm/modules/common/shared/models/SupportingDocument.js +91 -0
- package/dist/esm/modules/common/shared/models/SupportingDocument.js.map +1 -0
- package/dist/esm/modules/common/shared/models/TApplicantIssue.d.ts +12 -0
- package/dist/esm/modules/common/shared/models/TApplicantIssue.js +2 -0
- package/dist/esm/modules/common/shared/models/TApplicantIssue.js.map +1 -0
- package/dist/esm/modules/common/shared/models/TApplicantStatus.d.ts +7 -0
- package/dist/esm/modules/common/shared/models/TApplicantStatus.js +2 -0
- package/dist/esm/modules/common/shared/models/TApplicantStatus.js.map +1 -0
- package/dist/esm/modules/common/shared/models/TKycMethod.d.ts +1 -0
- package/dist/esm/modules/common/shared/models/TKycMethod.js +2 -0
- package/dist/esm/modules/common/shared/models/TKycMethod.js.map +1 -0
- package/dist/esm/modules/common/shared/models/TValidation.d.ts +6 -0
- package/dist/esm/modules/common/shared/models/TValidation.js +2 -0
- package/dist/esm/modules/common/shared/models/TValidation.js.map +1 -0
- package/dist/esm/modules/common/shared/models/TransactionDetails.d.ts +70 -0
- package/dist/esm/modules/common/shared/models/TransactionDetails.js +53 -0
- package/dist/esm/modules/common/shared/models/TransactionDetails.js.map +1 -0
- package/dist/esm/modules/common/shared/models/UBOData.d.ts +485 -0
- package/dist/esm/modules/common/shared/models/UBOData.js +618 -0
- package/dist/esm/modules/common/shared/models/UBOData.js.map +1 -0
- package/dist/esm/modules/common/shared/models/UIBlueprint.d.ts +33 -0
- package/dist/esm/modules/common/shared/models/UIBlueprint.js +164 -0
- package/dist/esm/modules/common/shared/models/UIBlueprint.js.map +1 -0
- package/dist/{types → esm/modules/common/shared}/models/User.d.ts +27 -27
- package/dist/esm/modules/common/shared/models/User.js +2 -0
- package/dist/esm/modules/common/shared/models/User.js.map +1 -0
- package/dist/{types/models/General.d.ts → esm/modules/common/shared/models/api.d.ts} +124 -196
- package/dist/esm/modules/common/shared/models/api.js +2 -0
- package/dist/esm/modules/common/shared/models/api.js.map +1 -0
- package/dist/esm/modules/common/shared/models/general.d.ts +31 -0
- package/dist/esm/modules/common/shared/models/general.js +2 -0
- package/dist/esm/modules/common/shared/models/general.js.map +1 -0
- package/dist/esm/modules/common/shared/transformers/apiAlert.d.ts +4 -0
- package/dist/esm/modules/common/shared/transformers/apiAlert.js +104 -0
- package/dist/esm/modules/common/shared/transformers/apiAlert.js.map +1 -0
- package/dist/esm/modules/common/shared/transformers/apiGetRiskLevel.d.ts +2 -0
- package/dist/esm/modules/common/shared/transformers/apiGetRiskLevel.js +40 -0
- package/dist/esm/modules/common/shared/transformers/apiGetRiskLevel.js.map +1 -0
- package/dist/{types/models → esm/modules/common/shared}/transformers/apiState.d.ts +23 -23
- package/dist/esm/modules/common/shared/transformers/apiState.js +100 -0
- package/dist/esm/modules/common/shared/transformers/apiState.js.map +1 -0
- package/dist/esm/modules/common/shared/transformers/index.d.ts +3 -0
- package/dist/esm/modules/common/shared/transformers/index.js +4 -0
- package/dist/esm/modules/common/shared/transformers/index.js.map +1 -0
- package/dist/{types/models → esm/modules/common/shared}/utils/address.d.ts +2 -2
- package/dist/esm/modules/common/shared/utils/address.js +21 -0
- package/dist/esm/modules/common/shared/utils/address.js.map +1 -0
- package/dist/{types/models → esm/modules/common/shared}/utils/base64.d.ts +11 -11
- package/dist/esm/modules/common/shared/utils/base64.js +37 -0
- package/dist/esm/modules/common/shared/utils/base64.js.map +1 -0
- package/dist/{types/models → esm/modules/common/shared}/utils/buildCycleUtils.d.ts +1 -1
- package/dist/esm/modules/common/shared/utils/buildCycleUtils.js +28 -0
- package/dist/esm/modules/common/shared/utils/buildCycleUtils.js.map +1 -0
- package/dist/{types/models → esm/modules/common/shared}/utils/constants.d.ts +75 -75
- package/dist/esm/modules/common/shared/utils/constants.js +220 -0
- package/dist/esm/modules/common/shared/utils/constants.js.map +1 -0
- package/dist/{types/models → esm/modules/common/shared}/utils/date.d.ts +5 -5
- package/dist/esm/modules/common/shared/utils/date.js +66 -0
- package/dist/esm/modules/common/shared/utils/date.js.map +1 -0
- package/dist/esm/modules/common/shared/utils/dotNotation.d.ts +4 -0
- package/dist/esm/modules/common/shared/utils/dotNotation.js +12 -0
- package/dist/esm/modules/common/shared/utils/dotNotation.js.map +1 -0
- package/dist/{types/models → esm/modules/common/shared}/utils/getCountryDetails.d.ts +9 -9
- package/dist/esm/modules/common/shared/utils/getCountryDetails.js +15 -0
- package/dist/esm/modules/common/shared/utils/getCountryDetails.js.map +1 -0
- package/dist/{types/models → esm/modules/common/shared}/utils/getDocumentDetails.d.ts +8 -8
- package/dist/esm/modules/common/shared/utils/getDocumentDetails.js +6 -0
- package/dist/esm/modules/common/shared/utils/getDocumentDetails.js.map +1 -0
- package/dist/{types/models → esm/modules/common/shared}/utils/helper.d.ts +4 -4
- package/dist/esm/modules/common/shared/utils/helper.js +31 -0
- package/dist/esm/modules/common/shared/utils/helper.js.map +1 -0
- package/dist/esm/modules/common/shared/utils/index.d.ts +11 -0
- package/dist/esm/modules/common/shared/utils/index.js +12 -0
- package/dist/esm/modules/common/shared/utils/index.js.map +1 -0
- package/dist/esm/modules/common/shared/utils/isEmpty.d.ts +5 -0
- package/dist/esm/modules/common/shared/utils/isEmpty.js +23 -0
- package/dist/esm/modules/common/shared/utils/isEmpty.js.map +1 -0
- package/dist/{types/models → esm/modules/common/shared}/utils/sanitiser.d.ts +7 -8
- package/dist/esm/modules/common/shared/utils/sanitiser.js +23 -0
- package/dist/esm/modules/common/shared/utils/sanitiser.js.map +1 -0
- package/dist/esm/modules/common/shared/utils/string.d.ts +1 -0
- package/dist/esm/modules/common/shared/utils/string.js +3 -0
- package/dist/esm/modules/common/shared/utils/string.js.map +1 -0
- package/dist/esm/modules/common/types/Accessors.d.ts +19 -0
- package/dist/esm/modules/common/types/Accessors.js +2 -0
- package/dist/esm/modules/common/types/Accessors.js.map +1 -0
- package/dist/esm/modules/common/types/Configuration.d.ts +23 -0
- package/dist/esm/modules/common/types/Configuration.js +2 -0
- package/dist/esm/modules/common/types/Configuration.js.map +1 -0
- package/dist/esm/modules/common/types/Object.d.ts +3 -0
- package/dist/esm/modules/common/types/Object.js +2 -0
- package/dist/esm/modules/common/types/Object.js.map +1 -0
- package/dist/esm/modules/common/types/Session.d.ts +16 -0
- package/dist/esm/modules/common/types/Session.js +2 -0
- package/dist/esm/modules/common/types/Session.js.map +1 -0
- package/dist/esm/modules/device/constants.d.ts +4 -0
- package/dist/esm/modules/device/constants.js +4 -0
- package/dist/esm/modules/device/constants.js.map +1 -0
- package/dist/esm/modules/device/index.d.ts +4 -0
- package/dist/esm/modules/device/index.js +101 -0
- package/dist/esm/modules/device/index.js.map +1 -0
- package/dist/esm/modules/device/parseConfiguration.d.ts +5 -0
- package/dist/esm/modules/device/parseConfiguration.js +9 -0
- package/dist/esm/modules/device/parseConfiguration.js.map +1 -0
- package/dist/esm/modules/device/types/events.d.ts +31 -0
- package/dist/esm/modules/device/types/events.js +2 -0
- package/dist/esm/modules/device/types/events.js.map +1 -0
- package/dist/esm/modules/device/types/index.d.ts +3 -0
- package/dist/esm/modules/device/types/index.js +4 -0
- package/dist/esm/modules/device/types/index.js.map +1 -0
- package/dist/esm/modules/device/types/module.d.ts +14 -0
- package/dist/esm/modules/device/types/module.js +2 -0
- package/dist/esm/modules/device/types/module.js.map +1 -0
- package/dist/esm/modules/device/types/wrapper.d.ts +32 -0
- package/dist/esm/modules/device/types/wrapper.js +2 -0
- package/dist/esm/modules/device/types/wrapper.js.map +1 -0
- package/dist/esm/modules/device/vendors/Sardine.d.ts +19 -0
- package/dist/esm/modules/device/vendors/Sardine.js +78 -0
- package/dist/esm/modules/device/vendors/Sardine.js.map +1 -0
- package/dist/esm/modules/device/vendors/Threatmetrix/index.d.ts +2 -0
- package/dist/esm/modules/device/vendors/Threatmetrix/index.js +60 -0
- package/dist/esm/modules/device/vendors/Threatmetrix/index.js.map +1 -0
- package/dist/esm/modules/device/vendors/Threatmetrix/nolint_fp-clientlib-v4.d.ts +11 -0
- package/dist/esm/modules/device/vendors/Threatmetrix/nolint_fp-clientlib-v4.js +87 -0
- package/dist/esm/modules/device/vendors/Threatmetrix/nolint_fp-clientlib-v4.js.map +1 -0
- package/dist/esm/modules/frankie-client/ClientsDictionary.d.ts +13 -0
- package/dist/esm/modules/frankie-client/ClientsDictionary.js +2 -0
- package/dist/esm/modules/frankie-client/ClientsDictionary.js.map +1 -0
- package/dist/esm/modules/frankie-client/DummyFrankieApiClient.d.ts +47 -0
- package/dist/esm/modules/frankie-client/DummyFrankieApiClient.js +191 -0
- package/dist/esm/modules/frankie-client/DummyFrankieApiClient.js.map +1 -0
- package/dist/esm/modules/frankie-client/FrankieApiClient.d.ts +32 -0
- package/dist/esm/modules/frankie-client/FrankieApiClient.js +109 -0
- package/dist/esm/modules/frankie-client/FrankieApiClient.js.map +1 -0
- package/dist/esm/modules/frankie-client/clients/ApplicantClient.d.ts +24 -0
- package/dist/esm/modules/frankie-client/clients/ApplicantClient.js +102 -0
- package/dist/esm/modules/frankie-client/clients/ApplicantClient.js.map +1 -0
- package/dist/esm/modules/frankie-client/clients/BaseClient.d.ts +10 -0
- package/dist/esm/modules/frankie-client/clients/BaseClient.js +16 -0
- package/dist/esm/modules/frankie-client/clients/BaseClient.js.map +1 -0
- package/dist/esm/modules/frankie-client/clients/ConfigurationClient.d.ts +10 -0
- package/dist/esm/modules/frankie-client/clients/ConfigurationClient.js +30 -0
- package/dist/esm/modules/frankie-client/clients/ConfigurationClient.js.map +1 -0
- package/dist/esm/modules/frankie-client/clients/IDVClient.d.ts +15 -0
- package/dist/esm/modules/frankie-client/clients/IDVClient.js +21 -0
- package/dist/esm/modules/frankie-client/clients/IDVClient.js.map +1 -0
- package/dist/esm/modules/frankie-client/clients/OCRClient.d.ts +30 -0
- package/dist/esm/modules/frankie-client/clients/OCRClient.js +116 -0
- package/dist/esm/modules/frankie-client/clients/OCRClient.js.map +1 -0
- package/dist/esm/modules/frankie-client/index.d.ts +9 -0
- package/dist/esm/modules/frankie-client/index.js +46 -0
- package/dist/esm/modules/frankie-client/index.js.map +1 -0
- package/dist/esm/modules/frankie-client/mocks/biometrics/idvSubmissoin.d.ts +3 -0
- package/dist/esm/modules/frankie-client/mocks/biometrics/idvSubmissoin.js +25 -0
- package/dist/esm/modules/frankie-client/mocks/biometrics/idvSubmissoin.js.map +1 -0
- package/dist/esm/modules/frankie-client/mocks/index.d.ts +12 -0
- package/dist/esm/modules/frankie-client/mocks/index.js +24 -0
- package/dist/esm/modules/frankie-client/mocks/index.js.map +1 -0
- package/dist/esm/modules/frankie-client/mocks/individual/loadIndividual.d.ts +8 -0
- package/dist/esm/modules/frankie-client/mocks/individual/loadIndividual.js +58 -0
- package/dist/esm/modules/frankie-client/mocks/individual/loadIndividual.js.map +1 -0
- package/dist/esm/modules/frankie-client/mocks/individual/submitData.d.ts +3 -0
- package/dist/esm/modules/frankie-client/mocks/individual/submitData.js +28 -0
- package/dist/esm/modules/frankie-client/mocks/individual/submitData.js.map +1 -0
- package/dist/esm/modules/frankie-client/mocks/initialisation/loadConfiguration.d.ts +2 -0
- package/dist/esm/modules/frankie-client/mocks/initialisation/loadConfiguration.js +22 -0
- package/dist/esm/modules/frankie-client/mocks/initialisation/loadConfiguration.js.map +1 -0
- package/dist/esm/modules/frankie-client/mocks/initialisation/validateToken.d.ts +2 -0
- package/dist/esm/modules/frankie-client/mocks/initialisation/validateToken.js +8 -0
- package/dist/esm/modules/frankie-client/mocks/initialisation/validateToken.js.map +1 -0
- package/dist/esm/modules/frankie-client/mocks/ocr/driversLicence.d.ts +15 -0
- package/dist/esm/modules/frankie-client/mocks/ocr/driversLicence.js +115 -0
- package/dist/esm/modules/frankie-client/mocks/ocr/driversLicence.js.map +1 -0
- package/dist/esm/modules/index.d.ts +19 -0
- package/dist/esm/modules/index.js +16 -0
- package/dist/esm/modules/index.js.map +1 -0
- package/dist/esm/modules/individual/actions/consents.d.ts +4 -0
- package/dist/esm/modules/individual/actions/consents.js +7 -0
- package/dist/esm/modules/individual/actions/consents.js.map +1 -0
- package/dist/esm/modules/individual/actions/documents.d.ts +9 -0
- package/dist/esm/modules/individual/actions/documents.js +21 -0
- package/dist/esm/modules/individual/actions/documents.js.map +1 -0
- package/dist/esm/modules/individual/actions/emitEvents.d.ts +6 -0
- package/dist/esm/modules/individual/actions/emitEvents.js +7 -0
- package/dist/esm/modules/individual/actions/emitEvents.js.map +1 -0
- package/dist/esm/modules/individual/actions/search.d.ts +17 -0
- package/dist/esm/modules/individual/actions/search.js +51 -0
- package/dist/esm/modules/individual/actions/search.js.map +1 -0
- package/dist/esm/modules/individual/actions/submit.d.ts +15 -0
- package/dist/esm/modules/individual/actions/submit.js +37 -0
- package/dist/esm/modules/individual/actions/submit.js.map +1 -0
- package/dist/esm/modules/individual/index.d.ts +2 -0
- package/dist/esm/modules/individual/index.js +74 -0
- package/dist/esm/modules/individual/index.js.map +1 -0
- package/dist/esm/modules/individual/types/events.d.ts +7 -0
- package/dist/esm/modules/individual/types/events.js +2 -0
- package/dist/esm/modules/individual/types/events.js.map +1 -0
- package/dist/esm/modules/individual/types/index.d.ts +2 -0
- package/dist/esm/modules/individual/types/index.js +3 -0
- package/dist/esm/modules/individual/types/index.js.map +1 -0
- package/dist/esm/modules/individual/types/module.d.ts +31 -0
- package/dist/esm/modules/individual/types/module.js +2 -0
- package/dist/esm/modules/individual/types/module.js.map +1 -0
- package/dist/esm/modules/ocr/actions/start.d.ts +51 -0
- package/dist/esm/modules/ocr/actions/start.js +268 -0
- package/dist/esm/modules/ocr/actions/start.js.map +1 -0
- package/dist/esm/modules/ocr/index.d.ts +12 -0
- package/dist/esm/modules/ocr/index.js +61 -0
- package/dist/esm/modules/ocr/index.js.map +1 -0
- package/dist/esm/modules/ocr/types/events.d.ts +21 -0
- package/dist/esm/modules/ocr/types/events.js +2 -0
- package/dist/esm/modules/ocr/types/events.js.map +1 -0
- package/dist/esm/modules/ocr/types/index.d.ts +2 -0
- package/dist/esm/modules/ocr/types/index.js +3 -0
- package/dist/esm/modules/ocr/types/index.js.map +1 -0
- package/dist/esm/modules/ocr/types/module.d.ts +26 -0
- package/dist/esm/modules/ocr/types/module.js +2 -0
- package/dist/esm/modules/ocr/types/module.js.map +1 -0
- package/dist/esm/modules/sdk/ComponentLoader.d.ts +18 -0
- package/dist/esm/modules/sdk/ComponentLoader.js +67 -0
- package/dist/esm/modules/sdk/ComponentLoader.js.map +1 -0
- package/dist/esm/modules/sdk/index.d.ts +3 -0
- package/dist/esm/modules/sdk/index.js +30 -0
- package/dist/esm/modules/sdk/index.js.map +1 -0
- package/dist/esm/modules/sdk/parseConfiguration.d.ts +3 -0
- package/dist/esm/modules/sdk/parseConfiguration.js +91 -0
- package/dist/esm/modules/sdk/parseConfiguration.js.map +1 -0
- package/dist/esm/modules/sdk/types/components.d.ts +25 -0
- package/dist/esm/modules/sdk/types/components.js +2 -0
- package/dist/esm/modules/sdk/types/components.js.map +1 -0
- package/dist/esm/modules/sdk/types/configuration.d.ts +76 -0
- package/dist/esm/modules/sdk/types/configuration.js +38 -0
- package/dist/esm/modules/sdk/types/configuration.js.map +1 -0
- package/dist/esm/modules/sdk/types/events.d.ts +5 -0
- package/dist/esm/modules/sdk/types/events.js +2 -0
- package/dist/esm/modules/sdk/types/events.js.map +1 -0
- package/dist/esm/modules/sdk/types/index.d.ts +4 -0
- package/dist/esm/modules/sdk/types/index.js +5 -0
- package/dist/esm/modules/sdk/types/index.js.map +1 -0
- package/dist/esm/modules/sdk/types/module.d.ts +16 -0
- package/dist/esm/modules/sdk/types/module.js +2 -0
- package/dist/esm/modules/sdk/types/module.js.map +1 -0
- package/dist/esm/types/Utilities.d.ts +7 -0
- package/dist/esm/types/Utilities.js +2 -0
- package/dist/esm/types/Utilities.js.map +1 -0
- package/dist/esm/types/index.d.ts +1 -0
- package/dist/esm/types/index.js +2 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/release.txt +1 -0
- package/dist/umd/727.js +3 -0
- package/dist/umd/727.js.LICENSE.txt +377 -0
- package/dist/umd/727.js.map +1 -0
- package/dist/umd/biometrics-dummy.js +2 -0
- package/dist/umd/biometrics-dummy.js.map +1 -0
- package/dist/umd/biometrics-ocrlabs.js +2 -0
- package/dist/umd/biometrics-ocrlabs.js.map +1 -0
- package/dist/umd/device-sardine.js +2 -0
- package/dist/umd/device-sardine.js.map +1 -0
- package/dist/umd/device-threatmetrix.js +2 -0
- package/dist/umd/device-threatmetrix.js.map +1 -0
- package/dist/umd/oneSdk.umd.js +3 -0
- package/dist/umd/oneSdk.umd.js.LICENSE.txt +21 -0
- package/dist/umd/oneSdk.umd.js.map +1 -0
- package/package.json +103 -53
- package/dist/index.esm.js +0 -2
- package/dist/index.esm.js.map +0 -1
- package/dist/index.umd.js +0 -2
- package/dist/index.umd.js.map +0 -1
- package/dist/types/api/ExternalIdvClient.d.ts +0 -19
- package/dist/types/api/FrankieApiClient.d.ts +0 -54
- package/dist/types/api/index.d.ts +0 -1
- package/dist/types/facades/POC/reactComponent.d.ts +0 -644
- package/dist/types/facades/POC/routing.d.ts +0 -3
- package/dist/types/facades/POC/viewWrapper.d.ts +0 -4
- package/dist/types/facades/POC/webEntry.d.ts +0 -6
- package/dist/types/index.d.ts +0 -11
- package/dist/types/models/ConfigurationReader.d.ts +0 -7
- package/dist/types/models/index.d.ts +0 -14
- package/dist/types/models/utils/index.d.ts +0 -11
- package/dist/types/models/utils/isEmpty.d.ts +0 -5
- package/dist/types/modules/router/ReactDictionaryRouter.d.ts +0 -15
- package/dist/types/modules/router/common/routing.d.ts +0 -25
- package/dist/types/modules/store/ReactInMemoryStore.d.ts +0 -24
- package/dist/types/uiComponents/reactWeb.d.ts +0 -8
- package/dist/types/utils/env2Url.d.ts +0 -1
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import { Document } from "../../common/shared/models/Document";
|
|
11
|
+
import { isCompleteStatus, isFailedStatus, isInputRequiredStatus, Status, } from "../../frankie-client/clients/OCRClient";
|
|
12
|
+
import { filter, Subject, takeUntil, takeWhile } from "rxjs";
|
|
13
|
+
/**
|
|
14
|
+
* Returns the start method called by customers to trigger the OCR flow
|
|
15
|
+
* It first generates two observables by branching off the OCR's internal state variables
|
|
16
|
+
* a) status$
|
|
17
|
+
* Which will cycle on every new status and
|
|
18
|
+
* will interrupt the cycle once the value of status is COMPLETE OR there is a forced interruption
|
|
19
|
+
* b) failedStatus$
|
|
20
|
+
* Which will cycle on every new fail status, ignoring null values, issued when failures are resolved
|
|
21
|
+
* Will be interrupted by any forced interruptions
|
|
22
|
+
*
|
|
23
|
+
* Forced interruptions occur when the function interruptOCR is called by either the customer or internally,
|
|
24
|
+
* when we reach an unrecoverable state. So far the unrecoverable states are
|
|
25
|
+
* - Receiving a status PROVIDER_OFFLINE form backend
|
|
26
|
+
* - File submission fails due to server/network issues
|
|
27
|
+
* - Receiving a status WAITING_OCR_RUN, reattempting automatically and failing with another WAITING_OCR_RUN
|
|
28
|
+
*
|
|
29
|
+
* @param deps dependencies passed from the OCR module
|
|
30
|
+
* @returns { interruptOCR }, where interruptOCR forces the end of the OCR cycles
|
|
31
|
+
*/
|
|
32
|
+
export const mkStartMethod = (deps) => () => __awaiter(void 0, void 0, void 0, function* () {
|
|
33
|
+
const { status$, failedStatus$, eventHub, document$, files$, isPreloaded$ } = deps;
|
|
34
|
+
// If flow was interrupted with an error, interrupt observable as well
|
|
35
|
+
const interruptor = new Subject();
|
|
36
|
+
const interruptOCR = ({ message, payload = null }) => interruptor.error({ message, payload });
|
|
37
|
+
// Loop until Status is COMPLETE, then unsubscribe automatically
|
|
38
|
+
// Repeated statuses do not trigger another cycle, so this assumes IDV always returns either a new status or a status flagging an issue
|
|
39
|
+
const statusUntilComplete$ = status$.observable.pipe(filter(Boolean), takeUntil(interruptor), takeWhile(statusIsNotComplete));
|
|
40
|
+
// Ignore null failures (when error is resolved). Run until interrupted
|
|
41
|
+
const failedStatusExceptNull$ = failedStatus$.observable.pipe(filter(Boolean), takeUntil(interruptor));
|
|
42
|
+
const depsWithManualInterrupt = Object.assign(Object.assign({}, deps), { interruptOCR });
|
|
43
|
+
// callback definitions
|
|
44
|
+
const resetState = () => {
|
|
45
|
+
status$.setValue(null);
|
|
46
|
+
failedStatus$.setValue(null);
|
|
47
|
+
document$.setValue(null);
|
|
48
|
+
files$.setValue([]);
|
|
49
|
+
isPreloaded$.setValue(null);
|
|
50
|
+
};
|
|
51
|
+
const subscriber = {
|
|
52
|
+
next: (newStatus) => {
|
|
53
|
+
// For each new status/failureStatus, trigger inputRequired part of the flow
|
|
54
|
+
inputRequired(newStatus, depsWithManualInterrupt);
|
|
55
|
+
},
|
|
56
|
+
complete: () => {
|
|
57
|
+
// when flow is flagged as completed by the operator takeWhile above
|
|
58
|
+
completeOCR(depsWithManualInterrupt);
|
|
59
|
+
resetState();
|
|
60
|
+
},
|
|
61
|
+
error: (e) => {
|
|
62
|
+
// when flow is interrupted by calling interruptOCR, which will in turn
|
|
63
|
+
// emit an error internally, trigerring this error callback
|
|
64
|
+
eventHub.emit("error", { message: "Error while executing OCR callbacks", payload: e });
|
|
65
|
+
resetState();
|
|
66
|
+
},
|
|
67
|
+
};
|
|
68
|
+
// Before starting the OCR flow, analyse the existing documents to
|
|
69
|
+
// either continue a flow, or start a new one
|
|
70
|
+
yield resetCurrentStatus(depsWithManualInterrupt);
|
|
71
|
+
// register callbacks to each data stream
|
|
72
|
+
// for status
|
|
73
|
+
statusUntilComplete$.subscribe(subscriber);
|
|
74
|
+
// for failed statuses
|
|
75
|
+
failedStatusExceptNull$.subscribe(subscriber.next);
|
|
76
|
+
// expose interruptOCR() to allow interruption of an active flow, which unregister all listeners
|
|
77
|
+
return {
|
|
78
|
+
interruptOCR: () => interruptOCR({
|
|
79
|
+
message: "OCR Flow interrupted externally",
|
|
80
|
+
payload: {
|
|
81
|
+
document: deps.document$.getValue(),
|
|
82
|
+
status: deps.status$.getValue(),
|
|
83
|
+
failedStatus: deps.failedStatus$.getValue(),
|
|
84
|
+
},
|
|
85
|
+
}),
|
|
86
|
+
};
|
|
87
|
+
});
|
|
88
|
+
const statusIsNotComplete = (status) => !isCompleteStatus(status);
|
|
89
|
+
export const resetCurrentStatus = (deps) => __awaiter(void 0, void 0, void 0, function* () {
|
|
90
|
+
/**
|
|
91
|
+
* Resolve the status, the document object and the "isPreloaded" flag before initiating the ocr flow
|
|
92
|
+
* The only statuses that should come out of this function are COMPLETE, WAITING_FRONT and WAITING_BACK
|
|
93
|
+
*
|
|
94
|
+
* 1) Determine if any document already has any valid OCR results
|
|
95
|
+
* 1.a) has ocrResult.status
|
|
96
|
+
* 1.b) has no failed KYC (neither manually or electronically rejected). Here manual verification takes precedence for this decision.
|
|
97
|
+
|
|
98
|
+
*/
|
|
99
|
+
const { individual, document$, status$, isPreloaded$, client, failedStatus$, interruptOCR } = deps;
|
|
100
|
+
const allDocuments = individual.access("documents");
|
|
101
|
+
const isOcrPreloaded = (d) => {
|
|
102
|
+
var _a, _b;
|
|
103
|
+
// d.verified.{manual|electronic} can have boolean or null values
|
|
104
|
+
const { manual = null, electronic = null } = (_a = d.verified) !== null && _a !== void 0 ? _a : {};
|
|
105
|
+
if (!((_b = d.ocrResult) === null || _b === void 0 ? void 0 : _b.status))
|
|
106
|
+
return false;
|
|
107
|
+
if (manual === false)
|
|
108
|
+
return false;
|
|
109
|
+
if (electronic === false && manual !== true)
|
|
110
|
+
return false;
|
|
111
|
+
// COMPLETE, WAITING_FRONT, WAITING_BACK, WAITING_OCR_RUN, FAILED
|
|
112
|
+
return true;
|
|
113
|
+
};
|
|
114
|
+
// helpers
|
|
115
|
+
const isOcrInterrupted = (status) => status === Status.WAITING_OCR_RUN;
|
|
116
|
+
const isOcrWaitingOrComplete = (status) => isInputRequiredStatus(status) || isCompleteStatus(status);
|
|
117
|
+
const initialiseWith = (status, document, isPreloaded) => {
|
|
118
|
+
status$.setValue(status);
|
|
119
|
+
failedStatus$.setValue(null);
|
|
120
|
+
document$.setValue(document);
|
|
121
|
+
isPreloaded$.setValue(isPreloaded);
|
|
122
|
+
};
|
|
123
|
+
const startNewFlow = () => initialiseWith(Status.WAITING_FRONT, new Document(), false);
|
|
124
|
+
// Search for existing document with ocr
|
|
125
|
+
const [latestFoundOcrDocument] = allDocuments
|
|
126
|
+
.getValue()
|
|
127
|
+
.filter(isOcrPreloaded)
|
|
128
|
+
.sort((a, b) => +new Date(a.ocrResult.runDate) - +new Date(b.ocrResult.runDate))
|
|
129
|
+
.reverse();
|
|
130
|
+
// if none found, start a new flow
|
|
131
|
+
if (!latestFoundOcrDocument)
|
|
132
|
+
startNewFlow();
|
|
133
|
+
else if (isFailedStatus(latestFoundOcrDocument.ocrResult.status)) {
|
|
134
|
+
// if failed status, use existing docuemnt with status WAITING_FRONT
|
|
135
|
+
initialiseWith(Status.WAITING_FRONT, latestFoundOcrDocument, true);
|
|
136
|
+
}
|
|
137
|
+
else if (isOcrInterrupted(latestFoundOcrDocument.ocrResult.status)) {
|
|
138
|
+
// If latest OCR document was interrupted and has no 'continuable status', attempt to continue it
|
|
139
|
+
const { documentStatus, ocrDocument } = yield client.rerun(latestFoundOcrDocument.documentId);
|
|
140
|
+
// IF results are: WAITING_FRONT, WAITING_BACK, COMPLETE_OCR, use that
|
|
141
|
+
if (isInputRequiredStatus(documentStatus) || isCompleteStatus(documentStatus))
|
|
142
|
+
initialiseWith(documentStatus, ocrDocument, true);
|
|
143
|
+
// IF attempt fails with PROVIDER_OFFLINE, interrupt flow
|
|
144
|
+
else if (documentStatus === Status.PROVIDER_OFFLINE)
|
|
145
|
+
interruptOCR({
|
|
146
|
+
message: `Provider is offline. Either switch providers and restart or skip OCR temporarily. Status ${Status.PROVIDER_OFFLINE}`,
|
|
147
|
+
payload: null,
|
|
148
|
+
});
|
|
149
|
+
// If attempt fails, start new flow with WAITING_FRONT
|
|
150
|
+
else
|
|
151
|
+
startNewFlow();
|
|
152
|
+
}
|
|
153
|
+
else if (isOcrWaitingOrComplete(latestFoundOcrDocument.ocrResult.status)) {
|
|
154
|
+
// WAITING_FRONT, WAITING_BACK, COMPLETE_OCR
|
|
155
|
+
const storedStatus = latestFoundOcrDocument.ocrResult.status;
|
|
156
|
+
// OUTCOME: WAITING_FRONT, WAITING_BACK, COMPLETE_OCR
|
|
157
|
+
initialiseWith(storedStatus, latestFoundOcrDocument, true);
|
|
158
|
+
// anything else starts a new flow with WAITING_FRONT
|
|
159
|
+
}
|
|
160
|
+
else
|
|
161
|
+
startNewFlow();
|
|
162
|
+
});
|
|
163
|
+
export const completeOCR = (deps) => {
|
|
164
|
+
const { document$, eventHub, individual } = deps;
|
|
165
|
+
const document = document$.getValue();
|
|
166
|
+
individual.updateDocument(document.documentId, document);
|
|
167
|
+
eventHub.emit("results", { document });
|
|
168
|
+
};
|
|
169
|
+
export const inputRequired = (status, deps) => {
|
|
170
|
+
const { document$, _expectedSide$, eventHub } = deps;
|
|
171
|
+
const document = document$.getValue();
|
|
172
|
+
const idType = document.idType === "OTHER" ? null : document.idType;
|
|
173
|
+
const info = {
|
|
174
|
+
documentType: idType,
|
|
175
|
+
side: _expectedSide$.getValue(),
|
|
176
|
+
};
|
|
177
|
+
const message = "Callback 'submitFile' on event 'input_required' called twice. Second call was ignored";
|
|
178
|
+
const provideFile = mkProvideFile(deps);
|
|
179
|
+
eventHub.emit("input_required", info, status, runOnce(provideFile, message));
|
|
180
|
+
};
|
|
181
|
+
const runOnce = (func, errorMessage) => {
|
|
182
|
+
let wasCalled = false;
|
|
183
|
+
return ((...args) => {
|
|
184
|
+
if (wasCalled)
|
|
185
|
+
throw new Error(errorMessage);
|
|
186
|
+
const result = func(...args);
|
|
187
|
+
wasCalled = true;
|
|
188
|
+
return result;
|
|
189
|
+
});
|
|
190
|
+
};
|
|
191
|
+
export const mkProvideFile = (deps) => (file) => {
|
|
192
|
+
const { files$, document$, client } = deps;
|
|
193
|
+
if (!file.type)
|
|
194
|
+
throw new Error("File is missing mime type. Provide a 'type' option in the File constructor");
|
|
195
|
+
if (!file.type.match(/^image/))
|
|
196
|
+
throw new Error("Invalid mime type. Provided files must be of type 'image'");
|
|
197
|
+
const files = files$.getValue();
|
|
198
|
+
files.push(file);
|
|
199
|
+
files$.setValue(files);
|
|
200
|
+
const { documentId } = document$.getValue();
|
|
201
|
+
const evaluateResults = mkEvaluateResults(deps);
|
|
202
|
+
const submit = documentId
|
|
203
|
+
? () => client.updateOCRDocument(file, documentId)
|
|
204
|
+
: () => client.attachNewOCRDocument(file);
|
|
205
|
+
submit()
|
|
206
|
+
.then(evaluateResults)
|
|
207
|
+
.catch((e) => {
|
|
208
|
+
deps.interruptOCR({ message: "Error submitting file", payload: e });
|
|
209
|
+
});
|
|
210
|
+
};
|
|
211
|
+
export const mkEvaluateResults = (deps) => (results, recursionFlag) => {
|
|
212
|
+
const { _expectedSide$, document$, eventHub, status$, client, failedStatus$, interruptOCR } = deps;
|
|
213
|
+
const { documentStatus, ocrDocument } = results;
|
|
214
|
+
// Update local document object first
|
|
215
|
+
const document = ocrDocument.clone();
|
|
216
|
+
document$.setValue(document);
|
|
217
|
+
// if not a failure and not a WAITING_OCR_RUN, emit logs to confirm file upload
|
|
218
|
+
if (!isFailedStatus(documentStatus) && documentStatus !== Status.WAITING_OCR_RUN) {
|
|
219
|
+
const expectedSide = _expectedSide$.getValue();
|
|
220
|
+
const expectedScanSide = expectedSide === "front" ? "F" : "B";
|
|
221
|
+
const foundScan = ocrDocument.scans.find((s) => expectedScanSide === s.side);
|
|
222
|
+
if (foundScan) {
|
|
223
|
+
eventHub.emit("file_uploaded", {
|
|
224
|
+
fileName: foundScan.scanName,
|
|
225
|
+
mimeType: foundScan.mimeType,
|
|
226
|
+
scanId: foundScan.scanId,
|
|
227
|
+
statusAfterUpload: documentStatus,
|
|
228
|
+
statusBeforeUpload: status$.getValue(),
|
|
229
|
+
});
|
|
230
|
+
}
|
|
231
|
+
else {
|
|
232
|
+
eventHub.emit("warning", {
|
|
233
|
+
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}) `,
|
|
234
|
+
});
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
if (documentStatus === Status.PROVIDER_OFFLINE) {
|
|
238
|
+
interruptOCR({
|
|
239
|
+
message: `Provider is offline. Either switch providers and restart or skip OCR temporarily. Status ${Status.PROVIDER_OFFLINE}`,
|
|
240
|
+
payload: null,
|
|
241
|
+
});
|
|
242
|
+
}
|
|
243
|
+
else if (documentStatus === Status.WAITING_OCR_RUN) {
|
|
244
|
+
// If request previously returned WAITING_OCR_RUN, we tried again and got another WAITING_OCR_RUN,
|
|
245
|
+
// throw error, which will interruptOCR
|
|
246
|
+
if (recursionFlag)
|
|
247
|
+
throw new Error(`Two attempts to get OCR results failed with an unresolved "${Status.WAITING_OCR_RUN}". This is a system failure.`);
|
|
248
|
+
// If waiting_ocr_run is returned, try to rerun and reevaluate results
|
|
249
|
+
const evaluateResults = mkEvaluateResults(deps);
|
|
250
|
+
client
|
|
251
|
+
.rerun(ocrDocument.documentId)
|
|
252
|
+
.then((res) => evaluateResults(res, true))
|
|
253
|
+
.catch((e) => interruptOCR({
|
|
254
|
+
message: `Attempting to resolve the status ${Status.WAITING_OCR_RUN} resulted in an error`,
|
|
255
|
+
payload: e,
|
|
256
|
+
}));
|
|
257
|
+
}
|
|
258
|
+
else if (isFailedStatus(documentStatus)) {
|
|
259
|
+
// if failed, set failedStatus and keep status the same
|
|
260
|
+
failedStatus$.setValue(documentStatus);
|
|
261
|
+
}
|
|
262
|
+
else {
|
|
263
|
+
// otherwise, update status to new received status
|
|
264
|
+
failedStatus$.setValue(null);
|
|
265
|
+
status$.setValue(documentStatus);
|
|
266
|
+
}
|
|
267
|
+
};
|
|
268
|
+
//# sourceMappingURL=start.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../../../../modules/ocr/actions/start.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ReactiveStore } from "../common";
|
|
2
|
+
import { Status } from "../frankie-client/clients/OCRClient";
|
|
3
|
+
import { OcrModule, State } from "./types";
|
|
4
|
+
export declare const ocrModule: OcrModule;
|
|
5
|
+
export declare function initialiseLocalState(state$: ReactiveStore<State>): {
|
|
6
|
+
status$: import("../common").Accessors<Status.COMPLETE | import("../frankie-client/clients/OCRClient").InputRequiredStatus, Status.COMPLETE | import("../frankie-client/clients/OCRClient").InputRequiredStatus>;
|
|
7
|
+
failedStatus$: import("../common").Accessors<import("../frankie-client/clients/OCRClient").FailedStatus, import("../frankie-client/clients/OCRClient").FailedStatus>;
|
|
8
|
+
document$: import("../common").Accessors<import("../common/shared/models/Document").Document, import("../common/shared/models/Document").Document>;
|
|
9
|
+
files$: import("../common").Accessors<File[], File[]>;
|
|
10
|
+
isPreloaded$: import("../common").Accessors<boolean, boolean>;
|
|
11
|
+
_expectedSide$: import("../common").ReadonlyAccessors<"front" | "back">;
|
|
12
|
+
};
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { mkEventHub, mkEventListener, ReactiveStore } from "../common";
|
|
2
|
+
import { isInputRequiredStatus, OCRClient, Status } from "../frankie-client/clients/OCRClient";
|
|
3
|
+
import { mkStartMethod } from "./actions/start";
|
|
4
|
+
export const ocrModule = {
|
|
5
|
+
initialise(options) {
|
|
6
|
+
const { frankieClient, oneSdkInstance } = options;
|
|
7
|
+
const client = new OCRClient(frankieClient);
|
|
8
|
+
const eventHub = mkEventHub();
|
|
9
|
+
const { _expectedSide$, document$, failedStatus$, files$, isPreloaded$, status$ } = initialiseLocalState(new ReactiveStore({
|
|
10
|
+
document: null,
|
|
11
|
+
status: null,
|
|
12
|
+
failedStatus: null,
|
|
13
|
+
files: [],
|
|
14
|
+
isPreloaded: null,
|
|
15
|
+
}));
|
|
16
|
+
const publicAccessors = {
|
|
17
|
+
status: status$.toReadonly(),
|
|
18
|
+
failedStatus: failedStatus$.toReadonly(),
|
|
19
|
+
isPreloaded: isPreloaded$.toReadonly(),
|
|
20
|
+
};
|
|
21
|
+
const start = mkStartMethod({
|
|
22
|
+
_expectedSide$,
|
|
23
|
+
client,
|
|
24
|
+
document$,
|
|
25
|
+
eventHub,
|
|
26
|
+
files$,
|
|
27
|
+
individual: oneSdkInstance.individual(),
|
|
28
|
+
status$,
|
|
29
|
+
isPreloaded$,
|
|
30
|
+
failedStatus$,
|
|
31
|
+
});
|
|
32
|
+
return Object.assign(Object.assign({}, mkEventListener(eventHub)), { start, isPreloaded: () => isPreloaded$.getValue(), access: (fieldName) => publicAccessors[fieldName], statuses: Object.freeze(Status) });
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
export function initialiseLocalState(state$) {
|
|
36
|
+
const status$ = state$.getRootAccessors("status");
|
|
37
|
+
const failedStatus$ = state$.getRootAccessors("failedStatus");
|
|
38
|
+
const document$ = state$.getRootAccessors("document");
|
|
39
|
+
const files$ = state$.getRootAccessors("files");
|
|
40
|
+
const isPreloaded$ = state$.getRootAccessors("isPreloaded");
|
|
41
|
+
const _expectedSide$ = ReactiveStore.mkComputedAccessors(status$, {
|
|
42
|
+
transformer: (status) => {
|
|
43
|
+
if (isInputRequiredStatus(status)) {
|
|
44
|
+
return status === Status.WAITING_FRONT ? "front" : "back";
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
propertyName: "expectedSide",
|
|
51
|
+
});
|
|
52
|
+
return {
|
|
53
|
+
status$,
|
|
54
|
+
failedStatus$,
|
|
55
|
+
document$,
|
|
56
|
+
files$,
|
|
57
|
+
isPreloaded$,
|
|
58
|
+
_expectedSide$,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../modules/ocr/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,0CAA0C,CAAC;AACpG,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAIhD,MAAM,CAAC,MAAM,SAAS,GAAc;IAClC,UAAU,CAAC,OAAO;QAChB,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;QAClD,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,aAAa,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,UAAU,EAAU,CAAC;QAEtC,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,oBAAoB,CACtG,IAAI,aAAa,CAAQ;YACvB,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,IAAI;YACZ,YAAY,EAAE,IAAI;YAClB,KAAK,EAAE,EAAE;YACT,WAAW,EAAE,IAAI;SAClB,CAAC,CACH,CAAC;QAEF,MAAM,eAAe,GAAG;YACtB,MAAM,EAAE,OAAO,CAAC,UAAU,EAAE;YAC5B,YAAY,EAAE,aAAa,CAAC,UAAU,EAAE;YACxC,WAAW,EAAE,YAAY,CAAC,UAAU,EAAE;SACvC,CAAC;QAEF,MAAM,KAAK,GAAG,aAAa,CAAC;YAC1B,cAAc;YACd,MAAM;YACN,SAAS;YACT,QAAQ;YACR,MAAM;YACN,UAAU,EAAE,cAAc,CAAC,UAAU,EAAE;YACvC,OAAO;YACP,YAAY;YACZ,aAAa;SACd,CAAC,CAAC;QACH,uCACK,eAAe,CAAC,QAAQ,CAAC,KAC5B,KAAK,EACL,WAAW,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,EAC1C,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,CAAC,EACjD,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAC/B;IACJ,CAAC;CACF,CAAC;AAEF,MAAM,UAAU,oBAAoB,CAAC,MAA4B;IAC/D,MAAM,OAAO,GAAG,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAClD,MAAM,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;IAC9D,MAAM,SAAS,GAAG,MAAM,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,YAAY,GAAG,MAAM,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAE5D,MAAM,cAAc,GAAG,aAAa,CAAC,mBAAmB,CAAC,OAAO,EAAE;QAChE,WAAW,EAAE,CAAC,MAAM,EAAE,EAAE;YACtB,IAAI,qBAAqB,CAAC,MAAM,CAAC,EAAE;gBACjC,OAAO,MAAM,KAAK,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;aAC3D;iBAAM;gBACL,OAAO,IAAI,CAAC;aACb;QACH,CAAC;QACD,YAAY,EAAE,cAAc;KAC7B,CAAC,CAAC;IACH,OAAO;QACL,OAAO;QACP,aAAa;QACb,SAAS;QACT,MAAM;QACN,YAAY;QACZ,cAAc;KACf,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Document } from "../../common/shared/models/Document";
|
|
2
|
+
import { Status } from "../../frankie-client/clients/OCRClient";
|
|
3
|
+
export declare type Events = {
|
|
4
|
+
input_required: [Info, Status, ProvideFile];
|
|
5
|
+
results: [{
|
|
6
|
+
document: Document;
|
|
7
|
+
}];
|
|
8
|
+
file_uploaded: [FileUploadedMeta];
|
|
9
|
+
};
|
|
10
|
+
export declare type FileUploadedMeta = {
|
|
11
|
+
fileName: string;
|
|
12
|
+
mimeType: string;
|
|
13
|
+
scanId: string;
|
|
14
|
+
statusAfterUpload: Status;
|
|
15
|
+
statusBeforeUpload: Status;
|
|
16
|
+
};
|
|
17
|
+
export declare type Info = {
|
|
18
|
+
documentType: Document["idType"];
|
|
19
|
+
side: "front" | "back";
|
|
20
|
+
};
|
|
21
|
+
export declare type ProvideFile = (blob: File) => void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../../../modules/ocr/types/events.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../modules/ocr/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { FailedStatus, InputRequiredStatus, Status } from "../../frankie-client/clients/OCRClient";
|
|
2
|
+
import { BaseModuleOptions, ModuleContext } from "../../sdk/types";
|
|
3
|
+
import { Document } from "../../common/shared/models/Document";
|
|
4
|
+
import { AccessFunction, AccessorsDictionary } from "../../common/types/Accessors";
|
|
5
|
+
import { Events } from "./events";
|
|
6
|
+
export interface OcrModule {
|
|
7
|
+
initialise: (o: BaseModuleOptions) => OcrModuleContext;
|
|
8
|
+
}
|
|
9
|
+
export declare type OcrModuleContext = ModuleContext<{
|
|
10
|
+
start(): void;
|
|
11
|
+
access: AccessFunction<PublicAccessors>;
|
|
12
|
+
isPreloaded: () => boolean;
|
|
13
|
+
statuses: Readonly<typeof Status>;
|
|
14
|
+
}, Events>;
|
|
15
|
+
export declare type PublicFields = {
|
|
16
|
+
readonly status: Status;
|
|
17
|
+
readonly isPreloaded: boolean;
|
|
18
|
+
};
|
|
19
|
+
export declare type PublicAccessors = AccessorsDictionary<PublicFields>;
|
|
20
|
+
export declare type State = {
|
|
21
|
+
document: Document;
|
|
22
|
+
status: InputRequiredStatus | Status.COMPLETE;
|
|
23
|
+
failedStatus: FailedStatus;
|
|
24
|
+
files: File[];
|
|
25
|
+
isPreloaded: boolean;
|
|
26
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module.js","sourceRoot":"","sources":["../../../../../modules/ocr/types/module.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { OneSdkContext, SharedState } from "./types";
|
|
2
|
+
/**
|
|
3
|
+
* This factory will generate another function which will
|
|
4
|
+
* 1) load a public module by module name, defined in the dictionary PublicModules;
|
|
5
|
+
* 2) initialise it, which generates a context object, aka an "instance" of the module
|
|
6
|
+
* 3) tag that instance with an "instance name", which essentially is what we call a "component".
|
|
7
|
+
*
|
|
8
|
+
* This returned function will take as parameters a) a module name and b) an options object with extra module configuration options.
|
|
9
|
+
* That options object will be once again merged with the existing loaded options from the OneSdk initialisation. This allows the configuration to be overriden if necessary.
|
|
10
|
+
* For example, we might want to use real services for some modules, but mocked services for other modules.
|
|
11
|
+
* In summary, the final configuration going into a module is a merge from
|
|
12
|
+
* 1) Config API (already merged in rootOptions)
|
|
13
|
+
* 2) Passed Root Config (already merged in rootOptions)
|
|
14
|
+
* 3) Passed Module Config (from this function parameters)
|
|
15
|
+
* @param sharedState All options provided to OneSdk merged with resulting sharedState object
|
|
16
|
+
* @returns A function to load OneSdk modules
|
|
17
|
+
*/
|
|
18
|
+
export declare const mkComponentLoader: (sharedState: SharedState) => OneSdkContext["component"];
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { merge, PublicModules } from "../common";
|
|
2
|
+
/**
|
|
3
|
+
* This factory will generate another function which will
|
|
4
|
+
* 1) load a public module by module name, defined in the dictionary PublicModules;
|
|
5
|
+
* 2) initialise it, which generates a context object, aka an "instance" of the module
|
|
6
|
+
* 3) tag that instance with an "instance name", which essentially is what we call a "component".
|
|
7
|
+
*
|
|
8
|
+
* This returned function will take as parameters a) a module name and b) an options object with extra module configuration options.
|
|
9
|
+
* That options object will be once again merged with the existing loaded options from the OneSdk initialisation. This allows the configuration to be overriden if necessary.
|
|
10
|
+
* For example, we might want to use real services for some modules, but mocked services for other modules.
|
|
11
|
+
* In summary, the final configuration going into a module is a merge from
|
|
12
|
+
* 1) Config API (already merged in rootOptions)
|
|
13
|
+
* 2) Passed Root Config (already merged in rootOptions)
|
|
14
|
+
* 3) Passed Module Config (from this function parameters)
|
|
15
|
+
* @param sharedState All options provided to OneSdk merged with resulting sharedState object
|
|
16
|
+
* @returns A function to load OneSdk modules
|
|
17
|
+
*/
|
|
18
|
+
export const mkComponentLoader = (sharedState) => {
|
|
19
|
+
const { retrieveInstance, storeInstance, instancesDictionary } = mkInstanceDictionary();
|
|
20
|
+
const componentMethod = (...parameters) => {
|
|
21
|
+
const [which, options] = parameters;
|
|
22
|
+
// Use instance name to simply load an existing instance or to generate a new one and store it under that name
|
|
23
|
+
// instance name defaults to the module name itself
|
|
24
|
+
const { instanceName = which } = options !== null && options !== void 0 ? options : {};
|
|
25
|
+
// if instance already exists, return it
|
|
26
|
+
const instance = retrieveInstance(which, instanceName);
|
|
27
|
+
if (instance)
|
|
28
|
+
return instance;
|
|
29
|
+
else {
|
|
30
|
+
// otherwise, resolve new configuration and initialise and return new instance
|
|
31
|
+
const mergedOptions = merge({}, sharedState, options, { instanceName });
|
|
32
|
+
sharedState.globalEventHub.emit("resolved_module_config", mergedOptions);
|
|
33
|
+
const module = PublicModules[which];
|
|
34
|
+
const moduleContext = module.initialise(mergedOptions);
|
|
35
|
+
const instance = injectInstanceName(moduleContext, instanceName);
|
|
36
|
+
storeInstance(which, instanceName, instance);
|
|
37
|
+
return instance;
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
// the "defineProperty" below exposes the instances object and allows for easier testing
|
|
41
|
+
return Object.defineProperty(componentMethod, "instances", {
|
|
42
|
+
value: instancesDictionary,
|
|
43
|
+
enumerable: false,
|
|
44
|
+
writable: false,
|
|
45
|
+
});
|
|
46
|
+
};
|
|
47
|
+
const injectInstanceName = (m, instanceName) => {
|
|
48
|
+
return Object.defineProperty(m, "instanceName", {
|
|
49
|
+
value: instanceName,
|
|
50
|
+
enumerable: true,
|
|
51
|
+
writable: false,
|
|
52
|
+
});
|
|
53
|
+
};
|
|
54
|
+
function mkInstanceDictionary() {
|
|
55
|
+
const instancesDictionary = {};
|
|
56
|
+
const storeInstance = (moduleName, instanceName, instance) => {
|
|
57
|
+
var _a;
|
|
58
|
+
instancesDictionary[moduleName] = (_a = instancesDictionary[moduleName]) !== null && _a !== void 0 ? _a : {};
|
|
59
|
+
instancesDictionary[moduleName][instanceName] = instance; // TODO: fix this silliness
|
|
60
|
+
};
|
|
61
|
+
const retrieveInstance = (moduleName, instanceName) => {
|
|
62
|
+
var _a, _b;
|
|
63
|
+
return (_b = (_a = instancesDictionary === null || instancesDictionary === void 0 ? void 0 : instancesDictionary[moduleName]) === null || _a === void 0 ? void 0 : _a[instanceName]) !== null && _b !== void 0 ? _b : null;
|
|
64
|
+
};
|
|
65
|
+
return { storeInstance, retrieveInstance, instancesDictionary };
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=ComponentLoader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComponentLoader.js","sourceRoot":"","sources":["../../../../modules/sdk/ComponentLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAe,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAanE;;;;;;;;;;;;;;;GAeG;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,WAAwB,EAA8B,EAAE;IACxF,MAAM,EAAE,gBAAgB,EAAE,aAAa,EAAE,mBAAmB,EAAE,GAAG,oBAAoB,EAAE,CAAC;IAExF,MAAM,eAAe,GAAsB,CACzC,GAAG,UAAmD,EACrB,EAAE;QACnC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,UAAU,CAAC;QACpC,8GAA8G;QAC9G,mDAAmD;QACnD,MAAM,EAAE,YAAY,GAAG,KAAK,EAAE,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC;QAE/C,wCAAwC;QACxC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,EAAE,YAAY,CAA2C,CAAC;QACjG,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;aACzB;YACH,8EAA8E;YAC9E,MAAM,aAAa,GAAG,KAAK,CAAC,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;YACxE,WAAW,CAAC,cAAc,CAAC,IAAI,CAAC,wBAAwB,EAAE,aAAa,CAAC,CAAC;YACzE,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAW,CAAC;YAC9C,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC,aAAa,CAAoB,CAAC;YAE1E,MAAM,QAAQ,GAAG,kBAAkB,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;YACjE,aAAa,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;YAC7C,OAAO,QAA2C,CAAC;SACpD;IACH,CAAC,CAAC;IACF,wFAAwF;IACxF,OAAO,MAAM,CAAC,cAAc,CAAC,eAAe,EAAE,WAAW,EAAE;QACzD,KAAK,EAAE,mBAAqD;QAC5D,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,KAAK;KAChB,CAA+B,CAAC;AACnC,CAAC,CAAC;AACF,MAAM,kBAAkB,GAAG,CACzB,CAAU,EACV,YAA0B,EAC1B,EAAE;IACF,OAAO,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,cAAc,EAAE;QAC9C,KAAK,EAAE,YAAY;QACnB,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,KAAK;KAChB,CAA6C,CAAC;AACjD,CAAC,CAAC;AAEF,SAAS,oBAAoB;IAC3B,MAAM,mBAAmB,GAAyB,EAAE,CAAC;IACrD,MAAM,aAAa,GAAG,CACpB,UAAgB,EAChB,YAA0B,EAC1B,QAAyC,EACzC,EAAE;;QACF,mBAAmB,CAAC,UAAU,CAAC,GAAG,MAAA,mBAAmB,CAAC,UAAU,CAAC,mCAAI,EAAE,CAAC;QACxE,mBAAmB,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,GAAG,QAAoD,CAAC,CAAC,2BAA2B;IACnI,CAAC,CAAC;IACF,MAAM,gBAAgB,GAAG,CACvB,UAAgB,EAChB,YAA0B,EAC1B,EAAE;;QACF,OAAO,MAAC,MAAA,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,CAAG,UAAU,CAAC,0CAAG,YAAY,CAAqC,mCAAI,IAAI,CAAC;IACxG,CAAC,CAAC;IAEF,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,CAAC;AAClE,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import { individualModule } from "../individual";
|
|
11
|
+
import { mkEventListener } from "../common";
|
|
12
|
+
import { mkComponentLoader } from "./ComponentLoader";
|
|
13
|
+
import { parseConfiguration } from "./parseConfiguration";
|
|
14
|
+
export const oneSdk = {
|
|
15
|
+
initialise: function (oneSdkOptions) {
|
|
16
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
17
|
+
const sharedState = yield parseConfiguration(oneSdkOptions);
|
|
18
|
+
const { globalEventHub } = sharedState;
|
|
19
|
+
const sdk = Object.assign(Object.assign({}, mkEventListener(globalEventHub)), { individual: () => individual, component: null });
|
|
20
|
+
const baseModuleOptions = Object.assign(Object.assign({}, sharedState), { oneSdkInstance: sdk });
|
|
21
|
+
// Make individual module
|
|
22
|
+
const individual = individualModule.initialise(Object.assign(Object.assign({}, baseModuleOptions), { instanceName: "individual" }));
|
|
23
|
+
// Make component factory
|
|
24
|
+
sdk.component = mkComponentLoader(baseModuleOptions);
|
|
25
|
+
// resolve onesdk once
|
|
26
|
+
return new Promise((resolve) => individual.on("data_loaded", () => resolve(sdk)));
|
|
27
|
+
});
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../modules/sdk/index.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAI1D,MAAM,CAAC,MAAM,MAAM,GAAiB;IAClC,UAAU,EAAE,UAAgB,aAAa;;YACvC,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAAC,aAAa,CAAC,CAAC;YAC5D,MAAM,EAAE,cAAc,EAAE,GAAG,WAAW,CAAC;YAEvC,MAAM,GAAG,mCAEJ,eAAe,CAAC,cAAc,CAAC,KAClC,UAAU,EAAE,GAAG,EAAE,CAAC,UAAU,EAC5B,SAAS,EAAE,IAAI,GAChB,CAAC;YACF,MAAM,iBAAiB,mCAAqB,WAAW,KAAE,cAAc,EAAE,GAAG,GAAE,CAAC;YAC/E,yBAAyB;YACzB,MAAM,UAAU,GAAG,gBAAgB,CAAC,UAAU,iCACzC,iBAAiB,KACpB,YAAY,EAAE,YAAY,IAC1B,CAAC;YACH,yBAAyB;YACzB,GAAG,CAAC,SAAS,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;YAErD,sBAAsB;YACtB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACpF,CAAC;KAAA;CACF,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { OneSdkRootParameters, RecipeParsed, SharedState } from "./types";
|
|
2
|
+
export declare function parseConfiguration(oneSdkOptions: OneSdkRootParameters): Promise<Omit<SharedState, "oneSdkInstance">>;
|
|
3
|
+
export declare function resolveRecipeValue(recipe: OneSdkRootParameters["recipe"]): RecipeParsed;
|