react-native-hyperswitch-dev-sdk 0.4.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 (262) hide show
  1. package/HyperswitchSdkReactNative.podspec +42 -0
  2. package/LICENSE +201 -0
  3. package/android/build.gradle +161 -0
  4. package/android/gradle.properties +5 -0
  5. package/android/hyperswitch_autolinking.gradle +378 -0
  6. package/android/proguard-rules.pro +72 -0
  7. package/android/src/legacy/java/com/facebook/react/viewmanagers/GooglePayButtonManagerDelegate.java +41 -0
  8. package/android/src/legacy/java/com/facebook/react/viewmanagers/GooglePayButtonManagerInterface.java +20 -0
  9. package/android/src/legacy/java/com/facebook/react/viewmanagers/NativePaymentWidgetManagerDelegate.java +38 -0
  10. package/android/src/legacy/java/com/facebook/react/viewmanagers/NativePaymentWidgetManagerInterface.java +21 -0
  11. package/android/src/legacy/java/com/hyperswitchsdkreactnative/NativeHyperswitchSdkNativeSpec.java +106 -0
  12. package/android/src/legacy/java/com/hyperswitchsdkreactnative/NativeHyperswitchSdkReactNativeSpec.java +77 -0
  13. package/android/src/legacy/java/com/hyperswitchsdkreactnative/NativePaymentWidgetNativeSpec.java +36 -0
  14. package/android/src/main/AndroidManifest.xml +15 -0
  15. package/android/src/main/assets/hyperswitch.bundle +1535 -0
  16. package/android/src/main/java/com/hyperswitchsdkreactnative/HyperswitchSdkReactNativePackage.kt +47 -0
  17. package/android/src/main/java/com/hyperswitchsdkreactnative/modules/NativePaymentWidgetModule.kt +173 -0
  18. package/android/src/main/java/com/hyperswitchsdkreactnative/modules/ReactNativeHyperswitchModule.kt +396 -0
  19. package/android/src/main/java/com/hyperswitchsdkreactnative/views/PaymentElementViewManager.kt +99 -0
  20. package/android/src/main/java/io/hyperswitch/HyperswitchReactPackageProvider.kt +19 -0
  21. package/android/src/main/java/io/hyperswitch/PaymentEventType.kt +18 -0
  22. package/android/src/main/java/io/hyperswitch/model/ElementConfiguration.kt +58 -0
  23. package/android/src/main/java/io/hyperswitch/paymentsession/ExitHeadlessCallBackManager.kt +47 -0
  24. package/android/src/main/java/io/hyperswitch/paymentsession/GetPaymentSessionCallBackManager.kt +23 -0
  25. package/android/src/main/java/io/hyperswitch/paymentsession/PaymentMethod.kt +167 -0
  26. package/android/src/main/java/io/hyperswitch/paymentsession/PaymentSessionHandler.kt +68 -0
  27. package/android/src/main/java/io/hyperswitch/paymentsession/PaymentSessionHandlerImpl.kt +179 -0
  28. package/android/src/main/java/io/hyperswitch/paymentsession/PaymentSessionReactLauncher.kt +226 -0
  29. package/android/src/main/java/io/hyperswitch/paymentsession/PaymentSheetCallbackManager.kt +40 -0
  30. package/android/src/main/java/io/hyperswitch/paymentsheet/PaymentResult.kt +63 -0
  31. package/android/src/main/java/io/hyperswitch/react/GooglePayButtonManager.kt +54 -0
  32. package/android/src/main/java/io/hyperswitch/react/HyperActivity.kt +73 -0
  33. package/android/src/main/java/io/hyperswitch/react/HyperEventEmitter.kt +144 -0
  34. package/android/src/main/java/io/hyperswitch/react/HyperFragment.kt +429 -0
  35. package/android/src/main/java/io/hyperswitch/react/HyperFragmentManager.kt +155 -0
  36. package/android/src/main/java/io/hyperswitch/react/HyperHeadlessModule.kt +43 -0
  37. package/android/src/main/java/io/hyperswitch/react/HyperModule.kt +405 -0
  38. package/android/src/main/java/io/hyperswitch/react/HyperPackage.kt +16 -0
  39. package/android/src/main/java/io/hyperswitch/react/ReactNativeController.kt +251 -0
  40. package/android/src/main/java/io/hyperswitch/utils/ConversionUtils.kt +256 -0
  41. package/android/src/main/java/io/hyperswitch/utils/StandardResult.kt +45 -0
  42. package/android/src/main/java/io/hyperswitch/view/GooglePayButtonView.kt +59 -0
  43. package/android/src/main/java/io/hyperswitch/view/PaymentWidgetView.kt +405 -0
  44. package/android/src/main/res/values/attrs.xml +6 -0
  45. package/android/src/main/res/values/strings.xml +5 -0
  46. package/android/src/main/res/values/theme.xml +16 -0
  47. package/ios/Modules/ReactNative/HyperswitchModule.swift +470 -0
  48. package/ios/Modules/ReactNative/HyperswitchSdkReactNative.h +5 -0
  49. package/ios/Modules/ReactNative/HyperswitchSdkReactNative.mm +121 -0
  50. package/ios/Modules/ReactNative/NativeHyperswitchModule.h +18 -0
  51. package/ios/Modules/ReactNative/NativeHyperswitchModule.mm +165 -0
  52. package/ios/Modules/ReactNative/NativeHyperswitchModuleImpl.swift +290 -0
  53. package/ios/Modules/ReactNative/NativePaymentElementModule.mm +129 -0
  54. package/ios/Views/Fabric/ApplePayView.h +14 -0
  55. package/ios/Views/Fabric/ApplePayView.mm +89 -0
  56. package/ios/Views/Fabric/NativePaymentElementView.h +21 -0
  57. package/ios/Views/Fabric/NativePaymentElementView.mm +200 -0
  58. package/ios/Views/Fabric/NativePaymentWidgetViewRegistry.h +37 -0
  59. package/ios/Views/Fabric/NativePaymentWidgetViewRegistry.m +45 -0
  60. package/ios/Views/Native/NativePaymentWidget.m +26 -0
  61. package/ios/Views/Native/NativePaymentWidget.swift +420 -0
  62. package/ios/hyperswitchSDK/Core/ApplePay/ApplePayHandler.swift +261 -0
  63. package/ios/hyperswitchSDK/Core/ApplePay/ApplePayViewManager.m +18 -0
  64. package/ios/hyperswitchSDK/Core/ApplePay/ApplePayViewManager.swift +126 -0
  65. package/ios/hyperswitchSDK/Core/DeviceDataCollection/HeadlessWebView.swift +144 -0
  66. package/ios/hyperswitchSDK/Core/HyperCVCWidget/CVCWidget.swift +136 -0
  67. package/ios/hyperswitchSDK/Core/HyperExpressCheckout/ExpressCheckoutLauncher.swift +116 -0
  68. package/ios/hyperswitchSDK/Core/HyperExpressCheckout/ExpressCheckoutWidget.swift +42 -0
  69. package/ios/hyperswitchSDK/Core/HyperPaymentCardTextField/PaymentCardTextField+SwiftUI.swift +67 -0
  70. package/ios/hyperswitchSDK/Core/HyperPaymentCardTextField/PaymentCardTextField.swift +44 -0
  71. package/ios/hyperswitchSDK/Core/HyperPaymentCardTextField/PaymentHandler.swift +59 -0
  72. package/ios/hyperswitchSDK/Core/HyperPaymentCardTextField/PaymentIntentParams.swift +31 -0
  73. package/ios/hyperswitchSDK/Core/HyperPaymentCardTextField/PaymentMethodParams.swift +25 -0
  74. package/ios/hyperswitchSDK/Core/HyperPaymentMethodManagement/PaymentManagementConfiguration.swift +213 -0
  75. package/ios/hyperswitchSDK/Core/HyperPaymentMethodManagement/PaymentMethodManagementWidget.swift +92 -0
  76. package/ios/hyperswitchSDK/Core/HyperPaymentSheet/PaymentSheet+Events.swift +36 -0
  77. package/ios/hyperswitchSDK/Core/HyperPaymentSheet/PaymentSheetView+SwiftUI.swift +49 -0
  78. package/ios/hyperswitchSDK/Core/HyperPaymentSheet/PaymentSheetView+UIKit.swift +49 -0
  79. package/ios/hyperswitchSDK/Core/HyperPaymentSheet/PaymentSheetView.swift +68 -0
  80. package/ios/hyperswitchSDK/Core/HyperPaymentWidget/PaymentWidget.swift +212 -0
  81. package/ios/hyperswitchSDK/Core/HyperSession/PaymentSession+UIKit.swift +228 -0
  82. package/ios/hyperswitchSDK/Core/HyperSession/PaymentSessionTypes.swift +174 -0
  83. package/ios/hyperswitchSDK/Core/NativeModule/HyperHeadless.m +15 -0
  84. package/ios/hyperswitchSDK/Core/NativeModule/HyperHeadless.swift +108 -0
  85. package/ios/hyperswitchSDK/Core/NativeModule/HyperModule.m +31 -0
  86. package/ios/hyperswitchSDK/Core/NativeModule/HyperModule.swift +343 -0
  87. package/ios/hyperswitchSDK/Core/NativeModule/OTAServices.swift +117 -0
  88. package/ios/hyperswitchSDK/Core/NativeModule/RNHeadlessManager.swift +47 -0
  89. package/ios/hyperswitchSDK/Core/NativeModule/RNResponseHandler.swift +12 -0
  90. package/ios/hyperswitchSDK/Core/NativeModule/RNViewManager.swift +55 -0
  91. package/ios/hyperswitchSDK/Core/NativeModule/WidgetAction.swift +30 -0
  92. package/ios/hyperswitchSDK/Core/NativeModule/WidgetResponseRegistry.swift +92 -0
  93. package/ios/hyperswitchSDK/Core/NativeModule/hyper-Bridging-Header.h +12 -0
  94. package/ios/hyperswitchSDK/Core/Resources/HyperOTA.plist +20 -0
  95. package/ios/hyperswitchSDK/Core/Resources/hyperswitch.bundle +1531 -0
  96. package/ios/hyperswitchSDK/CoreLite/ApplePayHandlerLite.swift +251 -0
  97. package/ios/hyperswitchSDK/CoreLite/PaymentSession+Lite.swift +25 -0
  98. package/ios/hyperswitchSDK/CoreLite/PaymentSheetView+Lite.swift +45 -0
  99. package/ios/hyperswitchSDK/CoreLite/SwiftUI+Lite.swift +48 -0
  100. package/ios/hyperswitchSDK/CoreLite/WebViewController.swift +278 -0
  101. package/ios/hyperswitchSDK/Shared/APIClient.swift +22 -0
  102. package/ios/hyperswitchSDK/Shared/Codable+UIKit.swift +75 -0
  103. package/ios/hyperswitchSDK/Shared/CustomEndpointConfiguration.swift +67 -0
  104. package/ios/hyperswitchSDK/Shared/DictionaryConverter.swift +104 -0
  105. package/ios/hyperswitchSDK/Shared/Environment.swift +24 -0
  106. package/ios/hyperswitchSDK/Shared/Extensions.swift +101 -0
  107. package/ios/hyperswitchSDK/Shared/Helper.swift +40 -0
  108. package/ios/hyperswitchSDK/Shared/HyperEvents/PaymentEventData.swift +125 -0
  109. package/ios/hyperswitchSDK/Shared/HyperEvents/PaymentEventSubscriptionBuilder.swift +45 -0
  110. package/ios/hyperswitchSDK/Shared/HyperEvents/PaymentEventType.swift +30 -0
  111. package/ios/hyperswitchSDK/Shared/HyperNetworking.swift +151 -0
  112. package/ios/hyperswitchSDK/Shared/HyperParams.swift +44 -0
  113. package/ios/hyperswitchSDK/Shared/HyperUIViewController.swift +27 -0
  114. package/ios/hyperswitchSDK/Shared/Hyperswitch.swift +20 -0
  115. package/ios/hyperswitchSDK/Shared/HyperswitchConfigurationSchema.swift +54 -0
  116. package/ios/hyperswitchSDK/Shared/HyperswitchEnvironment.swift +11 -0
  117. package/ios/hyperswitchSDK/Shared/NativeLogger/Debouncer.swift +37 -0
  118. package/ios/hyperswitchSDK/Shared/NativeLogger/LogBuilder.swift +113 -0
  119. package/ios/hyperswitchSDK/Shared/NativeLogger/LogFileManager.swift +76 -0
  120. package/ios/hyperswitchSDK/Shared/NativeLogger/LogManager.swift +113 -0
  121. package/ios/hyperswitchSDK/Shared/NativeLogger/LogPayload.swift +91 -0
  122. package/ios/hyperswitchSDK/Shared/PaymentMethodType.swift +15 -0
  123. package/ios/hyperswitchSDK/Shared/PaymentSession.swift +98 -0
  124. package/ios/hyperswitchSDK/Shared/PaymentSessionConfiguration.swift +14 -0
  125. package/ios/hyperswitchSDK/Shared/PaymentSheet.swift +33 -0
  126. package/ios/hyperswitchSDK/Shared/PaymentSheetAppearance+Codable.swift +182 -0
  127. package/ios/hyperswitchSDK/Shared/PaymentSheetAppearance.swift +238 -0
  128. package/ios/hyperswitchSDK/Shared/PaymentSheetConfiguration.swift +161 -0
  129. package/ios/hyperswitchSDK/Shared/SDKParams.swift +43 -0
  130. package/ios/hyperswitchSDK/Shared/SavedPaymentMethodsConfiguration.swift +20 -0
  131. package/ios/hyperswitchSDK/Shared/SwiftUIManager.swift +28 -0
  132. package/ios/hyperswitchSDK/Shared/Version.swift +12 -0
  133. package/lib/bs/JuspayTechReactNativeHyperswitch.cmi +0 -0
  134. package/lib/bs/JuspayTechReactNativeHyperswitch.cmj +0 -0
  135. package/lib/bs/JuspayTechReactNativeHyperswitch.cmt +0 -0
  136. package/lib/bs/JuspayTechReactNativeHyperswitch.mlmap +0 -0
  137. package/lib/bs/build.ninja +8 -0
  138. package/lib/bs/install.ninja +9 -0
  139. package/lib/bs/src/context/HyperProvider-JuspayTechReactNativeHyperswitch.cmt +0 -0
  140. package/lib/bs/src/context/WidgetRegistry-JuspayTechReactNativeHyperswitch.cmt +0 -0
  141. package/lib/bs/src/core/Hyper-JuspayTechReactNativeHyperswitch.cmt +0 -0
  142. package/lib/bs/src/core/HyperElements-JuspayTechReactNativeHyperswitch.cmt +0 -0
  143. package/lib/bs/src/hooks/usePaymentSession-JuspayTechReactNativeHyperswitch.cmt +0 -0
  144. package/lib/bs/src/hooks/useWidget-JuspayTechReactNativeHyperswitch.cmt +0 -0
  145. package/lib/bs/src/modules/NativeHyperswitchSdk-JuspayTechReactNativeHyperswitch.cmt +0 -0
  146. package/lib/bs/src/types/HyperTypes-JuspayTechReactNativeHyperswitch.cmt +0 -0
  147. package/lib/bs/src/types/NativeModuleTypes-JuspayTechReactNativeHyperswitch.cmt +0 -0
  148. package/lib/bs/src/types/PaymentSheetConfiguration-JuspayTechReactNativeHyperswitch.cmt +0 -0
  149. package/lib/bs/src/utils/AppearanceTransformer-JuspayTechReactNativeHyperswitch.cmt +0 -0
  150. package/lib/bs/src/utils/EventValidator-JuspayTechReactNativeHyperswitch.cmt +0 -0
  151. package/lib/bs/src/utils/NewArchUtils-JuspayTechReactNativeHyperswitch.cmt +0 -0
  152. package/lib/bs/src/utils/PaymentSheetEventManager-JuspayTechReactNativeHyperswitch.cmt +0 -0
  153. package/lib/bs/src/utils/ReactNativeUtils-JuspayTechReactNativeHyperswitch.cmt +0 -0
  154. package/lib/bs/src/utils/ResponseHandler-JuspayTechReactNativeHyperswitch.cmt +0 -0
  155. package/lib/bs/src/views/CVCElement-JuspayTechReactNativeHyperswitch.cmt +0 -0
  156. package/lib/bs/src/views/NativePaymentWidget-JuspayTechReactNativeHyperswitch.cmt +0 -0
  157. package/lib/bs/src/views/NativePaymentWidgetImpl-JuspayTechReactNativeHyperswitch.cmt +0 -0
  158. package/lib/bs/src/views/PaymentElement-JuspayTechReactNativeHyperswitch.cmt +0 -0
  159. package/lib/commonjs/index.bundle.js +2 -0
  160. package/lib/commonjs/index.bundle.js.map +1 -0
  161. package/lib/module/index.bundle.js +2 -0
  162. package/lib/module/index.bundle.js.map +1 -0
  163. package/lib/typescript/babel.config.d.ts +10 -0
  164. package/lib/typescript/babel.config.d.ts.map +1 -0
  165. package/lib/typescript/eslint.config.d.mts +3 -0
  166. package/lib/typescript/eslint.config.d.mts.map +1 -0
  167. package/lib/typescript/rollup.config.d.ts +23 -0
  168. package/lib/typescript/rollup.config.d.ts.map +1 -0
  169. package/lib/typescript/scripts/bootstrap.d.ts +2 -0
  170. package/lib/typescript/scripts/bootstrap.d.ts.map +1 -0
  171. package/lib/typescript/src/context/Elements.d.ts +7 -0
  172. package/lib/typescript/src/context/Elements.d.ts.map +1 -0
  173. package/lib/typescript/src/context/HyperElements.d.ts +23 -0
  174. package/lib/typescript/src/context/HyperElements.d.ts.map +1 -0
  175. package/lib/typescript/src/context/PaymentSession.d.ts +15 -0
  176. package/lib/typescript/src/context/PaymentSession.d.ts.map +1 -0
  177. package/lib/typescript/src/context/SavedPaymentMethods.d.ts +5 -0
  178. package/lib/typescript/src/context/SavedPaymentMethods.d.ts.map +1 -0
  179. package/lib/typescript/src/context/WidgetRegistry.d.ts +8 -0
  180. package/lib/typescript/src/context/WidgetRegistry.d.ts.map +1 -0
  181. package/lib/typescript/src/context/hooks.d.ts +5 -0
  182. package/lib/typescript/src/context/hooks.d.ts.map +1 -0
  183. package/lib/typescript/src/index.d.ts +10 -0
  184. package/lib/typescript/src/index.d.ts.map +1 -0
  185. package/lib/typescript/src/modules/NativeHyperswitchSdk.d.ts +61 -0
  186. package/lib/typescript/src/modules/NativeHyperswitchSdk.d.ts.map +1 -0
  187. package/lib/typescript/src/specs/ApplePayViewNativeComponent.d.ts +10 -0
  188. package/lib/typescript/src/specs/ApplePayViewNativeComponent.d.ts.map +1 -0
  189. package/lib/typescript/src/specs/NativeHyperHeadless.d.ts +14 -0
  190. package/lib/typescript/src/specs/NativeHyperHeadless.d.ts.map +1 -0
  191. package/lib/typescript/src/specs/NativeHyperswitchModule.d.ts +32 -0
  192. package/lib/typescript/src/specs/NativeHyperswitchModule.d.ts.map +1 -0
  193. package/lib/typescript/src/specs/NativeHyperswitchSdkNative.d.ts +33 -0
  194. package/lib/typescript/src/specs/NativeHyperswitchSdkNative.d.ts.map +1 -0
  195. package/lib/typescript/src/specs/NativePaymentElementModule.d.ts +9 -0
  196. package/lib/typescript/src/specs/NativePaymentElementModule.d.ts.map +1 -0
  197. package/lib/typescript/src/specs/PaymentElementNativeComponent.d.ts +19 -0
  198. package/lib/typescript/src/specs/PaymentElementNativeComponent.d.ts.map +1 -0
  199. package/lib/typescript/src/specs/utils.d.ts +15 -0
  200. package/lib/typescript/src/specs/utils.d.ts.map +1 -0
  201. package/lib/typescript/src/types/NativeModuleTypes.d.ts +67 -0
  202. package/lib/typescript/src/types/NativeModuleTypes.d.ts.map +1 -0
  203. package/lib/typescript/src/types/PaymentSheetConfiguration.d.ts +255 -0
  204. package/lib/typescript/src/types/PaymentSheetConfiguration.d.ts.map +1 -0
  205. package/lib/typescript/src/types/definitions.d.ts +85 -0
  206. package/lib/typescript/src/types/definitions.d.ts.map +1 -0
  207. package/lib/typescript/src/types/elements/index.d.ts +23 -0
  208. package/lib/typescript/src/types/elements/index.d.ts.map +1 -0
  209. package/lib/typescript/src/types/paymentresult/index.d.ts +5 -0
  210. package/lib/typescript/src/types/paymentresult/index.d.ts.map +1 -0
  211. package/lib/typescript/src/types/savedPaymentMethods/index.d.ts +69 -0
  212. package/lib/typescript/src/types/savedPaymentMethods/index.d.ts.map +1 -0
  213. package/lib/typescript/src/utils/EventValidator.d.ts +9 -0
  214. package/lib/typescript/src/utils/EventValidator.d.ts.map +1 -0
  215. package/lib/typescript/src/utils/InitializationState.d.ts +13 -0
  216. package/lib/typescript/src/utils/InitializationState.d.ts.map +1 -0
  217. package/lib/typescript/src/utils/LaunchOptions.d.ts +7 -0
  218. package/lib/typescript/src/utils/LaunchOptions.d.ts.map +1 -0
  219. package/lib/typescript/src/utils/NewArchUtils.d.ts +7 -0
  220. package/lib/typescript/src/utils/NewArchUtils.d.ts.map +1 -0
  221. package/lib/typescript/src/utils/ReactNativeUtils.d.ts +3 -0
  222. package/lib/typescript/src/utils/ReactNativeUtils.d.ts.map +1 -0
  223. package/lib/typescript/src/views/CVCElement.d.ts +15 -0
  224. package/lib/typescript/src/views/CVCElement.d.ts.map +1 -0
  225. package/lib/typescript/src/views/NativePaymentWidget.d.ts +3 -0
  226. package/lib/typescript/src/views/NativePaymentWidget.d.ts.map +1 -0
  227. package/lib/typescript/src/views/NativePaymentWidgetImpl.d.ts +5 -0
  228. package/lib/typescript/src/views/NativePaymentWidgetImpl.d.ts.map +1 -0
  229. package/lib/typescript/src/views/PaymentElement.d.ts +18 -0
  230. package/lib/typescript/src/views/PaymentElement.d.ts.map +1 -0
  231. package/package.json +184 -0
  232. package/src/context/Elements.ts +80 -0
  233. package/src/context/HyperElements.tsx +81 -0
  234. package/src/context/PaymentSession.ts +121 -0
  235. package/src/context/SavedPaymentMethods.ts +80 -0
  236. package/src/context/WidgetRegistry.ts +74 -0
  237. package/src/context/hooks.ts +79 -0
  238. package/src/index.ts +53 -0
  239. package/src/modules/NativeHyperswitchSdk.ts +155 -0
  240. package/src/specs/ApplePayViewNativeComponent.ts +11 -0
  241. package/src/specs/NativeHyperHeadless.ts +22 -0
  242. package/src/specs/NativeHyperswitchModule.ts +51 -0
  243. package/src/specs/NativeHyperswitchSdkNative.ts +62 -0
  244. package/src/specs/NativePaymentElementModule.ts +25 -0
  245. package/src/specs/PaymentElementNativeComponent.ts +21 -0
  246. package/src/specs/utils.ts +15 -0
  247. package/src/types/NativeModuleTypes.ts +73 -0
  248. package/src/types/PaymentSheetConfiguration.ts +360 -0
  249. package/src/types/definitions.ts +109 -0
  250. package/src/types/elements/index.ts +33 -0
  251. package/src/types/paymentresult/index.ts +4 -0
  252. package/src/types/savedPaymentMethods/index.ts +74 -0
  253. package/src/utils/EventValidator.ts +39 -0
  254. package/src/utils/InitializationState.ts +28 -0
  255. package/src/utils/LaunchOptions.ts +41 -0
  256. package/src/utils/NewArchUtils.ts +18 -0
  257. package/src/utils/ReactNativeUtils.ts +13 -0
  258. package/src/views/CVCElement.tsx +122 -0
  259. package/src/views/NativePaymentWidget.ts +2 -0
  260. package/src/views/NativePaymentWidgetImpl.ts +16 -0
  261. package/src/views/PaymentElement.tsx +189 -0
  262. package/tsconfig.build.json +21 -0
@@ -0,0 +1,85 @@
1
+ import type { PaymentResult } from './paymentresult';
2
+ export interface OverrideEndpointConfiguration {
3
+ customBackendEndpoint?: string;
4
+ customLoggingEndpoint?: string;
5
+ customAssetEndpoint?: string;
6
+ customSDKConfigEndpoint?: string;
7
+ customAirborneEndpoint?: string;
8
+ }
9
+ export interface CommonEndpoint {
10
+ commonEndpoint: string;
11
+ }
12
+ export interface OverrideEndpoints {
13
+ overrideEndpoints: OverrideEndpointConfiguration;
14
+ }
15
+ export type HyperswitchEnvironment = 'PROD' | 'SANDBOX' | 'INTEG';
16
+ export type ElementType = 'paymentElement' | 'cvcWidget';
17
+ export interface HyperswitchConfiguration {
18
+ publishableKey: string;
19
+ platformPublishableKey?: string;
20
+ profileId?: string;
21
+ environment?: HyperswitchEnvironment;
22
+ customEndpoints?: CommonEndpoint | OverrideEndpoints;
23
+ }
24
+ export interface PaymentSessionConfiguration {
25
+ sdkAuthorization: string;
26
+ }
27
+ /**
28
+ * Full payload sent to the native SDK. It is assembled internally from the
29
+ * merchant-supplied configuration plus the SDK/payment-session metadata.
30
+ */
31
+ export interface NativePaymentSheetPayload {
32
+ hyperswitchConfig: Record<string, unknown>;
33
+ paymentSessionConfig: {
34
+ sdkAuthorization: string;
35
+ };
36
+ configuration: Record<string, unknown>;
37
+ }
38
+ import type { ComponentType } from 'react';
39
+ import { CustomerSavedPaymentMethodsSession } from './savedPaymentMethods';
40
+ import type { Elements } from './elements';
41
+ export interface PaymentSession {
42
+ presentPaymentSheet(configuration?: Record<string, unknown>): Promise<PaymentResult>;
43
+ getCustomerSavedPaymentMethods(options?: any): Promise<CustomerSavedPaymentMethodsSession>;
44
+ updateIntent(intentResolver: () => Promise<PaymentSessionConfiguration>): Promise<void>;
45
+ }
46
+ export interface PaymentElementHandle {
47
+ confirmPayment(options?: {
48
+ confirmParams?: Record<string, any>;
49
+ }): Promise<PaymentResult>;
50
+ collapse(): void;
51
+ focus(): void;
52
+ blur(): void;
53
+ clear(): void;
54
+ update(options: Record<string, any>): void;
55
+ destroy(): void;
56
+ }
57
+ export interface PaymentElement extends PaymentElementHandle {
58
+ Component?: ComponentType<any>;
59
+ mount(selector: string): void;
60
+ unmount(): void;
61
+ on(event: string, handler?: (data?: any) => void): {
62
+ remove: () => void;
63
+ };
64
+ onPaymentResult(handler?: (data: PaymentResult) => void): {
65
+ remove: () => void;
66
+ };
67
+ onPaymentConfirmButtonClick(handler?: (data: any) => boolean): {
68
+ remove: () => void;
69
+ };
70
+ }
71
+ export interface CvcWidget {
72
+ Component?: ComponentType<any>;
73
+ mount(selector: string, options?: Record<string, any>): void;
74
+ unmount(): void;
75
+ destroy(): void;
76
+ on(event: string, handler?: (data?: any) => void): {
77
+ remove: () => void;
78
+ } | null;
79
+ }
80
+ export interface HyperswitchSession {
81
+ publishableKey: string;
82
+ elements(options: PaymentSessionConfiguration): Promise<Elements>;
83
+ initPaymentSession(options: PaymentSessionConfiguration): Promise<PaymentSession>;
84
+ }
85
+ //# sourceMappingURL=definitions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../../../src/types/definitions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import { PaymentResult } from "../paymentresult";
2
+ import type { PaymentElementHandle, PaymentSessionConfiguration } from "../definitions";
3
+ import { CustomerSavedPaymentMethodsSession } from "../savedPaymentMethods";
4
+ export interface Elements {
5
+ confirmPayment(paymentElementRef: {
6
+ current: PaymentElementHandle | null;
7
+ } | string, options?: {
8
+ confirmParams?: Record<string, any>;
9
+ }): Promise<PaymentResult>;
10
+ presentPaymentSheet(configuration?: Record<string, unknown>): Promise<PaymentResult>;
11
+ updateIntent(intentResolver: () => Promise<PaymentSessionConfiguration>): Promise<void>;
12
+ getCustomerSavedPaymentMethods(options?: any): Promise<CustomerSavedPaymentMethodsSession>;
13
+ }
14
+ export interface ElementsActions {
15
+ confirmPayment: (paymentElementRef: {
16
+ current: PaymentElementHandle | null;
17
+ } | string, options?: {
18
+ confirmParams?: Record<string, any>;
19
+ }) => Promise<PaymentResult>;
20
+ updateIntent: (intentResolver: () => Promise<PaymentSessionConfiguration>) => Promise<void>;
21
+ getCustomerSavedPaymentMethods(): Promise<CustomerSavedPaymentMethodsSession>;
22
+ }
23
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/types/elements/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EACV,oBAAoB,EACpB,2BAA2B,EAC5B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,kCAAkC,EAAE,MAAM,wBAAwB,CAAC;AAE5E,MAAM,WAAW,QAAQ;IACvB,cAAc,CACZ,iBAAiB,EAAE;QAAE,OAAO,EAAE,oBAAoB,GAAG,IAAI,CAAA;KAAE,GAAG,MAAM,EACpE,OAAO,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAAE,GAChD,OAAO,CAAC,aAAa,CAAC,CAAC;IAC1B,mBAAmB,CACjB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACtC,OAAO,CAAC,aAAa,CAAC,CAAC;IAC1B,YAAY,CACV,cAAc,EAAE,MAAM,OAAO,CAAC,2BAA2B,CAAC,GACzD,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,8BAA8B,CAC5B,OAAO,CAAC,EAAE,GAAG,GACZ,OAAO,CAAC,kCAAkC,CAAC,CAAC;CAChD;AAED,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,CACd,iBAAiB,EAAE;QAAE,OAAO,EAAE,oBAAoB,GAAG,IAAI,CAAA;KAAE,GAAG,MAAM,EACpE,OAAO,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAAE,KAC9C,OAAO,CAAC,aAAa,CAAC,CAAC;IAC5B,YAAY,EAAE,CACZ,cAAc,EAAE,MAAM,OAAO,CAAC,2BAA2B,CAAC,KACvD,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,8BAA8B,IAAI,OAAO,CAAC,kCAAkC,CAAC,CAAC;CAC/E"}
@@ -0,0 +1,5 @@
1
+ export interface PaymentResult {
2
+ type: 'completed' | 'canceled' | 'failed';
3
+ message?: string;
4
+ }
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/types/paymentresult/index.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,WAAW,GAAG,UAAU,GAAG,QAAQ,CAAC;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
@@ -0,0 +1,69 @@
1
+ import type { PaymentResult } from '../paymentresult';
2
+ export interface SavedPaymentMethodsConfiguration {
3
+ hiddenPaymentMethods?: string[];
4
+ }
5
+ export interface CustomerLastUsedPaymentMethodCard {
6
+ scheme: string;
7
+ issuer_country: string;
8
+ last4_digits: string;
9
+ expiry_month: string;
10
+ expiry_year: string;
11
+ card_token: string | null;
12
+ card_holder_name: string;
13
+ card_fingerprint: string | null;
14
+ nick_name: string;
15
+ card_network: string;
16
+ card_isin: string;
17
+ card_issuer: string;
18
+ card_type: string;
19
+ saved_to_locker: boolean;
20
+ }
21
+ export interface CustomerPaymentMethodBillingAddress {
22
+ line1?: string;
23
+ line2?: string;
24
+ line3?: string;
25
+ city?: string;
26
+ state?: string;
27
+ country?: string;
28
+ first_name?: string;
29
+ last_name?: string;
30
+ }
31
+ export interface CustomerPaymentMethodBilling {
32
+ address?: CustomerPaymentMethodBillingAddress;
33
+ phone?: Record<string, unknown>;
34
+ email?: string;
35
+ }
36
+ export interface CustomerLastUsedPaymentMethod {
37
+ payment_token: string;
38
+ payment_method_id: string;
39
+ customer_id: string;
40
+ payment_method: string;
41
+ payment_method_type: string;
42
+ payment_method_issuer: string;
43
+ payment_method_issuer_code: string | null;
44
+ recurring_enabled: boolean;
45
+ installment_payment_enabled: boolean;
46
+ payment_experience: string[];
47
+ card: CustomerLastUsedPaymentMethodCard | null;
48
+ metadata: string | null;
49
+ created: string;
50
+ bank: string | null;
51
+ surcharge_details: string | null;
52
+ requires_cvv: boolean;
53
+ last_used_at: string;
54
+ default_payment_method_set: boolean;
55
+ billing: CustomerPaymentMethodBilling | null;
56
+ error?: any;
57
+ }
58
+ export interface CustomerSavedPaymentMethodsSession {
59
+ getCustomerLastUsedPaymentMethodData(): Promise<CustomerLastUsedPaymentMethod | null>;
60
+ getCustomerDefaultSavedPaymentMethodData(): Promise<CustomerLastUsedPaymentMethod | null>;
61
+ getCustomerSavedPaymentMethodData(): Promise<CustomerLastUsedPaymentMethod | null>;
62
+ confirmWithCustomerLastUsedPaymentMethod(args?: {
63
+ id?: string;
64
+ }): Promise<PaymentResult>;
65
+ confirmWithCustomerDefaultPaymentMethod?(args?: {
66
+ id?: string;
67
+ }): Promise<PaymentResult>;
68
+ }
69
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/types/savedPaymentMethods/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,MAAM,WAAW,gCAAgC;IAC7C,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,iCAAiC;IAChD,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,mCAAmC;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,4BAA4B;IAC3C,OAAO,CAAC,EAAE,mCAAmC,CAAC;IAC9C,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,6BAA6B;IAC5C,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,0BAA0B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,iBAAiB,EAAE,OAAO,CAAC;IAC3B,2BAA2B,EAAE,OAAO,CAAC;IACrC,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,IAAI,EAAE,iCAAiC,GAAG,IAAI,CAAC;IAC/C,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,0BAA0B,EAAE,OAAO,CAAC;IACpC,OAAO,EAAE,4BAA4B,GAAG,IAAI,CAAC;IAC7C,KAAK,CAAC,EAAE,GAAG,CAAC;CACb;AAED,MAAM,WAAW,kCAAkC;IACjD,oCAAoC,IAAI,OAAO,CAAC,6BAA6B,GAAG,IAAI,CAAC,CAAC;IACtF,wCAAwC,IAAI,OAAO,CAAC,6BAA6B,GAAG,IAAI,CAAC,CAAC;IAC1F,iCAAiC,IAAI,OAAO,CAAC,6BAA6B,GAAG,IAAI,CAAC,CAAC;IACnF,wCAAwC,CAAC,IAAI,CAAC,EAAE;QAC9C,EAAE,CAAC,EAAE,MAAM,CAAC;KACb,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAC3B,uCAAuC,CAAC,CAAC,IAAI,CAAC,EAAE;QAC9C,EAAE,CAAC,EAAE,MAAM,CAAC;KACb,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;CAC5B"}
@@ -0,0 +1,9 @@
1
+ export declare function getValidEventsString(): string;
2
+ export declare function validateSubscribedEventStrings(subscribedEvents: string[] | undefined): string[];
3
+ export type UnknownEventWarningPayload = {
4
+ message: string;
5
+ invalidEvents: string[];
6
+ validEvents: string[];
7
+ };
8
+ export declare function makeUnknownEventWarningPayload(invalidEvents: string[]): UnknownEventWarningPayload;
9
+ //# sourceMappingURL=EventValidator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventValidator.d.ts","sourceRoot":"","sources":["../../../../src/utils/EventValidator.ts"],"names":[],"mappings":"AASA,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED,wBAAgB,8BAA8B,CAC5C,gBAAgB,EAAE,MAAM,EAAE,GAAG,SAAS,GACrC,MAAM,EAAE,CAKV;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAEF,wBAAgB,8BAA8B,CAC5C,aAAa,EAAE,MAAM,EAAE,GACtB,0BAA0B,CAQ5B"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Tracks whether the Hyperswitch SDK is currently initialising (or re-initialising
3
+ * after a reload). presentPaymentSheet should be blocked while this flag is true
4
+ * so the native SDK is not asked to open a sheet before it is ready.
5
+ *
6
+ * Also tracks whether a payment sheet is currently presented so that a hot-reload
7
+ * (or any other code path) cannot stack a second sheet on top of an open one.
8
+ */
9
+ export declare function setInitializing(value: boolean): void;
10
+ export declare function isInitializing(): boolean;
11
+ export declare function setSheetPresented(value: boolean): void;
12
+ export declare function isSheetPresented(): boolean;
13
+ //# sourceMappingURL=InitializationState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InitializationState.d.ts","sourceRoot":"","sources":["../../../../src/utils/InitializationState.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAEpD;AAED,wBAAgB,cAAc,IAAI,OAAO,CAExC;AAID,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAEtD;AAED,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C"}
@@ -0,0 +1,7 @@
1
+ import type { HyperswitchConfiguration, NativePaymentSheetPayload } from '../types/definitions';
2
+ import type { PaymentSessionConfiguration } from '../types/definitions';
3
+ import { PaymentResult } from '../types/paymentresult';
4
+ declare function buildPresentPaymentSheetPayload(hyperswitchConfig: HyperswitchConfiguration, paymentSessionConfig: PaymentSessionConfiguration, configuration?: Record<string, unknown>): NativePaymentSheetPayload;
5
+ declare function mapStatus(status: string): PaymentResult['type'];
6
+ export { buildPresentPaymentSheetPayload, mapStatus };
7
+ //# sourceMappingURL=LaunchOptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LaunchOptions.d.ts","sourceRoot":"","sources":["../../../../src/utils/LaunchOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,yBAAyB,EAC1B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,iBAAS,+BAA+B,CACtC,iBAAiB,EAAE,wBAAwB,EAC3C,oBAAoB,EAAE,2BAA2B,EACjD,aAAa,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAC1C,yBAAyB,CAW3B;AAED,iBAAS,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,CAcxD;AAED,OAAO,EAAE,+BAA+B,EAAE,SAAS,EAAE,CAAC"}
@@ -0,0 +1,7 @@
1
+ declare global {
2
+ var __turboModuleProxy: unknown | undefined;
3
+ var nativeFabricUIManager: unknown | undefined;
4
+ }
5
+ export declare function isTurboModuleEnabled(): boolean;
6
+ export declare function isFabricEnabled(): boolean;
7
+ //# sourceMappingURL=NewArchUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NewArchUtils.d.ts","sourceRoot":"","sources":["../../../../src/utils/NewArchUtils.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,CAAC;IACb,IAAI,kBAAkB,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5C,IAAI,qBAAqB,EAAE,OAAO,GAAG,SAAS,CAAC;CAChD;AAED,wBAAgB,oBAAoB,IAAI,OAAO,CAK9C;AAED,wBAAgB,eAAe,IAAI,OAAO,CAKzC"}
@@ -0,0 +1,3 @@
1
+ export declare function dispatchViewManagerCommand(viewId: number, commandId: number, commandArgs: number[]): void;
2
+ export declare function getFindNodeHandle(ref: unknown): number;
3
+ //# sourceMappingURL=ReactNativeUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReactNativeUtils.d.ts","sourceRoot":"","sources":["../../../../src/utils/ReactNativeUtils.ts"],"names":[],"mappings":"AAEA,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EAAE,GACpB,IAAI,CAEN;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAEtD"}
@@ -0,0 +1,15 @@
1
+ import type { ViewStyle } from 'react-native';
2
+ import type { paymentEventResult, paymentResult } from '../types/NativeModuleTypes';
3
+ import type { PaymentSheetConfiguration } from '../types/PaymentSheetConfiguration';
4
+ type CVCElementProps = {
5
+ id?: string;
6
+ options?: PaymentSheetConfiguration;
7
+ onChange?: (event: paymentEventResult) => void;
8
+ onFocus?: () => void;
9
+ onBlur?: () => void;
10
+ onPaymentResult?: (result: paymentResult) => void;
11
+ style?: ViewStyle;
12
+ };
13
+ export declare const CVCElementView: import("react").ForwardRefExoticComponent<CVCElementProps & import("react").RefAttributes<unknown>>;
14
+ export {};
15
+ //# sourceMappingURL=CVCElement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CVCElement.d.ts","sourceRoot":"","sources":["../../../../src/views/CVCElement.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,KAAK,EACV,kBAAkB,EAClB,aAAa,EAEd,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAGpF,KAAK,eAAe,GAAG;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,yBAAyB,CAAC;IACpC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC/C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;IAClD,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAMF,eAAO,MAAM,cAAc,qGA+F1B,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { default as make } from './NativePaymentWidgetImpl';
2
+ export type { nativePaymentWidgetType as props } from '../types/NativeModuleTypes';
3
+ //# sourceMappingURL=NativePaymentWidget.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativePaymentWidget.d.ts","sourceRoot":"","sources":["../../../../src/views/NativePaymentWidget.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAC5D,YAAY,EAAE,uBAAuB,IAAI,KAAK,EAAE,MAAM,4BAA4B,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { nativePaymentWidgetType } from '../types/NativeModuleTypes';
2
+ type NativePaymentWidgetComponent = React.ComponentType<nativePaymentWidgetType>;
3
+ declare const NativePaymentWidgetImpl: NativePaymentWidgetComponent;
4
+ export default NativePaymentWidgetImpl;
5
+ //# sourceMappingURL=NativePaymentWidgetImpl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativePaymentWidgetImpl.d.ts","sourceRoot":"","sources":["../../../../src/views/NativePaymentWidgetImpl.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAE1E,KAAK,4BAA4B,GAC/B,KAAK,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC;AAE/C,QAAA,MAAM,uBAAuB,EAAE,4BAMS,CAAC;AAEzC,eAAe,uBAAuB,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { ViewStyle } from 'react-native';
2
+ import type { paymentResult } from '../modules/NativeHyperswitchSdk';
3
+ import type { PaymentSheetConfiguration } from '../types/PaymentSheetConfiguration';
4
+ import type { paymentEventResult } from '../types/NativeModuleTypes';
5
+ type PaymentWidgetRef = {
6
+ confirmPayment: () => Promise<paymentResult>;
7
+ };
8
+ type PaymentElementProps = {
9
+ widgetId: string;
10
+ options?: PaymentSheetConfiguration;
11
+ onPaymentResult: (result: paymentResult) => void;
12
+ onChange?: (event: paymentEventResult) => void;
13
+ onReady?: (event: string) => void;
14
+ style?: ViewStyle;
15
+ };
16
+ export declare const PaymentElementView: import("react").ForwardRefExoticComponent<PaymentElementProps & import("react").RefAttributes<PaymentWidgetRef>>;
17
+ export {};
18
+ //# sourceMappingURL=PaymentElement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PaymentElement.d.ts","sourceRoot":"","sources":["../../../../src/views/PaymentElement.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAI9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AASpF,OAAO,KAAK,EACV,kBAAkB,EAGnB,MAAM,4BAA4B,CAAC;AAMpC,KAAK,gBAAgB,GAAG;IACtB,cAAc,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;CAC9C,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,yBAAyB,CAAC;IACpC,eAAe,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;IAEjD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC/C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,kBAAkB,kHA+I7B,CAAC"}
package/package.json ADDED
@@ -0,0 +1,184 @@
1
+ {
2
+ "name": "react-native-hyperswitch-dev-sdk",
3
+ "version": "0.4.1",
4
+ "description": "Hyperswitch SDK for React Native",
5
+ "main": "lib/commonjs/index.bundle.js",
6
+ "module": "lib/module/index.bundle.js",
7
+ "types": "lib/typescript/src/index.d.ts",
8
+ "react-native": "src/index.ts",
9
+ "source": "src/index.ts",
10
+ "exports": {
11
+ ".": {
12
+ "source": "./src/index.ts",
13
+ "import": {
14
+ "types": "./lib/typescript/src/index.d.ts",
15
+ "default": "./lib/module/index.bundle.js"
16
+ },
17
+ "require": {
18
+ "types": "./lib/typescript/src/index.d.ts",
19
+ "default": "./lib/commonjs/index.bundle.js"
20
+ },
21
+ "default": "./lib/module/index.bundle.js"
22
+ },
23
+ "./package.json": "./package.json"
24
+ },
25
+ "files": [
26
+ "src",
27
+ "lib",
28
+ "android",
29
+ "ios",
30
+ "cpp",
31
+ "*.podspec",
32
+ "react-native.config.js",
33
+ "!ios/build",
34
+ "!android/build",
35
+ "!android/gradle",
36
+ "!android/gradlew",
37
+ "!android/gradlew.bat",
38
+ "!android/local.properties",
39
+ "!**/__tests__",
40
+ "!**/__fixtures__",
41
+ "!**/__mocks__",
42
+ "!**/.*",
43
+ "tsconfig.build.json",
44
+ "scripts/rewrite-imports.js"
45
+ ],
46
+ "scripts": {
47
+ "example": "yarn workspace @juspay-tech/react-native-hyperswitch-example",
48
+ "test": "jest",
49
+ "typecheck": "tsc",
50
+ "lint": "eslint \"**/*.{tsx,res}\"",
51
+ "clean": "del-cli android/build example/android/build example/android/app/build example/ios/build lib",
52
+ "prepare": "rollup -c",
53
+ "release": "release-it --only-version"
54
+ },
55
+ "keywords": [
56
+ "react-native",
57
+ "ios",
58
+ "android"
59
+ ],
60
+ "repository": {
61
+ "type": "git",
62
+ "url": "https://github.com/manideepk90/react-native-hyperswitch-sdk",
63
+ "directory": "packages/react-native-hyperswitch"
64
+ },
65
+ "author": "Hyperswitch",
66
+ "license": "Apache-2.0",
67
+ "bugs": {
68
+ "url": "https://github.com/manideepk90/react-native-hyperswitch-sdk"
69
+ },
70
+ "homepage": "https://hyperswitch.io",
71
+ "publishConfig": {
72
+ "access": "public"
73
+ },
74
+ "workspaces": [
75
+ "../../../example"
76
+ ],
77
+ "devDependencies": {
78
+ "@babel/runtime": "^7.25.0",
79
+ "@commitlint/config-conventional": "^19.6.0",
80
+ "@eslint/compat": "^1.2.7",
81
+ "@eslint/eslintrc": "^3.3.0",
82
+ "@eslint/js": "^9.22.0",
83
+ "@evilmartians/lefthook": "^1.5.0",
84
+ "@react-native-community/cli": "15.0.0-alpha.2",
85
+ "@react-native/babel-preset": "0.79.2",
86
+ "@react-native/eslint-config": "^0.78.0",
87
+ "@release-it/conventional-changelog": "^10.0.1",
88
+ "@rollup/plugin-commonjs": "^29.0.0",
89
+ "@rollup/plugin-node-resolve": "^16.0.3",
90
+ "@rollup/plugin-typescript": "^12.3.0",
91
+ "@types/jest": "^30.0.0",
92
+ "@types/react": "^18.2.6",
93
+ "commitlint": "^19.6.1",
94
+ "del-cli": "^5.1.0",
95
+ "eslint": "^9.22.0",
96
+ "eslint-config-prettier": "^10.1.1",
97
+ "eslint-plugin-prettier": "^5.2.3",
98
+ "jest": "^29.7.0",
99
+ "prettier": "^3.0.3",
100
+ "react-native-builder-bob": "^0.40.8",
101
+ "release-it": "^19.0.5",
102
+ "rollup": "^4.52.5",
103
+ "rollup-plugin-terser": "^7.0.2",
104
+ "turbo": "^1.10.7",
105
+ "typescript": "^5.9.2"
106
+ },
107
+ "peerDependencies": {
108
+ "@sentry/react-native": "*",
109
+ "react": "*",
110
+ "react-native": "*",
111
+ "react-native-inappbrowser-reborn": "*",
112
+ "react-native-svg": "*",
113
+ "react-native-webview": "*"
114
+ },
115
+ "jest": {
116
+ "preset": "react-native",
117
+ "modulePathIgnorePatterns": [
118
+ "<rootDir>/example/node_modules",
119
+ "<rootDir>/lib/"
120
+ ]
121
+ },
122
+ "commitlint": {
123
+ "extends": [
124
+ "@commitlint/config-conventional"
125
+ ]
126
+ },
127
+ "release-it": {
128
+ "git": {
129
+ "commitMessage": "chore: release ${version}",
130
+ "tagName": "v${version}"
131
+ },
132
+ "npm": {
133
+ "publish": true
134
+ },
135
+ "github": {
136
+ "release": true
137
+ },
138
+ "plugins": {
139
+ "@release-it/conventional-changelog": {
140
+ "preset": {
141
+ "name": "angular"
142
+ }
143
+ }
144
+ }
145
+ },
146
+ "prettier": {
147
+ "quoteProps": "consistent",
148
+ "singleQuote": true,
149
+ "tabWidth": 2,
150
+ "trailingComma": "es5",
151
+ "useTabs": false
152
+ },
153
+ "react-native-builder-bob": {
154
+ "source": "src",
155
+ "output": "lib",
156
+ "targets": [
157
+ [
158
+ "typescript",
159
+ {
160
+ "project": "tsconfig.build.json"
161
+ }
162
+ ]
163
+ ]
164
+ },
165
+ "codegenConfig": {
166
+ "name": "HyperswitchSdkReactNativeSpec",
167
+ "type": "all",
168
+ "jsSrcsDir": "src/specs",
169
+ "android": {
170
+ "javaPackageName": "com.hyperswitchsdkreactnative"
171
+ },
172
+ "ios": {
173
+ "componentProvider": {
174
+ "ApplePayView": "ApplePayView"
175
+ }
176
+ }
177
+ },
178
+ "create-react-native-library": {
179
+ "languages": "kotlin-objc",
180
+ "type": "all",
181
+ "version": "0.52.1"
182
+ },
183
+ "gitHead": "e33eb2c28b4968ace6675697a35bb3d098d91e23"
184
+ }
@@ -0,0 +1,80 @@
1
+ import type {
2
+ HyperswitchConfiguration,
3
+ PaymentElementHandle,
4
+ PaymentSessionConfiguration,
5
+ } from '../types/definitions';
6
+ import { buildPresentPaymentSheetPayload } from '../utils/LaunchOptions';
7
+ import {
8
+ presentPaymentSheetWithPayload,
9
+ updateIntent,
10
+ } from '../context/PaymentSession';
11
+ import type { PaymentResult } from '../types/paymentresult';
12
+ import type { CustomerSavedPaymentMethodsSession } from '../types/savedPaymentMethods';
13
+
14
+ import { getCustomerSavedPaymentMethods } from './SavedPaymentMethods';
15
+ import { Elements } from '../types/elements';
16
+
17
+ type ElementsNativeActions = Pick<
18
+ Elements,
19
+ | 'confirmPayment'
20
+ | 'presentPaymentSheet'
21
+ | 'getCustomerSavedPaymentMethods'
22
+ | 'updateIntent'
23
+ >;
24
+
25
+ export function createElementsNativeActions(
26
+ hyperswitchConfig: HyperswitchConfiguration,
27
+ paymentSessionConfig: PaymentSessionConfiguration
28
+ ): ElementsNativeActions {
29
+ return {
30
+ async presentPaymentSheet(
31
+ configuration?: Record<string, unknown>
32
+ ): Promise<PaymentResult> {
33
+ const payload = buildPresentPaymentSheetPayload(
34
+ hyperswitchConfig,
35
+ paymentSessionConfig,
36
+ configuration
37
+ );
38
+ return presentPaymentSheetWithPayload(payload);
39
+ },
40
+
41
+ async confirmPayment(
42
+ paymentElementRef: { current: PaymentElementHandle | null } | string,
43
+ _confirmOptions?: { confirmParams?: Record<string, any> }
44
+ ): Promise<any> {
45
+ // if (typeof paymentElementRef === 'string') {
46
+ // const result = await widgetConfirm(paymentElementRef);
47
+ // return {
48
+ // type: mapStatus(result.status),
49
+ // message: result.message,
50
+ // };
51
+ // }
52
+ // const ref = paymentElementRef.current;
53
+ // if (!ref) {
54
+ // throw new Error('PaymentElement reference is not mounted');
55
+ // }
56
+ // return ref.confirmPayment(_confirmOptions);
57
+ },
58
+
59
+ async getCustomerSavedPaymentMethods(
60
+ configuration?: Record<string, unknown>
61
+ ): Promise<CustomerSavedPaymentMethodsSession> {
62
+ return getCustomerSavedPaymentMethods(
63
+ hyperswitchConfig,
64
+ paymentSessionConfig,
65
+ configuration
66
+ );
67
+ },
68
+
69
+ updateIntent: updateIntent,
70
+ };
71
+ }
72
+
73
+ export function createElements(
74
+ hyperswitchConfig: HyperswitchConfiguration,
75
+ paymentSessionConfig: PaymentSessionConfiguration
76
+ ): Elements {
77
+ return {
78
+ ...createElementsNativeActions(hyperswitchConfig, paymentSessionConfig),
79
+ };
80
+ }