@primer-io/react-native 2.29.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 (311) 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 -111
  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 +235 -177
  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/ios/Sources/version.swift +1 -1
  119. package/lib/commonjs/HeadlessUniversalCheckout/Components/NativeResourceView.js.map +1 -1
  120. package/lib/commonjs/HeadlessUniversalCheckout/Components/PrimerGooglePayButton.js.map +1 -1
  121. package/lib/commonjs/HeadlessUniversalCheckout/Components/PrimerKlarnaPaymentView.js.map +1 -1
  122. package/lib/commonjs/HeadlessUniversalCheckout/Managers/AssetsManager.js +4 -4
  123. package/lib/commonjs/HeadlessUniversalCheckout/Managers/AssetsManager.js.map +1 -1
  124. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchManager.js +1 -1
  125. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchManager.js.map +1 -1
  126. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchMandateManager.js +2 -2
  127. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchMandateManager.js.map +1 -1
  128. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/ComponentWithRedirectManager.js +1 -1
  129. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/ComponentWithRedirectManager.js.map +1 -1
  130. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/KlarnaManager.js.map +1 -1
  131. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.js.map +1 -1
  132. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js +6 -6
  133. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js.map +1 -1
  134. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/Utils/EventType.js.map +1 -1
  135. package/lib/commonjs/HeadlessUniversalCheckout/Managers/VaultManager.js.map +1 -1
  136. package/lib/commonjs/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js +4 -4
  137. package/lib/commonjs/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js.map +1 -1
  138. package/lib/commonjs/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.js +1 -1
  139. package/lib/commonjs/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.js.map +1 -1
  140. package/lib/commonjs/HeadlessUniversalCheckout/types.js +5 -5
  141. package/lib/commonjs/Primer.js +2 -2
  142. package/lib/commonjs/Primer.js.map +1 -1
  143. package/lib/commonjs/RNPrimer.js +5 -5
  144. package/lib/commonjs/RNPrimer.js.map +1 -1
  145. package/lib/commonjs/index.js +6 -0
  146. package/lib/commonjs/index.js.map +1 -1
  147. package/lib/commonjs/models/PrimerError.js.map +1 -1
  148. package/lib/module/HeadlessUniversalCheckout/Components/NativeResourceView.js +3 -3
  149. package/lib/module/HeadlessUniversalCheckout/Components/NativeResourceView.js.map +1 -1
  150. package/lib/module/HeadlessUniversalCheckout/Components/PrimerGooglePayButton.js +1 -1
  151. package/lib/module/HeadlessUniversalCheckout/Components/PrimerGooglePayButton.js.map +1 -1
  152. package/lib/module/HeadlessUniversalCheckout/Components/PrimerKlarnaPaymentView.js +1 -1
  153. package/lib/module/HeadlessUniversalCheckout/Components/PrimerKlarnaPaymentView.js.map +1 -1
  154. package/lib/module/HeadlessUniversalCheckout/Managers/AssetsManager.js +4 -4
  155. package/lib/module/HeadlessUniversalCheckout/Managers/AssetsManager.js.map +1 -1
  156. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchManager.js +1 -1
  157. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchManager.js.map +1 -1
  158. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchMandateManager.js +2 -2
  159. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchMandateManager.js.map +1 -1
  160. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/ComponentWithRedirectManager.js +1 -1
  161. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/ComponentWithRedirectManager.js.map +1 -1
  162. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/KlarnaManager.js.map +1 -1
  163. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.js.map +1 -1
  164. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js +6 -6
  165. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js.map +1 -1
  166. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/Utils/EventType.js.map +1 -1
  167. package/lib/module/HeadlessUniversalCheckout/Managers/VaultManager.js.map +1 -1
  168. package/lib/module/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js +4 -4
  169. package/lib/module/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js.map +1 -1
  170. package/lib/module/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.js +1 -1
  171. package/lib/module/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.js.map +1 -1
  172. package/lib/module/HeadlessUniversalCheckout/types.js +5 -5
  173. package/lib/module/Primer.js +2 -2
  174. package/lib/module/Primer.js.map +1 -1
  175. package/lib/module/RNPrimer.js +5 -5
  176. package/lib/module/RNPrimer.js.map +1 -1
  177. package/lib/module/index.js +1 -1
  178. package/lib/module/index.js.map +1 -1
  179. package/lib/module/models/PrimerError.js.map +1 -1
  180. package/lib/typescript/HeadlessUniversalCheckout/Components/NativeResourceView.d.ts +2 -2
  181. package/lib/typescript/HeadlessUniversalCheckout/Components/NativeResourceView.d.ts.map +1 -1
  182. package/lib/typescript/HeadlessUniversalCheckout/Components/PrimerGooglePayButton.d.ts +1 -1
  183. package/lib/typescript/HeadlessUniversalCheckout/Components/PrimerGooglePayButton.d.ts.map +1 -1
  184. package/lib/typescript/HeadlessUniversalCheckout/Components/PrimerKlarnaPaymentView.d.ts.map +1 -1
  185. package/lib/typescript/HeadlessUniversalCheckout/Managers/AssetsManager.d.ts +4 -4
  186. package/lib/typescript/HeadlessUniversalCheckout/Managers/AssetsManager.d.ts.map +1 -1
  187. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchManager.d.ts.map +1 -1
  188. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchMandateManager.d.ts.map +1 -1
  189. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/ComponentWithRedirectManager.d.ts.map +1 -1
  190. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/KlarnaManager.d.ts.map +1 -1
  191. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.d.ts.map +1 -1
  192. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.d.ts.map +1 -1
  193. package/lib/typescript/HeadlessUniversalCheckout/Managers/VaultManager.d.ts.map +1 -1
  194. package/lib/typescript/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.d.ts.map +1 -1
  195. package/lib/typescript/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.d.ts.map +1 -1
  196. package/lib/typescript/Primer.d.ts.map +1 -1
  197. package/lib/typescript/RNPrimer.d.ts.map +1 -1
  198. package/lib/typescript/index.d.ts +5 -5
  199. package/lib/typescript/index.d.ts.map +1 -1
  200. package/lib/typescript/models/IssuingBank.d.ts.map +1 -1
  201. package/lib/typescript/models/NamedComponentStep.d.ts.map +1 -1
  202. package/lib/typescript/models/NamedComponentValidatableData.d.ts.map +1 -1
  203. package/lib/typescript/models/PrimerCheckoutAdditionalInfo.d.ts +4 -4
  204. package/lib/typescript/models/PrimerCheckoutAdditionalInfo.d.ts.map +1 -1
  205. package/lib/typescript/models/PrimerCheckoutData.d.ts +1 -1
  206. package/lib/typescript/models/PrimerCheckoutData.d.ts.map +1 -1
  207. package/lib/typescript/models/PrimerCheckoutPaymentMethodData.d.ts.map +1 -1
  208. package/lib/typescript/models/PrimerClientSession.d.ts.map +1 -1
  209. package/lib/typescript/models/PrimerComponentDataValidation.d.ts +5 -5
  210. package/lib/typescript/models/PrimerComponentDataValidation.d.ts.map +1 -1
  211. package/lib/typescript/models/PrimerCountryCode.d.ts +1 -1
  212. package/lib/typescript/models/PrimerCountryCode.d.ts.map +1 -1
  213. package/lib/typescript/models/PrimerCurrencyCode.d.ts +1 -1
  214. package/lib/typescript/models/PrimerCurrencyCode.d.ts.map +1 -1
  215. package/lib/typescript/models/PrimerError.d.ts.map +1 -1
  216. package/lib/typescript/models/PrimerHandlers.d.ts.map +1 -1
  217. package/lib/typescript/models/PrimerHeadlessUniversalCheckoutPaymentMethod.d.ts +2 -2
  218. package/lib/typescript/models/PrimerHeadlessUniversalCheckoutPaymentMethod.d.ts.map +1 -1
  219. package/lib/typescript/models/PrimerImplementedRNCallbacks.d.ts.map +1 -1
  220. package/lib/typescript/models/PrimerInitializationData.d.ts +1 -1
  221. package/lib/typescript/models/PrimerInitializationData.d.ts.map +1 -1
  222. package/lib/typescript/models/PrimerInputElementType.d.ts.map +1 -1
  223. package/lib/typescript/models/PrimerInterfaces.d.ts +1 -1
  224. package/lib/typescript/models/PrimerPaymentMethodManagerCategory.d.ts.map +1 -1
  225. package/lib/typescript/models/PrimerPaymentMethodResource.d.ts.map +1 -1
  226. package/lib/typescript/models/PrimerRawData.d.ts.map +1 -1
  227. package/lib/typescript/models/PrimerSettings.d.ts +15 -10
  228. package/lib/typescript/models/PrimerSettings.d.ts.map +1 -1
  229. package/lib/typescript/models/PrimerValidationError.d.ts.map +1 -1
  230. package/lib/typescript/models/PrimerValidationErrorResult.d.ts +1 -1
  231. package/lib/typescript/models/PrimerValidationErrorResult.d.ts.map +1 -1
  232. package/lib/typescript/models/PrimerVaultedPaymentMethod.d.ts +1 -1
  233. package/lib/typescript/models/PrimerVaultedPaymentMethod.d.ts.map +1 -1
  234. package/lib/typescript/models/PrimerVaultedPaymentMethodAdditionalData.d.ts.map +1 -1
  235. package/lib/typescript/models/PrimerVaultedPaymentMethodResult.d.ts +1 -1
  236. package/lib/typescript/models/PrimerVaultedPaymentMethodResult.d.ts.map +1 -1
  237. package/lib/typescript/models/RetailOutletsRetail.d.ts.map +1 -1
  238. package/lib/typescript/models/ach/AchCollectableData.d.ts +4 -4
  239. package/lib/typescript/models/ach/AchCollectableData.d.ts.map +1 -1
  240. package/lib/typescript/models/ach/AchSteps.d.ts +3 -3
  241. package/lib/typescript/models/ach/AchSteps.d.ts.map +1 -1
  242. package/lib/typescript/models/banks/BanksCollectableData.d.ts +3 -3
  243. package/lib/typescript/models/banks/BanksCollectableData.d.ts.map +1 -1
  244. package/lib/typescript/models/banks/BanksSteps.d.ts +6 -6
  245. package/lib/typescript/models/banks/BanksSteps.d.ts.map +1 -1
  246. package/lib/typescript/models/klarna/KlarnaPaymentCategory.d.ts +2 -2
  247. package/lib/typescript/models/klarna/KlarnaPaymentCategory.d.ts.map +1 -1
  248. package/lib/typescript/models/klarna/KlarnaPaymentCollectableData.d.ts +4 -4
  249. package/lib/typescript/models/klarna/KlarnaPaymentCollectableData.d.ts.map +1 -1
  250. package/lib/typescript/models/klarna/KlarnaPaymentSteps.d.ts +6 -6
  251. package/lib/typescript/models/klarna/KlarnaPaymentSteps.d.ts.map +1 -1
  252. package/lib/typescript/utils/index.d.ts +1 -1
  253. package/package.json +5 -4
  254. package/primer-io-react-native.podspec +1 -1
  255. package/src/HeadlessUniversalCheckout/Components/NativeResourceView.tsx +17 -21
  256. package/src/HeadlessUniversalCheckout/Components/PrimerGooglePayButton.tsx +3 -6
  257. package/src/HeadlessUniversalCheckout/Components/PrimerKlarnaPaymentView.tsx +2 -4
  258. package/src/HeadlessUniversalCheckout/Managers/AssetsManager.ts +68 -69
  259. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchManager.ts +127 -131
  260. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchMandateManager.ts +23 -25
  261. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/ComponentWithRedirectManager.ts +21 -30
  262. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/KlarnaManager.ts +137 -141
  263. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.ts +17 -18
  264. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.ts +158 -142
  265. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/Utils/EventType.ts +7 -7
  266. package/src/HeadlessUniversalCheckout/Managers/VaultManager.ts +96 -87
  267. package/src/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.ts +159 -170
  268. package/src/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.ts +2 -6
  269. package/src/HeadlessUniversalCheckout/types.ts +5 -5
  270. package/src/Primer.ts +60 -57
  271. package/src/RNPrimer.ts +53 -54
  272. package/src/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.tsx +1 -1
  273. package/src/index.tsx +74 -37
  274. package/src/models/IssuingBank.ts +5 -5
  275. package/src/models/NamedComponentStep.ts +5 -5
  276. package/src/models/NamedComponentValidatableData.ts +5 -5
  277. package/src/models/PrimerCheckoutAdditionalInfo.ts +18 -23
  278. package/src/models/PrimerCheckoutData.ts +8 -8
  279. package/src/models/PrimerCheckoutPaymentMethodData.ts +6 -6
  280. package/src/models/PrimerClientSession.ts +34 -34
  281. package/src/models/PrimerComponentDataValidation.ts +33 -33
  282. package/src/models/PrimerCountryCode.ts +1 -1
  283. package/src/models/PrimerCurrencyCode.ts +1 -1
  284. package/src/models/PrimerError.ts +7 -1
  285. package/src/models/PrimerHandlers.ts +24 -24
  286. package/src/models/PrimerHeadlessUniversalCheckoutPaymentMethod.ts +4 -4
  287. package/src/models/PrimerImplementedRNCallbacks.ts +15 -15
  288. package/src/models/PrimerInitializationData.ts +3 -3
  289. package/src/models/PrimerInputElementType.ts +9 -9
  290. package/src/models/PrimerInterfaces.ts +1 -1
  291. package/src/models/PrimerPaymentMethodManagerCategory.ts +4 -4
  292. package/src/models/PrimerPaymentMethodResource.ts +11 -11
  293. package/src/models/PrimerRawData.ts +9 -9
  294. package/src/models/PrimerSessionIntent.ts +1 -1
  295. package/src/models/PrimerSettings.ts +47 -21
  296. package/src/models/PrimerValidationError.ts +3 -3
  297. package/src/models/PrimerValidationErrorResult.ts +2 -2
  298. package/src/models/PrimerVaultedPaymentMethod.ts +7 -7
  299. package/src/models/PrimerVaultedPaymentMethodAdditionalData.ts +1 -1
  300. package/src/models/PrimerVaultedPaymentMethodResult.ts +3 -3
  301. package/src/models/RetailOutletsRetail.ts +5 -5
  302. package/src/models/ach/AchCollectableData.ts +12 -12
  303. package/src/models/ach/AchSteps.ts +18 -18
  304. package/src/models/banks/BanksCollectableData.ts +14 -14
  305. package/src/models/banks/BanksSteps.ts +13 -13
  306. package/src/models/klarna/KlarnaPaymentCategory.ts +16 -16
  307. package/src/models/klarna/KlarnaPaymentCollectableData.ts +16 -15
  308. package/src/models/klarna/KlarnaPaymentSteps.ts +21 -17
  309. package/src/utils/index.ts +1 -1
  310. package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/raw/cardRedirect/PrimerRNCardRedirectData.kt +0 -19
  311. package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/resource/Resources.kt +0 -138
@@ -8,7 +8,10 @@ import { PrimerError } from '../models/PrimerError';
8
8
  import type { PrimerPaymentMethodTokenData } from '../models/PrimerPaymentMethodTokenData';
9
9
  import type { PrimerImplementedRNCallbacks } from 'src/models/PrimerImplementedRNCallbacks';
10
10
  import type { IPrimerHeadlessUniversalCheckoutPaymentMethod } from '../models/PrimerHeadlessUniversalCheckoutPaymentMethod';
11
- import type { PrimerHeadlessUniversalCheckoutResumeHandler, PrimerPaymentCreationHandler } from 'src/models/PrimerHandlers';
11
+ import type {
12
+ PrimerHeadlessUniversalCheckoutResumeHandler,
13
+ PrimerPaymentCreationHandler,
14
+ } from 'src/models/PrimerHandlers';
12
15
 
13
16
  ///////////////////////////////////////////
14
17
  // DECISION HANDLERS
@@ -24,11 +27,11 @@ const tokenizationHandler: PrimerHeadlessUniversalCheckoutResumeHandler = {
24
27
  console.error(err);
25
28
  }
26
29
  },
27
-
30
+
28
31
  complete: () => {
29
32
  RNPrimerHeadlessUniversalCheckout.handleCompleteFlow();
30
- }
31
- }
33
+ },
34
+ };
32
35
 
33
36
  // Resume Handler
34
37
 
@@ -43,8 +46,8 @@ const resumeHandler: PrimerHeadlessUniversalCheckoutResumeHandler = {
43
46
 
44
47
  complete: () => {
45
48
  RNPrimerHeadlessUniversalCheckout.handleCompleteFlow();
46
- }
47
- }
49
+ },
50
+ };
48
51
 
49
52
  // Payment Creation Handler
50
53
 
@@ -63,10 +66,10 @@ const paymentCreationHandler: PrimerPaymentCreationHandler = {
63
66
  } catch (err) {
64
67
  console.error(err);
65
68
  }
66
- }
67
- }
69
+ },
70
+ };
68
71
 
69
- export let primerSettings: PrimerSettings | undefined = undefined;
72
+ export let primerSettings: PrimerSettings | undefined;
70
73
 
71
74
  async function configureListeners(): Promise<void> {
72
75
  return new Promise(async (resolve, reject) => {
@@ -74,216 +77,199 @@ async function configureListeners(): Promise<void> {
74
77
  RNPrimerHeadlessUniversalCheckout.removeAllListeners();
75
78
 
76
79
  let implementedRNCallbacks: PrimerImplementedRNCallbacks = {
77
- onAvailablePaymentMethodsLoad: (primerSettings?.headlessUniversalCheckoutCallbacks?.onAvailablePaymentMethodsLoad !== undefined) || false,
78
- onTokenizationStart: (primerSettings?.headlessUniversalCheckoutCallbacks?.onTokenizationStart !== undefined) || false,
79
- onTokenizationSuccess: (primerSettings?.headlessUniversalCheckoutCallbacks?.onTokenizationSuccess !== undefined) || false,
80
-
81
- onCheckoutResume: (primerSettings?.headlessUniversalCheckoutCallbacks?.onCheckoutResume !== undefined) || false,
82
- onCheckoutPending: (primerSettings?.headlessUniversalCheckoutCallbacks?.onCheckoutPending !== undefined) || false,
83
- onCheckoutAdditionalInfo: (primerSettings?.headlessUniversalCheckoutCallbacks?.onCheckoutAdditionalInfo !== undefined) || false,
84
-
85
- onError: (primerSettings?.headlessUniversalCheckoutCallbacks?.onError !== undefined) || false,
86
- onCheckoutComplete: (primerSettings?.headlessUniversalCheckoutCallbacks?.onCheckoutComplete !== undefined) || false,
87
- onBeforeClientSessionUpdate: (primerSettings?.headlessUniversalCheckoutCallbacks?.onBeforeClientSessionUpdate !== undefined) || false,
88
-
89
- onClientSessionUpdate: (primerSettings?.headlessUniversalCheckoutCallbacks?.onClientSessionUpdate !== undefined) || false,
90
- onBeforePaymentCreate: (primerSettings?.headlessUniversalCheckoutCallbacks?.onBeforePaymentCreate !== undefined) || false,
91
- onPreparationStart: (primerSettings?.headlessUniversalCheckoutCallbacks?.onPreparationStart !== undefined) || false,
92
-
93
- onPaymentMethodShow: (primerSettings?.headlessUniversalCheckoutCallbacks?.onPaymentMethodShow !== undefined) || false,
94
- onDismiss: false
80
+ onAvailablePaymentMethodsLoad:
81
+ primerSettings?.headlessUniversalCheckoutCallbacks?.onAvailablePaymentMethodsLoad !== undefined || false,
82
+ onTokenizationStart:
83
+ primerSettings?.headlessUniversalCheckoutCallbacks?.onTokenizationStart !== undefined || false,
84
+ onTokenizationSuccess:
85
+ primerSettings?.headlessUniversalCheckoutCallbacks?.onTokenizationSuccess !== undefined || false,
86
+
87
+ onCheckoutResume: primerSettings?.headlessUniversalCheckoutCallbacks?.onCheckoutResume !== undefined || false,
88
+ onCheckoutPending: primerSettings?.headlessUniversalCheckoutCallbacks?.onCheckoutPending !== undefined || false,
89
+ onCheckoutAdditionalInfo:
90
+ primerSettings?.headlessUniversalCheckoutCallbacks?.onCheckoutAdditionalInfo !== undefined || false,
91
+
92
+ onError: primerSettings?.headlessUniversalCheckoutCallbacks?.onError !== undefined || false,
93
+ onCheckoutComplete:
94
+ primerSettings?.headlessUniversalCheckoutCallbacks?.onCheckoutComplete !== undefined || false,
95
+ onBeforeClientSessionUpdate:
96
+ primerSettings?.headlessUniversalCheckoutCallbacks?.onBeforeClientSessionUpdate !== undefined || false,
97
+
98
+ onClientSessionUpdate:
99
+ primerSettings?.headlessUniversalCheckoutCallbacks?.onClientSessionUpdate !== undefined || false,
100
+ onBeforePaymentCreate:
101
+ primerSettings?.headlessUniversalCheckoutCallbacks?.onBeforePaymentCreate !== undefined || false,
102
+ onPreparationStart:
103
+ primerSettings?.headlessUniversalCheckoutCallbacks?.onPreparationStart !== undefined || false,
104
+
105
+ onPaymentMethodShow:
106
+ primerSettings?.headlessUniversalCheckoutCallbacks?.onPaymentMethodShow !== undefined || false,
107
+ onDismiss: false,
95
108
  };
96
109
 
97
110
  await RNPrimerHeadlessUniversalCheckout.setImplementedRNCallbacks(implementedRNCallbacks);
98
111
 
99
112
  if (implementedRNCallbacks.onAvailablePaymentMethodsLoad) {
100
- RNPrimerHeadlessUniversalCheckout.addListener(
101
- 'onAvailablePaymentMethodsLoad',
102
- (data) => {
103
- if (primerSettings?.headlessUniversalCheckoutCallbacks?.onAvailablePaymentMethodsLoad) {
104
- const availablePaymentMethods: IPrimerHeadlessUniversalCheckoutPaymentMethod[] = data.availablePaymentMethods || [];
105
- primerSettings.headlessUniversalCheckoutCallbacks.onAvailablePaymentMethodsLoad(availablePaymentMethods);
106
- } else {
107
- // Ignore!
108
- }
113
+ RNPrimerHeadlessUniversalCheckout.addListener('onAvailablePaymentMethodsLoad', (data) => {
114
+ if (primerSettings?.headlessUniversalCheckoutCallbacks?.onAvailablePaymentMethodsLoad) {
115
+ const availablePaymentMethods: IPrimerHeadlessUniversalCheckoutPaymentMethod[] =
116
+ data.availablePaymentMethods || [];
117
+ primerSettings.headlessUniversalCheckoutCallbacks.onAvailablePaymentMethodsLoad(availablePaymentMethods);
118
+ } else {
119
+ // Ignore!
109
120
  }
110
- );
121
+ });
111
122
  }
112
123
 
113
124
  if (implementedRNCallbacks.onPreparationStart) {
114
- RNPrimerHeadlessUniversalCheckout.addListener(
115
- 'onPreparationStart',
116
- (data) => {
117
- if (primerSettings?.headlessUniversalCheckoutCallbacks?.onPreparationStart) {
118
- primerSettings.headlessUniversalCheckoutCallbacks.onPreparationStart(data.paymentMethodType);
119
- } else {
120
- // Ignore!
121
- }
125
+ RNPrimerHeadlessUniversalCheckout.addListener('onPreparationStart', (data) => {
126
+ if (primerSettings?.headlessUniversalCheckoutCallbacks?.onPreparationStart) {
127
+ primerSettings.headlessUniversalCheckoutCallbacks.onPreparationStart(data.paymentMethodType);
128
+ } else {
129
+ // Ignore!
122
130
  }
123
- );
131
+ });
124
132
  }
125
133
 
126
134
  if (implementedRNCallbacks.onBeforeClientSessionUpdate) {
127
- RNPrimerHeadlessUniversalCheckout.addListener(
128
- 'onBeforeClientSessionUpdate',
129
- () => {
130
- if (primerSettings?.headlessUniversalCheckoutCallbacks?.onBeforeClientSessionUpdate) {
131
- primerSettings.headlessUniversalCheckoutCallbacks.onBeforeClientSessionUpdate();
132
- } else {
133
- // Ignore!
134
- }
135
+ RNPrimerHeadlessUniversalCheckout.addListener('onBeforeClientSessionUpdate', () => {
136
+ if (primerSettings?.headlessUniversalCheckoutCallbacks?.onBeforeClientSessionUpdate) {
137
+ primerSettings.headlessUniversalCheckoutCallbacks.onBeforeClientSessionUpdate();
138
+ } else {
139
+ // Ignore!
135
140
  }
136
- );
141
+ });
137
142
  }
138
143
 
139
144
  if (implementedRNCallbacks.onClientSessionUpdate) {
140
- RNPrimerHeadlessUniversalCheckout.addListener(
141
- 'onClientSessionUpdate',
142
- (data) => {
143
- if (primerSettings?.headlessUniversalCheckoutCallbacks?.onClientSessionUpdate) {
144
- const clientSession: PrimerClientSession = data.clientSession;
145
- primerSettings.headlessUniversalCheckoutCallbacks.onClientSessionUpdate(clientSession);
146
- } else {
147
- // Ignore!
148
- }
145
+ RNPrimerHeadlessUniversalCheckout.addListener('onClientSessionUpdate', (data) => {
146
+ if (primerSettings?.headlessUniversalCheckoutCallbacks?.onClientSessionUpdate) {
147
+ const clientSession: PrimerClientSession = data.clientSession;
148
+ primerSettings.headlessUniversalCheckoutCallbacks.onClientSessionUpdate(clientSession);
149
+ } else {
150
+ // Ignore!
149
151
  }
150
- );
152
+ });
151
153
  }
152
154
 
153
155
  if (implementedRNCallbacks.onBeforePaymentCreate) {
154
- RNPrimerHeadlessUniversalCheckout.addListener(
155
- 'onBeforePaymentCreate',
156
- (data) => {
157
- if (primerSettings?.headlessUniversalCheckoutCallbacks?.onBeforePaymentCreate) {
158
- const checkoutPaymentMethodData: PrimerCheckoutPaymentMethodData = data;
159
- primerSettings.headlessUniversalCheckoutCallbacks.onBeforePaymentCreate(checkoutPaymentMethodData, paymentCreationHandler);
160
- } else {
161
- // Ignore!
162
- }
156
+ RNPrimerHeadlessUniversalCheckout.addListener('onBeforePaymentCreate', (data) => {
157
+ if (primerSettings?.headlessUniversalCheckoutCallbacks?.onBeforePaymentCreate) {
158
+ const checkoutPaymentMethodData: PrimerCheckoutPaymentMethodData = data;
159
+ primerSettings.headlessUniversalCheckoutCallbacks.onBeforePaymentCreate(
160
+ checkoutPaymentMethodData,
161
+ paymentCreationHandler
162
+ );
163
+ } else {
164
+ // Ignore!
163
165
  }
164
- );
166
+ });
165
167
  }
166
168
 
167
169
  if (implementedRNCallbacks.onTokenizationStart) {
168
- RNPrimerHeadlessUniversalCheckout.addListener(
169
- 'onTokenizationStart',
170
- (data) => {
171
- if (primerSettings?.headlessUniversalCheckoutCallbacks?.onTokenizationStart) {
172
- primerSettings.headlessUniversalCheckoutCallbacks.onTokenizationStart(data.paymentMethodType);
173
- } else {
174
- // Ignore!
175
- }
170
+ RNPrimerHeadlessUniversalCheckout.addListener('onTokenizationStart', (data) => {
171
+ if (primerSettings?.headlessUniversalCheckoutCallbacks?.onTokenizationStart) {
172
+ primerSettings.headlessUniversalCheckoutCallbacks.onTokenizationStart(data.paymentMethodType);
173
+ } else {
174
+ // Ignore!
176
175
  }
177
- );
176
+ });
178
177
  }
179
178
 
180
179
  if (implementedRNCallbacks.onPaymentMethodShow) {
181
- RNPrimerHeadlessUniversalCheckout.addListener(
182
- 'onPaymentMethodShow',
183
- (data) => {
184
- if (primerSettings?.headlessUniversalCheckoutCallbacks?.onPaymentMethodShow) {
185
- primerSettings.headlessUniversalCheckoutCallbacks.onPaymentMethodShow(data.paymentMethodType);
186
- } else {
187
- // Ignore!
188
- }
180
+ RNPrimerHeadlessUniversalCheckout.addListener('onPaymentMethodShow', (data) => {
181
+ if (primerSettings?.headlessUniversalCheckoutCallbacks?.onPaymentMethodShow) {
182
+ primerSettings.headlessUniversalCheckoutCallbacks.onPaymentMethodShow(data.paymentMethodType);
183
+ } else {
184
+ // Ignore!
189
185
  }
190
- );
186
+ });
191
187
  }
192
188
 
193
189
  if (implementedRNCallbacks.onTokenizationSuccess) {
194
- RNPrimerHeadlessUniversalCheckout.addListener(
195
- 'onTokenizationSuccess',
196
- (data) => {
197
- if (primerSettings?.headlessUniversalCheckoutCallbacks?.onTokenizationSuccess) {
198
- const paymentMethodTokenData: PrimerPaymentMethodTokenData = data.paymentMethodTokenData;
199
- primerSettings.headlessUniversalCheckoutCallbacks.onTokenizationSuccess(paymentMethodTokenData, tokenizationHandler);
200
- } else {
201
- // Ignore!
202
- }
190
+ RNPrimerHeadlessUniversalCheckout.addListener('onTokenizationSuccess', (data) => {
191
+ if (primerSettings?.headlessUniversalCheckoutCallbacks?.onTokenizationSuccess) {
192
+ const paymentMethodTokenData: PrimerPaymentMethodTokenData = data.paymentMethodTokenData;
193
+ primerSettings.headlessUniversalCheckoutCallbacks.onTokenizationSuccess(
194
+ paymentMethodTokenData,
195
+ tokenizationHandler
196
+ );
197
+ } else {
198
+ // Ignore!
203
199
  }
204
- );
200
+ });
205
201
  }
206
202
 
207
203
  if (implementedRNCallbacks.onCheckoutResume) {
208
- RNPrimerHeadlessUniversalCheckout.addListener(
209
- 'onCheckoutResume',
210
- (data) => {
211
- if (primerSettings?.headlessUniversalCheckoutCallbacks?.onCheckoutResume) {
212
- primerSettings.headlessUniversalCheckoutCallbacks.onCheckoutResume(data.resumeToken, resumeHandler);
213
- } else {
214
- // Ignore!
215
- }
204
+ RNPrimerHeadlessUniversalCheckout.addListener('onCheckoutResume', (data) => {
205
+ if (primerSettings?.headlessUniversalCheckoutCallbacks?.onCheckoutResume) {
206
+ primerSettings.headlessUniversalCheckoutCallbacks.onCheckoutResume(data.resumeToken, resumeHandler);
207
+ } else {
208
+ // Ignore!
216
209
  }
217
- );
210
+ });
218
211
  }
219
-
212
+
220
213
  if (implementedRNCallbacks.onCheckoutPending) {
221
- RNPrimerHeadlessUniversalCheckout.addListener(
222
- 'onCheckoutPending',
223
- (data) => {
224
- if (primerSettings?.headlessUniversalCheckoutCallbacks?.onCheckoutPending) {
225
- const checkoutAdditionalInfo: PrimerCheckoutAdditionalInfo = data;
226
- primerSettings.headlessUniversalCheckoutCallbacks.onCheckoutPending(checkoutAdditionalInfo);
227
- } else {
228
- // Ignore!
229
- }
214
+ RNPrimerHeadlessUniversalCheckout.addListener('onCheckoutPending', (data) => {
215
+ if (primerSettings?.headlessUniversalCheckoutCallbacks?.onCheckoutPending) {
216
+ const checkoutAdditionalInfo: PrimerCheckoutAdditionalInfo = data;
217
+ primerSettings.headlessUniversalCheckoutCallbacks.onCheckoutPending(checkoutAdditionalInfo);
218
+ } else {
219
+ // Ignore!
230
220
  }
231
- );
221
+ });
232
222
  }
233
223
 
234
224
  if (implementedRNCallbacks.onCheckoutAdditionalInfo) {
235
- RNPrimerHeadlessUniversalCheckout.addListener(
236
- 'onCheckoutAdditionalInfo',
237
- (data) => {
238
- if (primerSettings?.headlessUniversalCheckoutCallbacks?.onCheckoutAdditionalInfo) {
239
- const checkoutAdditionalInfo: PrimerCheckoutAdditionalInfo = data;
240
- primerSettings.headlessUniversalCheckoutCallbacks.onCheckoutAdditionalInfo(checkoutAdditionalInfo);
241
- } else {
242
- // Ignore!
243
- }
225
+ RNPrimerHeadlessUniversalCheckout.addListener('onCheckoutAdditionalInfo', (data) => {
226
+ if (primerSettings?.headlessUniversalCheckoutCallbacks?.onCheckoutAdditionalInfo) {
227
+ const checkoutAdditionalInfo: PrimerCheckoutAdditionalInfo = data;
228
+ primerSettings.headlessUniversalCheckoutCallbacks.onCheckoutAdditionalInfo(checkoutAdditionalInfo);
229
+ } else {
230
+ // Ignore!
244
231
  }
245
- );
232
+ });
246
233
  }
247
-
234
+
248
235
  if (implementedRNCallbacks.onCheckoutComplete) {
249
- RNPrimerHeadlessUniversalCheckout.addListener(
250
- 'onCheckoutComplete',
251
- (data) => {
252
- if (primerSettings?.headlessUniversalCheckoutCallbacks?.onCheckoutComplete) {
253
- const checkoutData: PrimerCheckoutData = data;
254
- primerSettings.headlessUniversalCheckoutCallbacks.onCheckoutComplete(checkoutData);
255
- } else {
256
- // Ignore!
257
- }
236
+ RNPrimerHeadlessUniversalCheckout.addListener('onCheckoutComplete', (data) => {
237
+ if (primerSettings?.headlessUniversalCheckoutCallbacks?.onCheckoutComplete) {
238
+ const checkoutData: PrimerCheckoutData = data;
239
+ primerSettings.headlessUniversalCheckoutCallbacks.onCheckoutComplete(checkoutData);
240
+ } else {
241
+ // Ignore!
258
242
  }
259
- );
243
+ });
260
244
  }
261
245
 
262
246
  if (implementedRNCallbacks.onError) {
263
- RNPrimerHeadlessUniversalCheckout.addListener(
264
- 'onError',
265
- (data) => {
266
- if (primerSettings?.headlessUniversalCheckoutCallbacks?.onError) {
267
- if (data && data.error && data.error.errorId && primerSettings) {
268
- const errorId: string = data.error.errorId;
269
- const errorCode: string | undefined = data.error.errorCode;
270
- const description: string | undefined = data.error.description;
271
- const recoverySuggestion: string | undefined = data.error.recoverySuggestion;
272
- const diagnosticsId: string | undefined = data.error.diagnosticsId;
273
- const primerError = new PrimerError(errorId, errorCode, description || 'Unknown error', recoverySuggestion, diagnosticsId);
274
-
275
- const checkoutData: PrimerCheckoutData = data.checkoutData;
276
- primerSettings.headlessUniversalCheckoutCallbacks.onError(primerError, checkoutData);
277
- }
278
- } else {
279
- // Ignore!
247
+ RNPrimerHeadlessUniversalCheckout.addListener('onError', (data) => {
248
+ if (primerSettings?.headlessUniversalCheckoutCallbacks?.onError) {
249
+ if (data && data.error && data.error.errorId && primerSettings) {
250
+ const errorId: string = data.error.errorId;
251
+ const errorCode: string | undefined = data.error.errorCode;
252
+ const description: string | undefined = data.error.description;
253
+ const recoverySuggestion: string | undefined = data.error.recoverySuggestion;
254
+ const diagnosticsId: string | undefined = data.error.diagnosticsId;
255
+ const primerError = new PrimerError(
256
+ errorId,
257
+ errorCode,
258
+ description || 'Unknown error',
259
+ recoverySuggestion,
260
+ diagnosticsId
261
+ );
262
+
263
+ const checkoutData: PrimerCheckoutData = data.checkoutData;
264
+ primerSettings.headlessUniversalCheckoutCallbacks.onError(primerError, checkoutData);
280
265
  }
266
+ } else {
267
+ // Ignore!
281
268
  }
282
- );
269
+ });
283
270
  }
284
271
 
285
272
  resolve();
286
-
287
273
  } catch (err) {
288
274
  reject(err);
289
275
  }
@@ -291,13 +277,10 @@ async function configureListeners(): Promise<void> {
291
277
  }
292
278
 
293
279
  class PrimerHeadlessUniversalCheckoutClass {
294
-
295
280
  ///////////////////////////////////////////
296
281
  // Init
297
282
  ///////////////////////////////////////////
298
- constructor() {
299
-
300
- }
283
+ constructor() {}
301
284
 
302
285
  ///////////////////////////////////////////
303
286
  // API
@@ -313,11 +296,17 @@ class PrimerHeadlessUniversalCheckoutClass {
313
296
  await configureListeners();
314
297
  const res = await RNPrimerHeadlessUniversalCheckout.startWithClientToken(clientToken, settings);
315
298
 
316
- if (res["availablePaymentMethods"]) {
317
- const availablePaymentMethods: IPrimerHeadlessUniversalCheckoutPaymentMethod[] = res["availablePaymentMethods"];
299
+ if (res.availablePaymentMethods) {
300
+ const availablePaymentMethods: IPrimerHeadlessUniversalCheckoutPaymentMethod[] = res.availablePaymentMethods;
318
301
  resolve(availablePaymentMethods);
319
302
  } else {
320
- const err = new PrimerError("primer-rn-sdk", undefined, "Failed to find availablePaymentMethods", "Create another client session", undefined);
303
+ const err = new PrimerError(
304
+ 'primer-rn-sdk',
305
+ undefined,
306
+ 'Failed to find availablePaymentMethods',
307
+ 'Create another client session',
308
+ undefined
309
+ );
321
310
  reject(err);
322
311
  }
323
312
  } catch (err) {
@@ -10,19 +10,15 @@ type EventType =
10
10
  | 'onAvailablePaymentMethodsLoad'
11
11
  | 'onTokenizationStart'
12
12
  | 'onTokenizationSuccess'
13
-
14
13
  | 'onCheckoutResume'
15
14
  | 'onCheckoutPending'
16
15
  | 'onCheckoutAdditionalInfo'
17
-
18
16
  | 'onError'
19
17
  | 'onCheckoutComplete'
20
18
  | 'onBeforeClientSessionUpdate'
21
-
22
19
  | 'onClientSessionUpdate'
23
20
  | 'onBeforePaymentCreate'
24
21
  | 'onPreparationStart'
25
-
26
22
  | 'onPaymentMethodShow';
27
23
 
28
24
  const eventTypes: EventType[] = [
@@ -42,7 +38,7 @@ const eventTypes: EventType[] = [
42
38
  'onBeforePaymentCreate',
43
39
  'onPreparationStart',
44
40
 
45
- 'onPaymentMethodShow'
41
+ 'onPaymentMethodShow',
46
42
  ];
47
43
 
48
44
  const RNPrimerHeadlessUniversalCheckout = {
@@ -118,7 +114,7 @@ const RNPrimerHeadlessUniversalCheckout = {
118
114
  handlePaymentCreationAbort: (errorMessage: string | null): Promise<void> => {
119
115
  return new Promise(async (resolve, reject) => {
120
116
  try {
121
- await PrimerHeadlessUniversalCheckout.handlePaymentCreationAbort(errorMessage || "");
117
+ await PrimerHeadlessUniversalCheckout.handlePaymentCreationAbort(errorMessage || '');
122
118
  resolve();
123
119
  } catch (err) {
124
120
  reject(err);
@@ -1,13 +1,13 @@
1
1
  // import type { PrimerCheckoutData } from '../models/PrimerCheckoutData';
2
2
  // import type { PrimerCheckoutPaymentMethodData } from '../models/PrimerCheckoutPaymentMethodData';
3
- // import type {
4
- // PrimerTokenizationHandler,
5
- // PrimerResumeHandler,
6
- // PrimerPaymentCreationHandler,
3
+ // import type {
4
+ // PrimerTokenizationHandler,
5
+ // PrimerResumeHandler,
6
+ // PrimerPaymentCreationHandler,
7
7
  // PrimerErrorHandler
8
8
  // } from '../models/PrimerInterfaces';
9
9
  // import type { PrimerClientSession } from '../models/PrimerClientSession';
10
- // import type { PrimerPaymentMethodTokenData } from '../models/PrimerPaymentMethodTokenData';
10
+ // import type { PrimerPaymentMethodTokenData } from '../models/PrimerPaymentMethodTokenData';
11
11
  // import type { PrimerError } from '../models/PrimerError';
12
12
 
13
13
  // export interface PrimerHeadlessUniversalCheckoutStartResponse {