@primer-io/react-native 2.30.0 → 2.30.1

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.
Files changed (308) hide show
  1. package/android/.editorconfig +2 -0
  2. package/android/build.gradle +29 -1
  3. package/android/detekt-baseline.xml +24 -0
  4. package/android/src/main/java/com/primerioreactnative/PrimerRN.kt +248 -195
  5. package/android/src/main/java/com/primerioreactnative/PrimerRNEventListener.kt +261 -253
  6. package/android/src/main/java/com/primerioreactnative/PrimerRNHeadlessUniversalCheckout.kt +177 -143
  7. package/android/src/main/java/com/primerioreactnative/PrimerRNHeadlessUniversalCheckoutListener.kt +298 -291
  8. package/android/src/main/java/com/primerioreactnative/PrimerRNViewModelStoreOwner.kt +2 -3
  9. package/android/src/main/java/com/primerioreactnative/ReactNativePackage.kt +33 -36
  10. package/android/src/main/java/com/primerioreactnative/components/assets/AssetsManager.kt +29 -30
  11. package/android/src/main/java/com/primerioreactnative/components/assets/CardNetworkImageFileProvider.kt +15 -15
  12. package/android/src/main/java/com/primerioreactnative/components/assets/PaymentMethodAssetFileProvider.kt +16 -16
  13. package/android/src/main/java/com/primerioreactnative/components/datamodels/core/PrimerRNHeadlessUniversalCheckoutPaymentMethod.kt +9 -9
  14. package/android/src/main/java/com/primerioreactnative/components/datamodels/core/PrimerRawPaymentMethodType.kt +5 -5
  15. package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/asset/Resources.kt +143 -0
  16. package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/raw/card/PrimerRNCardData.kt +11 -11
  17. package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/raw/cardRedirect/PrimerRNBancontactCardData.kt +19 -0
  18. package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/raw/phoneNumber/PrimerRNPhoneNumberData.kt +5 -5
  19. package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/raw/retailOutlets/PrimerRNRetailOutletData.kt +2 -3
  20. package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/raw/retailOutlets/RNRetailOutletsList.kt +15 -14
  21. package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/vault/PrimerRNValidationError.kt +10 -10
  22. package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/vault/PrimerRNVaultedPaymentMethod.kt +15 -16
  23. package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/vault/PrimerRNVaultedPaymentMethodAdditionalData.kt +4 -2
  24. package/android/src/main/java/com/primerioreactnative/components/events/PrimerHeadlessUniversalCheckoutComponentEvent.kt +6 -6
  25. package/android/src/main/java/com/primerioreactnative/components/events/PrimerHeadlessUniversalCheckoutEvent.kt +13 -13
  26. package/android/src/main/java/com/primerioreactnative/components/events/PrimerHeadlessUniversalCheckoutRawDataManagerEvent.kt +2 -2
  27. package/android/src/main/java/com/primerioreactnative/components/manager/NativeViewContainer.kt +9 -8
  28. package/android/src/main/java/com/primerioreactnative/components/manager/ach/{AchMandateManager.kt → PrimerRNAchMandateManager.kt} +20 -17
  29. package/android/src/main/java/com/primerioreactnative/components/manager/ach/PrimerRNHeadlessUniversalCheckoutStripeAchUserDetailsComponent.kt +227 -212
  30. package/android/src/main/java/com/primerioreactnative/components/manager/asset/PrimerRNHeadlessUniversalCheckoutAssetManager.kt +178 -163
  31. package/android/src/main/java/com/primerioreactnative/components/manager/banks/PrimerRNHeadlessUniversalCheckoutBanksComponent.kt +207 -194
  32. package/android/src/main/java/com/primerioreactnative/components/manager/googlePay/PrimerGooglePayButtonConstantsModule.kt +23 -26
  33. package/android/src/main/java/com/primerioreactnative/components/manager/googlePay/PrimerGooglePayButtonManager.kt +25 -23
  34. package/android/src/main/java/com/primerioreactnative/components/manager/klarna/PrimerKlarnaPaymentViewManager.kt +24 -23
  35. package/android/src/main/java/com/primerioreactnative/components/manager/klarna/PrimerRNHeadlessUniversalCheckoutKlarnaComponent.kt +111 -87
  36. package/android/src/main/java/com/primerioreactnative/components/manager/nativeUi/PrimerRNHeadlessUniversalCheckoutNativeUiManager.kt +68 -63
  37. package/android/src/main/java/com/primerioreactnative/components/manager/raw/PrimerRNHeadlessUniversalCheckoutRawManager.kt +189 -164
  38. package/android/src/main/java/com/primerioreactnative/components/manager/raw/PrimerRNHeadlessUniversalCheckoutRawManagerListener.kt +39 -37
  39. package/android/src/main/java/com/primerioreactnative/components/manager/vault/PrimerRNHeadlessUniversalCheckoutVaultManager.kt +128 -118
  40. package/android/src/main/java/com/primerioreactnative/datamodels/{NamedComponentStepRN.kt → NamedComponentStep.kt} +0 -2
  41. package/android/src/main/java/com/primerioreactnative/datamodels/{NamedComponentValidatableDataRN.kt → NamedComponentValidatableData.kt} +1 -3
  42. package/android/src/main/java/com/primerioreactnative/datamodels/PrimerCheckoutAdditionalInfoRN.kt +14 -14
  43. package/android/src/main/java/com/primerioreactnative/datamodels/PrimerCheckoutDataRN.kt +4 -4
  44. package/android/src/main/java/com/primerioreactnative/datamodels/PrimerClientSessionRN.kt +34 -35
  45. package/android/src/main/java/com/primerioreactnative/datamodels/PrimerErrorRN.kt +14 -14
  46. package/android/src/main/java/com/primerioreactnative/datamodels/PrimerEvents.kt +10 -11
  47. package/android/src/main/java/com/primerioreactnative/datamodels/PrimerInputValidationErrorRN.kt +4 -4
  48. package/android/src/main/java/com/primerioreactnative/datamodels/PrimerIssuingBankRN.kt +1 -1
  49. package/android/src/main/java/com/primerioreactnative/datamodels/PrimerPaymentInstrumentTokenRN.kt +66 -67
  50. package/android/src/main/java/com/primerioreactnative/datamodels/PrimerSettingsRN.kt +128 -119
  51. package/android/src/main/java/com/primerioreactnative/datamodels/ach/AchUserDetailsStepRN.kt +2 -3
  52. package/android/src/main/java/com/primerioreactnative/datamodels/banks/BanksStepRN.kt +3 -3
  53. package/android/src/main/java/com/primerioreactnative/datamodels/extensions/ach/AchUserDetailsCollectableData.kt +11 -6
  54. package/android/src/main/java/com/primerioreactnative/datamodels/extensions/ach/AchUserDetailsStep.kt +1 -1
  55. package/android/src/main/java/com/primerioreactnative/datamodels/extensions/banks/BanksCollectableData.kt +2 -2
  56. package/android/src/main/java/com/primerioreactnative/datamodels/extensions/banks/BanksStep.kt +8 -4
  57. package/android/src/main/java/com/primerioreactnative/datamodels/klarna/KlarnaPaymentCategoryRN.kt +2 -2
  58. package/android/src/main/java/com/primerioreactnative/datamodels/klarna/KlarnaPaymentCollectableDataRN.kt +2 -3
  59. package/android/src/main/java/com/primerioreactnative/datamodels/klarna/KlarnaPaymentStepRN.kt +6 -6
  60. package/android/src/main/java/com/primerioreactnative/extensions/JSONExtensions.kt +26 -26
  61. package/android/src/main/java/com/primerioreactnative/extensions/LocaleSettingsRN.kt +5 -5
  62. package/android/src/main/java/com/primerioreactnative/extensions/PaymentInstrumentData.kt +37 -31
  63. package/android/src/main/java/com/primerioreactnative/extensions/PrimerAddress.kt +11 -10
  64. package/android/src/main/java/com/primerioreactnative/extensions/PrimerCheckoutAdditionalInfo.kt +19 -14
  65. package/android/src/main/java/com/primerioreactnative/extensions/PrimerCheckoutData.kt +1 -1
  66. package/android/src/main/java/com/primerioreactnative/extensions/PrimerClientSession.kt +9 -9
  67. package/android/src/main/java/com/primerioreactnative/extensions/PrimerCustomer.kt +9 -8
  68. package/android/src/main/java/com/primerioreactnative/extensions/PrimerDebugOptionsRN.kt +1 -2
  69. package/android/src/main/java/com/primerioreactnative/extensions/PrimerError.kt +3 -3
  70. package/android/src/main/java/com/primerioreactnative/extensions/PrimerIssuingBank.kt +1 -2
  71. package/android/src/main/java/com/primerioreactnative/extensions/PrimerLineItem.kt +10 -3
  72. package/android/src/main/java/com/primerioreactnative/extensions/PrimerOrder.kt +5 -3
  73. package/android/src/main/java/com/primerioreactnative/extensions/PrimerPaymentMethodData.kt +4 -1
  74. package/android/src/main/java/com/primerioreactnative/extensions/PrimerPaymentMethodOptionsRN.kt +69 -54
  75. package/android/src/main/java/com/primerioreactnative/extensions/PrimerUIOptionsRN.kt +16 -16
  76. package/android/src/main/java/com/primerioreactnative/extensions/ThreeDsAuthenticationData.kt +7 -7
  77. package/android/src/main/java/com/primerioreactnative/extensions/klarna/KlarnaPaymentCategory.kt +1 -1
  78. package/android/src/main/java/com/primerioreactnative/extensions/klarna/KlarnaPaymentCategoryRN.kt +1 -1
  79. package/android/src/main/java/com/primerioreactnative/extensions/klarna/KlarnaPaymentCollectableData.kt +4 -4
  80. package/android/src/main/java/com/primerioreactnative/extensions/klarna/KlarnaPaymentStep.kt +8 -7
  81. package/android/src/main/java/com/primerioreactnative/utils/ErrorHelper.kt +6 -5
  82. package/android/src/main/java/com/primerioreactnative/utils/JsonConverter.kt +33 -34
  83. package/android/src/main/java/com/primerioreactnative/utils/PrimerHeadlessUniversalCheckoutImplementedRNCallbacks.kt +26 -26
  84. package/android/src/main/java/com/primerioreactnative/utils/PrimerImplementedRNCallbacks.kt +20 -20
  85. package/android/src/test/java/com/primerioreactnative/utils/ErrorHelperTest.kt +12 -13
  86. package/android/tooling/code-analysis/detekt.yml +68 -0
  87. package/ios/Sources/DataModels/Ach Component/RNTAchUserDetailsCollectableData.swift +2 -2
  88. package/ios/Sources/DataModels/Banks Component/RNTBanksCollectableData.swift +0 -1
  89. package/ios/Sources/DataModels/ImplementedRNCallbacks.swift +83 -63
  90. package/ios/Sources/DataModels/Klarna Component/PrimerHeadlessUniversalCheckoutComponentEvent.swift +3 -1
  91. package/ios/Sources/DataModels/Klarna Component/RNTKlarnaCollectableData.swift +2 -2
  92. package/ios/Sources/DataModels/Klarna Component/RNTKlarnaPaymentCategory.swift +1 -1
  93. package/ios/Sources/DataModels/Klarna Component/RNTKlarnaStep.swift +5 -5
  94. package/ios/Sources/DataModels/Klarna Component/RNTPrimerError.swift +1 -1
  95. package/ios/Sources/DataModels/PrimerBancontactCardRedirectData+Extension.swift +1 -2
  96. package/ios/Sources/DataModels/PrimerCardData+Extension.swift +6 -7
  97. package/ios/Sources/DataModels/PrimerCheckoutAdditionalInfoRN.swift +6 -7
  98. package/ios/Sources/DataModels/PrimerHeadlessUniversalCheckout_PaymentMethod.swift +10 -7
  99. package/ios/Sources/DataModels/PrimerPhoneNumberData+Extension.swift +1 -2
  100. package/ios/Sources/DataModels/PrimerRawRetailerData+Extension.swift +1 -2
  101. package/ios/Sources/DataModels/PrimerSettings+Extensions.swift +91 -50
  102. package/ios/Sources/DataModels/PrimerThemeRN.swift +6 -6
  103. package/ios/Sources/DataModels/RNTNativeError.swift +3 -4
  104. package/ios/Sources/DataModels/RNTPrimerPaymentMethodAsset.swift +54 -48
  105. package/ios/Sources/Headless Universal Checkout/Managers/Ach/PrimerRNHeadlessUniversalCheckoutStripeAchUserDetailsComponent.swift +225 -202
  106. package/ios/Sources/Headless Universal Checkout/Managers/Ach/RNTAchMandateManager.swift +6 -6
  107. package/ios/Sources/Headless Universal Checkout/Managers/Assets Manager/RNTAssetsManager.swift +163 -161
  108. package/ios/Sources/Headless Universal Checkout/Managers/Klarna/PrimerRNHeadlessUniversalCheckoutKlarnaComponent.swift +268 -250
  109. package/ios/Sources/Headless Universal Checkout/Managers/Payment Method Managers/RNPrimerHeadlessUniversalCheckoutVaultManager.swift +88 -66
  110. package/ios/Sources/Headless Universal Checkout/Managers/Payment Method Managers/RNTNativeUIManager.swift +51 -43
  111. package/ios/Sources/Headless Universal Checkout/Managers/Payment Method Managers/RNTRawDataManager.swift +181 -158
  112. package/ios/Sources/Headless Universal Checkout/Managers/RNTRedirectManager.swift +165 -156
  113. package/ios/Sources/Headless Universal Checkout/RNTPrimerHeadlessUniversalCheckout.swift +526 -459
  114. package/ios/Sources/Helpers/Encodable+Extension.swift +5 -1
  115. package/ios/Sources/Helpers/Error+Extensions.swift +5 -5
  116. package/ios/Sources/Helpers/UIColor+Extensions.swift +23 -20
  117. package/ios/Sources/RNTPrimer.swift +135 -48
  118. package/lib/commonjs/HeadlessUniversalCheckout/Components/NativeResourceView.js.map +1 -1
  119. package/lib/commonjs/HeadlessUniversalCheckout/Components/PrimerGooglePayButton.js.map +1 -1
  120. package/lib/commonjs/HeadlessUniversalCheckout/Components/PrimerKlarnaPaymentView.js.map +1 -1
  121. package/lib/commonjs/HeadlessUniversalCheckout/Managers/AssetsManager.js +4 -4
  122. package/lib/commonjs/HeadlessUniversalCheckout/Managers/AssetsManager.js.map +1 -1
  123. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchManager.js +1 -1
  124. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchManager.js.map +1 -1
  125. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchMandateManager.js +2 -2
  126. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchMandateManager.js.map +1 -1
  127. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/ComponentWithRedirectManager.js +1 -1
  128. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/ComponentWithRedirectManager.js.map +1 -1
  129. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/KlarnaManager.js.map +1 -1
  130. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.js.map +1 -1
  131. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js +6 -6
  132. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js.map +1 -1
  133. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/Utils/EventType.js.map +1 -1
  134. package/lib/commonjs/HeadlessUniversalCheckout/Managers/VaultManager.js.map +1 -1
  135. package/lib/commonjs/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js +4 -4
  136. package/lib/commonjs/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js.map +1 -1
  137. package/lib/commonjs/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.js +1 -1
  138. package/lib/commonjs/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.js.map +1 -1
  139. package/lib/commonjs/HeadlessUniversalCheckout/types.js +5 -5
  140. package/lib/commonjs/Primer.js +2 -2
  141. package/lib/commonjs/Primer.js.map +1 -1
  142. package/lib/commonjs/RNPrimer.js +5 -5
  143. package/lib/commonjs/RNPrimer.js.map +1 -1
  144. package/lib/commonjs/index.js.map +1 -1
  145. package/lib/commonjs/models/PrimerError.js.map +1 -1
  146. package/lib/module/HeadlessUniversalCheckout/Components/NativeResourceView.js +3 -3
  147. package/lib/module/HeadlessUniversalCheckout/Components/NativeResourceView.js.map +1 -1
  148. package/lib/module/HeadlessUniversalCheckout/Components/PrimerGooglePayButton.js +1 -1
  149. package/lib/module/HeadlessUniversalCheckout/Components/PrimerGooglePayButton.js.map +1 -1
  150. package/lib/module/HeadlessUniversalCheckout/Components/PrimerKlarnaPaymentView.js +1 -1
  151. package/lib/module/HeadlessUniversalCheckout/Components/PrimerKlarnaPaymentView.js.map +1 -1
  152. package/lib/module/HeadlessUniversalCheckout/Managers/AssetsManager.js +4 -4
  153. package/lib/module/HeadlessUniversalCheckout/Managers/AssetsManager.js.map +1 -1
  154. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchManager.js +1 -1
  155. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchManager.js.map +1 -1
  156. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchMandateManager.js +2 -2
  157. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchMandateManager.js.map +1 -1
  158. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/ComponentWithRedirectManager.js +1 -1
  159. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/ComponentWithRedirectManager.js.map +1 -1
  160. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/KlarnaManager.js.map +1 -1
  161. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.js.map +1 -1
  162. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js +6 -6
  163. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js.map +1 -1
  164. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/Utils/EventType.js.map +1 -1
  165. package/lib/module/HeadlessUniversalCheckout/Managers/VaultManager.js.map +1 -1
  166. package/lib/module/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js +4 -4
  167. package/lib/module/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js.map +1 -1
  168. package/lib/module/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.js +1 -1
  169. package/lib/module/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.js.map +1 -1
  170. package/lib/module/HeadlessUniversalCheckout/types.js +5 -5
  171. package/lib/module/Primer.js +2 -2
  172. package/lib/module/Primer.js.map +1 -1
  173. package/lib/module/RNPrimer.js +5 -5
  174. package/lib/module/RNPrimer.js.map +1 -1
  175. package/lib/module/index.js.map +1 -1
  176. package/lib/module/models/PrimerError.js.map +1 -1
  177. package/lib/typescript/HeadlessUniversalCheckout/Components/NativeResourceView.d.ts +2 -2
  178. package/lib/typescript/HeadlessUniversalCheckout/Components/NativeResourceView.d.ts.map +1 -1
  179. package/lib/typescript/HeadlessUniversalCheckout/Components/PrimerGooglePayButton.d.ts +1 -1
  180. package/lib/typescript/HeadlessUniversalCheckout/Components/PrimerGooglePayButton.d.ts.map +1 -1
  181. package/lib/typescript/HeadlessUniversalCheckout/Components/PrimerKlarnaPaymentView.d.ts.map +1 -1
  182. package/lib/typescript/HeadlessUniversalCheckout/Managers/AssetsManager.d.ts +4 -4
  183. package/lib/typescript/HeadlessUniversalCheckout/Managers/AssetsManager.d.ts.map +1 -1
  184. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchManager.d.ts.map +1 -1
  185. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchMandateManager.d.ts.map +1 -1
  186. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/ComponentWithRedirectManager.d.ts.map +1 -1
  187. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/KlarnaManager.d.ts.map +1 -1
  188. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.d.ts.map +1 -1
  189. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.d.ts.map +1 -1
  190. package/lib/typescript/HeadlessUniversalCheckout/Managers/VaultManager.d.ts.map +1 -1
  191. package/lib/typescript/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.d.ts.map +1 -1
  192. package/lib/typescript/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.d.ts.map +1 -1
  193. package/lib/typescript/Primer.d.ts.map +1 -1
  194. package/lib/typescript/RNPrimer.d.ts.map +1 -1
  195. package/lib/typescript/index.d.ts +4 -4
  196. package/lib/typescript/index.d.ts.map +1 -1
  197. package/lib/typescript/models/IssuingBank.d.ts.map +1 -1
  198. package/lib/typescript/models/NamedComponentStep.d.ts.map +1 -1
  199. package/lib/typescript/models/NamedComponentValidatableData.d.ts.map +1 -1
  200. package/lib/typescript/models/PrimerCheckoutAdditionalInfo.d.ts +4 -4
  201. package/lib/typescript/models/PrimerCheckoutAdditionalInfo.d.ts.map +1 -1
  202. package/lib/typescript/models/PrimerCheckoutData.d.ts +1 -1
  203. package/lib/typescript/models/PrimerCheckoutData.d.ts.map +1 -1
  204. package/lib/typescript/models/PrimerCheckoutPaymentMethodData.d.ts.map +1 -1
  205. package/lib/typescript/models/PrimerClientSession.d.ts.map +1 -1
  206. package/lib/typescript/models/PrimerComponentDataValidation.d.ts +5 -5
  207. package/lib/typescript/models/PrimerComponentDataValidation.d.ts.map +1 -1
  208. package/lib/typescript/models/PrimerCountryCode.d.ts +1 -1
  209. package/lib/typescript/models/PrimerCountryCode.d.ts.map +1 -1
  210. package/lib/typescript/models/PrimerCurrencyCode.d.ts +1 -1
  211. package/lib/typescript/models/PrimerCurrencyCode.d.ts.map +1 -1
  212. package/lib/typescript/models/PrimerError.d.ts.map +1 -1
  213. package/lib/typescript/models/PrimerHandlers.d.ts.map +1 -1
  214. package/lib/typescript/models/PrimerHeadlessUniversalCheckoutPaymentMethod.d.ts +2 -2
  215. package/lib/typescript/models/PrimerHeadlessUniversalCheckoutPaymentMethod.d.ts.map +1 -1
  216. package/lib/typescript/models/PrimerImplementedRNCallbacks.d.ts.map +1 -1
  217. package/lib/typescript/models/PrimerInitializationData.d.ts +1 -1
  218. package/lib/typescript/models/PrimerInitializationData.d.ts.map +1 -1
  219. package/lib/typescript/models/PrimerInputElementType.d.ts.map +1 -1
  220. package/lib/typescript/models/PrimerInterfaces.d.ts +1 -1
  221. package/lib/typescript/models/PrimerPaymentMethodManagerCategory.d.ts.map +1 -1
  222. package/lib/typescript/models/PrimerPaymentMethodResource.d.ts.map +1 -1
  223. package/lib/typescript/models/PrimerRawData.d.ts.map +1 -1
  224. package/lib/typescript/models/PrimerSettings.d.ts +10 -10
  225. package/lib/typescript/models/PrimerSettings.d.ts.map +1 -1
  226. package/lib/typescript/models/PrimerValidationError.d.ts.map +1 -1
  227. package/lib/typescript/models/PrimerValidationErrorResult.d.ts +1 -1
  228. package/lib/typescript/models/PrimerValidationErrorResult.d.ts.map +1 -1
  229. package/lib/typescript/models/PrimerVaultedPaymentMethod.d.ts +1 -1
  230. package/lib/typescript/models/PrimerVaultedPaymentMethod.d.ts.map +1 -1
  231. package/lib/typescript/models/PrimerVaultedPaymentMethodAdditionalData.d.ts.map +1 -1
  232. package/lib/typescript/models/PrimerVaultedPaymentMethodResult.d.ts +1 -1
  233. package/lib/typescript/models/PrimerVaultedPaymentMethodResult.d.ts.map +1 -1
  234. package/lib/typescript/models/RetailOutletsRetail.d.ts.map +1 -1
  235. package/lib/typescript/models/ach/AchCollectableData.d.ts +4 -4
  236. package/lib/typescript/models/ach/AchCollectableData.d.ts.map +1 -1
  237. package/lib/typescript/models/ach/AchSteps.d.ts +3 -3
  238. package/lib/typescript/models/ach/AchSteps.d.ts.map +1 -1
  239. package/lib/typescript/models/banks/BanksCollectableData.d.ts +3 -3
  240. package/lib/typescript/models/banks/BanksCollectableData.d.ts.map +1 -1
  241. package/lib/typescript/models/banks/BanksSteps.d.ts +6 -6
  242. package/lib/typescript/models/banks/BanksSteps.d.ts.map +1 -1
  243. package/lib/typescript/models/klarna/KlarnaPaymentCategory.d.ts +2 -2
  244. package/lib/typescript/models/klarna/KlarnaPaymentCategory.d.ts.map +1 -1
  245. package/lib/typescript/models/klarna/KlarnaPaymentCollectableData.d.ts +4 -4
  246. package/lib/typescript/models/klarna/KlarnaPaymentCollectableData.d.ts.map +1 -1
  247. package/lib/typescript/models/klarna/KlarnaPaymentSteps.d.ts +6 -6
  248. package/lib/typescript/models/klarna/KlarnaPaymentSteps.d.ts.map +1 -1
  249. package/lib/typescript/utils/index.d.ts +1 -1
  250. package/package.json +5 -4
  251. package/primer-io-react-native.podspec +1 -1
  252. package/src/HeadlessUniversalCheckout/Components/NativeResourceView.tsx +17 -21
  253. package/src/HeadlessUniversalCheckout/Components/PrimerGooglePayButton.tsx +3 -6
  254. package/src/HeadlessUniversalCheckout/Components/PrimerKlarnaPaymentView.tsx +2 -4
  255. package/src/HeadlessUniversalCheckout/Managers/AssetsManager.ts +68 -69
  256. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchManager.ts +127 -131
  257. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchMandateManager.ts +23 -25
  258. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/ComponentWithRedirectManager.ts +21 -30
  259. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/KlarnaManager.ts +137 -141
  260. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.ts +17 -18
  261. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.ts +158 -142
  262. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/Utils/EventType.ts +7 -7
  263. package/src/HeadlessUniversalCheckout/Managers/VaultManager.ts +96 -87
  264. package/src/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.ts +159 -170
  265. package/src/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.ts +2 -6
  266. package/src/HeadlessUniversalCheckout/types.ts +5 -5
  267. package/src/Primer.ts +60 -57
  268. package/src/RNPrimer.ts +53 -54
  269. package/src/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.tsx +1 -1
  270. package/src/index.tsx +73 -36
  271. package/src/models/IssuingBank.ts +5 -5
  272. package/src/models/NamedComponentStep.ts +5 -5
  273. package/src/models/NamedComponentValidatableData.ts +5 -5
  274. package/src/models/PrimerCheckoutAdditionalInfo.ts +18 -23
  275. package/src/models/PrimerCheckoutData.ts +8 -8
  276. package/src/models/PrimerCheckoutPaymentMethodData.ts +6 -6
  277. package/src/models/PrimerClientSession.ts +34 -34
  278. package/src/models/PrimerComponentDataValidation.ts +33 -33
  279. package/src/models/PrimerCountryCode.ts +1 -1
  280. package/src/models/PrimerCurrencyCode.ts +1 -1
  281. package/src/models/PrimerError.ts +7 -1
  282. package/src/models/PrimerHandlers.ts +24 -24
  283. package/src/models/PrimerHeadlessUniversalCheckoutPaymentMethod.ts +4 -4
  284. package/src/models/PrimerImplementedRNCallbacks.ts +15 -15
  285. package/src/models/PrimerInitializationData.ts +3 -3
  286. package/src/models/PrimerInputElementType.ts +9 -9
  287. package/src/models/PrimerInterfaces.ts +1 -1
  288. package/src/models/PrimerPaymentMethodManagerCategory.ts +4 -4
  289. package/src/models/PrimerPaymentMethodResource.ts +11 -11
  290. package/src/models/PrimerRawData.ts +9 -9
  291. package/src/models/PrimerSessionIntent.ts +1 -1
  292. package/src/models/PrimerSettings.ts +37 -21
  293. package/src/models/PrimerValidationError.ts +3 -3
  294. package/src/models/PrimerValidationErrorResult.ts +2 -2
  295. package/src/models/PrimerVaultedPaymentMethod.ts +7 -7
  296. package/src/models/PrimerVaultedPaymentMethodAdditionalData.ts +1 -1
  297. package/src/models/PrimerVaultedPaymentMethodResult.ts +3 -3
  298. package/src/models/RetailOutletsRetail.ts +5 -5
  299. package/src/models/ach/AchCollectableData.ts +12 -12
  300. package/src/models/ach/AchSteps.ts +18 -18
  301. package/src/models/banks/BanksCollectableData.ts +14 -14
  302. package/src/models/banks/BanksSteps.ts +13 -13
  303. package/src/models/klarna/KlarnaPaymentCategory.ts +16 -16
  304. package/src/models/klarna/KlarnaPaymentCollectableData.ts +16 -15
  305. package/src/models/klarna/KlarnaPaymentSteps.ts +21 -17
  306. package/src/utils/index.ts +1 -1
  307. package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/raw/cardRedirect/PrimerRNCardRedirectData.kt +0 -19
  308. package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/resource/Resources.kt +0 -138
@@ -1,85 +1,84 @@
1
1
  package com.primerioreactnative.datamodels
2
2
 
3
3
  import com.primerioreactnative.extensions.toPaymentInstrumentDataRN
4
- import io.primer.android.data.tokenization.models.*
4
+ import io.primer.android.data.tokenization.models.TokenType
5
5
  import io.primer.android.domain.tokenization.models.PrimerPaymentMethodTokenData
6
6
  import kotlinx.serialization.Serializable
7
7
 
8
8
  @Serializable
9
9
  data class PrimerPaymentInstrumentTokenRN(
10
- val token: String,
11
- val analyticsId: String,
12
- val tokenType: TokenType,
13
- val paymentInstrumentType: String,
14
- val paymentInstrumentData: PaymentInstrumentData? = null,
15
- val threeDSecureAuthentication: ThreeDSAuthenticationData? = null,
16
- val vaultData: VaultData? = null,
10
+ val token: String,
11
+ val analyticsId: String,
12
+ val tokenType: TokenType,
13
+ val paymentInstrumentType: String,
14
+ val paymentInstrumentData: PaymentInstrumentData? = null,
15
+ val threeDSecureAuthentication: ThreeDSAuthenticationData? = null,
16
+ val vaultData: VaultData? = null,
17
17
  ) {
18
+ @Serializable
19
+ data class VaultData(
20
+ val customerId: String,
21
+ )
18
22
 
19
- @Serializable
20
- data class VaultData(
21
- val customerId: String,
22
- )
23
+ @Serializable
24
+ data class ThreeDSAuthenticationData(
25
+ val responseCode: String?,
26
+ val reasonCode: String?,
27
+ val reasonText: String?,
28
+ val protocolVersion: String?,
29
+ val challengeIssued: Boolean?,
30
+ )
23
31
 
24
- @Serializable
25
- data class ThreeDSAuthenticationData(
26
- val responseCode: String?,
27
- val reasonCode: String?,
28
- val reasonText: String?,
29
- val protocolVersion: String?,
30
- val challengeIssued: Boolean?,
31
- )
32
+ @Serializable
33
+ data class PaymentInstrumentData(
34
+ val network: String? = null,
35
+ val cardholderName: String? = null,
36
+ val first6Digits: Int? = null,
37
+ val last4Digits: Int? = null,
38
+ val accountNumberLast4Digits: Int? = null,
39
+ val expirationMonth: Int? = null,
40
+ val expirationYear: Int? = null,
41
+ val externalPayerInfo: ExternalPayerInfo? = null,
42
+ val klarnaCustomerToken: String? = null,
43
+ val sessionData: SessionData? = null,
44
+ val paymentMethodType: String? = null,
45
+ val binData: BinData? = null,
46
+ val bankName: String? = null,
47
+ )
32
48
 
33
- @Serializable
34
- data class PaymentInstrumentData(
35
- val network: String? = null,
36
- val cardholderName: String? = null,
37
- val first6Digits: Int? = null,
38
- val last4Digits: Int? = null,
39
- val accountNumberLast4Digits: Int? = null,
40
- val expirationMonth: Int? = null,
41
- val expirationYear: Int? = null,
42
- val externalPayerInfo: ExternalPayerInfo? = null,
43
- val klarnaCustomerToken: String? = null,
44
- val sessionData: SessionData? = null,
45
- val paymentMethodType: String? = null,
46
- val binData: BinData? = null,
47
- val bankName: String? = null
48
- )
49
+ @Serializable
50
+ data class ExternalPayerInfo(
51
+ val email: String,
52
+ val externalPayerId: String?,
53
+ val firstName: String?,
54
+ val lastName: String?,
55
+ )
49
56
 
50
- @Serializable
51
- data class ExternalPayerInfo(
52
- val email: String,
53
- val externalPayerId: String?,
54
- val firstName: String?,
55
- val lastName: String?
56
- )
57
+ @Serializable
58
+ data class BinData(
59
+ val network: String? = null,
60
+ )
57
61
 
58
- @Serializable
59
- data class BinData(
60
- val network: String? = null,
61
- )
62
+ @Serializable
63
+ data class SessionData(
64
+ val recurringDescription: String? = null,
65
+ val billingAddress: BillingAddress? = null,
66
+ )
62
67
 
63
- @Serializable
64
- data class SessionData(
65
- val recurringDescription: String? = null,
66
- val billingAddress: BillingAddress? = null,
67
- )
68
+ @Serializable
69
+ data class BillingAddress(
70
+ val email: String,
71
+ )
68
72
 
69
- @Serializable
70
- data class BillingAddress(
71
- val email: String,
72
- )
73
-
74
- companion object {
75
- fun fromPaymentMethodToken(token: PrimerPaymentMethodTokenData): PrimerPaymentInstrumentTokenRN {
76
- return PrimerPaymentInstrumentTokenRN(
77
- token.token,
78
- token.analyticsId,
79
- token.tokenType,
80
- token.paymentInstrumentType,
81
- token.paymentInstrumentData?.toPaymentInstrumentDataRN(),
82
- )
73
+ companion object {
74
+ fun fromPaymentMethodToken(token: PrimerPaymentMethodTokenData): PrimerPaymentInstrumentTokenRN {
75
+ return PrimerPaymentInstrumentTokenRN(
76
+ token.token,
77
+ token.analyticsId,
78
+ token.tokenType,
79
+ token.paymentInstrumentType,
80
+ token.paymentInstrumentData?.toPaymentInstrumentDataRN(),
81
+ )
82
+ }
83
83
  }
84
- }
85
84
  }
@@ -1,47 +1,47 @@
1
1
  package com.primerioreactnative.datamodels
2
2
 
3
3
  import android.content.Context
4
- import com.google.android.gms.wallet.button.ButtonConstants
5
4
  import com.primerioreactnative.extensions.toLocale
6
5
  import com.primerioreactnative.extensions.toPrimerDebugOptions
7
6
  import com.primerioreactnative.extensions.toPrimerPaymentMethodOptions
8
7
  import com.primerioreactnative.extensions.toPrimerUIOptions
8
+ import io.primer.android.core.data.datasource.PrimerApiVersion
9
9
  import io.primer.android.data.settings.GooglePayButtonStyle
10
10
  import io.primer.android.data.settings.PrimerPaymentHandling
11
11
  import io.primer.android.data.settings.PrimerSettings
12
- import io.primer.android.data.settings.PrimerStripeOptions
13
- import io.primer.android.core.data.datasource.PrimerApiVersion
14
12
  import io.primer.android.ui.settings.PrimerTheme
15
13
  import kotlinx.serialization.SerialName
16
14
  import kotlinx.serialization.Serializable
17
15
 
16
+ private const val COLOR_FORMAT = "#%02X%02X%02X%02X"
17
+
18
18
  @Serializable
19
19
  data class PrimerSettingsRN(
20
- var paymentHandling: PrimerPaymentHandling = PrimerPaymentHandling.AUTO,
21
- var localeData: LocaleSettingsRN = LocaleSettingsRN(),
22
- var paymentMethodOptions: PrimerPaymentMethodOptionsRN = PrimerPaymentMethodOptionsRN(),
23
- var uiOptions: PrimerUIOptionsRN = PrimerUIOptionsRN(),
24
- var debugOptions: PrimerDebugOptionsRN = PrimerDebugOptionsRN(),
25
- var clientSessionCachingEnabled: Boolean = false,
26
- var apiVersion: String = PrimerApiVersion.LATEST.name
20
+ var paymentHandling: PrimerPaymentHandling = PrimerPaymentHandling.AUTO,
21
+ var localeData: LocaleSettingsRN = LocaleSettingsRN(),
22
+ var paymentMethodOptions: PrimerPaymentMethodOptionsRN = PrimerPaymentMethodOptionsRN(),
23
+ var uiOptions: PrimerUIOptionsRN = PrimerUIOptionsRN(),
24
+ var debugOptions: PrimerDebugOptionsRN = PrimerDebugOptionsRN(),
25
+ var clientSessionCachingEnabled: Boolean = false,
26
+ var apiVersion: String = PrimerApiVersion.LATEST.name
27
27
  )
28
28
 
29
29
  @Serializable
30
30
  data class LocaleSettingsRN(
31
- val languageCode: String? = null,
32
- val localeCode: String? = null
31
+ val languageCode: String? = null,
32
+ val localeCode: String? = null,
33
33
  )
34
34
 
35
35
  @Serializable
36
36
  data class PrimerPaymentMethodOptionsRN(
37
- @SerialName("android")
38
- val androidSettingsRN: AndroidSettingsRN = AndroidSettingsRN(),
39
- var cardPaymentOptions: PrimerCardPaymentOptionsRN = PrimerCardPaymentOptionsRN(),
40
- var googlePayOptions: PrimerGooglePayOptionsRN = PrimerGooglePayOptionsRN(),
41
- var klarnaOptions: PrimerKlarnaOptionsRN = PrimerKlarnaOptionsRN(),
42
- var apayaOptions: PrimerApayaOptionsRN = PrimerApayaOptionsRN(),
43
- var threeDsOptions: PrimerThreeDsOptionsRN = PrimerThreeDsOptionsRN(),
44
- var stripeOptions: PrimerStripeOptionsRN = PrimerStripeOptionsRN(),
37
+ @SerialName("android")
38
+ val androidSettingsRN: AndroidSettingsRN = AndroidSettingsRN(),
39
+ var cardPaymentOptions: PrimerCardPaymentOptionsRN = PrimerCardPaymentOptionsRN(),
40
+ var googlePayOptions: PrimerGooglePayOptionsRN = PrimerGooglePayOptionsRN(),
41
+ var klarnaOptions: PrimerKlarnaOptionsRN = PrimerKlarnaOptionsRN(),
42
+ var apayaOptions: PrimerApayaOptionsRN = PrimerApayaOptionsRN(),
43
+ var threeDsOptions: PrimerThreeDsOptionsRN = PrimerThreeDsOptionsRN(),
44
+ var stripeOptions: PrimerStripeOptionsRN = PrimerStripeOptionsRN(),
45
45
  )
46
46
 
47
47
  @Serializable
@@ -49,71 +49,78 @@ data class AndroidSettingsRN(val redirectScheme: String? = null)
49
49
 
50
50
  @Serializable
51
51
  data class PrimerUIOptionsRN(
52
- var isInitScreenEnabled: Boolean = true,
53
- var isSuccessScreenEnabled: Boolean = true,
54
- var isErrorScreenEnabled: Boolean = true,
55
- var dismissalMechanism: List<String>? = listOf("gestures"),
56
- var theme: PrimerThemeRN = PrimerThemeRN()
52
+ var isInitScreenEnabled: Boolean = true,
53
+ var isSuccessScreenEnabled: Boolean = true,
54
+ var isErrorScreenEnabled: Boolean = true,
55
+ var dismissalMechanism: List<String>? = listOf("gestures"),
56
+ var theme: PrimerThemeRN = PrimerThemeRN(),
57
57
  )
58
58
 
59
59
  @Serializable
60
60
  data class PrimerThemeRN(
61
- val colors: ColorThemeRN? = null,
62
- val darkModeColors: ColorThemeRN? = null
61
+ val colors: ColorThemeRN? = null,
62
+ val darkModeColors: ColorThemeRN? = null,
63
63
  ) {
64
- fun toPrimerTheme(): PrimerTheme {
65
- val isDarkMode = false
66
-
67
- return PrimerTheme.buildWithDynamicValues(
68
- isDarkMode = isDarkMode,
69
- mainColor = when {
70
- isDarkMode -> darkModeColors?.mainColor?.toHexStrColor()
71
- else -> colors?.mainColor?.toHexStrColor()
72
- },
73
- backgroundColor = when {
74
- isDarkMode -> darkModeColors?.background?.toHexStrColor()
75
- else -> colors?.background?.toHexStrColor()
76
- },
77
- disabledColor = when {
78
- isDarkMode -> darkModeColors?.disabled?.toHexStrColor()
79
- else -> colors?.disabled?.toHexStrColor()
80
- },
81
- textColor = when {
82
- isDarkMode -> darkModeColors?.text?.toHexStrColor()
83
- else -> colors?.text?.toHexStrColor()
84
- },
85
- bordersColor = when {
86
- isDarkMode -> darkModeColors?.borders?.toHexStrColor()
87
- else -> colors?.borders?.toHexStrColor()
88
- },
89
- errorColor = when {
90
- isDarkMode -> darkModeColors?.error?.toHexStrColor()
91
- else -> colors?.error?.toHexStrColor()
92
- }
93
- )
94
- }
64
+ fun toPrimerTheme(): PrimerTheme {
65
+ val isDarkMode = false
66
+
67
+ return PrimerTheme.buildWithDynamicValues(
68
+ isDarkMode = isDarkMode,
69
+ mainColor =
70
+ when {
71
+ isDarkMode -> darkModeColors?.mainColor?.toHexStrColor()
72
+ else -> colors?.mainColor?.toHexStrColor()
73
+ },
74
+ backgroundColor =
75
+ when {
76
+ isDarkMode -> darkModeColors?.background?.toHexStrColor()
77
+ else -> colors?.background?.toHexStrColor()
78
+ },
79
+ disabledColor =
80
+ when {
81
+ isDarkMode -> darkModeColors?.disabled?.toHexStrColor()
82
+ else -> colors?.disabled?.toHexStrColor()
83
+ },
84
+ textColor =
85
+ when {
86
+ isDarkMode -> darkModeColors?.text?.toHexStrColor()
87
+ else -> colors?.text?.toHexStrColor()
88
+ },
89
+ bordersColor =
90
+ when {
91
+ isDarkMode -> darkModeColors?.borders?.toHexStrColor()
92
+ else -> colors?.borders?.toHexStrColor()
93
+ },
94
+ errorColor =
95
+ when {
96
+ isDarkMode -> darkModeColors?.error?.toHexStrColor()
97
+ else -> colors?.error?.toHexStrColor()
98
+ },
99
+ )
100
+ }
95
101
  }
96
102
 
97
103
  @Serializable
98
104
  data class ColorThemeRN(
99
- val mainColor: ColorRN? = null,
100
- val contrastingColor: ColorRN? = null,
101
- val background: ColorRN? = null,
102
- val text: ColorRN? = null,
103
- val contrastingText: ColorRN? = null,
104
- val borders: ColorRN? = null, // or main color
105
- val disabled: ColorRN? = null,
106
- val error: ColorRN? = null,
105
+ val mainColor: ColorRN? = null,
106
+ val contrastingColor: ColorRN? = null,
107
+ val background: ColorRN? = null,
108
+ val text: ColorRN? = null,
109
+ val contrastingText: ColorRN? = null,
110
+ // or main color
111
+ val borders: ColorRN? = null,
112
+ val disabled: ColorRN? = null,
113
+ val error: ColorRN? = null,
107
114
  )
108
115
 
109
116
  @Serializable
110
117
  data class ColorRN(
111
- val alpha: Int = 0,
112
- val red: Int = 0,
113
- val green: Int = 0,
114
- val blue: Int = 0
118
+ val alpha: Int = 0,
119
+ val red: Int = 0,
120
+ val green: Int = 0,
121
+ val blue: Int = 0,
115
122
  ) {
116
- fun toHexStrColor() = String.format("#%02X%02X%02X%02X", alpha, red, green, blue)
123
+ fun toHexStrColor() = String.format(COLOR_FORMAT, alpha, red, green, blue)
117
124
  }
118
125
 
119
126
  @Serializable
@@ -124,8 +131,8 @@ data class PrimerCardPaymentOptionsRN(var is3DSOnVaultingEnabled: Boolean = true
124
131
 
125
132
  @Serializable
126
133
  data class PrimerThreeDsOptionsRN(
127
- @SerialName("android")
128
- val threeDsOptionsAndroid: PrimerThreeDsAndroidOptionsRN? = null
134
+ @SerialName("android")
135
+ val threeDsOptionsAndroid: PrimerThreeDsAndroidOptionsRN? = null,
129
136
  )
130
137
 
131
138
  @Serializable
@@ -133,73 +140,75 @@ data class PrimerThreeDsAndroidOptionsRN(val threeDsAppRequestorUrl: String? = n
133
140
 
134
141
  @Serializable
135
142
  data class PrimerGooglePayOptionsRN(
136
- var merchantName: String? = null,
137
- var allowedCardNetworks: List<String> =
138
- listOf("AMEX", "DISCOVER", "JCB", "MASTERCARD", "VISA"),
139
- var buttonStyle: GooglePayButtonStyle = GooglePayButtonStyle.BLACK,
140
- @SerialName("isCaptureBillingAddressEnabled")
141
- var captureBillingAddress: Boolean = false,
142
- @SerialName("isExistingPaymentMethodRequired")
143
- var existingPaymentMethodRequired: Boolean = false,
144
- var shippingAddressParameters: PrimerGoogleShippingAddressParametersRN? = null,
145
- @SerialName("requireShippingMethod")
146
- var requireShippingMethod: Boolean = false,
147
- @SerialName("emailAddressRequired")
148
- var emailAddressRequired: Boolean = false,
149
- @SerialName("buttonOptions")
150
- var buttonOptions: PrimerGooglePayButtonOptionsRN? = null
143
+ var merchantName: String? = null,
144
+ var allowedCardNetworks: List<String> =
145
+ listOf("AMEX", "DISCOVER", "JCB", "MASTERCARD", "VISA"),
146
+ var buttonStyle: GooglePayButtonStyle = GooglePayButtonStyle.BLACK,
147
+ @SerialName("isCaptureBillingAddressEnabled")
148
+ var captureBillingAddress: Boolean = false,
149
+ @SerialName("isExistingPaymentMethodRequired")
150
+ var existingPaymentMethodRequired: Boolean = false,
151
+ var shippingAddressParameters: PrimerGoogleShippingAddressParametersRN? = null,
152
+ @SerialName("requireShippingMethod")
153
+ var requireShippingMethod: Boolean = false,
154
+ @SerialName("emailAddressRequired")
155
+ var emailAddressRequired: Boolean = false,
156
+ @SerialName("buttonOptions")
157
+ var buttonOptions: PrimerGooglePayButtonOptionsRN? = null,
151
158
  )
152
159
 
153
160
  @Serializable
154
161
  data class PrimerGoogleShippingAddressParametersRN(
155
- var phoneNumberRequired: Boolean = false
162
+ var phoneNumberRequired: Boolean = false,
156
163
  )
157
164
 
158
165
  @Serializable
159
166
  data class PrimerGooglePayButtonOptionsRN(
160
- @SerialName("buttonTheme")
161
- var buttonTheme: Int? = null,
162
- @SerialName("buttonType")
163
- var buttonType: Int? = null
167
+ @SerialName("buttonTheme")
168
+ var buttonTheme: Int? = null,
169
+ @SerialName("buttonType")
170
+ var buttonType: Int? = null,
164
171
  )
165
172
 
166
173
  @Serializable
167
174
  data class PrimerKlarnaOptionsRN(
168
- var recurringPaymentDescription: String? = null,
169
- @Deprecated("This property is deprecated and will be removed in future release.")
170
- var webViewTitle: String? = null,
175
+ var recurringPaymentDescription: String? = null,
176
+ @Deprecated("This property is deprecated and will be removed in future release.")
177
+ var webViewTitle: String? = null,
171
178
  )
172
179
 
173
180
  @Serializable
174
181
  data class PrimerStripeOptionsRN(
175
- val mandateData: MandateDataRN? = null,
176
- val publishableKey: String? = null,
182
+ val mandateData: MandateDataRN? = null,
183
+ val publishableKey: String? = null,
177
184
  ) {
178
- @Serializable
179
- data class MandateDataRN(
180
- @SerialName("fullMandateText") val fullMandateText: String? = null,
181
- @SerialName("fullMandateStringResourceName") val fullMandateStringResName: String? = null,
182
- val merchantName: String? = null
183
- )
185
+ @Serializable
186
+ data class MandateDataRN(
187
+ @SerialName("fullMandateText") val fullMandateText: String? = null,
188
+ @SerialName("fullMandateStringResourceName") val fullMandateStringResName: String? = null,
189
+ val merchantName: String? = null,
190
+ )
184
191
  }
185
192
 
186
193
  @Serializable
187
194
  @Deprecated("This class is deprecated and will be removed in future release.")
188
195
  data class PrimerApayaOptionsRN(
189
- var webViewTitle: String? = null,
196
+ var webViewTitle: String? = null,
190
197
  )
191
198
 
192
- fun PrimerSettingsRN.toPrimerSettings(context: Context) = PrimerSettings(
193
- paymentHandling = paymentHandling,
194
- locale = localeData.toLocale(),
195
- paymentMethodOptions = paymentMethodOptions.toPrimerPaymentMethodOptions(context),
196
- uiOptions = uiOptions.toPrimerUIOptions(),
197
- debugOptions = debugOptions.toPrimerDebugOptions(),
198
- clientSessionCachingEnabled = clientSessionCachingEnabled,
199
- apiVersion = when (apiVersion) {
200
- "2.3" -> PrimerApiVersion.V2_3
201
- "2.4" -> PrimerApiVersion.V2_4
202
- "latest" -> PrimerApiVersion.LATEST
203
- else -> error("'$apiVersion' is not supported.")
204
- }
205
- )
199
+ fun PrimerSettingsRN.toPrimerSettings(context: Context) =
200
+ PrimerSettings(
201
+ paymentHandling = paymentHandling,
202
+ locale = localeData.toLocale(),
203
+ paymentMethodOptions = paymentMethodOptions.toPrimerPaymentMethodOptions(context),
204
+ uiOptions = uiOptions.toPrimerUIOptions(),
205
+ debugOptions = debugOptions.toPrimerDebugOptions(),
206
+ clientSessionCachingEnabled = clientSessionCachingEnabled,
207
+ apiVersion = when (apiVersion) {
208
+ "2.3" -> PrimerApiVersion.V2_3
209
+ "2.4" -> PrimerApiVersion.V2_4
210
+ "latest" -> PrimerApiVersion.LATEST
211
+ else -> error("'$apiVersion' is not supported.")
212
+ }
213
+ )
214
+
@@ -1,8 +1,7 @@
1
1
  package com.primerioreactnative.datamodels.ach
2
2
 
3
- import kotlinx.serialization.Serializable
4
3
  import com.primerioreactnative.datamodels.NamedComponentStep
5
- import com.primerioreactnative.datamodels.PrimerIssuingBankRN
4
+ import kotlinx.serialization.Serializable
6
5
 
7
6
  @Serializable
8
7
  internal sealed interface AchUserDetailsStepRN : NamedComponentStep {
@@ -15,7 +14,7 @@ internal sealed interface AchUserDetailsStepRN : NamedComponentStep {
15
14
  data class UserDetailsRetrievedRN(
16
15
  val firstName: String,
17
16
  val lastName: String,
18
- val emailAddress: String
17
+ val emailAddress: String,
19
18
  ) : AchUserDetailsStepRN {
20
19
  override val stepName: String = "userDetailsRetrieved"
21
20
  }
@@ -1,8 +1,8 @@
1
1
  package com.primerioreactnative.datamodels.banks
2
2
 
3
- import kotlinx.serialization.Serializable
4
3
  import com.primerioreactnative.datamodels.NamedComponentStep
5
4
  import com.primerioreactnative.datamodels.PrimerIssuingBankRN
5
+ import kotlinx.serialization.Serializable
6
6
 
7
7
  @Serializable
8
8
  internal sealed interface BanksStepRN : NamedComponentStep {
@@ -13,8 +13,8 @@ internal sealed interface BanksStepRN : NamedComponentStep {
13
13
 
14
14
  @Serializable
15
15
  data class BanksRetrievedRN(
16
- val banks: List<PrimerIssuingBankRN>
16
+ val banks: List<PrimerIssuingBankRN>,
17
17
  ) : BanksStepRN {
18
18
  override val stepName: String = "banksRetrieved"
19
19
  }
20
- }
20
+ }
@@ -1,11 +1,16 @@
1
1
  package com.primerioreactnative.datamodels.extensions.ach
2
2
 
3
- import com.primerioreactnative.datamodels.NamedComponentValidatableData
4
- import com.primerioreactnative.datamodels.ach.AchUserDetailsStepRN
5
- import io.primer.android.stripe.ach.api.composable.AchUserDetailsCollectableData
6
- import kotlinx.serialization.Serializable
7
3
  import com.primerioreactnative.datamodels.ach.AchUserDetailsCollectableDataRN
4
+ import io.primer.android.stripe.ach.api.composable.AchUserDetailsCollectableData
5
+
6
+ internal fun AchUserDetailsCollectableData.FirstName.toFirstNameRN() =
7
+ AchUserDetailsCollectableDataRN.FirstNameRN(
8
+ value,
9
+ )
8
10
 
9
- internal fun AchUserDetailsCollectableData.FirstName.toFirstNameRN() = AchUserDetailsCollectableDataRN.FirstNameRN(value)
10
11
  internal fun AchUserDetailsCollectableData.LastName.toLastNameRN() = AchUserDetailsCollectableDataRN.LastNameRN(value)
11
- internal fun AchUserDetailsCollectableData.EmailAddress.toEmailAddressRN() = AchUserDetailsCollectableDataRN.EmailAddressRN(value)
12
+
13
+ internal fun AchUserDetailsCollectableData.EmailAddress.toEmailAddressRN() =
14
+ AchUserDetailsCollectableDataRN.EmailAddressRN(
15
+ value,
16
+ )
@@ -10,5 +10,5 @@ internal fun AchUserDetailsStep.UserDetailsRetrieved.toUserDetailsRetrievedRN()
10
10
  AchUserDetailsStepRN.UserDetailsRetrievedRN(
11
11
  firstName = firstName,
12
12
  lastName = lastName,
13
- emailAddress = emailAddress
13
+ emailAddress = emailAddress,
14
14
  )
@@ -1,8 +1,8 @@
1
1
  package com.primerioreactnative.datamodels.extensions.banks
2
2
 
3
- import io.primer.android.components.manager.banks.composable.BanksCollectableData
4
3
  import com.primerioreactnative.datamodels.banks.BanksCollectableDataRN
4
+ import io.primer.android.components.manager.banks.composable.BanksCollectableData
5
5
 
6
6
  internal fun BanksCollectableData.BankId.toBankIdRN() = BanksCollectableDataRN.BankIdRN(id)
7
7
 
8
- internal fun BanksCollectableData.Filter.toFilterRN() = BanksCollectableDataRN.FilterRN(text)
8
+ internal fun BanksCollectableData.Filter.toFilterRN() = BanksCollectableDataRN.FilterRN(text)
@@ -1,11 +1,15 @@
1
1
  package com.primerioreactnative.datamodels.extensions.banks
2
2
 
3
- import io.primer.android.components.manager.banks.composable.BanksCollectableData
4
- import io.primer.android.components.manager.banks.composable.BanksStep
5
3
  import com.primerioreactnative.datamodels.banks.BanksStepRN
6
4
  import com.primerioreactnative.extensions.toPrimerIssuingBankRN
7
-
5
+ import io.primer.android.components.manager.banks.composable.BanksStep
8
6
 
9
7
  internal fun BanksStep.Loading.toLoadingRN() = BanksStepRN.LoadingRN()
10
8
 
11
- internal fun BanksStep.BanksRetrieved.toBanksRetrievedRN() = BanksStepRN.BanksRetrievedRN(banks = banks.map { it.toPrimerIssuingBankRN() })
9
+ internal fun BanksStep.BanksRetrieved.toBanksRetrievedRN() =
10
+ BanksStepRN.BanksRetrievedRN(
11
+ banks =
12
+ banks.map {
13
+ it.toPrimerIssuingBankRN()
14
+ },
15
+ )
@@ -7,5 +7,5 @@ internal data class KlarnaPaymentCategoryRN(
7
7
  val identifier: String,
8
8
  val name: String,
9
9
  val descriptiveAssetUrl: String,
10
- val standardAssetUrl: String
11
- )
10
+ val standardAssetUrl: String,
11
+ )
@@ -1,6 +1,5 @@
1
1
  package com.primerioreactnative.datamodels.klarna
2
2
 
3
- import com.primerioreactnative.datamodels.klarna.KlarnaPaymentCategoryRN
4
3
  import com.primerioreactnative.datamodels.NamedComponentValidatableData
5
4
  import kotlinx.serialization.Serializable
6
5
 
@@ -9,7 +8,7 @@ internal sealed interface KlarnaPaymentCollectableDataRN : NamedComponentValidat
9
8
  @Serializable
10
9
  data class PaymentOptionsRN(
11
10
  val returnIntentUrl: String,
12
- val paymentCategory: KlarnaPaymentCategoryRN
11
+ val paymentCategory: KlarnaPaymentCategoryRN,
13
12
  ) : KlarnaPaymentCollectableDataRN {
14
13
  override val validatableDataName: String = "klarnaPaymentOptions"
15
14
  }
@@ -18,4 +17,4 @@ internal sealed interface KlarnaPaymentCollectableDataRN : NamedComponentValidat
18
17
  class FinalizePaymentRN : KlarnaPaymentCollectableDataRN {
19
18
  override val validatableDataName = "klarnaPaymentFinalization"
20
19
  }
21
- }
20
+ }
@@ -1,30 +1,30 @@
1
1
  package com.primerioreactnative.datamodels.klarna
2
2
 
3
- import kotlinx.serialization.Serializable
4
3
  import com.primerioreactnative.datamodels.NamedComponentStep
4
+ import kotlinx.serialization.Serializable
5
5
 
6
6
  @Serializable
7
7
  internal sealed interface KlarnaPaymentStepRN : NamedComponentStep {
8
8
  @Serializable
9
9
  data class PaymentSessionCreatedRN(
10
- val paymentCategories: List<KlarnaPaymentCategoryRN>
10
+ val paymentCategories: List<KlarnaPaymentCategoryRN>,
11
11
  ) : KlarnaPaymentStepRN {
12
12
  override val stepName: String = "paymentSessionCreated"
13
13
  }
14
14
 
15
- @Serializable
15
+ @Serializable
16
16
  class PaymentViewLoadedRN : KlarnaPaymentStepRN {
17
17
  override val stepName: String = "paymentViewLoaded"
18
18
  }
19
19
 
20
- @Serializable
20
+ @Serializable
21
21
  data class PaymentSessionAuthorizedRN(
22
- val isFinalized: Boolean
22
+ val isFinalized: Boolean,
23
23
  ) : KlarnaPaymentStepRN {
24
24
  override val stepName: String = "paymentSessionAuthorized"
25
25
  }
26
26
 
27
- @Serializable
27
+ @Serializable
28
28
  class PaymentSessionFinalizedRN : KlarnaPaymentStepRN {
29
29
  override val stepName: String = "paymentSessionFinalized"
30
30
  }