@primer-io/react-native 2.16.7 → 2.17.0-rc.10

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 (283) hide show
  1. package/android/.project +2 -2
  2. package/android/build.gradle +2 -3
  3. package/android/gradle.properties +1 -1
  4. package/android/src/main/java/com/primerioreactnative/PrimerCardNumberEditTextManager.kt +0 -15
  5. package/android/src/main/java/com/primerioreactnative/PrimerRN.kt +15 -2
  6. package/android/src/main/java/com/primerioreactnative/PrimerRNEventListener.kt +23 -8
  7. package/android/src/main/java/com/primerioreactnative/PrimerRNHeadlessUniversalCheckout.kt +20 -120
  8. package/android/src/main/java/com/primerioreactnative/PrimerRNHeadlessUniversalCheckoutListener.kt +61 -69
  9. package/android/src/main/java/com/primerioreactnative/ReactNativePackage.kt +6 -2
  10. package/android/src/main/java/com/primerioreactnative/{huc → components}/assets/AssetsManager.kt +5 -14
  11. package/android/src/main/java/com/primerioreactnative/components/assets/CardNetworkImageFileProvider.kt +23 -0
  12. package/android/src/main/java/com/primerioreactnative/components/assets/PaymentMethodAssetFileProvider.kt +24 -0
  13. package/android/src/main/java/com/primerioreactnative/components/datamodels/core/PrimerRNHeadlessUniversalCheckoutPaymentMethod.kt +25 -0
  14. package/android/src/main/java/com/primerioreactnative/components/datamodels/core/PrimerRawPaymentMethodType.kt +9 -0
  15. package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/asset/PrimerRNAsset.kt +106 -0
  16. package/android/src/main/java/com/primerioreactnative/{huc/datamodels/manager/raw/card/PrimerRNRawCardData.kt → components/datamodels/manager/raw/card/PrimerRNCardData.kt} +6 -8
  17. package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/raw/cardRedirect/PrimerRNCardRedirectData.kt +19 -0
  18. package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/raw/phoneNumber/PrimerRNPhoneNumberData.kt +14 -0
  19. package/android/src/main/java/com/primerioreactnative/components/datamodels/manager/raw/retailOutlets/PrimerRNRetailOutletData.kt +12 -0
  20. package/android/src/main/java/com/primerioreactnative/{huc → components}/datamodels/manager/raw/retailOutlets/RNRetailOutletsList.kt +1 -1
  21. package/android/src/main/java/com/primerioreactnative/components/events/PrimerHeadlessUniversalCheckoutEvent.kt +17 -0
  22. package/android/src/main/java/com/primerioreactnative/{huc → components}/events/PrimerHeadlessUniversalCheckoutRawDataManagerEvent.kt +1 -2
  23. package/android/src/main/java/com/primerioreactnative/components/manager/asset/PrimerRNHeadlessUniversalCheckoutAssetManager.kt +131 -0
  24. package/android/src/main/java/com/primerioreactnative/components/manager/nativeUi/PrimerRNHeadlessUniversalCheckoutNativeUiManager.kt +87 -0
  25. package/android/src/main/java/com/primerioreactnative/{huc → components}/manager/raw/PrimerRNHeadlessUniversalCheckoutRawManager.kt +72 -68
  26. package/android/src/main/java/com/primerioreactnative/{huc → components}/manager/raw/PrimerRNHeadlessUniversalCheckoutRawManagerListener.kt +13 -5
  27. package/android/src/main/java/com/primerioreactnative/datamodels/PrimerErrorRN.kt +5 -4
  28. package/android/src/main/java/com/primerioreactnative/datamodels/PrimerInputValidationErrorRN.kt +11 -0
  29. package/android/src/main/java/com/primerioreactnative/datamodels/PrimerSettingsRN.kt +13 -9
  30. package/android/src/main/java/com/primerioreactnative/extensions/PrimerPaymentMethodOptionsRN.kt +3 -3
  31. package/android/src/main/java/com/primerioreactnative/utils/PrimerHeadlessUniversalCheckoutImplementedRNCallbacks.kt +15 -15
  32. package/android/src/main/java/com/primerioreactnative/utils/PrimerImplementedRNCallbacks.kt +7 -7
  33. package/ios/Podfile.lock +1 -1
  34. package/ios/ReactNative.xcodeproj/project.pbxproj +20 -20
  35. package/ios/Sources/DataModels/ImplementedRNCallbacks.swift +75 -0
  36. package/ios/{DataModels/RNTPrimerCardRedirectData.swift → Sources/DataModels/PrimerBancontactCardRedirectData+Extension.swift} +5 -8
  37. package/ios/{DataModels/RNTPrimerCardData.swift → Sources/DataModels/PrimerCardData+Extension.swift} +2 -5
  38. package/ios/Sources/DataModels/PrimerHeadlessUniversalCheckout_PaymentMethod.swift +20 -0
  39. package/ios/{DataModels/RNTPrimerPhoneNumberData.swift → Sources/DataModels/PrimerPhoneNumberData+Extension.swift} +0 -1
  40. package/ios/{DataModels/RNTPrimerRetailerData.swift → Sources/DataModels/PrimerRawRetailerData+Extension.swift} +3 -4
  41. package/ios/Sources/DataModels/PrimerSettings+Extensions.swift +94 -0
  42. package/ios/Sources/DataModels/RNTNativeError.swift +22 -0
  43. package/ios/Sources/DataModels/RNTPrimerPaymentMethodAsset.swift +67 -0
  44. package/ios/Sources/Headless Universal Checkout/Managers/Payment Method Managers/RNTNativeUIManager.m +19 -0
  45. package/ios/Sources/Headless Universal Checkout/Managers/Payment Method Managers/RNTNativeUIManager.swift +63 -0
  46. package/ios/Sources/Headless Universal Checkout/Managers/Payment Method Managers/RNTRawDataManager.m +23 -0
  47. package/ios/{Headless Universal Checkout/RNTPrimerHeadlessUniversalCheckoutRawDataManager.swift → Sources/Headless Universal Checkout/Managers/Payment Method Managers/RNTRawDataManager.swift } +36 -31
  48. package/ios/Sources/Headless Universal Checkout/Managers/RNTAssetsManager.m +24 -0
  49. package/ios/Sources/Headless Universal Checkout/Managers/RNTAssetsManager.swift +107 -0
  50. package/ios/Sources/Headless Universal Checkout/RNTPrimerHeadlessUniversalCheckout.m +41 -0
  51. package/ios/Sources/Headless Universal Checkout/RNTPrimerHeadlessUniversalCheckout.swift +498 -0
  52. package/ios/Sources/Helpers/Encodable+Extension.swift +17 -0
  53. package/ios/Sources/Helpers/Error+Extensions.swift +39 -0
  54. package/ios/Sources/Helpers/UIColor+Extensions.swift +32 -0
  55. package/ios/Sources/Helpers/UIImage+Extensions.swift +32 -0
  56. package/ios/Sources/RNTPrimer.m +86 -0
  57. package/ios/{RNTPrimer.swift → Sources/RNTPrimer.swift} +37 -28
  58. package/lib/commonjs/HeadlessUniversalCheckout/Managers/AssetsManager.js +59 -0
  59. package/lib/commonjs/HeadlessUniversalCheckout/Managers/AssetsManager.js.map +1 -0
  60. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.js +35 -0
  61. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.js.map +1 -0
  62. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js +151 -0
  63. package/lib/commonjs/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js.map +1 -0
  64. package/lib/commonjs/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js +270 -0
  65. package/lib/commonjs/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js.map +1 -0
  66. package/lib/commonjs/{headless_checkout → HeadlessUniversalCheckout}/RNPrimerHeadlessUniversalCheckout.js +7 -81
  67. package/lib/commonjs/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.js.map +1 -0
  68. package/lib/commonjs/HeadlessUniversalCheckout/types.js +34 -0
  69. package/lib/commonjs/HeadlessUniversalCheckout/types.js.map +1 -0
  70. package/lib/commonjs/Primer.js +24 -23
  71. package/lib/commonjs/Primer.js.map +1 -1
  72. package/lib/commonjs/PrimerInput.js.map +1 -1
  73. package/lib/commonjs/RNPrimer.js +4 -4
  74. package/lib/commonjs/RNPrimer.js.map +1 -1
  75. package/lib/commonjs/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.js.map +1 -1
  76. package/lib/commonjs/index.js +63 -71
  77. package/lib/commonjs/index.js.map +1 -1
  78. package/lib/commonjs/models/PrimerAsset.js +2 -0
  79. package/lib/commonjs/models/PrimerAsset.js.map +1 -0
  80. package/lib/commonjs/models/PrimerCheckoutAdditionalInfo.js.map +1 -1
  81. package/lib/commonjs/models/PrimerCheckoutData.js.map +1 -1
  82. package/lib/commonjs/models/PrimerCheckoutPaymentMethodData.js.map +1 -1
  83. package/lib/commonjs/models/PrimerClientSession.js.map +1 -1
  84. package/lib/commonjs/models/PrimerCountryCode.js.map +1 -1
  85. package/lib/commonjs/models/PrimerCurrencyCode.js.map +1 -1
  86. package/lib/commonjs/models/PrimerError.js +4 -4
  87. package/lib/commonjs/models/PrimerError.js.map +1 -1
  88. package/lib/commonjs/models/PrimerHandlers.js +2 -0
  89. package/lib/commonjs/models/PrimerHandlers.js.map +1 -0
  90. package/lib/commonjs/models/PrimerHeadlessUniversalCheckoutPaymentMethod.js +2 -0
  91. package/lib/commonjs/models/PrimerHeadlessUniversalCheckoutPaymentMethod.js.map +1 -0
  92. package/lib/commonjs/models/PrimerImplementedRNCallbacks.js +2 -0
  93. package/lib/commonjs/models/PrimerImplementedRNCallbacks.js.map +1 -0
  94. package/lib/commonjs/models/PrimerInitializationData.js.map +1 -1
  95. package/lib/commonjs/models/PrimerInputElementType.js +20 -0
  96. package/lib/commonjs/models/PrimerInputElementType.js.map +1 -0
  97. package/lib/commonjs/models/PrimerInterfaces.js.map +1 -1
  98. package/lib/commonjs/models/PrimerPaymentMethodManagerCategory.js +14 -0
  99. package/lib/commonjs/models/PrimerPaymentMethodManagerCategory.js.map +1 -0
  100. package/lib/commonjs/models/PrimerPaymentMethodTokenData.js.map +1 -1
  101. package/lib/commonjs/models/PrimerRawData.js.map +1 -1
  102. package/lib/commonjs/models/PrimerSessionIntent.js.map +1 -1
  103. package/lib/commonjs/models/PrimerSettings.js.map +1 -1
  104. package/lib/commonjs/models/PrimerTheme.js.map +1 -1
  105. package/lib/commonjs/models/RetailOutletsRetail.js.map +1 -1
  106. package/lib/commonjs/utils/index.js.map +1 -1
  107. package/lib/module/HeadlessUniversalCheckout/Managers/AssetsManager.js +52 -0
  108. package/lib/module/HeadlessUniversalCheckout/Managers/AssetsManager.js.map +1 -0
  109. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.js +28 -0
  110. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.js.map +1 -0
  111. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js +144 -0
  112. package/lib/module/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.js.map +1 -0
  113. package/lib/module/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js +261 -0
  114. package/lib/module/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.js.map +1 -0
  115. package/lib/module/{headless_checkout → HeadlessUniversalCheckout}/RNPrimerHeadlessUniversalCheckout.js +7 -81
  116. package/lib/module/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.js.map +1 -0
  117. package/lib/module/HeadlessUniversalCheckout/types.js +33 -0
  118. package/lib/module/HeadlessUniversalCheckout/types.js.map +1 -0
  119. package/lib/module/Primer.js +24 -23
  120. package/lib/module/Primer.js.map +1 -1
  121. package/lib/module/PrimerInput.js.map +1 -1
  122. package/lib/module/RNPrimer.js +4 -4
  123. package/lib/module/RNPrimer.js.map +1 -1
  124. package/lib/module/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.js.map +1 -1
  125. package/lib/module/index.js +15 -9
  126. package/lib/module/index.js.map +1 -1
  127. package/lib/module/models/PrimerAsset.js +2 -0
  128. package/lib/module/models/PrimerAsset.js.map +1 -0
  129. package/lib/module/models/PrimerCheckoutAdditionalInfo.js.map +1 -1
  130. package/lib/module/models/PrimerCheckoutData.js.map +1 -1
  131. package/lib/module/models/PrimerCheckoutPaymentMethodData.js.map +1 -1
  132. package/lib/module/models/PrimerClientSession.js.map +1 -1
  133. package/lib/module/models/PrimerCountryCode.js.map +1 -1
  134. package/lib/module/models/PrimerCurrencyCode.js.map +1 -1
  135. package/lib/module/models/PrimerError.js +4 -4
  136. package/lib/module/models/PrimerError.js.map +1 -1
  137. package/lib/module/models/PrimerHandlers.js +2 -0
  138. package/lib/module/models/PrimerHandlers.js.map +1 -0
  139. package/lib/module/models/PrimerHeadlessUniversalCheckoutPaymentMethod.js +2 -0
  140. package/lib/module/models/PrimerHeadlessUniversalCheckoutPaymentMethod.js.map +1 -0
  141. package/lib/module/models/PrimerImplementedRNCallbacks.js +2 -0
  142. package/lib/module/models/PrimerImplementedRNCallbacks.js.map +1 -0
  143. package/lib/module/models/PrimerInitializationData.js.map +1 -1
  144. package/lib/module/models/PrimerInputElementType.js +13 -0
  145. package/lib/module/models/PrimerInputElementType.js.map +1 -0
  146. package/lib/module/models/PrimerInterfaces.js.map +1 -1
  147. package/lib/module/models/PrimerPaymentMethodManagerCategory.js +7 -0
  148. package/lib/module/models/PrimerPaymentMethodManagerCategory.js.map +1 -0
  149. package/lib/module/models/PrimerPaymentMethodTokenData.js.map +1 -1
  150. package/lib/module/models/PrimerRawData.js.map +1 -1
  151. package/lib/module/models/PrimerSessionIntent.js.map +1 -1
  152. package/lib/module/models/PrimerSettings.js.map +1 -1
  153. package/lib/module/models/PrimerTheme.js.map +1 -1
  154. package/lib/module/models/RetailOutletsRetail.js.map +1 -1
  155. package/lib/module/utils/index.js.map +1 -1
  156. package/lib/typescript/HeadlessUniversalCheckout/Managers/AssetsManager.d.ts +9 -0
  157. package/lib/typescript/HeadlessUniversalCheckout/Managers/AssetsManager.d.ts.map +1 -0
  158. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.d.ts +8 -0
  159. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.d.ts.map +1 -0
  160. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.d.ts +29 -0
  161. package/lib/typescript/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.d.ts.map +1 -0
  162. package/lib/typescript/{headless_checkout → HeadlessUniversalCheckout}/PrimerHeadlessUniversalCheckout.d.ts +4 -5
  163. package/lib/typescript/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.d.ts.map +1 -0
  164. package/lib/typescript/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.d.ts +18 -0
  165. package/lib/typescript/HeadlessUniversalCheckout/RNPrimerHeadlessUniversalCheckout.d.ts.map +1 -0
  166. package/lib/typescript/HeadlessUniversalCheckout/types.d.ts +1 -0
  167. package/lib/typescript/HeadlessUniversalCheckout/types.d.ts.map +1 -0
  168. package/lib/typescript/Primer.d.ts +1 -0
  169. package/lib/typescript/Primer.d.ts.map +1 -0
  170. package/lib/typescript/PrimerInput.d.ts +5 -4
  171. package/lib/typescript/PrimerInput.d.ts.map +1 -0
  172. package/lib/typescript/RNPrimer.d.ts +4 -4
  173. package/lib/typescript/RNPrimer.d.ts.map +1 -0
  174. package/lib/typescript/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.d.ts +1 -0
  175. package/lib/typescript/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.d.ts.map +1 -0
  176. package/lib/typescript/index.d.ts +18 -9
  177. package/lib/typescript/index.d.ts.map +1 -0
  178. package/lib/typescript/models/PrimerAsset.d.ts +15 -0
  179. package/lib/typescript/models/PrimerAsset.d.ts.map +1 -0
  180. package/lib/typescript/models/PrimerCheckoutAdditionalInfo.d.ts +7 -6
  181. package/lib/typescript/models/PrimerCheckoutAdditionalInfo.d.ts.map +1 -0
  182. package/lib/typescript/models/PrimerCheckoutData.d.ts +3 -2
  183. package/lib/typescript/models/PrimerCheckoutData.d.ts.map +1 -0
  184. package/lib/typescript/models/PrimerCheckoutPaymentMethodData.d.ts +2 -1
  185. package/lib/typescript/models/PrimerCheckoutPaymentMethodData.d.ts.map +1 -0
  186. package/lib/typescript/models/PrimerClientSession.d.ts +6 -5
  187. package/lib/typescript/models/PrimerClientSession.d.ts.map +1 -0
  188. package/lib/typescript/models/PrimerCountryCode.d.ts +2 -1
  189. package/lib/typescript/models/PrimerCountryCode.d.ts.map +1 -0
  190. package/lib/typescript/models/PrimerCurrencyCode.d.ts +2 -1
  191. package/lib/typescript/models/PrimerCurrencyCode.d.ts.map +1 -0
  192. package/lib/typescript/models/PrimerError.d.ts +3 -1
  193. package/lib/typescript/models/PrimerError.d.ts.map +1 -0
  194. package/lib/typescript/models/PrimerHandlers.d.ts +22 -0
  195. package/lib/typescript/models/PrimerHandlers.d.ts.map +1 -0
  196. package/lib/typescript/models/PrimerHeadlessUniversalCheckoutPaymentMethod.d.ts +6 -0
  197. package/lib/typescript/models/PrimerHeadlessUniversalCheckoutPaymentMethod.d.ts.map +1 -0
  198. package/lib/typescript/models/PrimerImplementedRNCallbacks.d.ts +17 -0
  199. package/lib/typescript/models/PrimerImplementedRNCallbacks.d.ts.map +1 -0
  200. package/lib/typescript/models/PrimerInitializationData.d.ts +3 -2
  201. package/lib/typescript/models/PrimerInitializationData.d.ts.map +1 -0
  202. package/lib/typescript/models/PrimerInputElementType.d.ts +12 -0
  203. package/lib/typescript/models/PrimerInputElementType.d.ts.map +1 -0
  204. package/lib/typescript/models/PrimerInterfaces.d.ts +3 -20
  205. package/lib/typescript/models/PrimerInterfaces.d.ts.map +1 -0
  206. package/lib/typescript/models/PrimerPaymentMethodManagerCategory.d.ts +6 -0
  207. package/lib/typescript/models/PrimerPaymentMethodManagerCategory.d.ts.map +1 -0
  208. package/lib/typescript/models/PrimerPaymentMethodTokenData.d.ts +2 -1
  209. package/lib/typescript/models/PrimerPaymentMethodTokenData.d.ts.map +1 -0
  210. package/lib/typescript/models/PrimerRawData.d.ts +7 -10
  211. package/lib/typescript/models/PrimerRawData.d.ts.map +1 -0
  212. package/lib/typescript/models/PrimerSessionIntent.d.ts +1 -0
  213. package/lib/typescript/models/PrimerSessionIntent.d.ts.map +1 -0
  214. package/lib/typescript/models/PrimerSettings.d.ts +28 -6
  215. package/lib/typescript/models/PrimerSettings.d.ts.map +1 -0
  216. package/lib/typescript/models/PrimerTheme.d.ts +3 -2
  217. package/lib/typescript/models/PrimerTheme.d.ts.map +1 -0
  218. package/lib/typescript/models/RetailOutletsRetail.d.ts +2 -1
  219. package/lib/typescript/models/RetailOutletsRetail.d.ts.map +1 -0
  220. package/lib/typescript/utils/index.d.ts +1 -0
  221. package/lib/typescript/utils/index.d.ts.map +1 -0
  222. package/package.json +8 -7
  223. package/primer-io-react-native.podspec +1 -2
  224. package/src/HeadlessUniversalCheckout/Managers/AssetsManager.ts +56 -0
  225. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager.ts +31 -0
  226. package/src/HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager.ts +166 -0
  227. package/src/HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout.ts +333 -0
  228. package/src/{headless_checkout → HeadlessUniversalCheckout}/RNPrimerHeadlessUniversalCheckout.ts +37 -128
  229. package/src/HeadlessUniversalCheckout/types.ts +32 -0
  230. package/src/Primer.ts +32 -31
  231. package/src/RNPrimer.ts +4 -9
  232. package/src/index.tsx +43 -29
  233. package/src/models/PrimerAsset.ts +14 -0
  234. package/src/models/PrimerError.ts +3 -1
  235. package/src/models/PrimerHandlers.ts +25 -0
  236. package/src/models/PrimerHeadlessUniversalCheckoutPaymentMethod.ts +5 -0
  237. package/src/models/PrimerImplementedRNCallbacks.ts +20 -0
  238. package/src/models/PrimerInputElementType.ts +11 -0
  239. package/src/models/PrimerInterfaces.ts +2 -28
  240. package/src/models/PrimerPaymentMethodManagerCategory.ts +5 -0
  241. package/src/models/PrimerRawData.ts +6 -10
  242. package/src/models/PrimerSettings.ts +42 -16
  243. package/android/src/main/java/com/primerioreactnative/huc/datamodels/manager/raw/cardRedirect/PrimerRNPRawCardRedirectData.kt +0 -20
  244. package/android/src/main/java/com/primerioreactnative/huc/datamodels/manager/raw/phoneNumber/PrimerRNRawPhoneNumberData.kt +0 -14
  245. package/android/src/main/java/com/primerioreactnative/huc/datamodels/manager/raw/retailOutlets/PrimerRNRawRetailOutletData.kt +0 -12
  246. package/android/src/main/java/com/primerioreactnative/huc/events/PrimerHeadlessUniversalCheckoutEvent.kt +0 -15
  247. package/ios/DataModels/ImplementedRNCallbacks.swift +0 -62
  248. package/ios/DataModels/PrimerErrorRN.swift +0 -35
  249. package/ios/DataModels/PrimerSettingsRN.swift +0 -84
  250. package/ios/Headless Universal Checkout/RNTPrimerHeadlessUniversalCheckout.m +0 -62
  251. package/ios/Headless Universal Checkout/RNTPrimerHeadlessUniversalCheckout.swift +0 -501
  252. package/ios/Headless Universal Checkout/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.m +0 -14
  253. package/ios/Headless Universal Checkout/RNTPrimerHeadlessUniversalCheckoutCardFormUIManager.swift +0 -117
  254. package/ios/Headless Universal Checkout/RNTPrimerHeadlessUniversalCheckoutRawDataManager.m +0 -23
  255. package/ios/RNTPrimer.m +0 -59
  256. package/lib/commonjs/headless_checkout/PrimerHeadlessUniversalCheckout.js +0 -288
  257. package/lib/commonjs/headless_checkout/PrimerHeadlessUniversalCheckout.js.map +0 -1
  258. package/lib/commonjs/headless_checkout/PrimerHeadlessUniversalCheckoutRawDataManager.js +0 -91
  259. package/lib/commonjs/headless_checkout/PrimerHeadlessUniversalCheckoutRawDataManager.js.map +0 -1
  260. package/lib/commonjs/headless_checkout/RNPrimerHeadlessUniversalCheckout.js.map +0 -1
  261. package/lib/commonjs/headless_checkout/RNPrimerHeadlessUniversalCheckoutRawDataManager.js +0 -91
  262. package/lib/commonjs/headless_checkout/RNPrimerHeadlessUniversalCheckoutRawDataManager.js.map +0 -1
  263. package/lib/commonjs/headless_checkout/types.js +0 -6
  264. package/lib/commonjs/headless_checkout/types.js.map +0 -1
  265. package/lib/module/headless_checkout/PrimerHeadlessUniversalCheckout.js +0 -279
  266. package/lib/module/headless_checkout/PrimerHeadlessUniversalCheckout.js.map +0 -1
  267. package/lib/module/headless_checkout/PrimerHeadlessUniversalCheckoutRawDataManager.js +0 -83
  268. package/lib/module/headless_checkout/PrimerHeadlessUniversalCheckoutRawDataManager.js.map +0 -1
  269. package/lib/module/headless_checkout/RNPrimerHeadlessUniversalCheckout.js.map +0 -1
  270. package/lib/module/headless_checkout/RNPrimerHeadlessUniversalCheckoutRawDataManager.js +0 -84
  271. package/lib/module/headless_checkout/RNPrimerHeadlessUniversalCheckoutRawDataManager.js.map +0 -1
  272. package/lib/module/headless_checkout/types.js +0 -2
  273. package/lib/module/headless_checkout/types.js.map +0 -1
  274. package/lib/typescript/headless_checkout/PrimerHeadlessUniversalCheckoutRawDataManager.d.ts +0 -18
  275. package/lib/typescript/headless_checkout/RNPrimerHeadlessUniversalCheckout.d.ts +0 -22
  276. package/lib/typescript/headless_checkout/RNPrimerHeadlessUniversalCheckoutRawDataManager.d.ts +0 -14
  277. package/lib/typescript/headless_checkout/types.d.ts +0 -22
  278. package/src/headless_checkout/PrimerHeadlessUniversalCheckout.ts +0 -358
  279. package/src/headless_checkout/PrimerHeadlessUniversalCheckoutRawDataManager.ts +0 -109
  280. package/src/headless_checkout/RNPrimerHeadlessUniversalCheckoutRawDataManager.ts +0 -104
  281. package/src/headless_checkout/types.ts +0 -32
  282. /package/ios/{DataModels → Sources/DataModels}/PrimerThemeRN.swift +0 -0
  283. /package/ios/{Headless Universal Checkout → Sources/Headless Universal Checkout/Managers/Payment Method Managers}/RNTPrimerCardNumberInputElementManager.m +0 -0
@@ -1,38 +1,47 @@
1
1
  import { NativeEventEmitter, NativeModules } from 'react-native';
2
+ import type { PrimerSettings } from '../models/PrimerSettings';
2
3
 
3
4
  const { PrimerHeadlessUniversalCheckout } = NativeModules;
4
5
 
5
6
  const eventEmitter = new NativeEventEmitter(PrimerHeadlessUniversalCheckout);
6
7
 
7
8
  type EventType =
8
- | 'onHUCTokenizeStart'
9
- | 'onHUCPrepareStart'
10
- | 'onHUCAvailablePaymentMethodsLoaded'
11
- | 'onHUCPaymentMethodShow'
12
- | 'onTokenizeSuccess'
13
- | 'onResumeSuccess'
14
- | 'onResumePending'
15
- | 'onCheckoutReceivedAdditionalInfo'
16
- | 'onBeforePaymentCreate'
9
+ | 'onAvailablePaymentMethodsLoad'
10
+ | 'onTokenizationStart'
11
+ | 'onTokenizationSuccess'
12
+
13
+ | 'onCheckoutResume'
14
+ | 'onCheckoutPending'
15
+ | 'onCheckoutAdditionalInfo'
16
+
17
+ | 'onError'
18
+ | 'onCheckoutComplete'
17
19
  | 'onBeforeClientSessionUpdate'
20
+
18
21
  | 'onClientSessionUpdate'
19
- | 'onCheckoutComplete'
20
- | 'onError';
22
+ | 'onBeforePaymentCreate'
23
+ | 'onPreparationStart'
24
+
25
+ | 'onPaymentMethodShow';
21
26
 
22
27
  const eventTypes: EventType[] = [
23
- 'onHUCTokenizeStart',
24
- 'onHUCPrepareStart',
25
- 'onHUCAvailablePaymentMethodsLoaded',
26
- 'onHUCPaymentMethodShow',
27
- 'onTokenizeSuccess',
28
- 'onResumeSuccess',
29
- 'onResumePending',
30
- 'onCheckoutReceivedAdditionalInfo',
31
- 'onBeforePaymentCreate',
28
+ 'onAvailablePaymentMethodsLoad',
29
+ 'onTokenizationStart',
30
+ 'onTokenizationSuccess',
31
+
32
+ 'onCheckoutResume',
33
+ 'onCheckoutPending',
34
+ 'onCheckoutAdditionalInfo',
35
+
36
+ 'onError',
37
+ 'onCheckoutComplete',
32
38
  'onBeforeClientSessionUpdate',
39
+
33
40
  'onClientSessionUpdate',
34
- 'onCheckoutComplete',
35
- 'onError'
41
+ 'onBeforePaymentCreate',
42
+ 'onPreparationStart',
43
+
44
+ 'onPaymentMethodShow'
36
45
  ];
37
46
 
38
47
  const RNPrimerHeadlessUniversalCheckout = {
@@ -58,75 +67,9 @@ const RNPrimerHeadlessUniversalCheckout = {
58
67
  ///////////////////////////////////////////
59
68
  // Native API
60
69
  ///////////////////////////////////////////
61
- getAssetForPaymentMethodType: (
62
- paymentMethodType: string,
63
- assetType: 'logo' | 'icon'
64
- ): Promise<string> => {
65
- return new Promise((resolve, reject) => {
66
- try {
67
- PrimerHeadlessUniversalCheckout.getAssetForPaymentMethodType(
68
- paymentMethodType,
69
- assetType,
70
- (err: Error) => {
71
- reject(err);
72
- },
73
- (url: string) => {
74
- resolve(url);
75
- }
76
- );
77
- } catch (e) {
78
- reject(e);
79
- }
80
- });
81
- },
82
-
83
- getAssetForCardNetwork: (
84
- cardNetwork: string,
85
- assetType: 'logo' | 'icon'
86
- ): Promise<string> => {
87
- return new Promise((resolve, reject) => {
88
- try {
89
- PrimerHeadlessUniversalCheckout.getAssetForCardNetwork(
90
- cardNetwork,
91
- assetType,
92
- (err: Error) => {
93
- reject(err);
94
- },
95
- (url: string) => {
96
- resolve(url);
97
- }
98
- );
99
- } catch (e) {
100
- reject(e);
101
- }
102
- });
103
- },
104
70
 
105
- startWithClientToken(clientToken: string, settings: any): Promise<any> {
106
- return new Promise((resolve, reject) => {
107
- PrimerHeadlessUniversalCheckout.startWithClientToken(
108
- clientToken,
109
- JSON.stringify(settings),
110
- (err: Error) => {
111
- console.error(err);
112
- reject(err);
113
- },
114
- (paymentMethodTypes: string[]) => {
115
- resolve({ paymentMethodTypes });
116
- }
117
- );
118
- });
119
- },
120
-
121
- showPaymentMethod: (paymentMethodType: string): Promise<void> => {
122
- return new Promise(async (resolve, reject) => {
123
- try {
124
- await PrimerHeadlessUniversalCheckout.showPaymentMethod(paymentMethodType);
125
- resolve();
126
- } catch (err) {
127
- reject(err);
128
- }
129
- });
71
+ startWithClientToken(clientToken: string, settings: PrimerSettings): Promise<any> {
72
+ return PrimerHeadlessUniversalCheckout.startWithClientToken(clientToken, JSON.stringify(settings));
130
73
  },
131
74
 
132
75
  ///////////////////////////////////////////
@@ -146,28 +89,6 @@ const RNPrimerHeadlessUniversalCheckout = {
146
89
  });
147
90
  },
148
91
 
149
- handleTokenizationSuccess: (): Promise<void> => {
150
- return new Promise(async (resolve, reject) => {
151
- try {
152
- await PrimerHeadlessUniversalCheckout.handleTokenizationSuccess();
153
- resolve();
154
- } catch (err) {
155
- reject(err);
156
- }
157
- });
158
- },
159
-
160
- handleTokenizationFailure: (errorMessage: string | null): Promise<void> => {
161
- return new Promise(async (resolve, reject) => {
162
- try {
163
- await PrimerHeadlessUniversalCheckout.handleTokenizationFailure(errorMessage || "");
164
- resolve();
165
- } catch (err) {
166
- reject(err);
167
- }
168
- });
169
- },
170
-
171
92
  // Resume Handlers
172
93
 
173
94
  handleResumeWithNewClientToken: (newClientToken: string): Promise<void> => {
@@ -181,21 +102,10 @@ const RNPrimerHeadlessUniversalCheckout = {
181
102
  });
182
103
  },
183
104
 
184
- handleResumeSuccess: (): Promise<void> => {
105
+ handleCompleteFlow: (): Promise<void> => {
185
106
  return new Promise(async (resolve, reject) => {
186
107
  try {
187
- await PrimerHeadlessUniversalCheckout.handleResumeSuccess();
188
- resolve();
189
- } catch (err) {
190
- reject(err);
191
- }
192
- });
193
- },
194
-
195
- handleResumeFailure: (errorMessage: string | null): Promise<void> => {
196
- return new Promise(async (resolve, reject) => {
197
- try {
198
- await PrimerHeadlessUniversalCheckout.handleTokenizationFailure(errorMessage || "");
108
+ await PrimerHeadlessUniversalCheckout.handleCompleteFlow();
199
109
  resolve();
200
110
  } catch (err) {
201
111
  reject(err);
@@ -240,11 +150,10 @@ const RNPrimerHeadlessUniversalCheckout = {
240
150
  });
241
151
  },
242
152
 
243
-
244
- disposePrimerHeadlessUniversalCheckout: (): Promise<void> => {
153
+ cleanUp: (): Promise<void> => {
245
154
  return new Promise(async (resolve, reject) => {
246
155
  try {
247
- await PrimerHeadlessUniversalCheckout.disposePrimerHeadlessUniversalCheckout();
156
+ await PrimerHeadlessUniversalCheckout.cleanUp();
248
157
  resolve();
249
158
  } catch (err) {
250
159
  reject(err);
@@ -0,0 +1,32 @@
1
+ // import type { PrimerCheckoutData } from '../models/PrimerCheckoutData';
2
+ // import type { PrimerCheckoutPaymentMethodData } from '../models/PrimerCheckoutPaymentMethodData';
3
+ // import type {
4
+ // PrimerTokenizationHandler,
5
+ // PrimerResumeHandler,
6
+ // PrimerPaymentCreationHandler,
7
+ // PrimerErrorHandler
8
+ // } from '../models/PrimerInterfaces';
9
+ // import type { PrimerClientSession } from '../models/PrimerClientSession';
10
+ // import type { PrimerPaymentMethodTokenData } from '../models/PrimerPaymentMethodTokenData';
11
+ // import type { PrimerError } from '../models/PrimerError';
12
+
13
+ // export interface PrimerHeadlessUniversalCheckoutStartResponse {
14
+ // paymentMethodTypes: string[];
15
+ // }
16
+
17
+ // export interface PrimerHeadlessUniversalCheckoutCallbacks {
18
+ // // Common
19
+ // onBeforeClientSessionUpdate?: () => void;
20
+ // onClientSessionUpdate?: (clientSession: PrimerClientSession) => void;
21
+ // onBeforePaymentCreate?: (checkoutPaymentMethodData: PrimerCheckoutPaymentMethodData, handler: PrimerPaymentCreationHandler) => void;
22
+ // onCheckoutComplete?: (checkoutData: PrimerCheckoutData) => void;
23
+ // onTokenizeSuccess?: (paymentMethodTokenData: PrimerPaymentMethodTokenData, handler: PrimerTokenizationHandler) => void;
24
+ // onResumeSuccess?: (resumeToken: string, handler: PrimerResumeHandler) => void;
25
+ // onError?: (error: PrimerError, checkoutData: PrimerCheckoutData | null, handler: PrimerErrorHandler | undefined) => void;
26
+
27
+ // // Only on HUC
28
+ // onPrepareStart?: (paymentMethodType: string) => void;
29
+ // onTokenizeStart?: (paymentMethodType: string) => void;
30
+ // onPaymentMethodShow?: (paymentMethodType: string) => void;
31
+ // onAvailablePaymentMethodTypesLoad?: (paymentMethodTypes: string[]) => void;
32
+ // }
package/src/Primer.ts CHANGED
@@ -1,13 +1,14 @@
1
1
  import type { PrimerCheckoutData } from './models/PrimerCheckoutData';
2
- import type { PrimerSessionIntent } from './models/PrimerSessionIntent';
3
2
  import type { PrimerSettings } from './models/PrimerSettings';
4
3
  import RNPrimer from './RNPrimer';
5
4
  import type { PrimerCheckoutPaymentMethodData } from './models/PrimerCheckoutPaymentMethodData';
6
5
  import type { PrimerClientSession } from './models/PrimerClientSession';
7
6
  import type { PrimerPaymentMethodTokenData } from './models/PrimerPaymentMethodTokenData';
8
7
  import { PrimerError } from './models/PrimerError';
9
- import type { IPrimer, PrimerErrorHandler, PrimerPaymentCreationHandler, PrimerResumeHandler, PrimerTokenizationHandler } from './models/PrimerInterfaces';
10
8
  import type { PrimerCheckoutAdditionalInfo } from './models/PrimerCheckoutAdditionalInfo';
9
+ import type { PrimerErrorHandler, PrimerPaymentCreationHandler, PrimerResumeHandler, PrimerTokenizationHandler } from './models/PrimerHandlers';
10
+ import type { IPrimer } from './models/PrimerInterfaces';
11
+ import type { PrimerImplementedRNCallbacks } from './models/PrimerImplementedRNCallbacks';
11
12
 
12
13
  ///////////////////////////////////////////
13
14
  // DECISION HANDLERS
@@ -108,17 +109,25 @@ async function configureListeners(): Promise<void> {
108
109
  try {
109
110
  RNPrimer.removeAllListeners();
110
111
 
111
- let implementedRNCallbacks: any = {
112
- onCheckoutComplete: (primerSettings?.onCheckoutComplete !== undefined),
113
- onBeforePaymentCreate: (primerSettings?.onBeforePaymentCreate !== undefined),
114
- onBeforeClientSessionUpdate: (primerSettings?.onBeforeClientSessionUpdate !== undefined),
115
- onClientSessionUpdate: (primerSettings?.onClientSessionUpdate !== undefined),
116
- onTokenizeSuccess: (primerSettings?.onTokenizeSuccess !== undefined),
117
- onResumeSuccess: (primerSettings?.onResumeSuccess !== undefined),
118
- onResumePending: (primerSettings?.onResumePending !== undefined),
119
- onCheckoutReceivedAdditionalInfo: (primerSettings?.onCheckoutReceivedAdditionalInfo !== undefined),
120
- onDismiss: (primerSettings?.onDismiss !== undefined),
121
- onError: (primerSettings?.onError !== undefined),
112
+ let implementedRNCallbacks: PrimerImplementedRNCallbacks = {
113
+ onAvailablePaymentMethodsLoad: false,
114
+ onTokenizationStart: false,
115
+ onTokenizationSuccess: (primerSettings?.onTokenizeSuccess !== undefined) || false,
116
+
117
+ onCheckoutResume: (primerSettings?.onResumeSuccess !== undefined) || false,
118
+ onCheckoutPending: (primerSettings?.onResumePending !== undefined) || false,
119
+ onCheckoutAdditionalInfo: (primerSettings?.onCheckoutReceivedAdditionalInfo !== undefined) || false,
120
+
121
+ onError: (primerSettings?.onError !== undefined) || false,
122
+ onCheckoutComplete: (primerSettings?.onCheckoutComplete !== undefined) || false,
123
+ onBeforeClientSessionUpdate: (primerSettings?.onBeforeClientSessionUpdate !== undefined) || false,
124
+
125
+ onClientSessionUpdate: (primerSettings?.onClientSessionUpdate !== undefined) || false,
126
+ onBeforePaymentCreate: (primerSettings?.onBeforePaymentCreate !== undefined) || false,
127
+ onPreparationStart: false,
128
+
129
+ onPaymentMethodShow: false,
130
+ onDismiss: (primerSettings?.onDismiss !== undefined) || false
122
131
  };
123
132
 
124
133
  await RNPrimer.setImplementedRNCallbacks(implementedRNCallbacks);
@@ -158,7 +167,7 @@ async function configureListeners(): Promise<void> {
158
167
  });
159
168
  }
160
169
 
161
- if (implementedRNCallbacks.onTokenizeSuccess) {
170
+ if (implementedRNCallbacks.onTokenizationSuccess) {
162
171
  RNPrimer.addListener('onTokenizeSuccess', data => {
163
172
  if (primerSettings && primerSettings.onTokenizeSuccess) {
164
173
  const paymentMethodTokenData: PrimerPaymentMethodTokenData = data;
@@ -167,7 +176,7 @@ async function configureListeners(): Promise<void> {
167
176
  });
168
177
  }
169
178
 
170
- if (implementedRNCallbacks.onResumeSuccess) {
179
+ if (implementedRNCallbacks.onCheckoutResume) {
171
180
  RNPrimer.addListener('onResumeSuccess', data => {
172
181
  if (primerSettings && primerSettings.onResumeSuccess && data.resumeToken) {
173
182
  primerSettings.onResumeSuccess(data.resumeToken, resumeHandler);
@@ -175,7 +184,7 @@ async function configureListeners(): Promise<void> {
175
184
  });
176
185
  }
177
186
 
178
- if (implementedRNCallbacks.onResumePending) {
187
+ if (implementedRNCallbacks.onCheckoutPending) {
179
188
  RNPrimer.addListener(
180
189
  'onResumePending',
181
190
  (additionalInfo) => {
@@ -189,7 +198,7 @@ async function configureListeners(): Promise<void> {
189
198
  );
190
199
  }
191
200
 
192
- if (implementedRNCallbacks.onCheckoutReceivedAdditionalInfo) {
201
+ if (implementedRNCallbacks.onCheckoutAdditionalInfo) {
193
202
  RNPrimer.addListener(
194
203
  'onCheckoutReceivedAdditionalInfo',
195
204
  (additionalInfo) => {
@@ -217,13 +226,9 @@ async function configureListeners(): Promise<void> {
217
226
  const errorId: string = data.error.errorId;
218
227
  const description: string | undefined = data.error.description;
219
228
  const recoverySuggestion: string | undefined = data.error.recoverySuggestion;
220
- const primerError = new PrimerError(errorId, description || 'Unknown error', recoverySuggestion);
221
-
222
- if (data.checkoutData) {
223
- primerSettings.onError(primerError, data.checkoutData, errorHandler);
224
- } else {
225
- primerSettings.onError(primerError, null, errorHandler);
226
- }
229
+ const diagnosticsId: string | undefined = data.error.diagnosticsId;
230
+ const primerError = new PrimerError(errorId, description || 'Unknown error', recoverySuggestion, diagnosticsId);
231
+ primerSettings.onError(primerError, data.checkoutData || null, errorHandler);
227
232
  }
228
233
  });
229
234
  }
@@ -278,15 +283,11 @@ export const Primer: IPrimer = {
278
283
  });
279
284
  },
280
285
 
281
- async showPaymentMethod(
282
- paymentMethodType: string,
283
- intent: PrimerSessionIntent,
284
- clientToken: string
285
- ): Promise<void> {
286
+ async showPaymentMethod(paymentMethod: string, intent: string, clientToken: string): Promise<void> {
286
287
  return new Promise(async (resolve, reject) => {
287
288
  try {
288
289
  await configureListeners();
289
- await RNPrimer.showPaymentMethod(paymentMethodType, intent, clientToken);
290
+ await RNPrimer.showPaymentMethod(paymentMethod, intent, clientToken);
290
291
  resolve();
291
292
  } catch (err) {
292
293
  reject(err);
@@ -294,7 +295,7 @@ export const Primer: IPrimer = {
294
295
  });
295
296
  },
296
297
 
297
- dispose(): void {
298
+ cleanUp(): void {
298
299
  RNPrimer.removeAllListeners();
299
300
  RNPrimer.dismiss();
300
301
  },
package/src/RNPrimer.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  import { NativeEventEmitter, NativeModules } from 'react-native';
2
- import type { PrimerSessionIntent } from './models/PrimerSessionIntent';
3
2
  import type { PrimerSettings } from './models/PrimerSettings';
4
3
 
5
4
  const { NativePrimer } = NativeModules;
@@ -95,14 +94,10 @@ const RNPrimer = {
95
94
  });
96
95
  },
97
96
 
98
- showPaymentMethod: (
99
- paymentMethodType: string,
100
- intent: PrimerSessionIntent,
101
- clientToken: string
102
- ): Promise<void> => {
97
+ showPaymentMethod: (paymentMethod: string, intent: string, clientToken: string): Promise<void> => {
103
98
  return new Promise(async (resolve, reject) => {
104
99
  try {
105
- await NativePrimer.showPaymentMethod(paymentMethodType, intent, clientToken);
100
+ await NativePrimer.showPaymentMethod(paymentMethod, intent, clientToken);
106
101
  resolve();
107
102
  } catch (err) {
108
103
  reject(err);
@@ -121,10 +116,10 @@ const RNPrimer = {
121
116
  });
122
117
  },
123
118
 
124
- dispose: (): Promise<void> => {
119
+ cleanUp: (): Promise<void> => {
125
120
  return new Promise(async (resolve, reject) => {
126
121
  try {
127
- await NativePrimer.dispose();
122
+ await NativePrimer.cleanUp();
128
123
  resolve();
129
124
  } catch (err) {
130
125
  reject(err);
package/src/index.tsx CHANGED
@@ -5,54 +5,68 @@ export {
5
5
  PrimerSettings
6
6
  } from './models/PrimerSettings';
7
7
  export {
8
- PrimerSessionIntent
8
+ PrimerInputElementType as InputElementType
9
+ } from './models/PrimerInputElementType';
10
+ export {
11
+ PrimerSessionIntent as SessionIntent
9
12
  } from './models/PrimerSessionIntent';
10
13
  export {
11
- PrimerPaymentCreationHandler,
12
- PrimerTokenizationHandler,
13
- PrimerResumeHandler,
14
- PrimerErrorHandler,
15
- } from './models/PrimerInterfaces';
14
+ PrimerPaymentCreationHandler as PaymentCreationHandler,
15
+ PrimerTokenizationHandler as TokenizationHandler,
16
+ PrimerResumeHandler as ResumeHandler,
17
+ PrimerErrorHandler as ErrorHandler,
18
+ } from './models/PrimerHandlers';
16
19
  export { PrimerPaymentMethodTokenData } from './models/PrimerPaymentMethodTokenData';
17
20
  export {
18
- PrimerClientSession,
19
- PrimerOrder,
20
- PrimerLineItem,
21
- PrimerCustomer,
22
- PrimerAddress,
21
+ PrimerClientSession as ClientSession,
22
+ PrimerOrder as Order,
23
+ PrimerLineItem as LineItem,
24
+ PrimerCustomer as Customer,
25
+ PrimerAddress as Address,
23
26
  } from './models/PrimerClientSession';
24
27
  export {
25
- PrimerRawData,
26
- PrimerRawCardData,
27
- PrimerRawPhoneNumberData,
28
- PrimerRawCardRedirectData,
29
- PrimerBancontactCardRedirectData,
30
- PrimerRawRetailerData
28
+ PrimerRawData as RawData,
29
+ PrimerCardData as CardData,
30
+ PrimerBancontactCardData as BancontactCardData,
31
+ PrimerPhoneNumberData as PhoneNumberData,
32
+ PrimerRetailerData as RetailerData
31
33
  } from './models/PrimerRawData';
32
34
  export {
33
- PrimerCheckoutAdditionalInfo,
34
- MultibancoCheckoutAdditionalInfo,
35
- PrimerCheckoutVoucherAdditionalInfo,
36
- XenditCheckoutVoucherAdditionalInfo,
37
- PrimerCheckoutQRCodeInfo,
38
- PromptPayCheckoutAdditionalInfo
35
+ PrimerCheckoutAdditionalInfo as CheckoutAdditionalInfo,
36
+ MultibancoCheckoutAdditionalInfo
39
37
  } from './models/PrimerCheckoutAdditionalInfo';
40
38
  export {
41
39
  RetailOutletsRetail
42
40
  } from './models/RetailOutletsRetail';
43
41
  export {
44
- PrimerCheckoutData,
45
- PrimerCheckoutDataPayment,
42
+ PrimerCheckoutData as CheckoutData,
43
+ PrimerCheckoutDataPayment as CheckoutDataPayment,
46
44
  } from './models/PrimerCheckoutData';
47
45
  export {
48
- PrimerCheckoutPaymentMethodData
46
+ PrimerCheckoutPaymentMethodData as CheckoutPaymentMethodData
49
47
  } from './models/PrimerCheckoutPaymentMethodData';
50
48
  export {
51
49
  PrimerError
52
50
  } from './models/PrimerError';
51
+ export type {
52
+ IPrimerAsset as Asset
53
+ } from './models/PrimerAsset';
53
54
  export {
54
55
  PrimerHeadlessUniversalCheckout as HeadlessUniversalCheckout
55
- } from './headless_checkout/PrimerHeadlessUniversalCheckout';
56
+ } from './HeadlessUniversalCheckout/PrimerHeadlessUniversalCheckout';
57
+ export type {
58
+ IPrimerHeadlessUniversalCheckoutPaymentMethod as PaymentMethod
59
+ } from './models/PrimerHeadlessUniversalCheckoutPaymentMethod';
60
+
61
+ import PrimerHeadlessUniversalCheckoutAssetsManager from './HeadlessUniversalCheckout/Managers/AssetsManager';
62
+ export {
63
+ PrimerHeadlessUniversalCheckoutAssetsManager as AssetsManager
64
+ }
65
+ import PrimerHeadlessUniversalCheckoutPaymentMethodNativeUIManager from './HeadlessUniversalCheckout/Managers/PaymentMethodManagers/NativeUIManager';
66
+ export {
67
+ PrimerHeadlessUniversalCheckoutPaymentMethodNativeUIManager as NativeUIManager
68
+ }
69
+ import PrimerHeadlessUniversalCheckoutRawDataManager from './HeadlessUniversalCheckout/Managers/PaymentMethodManagers/RawDataManager';
56
70
  export {
57
- PrimerHeadlessUniversalCheckoutRawDataManager as HeadlessUniversalCheckoutRawDataManager
58
- } from './headless_checkout/PrimerHeadlessUniversalCheckoutRawDataManager';
71
+ PrimerHeadlessUniversalCheckoutRawDataManager as RawDataManager
72
+ }
@@ -0,0 +1,14 @@
1
+ export interface IPrimerAsset {
2
+ paymentMethodType: string;
3
+ paymentMethodName: string;
4
+ paymentMethodLogo: {
5
+ colored?: string;
6
+ dark?: string;
7
+ light?: string;
8
+ }
9
+ paymentMethodBackgroundColor: {
10
+ colored?: string;
11
+ dark?: string;
12
+ light?: string;
13
+ }
14
+ }
@@ -10,11 +10,13 @@ export class PrimerError extends Error {
10
10
  errorId: string;
11
11
  description: string;
12
12
  recoverySuggestion?: string;
13
+ diagnosticsId?: string;
13
14
 
14
- constructor(errorId: string, description: string, recoverySuggestion: string | undefined) {
15
+ constructor(errorId: string, description: string, recoverySuggestion: string | undefined, diagnosticsId: string | undefined) {
15
16
  super(description);
16
17
  this.errorId = errorId;
17
18
  this.description = description;
18
19
  this.recoverySuggestion = recoverySuggestion;
20
+ this.diagnosticsId = diagnosticsId;
19
21
  }
20
22
  }
@@ -0,0 +1,25 @@
1
+ export interface PrimerPaymentCreationHandler {
2
+ abortPaymentCreation(errorMessage: string | null): void;
3
+ continuePaymentCreation(): void;
4
+ }
5
+
6
+ export interface PrimerTokenizationHandler {
7
+ handleSuccess(): void;
8
+ handleFailure(errorMessage: string | null): void;
9
+ continueWithNewClientToken(newClientToken: string): void;
10
+ }
11
+
12
+ export interface PrimerResumeHandler {
13
+ handleSuccess(): void;
14
+ handleFailure(errorMessage: string | null): void;
15
+ continueWithNewClientToken(newClientToken: string): void;
16
+ }
17
+
18
+ export interface PrimerHeadlessUniversalCheckoutResumeHandler {
19
+ continueWithNewClientToken(newClientToken: string): void;
20
+ complete(): void;
21
+ }
22
+
23
+ export interface PrimerErrorHandler {
24
+ showErrorMessage(errorMessage: string | null): void;
25
+ }
@@ -0,0 +1,5 @@
1
+ export interface IPrimerHeadlessUniversalCheckoutPaymentMethod {
2
+ paymentMethodType: string;
3
+ paymentMethodManagerCategories: ("NATIVE_UI" | "RAW_DATA" | "CARD_COMPONENTS")[];
4
+ supportedPrimerSessionIntents: ("CHECKOUT" | "VAULT")[];
5
+ }
@@ -0,0 +1,20 @@
1
+ export interface PrimerImplementedRNCallbacks {
2
+ onAvailablePaymentMethodsLoad: boolean;
3
+ onTokenizationStart: boolean;
4
+ onTokenizationSuccess: boolean;
5
+
6
+ onCheckoutResume: boolean;
7
+ onCheckoutPending: boolean;
8
+ onCheckoutAdditionalInfo: boolean;
9
+
10
+ onError: boolean;
11
+ onCheckoutComplete: boolean;
12
+ onBeforeClientSessionUpdate: boolean;
13
+
14
+ onClientSessionUpdate: boolean;
15
+ onBeforePaymentCreate: boolean;
16
+ onPreparationStart: boolean;
17
+
18
+ onPaymentMethodShow: boolean;
19
+ onDismiss: boolean;
20
+ }
@@ -0,0 +1,11 @@
1
+ export enum PrimerInputElementType {
2
+ CARD_NUMBER = "CARD_NUMBER",
3
+ EXPIRY_DATE = "EXPIRY_DATE",
4
+ CVV = "CVV",
5
+ CARDHOLDER_NAME = "CARDHOLDER_NAME",
6
+ OTP = "OTP",
7
+ POSTAL_CODE = "POSTAL_CODE",
8
+ PHONE_NUMBER = "PHONE_NUMBER",
9
+ RETAILER = "RETAILER",
10
+ UNKNOWN = "UNKNOWN"
11
+ }
@@ -1,36 +1,10 @@
1
- import type { PrimerSessionIntent } from "./PrimerSessionIntent";
2
1
  import type { PrimerSettings } from "./PrimerSettings";
3
2
 
4
3
  export interface IPrimer {
5
4
  configure(settings: PrimerSettings): Promise<void>;
6
5
  showUniversalCheckout(clientToken: string): Promise<void>;
7
6
  showVaultManager(clientToken: string): Promise<void>;
8
- showPaymentMethod(
9
- paymentMethodType: string,
10
- intent: PrimerSessionIntent,
11
- clientToken: string
12
- ): Promise<void>
7
+ showPaymentMethod(paymentMethod: string, intent: string, clientToken: string): Promise<void>;
13
8
  dismiss(): void;
14
- dispose(): void;
15
- }
16
-
17
- export interface PrimerPaymentCreationHandler {
18
- abortPaymentCreation(errorMessage: string | null): void;
19
- continuePaymentCreation(): void;
20
- }
21
-
22
- export interface PrimerTokenizationHandler {
23
- handleSuccess(): void;
24
- handleFailure(errorMessage: string | null): void;
25
- continueWithNewClientToken(newClientToken: string): void;
26
- }
27
-
28
- export interface PrimerResumeHandler {
29
- handleSuccess(): void;
30
- handleFailure(errorMessage: string | null): void;
31
- continueWithNewClientToken(newClientToken: string): void;
32
- }
33
-
34
- export interface PrimerErrorHandler {
35
- showErrorMessage(errorMessage: string | null): void;
9
+ cleanUp(): void;
36
10
  }
@@ -0,0 +1,5 @@
1
+ export enum PrimerPaymentMethodManagerCategory {
2
+ CARD_COMPONENTS = "CARD_COMPONENTS",
3
+ NATIVE_UI = 'NATIVE_UI',
4
+ RAW_DATA = 'RAW_DATA'
5
+ }