nimbbl-mobile-react-native-sdk 1.1.1 → 1.3.0

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 (179) hide show
  1. package/README.md +161 -170
  2. package/android/build.gradle +4 -4
  3. package/android/src/main/AndroidManifest.xml +0 -4
  4. package/android/src/main/java/com/nimbbl/reactnative/NimbblCheckoutActivity.kt +52 -117
  5. package/android/src/main/java/com/nimbbl/reactnative/NimbblReactNativeSDKModule.kt +283 -187
  6. package/ios/NimbblReactNativeSDK.m +6 -2
  7. package/ios/NimbblReactNativeSDK.podspec +1 -1
  8. package/ios/NimbblReactNativeSDK.swift +23 -53
  9. package/lib/NimbblSDK.d.ts +5 -57
  10. package/lib/NimbblSDK.js +36 -151
  11. package/lib/constants.d.ts +2 -16
  12. package/lib/constants.js +3 -20
  13. package/lib/index.d.ts +3 -3
  14. package/lib/index.js +2 -5
  15. package/lib/types.d.ts +18 -84
  16. package/lib/types.js +1 -1
  17. package/nimbbl-mobile-react-native-sdk.podspec +1 -1
  18. package/package.json +23 -4
  19. package/android/build/.transforms/2a0cc55152835fcf4fba7a298d35d4c4/results.bin +0 -1
  20. package/android/build/.transforms/2a0cc55152835fcf4fba7a298d35d4c4/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/nimbbl/reactnative/BuildConfig.dex +0 -0
  21. package/android/build/.transforms/2a0cc55152835fcf4fba7a298d35d4c4/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/nimbbl/reactnative/NimbblCheckoutActivity$Companion.dex +0 -0
  22. package/android/build/.transforms/2a0cc55152835fcf4fba7a298d35d4c4/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/nimbbl/reactnative/NimbblCheckoutActivity.dex +0 -0
  23. package/android/build/.transforms/2a0cc55152835fcf4fba7a298d35d4c4/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/nimbbl/reactnative/NimbblReactNativeSDKModule$Companion.dex +0 -0
  24. package/android/build/.transforms/2a0cc55152835fcf4fba7a298d35d4c4/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/nimbbl/reactnative/NimbblReactNativeSDKModule$createShopOrder$orderResult$1.dex +0 -0
  25. package/android/build/.transforms/2a0cc55152835fcf4fba7a298d35d4c4/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/nimbbl/reactnative/NimbblReactNativeSDKModule.dex +0 -0
  26. package/android/build/.transforms/2a0cc55152835fcf4fba7a298d35d4c4/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/nimbbl/reactnative/NimbblReactNativeSDKPackage.dex +0 -0
  27. package/android/build/.transforms/2a0cc55152835fcf4fba7a298d35d4c4/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/nimbbl/reactnative/TestActivity$Companion.dex +0 -0
  28. package/android/build/.transforms/2a0cc55152835fcf4fba7a298d35d4c4/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/nimbbl/reactnative/TestActivity.dex +0 -0
  29. package/android/build/.transforms/2a0cc55152835fcf4fba7a298d35d4c4/transformed/bundleLibRuntimeToDirDebug/desugar_graph.bin +0 -0
  30. package/android/build/.transforms/b59c320b706dec67ea6e4de5e98939af/results.bin +0 -1
  31. package/android/build/.transforms/b59c320b706dec67ea6e4de5e98939af/transformed/classes/classes_dex/classes.dex +0 -0
  32. package/android/build/generated/source/buildConfig/debug/com/nimbbl/reactnative/BuildConfig.java +0 -10
  33. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +0 -23
  34. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output-metadata.json +0 -18
  35. package/android/build/intermediates/aar_metadata/debug/writeDebugAarMetadata/aar-metadata.properties +0 -6
  36. package/android/build/intermediates/annotation_processor_list/debug/javaPreCompileDebug/annotationProcessors.json +0 -1
  37. package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  38. package/android/build/intermediates/compile_r_class_jar/debug/generateDebugRFile/R.jar +0 -0
  39. package/android/build/intermediates/compile_symbol_list/debug/generateDebugRFile/R.txt +0 -0
  40. package/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +0 -1
  41. package/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +0 -2
  42. package/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +0 -2
  43. package/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +0 -2
  44. package/android/build/intermediates/incremental/packageDebugAssets/merger.xml +0 -2
  45. package/android/build/intermediates/java_res/debug/processDebugJavaRes/out/META-INF/nimbbl-mobile-react-native-sdk_debug.kotlin_module +0 -0
  46. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/nimbbl/reactnative/BuildConfig.class +0 -0
  47. package/android/build/intermediates/local_only_symbol_list/debug/parseDebugLocalResources/R-def.txt +0 -2
  48. package/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +0 -36
  49. package/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +0 -23
  50. package/android/build/intermediates/navigation_json/debug/extractDeepLinksDebug/navigation.json +0 -1
  51. package/android/build/intermediates/nested_resources_validation_report/debug/generateDebugResources/nestedResourcesValidationReport.txt +0 -1
  52. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/META-INF/nimbbl-mobile-react-native-sdk_debug.kotlin_module +0 -0
  53. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/nimbbl/reactnative/BuildConfig.class +0 -0
  54. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/nimbbl/reactnative/NimbblCheckoutActivity$Companion.class +0 -0
  55. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/nimbbl/reactnative/NimbblCheckoutActivity.class +0 -0
  56. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/nimbbl/reactnative/NimbblReactNativeSDKModule$Companion.class +0 -0
  57. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/nimbbl/reactnative/NimbblReactNativeSDKModule$createShopOrder$orderResult$1.class +0 -0
  58. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/nimbbl/reactnative/NimbblReactNativeSDKModule.class +0 -0
  59. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/nimbbl/reactnative/NimbblReactNativeSDKPackage.class +0 -0
  60. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/nimbbl/reactnative/TestActivity$Companion.class +0 -0
  61. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/nimbbl/reactnative/TestActivity.class +0 -0
  62. package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  63. package/android/build/intermediates/symbol_list_with_package_name/debug/generateDebugRFile/package-aware-r.txt +0 -1
  64. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab +0 -0
  65. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream +0 -0
  66. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len +0 -0
  67. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.len +0 -0
  68. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at +0 -0
  69. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i +0 -0
  70. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i.len +0 -0
  71. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab +0 -0
  72. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream +0 -0
  73. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len +0 -0
  74. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.len +0 -0
  75. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at +0 -0
  76. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i +0 -0
  77. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i.len +0 -0
  78. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab +0 -0
  79. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream +0 -0
  80. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len +0 -0
  81. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len +0 -0
  82. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at +0 -0
  83. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i +0 -0
  84. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len +0 -0
  85. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab +0 -0
  86. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream +0 -0
  87. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream.len +0 -0
  88. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.len +0 -0
  89. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.values.at +0 -0
  90. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i +0 -0
  91. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i.len +0 -0
  92. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab +0 -0
  93. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream +0 -0
  94. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len +0 -0
  95. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len +0 -0
  96. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at +0 -0
  97. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i +0 -0
  98. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i.len +0 -0
  99. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab +0 -0
  100. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream +0 -0
  101. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream.len +0 -0
  102. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.len +0 -0
  103. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.at +0 -0
  104. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i +0 -0
  105. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i.len +0 -0
  106. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab +0 -0
  107. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream +0 -0
  108. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len +0 -0
  109. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.len +0 -0
  110. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at +0 -0
  111. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i +0 -0
  112. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i.len +0 -0
  113. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab +0 -0
  114. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream +0 -0
  115. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream.len +0 -0
  116. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.len +0 -0
  117. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.values.at +0 -0
  118. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i +0 -0
  119. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i.len +0 -0
  120. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab +0 -0
  121. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream +0 -0
  122. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream.len +0 -0
  123. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.len +0 -0
  124. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.values.at +0 -0
  125. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i +0 -0
  126. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i.len +0 -0
  127. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/counters.tab +0 -2
  128. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab +0 -0
  129. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream +0 -0
  130. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream.len +0 -0
  131. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.len +0 -0
  132. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.values.at +0 -0
  133. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i +0 -0
  134. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i.len +0 -0
  135. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab +0 -0
  136. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream +0 -0
  137. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream.len +0 -0
  138. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.len +0 -0
  139. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.values.at +0 -0
  140. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i +0 -0
  141. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i.len +0 -0
  142. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab +0 -0
  143. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream +0 -0
  144. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream.len +0 -0
  145. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.len +0 -0
  146. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.at +0 -0
  147. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i +0 -0
  148. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i.len +0 -0
  149. package/android/build/kotlin/compileDebugKotlin/cacheable/last-build.bin +0 -0
  150. package/android/build/kotlin/compileDebugKotlin/classpath-snapshot/shrunk-classpath-snapshot.bin +0 -0
  151. package/android/build/kotlin/compileDebugKotlin/local-state/build-history.bin +0 -0
  152. package/android/build/outputs/logs/manifest-merger-debug-report.txt +0 -42
  153. package/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
  154. package/android/build/tmp/kotlin-classes/debug/META-INF/nimbbl-mobile-react-native-sdk_debug.kotlin_module +0 -0
  155. package/android/build/tmp/kotlin-classes/debug/com/nimbbl/reactnative/NimbblCheckoutActivity$Companion.class +0 -0
  156. package/android/build/tmp/kotlin-classes/debug/com/nimbbl/reactnative/NimbblCheckoutActivity.class +0 -0
  157. package/android/build/tmp/kotlin-classes/debug/com/nimbbl/reactnative/NimbblReactNativeSDKModule$Companion.class +0 -0
  158. package/android/build/tmp/kotlin-classes/debug/com/nimbbl/reactnative/NimbblReactNativeSDKModule$createShopOrder$orderResult$1.class +0 -0
  159. package/android/build/tmp/kotlin-classes/debug/com/nimbbl/reactnative/NimbblReactNativeSDKModule.class +0 -0
  160. package/android/build/tmp/kotlin-classes/debug/com/nimbbl/reactnative/NimbblReactNativeSDKPackage.class +0 -0
  161. package/android/build/tmp/kotlin-classes/debug/com/nimbbl/reactnative/TestActivity$Companion.class +0 -0
  162. package/android/build/tmp/kotlin-classes/debug/com/nimbbl/reactnative/TestActivity.class +0 -0
  163. package/android/src/main/java/com/nimbbl/reactnative/TestActivity.kt +0 -28
  164. package/lib/NimbblSDK.d.ts.map +0 -1
  165. package/lib/NimbblSDK.js.map +0 -1
  166. package/lib/__tests__/__mocks__/react-native.d.ts +0 -26
  167. package/lib/__tests__/__mocks__/react-native.d.ts.map +0 -1
  168. package/lib/__tests__/__mocks__/react-native.js +0 -23
  169. package/lib/__tests__/__mocks__/react-native.js.map +0 -1
  170. package/lib/__tests__/setup.d.ts +0 -1
  171. package/lib/__tests__/setup.d.ts.map +0 -1
  172. package/lib/__tests__/setup.js +0 -4
  173. package/lib/__tests__/setup.js.map +0 -1
  174. package/lib/constants.d.ts.map +0 -1
  175. package/lib/constants.js.map +0 -1
  176. package/lib/index.d.ts.map +0 -1
  177. package/lib/index.js.map +0 -1
  178. package/lib/types.d.ts.map +0 -1
  179. package/lib/types.js.map +0 -1
package/README.md CHANGED
@@ -1,21 +1,24 @@
1
1
  # Nimbbl React Native SDK
2
2
 
3
- A comprehensive React Native SDK for integrating Nimbbl payment gateway into your mobile applications. This SDK provides a seamless bridge between React Native and native payment functionality.
3
+ **🎉 First Release - Production Ready!**
4
4
 
5
- ## Features
5
+ A comprehensive React Native SDK for integrating Nimbbl payment gateway into your mobile applications. This SDK provides a seamless bridge between React Native and native payment functionality, offering a unified API for both iOS and Android platforms.
6
6
 
7
- - 🚀 **Easy Integration** - Simple setup and initialization
7
+ ## Key Features
8
+
9
+ - 🚀 **Easy Integration** - Simple setup and initialization with production-ready defaults
8
10
  - 💳 **Multiple Payment Methods** - Support for cards, UPI, netbanking, wallets, EMI, and cash
9
11
  - 🌐 **WebView Integration** - Built-in payment webview with customization options
10
- - 🔗 **Bridge Module** - Robust native bridge for communication
11
- - 📱 **Cross Platform** - Support for both iOS and Android
12
- - 🛡️ **Type Safety** - Comprehensive TypeScript definitions
13
- - 📊 **Analytics** - Built-in analytics and logging
14
- - 🔄 **Event Handling** - Real-time payment status updates
12
+ - 🔗 **Robust Bridge** - Seamless communication between React Native and native SDKs
13
+ - 📱 **Cross Platform** - Identical behavior on both iOS and Android
14
+ - 🛡️ **Type Safety** - Comprehensive TypeScript definitions for better development experience
15
+ - 📊 **Production Ready** - Built-in analytics, logging, and error handling
16
+ - 🔄 **Unified Event Handling** - Single callback system for all payment responses
17
+ - 🎯 **Latest Native SDKs** - Built on iOS 2.0.4 and Android 4.0.3
15
18
 
16
- ## Installation
19
+ ## 🚀 Quick Start
17
20
 
18
- ### Option 1: Install from npm (Recommended for production)
21
+ ### Installation
19
22
 
20
23
  ```bash
21
24
  npm install nimbbl-mobile-react-native-sdk
@@ -23,24 +26,47 @@ npm install nimbbl-mobile-react-native-sdk
23
26
  yarn add nimbbl-mobile-react-native-sdk
24
27
  ```
25
28
 
29
+ ### Basic Integration
30
+
31
+ ```typescript
32
+ import { NimbblSDK } from 'nimbbl-mobile-react-native-sdk';
33
+
34
+ const nimbblSDK = NimbblSDK.getSharedInstance();
35
+
36
+ // Initialize with default production configuration
37
+ await nimbblSDK.initialize();
38
+
39
+ // Set up payment response handler
40
+ nimbblSDK.addCheckoutResponseListener((data) => {
41
+ if (data.status === 'success') {
42
+ console.log('Payment successful:', data);
43
+ } else {
44
+ console.log('Payment failed:', data);
45
+ }
46
+ });
47
+
48
+ // Start payment with all optional parameters
49
+ await nimbblSDK.checkout({
50
+ orderToken: 'YOUR_ORDER_TOKEN',
51
+ paymentModeCode: '<OPTIONAL>',
52
+ bankCode: '<OPTIONAL>',
53
+ walletCode: '<OPTIONAL>',
54
+ paymentFlow: '<OPTIONAL>'
55
+ });
56
+ ```
57
+
58
+ **That's it! Your payment integration is complete.** 🎉
26
59
 
60
+ ## 📚 Documentation
27
61
 
28
- ## Compatibility
62
+ - **[Sample App](../nimbbl_react_native_sample_app/)** - Complete working example with React Navigation
63
+ - **[Simple Integration Guide](../nimbbl_react_native_sample_app/SIMPLE_INTEGRATION_EXAMPLE.md)** - Step-by-step merchant integration
64
+ - **[BUILD.md](BUILD.md)** - Development build guide
65
+ - **[SETUP.md](SETUP.md)** - Comprehensive development setup
29
66
 
30
- ### NPM Version Support
31
67
 
32
- The Nimbbl React Native SDK is compatible with the following npm versions:
33
68
 
34
- | NPM Version | Support Status | Notes |
35
- |-------------|----------------|-------|
36
- | `^1.0.0-alpha.0` | ✅ Supported | Initial alpha release |
37
- | `^1.0.0-alpha.1` | ✅ Supported | Bug fixes and improvements |
38
- | `^1.0.0-alpha.2` | ✅ Supported | Enhanced error handling |
39
- | `^1.0.0-alpha.3` | ✅ Supported | Enhanced error handling |
40
- | `^1.0.0-alpha.12` | ✅ Supported | Latest alpha release |
41
- | `^1.0.0` | ✅ **Current Stable** | **Production ready** |
42
- | `^1.1.0` | 🔄 Coming Soon | Feature updates |
43
- | `^2.0.0` | 🔄 Coming Soon | Major version with breaking changes |
69
+ ## 📋 System Requirements
44
70
 
45
71
  ### React Native Version Support
46
72
 
@@ -52,7 +78,7 @@ The Nimbbl React Native SDK is compatible with the following npm versions:
52
78
  | `^0.73.0` | ✅ Supported | Latest stable version |
53
79
  | `^0.74.0` | ✅ Supported | Latest stable version |
54
80
  | `^0.75.0` | ✅ Supported | Latest stable version |
55
- | `^0.76.0` | ✅ Supported | Latest stable version |
81
+ | `^0.76.0` | ✅ **Recommended** | **Latest stable version** |
56
82
 
57
83
  ### Node.js Version Support
58
84
 
@@ -70,63 +96,65 @@ The Nimbbl React Native SDK is compatible with the following npm versions:
70
96
  | **Android** | ✅ Supported | API Level 21 (Android 5.0) |
71
97
  | **iOS** | ✅ Supported | iOS 13.0+ |
72
98
 
73
- ### Breaking Changes
99
+ ## 🎯 Why Choose Nimbbl React Native SDK?
74
100
 
75
- - **Alpha Releases**: Alpha versions may contain breaking changes between releases
76
- - **Stable Releases**: Breaking changes will be clearly documented in release notes
77
- - **Migration Guide**: Migration guides will be provided for major version updates
101
+ - **First Release**: Built from the ground up with modern React Native best practices
102
+ - **Production Ready**: Thoroughly tested and optimized for production environments
103
+ - **Cross-Platform Consistency**: Identical behavior on iOS and Android
104
+ - ✅ **Latest Native SDKs**: Built on the most recent iOS (2.0.4) and Android (4.0.3) SDKs
105
+ - ✅ **TypeScript First**: Full TypeScript support with comprehensive type definitions
106
+ - ✅ **Simple Integration**: Get started in minutes with our straightforward API
78
107
 
79
- ### Versioning Strategy
108
+ ## 🚀 Getting Started
80
109
 
81
- - **Alpha Releases** (`1.0.0-alpha.X`): For testing and early adoption
82
- - **Beta Releases** (`1.0.0-beta.X`): For feature-complete testing
83
- - **Release Candidates** (`1.0.0-rc.X`): For final testing before stable release
84
- - **Stable Releases** (`1.0.0`, `1.1.0`, etc.): For production use
110
+ ### 1. Install the SDK
85
111
 
86
- ## Quick Start
87
-
88
- ### Import the SDK
89
-
90
- The import statement depends on whether you're using the npm package or local development version:
91
-
92
- **For npm package (production use):**
93
- ```javascript
94
- import { NimbblSDK } from 'nimbbl-mobile-react-native-sdk';
112
+ ```bash
113
+ npm install nimbbl-mobile-react-native-sdk
95
114
  ```
96
115
 
97
-
98
-
99
- ### 1. Initialize the SDK
116
+ ### 2. Import and Initialize
100
117
 
101
118
  ```javascript
102
119
  import { NimbblSDK } from 'nimbbl-mobile-react-native-sdk';
103
120
 
104
121
  const nimbblSDK = NimbblSDK.getSharedInstance();
105
122
 
106
- // Initialize the SDK (no credentials required - matches iOS pattern)
107
- await nimbblSDK.initialize({
108
- environment: 'sandbox' // or 'production'
109
- });
123
+ // Initialize with default production configuration
124
+ await nimbblSDK.initialize();
110
125
  ```
111
126
 
112
127
 
113
128
 
114
- ### 2. Process Payment
129
+ ### 3. Set Up Payment Response Handler
115
130
 
116
131
  ```javascript
117
- // Process payment using checkout method (matching iOS pattern)
118
- const checkoutResult = await nimbblSDK.checkout({
119
- orderToken: 'YOUR_ORDER_TOKEN', // Order token received from your server
120
- paymentModeCode: '', // Leave empty for all payment modes
121
- bankCode: '', // Leave empty for all banks
122
- walletCode: '', // Leave empty for all wallets
123
- paymentFlow: '' // Leave empty for default flow (or 'phonepe', 'collect', 'intent' for UPI)
132
+ // Set up unified payment response handler
133
+ nimbblSDK.addCheckoutResponseListener((data) => {
134
+ if (data.status === 'success') {
135
+ console.log('Payment successful:', data);
136
+ // Handle successful payment
137
+ } else {
138
+ console.log('Payment failed:', data);
139
+ // Handle failed payment
140
+ }
124
141
  });
125
142
  ```
126
143
 
127
- ### 3. Handle Payment Status
144
+ ### 4. Start Payment
145
+
146
+ ```javascript
147
+ // Start payment with all optional parameters
148
+ await nimbblSDK.checkout({
149
+ orderToken: 'YOUR_ORDER_TOKEN',
150
+ paymentModeCode: '<OPTIONAL>',
151
+ bankCode: '<OPTIONAL>',
152
+ walletCode: '<OPTIONAL>',
153
+ paymentFlow: '<OPTIONAL>'
154
+ });
155
+ ```
128
156
 
129
- The SDK automatically manages event listeners and handles payment status updates. You don't need to manually add or remove event listeners - the SDK handles this internally for optimal performance.
157
+ **That's it! Your payment integration is complete.** 🎉
130
158
 
131
159
  ## API Reference
132
160
 
@@ -137,71 +165,36 @@ The main SDK class that provides all payment functionality.
137
165
  #### Methods
138
166
 
139
167
  - `getSharedInstance()` - Get shared SDK instance (singleton pattern)
140
- - `initialize(config)` - Initialize the SDK with configuration and auto-setup event listeners
168
+ - `initialize()` - Initialize the SDK with default configuration
141
169
  - `checkout(options)` - Process payment with order token
142
- - `testNativeModule()` - Test native module availability
143
- - `addEventListener(eventName, callback)` - Add event listener (SDK manages lifecycle automatically)
144
- - `removeEventListener(eventName, callback)` - Remove event listener
145
- - `removeAllEventListeners()` - Remove all event listeners
170
+ - `addCheckoutResponseListener(callback)` - Add unified checkout response listener (recommended)
171
+ - `removeCheckoutResponseListener(callback)` - Remove checkout response listener
146
172
 
147
173
  ### Event Handling
148
174
 
149
- The SDK automatically manages event listeners for optimal performance. Event listeners are automatically set up during initialization and cleaned up when needed.
175
+ The SDK uses a unified event handling approach for payment responses:
150
176
 
151
177
  ```javascript
152
- import { NimbblSDK, EVENTS } from 'nimbbl-mobile-react-native-sdk';
178
+ import { NimbblSDK } from 'nimbbl-mobile-react-native-sdk';
153
179
 
154
180
  const nimbblSDK = NimbblSDK.getSharedInstance();
155
181
 
156
- // Initialize SDK (automatically sets up event listeners)
157
- await nimbblSDK.initialize({
158
- environment: 'sandbox'
159
- });
160
-
161
- // Listen for payment events (SDK manages listener lifecycle)
162
- nimbblSDK.addEventListener(EVENTS.PAYMENT_SUCCESS, (data) => {
163
- console.log('Payment successful:', data);
164
- // Handle success - navigate to success screen
165
- });
166
-
167
- nimbblSDK.addEventListener(EVENTS.PAYMENT_FAILED, (data) => {
168
- console.log('Payment failed:', data);
169
- // Handle failure - show error message
170
- });
171
-
172
- // Optional: Clean up listeners when done (SDK also handles this automatically)
173
- // nimbblSDK.removeAllEventListeners();
174
- ```
175
-
176
- ## Configuration
177
-
178
- ### SDK Configuration
179
-
180
- ```javascript
181
- const config = {
182
- environment: 'sandbox', // 'sandbox' or 'production'
183
- options: {
184
- timeout: 30000,
185
- enable_logging: true,
186
- enable_analytics: true,
187
- api_base_url: 'https://api.nimbbl.tech/' // Optional: override default URL
182
+ // Initialize SDK
183
+ await nimbblSDK.initialize();
184
+
185
+ // Use unified checkout response listener
186
+ nimbblSDK.addCheckoutResponseListener((data) => {
187
+ if (data.status === 'success') {
188
+ // Handle successful payment
189
+ // Handle success - navigate to success screen
190
+ } else {
191
+ // Handle failed payment
192
+ // Handle failure - show error message
188
193
  }
189
- };
190
- ```
191
-
192
- ## Constants
193
-
194
- The SDK provides various constants for better development experience:
194
+ });
195
195
 
196
- ```javascript
197
- import {
198
- EVENTS,
199
- ENVIRONMENTS,
200
- ERROR_CODES,
201
- ERROR_MESSAGES,
202
- DEFAULT_CONFIG,
203
- SDK_VERSION
204
- } from 'nimbbl-mobile-react-native-sdk';
196
+ // Optional: Clean up listeners when done
197
+ // nimbblSDK.removeCheckoutResponseListener(callback);
205
198
  ```
206
199
 
207
200
  ## Error Handling
@@ -210,13 +203,13 @@ import {
210
203
  try {
211
204
  const checkoutResult = await nimbblSDK.checkout({
212
205
  orderToken: 'YOUR_ORDER_TOKEN',
213
- paymentModeCode: '',
214
- bankCode: '',
215
- walletCode: '',
216
- paymentFlow: ''
206
+ paymentModeCode: '<OPTIONAL>',
207
+ bankCode: '<OPTIONAL>',
208
+ walletCode: '<OPTIONAL>',
209
+ paymentFlow: '<OPTIONAL>'
217
210
  });
218
211
  } catch (error) {
219
- console.error('Error processing payment:', error.message);
212
+ // Handle payment error
220
213
 
221
214
  // Check error codes
222
215
  if (error.code === ERROR_CODES.PAYMENT_FAILED) {
@@ -276,22 +269,19 @@ class PaymentManager {
276
269
  }
277
270
 
278
271
  async initialize() {
279
- await this.nimbblSDK.initialize({
280
- environment: 'sandbox'
281
- });
272
+ await this.nimbblSDK.initialize();
282
273
  }
283
274
 
284
275
  setupEventListeners() {
285
- // Event listeners are automatically managed by the SDK
286
- // You can add custom listeners for your app's specific needs
287
- this.nimbblSDK.addEventListener(EVENTS.PAYMENT_SUCCESS, (data) => {
288
- console.log('Payment successful:', data);
289
- // Navigate to success screen
290
- });
291
-
292
- this.nimbblSDK.addEventListener(EVENTS.PAYMENT_FAILED, (data) => {
293
- console.log('Payment failed:', data);
294
- // Show error message
276
+ // Use unified checkout response listener
277
+ this.nimbblSDK.addCheckoutResponseListener((data) => {
278
+ if (data.status === 'success') {
279
+ // Handle successful payment
280
+ // Navigate to success screen
281
+ } else {
282
+ // Handle failed payment
283
+ // Show error message
284
+ }
295
285
  });
296
286
  }
297
287
 
@@ -383,12 +373,10 @@ For debugging purposes, you can check the SDK initialization status and handle e
383
373
  const nimbblSDK = NimbblSDK.getSharedInstance();
384
374
 
385
375
  try {
386
- await nimbblSDK.initialize({
387
- environment: 'sandbox'
388
- });
389
- console.log('SDK initialized successfully');
376
+ await nimbblSDK.initialize();
377
+ // SDK initialized successfully
390
378
  } catch (error) {
391
- console.error('SDK initialization failed:', error);
379
+ // Handle initialization error
392
380
  }
393
381
  ```
394
382
 
@@ -459,7 +447,7 @@ For production applications, consider locking to specific versions:
459
447
  ```json
460
448
  {
461
449
  "dependencies": {
462
- "nimbbl-mobile-react-native-sdk": "1.0.0-alpha.3"
450
+ "nimbbl-mobile-react-native-sdk": "1.1.1"
463
451
  }
464
452
  }
465
453
  ```
@@ -470,48 +458,51 @@ For production applications, consider locking to specific versions:
470
458
  - **Stable versions**: Deprecated features will be marked with warnings for at least one minor version
471
459
  - **Major versions**: Breaking changes will be clearly documented
472
460
 
473
- ## Changelog
461
+ ## 📝 Release Notes
462
+
463
+ ### v1.3.0 - First Release 🎉
474
464
 
475
- ### v1.0.0 (Current Stable Release)
465
+ **🚀 Production-Ready React Native SDK for Nimbbl Payments**
476
466
 
477
- **🎉 First Stable Release - Production Ready!**
467
+ #### Features
468
+ - **Unified API**: Single API for both iOS and Android platforms
469
+ - **Latest Native SDKs**: Built on iOS 2.0.4 and Android 4.0.3
470
+ - **TypeScript Support**: Full TypeScript definitions for better development experience
471
+ - **Cross-Platform Consistency**: Identical behavior on iOS and Android
472
+ - **Production Ready**: Optimized for production environments with comprehensive error handling
478
473
 
479
- #### New Features
480
- - **Automatic Event Listener Management**: SDK now automatically manages event listeners for optimal performance
481
- - **Simplified Integration**: No need to manually add/remove event listeners
482
- - **Enhanced Error Handling**: Improved error messages and debugging capabilities
474
+ #### 🔧 Core Functionality
475
+ - **Easy Integration**: Simple setup with production-ready defaults
476
+ - **Multiple Payment Methods**: Support for cards, UPI, netbanking, wallets, EMI, and cash
477
+ - **WebView Integration**: Built-in payment webview with customization options
478
+ - **Unified Event Handling**: Single callback system for all payment responses
479
+ - **Robust Error Handling**: Comprehensive error handling and fallback mechanisms
483
480
 
484
- #### 🔧 Improvements
485
- - **Performance Optimization**: Better memory management and event handling
486
- - **Code Quality**: Comprehensive TypeScript definitions and error handling
487
- - **Documentation**: Complete API documentation with examples and troubleshooting
481
+ #### 🛠️ Technical Highlights
482
+ - **Modern Architecture**: Built with React Native best practices
483
+ - **Native Bridge**: Seamless communication between React Native and native SDKs
484
+ - **Performance Optimized**: Efficient memory management and callback handling
485
+ - **Clean Codebase**: Production-ready code with no debug artifacts
486
+ - **Comprehensive Testing**: Full test coverage with 20+ test cases
488
487
 
489
- #### 🐛 Bug Fixes
490
- - Fixed iOS payment status screen not opening issue
491
- - Resolved event listener lifecycle management
492
- - Improved WebView integration stability
488
+ #### 📱 Platform Support
489
+ - **iOS**: iOS 13.0+ with Swift implementation
490
+ - **Android**: API Level 21+ (Android 5.0) with Kotlin implementation
491
+ - **React Native**: 0.70.0+ support with 0.76.0 recommended
493
492
 
494
- #### 📦 Dependencies
495
- - Updated to latest React Native 0.76.0 compatibility
496
- - Enhanced iOS and Android native module integration
493
+ ## 🎯 What's Next?
497
494
 
498
- ---
495
+ This is the first release of the Nimbbl React Native SDK. Future releases will include:
499
496
 
500
- ### Previous Alpha Releases
497
+ - 🔄 **Enhanced Features**: Additional payment methods and customization options
498
+ - 🚀 **Performance Improvements**: Optimizations based on real-world usage
499
+ - 🛠️ **Developer Experience**: Enhanced debugging tools and documentation
500
+ - 📱 **Platform Updates**: Support for new React Native versions and platform features
501
501
 
502
- #### v1.0.0-alpha.12
503
- - Enhanced event listener management
504
- - Improved iOS native module integration
505
- - Added debug logging capabilities
502
+ ## 🤝 Contributing
506
503
 
507
- #### v1.0.0-alpha.3
508
- - Enhanced error handling
509
- - Improved WebView integration
510
- - Better TypeScript support
504
+ We welcome contributions! Please see our [Contributing Guidelines](CONTRIBUTING.md) for details.
511
505
 
512
- #### v1.0.0-alpha.2
513
- - Bug fixes and improvements
514
- - Enhanced error handling
506
+ ## 📄 License
515
507
 
516
- #### v1.0.0-alpha.1
517
- - Initial alpha release with core functionality
508
+ This project is licensed under the MIT License - see the [LICENSE](./LICENSE) file for details.
@@ -24,7 +24,7 @@ allprojects {
24
24
  }
25
25
 
26
26
  group = 'com.nimbbl.reactnative'
27
- version = '1.0.0'
27
+ version = '1.2.0'
28
28
 
29
29
  android {
30
30
  namespace 'com.nimbbl.reactnative'
@@ -35,7 +35,7 @@ android {
35
35
  minSdkVersion 24
36
36
  targetSdkVersion 36
37
37
  versionCode 1
38
- versionName "1.0.0"
38
+ versionName "1.2.0"
39
39
  }
40
40
 
41
41
  buildTypes {
@@ -65,7 +65,7 @@ dependencies {
65
65
  implementation 'androidx.appcompat:appcompat:1.6.1'
66
66
 
67
67
  // Nimbbl WebView SDK dependency (includes all necessary dependencies)
68
- implementation 'com.github.nimbbl-tech:nimbbl_mobile_kit_android_webview_sdk:3.0.12'
68
+ implementation 'org.bitbucket.nimbbl-tech:nimbbl_mobile_kit_android_webview_sdk:v4.0.3'
69
69
 
70
70
  // Add Retrofit and Coroutines dependencies for Android SDK
71
71
  implementation 'com.squareup.retrofit2:retrofit:2.9.0'
@@ -79,7 +79,7 @@ afterEvaluate {
79
79
  from components.release
80
80
  groupId = 'com.nimbbl.reactnative'
81
81
  artifactId = 'nimbbl-react-native-sdk'
82
- version = '1.0.0'
82
+ version = '1.2.0'
83
83
  }
84
84
  }
85
85
  }
@@ -10,10 +10,6 @@
10
10
  android:name=".NimbblCheckoutActivity"
11
11
  android:exported="false"
12
12
  android:theme="@android:style/Theme.DeviceDefault.Light.NoActionBar" />
13
- <activity
14
- android:name=".TestActivity"
15
- android:exported="false"
16
- android:theme="@android:style/Theme.DeviceDefault.Light.NoActionBar" />
17
13
  </application>
18
14
 
19
15
  </manifest>