@primer-io/react-native 2.38.0 → 2.39.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 (479) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +149 -0
  3. package/android/build.gradle +34 -83
  4. package/android/src/main/java/com/primerioreactnative/{PrimerRN.kt → DefaultNativePrimerModule.kt} +87 -79
  5. package/android/src/main/java/com/primerioreactnative/PrimerRNHeadlessUniversalCheckout.kt +4 -1
  6. package/android/src/main/java/com/primerioreactnative/PrimerSdkPackage.kt +117 -0
  7. package/android/src/main/java/com/primerioreactnative/components/manager/ach/PrimerRNAchMandateManager.kt +4 -1
  8. package/android/src/main/java/com/primerioreactnative/components/manager/ach/PrimerRNHeadlessUniversalCheckoutStripeAchUserDetailsComponent.kt +8 -4
  9. package/android/src/main/java/com/primerioreactnative/components/manager/asset/PrimerRNHeadlessUniversalCheckoutAssetManager.kt +7 -2
  10. package/android/src/main/java/com/primerioreactnative/components/manager/banks/PrimerRNHeadlessUniversalCheckoutBanksComponent.kt +7 -4
  11. package/android/src/main/java/com/primerioreactnative/components/manager/googlePay/PrimerGooglePayButtonConstantsModule.kt +3 -1
  12. package/android/src/main/java/com/primerioreactnative/components/manager/klarna/PrimerRNHeadlessUniversalCheckoutKlarnaComponent.kt +9 -5
  13. package/android/src/main/java/com/primerioreactnative/components/manager/nativeUi/PrimerRNHeadlessUniversalCheckoutNativeUiManager.kt +8 -2
  14. package/android/src/main/java/com/primerioreactnative/components/manager/raw/PrimerRNHeadlessUniversalCheckoutRawManager.kt +7 -3
  15. package/android/src/main/java/com/primerioreactnative/components/manager/vault/PrimerRNHeadlessUniversalCheckoutVaultManager.kt +7 -1
  16. package/android/src/main/java/com/primerioreactnative/datamodels/PrimerSettingsRN.kt +4 -5
  17. package/android/src/main/java/com/primerioreactnative/extensions/PrimerUIOptionsRN.kt +1 -2
  18. package/android/src/newarch/java/com/primerioreactnative/NativePrimerModule.kt +119 -0
  19. package/android/src/oldarch/java/com/primerioreactnative/NativePrimerModule.kt +135 -0
  20. package/ios/ReactNative.xcodeproj/project.pbxproj +14 -0
  21. package/ios/Sources/Headless Universal Checkout/Managers/Ach/PrimerRNHeadlessUniversalCheckoutStripeAchUserDetailsComponent.swift +1 -0
  22. package/ios/Sources/Headless Universal Checkout/Managers/Ach/RNTAchMandateManager.swift +0 -1
  23. package/ios/Sources/Headless Universal Checkout/Managers/Klarna/PrimerRNHeadlessUniversalCheckoutKlarnaComponent.swift +1 -2
  24. package/ios/Sources/Headless Universal Checkout/Managers/Payment Method Managers/RNPrimerHeadlessUniversalCheckoutVaultManager.swift +1 -0
  25. package/ios/Sources/Headless Universal Checkout/Managers/Payment Method Managers/RNTNativeUIManager.swift +1 -0
  26. package/ios/Sources/Headless Universal Checkout/Managers/Payment Method Managers/RNTRawDataManager.swift +1 -0
  27. package/ios/Sources/Headless Universal Checkout/Managers/RNTRedirectManager.swift +1 -0
  28. package/ios/Sources/NativePrimer/RCTNativePrimer.h +20 -0
  29. package/ios/Sources/NativePrimer/RCTNativePrimer.mm +222 -0
  30. package/ios/Sources/RNTPrimer.swift +27 -40
  31. package/ios/Sources/version.swift +1 -1
  32. package/lib/module/HeadlessUniversalCheckout/Components/NativeResourceView.js +11 -8
  33. package/lib/module/HeadlessUniversalCheckout/Components/NativeResourceView.js.map +1 -1
  34. package/lib/module/HeadlessUniversalCheckout/Components/PrimerGooglePayButton.js +2 -0
  35. package/lib/module/HeadlessUniversalCheckout/Components/PrimerGooglePayButton.js.map +1 -1
  36. package/lib/module/HeadlessUniversalCheckout/Components/PrimerKlarnaPaymentView.js +2 -0
  37. package/lib/module/HeadlessUniversalCheckout/Components/PrimerKlarnaPaymentView.js.map +1 -1
  38. package/lib/module/HeadlessUniversalCheckout/Managers/AssetsManager.js +2 -0
  39. package/lib/module/HeadlessUniversalCheckout/Managers/AssetsManager.js.map +1 -1
  40. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchManager.js +15 -19
  41. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchManager.js.map +1 -1
  42. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchMandateManager.js +2 -0
  43. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchMandateManager.js.map +1 -1
  44. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/ComponentWithRedirectManager.js +15 -19
  45. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/ComponentWithRedirectManager.js.map +1 -1
  46. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/KlarnaManager.js +15 -19
  47. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/KlarnaManager.js.map +1 -1
  48. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.js +2 -0
  49. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.js.map +1 -1
  50. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js +11 -16
  51. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js.map +1 -1
  52. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/Utils/EventType.js +2 -0
  53. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/Utils/EventType.js.map +1 -1
  54. package/lib/module/HeadlessUniversalCheckout/Managers/VaultManager.js +3 -1
  55. package/lib/module/HeadlessUniversalCheckout/Managers/VaultManager.js.map +1 -1
  56. package/lib/module/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js +30 -42
  57. package/lib/module/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js.map +1 -1
  58. package/lib/module/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.js +2 -0
  59. package/lib/module/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.js.map +1 -1
  60. package/lib/module/HeadlessUniversalCheckout/types.js +1 -0
  61. package/lib/module/HeadlessUniversalCheckout/types.js.map +1 -1
  62. package/lib/module/Primer.js +14 -13
  63. package/lib/module/Primer.js.map +1 -1
  64. package/lib/module/RNPrimer.js +23 -26
  65. package/lib/module/RNPrimer.js.map +1 -1
  66. package/lib/module/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.js +2 -0
  67. package/lib/module/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.js.map +1 -1
  68. package/lib/module/index.js +28 -16
  69. package/lib/module/index.js.map +1 -1
  70. package/lib/module/models/IssuingBank.js +1 -1
  71. package/lib/module/models/IssuingBank.js.map +1 -1
  72. package/lib/module/models/NamedComponentStep.js +1 -1
  73. package/lib/module/models/NamedComponentStep.js.map +1 -1
  74. package/lib/module/models/NamedComponentValidatableData.js +1 -1
  75. package/lib/module/models/NamedComponentValidatableData.js.map +1 -1
  76. package/lib/module/models/PrimerCheckoutAdditionalInfo.js +1 -1
  77. package/lib/module/models/PrimerCheckoutAdditionalInfo.js.map +1 -1
  78. package/lib/module/models/PrimerCheckoutData.js +2 -0
  79. package/lib/module/models/PrimerCheckoutData.js.map +1 -1
  80. package/lib/module/models/PrimerCheckoutPaymentMethodData.js +1 -1
  81. package/lib/module/models/PrimerCheckoutPaymentMethodData.js.map +1 -1
  82. package/lib/module/models/PrimerClientSession.js +1 -1
  83. package/lib/module/models/PrimerClientSession.js.map +1 -1
  84. package/lib/module/models/PrimerComponentDataValidation.js +2 -0
  85. package/lib/module/models/PrimerComponentDataValidation.js.map +1 -1
  86. package/lib/module/models/PrimerError.js +2 -0
  87. package/lib/module/models/PrimerError.js.map +1 -1
  88. package/lib/module/models/PrimerHandlers.js +1 -1
  89. package/lib/module/models/PrimerHandlers.js.map +1 -1
  90. package/lib/module/models/PrimerHeadlessUniversalCheckoutPaymentMethod.js +1 -1
  91. package/lib/module/models/PrimerHeadlessUniversalCheckoutPaymentMethod.js.map +1 -1
  92. package/lib/module/models/PrimerImplementedRNCallbacks.js +1 -1
  93. package/lib/module/models/PrimerImplementedRNCallbacks.js.map +1 -1
  94. package/lib/module/models/PrimerInitializationData.js +2 -0
  95. package/lib/module/models/PrimerInitializationData.js.map +1 -1
  96. package/lib/module/models/PrimerInputElementType.js +2 -0
  97. package/lib/module/models/PrimerInputElementType.js.map +1 -1
  98. package/lib/module/models/PrimerInterfaces.js +2 -0
  99. package/lib/module/models/PrimerInterfaces.js.map +1 -1
  100. package/lib/module/models/PrimerPaymentMethodManagerCategory.js +2 -0
  101. package/lib/module/models/PrimerPaymentMethodManagerCategory.js.map +1 -1
  102. package/lib/module/models/PrimerPaymentMethodResource.js +1 -1
  103. package/lib/module/models/PrimerPaymentMethodResource.js.map +1 -1
  104. package/lib/module/models/PrimerPaymentMethodTokenData.js +2 -0
  105. package/lib/module/models/PrimerPaymentMethodTokenData.js.map +1 -1
  106. package/lib/module/models/PrimerRawData.js +1 -1
  107. package/lib/module/models/PrimerRawData.js.map +1 -1
  108. package/lib/module/models/PrimerSessionIntent.js +2 -0
  109. package/lib/module/models/PrimerSessionIntent.js.map +1 -1
  110. package/lib/module/models/PrimerSettings.js +2 -0
  111. package/lib/module/models/PrimerSettings.js.map +1 -1
  112. package/lib/module/models/PrimerTheme.js +1 -1
  113. package/lib/module/models/PrimerTheme.js.map +1 -1
  114. package/lib/module/models/PrimerValidationError.js +1 -1
  115. package/lib/module/models/PrimerValidationError.js.map +1 -1
  116. package/lib/module/models/PrimerValidationErrorResult.js +2 -0
  117. package/lib/module/models/PrimerValidationErrorResult.js.map +1 -1
  118. package/lib/module/models/PrimerVaultedPaymentMethod.js +2 -0
  119. package/lib/module/models/PrimerVaultedPaymentMethod.js.map +1 -1
  120. package/lib/module/models/PrimerVaultedPaymentMethodAdditionalData.js +1 -1
  121. package/lib/module/models/PrimerVaultedPaymentMethodAdditionalData.js.map +1 -1
  122. package/lib/module/models/PrimerVaultedPaymentMethodResult.js +2 -0
  123. package/lib/module/models/PrimerVaultedPaymentMethodResult.js.map +1 -1
  124. package/lib/module/models/RetailOutletsRetail.js +1 -1
  125. package/lib/module/models/RetailOutletsRetail.js.map +1 -1
  126. package/lib/module/models/ach/AchCollectableData.js +2 -0
  127. package/lib/module/models/ach/AchCollectableData.js.map +1 -1
  128. package/lib/module/models/ach/AchSteps.js +2 -0
  129. package/lib/module/models/ach/AchSteps.js.map +1 -1
  130. package/lib/module/models/banks/BanksCollectableData.js +2 -0
  131. package/lib/module/models/banks/BanksCollectableData.js.map +1 -1
  132. package/lib/module/models/banks/BanksSteps.js +2 -0
  133. package/lib/module/models/banks/BanksSteps.js.map +1 -1
  134. package/lib/module/models/klarna/KlarnaPaymentCategory.js +1 -1
  135. package/lib/module/models/klarna/KlarnaPaymentCategory.js.map +1 -1
  136. package/lib/module/models/klarna/KlarnaPaymentCollectableData.js +2 -0
  137. package/lib/module/models/klarna/KlarnaPaymentCollectableData.js.map +1 -1
  138. package/lib/module/models/klarna/KlarnaPaymentSteps.js +2 -0
  139. package/lib/module/models/klarna/KlarnaPaymentSteps.js.map +1 -1
  140. package/lib/module/package.json +1 -0
  141. package/lib/module/specs/NativePrimer.js +6 -0
  142. package/lib/module/specs/NativePrimer.js.map +1 -0
  143. package/lib/module/utils/index.js +5 -3
  144. package/lib/module/utils/index.js.map +1 -1
  145. package/lib/typescript/package.json +1 -0
  146. package/lib/typescript/{HeadlessUniversalCheckout → src/HeadlessUniversalCheckout}/Components/NativeResourceView.d.ts +1 -1
  147. package/lib/typescript/src/HeadlessUniversalCheckout/Components/NativeResourceView.d.ts.map +1 -0
  148. package/lib/typescript/{HeadlessUniversalCheckout → src/HeadlessUniversalCheckout}/Components/PrimerGooglePayButton.d.ts +1 -1
  149. package/lib/typescript/src/HeadlessUniversalCheckout/Components/PrimerGooglePayButton.d.ts.map +1 -0
  150. package/lib/typescript/src/HeadlessUniversalCheckout/Components/PrimerKlarnaPaymentView.d.ts.map +1 -0
  151. package/lib/typescript/{HeadlessUniversalCheckout → src/HeadlessUniversalCheckout}/Managers/AssetsManager.d.ts +2 -2
  152. package/lib/typescript/src/HeadlessUniversalCheckout/Managers/AssetsManager.d.ts.map +1 -0
  153. package/lib/typescript/{HeadlessUniversalCheckout → src/HeadlessUniversalCheckout}/Managers/PaymentMethodManagers/AchManager.d.ts +6 -6
  154. package/lib/typescript/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchManager.d.ts.map +1 -0
  155. package/lib/typescript/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchMandateManager.d.ts.map +1 -0
  156. package/lib/typescript/{HeadlessUniversalCheckout → src/HeadlessUniversalCheckout}/Managers/PaymentMethodManagers/ComponentWithRedirectManager.d.ts +6 -6
  157. package/lib/typescript/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/ComponentWithRedirectManager.d.ts.map +1 -0
  158. package/lib/typescript/{HeadlessUniversalCheckout → src/HeadlessUniversalCheckout}/Managers/PaymentMethodManagers/KlarnaManager.d.ts +7 -7
  159. package/lib/typescript/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/KlarnaManager.d.ts.map +1 -0
  160. package/lib/typescript/{HeadlessUniversalCheckout → src/HeadlessUniversalCheckout}/Managers/PaymentMethodManagers/NativeUIManager.d.ts +1 -1
  161. package/lib/typescript/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.d.ts.map +1 -0
  162. package/lib/typescript/{HeadlessUniversalCheckout → src/HeadlessUniversalCheckout}/Managers/PaymentMethodManagers/RawDataManager.d.ts +2 -2
  163. package/lib/typescript/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.d.ts.map +1 -0
  164. package/lib/typescript/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/Utils/EventType.d.ts.map +1 -0
  165. package/lib/typescript/{HeadlessUniversalCheckout → src/HeadlessUniversalCheckout}/Managers/VaultManager.d.ts +3 -3
  166. package/lib/typescript/src/HeadlessUniversalCheckout/Managers/VaultManager.d.ts.map +1 -0
  167. package/lib/typescript/src/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.d.ts.map +1 -0
  168. package/lib/typescript/{HeadlessUniversalCheckout → src/HeadlessUniversalCheckout}/RNPrimerHeadlessUniversalCheckout.d.ts +1 -2
  169. package/lib/typescript/src/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.d.ts.map +1 -0
  170. package/lib/typescript/src/HeadlessUniversalCheckout/types.d.ts.map +1 -0
  171. package/lib/typescript/src/Primer.d.ts.map +1 -0
  172. package/lib/typescript/{RNPrimer.d.ts → src/RNPrimer.d.ts} +2 -7
  173. package/lib/typescript/src/RNPrimer.d.ts.map +1 -0
  174. package/lib/typescript/src/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.d.ts.map +1 -0
  175. package/lib/typescript/{index.d.ts → src/index.d.ts} +35 -16
  176. package/lib/typescript/src/index.d.ts.map +1 -0
  177. package/lib/typescript/src/models/IssuingBank.d.ts.map +1 -0
  178. package/lib/typescript/src/models/NamedComponentStep.d.ts.map +1 -0
  179. package/lib/typescript/src/models/NamedComponentValidatableData.d.ts.map +1 -0
  180. package/lib/typescript/src/models/PrimerCheckoutAdditionalInfo.d.ts.map +1 -0
  181. package/lib/typescript/src/models/PrimerCheckoutData.d.ts.map +1 -0
  182. package/lib/typescript/src/models/PrimerCheckoutPaymentMethodData.d.ts.map +1 -0
  183. package/lib/typescript/src/models/PrimerClientSession.d.ts.map +1 -0
  184. package/lib/typescript/{models → src/models}/PrimerComponentDataValidation.d.ts +2 -2
  185. package/lib/typescript/src/models/PrimerComponentDataValidation.d.ts.map +1 -0
  186. package/lib/typescript/src/models/PrimerError.d.ts.map +1 -0
  187. package/lib/typescript/src/models/PrimerHandlers.d.ts.map +1 -0
  188. package/lib/typescript/src/models/PrimerHeadlessUniversalCheckoutPaymentMethod.d.ts.map +1 -0
  189. package/lib/typescript/src/models/PrimerImplementedRNCallbacks.d.ts.map +1 -0
  190. package/lib/typescript/src/models/PrimerInitializationData.d.ts.map +1 -0
  191. package/lib/typescript/src/models/PrimerInputElementType.d.ts.map +1 -0
  192. package/lib/typescript/src/models/PrimerInterfaces.d.ts.map +1 -0
  193. package/lib/typescript/src/models/PrimerPaymentMethodManagerCategory.d.ts.map +1 -0
  194. package/lib/typescript/src/models/PrimerPaymentMethodResource.d.ts.map +1 -0
  195. package/lib/typescript/src/models/PrimerPaymentMethodTokenData.d.ts.map +1 -0
  196. package/lib/typescript/src/models/PrimerRawData.d.ts.map +1 -0
  197. package/lib/typescript/src/models/PrimerSessionIntent.d.ts.map +1 -0
  198. package/lib/typescript/src/models/PrimerSettings.d.ts.map +1 -0
  199. package/lib/typescript/src/models/PrimerTheme.d.ts.map +1 -0
  200. package/lib/typescript/src/models/PrimerValidationError.d.ts.map +1 -0
  201. package/lib/typescript/{models → src/models}/PrimerValidationErrorResult.d.ts +1 -1
  202. package/lib/typescript/src/models/PrimerValidationErrorResult.d.ts.map +1 -0
  203. package/lib/typescript/{models → src/models}/PrimerVaultedPaymentMethod.d.ts +1 -1
  204. package/lib/typescript/src/models/PrimerVaultedPaymentMethod.d.ts.map +1 -0
  205. package/lib/typescript/src/models/PrimerVaultedPaymentMethodAdditionalData.d.ts.map +1 -0
  206. package/lib/typescript/{models → src/models}/PrimerVaultedPaymentMethodResult.d.ts +1 -1
  207. package/lib/typescript/src/models/PrimerVaultedPaymentMethodResult.d.ts.map +1 -0
  208. package/lib/typescript/src/models/RetailOutletsRetail.d.ts.map +1 -0
  209. package/lib/typescript/{models → src/models}/ach/AchCollectableData.d.ts +1 -1
  210. package/lib/typescript/src/models/ach/AchCollectableData.d.ts.map +1 -0
  211. package/lib/typescript/{models → src/models}/ach/AchSteps.d.ts +1 -1
  212. package/lib/typescript/src/models/ach/AchSteps.d.ts.map +1 -0
  213. package/lib/typescript/{models → src/models}/banks/BanksCollectableData.d.ts +1 -1
  214. package/lib/typescript/src/models/banks/BanksCollectableData.d.ts.map +1 -0
  215. package/lib/typescript/{models → src/models}/banks/BanksSteps.d.ts +2 -2
  216. package/lib/typescript/src/models/banks/BanksSteps.d.ts.map +1 -0
  217. package/lib/typescript/src/models/klarna/KlarnaPaymentCategory.d.ts.map +1 -0
  218. package/lib/typescript/{models → src/models}/klarna/KlarnaPaymentCollectableData.d.ts +2 -2
  219. package/lib/typescript/src/models/klarna/KlarnaPaymentCollectableData.d.ts.map +1 -0
  220. package/lib/typescript/{models → src/models}/klarna/KlarnaPaymentSteps.d.ts +2 -2
  221. package/lib/typescript/src/models/klarna/KlarnaPaymentSteps.d.ts.map +1 -0
  222. package/lib/typescript/src/specs/NativePrimer.d.ts +27 -0
  223. package/lib/typescript/src/specs/NativePrimer.d.ts.map +1 -0
  224. package/lib/typescript/src/utils/index.d.ts.map +1 -0
  225. package/package.json +68 -26
  226. package/primer-io-react-native.podspec +2 -0
  227. package/src/HeadlessUniversalCheckout/Components/NativeResourceView.tsx +2 -1
  228. package/src/HeadlessUniversalCheckout/Components/PrimerGooglePayButton.tsx +2 -1
  229. package/src/HeadlessUniversalCheckout/Managers/AssetsManager.ts +2 -2
  230. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchManager.ts +9 -7
  231. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/ComponentWithRedirectManager.ts +9 -7
  232. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/KlarnaManager.ts +13 -8
  233. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.ts +1 -1
  234. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.ts +3 -2
  235. package/src/HeadlessUniversalCheckout/Managers/VaultManager.ts +5 -5
  236. package/src/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.ts +2 -2
  237. package/src/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.ts +2 -2
  238. package/src/RNPrimer.ts +27 -45
  239. package/src/index.tsx +43 -18
  240. package/src/models/PrimerComponentDataValidation.ts +2 -2
  241. package/src/models/PrimerValidationErrorResult.ts +1 -1
  242. package/src/models/PrimerVaultedPaymentMethod.ts +1 -1
  243. package/src/models/PrimerVaultedPaymentMethodResult.ts +1 -1
  244. package/src/models/ach/AchCollectableData.ts +1 -1
  245. package/src/models/ach/AchSteps.ts +1 -1
  246. package/src/models/banks/BanksCollectableData.ts +1 -1
  247. package/src/models/banks/BanksSteps.ts +2 -2
  248. package/src/models/klarna/KlarnaPaymentCollectableData.ts +2 -2
  249. package/src/models/klarna/KlarnaPaymentSteps.ts +2 -2
  250. package/src/specs/NativePrimer.ts +43 -0
  251. package/src/utils/index.ts +3 -3
  252. package/android/.editorconfig +0 -2
  253. package/android/.project +0 -34
  254. package/android/.settings/org.eclipse.buildship.core.prefs +0 -13
  255. package/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  256. package/android/gradle/wrapper/gradle-wrapper.properties +0 -5
  257. package/android/gradlew +0 -183
  258. package/android/gradlew.bat +0 -100
  259. package/android/src/main/java/com/primerioreactnative/ReactNativePackage.kt +0 -49
  260. package/ios/Pods/Manifest.lock +0 -3
  261. package/ios/Pods/Pods.xcodeproj/project.pbxproj +0 -352
  262. package/ios/Pods/Target Support Files/Pods-ReactNative/Pods-ReactNative-acknowledgements.markdown +0 -3
  263. package/ios/Pods/Target Support Files/Pods-ReactNative/Pods-ReactNative-acknowledgements.plist +0 -29
  264. package/ios/Pods/Target Support Files/Pods-ReactNative/Pods-ReactNative-dummy.m +0 -5
  265. package/ios/Pods/Target Support Files/Pods-ReactNative/Pods-ReactNative.debug.xcconfig +0 -8
  266. package/ios/Pods/Target Support Files/Pods-ReactNative/Pods-ReactNative.release.xcconfig +0 -8
  267. package/ios/Sources/RNTPrimer.m +0 -86
  268. package/lib/commonjs/HeadlessUniversalCheckout/Components/NativeResourceView.js +0 -30
  269. package/lib/commonjs/HeadlessUniversalCheckout/Components/NativeResourceView.js.map +0 -1
  270. package/lib/commonjs/HeadlessUniversalCheckout/Components/PrimerGooglePayButton.js +0 -9
  271. package/lib/commonjs/HeadlessUniversalCheckout/Components/PrimerGooglePayButton.js.map +0 -1
  272. package/lib/commonjs/HeadlessUniversalCheckout/Components/PrimerKlarnaPaymentView.js +0 -9
  273. package/lib/commonjs/HeadlessUniversalCheckout/Components/PrimerKlarnaPaymentView.js.map +0 -1
  274. package/lib/commonjs/HeadlessUniversalCheckout/Managers/AssetsManager.js +0 -90
  275. package/lib/commonjs/HeadlessUniversalCheckout/Managers/AssetsManager.js.map +0 -1
  276. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchManager.js +0 -106
  277. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchManager.js.map +0 -1
  278. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchMandateManager.js +0 -38
  279. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchMandateManager.js.map +0 -1
  280. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/ComponentWithRedirectManager.js +0 -109
  281. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/ComponentWithRedirectManager.js.map +0 -1
  282. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/KlarnaManager.js +0 -105
  283. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/KlarnaManager.js.map +0 -1
  284. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.js +0 -34
  285. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.js.map +0 -1
  286. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js +0 -148
  287. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js.map +0 -1
  288. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/Utils/EventType.js +0 -8
  289. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/Utils/EventType.js.map +0 -1
  290. package/lib/commonjs/HeadlessUniversalCheckout/Managers/VaultManager.js +0 -107
  291. package/lib/commonjs/HeadlessUniversalCheckout/Managers/VaultManager.js.map +0 -1
  292. package/lib/commonjs/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js +0 -269
  293. package/lib/commonjs/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js.map +0 -1
  294. package/lib/commonjs/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.js +0 -120
  295. package/lib/commonjs/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.js.map +0 -1
  296. package/lib/commonjs/HeadlessUniversalCheckout/types.js +0 -34
  297. package/lib/commonjs/HeadlessUniversalCheckout/types.js.map +0 -1
  298. package/lib/commonjs/Primer.js +0 -269
  299. package/lib/commonjs/Primer.js.map +0 -1
  300. package/lib/commonjs/RNPrimer.js +0 -219
  301. package/lib/commonjs/RNPrimer.js.map +0 -1
  302. package/lib/commonjs/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.js +0 -12
  303. package/lib/commonjs/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.js.map +0 -1
  304. package/lib/commonjs/index.js +0 -125
  305. package/lib/commonjs/index.js.map +0 -1
  306. package/lib/commonjs/models/IssuingBank.js +0 -2
  307. package/lib/commonjs/models/IssuingBank.js.map +0 -1
  308. package/lib/commonjs/models/NamedComponentStep.js +0 -2
  309. package/lib/commonjs/models/NamedComponentStep.js.map +0 -1
  310. package/lib/commonjs/models/NamedComponentValidatableData.js +0 -2
  311. package/lib/commonjs/models/NamedComponentValidatableData.js.map +0 -1
  312. package/lib/commonjs/models/PrimerCheckoutAdditionalInfo.js +0 -2
  313. package/lib/commonjs/models/PrimerCheckoutAdditionalInfo.js.map +0 -1
  314. package/lib/commonjs/models/PrimerCheckoutData.js +0 -11
  315. package/lib/commonjs/models/PrimerCheckoutData.js.map +0 -1
  316. package/lib/commonjs/models/PrimerCheckoutPaymentMethodData.js +0 -2
  317. package/lib/commonjs/models/PrimerCheckoutPaymentMethodData.js.map +0 -1
  318. package/lib/commonjs/models/PrimerClientSession.js +0 -2
  319. package/lib/commonjs/models/PrimerClientSession.js.map +0 -1
  320. package/lib/commonjs/models/PrimerComponentDataValidation.js +0 -6
  321. package/lib/commonjs/models/PrimerComponentDataValidation.js.map +0 -1
  322. package/lib/commonjs/models/PrimerCountryCode.js +0 -4
  323. package/lib/commonjs/models/PrimerCountryCode.js.map +0 -1
  324. package/lib/commonjs/models/PrimerCurrencyCode.js +0 -4
  325. package/lib/commonjs/models/PrimerCurrencyCode.js.map +0 -1
  326. package/lib/commonjs/models/PrimerError.js +0 -18
  327. package/lib/commonjs/models/PrimerError.js.map +0 -1
  328. package/lib/commonjs/models/PrimerHandlers.js +0 -2
  329. package/lib/commonjs/models/PrimerHandlers.js.map +0 -1
  330. package/lib/commonjs/models/PrimerHeadlessUniversalCheckoutPaymentMethod.js +0 -2
  331. package/lib/commonjs/models/PrimerHeadlessUniversalCheckoutPaymentMethod.js.map +0 -1
  332. package/lib/commonjs/models/PrimerImplementedRNCallbacks.js +0 -2
  333. package/lib/commonjs/models/PrimerImplementedRNCallbacks.js.map +0 -1
  334. package/lib/commonjs/models/PrimerInitializationData.js +0 -6
  335. package/lib/commonjs/models/PrimerInitializationData.js.map +0 -1
  336. package/lib/commonjs/models/PrimerInputElementType.js +0 -19
  337. package/lib/commonjs/models/PrimerInputElementType.js.map +0 -1
  338. package/lib/commonjs/models/PrimerInterfaces.js +0 -6
  339. package/lib/commonjs/models/PrimerInterfaces.js.map +0 -1
  340. package/lib/commonjs/models/PrimerPaymentMethodManagerCategory.js +0 -13
  341. package/lib/commonjs/models/PrimerPaymentMethodManagerCategory.js.map +0 -1
  342. package/lib/commonjs/models/PrimerPaymentMethodResource.js +0 -2
  343. package/lib/commonjs/models/PrimerPaymentMethodResource.js.map +0 -1
  344. package/lib/commonjs/models/PrimerPaymentMethodTokenData.js +0 -12
  345. package/lib/commonjs/models/PrimerPaymentMethodTokenData.js.map +0 -1
  346. package/lib/commonjs/models/PrimerRawData.js +0 -2
  347. package/lib/commonjs/models/PrimerRawData.js.map +0 -1
  348. package/lib/commonjs/models/PrimerSessionIntent.js +0 -12
  349. package/lib/commonjs/models/PrimerSessionIntent.js.map +0 -1
  350. package/lib/commonjs/models/PrimerSettings.js +0 -6
  351. package/lib/commonjs/models/PrimerSettings.js.map +0 -1
  352. package/lib/commonjs/models/PrimerTheme.js +0 -2
  353. package/lib/commonjs/models/PrimerTheme.js.map +0 -1
  354. package/lib/commonjs/models/PrimerValidationError.js +0 -2
  355. package/lib/commonjs/models/PrimerValidationError.js.map +0 -1
  356. package/lib/commonjs/models/PrimerValidationErrorResult.js +0 -6
  357. package/lib/commonjs/models/PrimerValidationErrorResult.js.map +0 -1
  358. package/lib/commonjs/models/PrimerVaultedPaymentMethod.js +0 -6
  359. package/lib/commonjs/models/PrimerVaultedPaymentMethod.js.map +0 -1
  360. package/lib/commonjs/models/PrimerVaultedPaymentMethodAdditionalData.js +0 -2
  361. package/lib/commonjs/models/PrimerVaultedPaymentMethodAdditionalData.js.map +0 -1
  362. package/lib/commonjs/models/PrimerVaultedPaymentMethodResult.js +0 -6
  363. package/lib/commonjs/models/PrimerVaultedPaymentMethodResult.js.map +0 -1
  364. package/lib/commonjs/models/RetailOutletsRetail.js +0 -2
  365. package/lib/commonjs/models/RetailOutletsRetail.js.map +0 -1
  366. package/lib/commonjs/models/ach/AchCollectableData.js +0 -6
  367. package/lib/commonjs/models/ach/AchCollectableData.js.map +0 -1
  368. package/lib/commonjs/models/ach/AchSteps.js +0 -6
  369. package/lib/commonjs/models/ach/AchSteps.js.map +0 -1
  370. package/lib/commonjs/models/banks/BanksCollectableData.js +0 -6
  371. package/lib/commonjs/models/banks/BanksCollectableData.js.map +0 -1
  372. package/lib/commonjs/models/banks/BanksSteps.js +0 -6
  373. package/lib/commonjs/models/banks/BanksSteps.js.map +0 -1
  374. package/lib/commonjs/models/klarna/KlarnaPaymentCategory.js +0 -2
  375. package/lib/commonjs/models/klarna/KlarnaPaymentCategory.js.map +0 -1
  376. package/lib/commonjs/models/klarna/KlarnaPaymentCollectableData.js +0 -6
  377. package/lib/commonjs/models/klarna/KlarnaPaymentCollectableData.js.map +0 -1
  378. package/lib/commonjs/models/klarna/KlarnaPaymentSteps.js +0 -6
  379. package/lib/commonjs/models/klarna/KlarnaPaymentSteps.js.map +0 -1
  380. package/lib/commonjs/utils/index.js +0 -39
  381. package/lib/commonjs/utils/index.js.map +0 -1
  382. package/lib/module/models/PrimerCountryCode.js +0 -2
  383. package/lib/module/models/PrimerCountryCode.js.map +0 -1
  384. package/lib/module/models/PrimerCurrencyCode.js +0 -2
  385. package/lib/module/models/PrimerCurrencyCode.js.map +0 -1
  386. package/lib/typescript/HeadlessUniversalCheckout/Components/NativeResourceView.d.ts.map +0 -1
  387. package/lib/typescript/HeadlessUniversalCheckout/Components/PrimerGooglePayButton.d.ts.map +0 -1
  388. package/lib/typescript/HeadlessUniversalCheckout/Components/PrimerKlarnaPaymentView.d.ts.map +0 -1
  389. package/lib/typescript/HeadlessUniversalCheckout/Managers/AssetsManager.d.ts.map +0 -1
  390. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchManager.d.ts.map +0 -1
  391. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/AchMandateManager.d.ts.map +0 -1
  392. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/ComponentWithRedirectManager.d.ts.map +0 -1
  393. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/KlarnaManager.d.ts.map +0 -1
  394. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.d.ts.map +0 -1
  395. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.d.ts.map +0 -1
  396. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/Utils/EventType.d.ts.map +0 -1
  397. package/lib/typescript/HeadlessUniversalCheckout/Managers/VaultManager.d.ts.map +0 -1
  398. package/lib/typescript/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.d.ts.map +0 -1
  399. package/lib/typescript/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.d.ts.map +0 -1
  400. package/lib/typescript/HeadlessUniversalCheckout/types.d.ts.map +0 -1
  401. package/lib/typescript/Primer.d.ts.map +0 -1
  402. package/lib/typescript/RNPrimer.d.ts.map +0 -1
  403. package/lib/typescript/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.d.ts.map +0 -1
  404. package/lib/typescript/index.d.ts.map +0 -1
  405. package/lib/typescript/models/IssuingBank.d.ts.map +0 -1
  406. package/lib/typescript/models/NamedComponentStep.d.ts.map +0 -1
  407. package/lib/typescript/models/NamedComponentValidatableData.d.ts.map +0 -1
  408. package/lib/typescript/models/PrimerCheckoutAdditionalInfo.d.ts.map +0 -1
  409. package/lib/typescript/models/PrimerCheckoutData.d.ts.map +0 -1
  410. package/lib/typescript/models/PrimerCheckoutPaymentMethodData.d.ts.map +0 -1
  411. package/lib/typescript/models/PrimerClientSession.d.ts.map +0 -1
  412. package/lib/typescript/models/PrimerComponentDataValidation.d.ts.map +0 -1
  413. package/lib/typescript/models/PrimerCountryCode.d.ts +0 -4
  414. package/lib/typescript/models/PrimerCountryCode.d.ts.map +0 -1
  415. package/lib/typescript/models/PrimerCurrencyCode.d.ts +0 -4
  416. package/lib/typescript/models/PrimerCurrencyCode.d.ts.map +0 -1
  417. package/lib/typescript/models/PrimerError.d.ts.map +0 -1
  418. package/lib/typescript/models/PrimerHandlers.d.ts.map +0 -1
  419. package/lib/typescript/models/PrimerHeadlessUniversalCheckoutPaymentMethod.d.ts.map +0 -1
  420. package/lib/typescript/models/PrimerImplementedRNCallbacks.d.ts.map +0 -1
  421. package/lib/typescript/models/PrimerInitializationData.d.ts.map +0 -1
  422. package/lib/typescript/models/PrimerInputElementType.d.ts.map +0 -1
  423. package/lib/typescript/models/PrimerInterfaces.d.ts.map +0 -1
  424. package/lib/typescript/models/PrimerPaymentMethodManagerCategory.d.ts.map +0 -1
  425. package/lib/typescript/models/PrimerPaymentMethodResource.d.ts.map +0 -1
  426. package/lib/typescript/models/PrimerPaymentMethodTokenData.d.ts.map +0 -1
  427. package/lib/typescript/models/PrimerRawData.d.ts.map +0 -1
  428. package/lib/typescript/models/PrimerSessionIntent.d.ts.map +0 -1
  429. package/lib/typescript/models/PrimerSettings.d.ts.map +0 -1
  430. package/lib/typescript/models/PrimerTheme.d.ts.map +0 -1
  431. package/lib/typescript/models/PrimerValidationError.d.ts.map +0 -1
  432. package/lib/typescript/models/PrimerValidationErrorResult.d.ts.map +0 -1
  433. package/lib/typescript/models/PrimerVaultedPaymentMethod.d.ts.map +0 -1
  434. package/lib/typescript/models/PrimerVaultedPaymentMethodAdditionalData.d.ts.map +0 -1
  435. package/lib/typescript/models/PrimerVaultedPaymentMethodResult.d.ts.map +0 -1
  436. package/lib/typescript/models/RetailOutletsRetail.d.ts.map +0 -1
  437. package/lib/typescript/models/ach/AchCollectableData.d.ts.map +0 -1
  438. package/lib/typescript/models/ach/AchSteps.d.ts.map +0 -1
  439. package/lib/typescript/models/banks/BanksCollectableData.d.ts.map +0 -1
  440. package/lib/typescript/models/banks/BanksSteps.d.ts.map +0 -1
  441. package/lib/typescript/models/klarna/KlarnaPaymentCategory.d.ts.map +0 -1
  442. package/lib/typescript/models/klarna/KlarnaPaymentCollectableData.d.ts.map +0 -1
  443. package/lib/typescript/models/klarna/KlarnaPaymentSteps.d.ts.map +0 -1
  444. package/lib/typescript/utils/index.d.ts.map +0 -1
  445. package/src/models/PrimerCountryCode.ts +0 -249
  446. package/src/models/PrimerCurrencyCode.ts +0 -182
  447. /package/lib/typescript/{HeadlessUniversalCheckout → src/HeadlessUniversalCheckout}/Components/PrimerKlarnaPaymentView.d.ts +0 -0
  448. /package/lib/typescript/{HeadlessUniversalCheckout → src/HeadlessUniversalCheckout}/Managers/PaymentMethodManagers/AchMandateManager.d.ts +0 -0
  449. /package/lib/typescript/{HeadlessUniversalCheckout → src/HeadlessUniversalCheckout}/Managers/PaymentMethodManagers/Utils/EventType.d.ts +0 -0
  450. /package/lib/typescript/{HeadlessUniversalCheckout → src/HeadlessUniversalCheckout}/PrimerHeadlessUniversalCheckout.d.ts +0 -0
  451. /package/lib/typescript/{HeadlessUniversalCheckout → src/HeadlessUniversalCheckout}/types.d.ts +0 -0
  452. /package/lib/typescript/{Primer.d.ts → src/Primer.d.ts} +0 -0
  453. /package/lib/typescript/{RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.d.ts → src/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.d.ts} +0 -0
  454. /package/lib/typescript/{models → src/models}/IssuingBank.d.ts +0 -0
  455. /package/lib/typescript/{models → src/models}/NamedComponentStep.d.ts +0 -0
  456. /package/lib/typescript/{models → src/models}/NamedComponentValidatableData.d.ts +0 -0
  457. /package/lib/typescript/{models → src/models}/PrimerCheckoutAdditionalInfo.d.ts +0 -0
  458. /package/lib/typescript/{models → src/models}/PrimerCheckoutData.d.ts +0 -0
  459. /package/lib/typescript/{models → src/models}/PrimerCheckoutPaymentMethodData.d.ts +0 -0
  460. /package/lib/typescript/{models → src/models}/PrimerClientSession.d.ts +0 -0
  461. /package/lib/typescript/{models → src/models}/PrimerError.d.ts +0 -0
  462. /package/lib/typescript/{models → src/models}/PrimerHandlers.d.ts +0 -0
  463. /package/lib/typescript/{models → src/models}/PrimerHeadlessUniversalCheckoutPaymentMethod.d.ts +0 -0
  464. /package/lib/typescript/{models → src/models}/PrimerImplementedRNCallbacks.d.ts +0 -0
  465. /package/lib/typescript/{models → src/models}/PrimerInitializationData.d.ts +0 -0
  466. /package/lib/typescript/{models → src/models}/PrimerInputElementType.d.ts +0 -0
  467. /package/lib/typescript/{models → src/models}/PrimerInterfaces.d.ts +0 -0
  468. /package/lib/typescript/{models → src/models}/PrimerPaymentMethodManagerCategory.d.ts +0 -0
  469. /package/lib/typescript/{models → src/models}/PrimerPaymentMethodResource.d.ts +0 -0
  470. /package/lib/typescript/{models → src/models}/PrimerPaymentMethodTokenData.d.ts +0 -0
  471. /package/lib/typescript/{models → src/models}/PrimerRawData.d.ts +0 -0
  472. /package/lib/typescript/{models → src/models}/PrimerSessionIntent.d.ts +0 -0
  473. /package/lib/typescript/{models → src/models}/PrimerSettings.d.ts +0 -0
  474. /package/lib/typescript/{models → src/models}/PrimerTheme.d.ts +0 -0
  475. /package/lib/typescript/{models → src/models}/PrimerValidationError.d.ts +0 -0
  476. /package/lib/typescript/{models → src/models}/PrimerVaultedPaymentMethodAdditionalData.d.ts +0 -0
  477. /package/lib/typescript/{models → src/models}/RetailOutletsRetail.d.ts +0 -0
  478. /package/lib/typescript/{models → src/models}/klarna/KlarnaPaymentCategory.d.ts +0 -0
  479. /package/lib/typescript/{utils → src/utils}/index.d.ts +0 -0
@@ -0,0 +1,117 @@
1
+ package com.primerioreactnative
2
+
3
+ import com.facebook.react.BaseReactPackage
4
+ import com.facebook.react.bridge.NativeModule
5
+ import com.facebook.react.bridge.ReactApplicationContext
6
+ import com.facebook.react.module.annotations.ReactModule
7
+ import com.facebook.react.module.annotations.ReactModuleList
8
+ import com.facebook.react.module.model.ReactModuleInfo
9
+ import com.facebook.react.module.model.ReactModuleInfoProvider
10
+ import com.facebook.react.uimanager.ViewManager
11
+ import com.primerioreactnative.components.manager.ach.PrimerRNAchMandateManager
12
+ import com.primerioreactnative.components.manager.ach.PrimerRNHeadlessUniversalCheckoutStripeAchUserDetailsComponent
13
+ import com.primerioreactnative.components.manager.asset.PrimerRNHeadlessUniversalCheckoutAssetManager
14
+ import com.primerioreactnative.components.manager.banks.PrimerRNHeadlessUniversalCheckoutBanksComponent
15
+ import com.primerioreactnative.components.manager.googlePay.PrimerGooglePayButtonConstantsModule
16
+ import com.primerioreactnative.components.manager.googlePay.PrimerGooglePayButtonManager
17
+ import com.primerioreactnative.components.manager.klarna.PrimerKlarnaPaymentViewManager
18
+ import com.primerioreactnative.components.manager.klarna.PrimerRNHeadlessUniversalCheckoutKlarnaComponent
19
+ import com.primerioreactnative.components.manager.nativeUi.PrimerRNHeadlessUniversalCheckoutNativeUiManager
20
+ import com.primerioreactnative.components.manager.raw.PrimerRNHeadlessUniversalCheckoutRawManager
21
+ import com.primerioreactnative.components.manager.vault.PrimerRNHeadlessUniversalCheckoutVaultManager
22
+ import kotlinx.serialization.json.Json
23
+
24
+ @ReactModuleList(
25
+ nativeModules = [
26
+ NativePrimerModule::class,
27
+ ],
28
+ )
29
+ class PrimerSdkPackage : BaseReactPackage() {
30
+
31
+ private val json = Json { ignoreUnknownKeys = true }
32
+
33
+ // Old Architecture modules
34
+ private val oldArchModules: Array<Class<out NativeModule>> = arrayOf(
35
+ PrimerRNHeadlessUniversalCheckout::class.java,
36
+ PrimerRNHeadlessUniversalCheckoutRawManager::class.java,
37
+ PrimerRNHeadlessUniversalCheckoutNativeUiManager::class.java,
38
+ PrimerRNHeadlessUniversalCheckoutAssetManager::class.java,
39
+ PrimerRNHeadlessUniversalCheckoutVaultManager::class.java,
40
+ PrimerRNHeadlessUniversalCheckoutKlarnaComponent::class.java,
41
+ PrimerRNHeadlessUniversalCheckoutStripeAchUserDetailsComponent::class.java,
42
+ PrimerRNAchMandateManager::class.java,
43
+ PrimerRNHeadlessUniversalCheckoutBanksComponent::class.java,
44
+ PrimerGooglePayButtonConstantsModule::class.java,
45
+ )
46
+
47
+ // New Architecture modules
48
+ private val newArchModules: Array<Class<out NativeModule>> = arrayOf(
49
+ NativePrimerModule::class.java,
50
+ )
51
+
52
+ override fun getModule(name: String, reactContext: ReactApplicationContext): NativeModule? =
53
+ when (name) {
54
+ DefaultNativePrimerModule.NAME -> NativePrimerModule(reactContext, json)
55
+ PrimerRNHeadlessUniversalCheckout.NAME -> PrimerRNHeadlessUniversalCheckout(reactContext, json)
56
+ PrimerRNHeadlessUniversalCheckoutRawManager.NAME -> PrimerRNHeadlessUniversalCheckoutRawManager(
57
+ reactContext,
58
+ json,
59
+ )
60
+
61
+ PrimerRNHeadlessUniversalCheckoutNativeUiManager.NAME -> PrimerRNHeadlessUniversalCheckoutNativeUiManager(
62
+ reactContext,
63
+ )
64
+
65
+ PrimerRNHeadlessUniversalCheckoutAssetManager.NAME -> PrimerRNHeadlessUniversalCheckoutAssetManager(
66
+ reactContext,
67
+ )
68
+ PrimerRNHeadlessUniversalCheckoutVaultManager.NAME -> PrimerRNHeadlessUniversalCheckoutVaultManager(
69
+ reactContext,
70
+ json,
71
+ )
72
+
73
+ PrimerRNHeadlessUniversalCheckoutKlarnaComponent.NAME -> PrimerRNHeadlessUniversalCheckoutKlarnaComponent(
74
+ reactContext,
75
+ )
76
+
77
+ PrimerRNHeadlessUniversalCheckoutStripeAchUserDetailsComponent.NAME ->
78
+ PrimerRNHeadlessUniversalCheckoutStripeAchUserDetailsComponent(
79
+ reactContext,
80
+ )
81
+
82
+ PrimerRNAchMandateManager.NAME -> PrimerRNAchMandateManager(reactContext)
83
+ PrimerRNHeadlessUniversalCheckoutBanksComponent.NAME -> PrimerRNHeadlessUniversalCheckoutBanksComponent(
84
+ reactContext,
85
+ )
86
+
87
+ PrimerGooglePayButtonConstantsModule.NAME -> PrimerGooglePayButtonConstantsModule(reactContext)
88
+ else -> null
89
+ }
90
+
91
+ override fun getReactModuleInfoProvider() = ReactModuleInfoProvider {
92
+ val moduleList = newArchModules + oldArchModules
93
+
94
+ val reactModuleInfoMap: MutableMap<String, ReactModuleInfo> = HashMap()
95
+ for (moduleClass in moduleList) {
96
+ val reactModule = moduleClass.getAnnotation(ReactModule::class.java) ?: continue
97
+ reactModuleInfoMap[reactModule.name] = ReactModuleInfo(
98
+ reactModule.name,
99
+ moduleClass.name,
100
+ reactModule.canOverrideExistingModule,
101
+ reactModule.needsEagerInit,
102
+ reactModule.isCxxModule,
103
+ newArchModules.any {
104
+ it.name == moduleClass.name
105
+ }, // isTurboModule
106
+ )
107
+ }
108
+ reactModuleInfoMap
109
+ }
110
+
111
+ override fun createViewManagers(reactContext: ReactApplicationContext): List<ViewManager<*, *>> {
112
+ return mutableListOf(
113
+ PrimerKlarnaPaymentViewManager(),
114
+ PrimerGooglePayButtonManager(),
115
+ )
116
+ }
117
+ }
@@ -6,14 +6,16 @@ import com.facebook.react.bridge.Promise
6
6
  import com.facebook.react.bridge.ReactApplicationContext
7
7
  import com.facebook.react.bridge.ReactContextBaseJavaModule
8
8
  import com.facebook.react.bridge.ReactMethod
9
+ import com.facebook.react.module.annotations.ReactModule
9
10
  import com.primerioreactnative.datamodels.ErrorTypeRN
10
11
  import com.primerioreactnative.utils.errorTo
11
12
  import kotlinx.coroutines.launch
12
13
 
14
+ @ReactModule(name = PrimerRNAchMandateManager.NAME)
13
15
  class PrimerRNAchMandateManager(
14
16
  private val reactContext: ReactApplicationContext,
15
17
  ) : ReactContextBaseJavaModule(reactContext) {
16
- override fun getName() = "RNTAchMandateManager"
18
+ override fun getName() = NAME
17
19
 
18
20
  @ReactMethod
19
21
  fun acceptMandate(promise: Promise) {
@@ -69,5 +71,6 @@ class PrimerRNAchMandateManager(
69
71
  """
70
72
  Unitialized 'declineMandate' property.
71
73
  """.trimIndent()
74
+ const val NAME = "RNTAchMandateManager"
72
75
  }
73
76
  }
@@ -8,6 +8,7 @@ import com.facebook.react.bridge.Promise
8
8
  import com.facebook.react.bridge.ReactApplicationContext
9
9
  import com.facebook.react.bridge.ReactContextBaseJavaModule
10
10
  import com.facebook.react.bridge.ReactMethod
11
+ import com.facebook.react.module.annotations.ReactModule
11
12
  import com.facebook.react.modules.core.DeviceEventManagerModule
12
13
  import com.primerioreactnative.PrimerRNViewModelStoreOwner
13
14
  import com.primerioreactnative.components.events.PrimerHeadlessUniversalCheckoutComponentEvent
@@ -37,10 +38,11 @@ import org.json.JSONArray
37
38
  import org.json.JSONObject
38
39
 
39
40
  @Suppress("TooManyFunctions")
41
+ @ReactModule(name = PrimerRNHeadlessUniversalCheckoutStripeAchUserDetailsComponent.NAME)
40
42
  class PrimerRNHeadlessUniversalCheckoutStripeAchUserDetailsComponent(
41
43
  private val reactContext: ReactApplicationContext,
42
44
  ) : ReactContextBaseJavaModule(reactContext) {
43
- override fun getName() = "RNTPrimerHeadlessUniversalCheckoutStripeAchUserDetailsComponent"
45
+ override fun getName() = NAME
44
46
 
45
47
  private var job: Job? = null
46
48
  private var viewModelStoreOwner: ViewModelStoreOwner? = null
@@ -277,11 +279,13 @@ class PrimerRNHeadlessUniversalCheckoutStripeAchUserDetailsComponent(
277
279
  }
278
280
 
279
281
  companion object {
280
- const val INITIALIZATION_ERROR = """
282
+ private val json = Json { encodeDefaults = true }
283
+
284
+ private const val INITIALIZATION_ERROR = """
281
285
  An error occurred during component initialization.
282
286
  """
283
287
 
284
- const val UNINITIALIZED_ERROR =
288
+ private const val UNINITIALIZED_ERROR =
285
289
  """
286
290
  The component has not been initialized.
287
291
  Make sure you have initialized the `component` first.
@@ -293,6 +297,6 @@ class PrimerRNHeadlessUniversalCheckoutStripeAchUserDetailsComponent(
293
297
  Make sure your root activity extends ComponentActivity.
294
298
  """
295
299
 
296
- val json = Json { encodeDefaults = true }
300
+ const val NAME = "RNTPrimerHeadlessUniversalCheckoutStripeAchUserDetailsComponent"
297
301
  }
298
302
  }
@@ -1,11 +1,11 @@
1
1
  package com.primerioreactnative.components.manager.asset
2
2
 
3
- import android.util.Log
4
3
  import androidx.core.content.ContextCompat
5
4
  import com.facebook.react.bridge.Promise
6
5
  import com.facebook.react.bridge.ReactApplicationContext
7
6
  import com.facebook.react.bridge.ReactContextBaseJavaModule
8
7
  import com.facebook.react.bridge.ReactMethod
8
+ import com.facebook.react.module.annotations.ReactModule
9
9
  import com.primerioreactnative.components.assets.AssetsManager
10
10
  import com.primerioreactnative.components.assets.AssetsManager.drawableToBitmap
11
11
  import com.primerioreactnative.components.assets.CardNetworkImageFileProvider.getFileForCardNetworkAsset
@@ -31,6 +31,7 @@ import kotlinx.serialization.json.Json
31
31
  import org.json.JSONObject
32
32
 
33
33
  @ExperimentalPrimerApi
34
+ @ReactModule(name = PrimerRNHeadlessUniversalCheckoutAssetManager.NAME)
34
35
  internal class PrimerRNHeadlessUniversalCheckoutAssetManager(
35
36
  private val reactContext: ReactApplicationContext,
36
37
  ) : ReactContextBaseJavaModule(reactContext) {
@@ -189,7 +190,7 @@ internal class PrimerRNHeadlessUniversalCheckoutAssetManager(
189
190
  val paymentMethodResource =
190
191
  PrimerHeadlessUniversalCheckoutAssetsManager.getPaymentMethodResource(
191
192
  reactContext,
192
- paymentMethodTypeStr
193
+ paymentMethodTypeStr,
193
194
  )
194
195
  promise.resolve(
195
196
  JSONObject(
@@ -221,4 +222,8 @@ internal class PrimerRNHeadlessUniversalCheckoutAssetManager(
221
222
  promise.reject(ErrorTypeRN.UnitializedSdkSession.errorId, e.message, e)
222
223
  }
223
224
  }
225
+
226
+ companion object {
227
+ const val NAME = "RNTPrimerHeadlessUniversalCheckoutAssetsManager"
228
+ }
224
229
  }
@@ -7,6 +7,7 @@ import com.facebook.react.bridge.Promise
7
7
  import com.facebook.react.bridge.ReactApplicationContext
8
8
  import com.facebook.react.bridge.ReactContextBaseJavaModule
9
9
  import com.facebook.react.bridge.ReactMethod
10
+ import com.facebook.react.module.annotations.ReactModule
10
11
  import com.facebook.react.modules.core.DeviceEventManagerModule
11
12
  import com.primerioreactnative.PrimerRNViewModelStoreOwner
12
13
  import com.primerioreactnative.components.events.PrimerHeadlessUniversalCheckoutComponentEvent
@@ -38,10 +39,11 @@ import org.json.JSONArray
38
39
  import org.json.JSONObject
39
40
 
40
41
  @Suppress("TooManyFunctions")
42
+ @ReactModule(name = PrimerRNHeadlessUniversalCheckoutBanksComponent.NAME)
41
43
  class PrimerRNHeadlessUniversalCheckoutBanksComponent(
42
44
  private val reactContext: ReactApplicationContext,
43
45
  ) : ReactContextBaseJavaModule(reactContext) {
44
- override fun getName() = "RNTPrimerHeadlessUniversalCheckoutBanksComponent"
46
+ override fun getName() = NAME
45
47
 
46
48
  private var job: Job? = null
47
49
  private var banksComponent: BanksComponent? = null
@@ -255,13 +257,14 @@ class PrimerRNHeadlessUniversalCheckoutBanksComponent(
255
257
  promise.resolve(null)
256
258
  }
257
259
 
258
- private companion object {
259
- const val UNINITIALIZED_ERROR =
260
+ companion object {
261
+ private const val UNINITIALIZED_ERROR =
260
262
  """
261
263
  The BanksComponent has not been initialized.
262
264
  Make sure you have initialized the `BanksComponent` first.
263
265
  """
264
266
 
265
- val json = Json { encodeDefaults = true }
267
+ private val json = Json { encodeDefaults = true }
268
+ const val NAME = "RNTPrimerHeadlessUniversalCheckoutBanksComponent"
266
269
  }
267
270
  }
@@ -2,6 +2,7 @@ package com.primerioreactnative.components.manager.googlePay
2
2
 
3
3
  import com.facebook.react.bridge.ReactApplicationContext
4
4
  import com.facebook.react.bridge.ReactContextBaseJavaModule
5
+ import com.facebook.react.module.annotations.ReactModule
5
6
  import com.google.android.gms.wallet.button.ButtonConstants
6
7
 
7
8
  internal object PrimerGooglePayButtonOptionsMapping {
@@ -24,6 +25,7 @@ internal object PrimerGooglePayButtonOptionsMapping {
24
25
  }
25
26
  }
26
27
 
28
+ @ReactModule(name = PrimerGooglePayButtonConstantsModule.NAME)
27
29
  class PrimerGooglePayButtonConstantsModule(reactContext: ReactApplicationContext) :
28
30
  ReactContextBaseJavaModule(reactContext) {
29
31
  override fun getConstants(): Map<String, Any> = PrimerGooglePayButtonOptionsMapping.getOptions()
@@ -31,6 +33,6 @@ class PrimerGooglePayButtonConstantsModule(reactContext: ReactApplicationContext
31
33
  override fun getName() = NAME
32
34
 
33
35
  companion object {
34
- private const val NAME = "PrimerGooglePayButtonConstants"
36
+ const val NAME = "PrimerGooglePayButtonConstants"
35
37
  }
36
38
  }
@@ -8,6 +8,7 @@ import com.facebook.react.bridge.ReactApplicationContext
8
8
  import com.facebook.react.bridge.ReactContextBaseJavaModule
9
9
  import com.facebook.react.bridge.ReactMethod
10
10
  import com.facebook.react.bridge.ReadableMap
11
+ import com.facebook.react.module.annotations.ReactModule
11
12
  import com.facebook.react.modules.core.DeviceEventManagerModule
12
13
  import com.primerioreactnative.PrimerRNViewModelStoreOwner
13
14
  import com.primerioreactnative.components.events.PrimerHeadlessUniversalCheckoutComponentEvent
@@ -45,10 +46,11 @@ import org.json.JSONArray
45
46
  import org.json.JSONObject
46
47
 
47
48
  @Suppress("TooManyFunctions")
49
+ @ReactModule(name = PrimerRNHeadlessUniversalCheckoutKlarnaComponent.NAME)
48
50
  class PrimerRNHeadlessUniversalCheckoutKlarnaComponent(
49
51
  private val reactContext: ReactApplicationContext,
50
52
  ) : ReactContextBaseJavaModule(reactContext) {
51
- override fun getName(): String = "RNTPrimerHeadlessUniversalCheckoutKlarnaComponent"
53
+ override fun getName(): String = NAME
52
54
 
53
55
  private var job: Job? = null
54
56
  private var viewModelStoreOwner: ViewModelStoreOwner? = null
@@ -314,17 +316,19 @@ class PrimerRNHeadlessUniversalCheckoutKlarnaComponent(
314
316
  promise.resolve(null)
315
317
  }
316
318
 
317
- private companion object {
318
- const val UNINITIALIZED_ERROR =
319
+ companion object {
320
+ private const val UNINITIALIZED_ERROR =
319
321
  """
320
322
  The KlarnaComponent has not been initialized.
321
323
  Make sure you have initialized the `KlarnaComponent` first.
322
324
  """
323
- const val MISSING_ACTIVITY_ERROR =
325
+ private const val MISSING_ACTIVITY_ERROR =
324
326
  """
325
327
  Could not retrieve running activity from context.
326
328
  """
327
329
 
328
- val json by lazy { Json { encodeDefaults = true } }
330
+ private val json by lazy { Json { encodeDefaults = true } }
331
+
332
+ const val NAME = "RNTPrimerHeadlessUniversalCheckoutKlarnaComponent"
329
333
  }
330
334
  }
@@ -4,6 +4,7 @@ import com.facebook.react.bridge.Promise
4
4
  import com.facebook.react.bridge.ReactApplicationContext
5
5
  import com.facebook.react.bridge.ReactContextBaseJavaModule
6
6
  import com.facebook.react.bridge.ReactMethod
7
+ import com.facebook.react.module.annotations.ReactModule
7
8
  import com.primerioreactnative.datamodels.ErrorTypeRN
8
9
  import com.primerioreactnative.datamodels.PrimerErrorRN
9
10
  import com.primerioreactnative.utils.errorTo
@@ -16,13 +17,14 @@ import io.primer.android.core.ExperimentalPrimerApi
16
17
  import io.primer.android.domain.exception.UnsupportedPaymentIntentException
17
18
 
18
19
  @ExperimentalPrimerApi
20
+ @ReactModule(name = PrimerRNHeadlessUniversalCheckoutNativeUiManager.NAME)
19
21
  internal class PrimerRNHeadlessUniversalCheckoutNativeUiManager(
20
22
  private val reactContext: ReactApplicationContext,
21
23
  ) : ReactContextBaseJavaModule(reactContext) {
22
24
  private lateinit var nativeUiManager: PrimerHeadlessUniversalCheckoutNativeUiManagerInterface
23
25
  private var paymentMethodTypeStr: String? = null
24
26
 
25
- override fun getName() = "RNTPrimerHeadlessUniversalPaymentMethodNativeUIManager"
27
+ override fun getName() = NAME
26
28
 
27
29
  @ReactMethod
28
30
  fun configure(
@@ -64,7 +66,7 @@ internal class PrimerRNHeadlessUniversalCheckoutNativeUiManager(
64
66
  " and providing a payment method type.",
65
67
  )
66
68
  promise.reject(exception.errorId, exception.description)
67
- } else if (PrimerSessionIntent.values()
69
+ } else if (PrimerSessionIntent.entries
68
70
  .firstOrNull { intentStr.equals(it.name, true) } == null
69
71
  ) {
70
72
  val exception =
@@ -91,4 +93,8 @@ internal class PrimerRNHeadlessUniversalCheckoutNativeUiManager(
91
93
  }
92
94
  }
93
95
  }
96
+
97
+ companion object {
98
+ const val NAME = "RNTPrimerHeadlessUniversalPaymentMethodNativeUIManager"
99
+ }
94
100
  }
@@ -6,6 +6,7 @@ import com.facebook.react.bridge.ReactApplicationContext
6
6
  import com.facebook.react.bridge.ReactContextBaseJavaModule
7
7
  import com.facebook.react.bridge.ReactMethod
8
8
  import com.facebook.react.bridge.WritableMap
9
+ import com.facebook.react.module.annotations.ReactModule
9
10
  import com.facebook.react.modules.core.DeviceEventManagerModule
10
11
  import com.primerioreactnative.Keys
11
12
  import com.primerioreactnative.components.datamodels.core.PrimerRawPaymentMethodType
@@ -33,6 +34,7 @@ import org.json.JSONObject
33
34
 
34
35
  @Suppress("TooManyFunctions")
35
36
  @ExperimentalPrimerApi
37
+ @ReactModule(name = PrimerRNHeadlessUniversalCheckoutRawManager.NAME)
36
38
  internal class PrimerRNHeadlessUniversalCheckoutRawManager(
37
39
  reactContext: ReactApplicationContext,
38
40
  private val json: Json,
@@ -45,7 +47,7 @@ internal class PrimerRNHeadlessUniversalCheckoutRawManager(
45
47
  listener.sendEvent = { eventName, paramsJson -> sendEvent(eventName, paramsJson) }
46
48
  }
47
49
 
48
- override fun getName() = "RNTPrimerHeadlessUniversalCheckoutRawDataManager"
50
+ override fun getName() = NAME
49
51
 
50
52
  @ReactMethod
51
53
  fun configure(
@@ -221,11 +223,13 @@ internal class PrimerRNHeadlessUniversalCheckoutRawManager(
221
223
  sendEvent(PrimerHeadlessUniversalCheckoutEvent.ON_ERROR.eventName, params)
222
224
  }
223
225
 
224
- private companion object {
225
- const val UNINITIALIZED_ERROR =
226
+ companion object {
227
+ private const val UNINITIALIZED_ERROR =
226
228
  """
227
229
  The RawDataManager has not been initialized.
228
230
  Make sure you have initialized the `RawDataManager' first.
229
231
  """
232
+
233
+ const val NAME = "RNTPrimerHeadlessUniversalCheckoutRawDataManager"
230
234
  }
231
235
  }
@@ -4,6 +4,7 @@ import com.facebook.react.bridge.Promise
4
4
  import com.facebook.react.bridge.ReactApplicationContext
5
5
  import com.facebook.react.bridge.ReactContextBaseJavaModule
6
6
  import com.facebook.react.bridge.ReactMethod
7
+ import com.facebook.react.module.annotations.ReactModule
7
8
  import com.primerioreactnative.components.datamodels.manager.vault.PrimerRNValidationErrors
8
9
  import com.primerioreactnative.components.datamodels.manager.vault.PrimerRNVaultedPaymentMethodAdditionalData
9
10
  import com.primerioreactnative.components.datamodels.manager.vault.PrimerRNVaultedPaymentMethods
@@ -23,6 +24,7 @@ import kotlinx.serialization.encodeToString
23
24
  import kotlinx.serialization.json.Json
24
25
  import org.json.JSONObject
25
26
 
27
+ @ReactModule(name = PrimerRNHeadlessUniversalCheckoutVaultManager.NAME)
26
28
  class PrimerRNHeadlessUniversalCheckoutVaultManager(
27
29
  reactContext: ReactApplicationContext,
28
30
  private val json: Json,
@@ -30,7 +32,7 @@ class PrimerRNHeadlessUniversalCheckoutVaultManager(
30
32
  private val vaultScope = CoroutineScope(SupervisorJob())
31
33
  private lateinit var nativeVaultManager: PrimerHeadlessUniversalCheckoutVaultManagerInterface
32
34
 
33
- override fun getName() = "RNPrimerHeadlessUniversalCheckoutVaultManager"
35
+ override fun getName() = NAME
34
36
 
35
37
  @ReactMethod
36
38
  fun configure(promise: Promise) {
@@ -168,4 +170,8 @@ class PrimerRNHeadlessUniversalCheckoutVaultManager(
168
170
  }
169
171
  }
170
172
  }
173
+
174
+ companion object {
175
+ const val NAME = "RNPrimerHeadlessUniversalCheckoutVaultManager"
176
+ }
171
177
  }
@@ -24,7 +24,7 @@ data class PrimerSettingsRN(
24
24
  var uiOptions: PrimerUIOptionsRN = PrimerUIOptionsRN(),
25
25
  var debugOptions: PrimerDebugOptionsRN = PrimerDebugOptionsRN(),
26
26
  var clientSessionCachingEnabled: Boolean = false,
27
- var apiVersion: String = PrimerApiVersion.LATEST.name
27
+ var apiVersion: String = PrimerApiVersion.LATEST.name,
28
28
  )
29
29
 
30
30
  @Serializable
@@ -127,11 +127,11 @@ data class ColorRN(
127
127
 
128
128
  @Serializable
129
129
  data class PrimerCardFormUIOptionsRN(
130
- var payButtonAddNewCard: Boolean = true
130
+ var payButtonAddNewCard: Boolean = true,
131
131
  ) {
132
132
  fun toPrimerCardFormUIOptions(): PrimerCardFormUIOptions {
133
133
  return PrimerCardFormUIOptions(
134
- payButtonAddNewCard = payButtonAddNewCard
134
+ payButtonAddNewCard = payButtonAddNewCard,
135
135
  )
136
136
  }
137
137
  }
@@ -221,6 +221,5 @@ fun PrimerSettingsRN.toPrimerSettings(context: Context) =
221
221
  "2.4" -> PrimerApiVersion.V2_4
222
222
  "latest" -> PrimerApiVersion.LATEST
223
223
  else -> error("'$apiVersion' is not supported.")
224
- }
224
+ },
225
225
  )
226
-
@@ -2,7 +2,6 @@ package com.primerioreactnative.extensions
2
2
 
3
3
  import com.primerioreactnative.datamodels.PrimerUIOptionsRN
4
4
  import io.primer.android.data.settings.DismissalMechanism
5
- import io.primer.android.ui.settings.PrimerCardFormUIOptions
6
5
  import io.primer.android.ui.settings.PrimerUIOptions
7
6
 
8
7
  @OptIn(kotlin.ExperimentalStdlibApi::class)
@@ -21,5 +20,5 @@ internal fun PrimerUIOptionsRN.toPrimerUIOptions() =
21
20
  }
22
21
  }.toList().takeIf { it.isNotEmpty() } ?: listOf(DismissalMechanism.GESTURES),
23
22
  theme.toPrimerTheme(),
24
- cardFormUIOptions.toPrimerCardFormUIOptions()
23
+ cardFormUIOptions.toPrimerCardFormUIOptions(),
25
24
  )
@@ -0,0 +1,119 @@
1
+ package com.primerioreactnative
2
+
3
+ import com.facebook.react.bridge.Arguments
4
+ import com.facebook.react.bridge.Promise
5
+ import com.facebook.react.bridge.ReactApplicationContext
6
+ import com.facebook.react.module.annotations.ReactModule
7
+ import kotlinx.serialization.json.Json
8
+
9
+ @ReactModule(name = DefaultNativePrimerModule.NAME)
10
+ class NativePrimerModule(private val reactContext: ReactApplicationContext, private val json: Json) :
11
+ NativePrimerSpec(reactContext) {
12
+ private val implementation by lazy {
13
+ DefaultNativePrimerModule(
14
+ reactContext = reactContext,
15
+ json = json,
16
+ eventSender = { name, params ->
17
+ val eventData = Arguments.createMap().apply {
18
+ putString(EVENT_TYPE_KEY, name)
19
+ putMap(DATA_KEY, params)
20
+ }
21
+ emitOnEvent(eventData)
22
+ }
23
+ )
24
+ }
25
+
26
+ override fun configure(settings: String?, promise: Promise) {
27
+ implementation.configure(settingsStr = settings, promise = promise)
28
+ }
29
+
30
+ override fun showUniversalCheckoutWithClientToken(
31
+ clientToken: String,
32
+ promise: Promise
33
+ ) {
34
+ implementation.showUniversalCheckoutWithClientToken(clientToken = clientToken, promise = promise)
35
+ }
36
+
37
+ override fun showVaultManagerWithClientToken(
38
+ clientToken: String,
39
+ promise: Promise
40
+ ) {
41
+ implementation.showVaultManagerWithClientToken(clientToken = clientToken, promise = promise)
42
+ }
43
+
44
+ override fun showPaymentMethod(
45
+ paymentMethod: String,
46
+ intent: String,
47
+ clientToken: String,
48
+ promise: Promise
49
+ ) {
50
+ implementation.showPaymentMethod(
51
+ paymentMethod = paymentMethod,
52
+ intent = intent,
53
+ clientToken = clientToken,
54
+ promise = promise
55
+ )
56
+ }
57
+
58
+ override fun dismiss(promise: Promise) {
59
+ implementation.dismiss(promise)
60
+ }
61
+
62
+ override fun cleanUp(promise: Promise) {
63
+ implementation.cleanUp(promise = promise)
64
+ }
65
+
66
+ override fun handleTokenizationNewClientToken(
67
+ newClientToken: String,
68
+ promise: Promise
69
+ ) {
70
+ implementation.handleTokenizationNewClientToken(newClientToken = newClientToken, promise = promise)
71
+ }
72
+
73
+ override fun handleTokenizationSuccess(promise: Promise) {
74
+ implementation.handleTokenizationSuccess(promise = promise)
75
+ }
76
+
77
+ override fun handleTokenizationFailure(errorMessage: String?, promise: Promise) {
78
+ implementation.handleTokenizationFailure(errorMessage = errorMessage, promise = promise)
79
+ }
80
+
81
+ override fun handleResumeWithNewClientToken(
82
+ newClientToken: String,
83
+ promise: Promise
84
+ ) {
85
+ implementation.handleResumeWithNewClientToken(newClientToken = newClientToken, promise = promise)
86
+ }
87
+
88
+ override fun handleResumeSuccess(promise: Promise) {
89
+ implementation.handleResumeSuccess(promise = promise)
90
+ }
91
+
92
+ override fun handleResumeFailure(errorMessage: String?, promise: Promise) {
93
+ implementation.handleResumeFailure(errorMessage = errorMessage, promise = promise)
94
+ }
95
+
96
+ override fun handlePaymentCreationAbort(errorMessage: String?, promise: Promise) {
97
+ implementation.handlePaymentCreationAbort(errorMessage = errorMessage, promise = promise)
98
+ }
99
+
100
+ override fun handlePaymentCreationContinue(promise: Promise) {
101
+ implementation.handlePaymentCreationContinue(promise = promise)
102
+ }
103
+
104
+ override fun showErrorMessage(errorMessage: String?, promise: Promise) {
105
+ implementation.showErrorMessage(errorMessage = errorMessage, promise = promise)
106
+ }
107
+
108
+ override fun setImplementedRNCallbacks(
109
+ implementedRNCallbacks: String,
110
+ promise: Promise
111
+ ) {
112
+ implementation.setImplementedRNCallbacks(implementedRNCallbacksStr = implementedRNCallbacks, promise = promise)
113
+ }
114
+
115
+ private companion object {
116
+ const val EVENT_TYPE_KEY = "eventType"
117
+ const val DATA_KEY = "data"
118
+ }
119
+ }