@zezosoft/react-native-zezopay 1.0.3 → 1.0.5

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 (242) hide show
  1. package/README.md +11 -3
  2. package/lib/module/index.js +1 -1
  3. package/lib/module/zezopay/ZezoPay.js +281 -0
  4. package/lib/module/zezopay/ZezoPay.js.map +1 -0
  5. package/lib/module/{ZezoPay → zezopay}/components/Header.js +28 -10
  6. package/lib/module/zezopay/components/Header.js.map +1 -0
  7. package/lib/module/zezopay/components/PayButton.js +192 -0
  8. package/lib/module/zezopay/components/PayButton.js.map +1 -0
  9. package/lib/module/{ZezoPay → zezopay}/components/PaymentMethod.js +96 -70
  10. package/lib/module/zezopay/components/PaymentMethod.js.map +1 -0
  11. package/lib/module/{ZezoPay → zezopay}/components/Summary.js +54 -43
  12. package/lib/module/zezopay/components/Summary.js.map +1 -0
  13. package/lib/module/{ZezoPay → zezopay}/components/VoucherBox.js +81 -48
  14. package/lib/module/zezopay/components/VoucherBox.js.map +1 -0
  15. package/lib/module/zezopay/components/index.js +8 -0
  16. package/lib/module/zezopay/components/index.js.map +1 -0
  17. package/lib/module/zezopay/context/ZezoPayContext.js +24 -0
  18. package/lib/module/zezopay/context/ZezoPayContext.js.map +1 -0
  19. package/lib/module/zezopay/context/index.js +4 -0
  20. package/lib/module/zezopay/context/index.js.map +1 -0
  21. package/lib/module/zezopay/hooks/index.js +5 -0
  22. package/lib/module/zezopay/hooks/index.js.map +1 -0
  23. package/lib/module/zezopay/hooks/useAsync.js +44 -0
  24. package/lib/module/zezopay/hooks/useAsync.js.map +1 -0
  25. package/lib/module/zezopay/hooks/useKeyboard.js +34 -0
  26. package/lib/module/zezopay/hooks/useKeyboard.js.map +1 -0
  27. package/lib/module/zezopay/hooks/useZezoPay.helpers.js +217 -0
  28. package/lib/module/zezopay/hooks/useZezoPay.helpers.js.map +1 -0
  29. package/lib/module/zezopay/hooks/useZezoPay.js +219 -0
  30. package/lib/module/zezopay/hooks/useZezoPay.js.map +1 -0
  31. package/lib/module/zezopay/index.js +10 -0
  32. package/lib/module/zezopay/index.js.map +1 -0
  33. package/lib/module/zezopay/payments/providers/iap/IAP.js +201 -0
  34. package/lib/module/zezopay/payments/providers/iap/IAP.js.map +1 -0
  35. package/lib/module/zezopay/payments/providers/index.js +12 -0
  36. package/lib/module/zezopay/payments/providers/index.js.map +1 -0
  37. package/lib/module/zezopay/payments/providers/payment-gateways.types.d.js +2 -0
  38. package/lib/module/zezopay/payments/providers/payment-gateways.types.d.js.map +1 -0
  39. package/lib/module/zezopay/payments/providers/razorpay/Razorpay.js +40 -0
  40. package/lib/module/zezopay/payments/providers/razorpay/Razorpay.js.map +1 -0
  41. package/lib/module/zezopay/payments/providers/stripe/Stripe.js +58 -0
  42. package/lib/module/zezopay/payments/providers/stripe/Stripe.js.map +1 -0
  43. package/lib/module/zezopay/services/api-sdk.js +24 -0
  44. package/lib/module/zezopay/services/api-sdk.js.map +1 -0
  45. package/lib/module/zezopay/services/baseService.js +55 -0
  46. package/lib/module/zezopay/services/baseService.js.map +1 -0
  47. package/lib/module/zezopay/services/common.types.js +2 -0
  48. package/lib/module/zezopay/services/common.types.js.map +1 -0
  49. package/lib/module/zezopay/services/digitalProducts/digitalProducts.js +72 -0
  50. package/lib/module/zezopay/services/digitalProducts/digitalProducts.js.map +1 -0
  51. package/lib/module/zezopay/services/digitalProducts/digitalProducts.types.js +4 -0
  52. package/lib/module/zezopay/services/digitalProducts/digitalProducts.types.js.map +1 -0
  53. package/lib/module/zezopay/services/digitalProducts/index.js +5 -0
  54. package/lib/module/zezopay/services/digitalProducts/index.js.map +1 -0
  55. package/lib/module/zezopay/services/iap/iap.js +20 -0
  56. package/lib/module/zezopay/services/iap/iap.js.map +1 -0
  57. package/lib/module/zezopay/services/iap/iap.types.js +2 -0
  58. package/lib/module/zezopay/services/iap/iap.types.js.map +1 -0
  59. package/lib/module/zezopay/services/iap/index.js +5 -0
  60. package/lib/module/zezopay/services/iap/index.js.map +1 -0
  61. package/lib/module/zezopay/services/index.js +10 -0
  62. package/lib/module/zezopay/services/index.js.map +1 -0
  63. package/lib/module/zezopay/services/payments/index.js +5 -0
  64. package/lib/module/zezopay/services/payments/index.js.map +1 -0
  65. package/lib/module/{ZezoPay/http → zezopay}/services/payments/payments.js +2 -1
  66. package/lib/module/zezopay/services/payments/payments.js.map +1 -0
  67. package/lib/module/zezopay/services/payments/payments.types.js +52 -0
  68. package/lib/module/zezopay/services/payments/payments.types.js.map +1 -0
  69. package/lib/module/zezopay/services/subscriptions/index.js +5 -0
  70. package/lib/module/zezopay/services/subscriptions/index.js.map +1 -0
  71. package/lib/module/zezopay/services/subscriptions/plan/index.js +5 -0
  72. package/lib/module/zezopay/services/subscriptions/plan/index.js.map +1 -0
  73. package/lib/module/zezopay/services/subscriptions/plan/plan.js +57 -0
  74. package/lib/module/zezopay/services/subscriptions/plan/plan.js.map +1 -0
  75. package/lib/module/zezopay/services/subscriptions/plan/plan.types.js +4 -0
  76. package/lib/module/zezopay/services/subscriptions/plan/plan.types.js.map +1 -0
  77. package/lib/module/zezopay/services/utils/errorFormatter.js.map +1 -0
  78. package/lib/module/zezopay/services/utils/index.js +4 -0
  79. package/lib/module/zezopay/services/utils/index.js.map +1 -0
  80. package/lib/module/zezopay/theme.js +40 -0
  81. package/lib/module/zezopay/theme.js.map +1 -0
  82. package/lib/module/{ZezoPay → zezopay}/types/index.js.map +1 -1
  83. package/lib/module/{ZezoPay → zezopay}/utils/index.js +2 -1
  84. package/lib/module/zezopay/utils/index.js.map +1 -0
  85. package/lib/typescript/src/index.d.ts +1 -1
  86. package/lib/typescript/src/zezopay/ZezoPay.d.ts.map +1 -0
  87. package/lib/typescript/src/{ZezoPay → zezopay}/components/Header.d.ts +2 -0
  88. package/lib/typescript/src/zezopay/components/Header.d.ts.map +1 -0
  89. package/lib/typescript/src/{ZezoPay → zezopay}/components/PayButton.d.ts +2 -0
  90. package/lib/typescript/src/zezopay/components/PayButton.d.ts.map +1 -0
  91. package/lib/typescript/src/zezopay/components/PaymentMethod.d.ts +15 -0
  92. package/lib/typescript/src/zezopay/components/PaymentMethod.d.ts.map +1 -0
  93. package/lib/typescript/src/zezopay/components/Summary.d.ts +11 -0
  94. package/lib/typescript/src/zezopay/components/Summary.d.ts.map +1 -0
  95. package/lib/typescript/src/{ZezoPay → zezopay}/components/VoucherBox.d.ts +2 -0
  96. package/lib/typescript/src/zezopay/components/VoucherBox.d.ts.map +1 -0
  97. package/lib/typescript/src/zezopay/components/index.d.ts +6 -0
  98. package/lib/typescript/src/zezopay/components/index.d.ts.map +1 -0
  99. package/lib/typescript/src/zezopay/context/ZezoPayContext.d.ts +10 -0
  100. package/lib/typescript/src/zezopay/context/ZezoPayContext.d.ts.map +1 -0
  101. package/lib/typescript/src/zezopay/context/index.d.ts +2 -0
  102. package/lib/typescript/src/zezopay/context/index.d.ts.map +1 -0
  103. package/lib/typescript/src/zezopay/hooks/index.d.ts +4 -0
  104. package/lib/typescript/src/zezopay/hooks/index.d.ts.map +1 -0
  105. package/lib/typescript/src/zezopay/hooks/useAsync.d.ts +8 -0
  106. package/lib/typescript/src/zezopay/hooks/useAsync.d.ts.map +1 -0
  107. package/lib/typescript/src/zezopay/hooks/useKeyboard.d.ts +9 -0
  108. package/lib/typescript/src/zezopay/hooks/useKeyboard.d.ts.map +1 -0
  109. package/lib/typescript/src/{ZezoPay/utils → zezopay}/hooks/useZezoPay.d.ts +13 -12
  110. package/lib/typescript/src/zezopay/hooks/useZezoPay.d.ts.map +1 -0
  111. package/lib/typescript/src/zezopay/hooks/useZezoPay.helpers.d.ts +23 -0
  112. package/lib/typescript/src/zezopay/hooks/useZezoPay.helpers.d.ts.map +1 -0
  113. package/lib/typescript/src/zezopay/index.d.ts +8 -0
  114. package/lib/typescript/src/zezopay/index.d.ts.map +1 -0
  115. package/lib/typescript/src/zezopay/payments/providers/iap/IAP.d.ts +17 -0
  116. package/lib/typescript/src/zezopay/payments/providers/iap/IAP.d.ts.map +1 -0
  117. package/lib/typescript/src/zezopay/payments/providers/index.d.ts +9 -0
  118. package/lib/typescript/src/zezopay/payments/providers/index.d.ts.map +1 -0
  119. package/lib/typescript/src/zezopay/payments/providers/razorpay/Razorpay.d.ts.map +1 -0
  120. package/lib/typescript/src/zezopay/payments/providers/stripe/Stripe.d.ts +7 -0
  121. package/lib/typescript/src/zezopay/payments/providers/stripe/Stripe.d.ts.map +1 -0
  122. package/lib/typescript/src/zezopay/services/api-sdk.d.ts +31 -0
  123. package/lib/typescript/src/zezopay/services/api-sdk.d.ts.map +1 -0
  124. package/lib/typescript/src/{ZezoPay/http → zezopay}/services/baseService.d.ts +1 -1
  125. package/lib/typescript/src/zezopay/services/baseService.d.ts.map +1 -0
  126. package/lib/typescript/src/zezopay/services/common.types.d.ts +25 -0
  127. package/lib/typescript/src/zezopay/services/common.types.d.ts.map +1 -0
  128. package/lib/typescript/src/zezopay/services/digitalProducts/digitalProducts.d.ts +15 -0
  129. package/lib/typescript/src/zezopay/services/digitalProducts/digitalProducts.d.ts.map +1 -0
  130. package/lib/typescript/src/zezopay/services/digitalProducts/digitalProducts.types.d.ts +79 -0
  131. package/lib/typescript/src/zezopay/services/digitalProducts/digitalProducts.types.d.ts.map +1 -0
  132. package/lib/typescript/src/zezopay/services/digitalProducts/index.d.ts +3 -0
  133. package/lib/typescript/src/zezopay/services/digitalProducts/index.d.ts.map +1 -0
  134. package/lib/typescript/src/zezopay/services/iap/iap.d.ts +13 -0
  135. package/lib/typescript/src/zezopay/services/iap/iap.d.ts.map +1 -0
  136. package/lib/typescript/src/zezopay/services/iap/iap.types.d.ts +47 -0
  137. package/lib/typescript/src/zezopay/services/iap/iap.types.d.ts.map +1 -0
  138. package/lib/typescript/src/zezopay/services/iap/index.d.ts +3 -0
  139. package/lib/typescript/src/zezopay/services/iap/index.d.ts.map +1 -0
  140. package/lib/typescript/src/zezopay/services/index.d.ts +9 -0
  141. package/lib/typescript/src/zezopay/services/index.d.ts.map +1 -0
  142. package/lib/typescript/src/zezopay/services/payments/index.d.ts +3 -0
  143. package/lib/typescript/src/zezopay/services/payments/index.d.ts.map +1 -0
  144. package/lib/typescript/src/{ZezoPay/http → zezopay}/services/payments/payments.d.ts +3 -2
  145. package/lib/typescript/src/zezopay/services/payments/payments.d.ts.map +1 -0
  146. package/lib/typescript/src/{ZezoPay/http → zezopay}/services/payments/payments.types.d.ts +22 -1
  147. package/lib/typescript/src/zezopay/services/payments/payments.types.d.ts.map +1 -0
  148. package/lib/typescript/src/zezopay/services/subscriptions/index.d.ts +3 -0
  149. package/lib/typescript/src/zezopay/services/subscriptions/index.d.ts.map +1 -0
  150. package/lib/typescript/src/zezopay/services/subscriptions/plan/index.d.ts +3 -0
  151. package/lib/typescript/src/zezopay/services/subscriptions/plan/index.d.ts.map +1 -0
  152. package/lib/typescript/src/zezopay/services/subscriptions/plan/plan.d.ts +19 -0
  153. package/lib/typescript/src/zezopay/services/subscriptions/plan/plan.d.ts.map +1 -0
  154. package/lib/typescript/src/zezopay/services/subscriptions/plan/plan.types.d.ts +64 -0
  155. package/lib/typescript/src/zezopay/services/subscriptions/plan/plan.types.d.ts.map +1 -0
  156. package/lib/typescript/src/zezopay/services/utils/errorFormatter.d.ts.map +1 -0
  157. package/lib/typescript/src/zezopay/services/utils/index.d.ts +2 -0
  158. package/lib/typescript/src/zezopay/services/utils/index.d.ts.map +1 -0
  159. package/lib/typescript/src/zezopay/theme.d.ts +38 -0
  160. package/lib/typescript/src/zezopay/theme.d.ts.map +1 -0
  161. package/lib/typescript/src/{ZezoPay → zezopay}/types/index.d.ts +19 -21
  162. package/lib/typescript/src/zezopay/types/index.d.ts.map +1 -0
  163. package/lib/typescript/src/{ZezoPay → zezopay}/utils/index.d.ts.map +1 -1
  164. package/package.json +13 -5
  165. package/lib/module/ZezoPay/Payments/Providers/PaymentGateways.types.d.js +0 -2
  166. package/lib/module/ZezoPay/Payments/Providers/PaymentGateways.types.d.js.map +0 -1
  167. package/lib/module/ZezoPay/Payments/Providers/Razorpay/Razorpay.js +0 -39
  168. package/lib/module/ZezoPay/Payments/Providers/Razorpay/Razorpay.js.map +0 -1
  169. package/lib/module/ZezoPay/Payments/Providers/index.js +0 -10
  170. package/lib/module/ZezoPay/Payments/Providers/index.js.map +0 -1
  171. package/lib/module/ZezoPay/ZezoPay.js +0 -192
  172. package/lib/module/ZezoPay/ZezoPay.js.map +0 -1
  173. package/lib/module/ZezoPay/components/Header.js.map +0 -1
  174. package/lib/module/ZezoPay/components/PayButton.js +0 -143
  175. package/lib/module/ZezoPay/components/PayButton.js.map +0 -1
  176. package/lib/module/ZezoPay/components/PaymentMethod.js.map +0 -1
  177. package/lib/module/ZezoPay/components/Summary.js.map +0 -1
  178. package/lib/module/ZezoPay/components/VoucherBox.js.map +0 -1
  179. package/lib/module/ZezoPay/http/api-sdk.js +0 -14
  180. package/lib/module/ZezoPay/http/api-sdk.js.map +0 -1
  181. package/lib/module/ZezoPay/http/services/baseService.js +0 -28
  182. package/lib/module/ZezoPay/http/services/baseService.js.map +0 -1
  183. package/lib/module/ZezoPay/http/services/payments/payments.js.map +0 -1
  184. package/lib/module/ZezoPay/http/services/payments/payments.types.js +0 -2
  185. package/lib/module/ZezoPay/http/services/payments/payments.types.js.map +0 -1
  186. package/lib/module/ZezoPay/http/utils/errorFormatter.js.map +0 -1
  187. package/lib/module/ZezoPay/index.js +0 -5
  188. package/lib/module/ZezoPay/index.js.map +0 -1
  189. package/lib/module/ZezoPay/utils/hooks/useAsync.js +0 -32
  190. package/lib/module/ZezoPay/utils/hooks/useAsync.js.map +0 -1
  191. package/lib/module/ZezoPay/utils/hooks/useZezoPay.js +0 -249
  192. package/lib/module/ZezoPay/utils/hooks/useZezoPay.js.map +0 -1
  193. package/lib/module/ZezoPay/utils/index.js.map +0 -1
  194. package/lib/typescript/src/ZezoPay/Payments/Providers/Razorpay/Razorpay.d.ts.map +0 -1
  195. package/lib/typescript/src/ZezoPay/Payments/Providers/index.d.ts +0 -7
  196. package/lib/typescript/src/ZezoPay/Payments/Providers/index.d.ts.map +0 -1
  197. package/lib/typescript/src/ZezoPay/ZezoPay.d.ts.map +0 -1
  198. package/lib/typescript/src/ZezoPay/components/Header.d.ts.map +0 -1
  199. package/lib/typescript/src/ZezoPay/components/PayButton.d.ts.map +0 -1
  200. package/lib/typescript/src/ZezoPay/components/PaymentMethod.d.ts +0 -12
  201. package/lib/typescript/src/ZezoPay/components/PaymentMethod.d.ts.map +0 -1
  202. package/lib/typescript/src/ZezoPay/components/Summary.d.ts +0 -7
  203. package/lib/typescript/src/ZezoPay/components/Summary.d.ts.map +0 -1
  204. package/lib/typescript/src/ZezoPay/components/VoucherBox.d.ts.map +0 -1
  205. package/lib/typescript/src/ZezoPay/http/api-sdk.d.ts +0 -21
  206. package/lib/typescript/src/ZezoPay/http/api-sdk.d.ts.map +0 -1
  207. package/lib/typescript/src/ZezoPay/http/services/baseService.d.ts.map +0 -1
  208. package/lib/typescript/src/ZezoPay/http/services/payments/payments.d.ts.map +0 -1
  209. package/lib/typescript/src/ZezoPay/http/services/payments/payments.types.d.ts.map +0 -1
  210. package/lib/typescript/src/ZezoPay/http/utils/errorFormatter.d.ts.map +0 -1
  211. package/lib/typescript/src/ZezoPay/index.d.ts +0 -3
  212. package/lib/typescript/src/ZezoPay/index.d.ts.map +0 -1
  213. package/lib/typescript/src/ZezoPay/types/index.d.ts.map +0 -1
  214. package/lib/typescript/src/ZezoPay/utils/hooks/useAsync.d.ts +0 -6
  215. package/lib/typescript/src/ZezoPay/utils/hooks/useAsync.d.ts.map +0 -1
  216. package/lib/typescript/src/ZezoPay/utils/hooks/useZezoPay.d.ts.map +0 -1
  217. package/src/ZezoPay/Payments/Providers/PaymentGateways.types.d.ts +0 -48
  218. package/src/ZezoPay/Payments/Providers/Razorpay/Razorpay.ts +0 -46
  219. package/src/ZezoPay/Payments/Providers/index.ts +0 -8
  220. package/src/ZezoPay/ZezoPay.tsx +0 -197
  221. package/src/ZezoPay/components/Header.tsx +0 -107
  222. package/src/ZezoPay/components/PayButton.tsx +0 -132
  223. package/src/ZezoPay/components/PaymentMethod.tsx +0 -263
  224. package/src/ZezoPay/components/Summary.tsx +0 -188
  225. package/src/ZezoPay/components/VoucherBox.tsx +0 -182
  226. package/src/ZezoPay/http/api-sdk.ts +0 -27
  227. package/src/ZezoPay/http/services/baseService.ts +0 -37
  228. package/src/ZezoPay/http/services/payments/payments.ts +0 -66
  229. package/src/ZezoPay/http/services/payments/payments.types.ts +0 -120
  230. package/src/ZezoPay/http/utils/errorFormatter.ts +0 -88
  231. package/src/ZezoPay/index.ts +0 -2
  232. package/src/ZezoPay/types/index.ts +0 -104
  233. package/src/ZezoPay/utils/hooks/useAsync.ts +0 -38
  234. package/src/ZezoPay/utils/hooks/useZezoPay.ts +0 -323
  235. package/src/ZezoPay/utils/index.ts +0 -16
  236. package/src/index.tsx +0 -1
  237. /package/lib/module/{ZezoPay/http → zezopay/services}/utils/errorFormatter.js +0 -0
  238. /package/lib/module/{ZezoPay → zezopay}/types/index.js +0 -0
  239. /package/lib/typescript/src/{ZezoPay → zezopay}/ZezoPay.d.ts +0 -0
  240. /package/lib/typescript/src/{ZezoPay/Payments/Providers/Razorpay → zezopay/payments/providers/razorpay}/Razorpay.d.ts +0 -0
  241. /package/lib/typescript/src/{ZezoPay/http → zezopay/services}/utils/errorFormatter.d.ts +0 -0
  242. /package/lib/typescript/src/{ZezoPay → zezopay}/utils/index.d.ts +0 -0
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  **ZezoPay React Native SDK** – Seamlessly integrate secure payments for subscriptions, digital products, or one-time purchases in your React Native app. ZezoPay provides a smooth checkout experience, manages payment flows, and returns results via callbacks.
4
4
 
5
- Currently supports **Razorpay**, with more payment providers coming soon.
5
+ Currently supports **Razorpay**, **Stripe**, **Apple Pay**, and **Google Pay**, with more payment providers coming soon.
6
6
 
7
7
  ---
8
8
 
@@ -14,6 +14,14 @@ npm install @zezosoft/react-native-zezopay
14
14
  yarn add @zezosoft/react-native-zezopay
15
15
  ```
16
16
 
17
+ If you want Apple Pay or Google Pay (IAP), also install:
18
+
19
+ ```bash
20
+ npm install react-native-iap
21
+ # or
22
+ yarn add react-native-iap
23
+ ```
24
+
17
25
  ---
18
26
 
19
27
  ## 📦 Quick Start Example
@@ -119,13 +127,13 @@ userInfo = {
119
127
  **Available now:**
120
128
 
121
129
  ```
122
- 'razorpay'
130
+ 'razorpay' | 'stripe' | 'applepay' | 'googlepay'
123
131
  ```
124
132
 
125
133
  **Coming soon:**
126
134
 
127
135
  ```
128
- 'stripe' | 'ccavenue' | 'phonepe'
136
+ 'ccavenue' | 'phonepe'
129
137
  ```
130
138
 
131
139
  ---
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
2
 
3
- export * from "./ZezoPay/index.js";
3
+ export * from "./zezopay/index.js";
4
4
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,281 @@
1
+ "use strict";
2
+
3
+ import React, { useMemo, useEffect, useRef } from 'react';
4
+ import { View, StyleSheet, Text, StatusBar, Platform, Animated } from 'react-native';
5
+ import { ArrowLeft } from 'lucide-react-native';
6
+ import { scale, verticalScale, moderateScale } from 'react-native-size-matters';
7
+ import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view';
8
+ import { SafeAreaProvider, SafeAreaView } from 'react-native-safe-area-context';
9
+ import { Header, PaymentMethod, Summary, PayButton, VoucherBox } from "./components/index.js";
10
+ import { useZezoPay } from "./hooks/index.js";
11
+ import { useKeyboard } from "./hooks/useKeyboard.js";
12
+ import { formatCurrency } from "./utils/index.js";
13
+ import { mergeTheme } from "./theme.js";
14
+ import SystemNavigationBar from 'react-native-system-navigation-bar';
15
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
16
+ const ZezoPay = ({
17
+ title = 'Payments',
18
+ summaryItems,
19
+ onBack,
20
+ userInfo,
21
+ publicKey,
22
+ digitalProduct,
23
+ subscription,
24
+ callbacks,
25
+ handlePayment,
26
+ voucher = true,
27
+ theme
28
+ }) => {
29
+ const {
30
+ isKeyboardOpen
31
+ } = useKeyboard();
32
+ const mergedTheme = useMemo(() => mergeTheme(theme), [theme]);
33
+ const styles = useMemo(() => getStyles(mergedTheme.colors), [mergedTheme.colors]);
34
+
35
+ // Animation values for smooth bottom container transition
36
+ const bottomOpacity = useRef(new Animated.Value(1)).current;
37
+ const bottomTranslateY = useRef(new Animated.Value(0)).current;
38
+
39
+ // Keyboard open: hide immediately. Keyboard close: animate back in.
40
+ useEffect(() => {
41
+ if (isKeyboardOpen) {
42
+ bottomOpacity.setValue(0);
43
+ bottomTranslateY.setValue(100);
44
+ } else {
45
+ Animated.parallel([Animated.timing(bottomOpacity, {
46
+ toValue: 1,
47
+ duration: Platform.OS === 'ios' ? 250 : 200,
48
+ useNativeDriver: true
49
+ }), Animated.timing(bottomTranslateY, {
50
+ toValue: 0,
51
+ duration: Platform.OS === 'ios' ? 250 : 200,
52
+ useNativeDriver: true
53
+ })]).start();
54
+ }
55
+ }, [isKeyboardOpen, bottomOpacity, bottomTranslateY]);
56
+ const {
57
+ provider,
58
+ setProvider,
59
+ cartItems,
60
+ totalAmount,
61
+ rawAmount,
62
+ success,
63
+ error,
64
+ loadingPayment,
65
+ providers,
66
+ loading: providersLoading,
67
+ providersError,
68
+ removeItem,
69
+ payNow,
70
+ applyCoupon,
71
+ coupon,
72
+ couponLoading,
73
+ removeCoupon
74
+ } = useZezoPay({
75
+ publicKey,
76
+ user: {
77
+ _id: userInfo._id,
78
+ name: userInfo?.name || '',
79
+ email: userInfo?.email || '',
80
+ phone: userInfo?.phone || ''
81
+ },
82
+ subscription,
83
+ digitalProduct,
84
+ cart: summaryItems || [],
85
+ callbacks,
86
+ paymentHandler: handlePayment
87
+ });
88
+ const hasDiscount = totalAmount < rawAmount;
89
+ useEffect(() => {
90
+ if (Platform.OS === 'android') {
91
+ const barStyle = theme?.statusBarStyle === 'light-content' ? 'light' : 'dark';
92
+ SystemNavigationBar.setNavigationColor(mergedTheme.colors.navigationBarBackground, barStyle, 'navigation');
93
+ }
94
+ }, [mergedTheme.colors.navigationBarBackground, theme?.statusBarStyle]);
95
+ return /*#__PURE__*/_jsx(SafeAreaProvider, {
96
+ children: /*#__PURE__*/_jsxs(SafeAreaView, {
97
+ style: styles.safeArea,
98
+ edges: ['bottom', 'left', 'right'],
99
+ children: [/*#__PURE__*/_jsx(StatusBar, {
100
+ barStyle: theme?.statusBarStyle ?? 'dark-content',
101
+ backgroundColor: 'transparent'
102
+ }), /*#__PURE__*/_jsx(SafeAreaView, {
103
+ style: styles.headerSafeArea,
104
+ edges: ['top'],
105
+ children: /*#__PURE__*/_jsx(View, {
106
+ style: styles.headerWrapper,
107
+ children: /*#__PURE__*/_jsx(Header, {
108
+ title: title,
109
+ onBack: onBack,
110
+ leftIcon: /*#__PURE__*/_jsx(ArrowLeft, {
111
+ size: moderateScale(24),
112
+ color: mergedTheme.colors.textPrimary
113
+ }),
114
+ theme: theme
115
+ })
116
+ })
117
+ }), /*#__PURE__*/_jsxs(View, {
118
+ style: styles.container,
119
+ children: [/*#__PURE__*/_jsx(KeyboardAwareScrollView, {
120
+ style: styles.scrollView,
121
+ contentContainerStyle: styles.scrollContent,
122
+ keyboardShouldPersistTaps: "handled",
123
+ enableOnAndroid: true,
124
+ extraScrollHeight: verticalScale(40),
125
+ showsVerticalScrollIndicator: false,
126
+ contentInsetAdjustmentBehavior: "never",
127
+ keyboardDismissMode: "on-drag",
128
+ children: /*#__PURE__*/_jsxs(View, {
129
+ style: styles.content,
130
+ children: [/*#__PURE__*/_jsx(PaymentMethod, {
131
+ providers: providers || [],
132
+ onProviderChange: p => setProvider(p),
133
+ selectedProvider: provider,
134
+ isLoading: providersLoading,
135
+ error: providersError?.message,
136
+ theme: theme
137
+ }), voucher && /*#__PURE__*/_jsx(VoucherBox, {
138
+ onApply: ({
139
+ voucherCode
140
+ }) => applyCoupon(voucherCode),
141
+ loading: couponLoading,
142
+ couponApplied: !!coupon,
143
+ onRemove: removeCoupon,
144
+ theme: theme
145
+ }), /*#__PURE__*/_jsx(Summary, {
146
+ items: cartItems,
147
+ onRemoveItem: removeItem,
148
+ theme: theme
149
+ })]
150
+ })
151
+ }), /*#__PURE__*/_jsxs(Animated.View, {
152
+ style: [styles.bottomContainer, {
153
+ opacity: bottomOpacity,
154
+ height: isKeyboardOpen ? 0 : 'auto',
155
+ transform: [{
156
+ translateY: bottomTranslateY
157
+ }]
158
+ }],
159
+ pointerEvents: isKeyboardOpen ? 'none' : 'auto',
160
+ children: [hasDiscount ? /*#__PURE__*/_jsxs(View, {
161
+ style: styles.totalRow,
162
+ children: [/*#__PURE__*/_jsx(Text, {
163
+ style: styles.totalLabel,
164
+ children: "Total"
165
+ }), /*#__PURE__*/_jsxs(View, {
166
+ style: styles.totalValues,
167
+ children: [/*#__PURE__*/_jsx(Text, {
168
+ style: styles.totalStrike,
169
+ children: formatCurrency({
170
+ amount: rawAmount,
171
+ minimumFractionDigits: 0
172
+ })
173
+ }), /*#__PURE__*/_jsx(Text, {
174
+ style: styles.totalValue,
175
+ children: formatCurrency({
176
+ amount: totalAmount,
177
+ minimumFractionDigits: 0
178
+ })
179
+ })]
180
+ })]
181
+ }) : null, error ? /*#__PURE__*/_jsx(View, {
182
+ style: styles.errorWrapper,
183
+ children: /*#__PURE__*/_jsx(Text, {
184
+ style: styles.errorText,
185
+ numberOfLines: 2,
186
+ ellipsizeMode: "tail",
187
+ children: error
188
+ })
189
+ }) : null, /*#__PURE__*/_jsx(PayButton, {
190
+ onPaymentInitiate: payNow,
191
+ status: success ? 'success' : loadingPayment ? 'processing' : !provider || totalAmount === 0 ? 'disabled' : 'idle',
192
+ paymentButtonText: `Pay ${formatCurrency({
193
+ amount: totalAmount,
194
+ minimumFractionDigits: 0
195
+ })}`,
196
+ noteText: "Powered by Zezo Pay",
197
+ theme: theme
198
+ })]
199
+ })]
200
+ })]
201
+ })
202
+ });
203
+ };
204
+ const getStyles = colors => StyleSheet.create({
205
+ safeArea: {
206
+ flex: 1,
207
+ backgroundColor: colors.background
208
+ },
209
+ headerSafeArea: {
210
+ backgroundColor: colors.background
211
+ },
212
+ headerWrapper: {
213
+ borderBottomWidth: 1,
214
+ borderBottomColor: colors.borderLight,
215
+ zIndex: 10
216
+ },
217
+ container: {
218
+ flex: 1
219
+ },
220
+ scrollView: {
221
+ flex: 1
222
+ },
223
+ scrollContent: {
224
+ flexGrow: 1,
225
+ paddingTop: verticalScale(10),
226
+ paddingBottom: verticalScale(16)
227
+ },
228
+ content: {
229
+ paddingHorizontal: scale(16)
230
+ },
231
+ bottomContainer: {
232
+ paddingHorizontal: scale(16),
233
+ paddingVertical: verticalScale(10),
234
+ backgroundColor: colors.background,
235
+ borderTopWidth: 1,
236
+ borderTopColor: colors.borderLight,
237
+ alignItems: 'center',
238
+ zIndex: 5
239
+ },
240
+ totalRow: {
241
+ width: '100%',
242
+ flexDirection: 'row',
243
+ alignItems: 'center',
244
+ justifyContent: 'space-between',
245
+ marginBottom: verticalScale(8)
246
+ },
247
+ totalLabel: {
248
+ fontSize: moderateScale(14),
249
+ fontWeight: '600',
250
+ color: colors.textSecondary
251
+ },
252
+ totalValues: {
253
+ flexDirection: 'row',
254
+ alignItems: 'center',
255
+ gap: scale(8)
256
+ },
257
+ totalStrike: {
258
+ fontSize: moderateScale(14),
259
+ color: colors.textSecondary,
260
+ textDecorationLine: 'line-through'
261
+ },
262
+ totalValue: {
263
+ fontSize: moderateScale(16),
264
+ fontWeight: '700',
265
+ color: colors.textPrimary
266
+ },
267
+ errorWrapper: {
268
+ marginTop: verticalScale(-4),
269
+ marginBottom: verticalScale(8),
270
+ width: '100%',
271
+ alignItems: 'center'
272
+ },
273
+ errorText: {
274
+ color: colors.error,
275
+ fontSize: moderateScale(12),
276
+ fontWeight: '500',
277
+ textAlign: 'center'
278
+ }
279
+ });
280
+ export default ZezoPay;
281
+ //# sourceMappingURL=ZezoPay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useMemo","useEffect","useRef","View","StyleSheet","Text","StatusBar","Platform","Animated","ArrowLeft","scale","verticalScale","moderateScale","KeyboardAwareScrollView","SafeAreaProvider","SafeAreaView","Header","PaymentMethod","Summary","PayButton","VoucherBox","useZezoPay","useKeyboard","formatCurrency","mergeTheme","SystemNavigationBar","jsx","_jsx","jsxs","_jsxs","ZezoPay","title","summaryItems","onBack","userInfo","publicKey","digitalProduct","subscription","callbacks","handlePayment","voucher","theme","isKeyboardOpen","mergedTheme","styles","getStyles","colors","bottomOpacity","Value","current","bottomTranslateY","setValue","parallel","timing","toValue","duration","OS","useNativeDriver","start","provider","setProvider","cartItems","totalAmount","rawAmount","success","error","loadingPayment","providers","loading","providersLoading","providersError","removeItem","payNow","applyCoupon","coupon","couponLoading","removeCoupon","user","_id","name","email","phone","cart","paymentHandler","hasDiscount","barStyle","statusBarStyle","setNavigationColor","navigationBarBackground","children","style","safeArea","edges","backgroundColor","headerSafeArea","headerWrapper","leftIcon","size","color","textPrimary","container","scrollView","contentContainerStyle","scrollContent","keyboardShouldPersistTaps","enableOnAndroid","extraScrollHeight","showsVerticalScrollIndicator","contentInsetAdjustmentBehavior","keyboardDismissMode","content","onProviderChange","p","selectedProvider","isLoading","message","onApply","voucherCode","couponApplied","onRemove","items","onRemoveItem","bottomContainer","opacity","height","transform","translateY","pointerEvents","totalRow","totalLabel","totalValues","totalStrike","amount","minimumFractionDigits","totalValue","errorWrapper","errorText","numberOfLines","ellipsizeMode","onPaymentInitiate","status","paymentButtonText","noteText","create","flex","background","borderBottomWidth","borderBottomColor","borderLight","zIndex","flexGrow","paddingTop","paddingBottom","paddingHorizontal","paddingVertical","borderTopWidth","borderTopColor","alignItems","width","flexDirection","justifyContent","marginBottom","fontSize","fontWeight","textSecondary","gap","textDecorationLine","marginTop","textAlign"],"sourceRoot":"../../../src","sources":["zezopay/ZezoPay.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,17 +1,22 @@
1
1
  "use strict";
2
2
 
3
- import React from 'react';
3
+ import React, { useMemo } from 'react';
4
4
  import { View, Text, Pressable, StyleSheet, Platform } from 'react-native';
5
5
  import { ArrowLeft } from 'lucide-react-native';
6
6
  import { scale, moderateScale } from 'react-native-size-matters';
7
+ import { mergeTheme } from "../theme.js";
7
8
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
8
9
  const Header = ({
9
10
  title,
10
11
  titleStyle,
11
12
  containerStyle,
12
13
  leftIcon,
13
- onBack
14
+ onBack,
15
+ theme
14
16
  }) => {
17
+ const isBackEnabled = typeof onBack === 'function';
18
+ const mergedTheme = useMemo(() => mergeTheme(theme), [theme]);
19
+ const styles = useMemo(() => getStyles(mergedTheme.colors), [mergedTheme.colors]);
15
20
  return /*#__PURE__*/_jsxs(View, {
16
21
  style: [styles.header, containerStyle],
17
22
  children: [/*#__PURE__*/_jsx(View, {
@@ -20,8 +25,9 @@ const Header = ({
20
25
  style: styles.backBtnContainer,
21
26
  children: /*#__PURE__*/_jsx(Pressable, {
22
27
  onPress: onBack,
28
+ disabled: !isBackEnabled,
23
29
  android_ripple: {
24
- color: 'rgba(0,0,0,0.1)',
30
+ color: mergedTheme.colors.overlay,
25
31
  borderless: false,
26
32
  radius: scale(100)
27
33
  },
@@ -29,11 +35,16 @@ const Header = ({
29
35
  pressed
30
36
  }) => [styles.backBtnWrapper, pressed && Platform.OS === 'ios' && styles.backBtnPressed],
31
37
  hitSlop: 10,
38
+ accessibilityRole: "button",
39
+ accessibilityLabel: "Go back",
40
+ accessibilityState: {
41
+ disabled: !isBackEnabled
42
+ },
32
43
  children: /*#__PURE__*/_jsx(View, {
33
44
  style: styles.backBtn,
34
45
  children: leftIcon ? leftIcon : /*#__PURE__*/_jsx(ArrowLeft, {
35
46
  size: moderateScale(20),
36
- color: "#000"
47
+ color: mergedTheme.colors.textPrimary
37
48
  })
38
49
  })
39
50
  })
@@ -46,11 +57,11 @@ const Header = ({
46
57
  children: title
47
58
  })
48
59
  }), /*#__PURE__*/_jsx(View, {
49
- style: styles.gridItem
60
+ style: styles.gridItemRight
50
61
  })]
51
62
  });
52
63
  };
53
- const styles = StyleSheet.create({
64
+ const getStyles = colors => StyleSheet.create({
54
65
  header: {
55
66
  flexDirection: 'row',
56
67
  alignItems: 'center',
@@ -65,10 +76,15 @@ const styles = StyleSheet.create({
65
76
  justifyContent: 'center'
66
77
  },
67
78
  gridItemLeft: {
68
- flex: 1,
79
+ width: scale(44),
69
80
  alignItems: 'flex-start',
70
81
  justifyContent: 'center'
71
82
  },
83
+ gridItemRight: {
84
+ width: scale(44),
85
+ alignItems: 'flex-end',
86
+ justifyContent: 'center'
87
+ },
72
88
  backBtnContainer: {
73
89
  borderRadius: scale(100),
74
90
  overflow: 'hidden' // crucial for Android ripple
@@ -84,13 +100,15 @@ const styles = StyleSheet.create({
84
100
  height: scale(35)
85
101
  },
86
102
  backBtnPressed: {
87
- backgroundColor: 'rgba(0,0,0,0.1)' // iOS pressed effect
103
+ backgroundColor: colors.overlay // iOS pressed effect
88
104
  },
89
105
  title: {
90
106
  fontSize: moderateScale(18),
91
107
  fontWeight: '700',
92
- color: '#000',
93
- textAlign: 'center'
108
+ color: colors.textPrimary,
109
+ textAlign: 'center',
110
+ flexShrink: 1,
111
+ flexWrap: 'wrap'
94
112
  }
95
113
  });
96
114
  export default Header;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useMemo","View","Text","Pressable","StyleSheet","Platform","ArrowLeft","scale","moderateScale","mergeTheme","jsx","_jsx","jsxs","_jsxs","Header","title","titleStyle","containerStyle","leftIcon","onBack","theme","isBackEnabled","mergedTheme","styles","getStyles","colors","style","header","children","gridItemLeft","backBtnContainer","onPress","disabled","android_ripple","color","overlay","borderless","radius","pressed","backBtnWrapper","OS","backBtnPressed","hitSlop","accessibilityRole","accessibilityLabel","accessibilityState","backBtn","size","textPrimary","gridItem","numberOfLines","gridItemRight","create","flexDirection","alignItems","width","height","paddingHorizontal","justifyContent","flex","borderRadius","overflow","padding","backgroundColor","fontSize","fontWeight","textAlign","flexShrink","flexWrap"],"sourceRoot":"../../../../src","sources":["zezopay/components/Header.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,192 @@
1
+ "use strict";
2
+
3
+ import React, { useMemo } from 'react';
4
+ import { View, Text, Pressable, StyleSheet, ActivityIndicator } from 'react-native';
5
+ import { scale, verticalScale, moderateScale } from 'react-native-size-matters';
6
+ import LinearGradient from 'react-native-linear-gradient';
7
+ import { CheckCircle, CreditCard } from 'lucide-react-native';
8
+ import { mergeTheme } from "../theme.js";
9
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
+ const PayButton = ({
11
+ onPaymentInitiate,
12
+ status = 'idle',
13
+ paymentButtonText = 'Pay Now',
14
+ paymentProcessingText = 'Processing...',
15
+ paymentSuccessText = 'Payment Successful',
16
+ noteText = 'Powered by Zezo Pay',
17
+ theme
18
+ }) => {
19
+ const mergedTheme = useMemo(() => mergeTheme(theme), [theme]);
20
+ const styles = useMemo(() => getStyles(mergedTheme.colors), [mergedTheme.colors]);
21
+ const gradientMap = useMemo(() => ({
22
+ idle: mergedTheme.gradients.primary,
23
+ processing: mergedTheme.gradients.processing,
24
+ success: mergedTheme.gradients.success,
25
+ disabled: mergedTheme.gradients.disabled
26
+ }), [mergedTheme.gradients]);
27
+ const isSuccess = status === 'success';
28
+ const isProcessing = status === 'processing';
29
+ const isDisabled = status === 'processing' || status === 'disabled';
30
+ const buttonLabel = isProcessing ? paymentProcessingText : paymentButtonText;
31
+ return /*#__PURE__*/_jsxs(View, {
32
+ style: styles.container,
33
+ children: [isSuccess ? /*#__PURE__*/_jsx(View, {
34
+ style: styles.shadowWrapper,
35
+ children: /*#__PURE__*/_jsxs(LinearGradient, {
36
+ colors: gradientMap.success,
37
+ start: {
38
+ x: 0,
39
+ y: 0
40
+ },
41
+ end: {
42
+ x: 1,
43
+ y: 0
44
+ },
45
+ style: styles.paymentButton,
46
+ children: [/*#__PURE__*/_jsx(CheckCircle, {
47
+ size: moderateScale(20),
48
+ color: mergedTheme.colors.onPrimary
49
+ }), /*#__PURE__*/_jsx(Text, {
50
+ style: [styles.successText, styles.successTextSpacing],
51
+ numberOfLines: 1,
52
+ ellipsizeMode: "tail",
53
+ children: paymentSuccessText
54
+ })]
55
+ })
56
+ }) : /*#__PURE__*/_jsx(Pressable, {
57
+ onPress: onPaymentInitiate,
58
+ disabled: isDisabled,
59
+ android_ripple: {
60
+ color: 'rgba(255,255,255,0.2)'
61
+ },
62
+ style: ({
63
+ pressed
64
+ }) => [styles.pressable, pressed && styles.pressed, isDisabled && styles.disabled],
65
+ accessibilityRole: "button",
66
+ accessibilityState: {
67
+ disabled: isDisabled,
68
+ busy: isProcessing
69
+ },
70
+ accessibilityLabel: buttonLabel,
71
+ children: /*#__PURE__*/_jsx(View, {
72
+ style: styles.shadowWrapper,
73
+ children: /*#__PURE__*/_jsx(LinearGradient, {
74
+ colors: gradientMap[status],
75
+ start: {
76
+ x: 0,
77
+ y: 0
78
+ },
79
+ end: {
80
+ x: 1,
81
+ y: 0
82
+ },
83
+ style: styles.paymentButton,
84
+ children: isProcessing ? /*#__PURE__*/_jsxs(View, {
85
+ style: styles.processingContent,
86
+ children: [/*#__PURE__*/_jsx(ActivityIndicator, {
87
+ color: mergedTheme.colors.onPrimary,
88
+ style: styles.processingIndicator
89
+ }), /*#__PURE__*/_jsx(Text, {
90
+ style: styles.paymentText,
91
+ numberOfLines: 1,
92
+ ellipsizeMode: "tail",
93
+ children: paymentProcessingText
94
+ })]
95
+ }) : /*#__PURE__*/_jsxs(View, {
96
+ style: styles.ctaContent,
97
+ children: [/*#__PURE__*/_jsx(CreditCard, {
98
+ size: moderateScale(19),
99
+ color: mergedTheme.colors.onPrimary
100
+ }), /*#__PURE__*/_jsx(Text, {
101
+ style: styles.paymentText,
102
+ numberOfLines: 1,
103
+ ellipsizeMode: "tail",
104
+ children: buttonLabel
105
+ })]
106
+ })
107
+ })
108
+ })
109
+ }), noteText && /*#__PURE__*/_jsx(Text, {
110
+ style: styles.noteText,
111
+ children: noteText
112
+ })]
113
+ });
114
+ };
115
+ const getStyles = colors => StyleSheet.create({
116
+ container: {
117
+ width: '100%',
118
+ alignItems: 'center'
119
+ },
120
+ pressable: {
121
+ width: '100%'
122
+ },
123
+ pressed: {
124
+ opacity: 0.85
125
+ },
126
+ disabled: {
127
+ opacity: 0.7
128
+ },
129
+ shadowWrapper: {
130
+ width: '100%',
131
+ height: verticalScale(52),
132
+ borderRadius: scale(12),
133
+ shadowColor: '#000',
134
+ shadowOffset: {
135
+ width: 0,
136
+ height: 3
137
+ },
138
+ shadowOpacity: 0.2,
139
+ shadowRadius: 4,
140
+ backgroundColor: '#0000',
141
+ justifyContent: 'center',
142
+ overflow: 'hidden'
143
+ },
144
+ paymentButton: {
145
+ width: '100%',
146
+ height: '100%',
147
+ borderRadius: scale(12),
148
+ justifyContent: 'center',
149
+ alignItems: 'center',
150
+ flexDirection: 'row',
151
+ paddingHorizontal: scale(16)
152
+ },
153
+ paymentText: {
154
+ color: colors.onPrimary,
155
+ fontSize: moderateScale(16.5),
156
+ letterSpacing: 0.3,
157
+ fontWeight: '700',
158
+ textAlign: 'center',
159
+ lineHeight: moderateScale(20)
160
+ },
161
+ ctaContent: {
162
+ flexDirection: 'row',
163
+ alignItems: 'center',
164
+ gap: scale(8),
165
+ flexShrink: 1
166
+ },
167
+ processingContent: {
168
+ flexDirection: 'row',
169
+ alignItems: 'center',
170
+ flexShrink: 1
171
+ },
172
+ processingIndicator: {
173
+ marginRight: scale(8)
174
+ },
175
+ successText: {
176
+ color: colors.onPrimary,
177
+ fontSize: moderateScale(18),
178
+ fontWeight: '700'
179
+ },
180
+ successTextSpacing: {
181
+ marginLeft: scale(8)
182
+ },
183
+ noteText: {
184
+ marginTop: verticalScale(10),
185
+ fontSize: moderateScale(12.5),
186
+ fontWeight: '600',
187
+ color: colors.accent,
188
+ textAlign: 'center'
189
+ }
190
+ });
191
+ export default PayButton;
192
+ //# sourceMappingURL=PayButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useMemo","View","Text","Pressable","StyleSheet","ActivityIndicator","scale","verticalScale","moderateScale","LinearGradient","CheckCircle","CreditCard","mergeTheme","jsx","_jsx","jsxs","_jsxs","PayButton","onPaymentInitiate","status","paymentButtonText","paymentProcessingText","paymentSuccessText","noteText","theme","mergedTheme","styles","getStyles","colors","gradientMap","idle","gradients","primary","processing","success","disabled","isSuccess","isProcessing","isDisabled","buttonLabel","style","container","children","shadowWrapper","start","x","y","end","paymentButton","size","color","onPrimary","successText","successTextSpacing","numberOfLines","ellipsizeMode","onPress","android_ripple","pressed","pressable","accessibilityRole","accessibilityState","busy","accessibilityLabel","processingContent","processingIndicator","paymentText","ctaContent","create","width","alignItems","opacity","height","borderRadius","shadowColor","shadowOffset","shadowOpacity","shadowRadius","backgroundColor","justifyContent","overflow","flexDirection","paddingHorizontal","fontSize","letterSpacing","fontWeight","textAlign","lineHeight","gap","flexShrink","marginRight","marginLeft","marginTop","accent"],"sourceRoot":"../../../../src","sources":["zezopay/components/PayButton.tsx"],"mappings":"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","ignoreList":[]}