framepayments-react-native 3.0.1 → 4.0.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/FrameReactNative.podspec +7 -23
- package/README.md +249 -109
- package/android/build.gradle +15 -26
- package/android/consumer-rules.pro +34 -0
- package/android/src/main/AndroidManifest.xml +10 -18
- package/android/src/main/java/com/framepayments/reactnativeframe/FrameGooglePayButtonView.kt +110 -0
- package/android/src/main/java/com/framepayments/reactnativeframe/FrameGooglePayButtonViewManager.kt +44 -0
- package/android/src/main/java/com/framepayments/reactnativeframe/FrameSDKModule.kt +15 -243
- package/android/src/main/java/com/framepayments/reactnativeframe/FrameSDKPackage.kt +7 -2
- package/android/src/main/java/com/framepayments/reactnativeframe/GooglePayBridge.kt +255 -0
- package/android/src/main/java/com/framepayments/reactnativeframe/IpAddressBridge.kt +63 -0
- package/android/src/main/java/com/framepayments/reactnativeframe/ProveAuthBridge.kt +215 -0
- package/app.plugin.js +1 -0
- package/ios/ApplePayBridge.m +23 -0
- package/ios/ApplePayBridge.swift +262 -0
- package/ios/AttestationBridge.m +36 -0
- package/ios/AttestationBridge.swift +167 -0
- package/ios/FrameApplePayButtonView.swift +115 -0
- package/ios/FrameApplePayButtonViewManager.m +17 -0
- package/ios/FrameSDKBridge.m +4 -67
- package/ios/FrameSDKBridge.swift +10 -347
- package/ios/IpAddressBridge.m +10 -0
- package/ios/IpAddressBridge.swift +61 -0
- package/ios/ProveAuthBridge.m +20 -0
- package/ios/ProveAuthBridge.swift +318 -0
- package/lib/__mocks__/react-native-svg.d.ts +19 -0
- package/lib/__mocks__/react-native-svg.d.ts.map +1 -0
- package/lib/__mocks__/react-native-svg.js +21 -0
- package/lib/api-errors.d.ts +6 -0
- package/lib/api-errors.d.ts.map +1 -0
- package/lib/api-errors.js +55 -0
- package/lib/applePay.d.ts +57 -0
- package/lib/applePay.d.ts.map +1 -0
- package/lib/applePay.js +235 -0
- package/lib/attestation.d.ts +48 -0
- package/lib/attestation.d.ts.map +1 -0
- package/lib/attestation.js +207 -0
- package/lib/camera.d.ts +29 -0
- package/lib/camera.d.ts.map +1 -0
- package/lib/camera.js +61 -0
- package/lib/client.d.ts +7 -0
- package/lib/client.d.ts.map +1 -0
- package/lib/client.js +38 -0
- package/lib/config.d.ts +40 -0
- package/lib/config.d.ts.map +1 -0
- package/lib/config.js +93 -0
- package/lib/countries.d.ts +18 -0
- package/lib/countries.d.ts.map +1 -0
- package/lib/countries.js +338 -0
- package/lib/currency.d.ts +2 -0
- package/lib/currency.d.ts.map +1 -0
- package/lib/currency.js +22 -0
- package/lib/debug/networkLogger.d.ts +4 -0
- package/lib/debug/networkLogger.d.ts.map +1 -0
- package/lib/debug/networkLogger.js +101 -0
- package/lib/errors.d.ts +12 -3
- package/lib/errors.d.ts.map +1 -1
- package/lib/errors.js +20 -3
- package/lib/evervault.d.ts +10 -0
- package/lib/evervault.d.ts.map +1 -0
- package/lib/evervault.js +61 -0
- package/lib/googlePay.d.ts +30 -0
- package/lib/googlePay.d.ts.map +1 -0
- package/lib/googlePay.js +96 -0
- package/lib/index.d.ts +18 -11
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +17 -10
- package/lib/ipAddress.d.ts +5 -0
- package/lib/ipAddress.d.ts.map +1 -0
- package/lib/ipAddress.js +15 -0
- package/lib/native.d.ts +16 -55
- package/lib/native.d.ts.map +1 -1
- package/lib/native.js +156 -85
- package/lib/plaid.d.ts +25 -0
- package/lib/plaid.d.ts.map +1 -0
- package/lib/plaid.js +101 -0
- package/lib/presenter/FramePresentationHost.d.ts +2 -0
- package/lib/presenter/FramePresentationHost.d.ts.map +1 -0
- package/lib/presenter/FramePresentationHost.js +30 -0
- package/lib/presenter/index.d.ts +3 -0
- package/lib/presenter/index.d.ts.map +1 -0
- package/lib/presenter/index.js +2 -0
- package/lib/presenter/presenter.d.ts +44 -0
- package/lib/presenter/presenter.d.ts.map +1 -0
- package/lib/presenter/presenter.js +112 -0
- package/lib/prove.d.ts +31 -0
- package/lib/prove.d.ts.map +1 -0
- package/lib/prove.js +63 -0
- package/lib/types.d.ts +10 -58
- package/lib/types.d.ts.map +1 -1
- package/lib/types.js +0 -4
- package/lib/ui/FrameProvider.d.ts +13 -0
- package/lib/ui/FrameProvider.d.ts.map +1 -0
- package/lib/ui/FrameProvider.js +22 -0
- package/lib/ui/assets/Icon.d.ts +14 -0
- package/lib/ui/assets/Icon.d.ts.map +1 -0
- package/lib/ui/assets/Icon.js +33 -0
- package/lib/ui/assets/icons/card-brands.d.ts +5 -0
- package/lib/ui/assets/icons/card-brands.d.ts.map +1 -0
- package/lib/ui/assets/icons/card-brands.js +28 -0
- package/lib/ui/assets/icons/person-check.d.ts +2 -0
- package/lib/ui/assets/icons/person-check.d.ts.map +1 -0
- package/lib/ui/assets/icons/person-check.js +9 -0
- package/lib/ui/assets/icons/shield-icon.d.ts +2 -0
- package/lib/ui/assets/icons/shield-icon.d.ts.map +1 -0
- package/lib/ui/assets/icons/shield-icon.js +11 -0
- package/lib/ui/assets/icons/simple.d.ts +10 -0
- package/lib/ui/assets/icons/simple.d.ts.map +1 -0
- package/lib/ui/assets/icons/simple.js +52 -0
- package/lib/ui/assets/index.d.ts +3 -0
- package/lib/ui/assets/index.d.ts.map +1 -0
- package/lib/ui/assets/index.js +1 -0
- package/lib/ui/primitives/ApplePayButton.d.ts +13 -0
- package/lib/ui/primitives/ApplePayButton.d.ts.map +1 -0
- package/lib/ui/primitives/ApplePayButton.js +20 -0
- package/lib/ui/primitives/BillingAddressDetailView.d.ts +13 -0
- package/lib/ui/primitives/BillingAddressDetailView.d.ts.map +1 -0
- package/lib/ui/primitives/BillingAddressDetailView.js +55 -0
- package/lib/ui/primitives/BottomSheet.d.ts +11 -0
- package/lib/ui/primitives/BottomSheet.d.ts.map +1 -0
- package/lib/ui/primitives/BottomSheet.js +72 -0
- package/lib/ui/primitives/Button.d.ts +17 -0
- package/lib/ui/primitives/Button.d.ts.map +1 -0
- package/lib/ui/primitives/Button.js +37 -0
- package/lib/ui/primitives/Button.types.d.ts +2 -0
- package/lib/ui/primitives/Button.types.d.ts.map +1 -0
- package/lib/ui/primitives/Button.types.js +1 -0
- package/lib/ui/primitives/Checkbox.d.ts +12 -0
- package/lib/ui/primitives/Checkbox.d.ts.map +1 -0
- package/lib/ui/primitives/Checkbox.js +53 -0
- package/lib/ui/primitives/CountryPicker.d.ts +10 -0
- package/lib/ui/primitives/CountryPicker.d.ts.map +1 -0
- package/lib/ui/primitives/CountryPicker.js +166 -0
- package/lib/ui/primitives/DobInputField.d.ts +14 -0
- package/lib/ui/primitives/DobInputField.d.ts.map +1 -0
- package/lib/ui/primitives/DobInputField.js +81 -0
- package/lib/ui/primitives/DropDown.d.ts +14 -0
- package/lib/ui/primitives/DropDown.d.ts.map +1 -0
- package/lib/ui/primitives/DropDown.js +136 -0
- package/lib/ui/primitives/FrameCameraView.d.ts +17 -0
- package/lib/ui/primitives/FrameCameraView.d.ts.map +1 -0
- package/lib/ui/primitives/FrameCameraView.js +132 -0
- package/lib/ui/primitives/GooglePayButton.d.ts +13 -0
- package/lib/ui/primitives/GooglePayButton.d.ts.map +1 -0
- package/lib/ui/primitives/GooglePayButton.js +20 -0
- package/lib/ui/primitives/OtpInputField.d.ts +12 -0
- package/lib/ui/primitives/OtpInputField.d.ts.map +1 -0
- package/lib/ui/primitives/OtpInputField.js +87 -0
- package/lib/ui/primitives/PageHeader.d.ts +7 -0
- package/lib/ui/primitives/PageHeader.d.ts.map +1 -0
- package/lib/ui/primitives/PageHeader.js +57 -0
- package/lib/ui/primitives/PaymentCardField.d.ts +31 -0
- package/lib/ui/primitives/PaymentCardField.d.ts.map +1 -0
- package/lib/ui/primitives/PaymentCardField.js +198 -0
- package/lib/ui/primitives/PaymentMethodRow.d.ts +11 -0
- package/lib/ui/primitives/PaymentMethodRow.d.ts.map +1 -0
- package/lib/ui/primitives/PaymentMethodRow.js +70 -0
- package/lib/ui/primitives/PhoneCountryPicker.d.ts +9 -0
- package/lib/ui/primitives/PhoneCountryPicker.d.ts.map +1 -0
- package/lib/ui/primitives/PhoneCountryPicker.js +183 -0
- package/lib/ui/primitives/PhoneNumberField.d.ts +11 -0
- package/lib/ui/primitives/PhoneNumberField.d.ts.map +1 -0
- package/lib/ui/primitives/PhoneNumberField.js +68 -0
- package/lib/ui/primitives/ProgressBar.d.ts +8 -0
- package/lib/ui/primitives/ProgressBar.d.ts.map +1 -0
- package/lib/ui/primitives/ProgressBar.js +35 -0
- package/lib/ui/primitives/TermsOfServiceView.d.ts +6 -0
- package/lib/ui/primitives/TermsOfServiceView.d.ts.map +1 -0
- package/lib/ui/primitives/TermsOfServiceView.js +34 -0
- package/lib/ui/primitives/Toast.d.ts +2 -0
- package/lib/ui/primitives/Toast.d.ts.map +1 -0
- package/lib/ui/primitives/Toast.js +86 -0
- package/lib/ui/primitives/ValidatedTextField.d.ts +46 -0
- package/lib/ui/primitives/ValidatedTextField.d.ts.map +1 -0
- package/lib/ui/primitives/ValidatedTextField.js +70 -0
- package/lib/ui/primitives/buttonColors.d.ts +8 -0
- package/lib/ui/primitives/buttonColors.d.ts.map +1 -0
- package/lib/ui/primitives/buttonColors.js +21 -0
- package/lib/ui/primitives/otpFieldLogic.d.ts +15 -0
- package/lib/ui/primitives/otpFieldLogic.d.ts.map +1 -0
- package/lib/ui/primitives/otpFieldLogic.js +73 -0
- package/lib/ui/primitives/paymentCardFormat.d.ts +25 -0
- package/lib/ui/primitives/paymentCardFormat.d.ts.map +1 -0
- package/lib/ui/primitives/paymentCardFormat.js +118 -0
- package/lib/ui/primitives/textFieldUtils.d.ts +2 -0
- package/lib/ui/primitives/textFieldUtils.d.ts.map +1 -0
- package/lib/ui/primitives/textFieldUtils.js +7 -0
- package/lib/ui/primitives/toastCenter.d.ts +18 -0
- package/lib/ui/primitives/toastCenter.d.ts.map +1 -0
- package/lib/ui/primitives/toastCenter.js +54 -0
- package/lib/ui/screens/cart/CartScreen.d.ts +14 -0
- package/lib/ui/screens/cart/CartScreen.d.ts.map +1 -0
- package/lib/ui/screens/cart/CartScreen.js +165 -0
- package/lib/ui/screens/cart/useCartViewModel.d.ts +13 -0
- package/lib/ui/screens/cart/useCartViewModel.d.ts.map +1 -0
- package/lib/ui/screens/cart/useCartViewModel.js +16 -0
- package/lib/ui/screens/checkout/CheckoutScreen.d.ts +17 -0
- package/lib/ui/screens/checkout/CheckoutScreen.d.ts.map +1 -0
- package/lib/ui/screens/checkout/CheckoutScreen.js +279 -0
- package/lib/ui/screens/checkout/checkoutReducer.d.ts +77 -0
- package/lib/ui/screens/checkout/checkoutReducer.d.ts.map +1 -0
- package/lib/ui/screens/checkout/checkoutReducer.js +158 -0
- package/lib/ui/screens/checkout/useCheckoutViewModel.d.ts +19 -0
- package/lib/ui/screens/checkout/useCheckoutViewModel.d.ts.map +1 -0
- package/lib/ui/screens/checkout/useCheckoutViewModel.js +141 -0
- package/lib/ui/screens/onboarding/OnboardingChrome.d.ts +14 -0
- package/lib/ui/screens/onboarding/OnboardingChrome.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/OnboardingChrome.js +39 -0
- package/lib/ui/screens/onboarding/OnboardingRoot.d.ts +15 -0
- package/lib/ui/screens/onboarding/OnboardingRoot.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/OnboardingRoot.js +275 -0
- package/lib/ui/screens/onboarding/VerificationSubmittedScreen.d.ts +5 -0
- package/lib/ui/screens/onboarding/VerificationSubmittedScreen.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/VerificationSubmittedScreen.js +63 -0
- package/lib/ui/screens/onboarding/confirmBankAccount/AddPayoutMethodScreen.d.ts +12 -0
- package/lib/ui/screens/onboarding/confirmBankAccount/AddPayoutMethodScreen.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/confirmBankAccount/AddPayoutMethodScreen.js +157 -0
- package/lib/ui/screens/onboarding/confirmBankAccount/SelectPayoutMethodScreen.d.ts +9 -0
- package/lib/ui/screens/onboarding/confirmBankAccount/SelectPayoutMethodScreen.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/confirmBankAccount/SelectPayoutMethodScreen.js +125 -0
- package/lib/ui/screens/onboarding/confirmPaymentMethod/AddPaymentMethodScreen.d.ts +18 -0
- package/lib/ui/screens/onboarding/confirmPaymentMethod/AddPaymentMethodScreen.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/confirmPaymentMethod/AddPaymentMethodScreen.js +180 -0
- package/lib/ui/screens/onboarding/confirmPaymentMethod/SecurePMVerificationScreen.d.ts +16 -0
- package/lib/ui/screens/onboarding/confirmPaymentMethod/SecurePMVerificationScreen.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/confirmPaymentMethod/SecurePMVerificationScreen.js +117 -0
- package/lib/ui/screens/onboarding/confirmPaymentMethod/SelectPaymentMethodScreen.d.ts +9 -0
- package/lib/ui/screens/onboarding/confirmPaymentMethod/SelectPaymentMethodScreen.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/confirmPaymentMethod/SelectPaymentMethodScreen.js +159 -0
- package/lib/ui/screens/onboarding/formSpacing.d.ts +20 -0
- package/lib/ui/screens/onboarding/formSpacing.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/formSpacing.js +25 -0
- package/lib/ui/screens/onboarding/onboardingReducer.d.ts +201 -0
- package/lib/ui/screens/onboarding/onboardingReducer.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/onboardingReducer.js +232 -0
- package/lib/ui/screens/onboarding/onboardingSelectors.d.ts +25 -0
- package/lib/ui/screens/onboarding/onboardingSelectors.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/onboardingSelectors.js +265 -0
- package/lib/ui/screens/onboarding/personalInformation/CustomerInformationScreen.d.ts +19 -0
- package/lib/ui/screens/onboarding/personalInformation/CustomerInformationScreen.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/personalInformation/CustomerInformationScreen.js +157 -0
- package/lib/ui/screens/onboarding/personalInformation/GeolocationScreen.d.ts +6 -0
- package/lib/ui/screens/onboarding/personalInformation/GeolocationScreen.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/personalInformation/GeolocationScreen.js +84 -0
- package/lib/ui/screens/onboarding/personalInformation/PhoneAuthScreen.d.ts +17 -0
- package/lib/ui/screens/onboarding/personalInformation/PhoneAuthScreen.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/personalInformation/PhoneAuthScreen.js +93 -0
- package/lib/ui/screens/onboarding/personalInformation/VerificationWelcomeScreen.d.ts +6 -0
- package/lib/ui/screens/onboarding/personalInformation/VerificationWelcomeScreen.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/personalInformation/VerificationWelcomeScreen.js +63 -0
- package/lib/ui/screens/onboarding/personalInformation/VerifyPhoneScreen.d.ts +17 -0
- package/lib/ui/screens/onboarding/personalInformation/VerifyPhoneScreen.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/personalInformation/VerifyPhoneScreen.js +177 -0
- package/lib/ui/screens/onboarding/uploadDocuments/CaptureScreen.d.ts +12 -0
- package/lib/ui/screens/onboarding/uploadDocuments/CaptureScreen.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/uploadDocuments/CaptureScreen.js +197 -0
- package/lib/ui/screens/onboarding/uploadDocuments/ReviewScreen.d.ts +11 -0
- package/lib/ui/screens/onboarding/uploadDocuments/ReviewScreen.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/uploadDocuments/ReviewScreen.js +72 -0
- package/lib/ui/screens/onboarding/uploadDocuments/UploadDocumentsListScreen.d.ts +12 -0
- package/lib/ui/screens/onboarding/uploadDocuments/UploadDocumentsListScreen.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/uploadDocuments/UploadDocumentsListScreen.js +134 -0
- package/lib/ui/screens/onboarding/useOnboardingViewModel.d.ts +90 -0
- package/lib/ui/screens/onboarding/useOnboardingViewModel.d.ts.map +1 -0
- package/lib/ui/screens/onboarding/useOnboardingViewModel.js +886 -0
- package/lib/ui/theme/ThemeContext.d.ts +4 -0
- package/lib/ui/theme/ThemeContext.d.ts.map +1 -0
- package/lib/ui/theme/ThemeContext.js +9 -0
- package/lib/ui/theme/defaults.d.ts +35 -0
- package/lib/ui/theme/defaults.d.ts.map +1 -0
- package/lib/ui/theme/defaults.js +83 -0
- package/lib/validation.d.ts +26 -0
- package/lib/validation.d.ts.map +1 -0
- package/lib/validation.js +235 -0
- package/package.json +50 -11
- package/plugin/withFrameAndroidManifest.js +72 -0
- package/plugin/withFrameAppBuildGradle.js +42 -0
- package/plugin/withFrameEntitlements.js +27 -0
- package/plugin/withFramePodfile.js +186 -0
- package/plugin/withFrameReactNative.js +24 -0
- package/plugin/withFrameSettingsGradle.js +70 -0
- package/Package.swift +0 -47
- package/android/.gradle/8.9/checksums/checksums.lock +0 -0
- package/android/.gradle/8.9/dependencies-accessors/gc.properties +0 -0
- package/android/.gradle/8.9/fileChanges/last-build.bin +0 -0
- package/android/.gradle/8.9/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/8.9/gc.properties +0 -0
- package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/android/.gradle/buildOutputCleanup/cache.properties +0 -2
- package/android/.gradle/vcs-1/gc.properties +0 -0
- package/android/.settings/org.eclipse.buildship.core.prefs +0 -13
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/results.bin +0 -1
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/framepayments/reactnativeframe/BuildConfig.dex +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/framepayments/reactnativeframe/FrameCheckoutActivity$Companion.dex +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/framepayments/reactnativeframe/FrameCheckoutActivity$tryShowCheckout$1.dex +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/framepayments/reactnativeframe/FrameCheckoutActivity.dex +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/framepayments/reactnativeframe/FrameFlowActivity$CartItemDto.dex +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/framepayments/reactnativeframe/FrameFlowActivity$Companion.dex +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/framepayments/reactnativeframe/FrameFlowActivity$parseCartItems$type$1.dex +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/framepayments/reactnativeframe/FrameFlowActivity.dex +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/framepayments/reactnativeframe/FrameGooglePayActivity$Companion.dex +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/framepayments/reactnativeframe/FrameGooglePayActivity.dex +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/framepayments/reactnativeframe/FrameOnboardingActivity$Companion.dex +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/framepayments/reactnativeframe/FrameOnboardingActivity$parseCapabilities$type$1.dex +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/framepayments/reactnativeframe/FrameOnboardingActivity.dex +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/framepayments/reactnativeframe/FrameRNTheme.dex +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/framepayments/reactnativeframe/FrameSDKModule$Companion.dex +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/framepayments/reactnativeframe/FrameSDKModule.dex +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/framepayments/reactnativeframe/FrameSDKPackage.dex +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/framepayments/reactnativeframe/JsonConvertersKt.dex +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_global-synthetics/com/framepayments/reactnativeframe/FrameCheckoutActivity$$InternalSyntheticLambda$2$28045340ca5b91151bb937065eeb5817c0f8f911bb460e6e7ed8bb228b67ee83$0.globals +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_global-synthetics/com/framepayments/reactnativeframe/FrameFlowActivity$$InternalSyntheticLambda$2$467cdf1dabffeaa07b76e313efb66791f50d3ff264e427e91d1358ac5865a7a9$0.globals +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_global-synthetics/com/framepayments/reactnativeframe/FrameFlowActivity$$InternalSyntheticLambda$2$d15cc37cc08a853958a9c0baad49f7fce1ef84e92db9baa5103646939a0fe3e5$0.globals +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_global-synthetics/com/framepayments/reactnativeframe/FrameFlowActivity$$InternalSyntheticLambda$2$ee6ef8e6758d1b8e67a54e3fecfb200ac5e867541a69809ec1db49f74ffcada1$0.globals +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_global-synthetics/com/framepayments/reactnativeframe/FrameGooglePayActivity$$InternalSyntheticLambda$2$46cecf303f126f7c9f20b615fc49b2714ec2eb4f046ae009cfdbce53a1759f18$0.globals +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_global-synthetics/com/framepayments/reactnativeframe/FrameGooglePayActivity$$InternalSyntheticLambda$2$46cecf303f126f7c9f20b615fc49b2714ec2eb4f046ae009cfdbce53a1759f18$1.globals +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_global-synthetics/com/framepayments/reactnativeframe/FrameGooglePayActivity$$InternalSyntheticLambda$2$46cecf303f126f7c9f20b615fc49b2714ec2eb4f046ae009cfdbce53a1759f18$2.globals +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_global-synthetics/com/framepayments/reactnativeframe/FrameGooglePayActivity$$InternalSyntheticLambda$2$cdad629ad452b3c7f7de1310d225629dafa75285ad515d55f056371066170154$0.globals +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_global-synthetics/com/framepayments/reactnativeframe/FrameOnboardingActivity$$InternalSyntheticLambda$2$5d91d018c63f48735ba5e2a00b14bd815f4ce248aa924e4a58bf6addce311837$0.globals +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_global-synthetics/com/framepayments/reactnativeframe/FrameOnboardingActivity$$InternalSyntheticLambda$2$a4dd99e5b5b34786859d11aae1863eaa7753520ea4b5243c4aeed484af64827d$0.globals +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_global-synthetics/com/framepayments/reactnativeframe/FrameOnboardingActivity$$InternalSyntheticLambda$2$f31e67c97c5bd233cb84a797fa0614f3d821bde331844034e2012a0c5cb2cc1d$0.globals +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_global-synthetics/com/framepayments/reactnativeframe/FrameSDKModule$$InternalSyntheticLambda$2$1f479ca48bf3a1c66ff65b38aaaef67a97119b29ddce703f8104188682007f0d$0.globals +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_global-synthetics/com/framepayments/reactnativeframe/FrameSDKModule$$InternalSyntheticLambda$2$7347ff5b95d03cf5be9ee5177309c1bf4be5faabda2bbedb79f5f4c91917c2b1$0.globals +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_global-synthetics/com/framepayments/reactnativeframe/FrameSDKModule$$InternalSyntheticLambda$2$7347ff5b95d03cf5be9ee5177309c1bf4be5faabda2bbedb79f5f4c91917c2b1$1.globals +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_global-synthetics/com/framepayments/reactnativeframe/FrameSDKModule$$InternalSyntheticLambda$2$9816d2cb3db63bf5efb3411b62dbb57847dd7ef82f88bae5f375baced7880f11$0.globals +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_global-synthetics/com/framepayments/reactnativeframe/FrameSDKModule$$InternalSyntheticLambda$2$f4a55b70e496f422e1e03998843d62c7208f0229c2d5d080706056e98810c892$0.globals +0 -0
- package/android/build/.transforms/5a2061641b1fc5518a336681809507bc/transformed/bundleLibRuntimeToDirDebug/desugar_graph.bin +0 -0
- package/android/build/generated/source/buildConfig/androidTest/debug/com/framepayments/reactnativeframe/test/BuildConfig.java +0 -10
- package/android/build/generated/source/buildConfig/debug/com/framepayments/reactnativeframe/BuildConfig.java +0 -10
- package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +0 -26
- package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output-metadata.json +0 -18
- package/android/build/intermediates/aar_main_jar/debug/syncDebugLibJars/classes.jar +0 -0
- package/android/build/intermediates/aar_metadata/debug/writeDebugAarMetadata/aar-metadata.properties +0 -6
- package/android/build/intermediates/android_res_source_set_path_map/debug/mapDebugSourceSetPaths/file-map.txt +0 -10
- package/android/build/intermediates/android_res_source_set_path_map/debugAndroidTest/mapDebugAndroidTestSourceSetPaths/file-map.txt +0 -6
- package/android/build/intermediates/annotation_processor_list/debug/javaPreCompileDebug/annotationProcessors.json +0 -1
- package/android/build/intermediates/annotation_processor_list/debugAndroidTest/javaPreCompileDebugAndroidTest/annotationProcessors.json +0 -1
- package/android/build/intermediates/annotation_processor_list/debugUnitTest/javaPreCompileDebugUnitTest/annotationProcessors.json +0 -1
- package/android/build/intermediates/annotations_typedef_file/debug/extractDebugAnnotations/typedefs.txt +0 -0
- package/android/build/intermediates/compile_and_runtime_r_class_jar/debugAndroidTest/processDebugAndroidTestResources/R.jar +0 -0
- package/android/build/intermediates/compile_and_runtime_r_class_jar/debugUnitTest/generateDebugUnitTestStubRFile/R.jar +0 -0
- package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
- package/android/build/intermediates/compile_r_class_jar/debug/generateDebugRFile/R.jar +0 -0
- package/android/build/intermediates/compile_symbol_list/debug/generateDebugRFile/R.txt +0 -2
- package/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +0 -1
- package/android/build/intermediates/incremental/debug/packageDebugResources/merged.dir/values/values.xml +0 -10
- package/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +0 -7
- package/android/build/intermediates/incremental/debug-mergeJavaRes/merge-state +0 -0
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/compile-file-map.properties +0 -1
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values/values.xml +0 -15592
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-af/values-af.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-am/values-am.xml +0 -235
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-ar/values-ar.xml +0 -263
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-as/values-as.xml +0 -232
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-az/values-az.xml +0 -241
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-b+es+419/values-b+es+419.xml +0 -84
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-b+sr+Latn/values-b+sr+Latn.xml +0 -233
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-be/values-be.xml +0 -241
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-bg/values-bg.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-bn/values-bn.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-bs/values-bs.xml +0 -235
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-ca/values-ca.xml +0 -234
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-cs/values-cs.xml +0 -261
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-da/values-da.xml +0 -256
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-de/values-de.xml +0 -261
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-el/values-el.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-en-rAU/values-en-rAU.xml +0 -137
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-en-rCA/values-en-rCA.xml +0 -137
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-en-rGB/values-en-rGB.xml +0 -244
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-en-rIN/values-en-rIN.xml +0 -137
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-en-rSG/values-en-rSG.xml +0 -5
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-en-rXC/values-en-rXC.xml +0 -134
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-es/values-es.xml +0 -264
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-es-rES/values-es-rES.xml +0 -28
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-es-rUS/values-es-rUS.xml +0 -234
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-et/values-et.xml +0 -258
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-eu/values-eu.xml +0 -234
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-fa/values-fa.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-fi/values-fi.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-fil/values-fil.xml +0 -5
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-fr/values-fr.xml +0 -262
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-fr-rCA/values-fr-rCA.xml +0 -257
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-gl/values-gl.xml +0 -234
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-gu/values-gu.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-h320dp-port-v13/values-h320dp-port-v13.xml +0 -4
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-h360dp-land-v13/values-h360dp-land-v13.xml +0 -12
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-h480dp-land-v13/values-h480dp-land-v13.xml +0 -12
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-h550dp-port-v13/values-h550dp-port-v13.xml +0 -4
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-h720dp-v13/values-h720dp-v13.xml +0 -4
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-hdpi-v4/values-hdpi-v4.xml +0 -8
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-hi/values-hi.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-hr/values-hr.xml +0 -260
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-hu/values-hu.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-hy/values-hy.xml +0 -241
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-id/values-id.xml +0 -5
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-in/values-in.xml +0 -234
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-is/values-is.xml +0 -234
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-it/values-it.xml +0 -255
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-iw/values-iw.xml +0 -260
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-ja/values-ja.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-ka/values-ka.xml +0 -258
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-kk/values-kk.xml +0 -241
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-km/values-km.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-kn/values-kn.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-ko/values-ko.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-ky/values-ky.xml +0 -241
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-land/values-land.xml +0 -47
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-large-v4/values-large-v4.xml +0 -16
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-ldltr-v21/values-ldltr-v21.xml +0 -4
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-ldrtl-v17/values-ldrtl-v17.xml +0 -5
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-lo/values-lo.xml +0 -241
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-lt/values-lt.xml +0 -261
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-lv/values-lv.xml +0 -260
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-mk/values-mk.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-ml/values-ml.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-mn/values-mn.xml +0 -241
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-mr/values-mr.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-ms/values-ms.xml +0 -257
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-my/values-my.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-nb/values-nb.xml +0 -234
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-ne/values-ne.xml +0 -241
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-night-v8/values-night-v8.xml +0 -60
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-nl/values-nl.xml +0 -261
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-or/values-or.xml +0 -232
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-pa/values-pa.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-pl/values-pl.xml +0 -258
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-port/values-port.xml +0 -4
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-pt/values-pt.xml +0 -160
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-pt-rBR/values-pt-rBR.xml +0 -234
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-pt-rPT/values-pt-rPT.xml +0 -258
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-ro/values-ro.xml +0 -258
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-ru/values-ru.xml +0 -261
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-si/values-si.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-sk/values-sk.xml +0 -261
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-sl/values-sl.xml +0 -261
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-small-v4/values-small-v4.xml +0 -7
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-sq/values-sq.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-sr/values-sr.xml +0 -260
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-sv/values-sv.xml +0 -258
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-sw/values-sw.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-sw600dp-v13/values-sw600dp-v13.xml +0 -27
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-ta/values-ta.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-te/values-te.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-th/values-th.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-tl/values-tl.xml +0 -234
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-tr/values-tr.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-uk/values-uk.xml +0 -261
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-ur/values-ur.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-uz/values-uz.xml +0 -234
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-v16/values-v16.xml +0 -7
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-v17/values-v17.xml +0 -62
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-v18/values-v18.xml +0 -4
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-v21/values-v21.xml +0 -564
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-v22/values-v22.xml +0 -15
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-v23/values-v23.xml +0 -93
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-v24/values-v24.xml +0 -21
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-v25/values-v25.xml +0 -9
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-v26/values-v26.xml +0 -18
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-v28/values-v28.xml +0 -29
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-v30/values-v30.xml +0 -4
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-v31/values-v31.xml +0 -475
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-v34/values-v34.xml +0 -91
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-vi/values-vi.xml +0 -257
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-w320dp-land-v13/values-w320dp-land-v13.xml +0 -5
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-w360dp-port-v13/values-w360dp-port-v13.xml +0 -11
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-w400dp-port-v13/values-w400dp-port-v13.xml +0 -11
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-w600dp-land-v13/values-w600dp-land-v13.xml +0 -4
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-watch-v20/values-watch-v20.xml +0 -12
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-watch-v21/values-watch-v21.xml +0 -15
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-xlarge-v4/values-xlarge-v4.xml +0 -9
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-zh-rCN/values-zh-rCN.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-zh-rHK/values-zh-rHK.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-zh-rTW/values-zh-rTW.xml +0 -259
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merged.dir/values-zu/values-zu.xml +0 -234
- package/android/build/intermediates/incremental/debugAndroidTest/mergeDebugAndroidTestResources/merger.xml +0 -17053
- package/android/build/intermediates/incremental/mergeDebugAssets/merger.xml +0 -2
- package/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +0 -2
- package/android/build/intermediates/java_res/debug/processDebugJavaRes/out/META-INF/framepayments-react-native_debug.kotlin_module +0 -0
- package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/framepayments/reactnativeframe/BuildConfig.class +0 -0
- package/android/build/intermediates/javac/debugAndroidTest/compileDebugAndroidTestJavaWithJavac/classes/com/framepayments/reactnativeframe/test/BuildConfig.class +0 -0
- package/android/build/intermediates/linked_resources_binary_format/debugAndroidTest/processDebugAndroidTestResources/linked-resources-binary-format.ap_ +0 -0
- package/android/build/intermediates/linked_resources_binary_format/debugAndroidTest/processDebugAndroidTestResources/output-metadata.json +0 -20
- package/android/build/intermediates/local_only_symbol_list/debug/parseDebugLocalResources/R-def.txt +0 -4
- package/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +0 -45
- package/android/build/intermediates/manifest_merge_blame_file/debugAndroidTest/processDebugAndroidTestManifest/manifest-merger-blame-debug-androidTest-report.txt +0 -558
- package/android/build/intermediates/merged_java_res/debug/mergeDebugJavaResource/feature-framepayments-react-native.jar +0 -0
- package/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +0 -26
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-af_values-af.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-am_values-am.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-ar_values-ar.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-as_values-as.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-az_values-az.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-b+es+419_values-b+es+419.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-b+sr+Latn_values-b+sr+Latn.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-be_values-be.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-bg_values-bg.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-bn_values-bn.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-bs_values-bs.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-ca_values-ca.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-cs_values-cs.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-da_values-da.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-de_values-de.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-el_values-el.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-en-rAU_values-en-rAU.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-en-rCA_values-en-rCA.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-en-rGB_values-en-rGB.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-en-rIN_values-en-rIN.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-en-rSG_values-en-rSG.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-en-rXC_values-en-rXC.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-es-rES_values-es-rES.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-es-rUS_values-es-rUS.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-es_values-es.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-et_values-et.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-eu_values-eu.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-fa_values-fa.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-fi_values-fi.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-fil_values-fil.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-fr-rCA_values-fr-rCA.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-fr_values-fr.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-gl_values-gl.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-gu_values-gu.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-h320dp-port-v13_values-h320dp-port-v13.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-h360dp-land-v13_values-h360dp-land-v13.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-h480dp-land-v13_values-h480dp-land-v13.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-h550dp-port-v13_values-h550dp-port-v13.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-h720dp-v13_values-h720dp-v13.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-hdpi-v4_values-hdpi-v4.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-hi_values-hi.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-hr_values-hr.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-hu_values-hu.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-hy_values-hy.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-id_values-id.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-in_values-in.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-is_values-is.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-it_values-it.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-iw_values-iw.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-ja_values-ja.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-ka_values-ka.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-kk_values-kk.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-km_values-km.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-kn_values-kn.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-ko_values-ko.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-ky_values-ky.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-land_values-land.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-large-v4_values-large-v4.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-ldltr-v21_values-ldltr-v21.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-ldrtl-v17_values-ldrtl-v17.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-lo_values-lo.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-lt_values-lt.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-lv_values-lv.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-mk_values-mk.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-ml_values-ml.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-mn_values-mn.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-mr_values-mr.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-ms_values-ms.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-my_values-my.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-nb_values-nb.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-ne_values-ne.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-night-v8_values-night-v8.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-nl_values-nl.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-or_values-or.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-pa_values-pa.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-pl_values-pl.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-port_values-port.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-pt-rBR_values-pt-rBR.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-pt-rPT_values-pt-rPT.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-pt_values-pt.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-ro_values-ro.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-ru_values-ru.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-si_values-si.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-sk_values-sk.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-sl_values-sl.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-small-v4_values-small-v4.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-sq_values-sq.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-sr_values-sr.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-sv_values-sv.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-sw600dp-v13_values-sw600dp-v13.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-sw_values-sw.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-ta_values-ta.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-te_values-te.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-th_values-th.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-tl_values-tl.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-tr_values-tr.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-uk_values-uk.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-ur_values-ur.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-uz_values-uz.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-v16_values-v16.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-v17_values-v17.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-v18_values-v18.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-v21_values-v21.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-v22_values-v22.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-v23_values-v23.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-v24_values-v24.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-v25_values-v25.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-v26_values-v26.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-v28_values-v28.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-v30_values-v30.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-v31_values-v31.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-v34_values-v34.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-vi_values-vi.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-w320dp-land-v13_values-w320dp-land-v13.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-w360dp-port-v13_values-w360dp-port-v13.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-w400dp-port-v13_values-w400dp-port-v13.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-w600dp-land-v13_values-w600dp-land-v13.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-watch-v20_values-watch-v20.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-watch-v21_values-watch-v21.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-xlarge-v4_values-xlarge-v4.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-zh-rCN_values-zh-rCN.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-zh-rHK_values-zh-rHK.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-zh-rTW_values-zh-rTW.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values-zu_values-zu.arsc.flat +0 -0
- package/android/build/intermediates/merged_res/debugAndroidTest/mergeDebugAndroidTestResources/values_values.arsc.flat +0 -0
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/mergeDebugAndroidTestResources.json +0 -20499
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-af.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-am.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-ar.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-as.json +0 -198
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-az.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-b+es+419.json +0 -45
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-b+sr+Latn.json +0 -198
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-be.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-bg.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-bn.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-bs.json +0 -215
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-ca.json +0 -215
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-cs.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-da.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-de.json +0 -249
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-el.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-en-rAU.json +0 -162
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-en-rCA.json +0 -162
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-en-rGB.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-en-rIN.json +0 -162
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-en-rSG.json +0 -26
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-en-rXC.json +0 -145
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-es-rES.json +0 -19
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-es-rUS.json +0 -215
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-es.json +0 -249
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-et.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-eu.json +0 -215
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-fa.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-fi.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-fil.json +0 -26
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-fr-rCA.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-fr.json +0 -249
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-gl.json +0 -215
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-gu.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-h320dp-port-v13.json +0 -19
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-h360dp-land-v13.json +0 -19
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-h480dp-land-v13.json +0 -19
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-h550dp-port-v13.json +0 -19
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-h720dp-v13.json +0 -19
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-hdpi-v4.json +0 -20
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-hi.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-hr.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-hu.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-hy.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-id.json +0 -26
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-in.json +0 -215
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-is.json +0 -215
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-it.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-iw.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-ja.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-ka.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-kk.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-km.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-kn.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-ko.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-ky.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-land.json +0 -38
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-large-v4.json +0 -36
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-ldltr-v21.json +0 -19
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-ldrtl-v17.json +0 -19
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-lo.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-lt.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-lv.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-mk.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-ml.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-mn.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-mr.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-ms.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-my.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-nb.json +0 -215
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-ne.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-night-v8.json +0 -53
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-nl.json +0 -249
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-or.json +0 -198
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-pa.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-pl.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-port.json +0 -19
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-pt-rBR.json +0 -215
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-pt-rPT.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-pt.json +0 -162
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-ro.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-ru.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-si.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-sk.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-sl.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-small-v4.json +0 -19
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-sq.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-sr.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-sv.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-sw.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-sw600dp-v13.json +0 -38
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-ta.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-te.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-th.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-tl.json +0 -215
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-tr.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-uk.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-ur.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-uz.json +0 -215
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-v16.json +0 -20
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-v17.json +0 -20
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-v18.json +0 -19
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-v21.json +0 -66
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-v22.json +0 -20
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-v23.json +0 -95
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-v24.json +0 -38
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-v25.json +0 -20
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-v26.json +0 -20
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-v28.json +0 -47
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-v30.json +0 -19
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-v31.json +0 -20
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-v34.json +0 -19
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-vi.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-w320dp-land-v13.json +0 -19
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-w360dp-port-v13.json +0 -19
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-w400dp-port-v13.json +0 -19
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-w600dp-land-v13.json +0 -19
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-watch-v20.json +0 -20
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-watch-v21.json +0 -20
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-xlarge-v4.json +0 -19
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-zh-rCN.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-zh-rHK.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-zh-rTW.json +0 -232
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values-zu.json +0 -215
- package/android/build/intermediates/merged_res_blame_folder/debugAndroidTest/mergeDebugAndroidTestResources/out/multi-v2/values.json +0 -824
- package/android/build/intermediates/navigation_json/debug/extractDeepLinksDebug/navigation.json +0 -1
- package/android/build/intermediates/nested_resources_validation_report/debug/generateDebugResources/nestedResourcesValidationReport.txt +0 -1
- package/android/build/intermediates/nested_resources_validation_report/debugAndroidTest/generateDebugAndroidTestResources/nestedResourcesValidationReport.txt +0 -1
- package/android/build/intermediates/packaged_manifests/debugAndroidTest/processDebugAndroidTestManifest/AndroidManifest.xml +0 -292
- package/android/build/intermediates/packaged_manifests/debugAndroidTest/processDebugAndroidTestManifest/output-metadata.json +0 -18
- package/android/build/intermediates/packaged_res/debug/packageDebugResources/values/values.xml +0 -10
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/META-INF/framepayments-react-native_debug.kotlin_module +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/framepayments/reactnativeframe/BuildConfig.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/framepayments/reactnativeframe/FrameCheckoutActivity$Companion.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/framepayments/reactnativeframe/FrameCheckoutActivity$tryShowCheckout$1.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/framepayments/reactnativeframe/FrameCheckoutActivity.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/framepayments/reactnativeframe/FrameFlowActivity$CartItemDto.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/framepayments/reactnativeframe/FrameFlowActivity$Companion.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/framepayments/reactnativeframe/FrameFlowActivity$parseCartItems$type$1.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/framepayments/reactnativeframe/FrameFlowActivity.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/framepayments/reactnativeframe/FrameGooglePayActivity$Companion.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/framepayments/reactnativeframe/FrameGooglePayActivity.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/framepayments/reactnativeframe/FrameOnboardingActivity$Companion.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/framepayments/reactnativeframe/FrameOnboardingActivity$parseCapabilities$type$1.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/framepayments/reactnativeframe/FrameOnboardingActivity.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/framepayments/reactnativeframe/FrameRNTheme.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/framepayments/reactnativeframe/FrameSDKModule$Companion.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/framepayments/reactnativeframe/FrameSDKModule.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/framepayments/reactnativeframe/FrameSDKPackage.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/framepayments/reactnativeframe/JsonConvertersKt.class +0 -0
- package/android/build/intermediates/runtime_symbol_list/debugAndroidTest/processDebugAndroidTestResources/R.txt +0 -8219
- package/android/build/intermediates/stable_resource_ids_file/debugAndroidTest/processDebugAndroidTestResources/stableIds.txt +0 -6584
- package/android/build/intermediates/symbol_list_with_package_name/debug/generateDebugRFile/package-aware-r.txt +0 -3
- package/android/build/intermediates/symbol_list_with_package_name/debugAndroidTest/processDebugAndroidTestResources/package-aware-r.txt +0 -6168
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.values.at +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.keystream +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.keystream.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.values.at +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab_i +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab_i.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.at +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.values.at +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.values.at +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/counters.tab +0 -2
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.values.at +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.values.at +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.at +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i.len +0 -0
- package/android/build/kotlin/compileDebugKotlin/cacheable/last-build.bin +0 -0
- package/android/build/kotlin/compileDebugKotlin/classpath-snapshot/shrunk-classpath-snapshot.bin +0 -0
- package/android/build/outputs/aar/framepayments-react-native-debug.aar +0 -0
- package/android/build/outputs/logs/manifest-merger-debug-report.txt +0 -51
- package/android/build/tmp/compileDebugAndroidTestJavaWithJavac/previous-compilation-data.bin +0 -0
- package/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
- package/android/build/tmp/kotlin-classes/debug/META-INF/framepayments-react-native_debug.kotlin_module +0 -0
- package/android/build/tmp/kotlin-classes/debug/com/framepayments/reactnativeframe/FrameCheckoutActivity$Companion.class +0 -0
- package/android/build/tmp/kotlin-classes/debug/com/framepayments/reactnativeframe/FrameCheckoutActivity$tryShowCheckout$1.class +0 -0
- package/android/build/tmp/kotlin-classes/debug/com/framepayments/reactnativeframe/FrameCheckoutActivity.class +0 -0
- package/android/build/tmp/kotlin-classes/debug/com/framepayments/reactnativeframe/FrameFlowActivity$CartItemDto.class +0 -0
- package/android/build/tmp/kotlin-classes/debug/com/framepayments/reactnativeframe/FrameFlowActivity$Companion.class +0 -0
- package/android/build/tmp/kotlin-classes/debug/com/framepayments/reactnativeframe/FrameFlowActivity$parseCartItems$type$1.class +0 -0
- package/android/build/tmp/kotlin-classes/debug/com/framepayments/reactnativeframe/FrameFlowActivity.class +0 -0
- package/android/build/tmp/kotlin-classes/debug/com/framepayments/reactnativeframe/FrameGooglePayActivity$Companion.class +0 -0
- package/android/build/tmp/kotlin-classes/debug/com/framepayments/reactnativeframe/FrameGooglePayActivity.class +0 -0
- package/android/build/tmp/kotlin-classes/debug/com/framepayments/reactnativeframe/FrameOnboardingActivity$Companion.class +0 -0
- package/android/build/tmp/kotlin-classes/debug/com/framepayments/reactnativeframe/FrameOnboardingActivity$parseCapabilities$type$1.class +0 -0
- package/android/build/tmp/kotlin-classes/debug/com/framepayments/reactnativeframe/FrameOnboardingActivity.class +0 -0
- package/android/build/tmp/kotlin-classes/debug/com/framepayments/reactnativeframe/FrameRNTheme.class +0 -0
- package/android/build/tmp/kotlin-classes/debug/com/framepayments/reactnativeframe/FrameSDKModule$Companion.class +0 -0
- package/android/build/tmp/kotlin-classes/debug/com/framepayments/reactnativeframe/FrameSDKModule.class +0 -0
- package/android/build/tmp/kotlin-classes/debug/com/framepayments/reactnativeframe/FrameSDKPackage.class +0 -0
- package/android/build/tmp/kotlin-classes/debug/com/framepayments/reactnativeframe/JsonConvertersKt.class +0 -0
- package/android/src/main/java/com/framepayments/reactnativeframe/FrameCheckoutActivity.kt +0 -104
- package/android/src/main/java/com/framepayments/reactnativeframe/FrameFlowActivity.kt +0 -106
- package/android/src/main/java/com/framepayments/reactnativeframe/FrameGooglePayActivity.kt +0 -168
- package/android/src/main/java/com/framepayments/reactnativeframe/FrameOnboardingActivity.kt +0 -73
- package/android/src/main/java/com/framepayments/reactnativeframe/FrameRNTheme.kt +0 -138
- package/android/src/main/res/values/frame_styles.xml +0 -15
- package/ios/ApplePayPresenter.swift +0 -177
- package/ios/FramePreloader.h +0 -23
- package/ios/FramePreloader.swift +0 -28
- package/ios/FrameRNTheme.swift +0 -98
- package/ios/FrameVCHelper.h +0 -12
- package/ios/FrameVCHelper.m +0 -11
- package/src/__tests__/native.test.ts +0 -327
- package/src/errors.ts +0 -61
- package/src/index.ts +0 -60
- package/src/native.ts +0 -229
- package/src/types.ts +0 -193
package/lib/applePay.js
ADDED
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
import { NativeModules, Platform } from 'react-native';
|
|
2
|
+
import { client } from './client';
|
|
3
|
+
import { ErrorCodes, frameError } from './errors';
|
|
4
|
+
import { ensureAttested, generateAssertionForPayment } from './attestation';
|
|
5
|
+
import { getApplePayMerchantId } from './config';
|
|
6
|
+
const LINKING_ERROR = "The native module 'FrameApplePay' isn't linked. Run `pod install` and rebuild the app.";
|
|
7
|
+
const FrameApplePay = NativeModules.FrameApplePay
|
|
8
|
+
? NativeModules.FrameApplePay
|
|
9
|
+
: new Proxy({}, {
|
|
10
|
+
get() {
|
|
11
|
+
throw new Error(LINKING_ERROR);
|
|
12
|
+
},
|
|
13
|
+
});
|
|
14
|
+
// Apple's standard set of supported networks for in-app payment requests. Mirrors
|
|
15
|
+
// `ApplePayPresenter.swift` in the legacy Frame iOS bridge.
|
|
16
|
+
const DEFAULT_SUPPORTED_NETWORKS = ['visa', 'masterCard', 'amex', 'discover', 'JCB'];
|
|
17
|
+
export async function canMakeApplePay() {
|
|
18
|
+
if (Platform.OS !== 'ios')
|
|
19
|
+
return false;
|
|
20
|
+
return FrameApplePay.canMakeApplePay();
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Apple Pay token-out flow.
|
|
24
|
+
* 1. Ensure the device is attested (App Attest).
|
|
25
|
+
* 2. Present the PKPaymentAuthorizationController sheet via the bridge.
|
|
26
|
+
* 3. Generate a device assertion bound to the payment token.
|
|
27
|
+
* 4. Create the Apple Pay payment method via frame-node (publishable key).
|
|
28
|
+
* 5. Create a ChargeIntent (customer owner) or Transfer (account owner).
|
|
29
|
+
* 6. Settle the still-open Apple Pay sheet — success on success, failure on
|
|
30
|
+
* any exception — so the spinner-stays-up UX matches the native flow.
|
|
31
|
+
*/
|
|
32
|
+
export async function presentApplePayFlow(options) {
|
|
33
|
+
if (Platform.OS !== 'ios') {
|
|
34
|
+
throw frameError(ErrorCodes.PLATFORM_UNSUPPORTED, 'Frame.presentApplePay is iOS-only; use presentGooglePay on Android.');
|
|
35
|
+
}
|
|
36
|
+
validateOwner(options.owner);
|
|
37
|
+
const merchantId = getApplePayMerchantId();
|
|
38
|
+
if (!merchantId) {
|
|
39
|
+
throw frameError(ErrorCodes.INVALID_MERCHANT_ID, 'No Apple Pay merchant ID configured. Pass `applePayMerchantId` to Frame.initialize(...).');
|
|
40
|
+
}
|
|
41
|
+
await ensureAttested();
|
|
42
|
+
const sheetResponse = await FrameApplePay.presentApplePay({
|
|
43
|
+
amount: options.amount,
|
|
44
|
+
currency: options.currency ?? 'usd',
|
|
45
|
+
applePayMerchantId: merchantId,
|
|
46
|
+
supportedNetworks: DEFAULT_SUPPORTED_NETWORKS,
|
|
47
|
+
});
|
|
48
|
+
try {
|
|
49
|
+
const id = await createPaymentMethodAndCharge(options, sheetResponse);
|
|
50
|
+
// Settle through the safe wrapper too: if the native sheet already
|
|
51
|
+
// dismissed itself (background/foreground race), we still need to
|
|
52
|
+
// return the successful id — not blow up the payment that succeeded.
|
|
53
|
+
await safeFinishApplePay('success');
|
|
54
|
+
return id;
|
|
55
|
+
}
|
|
56
|
+
catch (err) {
|
|
57
|
+
await safeFinishApplePay('failure');
|
|
58
|
+
throw err;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Apple Pay "add to owner" flow. Presents the sheet, attests the device,
|
|
63
|
+
* creates a tokenized Apple Pay payment method via frame-node, then settles
|
|
64
|
+
* the sheet — but does NOT create a ChargeIntent or Transfer. Used by the
|
|
65
|
+
* onboarding AddPaymentMethod screen so the host app can collect a saved
|
|
66
|
+
* Apple Pay token for the account / customer.
|
|
67
|
+
*
|
|
68
|
+
* The presented sheet renders a $1.00 placeholder line item because Apple
|
|
69
|
+
* Pay requires a non-zero amount to draw the authorization UI. The amount
|
|
70
|
+
* is never charged.
|
|
71
|
+
*/
|
|
72
|
+
export async function addApplePayToOwnerFlow(options) {
|
|
73
|
+
if (Platform.OS !== 'ios') {
|
|
74
|
+
throw frameError(ErrorCodes.PLATFORM_UNSUPPORTED, 'Frame Apple Pay add-to-owner is iOS-only.');
|
|
75
|
+
}
|
|
76
|
+
validateOwner(options.owner);
|
|
77
|
+
const merchantId = getApplePayMerchantId();
|
|
78
|
+
if (!merchantId) {
|
|
79
|
+
throw frameError(ErrorCodes.INVALID_MERCHANT_ID, 'No Apple Pay merchant ID configured. Pass `applePayMerchantId` to Frame.initialize(...).');
|
|
80
|
+
}
|
|
81
|
+
await ensureAttested();
|
|
82
|
+
const currency = options.currency ?? 'usd';
|
|
83
|
+
// Apple Pay needs a non-zero amount on the request to draw the sheet. We
|
|
84
|
+
// use $1.00 (100 cents) — it's a label only, no charge is created.
|
|
85
|
+
const sheetResponse = await FrameApplePay.presentApplePay({
|
|
86
|
+
amount: 100,
|
|
87
|
+
currency,
|
|
88
|
+
applePayMerchantId: merchantId,
|
|
89
|
+
supportedNetworks: DEFAULT_SUPPORTED_NETWORKS,
|
|
90
|
+
});
|
|
91
|
+
try {
|
|
92
|
+
const wallet = await buildAppleWalletEnvelope(sheetResponse);
|
|
93
|
+
const params = options.owner.type === 'customer'
|
|
94
|
+
? { type: 'card', customer: options.owner.id, _wallet: wallet }
|
|
95
|
+
: { type: 'card', account: options.owner.id, _wallet: wallet };
|
|
96
|
+
const pm = await client.sdk.paymentMethods.createApplePayPaymentMethod(params, {
|
|
97
|
+
usePublishableKey: true,
|
|
98
|
+
});
|
|
99
|
+
if (!pm || typeof pm.id !== 'string') {
|
|
100
|
+
throw frameError(ErrorCodes.PAYMENT_METHOD_FAILED, 'Frame returned no payment method id.');
|
|
101
|
+
}
|
|
102
|
+
await safeFinishApplePay('success');
|
|
103
|
+
return pm.id;
|
|
104
|
+
}
|
|
105
|
+
catch (err) {
|
|
106
|
+
await safeFinishApplePay('failure');
|
|
107
|
+
throw err;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
async function buildAppleWalletEnvelope(sheetResponse) {
|
|
111
|
+
const paymentDataBytes = base64ToBytes(sheetResponse.token.paymentData);
|
|
112
|
+
const assertion = await generateAssertionForPayment(paymentDataBytes);
|
|
113
|
+
const paymentData = parsePaymentDataJson(sheetResponse.token.paymentData);
|
|
114
|
+
return {
|
|
115
|
+
type: 'apple_pay',
|
|
116
|
+
apple_pay: {
|
|
117
|
+
requestId: cryptoRandomUUID(),
|
|
118
|
+
methodName: 'https://apple.com/apple-pay',
|
|
119
|
+
payerName: sheetResponse.payerName,
|
|
120
|
+
payerEmail: sheetResponse.payerEmail,
|
|
121
|
+
details: {
|
|
122
|
+
token: {
|
|
123
|
+
paymentData,
|
|
124
|
+
paymentMethod: sheetResponse.token.paymentMethod,
|
|
125
|
+
transactionIdentifier: sheetResponse.token.transactionIdentifier,
|
|
126
|
+
},
|
|
127
|
+
billingContact: sheetResponse.billingContact,
|
|
128
|
+
},
|
|
129
|
+
device_key_id: assertion.keyId,
|
|
130
|
+
device_assertion: assertion.assertion,
|
|
131
|
+
device_client_data: assertion.clientData,
|
|
132
|
+
},
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
async function createPaymentMethodAndCharge(options, sheetResponse) {
|
|
136
|
+
const paymentDataBytes = base64ToBytes(sheetResponse.token.paymentData);
|
|
137
|
+
const assertion = await generateAssertionForPayment(paymentDataBytes);
|
|
138
|
+
const paymentData = parsePaymentDataJson(sheetResponse.token.paymentData);
|
|
139
|
+
const currency = options.currency ?? 'usd';
|
|
140
|
+
const owner = options.owner;
|
|
141
|
+
const wallet = {
|
|
142
|
+
type: 'apple_pay',
|
|
143
|
+
apple_pay: {
|
|
144
|
+
requestId: cryptoRandomUUID(),
|
|
145
|
+
methodName: 'https://apple.com/apple-pay',
|
|
146
|
+
payerName: sheetResponse.payerName,
|
|
147
|
+
payerEmail: sheetResponse.payerEmail,
|
|
148
|
+
details: {
|
|
149
|
+
token: {
|
|
150
|
+
paymentData,
|
|
151
|
+
paymentMethod: sheetResponse.token.paymentMethod,
|
|
152
|
+
transactionIdentifier: sheetResponse.token.transactionIdentifier,
|
|
153
|
+
},
|
|
154
|
+
billingContact: sheetResponse.billingContact,
|
|
155
|
+
},
|
|
156
|
+
device_key_id: assertion.keyId,
|
|
157
|
+
device_assertion: assertion.assertion,
|
|
158
|
+
device_client_data: assertion.clientData,
|
|
159
|
+
},
|
|
160
|
+
};
|
|
161
|
+
if (owner.type === 'customer') {
|
|
162
|
+
const pm = await client.sdk.paymentMethods.createApplePayPaymentMethod({ type: 'card', customer: owner.id, _wallet: wallet }, { usePublishableKey: true });
|
|
163
|
+
const intent = await client.sdk.chargeIntents.create({
|
|
164
|
+
amount: options.amount,
|
|
165
|
+
currency,
|
|
166
|
+
customer: owner.id,
|
|
167
|
+
payment_method: pm.id,
|
|
168
|
+
confirm: true,
|
|
169
|
+
});
|
|
170
|
+
if (!intent || typeof intent.id !== 'string') {
|
|
171
|
+
throw frameError(ErrorCodes.PAYMENT_FAILED, 'Frame returned no ChargeIntent id.');
|
|
172
|
+
}
|
|
173
|
+
return intent.id;
|
|
174
|
+
}
|
|
175
|
+
const pm = await client.sdk.paymentMethods.createApplePayPaymentMethod({ type: 'card', account: owner.id, _wallet: wallet }, { usePublishableKey: true });
|
|
176
|
+
const transfer = await client.sdk.transfers.create({
|
|
177
|
+
amount: options.amount,
|
|
178
|
+
account_id: owner.id,
|
|
179
|
+
currency,
|
|
180
|
+
source_payment_method_id: pm.id,
|
|
181
|
+
});
|
|
182
|
+
if (!transfer || typeof transfer.id !== 'string') {
|
|
183
|
+
throw frameError(ErrorCodes.PAYMENT_FAILED, 'Frame returned no Transfer id.');
|
|
184
|
+
}
|
|
185
|
+
return transfer.id;
|
|
186
|
+
}
|
|
187
|
+
async function safeFinishApplePay(status) {
|
|
188
|
+
try {
|
|
189
|
+
await FrameApplePay.finishApplePay(status);
|
|
190
|
+
}
|
|
191
|
+
catch {
|
|
192
|
+
// The sheet may have closed already on the native side (e.g. user
|
|
193
|
+
// backgrounded the app). Best-effort cleanup.
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
function validateOwner(owner) {
|
|
197
|
+
if (!owner || (owner.type !== 'customer' && owner.type !== 'account')) {
|
|
198
|
+
throw frameError(ErrorCodes.INVALID_OWNER, 'presentApplePay requires owner: { type: "customer" | "account", id: string }');
|
|
199
|
+
}
|
|
200
|
+
if (!owner.id) {
|
|
201
|
+
throw frameError(ErrorCodes.INVALID_OWNER, 'presentApplePay requires owner.id');
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
// PKPaymentToken.paymentData is a JSON dict that PassKit produces. We parse it
|
|
205
|
+
// here so frame-node receives the wallet envelope's nested shape exactly the
|
|
206
|
+
// way Frame's backend expects (per ApplePayRequests.swift).
|
|
207
|
+
function parsePaymentDataJson(base64) {
|
|
208
|
+
const json = atobUtf8(base64);
|
|
209
|
+
return JSON.parse(json);
|
|
210
|
+
}
|
|
211
|
+
function atobUtf8(b64) {
|
|
212
|
+
return globalThis.atob ? globalThis.atob(b64) : Buffer.from(b64, 'base64').toString('utf-8');
|
|
213
|
+
}
|
|
214
|
+
function base64ToBytes(b64) {
|
|
215
|
+
const binary = globalThis.atob ? globalThis.atob(b64) : Buffer.from(b64, 'base64').toString('binary');
|
|
216
|
+
const out = new Uint8Array(binary.length);
|
|
217
|
+
for (let i = 0; i < binary.length; i++)
|
|
218
|
+
out[i] = binary.charCodeAt(i);
|
|
219
|
+
return out;
|
|
220
|
+
}
|
|
221
|
+
function cryptoRandomUUID() {
|
|
222
|
+
const g = globalThis;
|
|
223
|
+
if (typeof g === 'object' &&
|
|
224
|
+
g !== null &&
|
|
225
|
+
'crypto' in g &&
|
|
226
|
+
typeof g.crypto?.randomUUID === 'function') {
|
|
227
|
+
return g.crypto.randomUUID();
|
|
228
|
+
}
|
|
229
|
+
// RFC4122 v4 fallback.
|
|
230
|
+
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c) => {
|
|
231
|
+
const r = (Math.random() * 16) | 0;
|
|
232
|
+
const v = c === 'x' ? r : (r & 0x3) | 0x8;
|
|
233
|
+
return v.toString(16);
|
|
234
|
+
});
|
|
235
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns the attested key id stored in the Keychain, or null if the device
|
|
3
|
+
* hasn't been attested. Returns null on Android — parity with
|
|
4
|
+
* `isAttestationSupported()` which also degrades silently.
|
|
5
|
+
*/
|
|
6
|
+
export declare function getAttestedKeyId(): Promise<string | null>;
|
|
7
|
+
/**
|
|
8
|
+
* Returns true if the device supports App Attest. False on simulator, on iOS
|
|
9
|
+
* < 14, and always on Android.
|
|
10
|
+
*/
|
|
11
|
+
export declare function isAttestationSupported(): Promise<boolean>;
|
|
12
|
+
/**
|
|
13
|
+
* Full device attestation flow — mirrors `DeviceAttestationManager.attestDevice()`:
|
|
14
|
+
* 1. Reuse existing attested key if present.
|
|
15
|
+
* 2. Generate a key in the Secure Enclave (persisted as "pending").
|
|
16
|
+
* 3. Fetch a challenge from Frame.
|
|
17
|
+
* 4. SHA-256 the challenge as clientDataHash; attest via App Attest.
|
|
18
|
+
* 5. Submit the attestation object to Frame.
|
|
19
|
+
* 6. Promote the pending key to attested.
|
|
20
|
+
*
|
|
21
|
+
* Concurrent callers share a single in-flight promise so two parallel call
|
|
22
|
+
* sites don't each burn a fresh Secure Enclave key.
|
|
23
|
+
*/
|
|
24
|
+
export declare function ensureAttested(): Promise<string>;
|
|
25
|
+
/**
|
|
26
|
+
* Generates an assertion bound to `paymentData`. Mirrors iOS
|
|
27
|
+
* `generateAssertionForPayment` — wraps the payment payload into a clientData
|
|
28
|
+
* JSON, SHA-256 hashes it, calls App Attest, and returns all three fields
|
|
29
|
+
* base64-encoded so the caller can embed them in the Apple Pay payment-method
|
|
30
|
+
* request.
|
|
31
|
+
*
|
|
32
|
+
* The returned `clientData` is the exact bytes the SHA-256 was computed over.
|
|
33
|
+
* Frame's backend must re-hash the submitted `clientData` (rather than parse +
|
|
34
|
+
* re-serialize as JSON) to verify the assertion — that's how Apple specifies
|
|
35
|
+
* App Attest assertions work. Each platform is self-consistent; the byte
|
|
36
|
+
* sequence across iOS and RN is not guaranteed to match (iOS uses
|
|
37
|
+
* `JSONSerialization`, RN uses `JSON.stringify`) and does not need to.
|
|
38
|
+
*/
|
|
39
|
+
export declare function generateAssertionForPayment(paymentData: Uint8Array): Promise<{
|
|
40
|
+
keyId: string;
|
|
41
|
+
assertion: string;
|
|
42
|
+
clientData: string;
|
|
43
|
+
}>;
|
|
44
|
+
/** Clears the attested key id so the next `ensureAttested()` runs a fresh flow. */
|
|
45
|
+
export declare function resetAttestation(): Promise<void>;
|
|
46
|
+
/** @internal Resets the in-flight ensureAttested promise. Used by tests. */
|
|
47
|
+
export declare function __resetEnsureAttestedInflight(): void;
|
|
48
|
+
//# sourceMappingURL=attestation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attestation.d.ts","sourceRoot":"","sources":["../src/attestation.ts"],"names":[],"mappings":"AAwCA;;;;GAIG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAG/D;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,OAAO,CAAC,CAG/D;AAID;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,CAMhD;AA4ED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,2BAA2B,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO,CAAC;IAClF,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC,CA8BD;AAED,mFAAmF;AACnF,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAGtD;AAwDD,4EAA4E;AAC5E,wBAAgB,6BAA6B,IAAI,IAAI,CAEpD"}
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
import { NativeModules, Platform } from 'react-native';
|
|
2
|
+
import { sha256 } from 'js-sha256';
|
|
3
|
+
import { client } from './client';
|
|
4
|
+
import { ErrorCodes, frameError } from './errors';
|
|
5
|
+
const LINKING_ERROR = "The native module 'FrameAttestation' isn't linked. " +
|
|
6
|
+
'Make sure you have run `pod install` and rebuilt the app.';
|
|
7
|
+
const FrameAttestation = NativeModules.FrameAttestation
|
|
8
|
+
? NativeModules.FrameAttestation
|
|
9
|
+
: new Proxy({}, {
|
|
10
|
+
get() {
|
|
11
|
+
throw new Error(LINKING_ERROR);
|
|
12
|
+
},
|
|
13
|
+
});
|
|
14
|
+
function guardIos() {
|
|
15
|
+
if (Platform.OS !== 'ios') {
|
|
16
|
+
throw frameError('PLATFORM_UNSUPPORTED', 'Device attestation is iOS-only (Apple App Attest). Android has no equivalent in this SDK.');
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Returns the attested key id stored in the Keychain, or null if the device
|
|
21
|
+
* hasn't been attested. Returns null on Android — parity with
|
|
22
|
+
* `isAttestationSupported()` which also degrades silently.
|
|
23
|
+
*/
|
|
24
|
+
export async function getAttestedKeyId() {
|
|
25
|
+
if (Platform.OS !== 'ios')
|
|
26
|
+
return null;
|
|
27
|
+
return FrameAttestation.attestedKeyId();
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Returns true if the device supports App Attest. False on simulator, on iOS
|
|
31
|
+
* < 14, and always on Android.
|
|
32
|
+
*/
|
|
33
|
+
export async function isAttestationSupported() {
|
|
34
|
+
if (Platform.OS !== 'ios')
|
|
35
|
+
return false;
|
|
36
|
+
return FrameAttestation.isSupported();
|
|
37
|
+
}
|
|
38
|
+
let inflightEnsureAttested = null;
|
|
39
|
+
/**
|
|
40
|
+
* Full device attestation flow — mirrors `DeviceAttestationManager.attestDevice()`:
|
|
41
|
+
* 1. Reuse existing attested key if present.
|
|
42
|
+
* 2. Generate a key in the Secure Enclave (persisted as "pending").
|
|
43
|
+
* 3. Fetch a challenge from Frame.
|
|
44
|
+
* 4. SHA-256 the challenge as clientDataHash; attest via App Attest.
|
|
45
|
+
* 5. Submit the attestation object to Frame.
|
|
46
|
+
* 6. Promote the pending key to attested.
|
|
47
|
+
*
|
|
48
|
+
* Concurrent callers share a single in-flight promise so two parallel call
|
|
49
|
+
* sites don't each burn a fresh Secure Enclave key.
|
|
50
|
+
*/
|
|
51
|
+
export function ensureAttested() {
|
|
52
|
+
if (inflightEnsureAttested)
|
|
53
|
+
return inflightEnsureAttested;
|
|
54
|
+
inflightEnsureAttested = runEnsureAttested().finally(() => {
|
|
55
|
+
inflightEnsureAttested = null;
|
|
56
|
+
});
|
|
57
|
+
return inflightEnsureAttested;
|
|
58
|
+
}
|
|
59
|
+
async function runEnsureAttested() {
|
|
60
|
+
guardIos();
|
|
61
|
+
const existing = await FrameAttestation.attestedKeyId();
|
|
62
|
+
if (existing)
|
|
63
|
+
return existing;
|
|
64
|
+
if (!(await FrameAttestation.isSupported())) {
|
|
65
|
+
throw frameError(ErrorCodes.NOT_ATTESTED, 'App Attest is not supported on this device (iOS 14+ on a real device required).');
|
|
66
|
+
}
|
|
67
|
+
const keyId = await wrapped('generateKey', () => FrameAttestation.generateKey());
|
|
68
|
+
let challenge;
|
|
69
|
+
try {
|
|
70
|
+
const challengeResponse = await client.sdk.deviceAttestation.getChallenge({ usePublishableKey: true });
|
|
71
|
+
challenge = challengeResponse.challenge ?? '';
|
|
72
|
+
if (!challenge) {
|
|
73
|
+
throw frameError(ErrorCodes.ATTESTATION_FAILED, 'Frame backend returned no attestation challenge.');
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
catch (err) {
|
|
77
|
+
await safeClearPending();
|
|
78
|
+
if (err.code === ErrorCodes.ATTESTATION_FAILED)
|
|
79
|
+
throw err;
|
|
80
|
+
throw frameError(ErrorCodes.ATTESTATION_FAILED, `Device attestation challenge failed: ${err instanceof Error ? err.message : String(err)}`);
|
|
81
|
+
}
|
|
82
|
+
const clientDataHash = sha256Base64(base64ToBytes(challenge));
|
|
83
|
+
let attestationObject;
|
|
84
|
+
try {
|
|
85
|
+
attestationObject = await FrameAttestation.attestKey(keyId, clientDataHash);
|
|
86
|
+
}
|
|
87
|
+
catch (err) {
|
|
88
|
+
// attestKey is single-use per key; the Swift bridge already cleans up
|
|
89
|
+
// the pending entry on failure.
|
|
90
|
+
throw frameError(ErrorCodes.ATTESTATION_FAILED, `App Attest attestKey failed: ${err instanceof Error ? err.message : String(err)}`);
|
|
91
|
+
}
|
|
92
|
+
if (!attestationObject) {
|
|
93
|
+
await safeClearPending();
|
|
94
|
+
throw frameError(ErrorCodes.ATTESTATION_FAILED, 'App Attest returned an empty attestation object.');
|
|
95
|
+
}
|
|
96
|
+
let attestResponse;
|
|
97
|
+
try {
|
|
98
|
+
attestResponse = await client.sdk.deviceAttestation.attest({ key_id: keyId, attestation_object: attestationObject, challenge }, { usePublishableKey: true });
|
|
99
|
+
}
|
|
100
|
+
catch (err) {
|
|
101
|
+
await safeClearPending();
|
|
102
|
+
throw frameError(ErrorCodes.ATTESTATION_FAILED, `Frame backend attest failed: ${err instanceof Error ? err.message : String(err)}`);
|
|
103
|
+
}
|
|
104
|
+
if (attestResponse.status !== 'verified') {
|
|
105
|
+
await safeClearPending();
|
|
106
|
+
throw frameError(ErrorCodes.ATTESTATION_FAILED, `Frame backend rejected attestation (status: ${attestResponse.status}).`);
|
|
107
|
+
}
|
|
108
|
+
await FrameAttestation.promoteKey(keyId);
|
|
109
|
+
return keyId;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Generates an assertion bound to `paymentData`. Mirrors iOS
|
|
113
|
+
* `generateAssertionForPayment` — wraps the payment payload into a clientData
|
|
114
|
+
* JSON, SHA-256 hashes it, calls App Attest, and returns all three fields
|
|
115
|
+
* base64-encoded so the caller can embed them in the Apple Pay payment-method
|
|
116
|
+
* request.
|
|
117
|
+
*
|
|
118
|
+
* The returned `clientData` is the exact bytes the SHA-256 was computed over.
|
|
119
|
+
* Frame's backend must re-hash the submitted `clientData` (rather than parse +
|
|
120
|
+
* re-serialize as JSON) to verify the assertion — that's how Apple specifies
|
|
121
|
+
* App Attest assertions work. Each platform is self-consistent; the byte
|
|
122
|
+
* sequence across iOS and RN is not guaranteed to match (iOS uses
|
|
123
|
+
* `JSONSerialization`, RN uses `JSON.stringify`) and does not need to.
|
|
124
|
+
*/
|
|
125
|
+
export async function generateAssertionForPayment(paymentData) {
|
|
126
|
+
guardIos();
|
|
127
|
+
const keyId = await FrameAttestation.attestedKeyId();
|
|
128
|
+
if (!keyId) {
|
|
129
|
+
throw frameError(ErrorCodes.NOT_ATTESTED, 'No attested key on this device. Call ensureAttested() first.');
|
|
130
|
+
}
|
|
131
|
+
const clientDataJson = JSON.stringify({
|
|
132
|
+
challenge: bytesToBase64(paymentData),
|
|
133
|
+
origin: 'ios-sdk',
|
|
134
|
+
});
|
|
135
|
+
const clientDataBytes = textEncoderEncode(clientDataJson);
|
|
136
|
+
const clientDataHash = sha256Base64(clientDataBytes);
|
|
137
|
+
let assertion;
|
|
138
|
+
try {
|
|
139
|
+
assertion = await FrameAttestation.generateAssertion(keyId, clientDataHash);
|
|
140
|
+
}
|
|
141
|
+
catch (err) {
|
|
142
|
+
throw frameError(ErrorCodes.ATTESTATION_FAILED, `App Attest generateAssertion failed: ${err instanceof Error ? err.message : String(err)}`);
|
|
143
|
+
}
|
|
144
|
+
return {
|
|
145
|
+
keyId,
|
|
146
|
+
assertion,
|
|
147
|
+
clientData: bytesToBase64(clientDataBytes),
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
/** Clears the attested key id so the next `ensureAttested()` runs a fresh flow. */
|
|
151
|
+
export async function resetAttestation() {
|
|
152
|
+
guardIos();
|
|
153
|
+
await FrameAttestation.resetAttestation();
|
|
154
|
+
}
|
|
155
|
+
// ----- helpers -----
|
|
156
|
+
async function wrapped(stage, fn) {
|
|
157
|
+
try {
|
|
158
|
+
return await fn();
|
|
159
|
+
}
|
|
160
|
+
catch (err) {
|
|
161
|
+
throw frameError(ErrorCodes.ATTESTATION_FAILED, `Device attestation ${stage} failed: ${err instanceof Error ? err.message : String(err)}`);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
async function safeClearPending() {
|
|
165
|
+
try {
|
|
166
|
+
await FrameAttestation.clearPendingKey();
|
|
167
|
+
}
|
|
168
|
+
catch {
|
|
169
|
+
// Best-effort cleanup; the next ensureAttested will overwrite the entry.
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
function sha256Base64(bytes) {
|
|
173
|
+
// js-sha256 emits a hex digest by default; convert to bytes then base64.
|
|
174
|
+
const hex = sha256(bytes);
|
|
175
|
+
const out = new Uint8Array(hex.length / 2);
|
|
176
|
+
for (let i = 0; i < out.length; i++) {
|
|
177
|
+
out[i] = parseInt(hex.slice(i * 2, i * 2 + 2), 16);
|
|
178
|
+
}
|
|
179
|
+
return bytesToBase64(out);
|
|
180
|
+
}
|
|
181
|
+
function base64ToBytes(b64) {
|
|
182
|
+
// Hermes ships atob/btoa from RN 0.74+. The Buffer fallback is only hit
|
|
183
|
+
// under Node (jest tests).
|
|
184
|
+
const binary = globalThis.atob ? globalThis.atob(b64) : Buffer.from(b64, 'base64').toString('binary');
|
|
185
|
+
const out = new Uint8Array(binary.length);
|
|
186
|
+
for (let i = 0; i < binary.length; i++)
|
|
187
|
+
out[i] = binary.charCodeAt(i);
|
|
188
|
+
return out;
|
|
189
|
+
}
|
|
190
|
+
function bytesToBase64(bytes) {
|
|
191
|
+
if (globalThis.btoa) {
|
|
192
|
+
let binary = '';
|
|
193
|
+
for (let i = 0; i < bytes.length; i++)
|
|
194
|
+
binary += String.fromCharCode(bytes[i]);
|
|
195
|
+
return globalThis.btoa(binary);
|
|
196
|
+
}
|
|
197
|
+
return Buffer.from(bytes).toString('base64');
|
|
198
|
+
}
|
|
199
|
+
function textEncoderEncode(text) {
|
|
200
|
+
if (typeof TextEncoder !== 'undefined')
|
|
201
|
+
return new TextEncoder().encode(text);
|
|
202
|
+
return new Uint8Array(Buffer.from(text, 'utf-8'));
|
|
203
|
+
}
|
|
204
|
+
/** @internal Resets the in-flight ensureAttested promise. Used by tests. */
|
|
205
|
+
export function __resetEnsureAttestedInflight() {
|
|
206
|
+
inflightEnsureAttested = null;
|
|
207
|
+
}
|
package/lib/camera.d.ts
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export interface CapturedPhoto {
|
|
2
|
+
/** Local file URI for the captured image. Pass to FormData as-is. */
|
|
3
|
+
uri: string;
|
|
4
|
+
/** MIME type, e.g. 'image/jpeg'. */
|
|
5
|
+
type: string;
|
|
6
|
+
/** Suggested file name for multipart upload. */
|
|
7
|
+
name: string;
|
|
8
|
+
}
|
|
9
|
+
interface VisionCameraModule {
|
|
10
|
+
Camera: unknown;
|
|
11
|
+
useCameraDevice?: unknown;
|
|
12
|
+
__version?: string;
|
|
13
|
+
}
|
|
14
|
+
export declare function loadCameraSdk(): VisionCameraModule | null;
|
|
15
|
+
export declare function isCameraAvailable(): boolean;
|
|
16
|
+
export interface CameraPermissionStatus {
|
|
17
|
+
granted: boolean;
|
|
18
|
+
requestable: boolean;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Request camera permission. The wrapper hides the SDK-version-specific
|
|
22
|
+
* permission-request API behind a single function so the screens can stay
|
|
23
|
+
* agnostic. Returns granted=true when the user authorizes, granted=false
|
|
24
|
+
* with requestable=false when the user has permanently denied.
|
|
25
|
+
*/
|
|
26
|
+
export declare function requestCameraPermission(): Promise<CameraPermissionStatus>;
|
|
27
|
+
export declare function __resetCameraSdkCache(): void;
|
|
28
|
+
export {};
|
|
29
|
+
//# sourceMappingURL=camera.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"camera.d.ts","sourceRoot":"","sources":["../src/camera.ts"],"names":[],"mappings":"AAaA,MAAM,WAAW,aAAa;IAC5B,qEAAqE;IACrE,GAAG,EAAE,MAAM,CAAC;IACZ,oCAAoC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,gDAAgD;IAChD,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,kBAAkB;IAE1B,MAAM,EAAE,OAAO,CAAC;IAChB,eAAe,CAAC,EAAE,OAAO,CAAC;IAG1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAID,wBAAgB,aAAa,IAAI,kBAAkB,GAAG,IAAI,CAUzD;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;;;;GAKG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,sBAAsB,CAAC,CAiC/E;AAGD,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C"}
|
package/lib/camera.js
ADDED
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { Platform } from 'react-native';
|
|
2
|
+
import { frameError, ErrorCodes } from './errors';
|
|
3
|
+
let cachedSdk;
|
|
4
|
+
export function loadCameraSdk() {
|
|
5
|
+
if (cachedSdk !== undefined)
|
|
6
|
+
return cachedSdk;
|
|
7
|
+
try {
|
|
8
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
9
|
+
const mod = require('react-native-vision-camera');
|
|
10
|
+
cachedSdk = mod;
|
|
11
|
+
}
|
|
12
|
+
catch {
|
|
13
|
+
cachedSdk = null;
|
|
14
|
+
}
|
|
15
|
+
return cachedSdk;
|
|
16
|
+
}
|
|
17
|
+
export function isCameraAvailable() {
|
|
18
|
+
return loadCameraSdk() !== null;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Request camera permission. The wrapper hides the SDK-version-specific
|
|
22
|
+
* permission-request API behind a single function so the screens can stay
|
|
23
|
+
* agnostic. Returns granted=true when the user authorizes, granted=false
|
|
24
|
+
* with requestable=false when the user has permanently denied.
|
|
25
|
+
*/
|
|
26
|
+
export async function requestCameraPermission() {
|
|
27
|
+
const sdk = loadCameraSdk();
|
|
28
|
+
if (!sdk) {
|
|
29
|
+
throw frameError(ErrorCodes.CAMERA_UNAVAILABLE, 'react-native-vision-camera is not installed. Add it to your peer deps and rebuild.');
|
|
30
|
+
}
|
|
31
|
+
// v4: Camera.requestCameraPermission() → 'authorized' | 'denied' | 'restricted'
|
|
32
|
+
// v5: Camera.requestCameraPermission() → 'granted' | 'denied' | 'restricted'
|
|
33
|
+
// Both ship a static method on the Camera class with the same name; the
|
|
34
|
+
// result string varies. Normalize.
|
|
35
|
+
const CameraClass = sdk.Camera;
|
|
36
|
+
if (!CameraClass?.requestCameraPermission) {
|
|
37
|
+
// Older SDK didn't expose static permission; fall back to deny.
|
|
38
|
+
return { granted: false, requestable: false };
|
|
39
|
+
}
|
|
40
|
+
try {
|
|
41
|
+
const result = await CameraClass.requestCameraPermission();
|
|
42
|
+
const norm = result?.toLowerCase() ?? '';
|
|
43
|
+
if (norm === 'granted' || norm === 'authorized') {
|
|
44
|
+
return { granted: true, requestable: false };
|
|
45
|
+
}
|
|
46
|
+
// iOS prompts the user exactly once. After 'denied' the OS returns the
|
|
47
|
+
// cached value forever — only the Settings app can change it. Android
|
|
48
|
+
// re-prompts on subsequent requests UNLESS the user enabled "Don't ask
|
|
49
|
+
// again," but RN doesn't expose that distinction, so conservatively
|
|
50
|
+
// mark Android-denied as requestable. 'restricted' (parental controls)
|
|
51
|
+
// is irrecoverable on both platforms.
|
|
52
|
+
return { granted: false, requestable: Platform.OS === 'android' && norm === 'denied' };
|
|
53
|
+
}
|
|
54
|
+
catch {
|
|
55
|
+
return { granted: false, requestable: Platform.OS === 'android' };
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
// Test-only — flushes the cache so tests can swap implementations.
|
|
59
|
+
export function __resetCameraSdkCache() {
|
|
60
|
+
cachedSdk = undefined;
|
|
61
|
+
}
|
package/lib/client.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AA4BzC,wBAAgB,YAAY,IAAI,IAAI,CAGnC;AAED,wBAAgB,WAAW,IAAI,OAAO,CAIrC;AAED,eAAO,MAAM,MAAM;kBACN,QAAQ;CAGpB,CAAC"}
|
package/lib/client.js
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { FrameSDK } from 'framepayments';
|
|
2
|
+
import { getIpAddress, getPublishableKey, getSecretKey } from './config';
|
|
3
|
+
import { frameError, ErrorCodes } from './errors';
|
|
4
|
+
import { attachNetworkLogger, resetNetworkLogger } from './debug/networkLogger';
|
|
5
|
+
let sdk;
|
|
6
|
+
function getClient() {
|
|
7
|
+
if (sdk)
|
|
8
|
+
return sdk;
|
|
9
|
+
const apiKey = getSecretKey();
|
|
10
|
+
const publishableKey = getPublishableKey();
|
|
11
|
+
if (!apiKey && !publishableKey) {
|
|
12
|
+
throw frameError(ErrorCodes.NOT_INITIALIZED, 'Frame SDK is not configured. Call Frame.initialize({ secretKey, publishableKey }) first.');
|
|
13
|
+
}
|
|
14
|
+
// Forward the device IP via the `ip_address` header on every request,
|
|
15
|
+
// matching the native Frame iOS / Frame Android SDKs. Omitted when the
|
|
16
|
+
// lookup hasn't completed yet — the next client construction (after
|
|
17
|
+
// resetClients() in the IP-fetch resolver) will pick it up.
|
|
18
|
+
const ip = getIpAddress();
|
|
19
|
+
const defaultHeaders = ip ? { ip_address: ip } : undefined;
|
|
20
|
+
sdk = new FrameSDK({ apiKey, publishableKey, defaultHeaders });
|
|
21
|
+
attachNetworkLogger(sdk);
|
|
22
|
+
return sdk;
|
|
23
|
+
}
|
|
24
|
+
export function resetClients() {
|
|
25
|
+
sdk = undefined;
|
|
26
|
+
resetNetworkLogger();
|
|
27
|
+
}
|
|
28
|
+
export function warmClients() {
|
|
29
|
+
if (!getSecretKey() && !getPublishableKey())
|
|
30
|
+
return false;
|
|
31
|
+
getClient();
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
export const client = {
|
|
35
|
+
get sdk() {
|
|
36
|
+
return getClient();
|
|
37
|
+
},
|
|
38
|
+
};
|
package/lib/config.d.ts
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { FrameTheme } from './types';
|
|
2
|
+
export interface FrameConfig {
|
|
3
|
+
secretKey?: string;
|
|
4
|
+
publishableKey?: string;
|
|
5
|
+
debugMode: boolean;
|
|
6
|
+
applePayMerchantId?: string;
|
|
7
|
+
googlePayMerchantId?: string;
|
|
8
|
+
theme?: FrameTheme;
|
|
9
|
+
}
|
|
10
|
+
export interface EvervaultConfiguration {
|
|
11
|
+
teamId: string;
|
|
12
|
+
appId: string;
|
|
13
|
+
}
|
|
14
|
+
export interface SiftConfiguration {
|
|
15
|
+
accountId: string;
|
|
16
|
+
beaconKey: string;
|
|
17
|
+
sessionId?: string;
|
|
18
|
+
}
|
|
19
|
+
export declare function setConfig(config: FrameConfig): void;
|
|
20
|
+
export declare function getConfig(): Readonly<FrameConfig>;
|
|
21
|
+
export declare function isInitialized(): boolean;
|
|
22
|
+
export declare function getPublishableKey(): string | undefined;
|
|
23
|
+
export declare function getSecretKey(): string | undefined;
|
|
24
|
+
export declare function getDebugMode(): boolean;
|
|
25
|
+
export declare function getTheme(): FrameTheme | undefined;
|
|
26
|
+
export declare function getApplePayMerchantId(): string | undefined;
|
|
27
|
+
export declare function getGooglePayMerchantId(): string | undefined;
|
|
28
|
+
export declare function getEvervaultConfiguration(): EvervaultConfiguration | undefined;
|
|
29
|
+
export declare function getSiftConfiguration(): SiftConfiguration | undefined;
|
|
30
|
+
export declare function getIpAddress(): string | undefined;
|
|
31
|
+
export declare function resetConfig(): void;
|
|
32
|
+
export declare const __internal: {
|
|
33
|
+
setEvervaultConfiguration(config: EvervaultConfiguration): void;
|
|
34
|
+
getEvervaultConfiguration(): EvervaultConfiguration | undefined;
|
|
35
|
+
setSiftConfiguration(config: SiftConfiguration): void;
|
|
36
|
+
getSiftConfiguration(): SiftConfiguration | undefined;
|
|
37
|
+
setIpAddress(ip: string | undefined): void;
|
|
38
|
+
getIpAddress(): string | undefined;
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=config.d.ts.map
|