react-native-unit-components 1.13.0 → 1.14.0
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/android/src/main/java/com/unitreactnativecomponents/UnitAddToWalletButtonViewManager.kt +1 -0
- package/android/src/main/java/com/unitreactnativecomponents/UnitReactNativeComponentsPackage.kt +9 -1
- package/android/src/main/java/com/unitreactnativecomponents/extensions/ContextExtensions.kt +2 -0
- package/android/src/main/java/com/unitreactnativecomponents/secureView/UNSecureViewManager.kt +19 -0
- package/android/src/main/java/com/unitreactnativecomponents/security/UNSecurityHelper.kt +37 -0
- package/android/src/main/java/com/unitreactnativecomponents/unSnapshotProtectionManager/UNSnapshotProtectionManager.kt +42 -0
- package/ios/UNSecurity/UNSecurityHelper.swift +90 -0
- package/ios/UNSecurity/UNSecurityHelperExportModule.m +7 -0
- package/ios/UNSharedServicesProvider/UNAppStateService.swift +38 -0
- package/ios/UNSharedServicesProvider/UNGlobalSnapshotProtectionService.swift +93 -0
- package/ios/UNSharedServicesProvider/UNPresentationService.swift +37 -0
- package/ios/UNSharedServicesProvider/UNSharedServicesProviderManager.swift +45 -0
- package/ios/UNSnapshotProtectionManager/UNSnapshotProtectionManager.swift +20 -0
- package/ios/UNSnapshotProtectionManager/UNSnapshotProtectionManagerExportModule.m +5 -0
- package/ios/UnitReactNativeComponents.xcodeproj/project.pbxproj +16 -0
- package/lib/commonjs/components/UNACHCreditComponent/UNACHCreditComponent.js +22 -21
- package/lib/commonjs/components/UNACHCreditComponent/UNACHCreditComponent.js.map +1 -1
- package/lib/commonjs/components/UNACHDebitComponent/UNACHDebitComponent.js +22 -21
- package/lib/commonjs/components/UNACHDebitComponent/UNACHDebitComponent.js.map +1 -1
- package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.js +4 -3
- package/lib/commonjs/components/UNAccountComponent/UNAccountComponent.js.map +1 -1
- package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.js +19 -20
- package/lib/commonjs/components/UNActivityComponent/UNActivityComponent.js.map +1 -1
- package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.js +24 -21
- package/lib/commonjs/components/UNBookPaymentComponent/UNBookPaymentComponent.js.map +1 -1
- package/lib/commonjs/components/UNBottomSheetComponent/UNBottomSheetComponent.js.map +1 -1
- package/lib/commonjs/components/UNCardComponent/UNCardComponent.js +4 -3
- package/lib/commonjs/components/UNCardComponent/UNCardComponent.js.map +1 -1
- package/lib/commonjs/components/UNCheckDepositComponent/UNCheckDepositComponent.js +18 -19
- package/lib/commonjs/components/UNCheckDepositComponent/UNCheckDepositComponent.js.map +1 -1
- package/lib/commonjs/components/UNFundAccountPaymentComponent/UNFundAccountPaymentComponent.js +7 -1
- package/lib/commonjs/components/UNFundAccountPaymentComponent/UNFundAccountPaymentComponent.js.map +1 -1
- package/lib/commonjs/components/UNMultipleCardsComponent/UNMultipleCardsComponent.js +19 -20
- package/lib/commonjs/components/UNMultipleCardsComponent/UNMultipleCardsComponent.js.map +1 -1
- package/lib/commonjs/components/UNNextRepaymentComponent/UNNextRepaymentComponent.js +4 -3
- package/lib/commonjs/components/UNNextRepaymentComponent/UNNextRepaymentComponent.js.map +1 -1
- package/lib/commonjs/components/UNPayeeManagementComponent/UNPayeeManagementComponent.js +7 -2
- package/lib/commonjs/components/UNPayeeManagementComponent/UNPayeeManagementComponent.js.map +1 -1
- package/lib/commonjs/components/UNProgramDetailsComponent/UNProgramDetailsComponent.js +4 -3
- package/lib/commonjs/components/UNProgramDetailsComponent/UNProgramDetailsComponent.js.map +1 -1
- package/lib/commonjs/components/UNWhiteLabelAppComponent/UNWhiteLabelAppComponent.js +7 -2
- package/lib/commonjs/components/UNWhiteLabelAppComponent/UNWhiteLabelAppComponent.js.map +1 -1
- package/lib/commonjs/components/UNWirePaymentComponent/UNWirePaymentComponent.js +91 -0
- package/lib/commonjs/components/UNWirePaymentComponent/UNWirePaymentComponent.js.map +1 -0
- package/lib/commonjs/components/UNWirePaymentComponent/UNWirePaymentComponent.utils.js +29 -0
- package/lib/commonjs/components/UNWirePaymentComponent/UNWirePaymentComponent.utils.js.map +1 -0
- package/lib/commonjs/components/UNWirePaymentComponent/index.js +21 -0
- package/lib/commonjs/components/UNWirePaymentComponent/index.js.map +1 -0
- package/lib/commonjs/components/index.js +11 -0
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/commonjs/helpers/BottomSheet/BottomSheet.js +2 -1
- package/lib/commonjs/helpers/BottomSheet/BottomSheet.js.map +1 -1
- package/lib/commonjs/hooks/useIsJailbrokeDevice.js +22 -0
- package/lib/commonjs/hooks/useIsJailbrokeDevice.js.map +1 -0
- package/lib/commonjs/hooks/useSnapshotProtection.js +31 -0
- package/lib/commonjs/hooks/useSnapshotProtection.js.map +1 -0
- package/lib/commonjs/nativeComponents/UNAddToWallet/UNAddToWalletComponent/UNAddToWalletComponent.js +6 -1
- package/lib/commonjs/nativeComponents/UNAddToWallet/UNAddToWalletComponent/UNAddToWalletComponent.js.map +1 -1
- package/lib/commonjs/nativeComponents/UNBaseView/UNBaseView.js +39 -0
- package/lib/commonjs/nativeComponents/UNBaseView/UNBaseView.js.map +1 -0
- package/lib/commonjs/nativeComponents/UNBaseView/index.js +14 -0
- package/lib/commonjs/nativeComponents/UNBaseView/index.js.map +1 -0
- package/lib/commonjs/nativeModulesHelpers/UNSanpshotProtectionHelper/UNSnapshotProtectionHelper.js +26 -0
- package/lib/commonjs/nativeModulesHelpers/UNSanpshotProtectionHelper/UNSnapshotProtectionHelper.js.map +1 -0
- package/lib/commonjs/nativeModulesHelpers/UNSecurityHelper.js +39 -0
- package/lib/commonjs/nativeModulesHelpers/UNSecurityHelper.js.map +1 -0
- package/lib/commonjs/networking/common/UNNetworkConstants.js +2 -1
- package/lib/commonjs/networking/common/UNNetworkConstants.js.map +1 -1
- package/lib/commonjs/types/internal/webComponent.types.js +1 -0
- package/lib/commonjs/types/internal/webComponent.types.js.map +1 -1
- package/lib/commonjs/types/shared/env.types.js +1 -0
- package/lib/commonjs/types/shared/env.types.js.map +1 -1
- package/lib/commonjs/types/shared/index.js +11 -0
- package/lib/commonjs/types/shared/index.js.map +1 -1
- package/lib/commonjs/types/shared/payments.types.js +1 -0
- package/lib/commonjs/types/shared/payments.types.js.map +1 -1
- package/lib/commonjs/types/shared/securitySettings.js +12 -0
- package/lib/commonjs/types/shared/securitySettings.js.map +1 -0
- package/lib/commonjs/types/shared/wirePayment.types.js +6 -0
- package/lib/commonjs/types/shared/wirePayment.types.js.map +1 -0
- package/lib/commonjs/unitSdkManager/UnitSdk.constants.js +6 -1
- package/lib/commonjs/unitSdkManager/UnitSdk.constants.js.map +1 -1
- package/lib/commonjs/unitSdkManager/UnitSdkManager.js +22 -5
- package/lib/commonjs/unitSdkManager/UnitSdkManager.js.map +1 -1
- package/lib/commonjs/unitSdkManager/UnitSdkManager.utils.internal.js +2 -0
- package/lib/commonjs/unitSdkManager/UnitSdkManager.utils.internal.js.map +1 -1
- package/lib/commonjs/utils/onLoadMessages.utils.js +10 -0
- package/lib/commonjs/utils/onLoadMessages.utils.js.map +1 -0
- package/lib/module/components/UNACHCreditComponent/UNACHCreditComponent.js +23 -22
- package/lib/module/components/UNACHCreditComponent/UNACHCreditComponent.js.map +1 -1
- package/lib/module/components/UNACHDebitComponent/UNACHDebitComponent.js +23 -22
- package/lib/module/components/UNACHDebitComponent/UNACHDebitComponent.js.map +1 -1
- package/lib/module/components/UNAccountComponent/UNAccountComponent.js +4 -3
- package/lib/module/components/UNAccountComponent/UNAccountComponent.js.map +1 -1
- package/lib/module/components/UNActivityComponent/UNActivityComponent.js +20 -21
- package/lib/module/components/UNActivityComponent/UNActivityComponent.js.map +1 -1
- package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.js +24 -21
- package/lib/module/components/UNBookPaymentComponent/UNBookPaymentComponent.js.map +1 -1
- package/lib/module/components/UNBottomSheetComponent/UNBottomSheetComponent.js.map +1 -1
- package/lib/module/components/UNCardComponent/UNCardComponent.js +4 -3
- package/lib/module/components/UNCardComponent/UNCardComponent.js.map +1 -1
- package/lib/module/components/UNCheckDepositComponent/UNCheckDepositComponent.js +19 -20
- package/lib/module/components/UNCheckDepositComponent/UNCheckDepositComponent.js.map +1 -1
- package/lib/module/components/UNFundAccountPaymentComponent/UNFundAccountPaymentComponent.js +7 -1
- package/lib/module/components/UNFundAccountPaymentComponent/UNFundAccountPaymentComponent.js.map +1 -1
- package/lib/module/components/UNMultipleCardsComponent/UNMultipleCardsComponent.js +20 -21
- package/lib/module/components/UNMultipleCardsComponent/UNMultipleCardsComponent.js.map +1 -1
- package/lib/module/components/UNNextRepaymentComponent/UNNextRepaymentComponent.js +4 -3
- package/lib/module/components/UNNextRepaymentComponent/UNNextRepaymentComponent.js.map +1 -1
- package/lib/module/components/UNPayeeManagementComponent/UNPayeeManagementComponent.js +7 -2
- package/lib/module/components/UNPayeeManagementComponent/UNPayeeManagementComponent.js.map +1 -1
- package/lib/module/components/UNProgramDetailsComponent/UNProgramDetailsComponent.js +4 -3
- package/lib/module/components/UNProgramDetailsComponent/UNProgramDetailsComponent.js.map +1 -1
- package/lib/module/components/UNWhiteLabelAppComponent/UNWhiteLabelAppComponent.js +7 -2
- package/lib/module/components/UNWhiteLabelAppComponent/UNWhiteLabelAppComponent.js.map +1 -1
- package/lib/module/components/UNWirePaymentComponent/UNWirePaymentComponent.js +83 -0
- package/lib/module/components/UNWirePaymentComponent/UNWirePaymentComponent.js.map +1 -0
- package/lib/module/components/UNWirePaymentComponent/UNWirePaymentComponent.utils.js +21 -0
- package/lib/module/components/UNWirePaymentComponent/UNWirePaymentComponent.utils.js.map +1 -0
- package/lib/module/components/UNWirePaymentComponent/index.js +2 -0
- package/lib/module/components/UNWirePaymentComponent/index.js.map +1 -0
- package/lib/module/components/index.js +1 -0
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/helpers/BottomSheet/BottomSheet.js +2 -1
- package/lib/module/helpers/BottomSheet/BottomSheet.js.map +1 -1
- package/lib/module/hooks/useIsJailbrokeDevice.js +14 -0
- package/lib/module/hooks/useIsJailbrokeDevice.js.map +1 -0
- package/lib/module/hooks/useSnapshotProtection.js +23 -0
- package/lib/module/hooks/useSnapshotProtection.js.map +1 -0
- package/lib/module/nativeComponents/UNAddToWallet/UNAddToWalletComponent/UNAddToWalletComponent.js +6 -1
- package/lib/module/nativeComponents/UNAddToWallet/UNAddToWalletComponent/UNAddToWalletComponent.js.map +1 -1
- package/lib/module/nativeComponents/UNBaseView/UNBaseView.js +31 -0
- package/lib/module/nativeComponents/UNBaseView/UNBaseView.js.map +1 -0
- package/lib/module/nativeComponents/UNBaseView/index.js +2 -0
- package/lib/module/nativeComponents/UNBaseView/index.js.map +1 -0
- package/lib/module/nativeModulesHelpers/UNSanpshotProtectionHelper/UNSnapshotProtectionHelper.js +20 -0
- package/lib/module/nativeModulesHelpers/UNSanpshotProtectionHelper/UNSnapshotProtectionHelper.js.map +1 -0
- package/lib/module/nativeModulesHelpers/UNSecurityHelper.js +33 -0
- package/lib/module/nativeModulesHelpers/UNSecurityHelper.js.map +1 -0
- package/lib/module/networking/common/UNNetworkConstants.js +2 -1
- package/lib/module/networking/common/UNNetworkConstants.js.map +1 -1
- package/lib/module/types/internal/webComponent.types.js +1 -0
- package/lib/module/types/internal/webComponent.types.js.map +1 -1
- package/lib/module/types/shared/env.types.js +1 -0
- package/lib/module/types/shared/env.types.js.map +1 -1
- package/lib/module/types/shared/index.js +1 -0
- package/lib/module/types/shared/index.js.map +1 -1
- package/lib/module/types/shared/payments.types.js +1 -0
- package/lib/module/types/shared/payments.types.js.map +1 -1
- package/lib/module/types/shared/securitySettings.js +6 -0
- package/lib/module/types/shared/securitySettings.js.map +1 -0
- package/lib/module/types/shared/wirePayment.types.js +2 -0
- package/lib/module/types/shared/wirePayment.types.js.map +1 -0
- package/lib/module/unitSdkManager/UnitSdk.constants.js +6 -1
- package/lib/module/unitSdkManager/UnitSdk.constants.js.map +1 -1
- package/lib/module/unitSdkManager/UnitSdkManager.js +22 -5
- package/lib/module/unitSdkManager/UnitSdkManager.js.map +1 -1
- package/lib/module/unitSdkManager/UnitSdkManager.utils.internal.js +2 -0
- package/lib/module/unitSdkManager/UnitSdkManager.utils.internal.js.map +1 -1
- package/lib/module/utils/onLoadMessages.utils.js +4 -0
- package/lib/module/utils/onLoadMessages.utils.js.map +1 -0
- package/lib/typescript/src/components/UNACHCreditComponent/UNACHCreditComponent.d.ts.map +1 -1
- package/lib/typescript/src/components/UNACHDebitComponent/UNACHDebitComponent.d.ts.map +1 -1
- package/lib/typescript/src/components/UNAccountComponent/UNAccountComponent.d.ts.map +1 -1
- package/lib/typescript/src/components/UNActivityComponent/UNActivityComponent.d.ts.map +1 -1
- package/lib/typescript/src/components/UNBookPaymentComponent/UNBookPaymentComponent.d.ts +1 -1
- package/lib/typescript/src/components/UNBookPaymentComponent/UNBookPaymentComponent.d.ts.map +1 -1
- package/lib/typescript/src/components/UNBottomSheetComponent/UNBottomSheetComponent.d.ts.map +1 -1
- package/lib/typescript/src/components/UNCardComponent/UNCardComponent.d.ts.map +1 -1
- package/lib/typescript/src/components/UNCheckDepositComponent/UNCheckDepositComponent.d.ts.map +1 -1
- package/lib/typescript/src/components/UNFundAccountPaymentComponent/UNFundAccountPaymentComponent.d.ts.map +1 -1
- package/lib/typescript/src/components/UNMultipleCardsComponent/UNMultipleCardsComponent.d.ts.map +1 -1
- package/lib/typescript/src/components/UNNextRepaymentComponent/UNNextRepaymentComponent.d.ts.map +1 -1
- package/lib/typescript/src/components/UNPayeeManagementComponent/UNPayeeManagementComponent.d.ts.map +1 -1
- package/lib/typescript/src/components/UNProgramDetailsComponent/UNProgramDetailsComponent.d.ts.map +1 -1
- package/lib/typescript/src/components/UNWhiteLabelAppComponent/UNWhiteLabelAppComponent.d.ts.map +1 -1
- package/lib/typescript/src/components/UNWirePaymentComponent/UNWirePaymentComponent.d.ts +20 -0
- package/lib/typescript/src/components/UNWirePaymentComponent/UNWirePaymentComponent.d.ts.map +1 -0
- package/lib/typescript/src/components/UNWirePaymentComponent/UNWirePaymentComponent.utils.d.ts +4 -0
- package/lib/typescript/src/components/UNWirePaymentComponent/UNWirePaymentComponent.utils.d.ts.map +1 -0
- package/lib/typescript/src/components/UNWirePaymentComponent/index.d.ts +2 -0
- package/lib/typescript/src/components/UNWirePaymentComponent/index.d.ts.map +1 -0
- package/lib/typescript/src/components/index.d.ts +1 -0
- package/lib/typescript/src/components/index.d.ts.map +1 -1
- package/lib/typescript/src/helpers/BottomSheet/BottomSheet.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useIsJailbrokeDevice.d.ts +2 -0
- package/lib/typescript/src/hooks/useIsJailbrokeDevice.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useSnapshotProtection.d.ts +2 -0
- package/lib/typescript/src/hooks/useSnapshotProtection.d.ts.map +1 -0
- package/lib/typescript/src/messages/webMessages/onLoadMessage.d.ts +1 -1
- package/lib/typescript/src/messages/webMessages/onLoadMessage.d.ts.map +1 -1
- package/lib/typescript/src/nativeComponents/UNAddToWallet/UNAddToWalletComponent/UNAddToWalletComponent.d.ts.map +1 -1
- package/lib/typescript/src/nativeComponents/UNBaseView/UNBaseView.d.ts +11 -0
- package/lib/typescript/src/nativeComponents/UNBaseView/UNBaseView.d.ts.map +1 -0
- package/lib/typescript/src/nativeComponents/UNBaseView/index.d.ts +2 -0
- package/lib/typescript/src/nativeComponents/UNBaseView/index.d.ts.map +1 -0
- package/lib/typescript/src/nativeModulesHelpers/UNSanpshotProtectionHelper/UNSnapshotProtectionHelper.d.ts +6 -0
- package/lib/typescript/src/nativeModulesHelpers/UNSanpshotProtectionHelper/UNSnapshotProtectionHelper.d.ts.map +1 -0
- package/lib/typescript/src/nativeModulesHelpers/UNSecurityHelper.d.ts +12 -0
- package/lib/typescript/src/nativeModulesHelpers/UNSecurityHelper.d.ts.map +1 -0
- package/lib/typescript/src/networking/common/UNNetworkConstants.d.ts +1 -0
- package/lib/typescript/src/networking/common/UNNetworkConstants.d.ts.map +1 -1
- package/lib/typescript/src/types/internal/webComponent.types.d.ts +1 -0
- package/lib/typescript/src/types/internal/webComponent.types.d.ts.map +1 -1
- package/lib/typescript/src/types/shared/achCredit.types.d.ts +1 -1
- package/lib/typescript/src/types/shared/achCredit.types.d.ts.map +1 -1
- package/lib/typescript/src/types/shared/env.types.d.ts +2 -1
- package/lib/typescript/src/types/shared/env.types.d.ts.map +1 -1
- package/lib/typescript/src/types/shared/index.d.ts +1 -0
- package/lib/typescript/src/types/shared/index.d.ts.map +1 -1
- package/lib/typescript/src/types/shared/payments.types.d.ts +2 -1
- package/lib/typescript/src/types/shared/payments.types.d.ts.map +1 -1
- package/lib/typescript/src/types/shared/securitySettings.d.ts +8 -0
- package/lib/typescript/src/types/shared/securitySettings.d.ts.map +1 -0
- package/lib/typescript/src/types/shared/wirePayment.types.d.ts +42 -0
- package/lib/typescript/src/types/shared/wirePayment.types.d.ts.map +1 -0
- package/lib/typescript/src/unitSdkManager/UnitSdk.constants.d.ts +2 -0
- package/lib/typescript/src/unitSdkManager/UnitSdk.constants.d.ts.map +1 -1
- package/lib/typescript/src/unitSdkManager/UnitSdkManager.d.ts +5 -1
- package/lib/typescript/src/unitSdkManager/UnitSdkManager.d.ts.map +1 -1
- package/lib/typescript/src/unitSdkManager/UnitSdkManager.utils.internal.d.ts.map +1 -1
- package/lib/typescript/src/utils/onLoadMessages.utils.d.ts +2 -0
- package/lib/typescript/src/utils/onLoadMessages.utils.d.ts.map +1 -0
- package/package.json +1 -1
- package/react-native-unit-components.podspec +1 -1
- package/src/components/UNACHCreditComponent/UNACHCreditComponent.tsx +11 -16
- package/src/components/UNACHDebitComponent/UNACHDebitComponent.tsx +11 -17
- package/src/components/UNAccountComponent/UNAccountComponent.tsx +3 -3
- package/src/components/UNActivityComponent/UNActivityComponent.tsx +7 -14
- package/src/components/UNBookPaymentComponent/UNBookPaymentComponent.tsx +14 -17
- package/src/components/UNBottomSheetComponent/UNBottomSheetComponent.tsx +0 -1
- package/src/components/UNCardComponent/UNCardComponent.tsx +3 -3
- package/src/components/UNCheckDepositComponent/UNCheckDepositComponent.tsx +7 -14
- package/src/components/UNFundAccountPaymentComponent/UNFundAccountPaymentComponent.tsx +16 -12
- package/src/components/UNMultipleCardsComponent/UNMultipleCardsComponent.tsx +6 -14
- package/src/components/UNNextRepaymentComponent/UNNextRepaymentComponent.tsx +3 -3
- package/src/components/UNPayeeManagementComponent/UNPayeeManagementComponent.tsx +14 -11
- package/src/components/UNProgramDetailsComponent/UNProgramDetailsComponent.tsx +3 -3
- package/src/components/UNWhiteLabelAppComponent/UNWhiteLabelAppComponent.tsx +14 -11
- package/src/components/UNWirePaymentComponent/UNWirePaymentComponent.tsx +109 -0
- package/src/components/UNWirePaymentComponent/UNWirePaymentComponent.utils.ts +23 -0
- package/src/components/UNWirePaymentComponent/index.ts +1 -0
- package/src/components/index.ts +1 -0
- package/src/helpers/BottomSheet/BottomSheet.tsx +3 -4
- package/src/hooks/useIsJailbrokeDevice.ts +17 -0
- package/src/hooks/useSnapshotProtection.ts +25 -0
- package/src/messages/webMessages/onLoadMessage.ts +1 -1
- package/src/nativeComponents/UNAddToWallet/UNAddToWalletComponent/UNAddToWalletComponent.tsx +12 -11
- package/src/nativeComponents/UNBaseView/UNBaseView.tsx +50 -0
- package/src/nativeComponents/UNBaseView/index.ts +1 -0
- package/src/nativeModulesHelpers/UNSanpshotProtectionHelper/UNSnapshotProtectionHelper.ts +21 -0
- package/src/nativeModulesHelpers/UNSecurityHelper.ts +35 -0
- package/src/networking/common/UNNetworkConstants.ts +2 -1
- package/src/types/internal/webComponent.types.ts +1 -0
- package/src/types/shared/achCredit.types.ts +1 -1
- package/src/types/shared/env.types.ts +2 -1
- package/src/types/shared/index.ts +1 -0
- package/src/types/shared/payments.types.ts +1 -0
- package/src/types/shared/securitySettings.ts +8 -0
- package/src/types/shared/wirePayment.types.ts +43 -0
- package/src/unitSdkManager/UnitSdk.constants.ts +6 -0
- package/src/unitSdkManager/UnitSdkManager.ts +33 -5
- package/src/unitSdkManager/UnitSdkManager.utils.internal.ts +3 -0
- package/src/utils/onLoadMessages.utils.ts +3 -0
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { WebComponent } from '../../webComponent/WebComponent';
|
|
2
|
+
import React, { useState } from 'react';
|
|
3
|
+
import { PresentationMode, WebComponentType } from '../../types/internal/webComponent.types';
|
|
4
|
+
import { withReduxStore } from '../../helpers/store/helpers';
|
|
5
|
+
import { RESPONSE_KEYS, UnitOnLoadResponseEvent } from '../../messages/webMessages/onLoadMessage';
|
|
6
|
+
import { UNAccountData, UNError, UNOnLoadResponse, UNOnLoadResponseData } from '../../types/shared';
|
|
7
|
+
import { WebViewMessage } from '../../messages/webMessages';
|
|
8
|
+
import { PaymentMessage } from '../../messages/webMessages/paymentsMessage';
|
|
9
|
+
import { UnitMessage } from '../../messages/webMessages/unitMessages';
|
|
10
|
+
import { HeightEvent, PageMessage } from '../../messages/webMessages/pageMessage';
|
|
11
|
+
import { getWirePaymentParams, getWirePaymentScript } from './UNWirePaymentComponent.utils';
|
|
12
|
+
import { UNWirePaymentData, WirePaymentCreatedEvent } from '../../types/shared/wirePayment.types';
|
|
13
|
+
import { UNBaseView } from '../../nativeComponents/UNBaseView';
|
|
14
|
+
import { ensureArray } from '../../utils/onLoadMessages.utils';
|
|
15
|
+
|
|
16
|
+
export interface UNWirePaymentComponentProps {
|
|
17
|
+
// inputs
|
|
18
|
+
customerToken: string;
|
|
19
|
+
accountId?: string;
|
|
20
|
+
fee?: number;
|
|
21
|
+
|
|
22
|
+
// ui
|
|
23
|
+
theme?: string;
|
|
24
|
+
language?: string;
|
|
25
|
+
|
|
26
|
+
isAutoFocus?: boolean;
|
|
27
|
+
initialStageBackButton?: boolean;
|
|
28
|
+
finalStageDoneButton?: boolean;
|
|
29
|
+
|
|
30
|
+
// events
|
|
31
|
+
onPaymentCreated?: (data: UNWirePaymentData) => void;
|
|
32
|
+
onLoad?: (response: UNOnLoadResponse<[UNAccountData]>) => void;
|
|
33
|
+
onInitialStageBackButtonClicked?: () => void;
|
|
34
|
+
onFinalStageDoneButtonClicked?: () => void;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
const UNWirePaymentComponent = (props: UNWirePaymentComponentProps) => {
|
|
38
|
+
const [height, setHeight] = useState<number>(0);
|
|
39
|
+
const [presentationMode, setPresentationMode] = useState<PresentationMode>(PresentationMode.Inherit);
|
|
40
|
+
|
|
41
|
+
const handleUnitOnLoad = (response: UnitOnLoadResponseEvent) => {
|
|
42
|
+
if (!props.onLoad) {
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
if (RESPONSE_KEYS.errors in response) {
|
|
47
|
+
props.onLoad(response as UNError);
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
if (RESPONSE_KEYS.account in response) {
|
|
52
|
+
const account = response[RESPONSE_KEYS.account].data;
|
|
53
|
+
const paymentOnLoad: UNOnLoadResponseData<[UNAccountData]> = {
|
|
54
|
+
data: ensureArray(account),
|
|
55
|
+
};
|
|
56
|
+
props.onLoad(paymentOnLoad);
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
console.error('On Load Error: unexpected response type');
|
|
61
|
+
return;
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
const handleWebViewMessage = (message: WebViewMessage) => {
|
|
65
|
+
if (!message || !message.details) return;
|
|
66
|
+
switch (message.type) {
|
|
67
|
+
case PaymentMessage.INITIAL_STAGE_BACK_BUTTON_CLICKED: {
|
|
68
|
+
props.onInitialStageBackButtonClicked && props.onInitialStageBackButtonClicked();
|
|
69
|
+
break;
|
|
70
|
+
}
|
|
71
|
+
case PaymentMessage.FINAL_STAGE_DONE_BUTTON_CLICKED: {
|
|
72
|
+
props.onFinalStageDoneButtonClicked && props.onFinalStageDoneButtonClicked();
|
|
73
|
+
break;
|
|
74
|
+
}
|
|
75
|
+
case PaymentMessage.PAYMENT_CREATED:
|
|
76
|
+
props.onPaymentCreated && props.onPaymentCreated((message.details as WirePaymentCreatedEvent).data);
|
|
77
|
+
break;
|
|
78
|
+
case UnitMessage.UNIT_ON_LOAD:
|
|
79
|
+
handleUnitOnLoad(message.details as UnitOnLoadResponseEvent);
|
|
80
|
+
break;
|
|
81
|
+
case PageMessage.PAGE_HEIGHT: {
|
|
82
|
+
const currentHeight = (message.details as HeightEvent).height;
|
|
83
|
+
setHeight(currentHeight);
|
|
84
|
+
if (presentationMode === PresentationMode.Inherit && currentHeight === 0) {
|
|
85
|
+
setPresentationMode(PresentationMode.Default);
|
|
86
|
+
}
|
|
87
|
+
break;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
|
|
92
|
+
const style = presentationMode === PresentationMode.Inherit ? { flex: 1 } : { height: height };
|
|
93
|
+
return (
|
|
94
|
+
<UNBaseView style={style}>
|
|
95
|
+
<WebComponent
|
|
96
|
+
type={WebComponentType.wirePayment}
|
|
97
|
+
presentationMode={presentationMode}
|
|
98
|
+
params={getWirePaymentParams(props)}
|
|
99
|
+
script={getWirePaymentScript()}
|
|
100
|
+
onMessage={(message: WebViewMessage) => handleWebViewMessage(message)}
|
|
101
|
+
isScrollable={true}
|
|
102
|
+
theme={props.theme}
|
|
103
|
+
language={props.language}
|
|
104
|
+
/>
|
|
105
|
+
</UNBaseView>
|
|
106
|
+
);
|
|
107
|
+
};
|
|
108
|
+
|
|
109
|
+
export default withReduxStore<UNWirePaymentComponentProps>(UNWirePaymentComponent);
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { LISTENERS } from '../../scripts/html/bodyScript';
|
|
2
|
+
import { UNWirePaymentComponentProps } from './UNWirePaymentComponent';
|
|
3
|
+
|
|
4
|
+
export const getWirePaymentParams = (props: UNWirePaymentComponentProps) => {
|
|
5
|
+
const accountIdParam = props.accountId ? `account-id="${props.accountId}"` : '';
|
|
6
|
+
const feeParam = props.fee ? `fee="${props.fee}"` : '';
|
|
7
|
+
return `
|
|
8
|
+
${accountIdParam}
|
|
9
|
+
customer-token="${props.customerToken}"
|
|
10
|
+
${feeParam}
|
|
11
|
+
is-auto-focus="${props.isAutoFocus || false}"
|
|
12
|
+
initial-stage-back-button="${props.initialStageBackButton ?? false}"
|
|
13
|
+
final-stage-done-button="${props.finalStageDoneButton ?? false}"
|
|
14
|
+
`;
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export const getWirePaymentScript = () => {
|
|
18
|
+
return `
|
|
19
|
+
${LISTENERS.unitPaymentCreated}
|
|
20
|
+
${LISTENERS.unitPaymentInitialStageBackButtonClicked}
|
|
21
|
+
${LISTENERS.unitPaymentFinalStageDoneButtonClicked}
|
|
22
|
+
`;
|
|
23
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as UNWirePaymentComponent, UNWirePaymentComponentProps } from './UNWirePaymentComponent';
|
package/src/components/index.ts
CHANGED
|
@@ -20,6 +20,7 @@ import {
|
|
|
20
20
|
import { getStylesObject } from './BottomSheet.styles';
|
|
21
21
|
import { useAppStateListener } from '../../hooks/useAppStateListener';
|
|
22
22
|
import { BottomSheetNativePlaceType } from '../../types/internal/bottomSheet.types';
|
|
23
|
+
import { UNBaseView } from '../../nativeComponents/UNBaseView';
|
|
23
24
|
|
|
24
25
|
export interface BottomSheetProps {
|
|
25
26
|
isOpen: boolean,
|
|
@@ -223,11 +224,9 @@ const BottomSheet = (props: BottomSheetProps) => {
|
|
|
223
224
|
<View
|
|
224
225
|
onLayout={_setSize}
|
|
225
226
|
>
|
|
226
|
-
<
|
|
227
|
-
style={{ height: props.height }}
|
|
228
|
-
>
|
|
227
|
+
<UNBaseView style={{ height: props.height }}>
|
|
229
228
|
{children}
|
|
230
|
-
</
|
|
229
|
+
</UNBaseView>
|
|
231
230
|
|
|
232
231
|
</View>
|
|
233
232
|
</View>
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { useEffect, useState } from 'react';
|
|
2
|
+
import UNSecurityManagerHelper from '../nativeModulesHelpers/UNSecurityHelper';
|
|
3
|
+
|
|
4
|
+
export const useIsJailbrokeDevice = () => {
|
|
5
|
+
const [isJailbroke, setIsJailbroke] = useState(false);
|
|
6
|
+
|
|
7
|
+
useEffect(() => {
|
|
8
|
+
const isDeviceJailbroke = async () => {
|
|
9
|
+
const isDeviceJailbroke = await UNSecurityManagerHelper.isDeviceJailbroke();
|
|
10
|
+
setIsJailbroke(isDeviceJailbroke);
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
isDeviceJailbroke();
|
|
14
|
+
}, []);
|
|
15
|
+
|
|
16
|
+
return isJailbroke;
|
|
17
|
+
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Platform } from 'react-native';
|
|
2
|
+
import UNSnapshotProtectionHelper from '../nativeModulesHelpers/UNSanpshotProtectionHelper/UNSnapshotProtectionHelper';
|
|
3
|
+
import { UnitSDK } from '../unitSdkManager/UnitSdkManager';
|
|
4
|
+
import { UNSnapshotProtectionStrategy } from '../types/shared/securitySettings';
|
|
5
|
+
import { useEffect } from 'react';
|
|
6
|
+
|
|
7
|
+
export const useSnapshotProtection = () => {
|
|
8
|
+
/**
|
|
9
|
+
* This hook provides snapshot protection specifically for Android.
|
|
10
|
+
* For iOS, a native service is utilized instead.
|
|
11
|
+
*/
|
|
12
|
+
useEffect(() => {
|
|
13
|
+
if (!UnitSDK.isInitialized()) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
if (UnitSDK.getSecuritySettings().snapshotProtectionStrategy == UNSnapshotProtectionStrategy.None) {
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
if (Platform.OS == 'android') {
|
|
22
|
+
UNSnapshotProtectionHelper.setAndroidSecurity();
|
|
23
|
+
}
|
|
24
|
+
}, []);
|
|
25
|
+
};
|
|
@@ -38,7 +38,7 @@ export type AccountsOnLoadResponse = {
|
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
export type ACHOnLoadResponse = {
|
|
41
|
-
[RESPONSE_KEYS.account]: UNOnLoadResponseData<UNAccountData>,
|
|
41
|
+
[RESPONSE_KEYS.account]: UNOnLoadResponseData<UNAccountData> | UNOnLoadResponseData<[UNAccountData]>,
|
|
42
42
|
[RESPONSE_KEYS.counterpartyAccount]: UNOnLoadResponseData<[UNCounterpartyAccountData]>
|
|
43
43
|
}
|
|
44
44
|
|
package/src/nativeComponents/UNAddToWallet/UNAddToWalletComponent/UNAddToWalletComponent.tsx
CHANGED
|
@@ -21,6 +21,7 @@ import {
|
|
|
21
21
|
} from '../../../components/UNBottomSheetComponent/UNBottomSheetComponent.constants';
|
|
22
22
|
import { launchStartCardProvisioning } from '../../../helpers/pushProvisioningService/startProvisioning';
|
|
23
23
|
import { PageMessage } from '../../../messages/webMessages/pageMessage';
|
|
24
|
+
import { UNBaseView } from '../../UNBaseView';
|
|
24
25
|
|
|
25
26
|
export interface UNAddToWalletComponentProps {
|
|
26
27
|
customerToken: string;
|
|
@@ -64,25 +65,25 @@ const UNAddToWalletComponent = (props: UNAddToWalletComponentProps) => {
|
|
|
64
65
|
return <ActivityIndicator style={styles.loader} />;
|
|
65
66
|
}
|
|
66
67
|
return (
|
|
67
|
-
|
|
68
|
+
<UNBaseView style={{flex: 1}}>
|
|
68
69
|
{
|
|
69
70
|
shouldRenderAddToWalletWebView() &&
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
71
|
+
<WebComponent
|
|
72
|
+
ref={webRef}
|
|
73
|
+
type={WebComponentType.cardAction}
|
|
74
|
+
presentationMode={PresentationMode.CoverInjectedHeight}
|
|
75
|
+
params={getAddToWalletParams(props)}
|
|
76
|
+
isScrollable={false}
|
|
77
|
+
onMessage={(message: WebViewMessage) => handleWebViewMessage(message)}
|
|
78
|
+
windowParams={getAddToWalletWindowParams(currentUNWallet)}
|
|
79
|
+
/>
|
|
79
80
|
}
|
|
80
81
|
|
|
81
82
|
{
|
|
82
83
|
currentUNWallet?.status === UNCardAddToWalletStatus.readyToProvisioning &&
|
|
83
84
|
<UnitAddToWalletButtonView style={styles.addToWalletButton} onAddToWalletClicked={handleAddToWalletClicked} />
|
|
84
85
|
}
|
|
85
|
-
|
|
86
|
+
</UNBaseView>
|
|
86
87
|
);
|
|
87
88
|
};
|
|
88
89
|
return (
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import React, { useEffect } from 'react';
|
|
2
|
+
import {
|
|
3
|
+
Platform,
|
|
4
|
+
StyleProp,
|
|
5
|
+
View,
|
|
6
|
+
ViewStyle,
|
|
7
|
+
requireNativeComponent,
|
|
8
|
+
} from 'react-native';
|
|
9
|
+
import { UNError } from '../../types/shared';
|
|
10
|
+
import { useIsJailbrokeDevice } from '../../hooks/useIsJailbrokeDevice';
|
|
11
|
+
import { useSnapshotProtection } from '../../hooks/useSnapshotProtection';
|
|
12
|
+
|
|
13
|
+
type UnitAndroidSecureViewProps = {
|
|
14
|
+
style?: StyleProp<ViewStyle>;
|
|
15
|
+
filterTouchesWhenObscured: boolean;
|
|
16
|
+
children: React.ReactNode;
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
type UnitSecureViewProps = {
|
|
20
|
+
style?: StyleProp<ViewStyle>;
|
|
21
|
+
children: React.ReactNode;
|
|
22
|
+
onLoadError?: (error: UNError) => void;
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
const UnitAndroidSecureView = requireNativeComponent<UnitAndroidSecureViewProps>('UNSecureView');
|
|
26
|
+
|
|
27
|
+
const UNBaseView = (props: UnitSecureViewProps) => {
|
|
28
|
+
useSnapshotProtection();
|
|
29
|
+
|
|
30
|
+
const isJailbroke = useIsJailbrokeDevice();
|
|
31
|
+
useEffect(() => {
|
|
32
|
+
if (isJailbroke) {
|
|
33
|
+
props.onLoadError && props.onLoadError({errors: [{title: 'Device is Jailbroke'}]});
|
|
34
|
+
}
|
|
35
|
+
}, [props, isJailbroke]);
|
|
36
|
+
|
|
37
|
+
if (isJailbroke) {
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
if (Platform.OS == 'android') {
|
|
42
|
+
return <UnitAndroidSecureView filterTouchesWhenObscured={true} {...props}/>;
|
|
43
|
+
} else {
|
|
44
|
+
return (
|
|
45
|
+
<View {...props} />
|
|
46
|
+
);
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
export default UNBaseView;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as UNBaseView } from './UNBaseView';
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { NativeModules } from 'react-native';
|
|
2
|
+
|
|
3
|
+
const { UNSnapshotProtectionManager } = NativeModules;
|
|
4
|
+
|
|
5
|
+
class UNSnapshotProtectionHelper {
|
|
6
|
+
static setAndroidSecurity() {
|
|
7
|
+
/**
|
|
8
|
+
* Set secure flag on the activity's window (if it doesn't exist)
|
|
9
|
+
*/
|
|
10
|
+
UNSnapshotProtectionManager.setSecureFlags();
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
static setIosSecurity(shouldProtectFromSnapshot: boolean, style: string) {
|
|
14
|
+
/**
|
|
15
|
+
* Activate a Global native service for managing the snapshotProtection by the given arguments.
|
|
16
|
+
*/
|
|
17
|
+
UNSnapshotProtectionManager.configureSnapshotProtectionStrategy(shouldProtectFromSnapshot, style);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export default UNSnapshotProtectionHelper;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { NativeModules } from 'react-native';
|
|
2
|
+
|
|
3
|
+
const { UNSecurityHelper } = NativeModules;
|
|
4
|
+
|
|
5
|
+
enum UNJailbrokeState {
|
|
6
|
+
Unknown,
|
|
7
|
+
Jailbroke,
|
|
8
|
+
NotJailbroke
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
class UNSecurityManagerHelper {
|
|
12
|
+
static deviceJailbrokeState: UNJailbrokeState = UNJailbrokeState.Unknown;
|
|
13
|
+
|
|
14
|
+
static async isDeviceJailbroke(): Promise<boolean> {
|
|
15
|
+
if (this.deviceJailbrokeState !== UNJailbrokeState.Unknown) {
|
|
16
|
+
return this.isCurrentStatusIsJailbroke();
|
|
17
|
+
}
|
|
18
|
+
const result: boolean = await UNSecurityHelper.isDeviceJailbroke();
|
|
19
|
+
UNSecurityManagerHelper.deviceJailbrokeState = result ? UNJailbrokeState.Jailbroke : UNJailbrokeState.NotJailbroke;
|
|
20
|
+
return result;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
private static isCurrentStatusIsJailbroke = (): boolean => {
|
|
24
|
+
switch (this.deviceJailbrokeState) {
|
|
25
|
+
case UNJailbrokeState.Unknown:
|
|
26
|
+
return false;
|
|
27
|
+
case UNJailbrokeState.Jailbroke:
|
|
28
|
+
return true;
|
|
29
|
+
case UNJailbrokeState.NotJailbroke:
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export default UNSecurityManagerHelper;
|
|
@@ -7,5 +7,6 @@ export const APIHeaders = {
|
|
|
7
7
|
|
|
8
8
|
export const UNIT_SECURE_URL = {
|
|
9
9
|
[UNEnvironment.sandbox]: 'https://secure.api.s.unit.sh',
|
|
10
|
-
[UNEnvironment.production]: 'https://secure.api.unit.co'
|
|
10
|
+
[UNEnvironment.production]: 'https://secure.api.unit.co',
|
|
11
|
+
[UNEnvironment.mock]: ''
|
|
11
12
|
};
|
|
@@ -13,6 +13,7 @@ export enum WebComponentType {
|
|
|
13
13
|
programDetails = 'unit-elements-program-details',
|
|
14
14
|
nextRepayment = 'unit-elements-next-repayment',
|
|
15
15
|
payeeManagement = 'unit-elements-payee-management',
|
|
16
|
+
wirePayment = 'unit-elements-wire-payment',
|
|
16
17
|
whiteLabelApp = 'unit-elements-white-label-app',
|
|
17
18
|
}
|
|
18
19
|
|
|
@@ -4,7 +4,7 @@ import type { UNPaymentType, UNAchCounterparty, UNCounterpartyVerificationMethod
|
|
|
4
4
|
import type { UNTags, UNRelationship } from './types';
|
|
5
5
|
|
|
6
6
|
export type UNACHOnLoadData = {
|
|
7
|
-
[RESPONSE_KEYS.account]: UNAccountData,
|
|
7
|
+
[RESPONSE_KEYS.account]: [UNAccountData],
|
|
8
8
|
[RESPONSE_KEYS.counterpartyAccount]: [UNCounterpartyAccountData]
|
|
9
9
|
}
|
|
10
10
|
|
|
@@ -2,6 +2,7 @@ export enum UNPaymentType {
|
|
|
2
2
|
AchPayment = 'achPayment',
|
|
3
3
|
BookPayment = 'bookPayment',
|
|
4
4
|
CardToCardPayment = 'cardToCardPayment',
|
|
5
|
+
WirePayment = 'wirePayment'
|
|
5
6
|
}
|
|
6
7
|
|
|
7
8
|
export type UNPaymentStatus = 'Sent' | 'Rejected' | 'Pending' | 'Clearing' | 'Canceled' | 'Returned' | 'PendingReview'
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { UNPaymentStatus, UNPaymentType } from './payments.types';
|
|
2
|
+
import { UNRelationship, UNTags } from './types';
|
|
3
|
+
|
|
4
|
+
export interface WirePaymentCreatedEvent {
|
|
5
|
+
data: UNWirePaymentData
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export type UNWirePaymentData = {
|
|
9
|
+
type: UNPaymentType.WirePayment
|
|
10
|
+
id: string
|
|
11
|
+
attributes: {
|
|
12
|
+
createdAt: string | Date
|
|
13
|
+
amount: number
|
|
14
|
+
direction: 'Debit' | 'Credit'
|
|
15
|
+
description: string
|
|
16
|
+
status: UNPaymentStatus
|
|
17
|
+
reason?: string
|
|
18
|
+
tags?: UNTags
|
|
19
|
+
counterparty: UNWireCounterparty
|
|
20
|
+
}
|
|
21
|
+
relationships: {
|
|
22
|
+
account: UNRelationship
|
|
23
|
+
customer?: UNRelationship
|
|
24
|
+
customers?: UNRelationship
|
|
25
|
+
transaction?: UNRelationship
|
|
26
|
+
counterpartyAccount?: UNRelationship
|
|
27
|
+
org?: UNRelationship
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
type UNWireCounterparty = {
|
|
32
|
+
name: string
|
|
33
|
+
routingNumber: string
|
|
34
|
+
accountNumber: string
|
|
35
|
+
address: {
|
|
36
|
+
street: string
|
|
37
|
+
street2?: string
|
|
38
|
+
city: string
|
|
39
|
+
state?: string
|
|
40
|
+
postalCode: string
|
|
41
|
+
country?: string
|
|
42
|
+
}
|
|
43
|
+
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { UNVersioningStrategyType, UNWebVersioningStrategy } from '../types/shared';
|
|
2
|
+
import { UNSecuritySettings, UNSnapshotProtectionStrategy } from '../types/shared/securitySettings';
|
|
2
3
|
|
|
3
4
|
const WEB_SDK_RECOMMENDED_STRATEGY: UNWebVersioningStrategy = {
|
|
4
5
|
type: UNVersioningStrategyType.upToNextMinor,
|
|
@@ -6,6 +7,11 @@ const WEB_SDK_RECOMMENDED_STRATEGY: UNWebVersioningStrategy = {
|
|
|
6
7
|
minor: 8,
|
|
7
8
|
};
|
|
8
9
|
|
|
10
|
+
const DEFAULT_SECURITY_SETTINGS: UNSecuritySettings = {
|
|
11
|
+
snapshotProtectionStrategy: UNSnapshotProtectionStrategy.FullProtection
|
|
12
|
+
};
|
|
13
|
+
|
|
9
14
|
export const UNSDKConstants = {
|
|
10
15
|
webSDKRecommendedStrategy: WEB_SDK_RECOMMENDED_STRATEGY,
|
|
16
|
+
securitySettings: DEFAULT_SECURITY_SETTINGS
|
|
11
17
|
};
|
|
@@ -11,34 +11,58 @@ import { UNEnvironment } from '../types/shared/env.types';
|
|
|
11
11
|
import { UserDataKeys } from '../types/internal/unitStore.types';
|
|
12
12
|
import UNStoreManagerHelper from '../nativeModulesHelpers/UNStoreManagerHelper/UNStoreManagerHelper';
|
|
13
13
|
import { UnitHelpersManager } from './unitHelpersManager/UnitHelpersManager';
|
|
14
|
+
import UNSecurityManagerHelper from '../nativeModulesHelpers/UNSecurityHelper';
|
|
15
|
+
import { UNSecuritySettings, UNSnapshotProtectionStrategy } from '../types/shared/securitySettings';
|
|
16
|
+
import UNSnapshotProtectionHelper from '../nativeModulesHelpers/UNSanpshotProtectionHelper/UNSnapshotProtectionHelper';
|
|
14
17
|
|
|
15
18
|
export class UnitSDK {
|
|
16
19
|
public static ui: UnitUiManager;
|
|
17
20
|
public static helpers: UnitHelpersManager;
|
|
21
|
+
|
|
18
22
|
protected static env?: UNEnvironment;
|
|
19
23
|
protected static webVersioningStrategy: UNWebVersioningStrategy;
|
|
24
|
+
protected static securitySettings: UNSecuritySettings = UNSDKConstants.securitySettings;
|
|
20
25
|
protected static customerToken?: string;
|
|
21
26
|
protected static fonts?: UNFonts;
|
|
22
27
|
protected static signedNonce?: string;
|
|
23
28
|
protected static pushProvisionModule?: typeof NativeModules;
|
|
24
|
-
protected static sdkVersion = '1.
|
|
29
|
+
protected static sdkVersion = '1.14.0';
|
|
25
30
|
|
|
26
|
-
public static init = async (
|
|
31
|
+
public static init = async (
|
|
32
|
+
env: UNEnvironment,
|
|
33
|
+
theme?: string,
|
|
34
|
+
language?: string,
|
|
35
|
+
fonts?: UNFonts,
|
|
36
|
+
webVersioningStrategy: UNWebVersioningStrategy = UNSDKConstants.webSDKRecommendedStrategy,
|
|
37
|
+
securitySettings: UNSecuritySettings = UNSDKConstants.securitySettings
|
|
38
|
+
) => {
|
|
27
39
|
try {
|
|
28
|
-
this.env = env;
|
|
29
40
|
this.webVersioningStrategy = webVersioningStrategy;
|
|
41
|
+
this.ui = new UnitUiManager();
|
|
42
|
+
this.helpers = new UnitHelpersManager();
|
|
43
|
+
|
|
44
|
+
const isJailbroke = await UNSecurityManagerHelper.isDeviceJailbroke();
|
|
45
|
+
if (isJailbroke) {
|
|
46
|
+
throw Error('Device is jailbroke');
|
|
47
|
+
}
|
|
48
|
+
this.env = env;
|
|
49
|
+
this.securitySettings = securitySettings;
|
|
30
50
|
this.fonts = fonts;
|
|
31
51
|
store.dispatch(setTheme(theme));
|
|
32
52
|
store.dispatch(setLanguage(language));
|
|
33
|
-
this.ui = new UnitUiManager();
|
|
34
|
-
this.helpers = new UnitHelpersManager();
|
|
35
53
|
warnClientIfNeeded(this.webVersioningStrategy);
|
|
54
|
+
const shouldProtectFromSnapshot = securitySettings.snapshotProtectionStrategy != UNSnapshotProtectionStrategy.None;
|
|
55
|
+
UNSnapshotProtectionHelper.setIosSecurity(shouldProtectFromSnapshot, 'light');
|
|
36
56
|
await fetchUnitScript();
|
|
37
57
|
} catch (e) {
|
|
38
58
|
console.log(e);
|
|
39
59
|
}
|
|
40
60
|
};
|
|
41
61
|
|
|
62
|
+
public static isInitialized = () => {
|
|
63
|
+
return this.env != undefined;
|
|
64
|
+
};
|
|
65
|
+
|
|
42
66
|
public static setPushProvisioningModule = (pushProvisionModule: typeof NativeModules) => {
|
|
43
67
|
this.pushProvisionModule = pushProvisionModule;
|
|
44
68
|
};
|
|
@@ -47,6 +71,10 @@ export class UnitSDK {
|
|
|
47
71
|
return this.pushProvisionModule;
|
|
48
72
|
};
|
|
49
73
|
|
|
74
|
+
public static getSecuritySettings = () => {
|
|
75
|
+
return this.securitySettings;
|
|
76
|
+
};
|
|
77
|
+
|
|
50
78
|
/**
|
|
51
79
|
* @deprecated - Unit SDK is managing the signedNonce, no need to provide it
|
|
52
80
|
*/
|
|
@@ -11,5 +11,8 @@ export const getUnitScriptUrl = (env: UNEnvironment, webVersioningStrategy: UNWe
|
|
|
11
11
|
|
|
12
12
|
case UNEnvironment.production:
|
|
13
13
|
return `https://ui.unit.co/release/${webSdkVersionString}/components.js`;
|
|
14
|
+
|
|
15
|
+
case UNEnvironment.mock:
|
|
16
|
+
return 'https://unit-white-label-ui.netlify.app/assets/components-mock.js';
|
|
14
17
|
}
|
|
15
18
|
};
|