@zezosoft/react-native-zezopay 1.0.2 → 1.0.4

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 (223) hide show
  1. package/README.md +15 -7
  2. package/lib/module/index.js +1 -1
  3. package/lib/module/zezopay/ZezoPay.js +248 -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/components/VoucherBox.js +206 -0
  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/useZezoPay.helpers.js +217 -0
  26. package/lib/module/zezopay/hooks/useZezoPay.helpers.js.map +1 -0
  27. package/lib/module/zezopay/hooks/useZezoPay.js +219 -0
  28. package/lib/module/zezopay/hooks/useZezoPay.js.map +1 -0
  29. package/lib/module/zezopay/index.js +10 -0
  30. package/lib/module/zezopay/index.js.map +1 -0
  31. package/lib/module/zezopay/payments/providers/iap/IAP.js +201 -0
  32. package/lib/module/zezopay/payments/providers/iap/IAP.js.map +1 -0
  33. package/lib/module/zezopay/payments/providers/index.js +12 -0
  34. package/lib/module/zezopay/payments/providers/index.js.map +1 -0
  35. package/lib/module/zezopay/payments/providers/payment-gateways.types.d.js +2 -0
  36. package/lib/module/zezopay/payments/providers/payment-gateways.types.d.js.map +1 -0
  37. package/lib/module/zezopay/payments/providers/razorpay/Razorpay.js +40 -0
  38. package/lib/module/zezopay/payments/providers/razorpay/Razorpay.js.map +1 -0
  39. package/lib/module/zezopay/payments/providers/stripe/Stripe.js +58 -0
  40. package/lib/module/zezopay/payments/providers/stripe/Stripe.js.map +1 -0
  41. package/lib/module/zezopay/services/api-sdk.js +24 -0
  42. package/lib/module/zezopay/services/api-sdk.js.map +1 -0
  43. package/lib/module/zezopay/services/baseService.js +55 -0
  44. package/lib/module/zezopay/services/baseService.js.map +1 -0
  45. package/lib/module/zezopay/services/common.types.js +2 -0
  46. package/lib/module/zezopay/services/common.types.js.map +1 -0
  47. package/lib/module/zezopay/services/digitalProducts/digitalProducts.js +72 -0
  48. package/lib/module/zezopay/services/digitalProducts/digitalProducts.js.map +1 -0
  49. package/lib/module/zezopay/services/digitalProducts/digitalProducts.types.js +4 -0
  50. package/lib/module/zezopay/services/digitalProducts/digitalProducts.types.js.map +1 -0
  51. package/lib/module/zezopay/services/digitalProducts/index.js +5 -0
  52. package/lib/module/zezopay/services/digitalProducts/index.js.map +1 -0
  53. package/lib/module/zezopay/services/iap/iap.js +20 -0
  54. package/lib/module/zezopay/services/iap/iap.js.map +1 -0
  55. package/lib/module/zezopay/services/iap/iap.types.js +2 -0
  56. package/lib/module/zezopay/services/iap/iap.types.js.map +1 -0
  57. package/lib/module/zezopay/services/iap/index.js +5 -0
  58. package/lib/module/zezopay/services/iap/index.js.map +1 -0
  59. package/lib/module/zezopay/services/index.js +10 -0
  60. package/lib/module/zezopay/services/index.js.map +1 -0
  61. package/lib/module/zezopay/services/payments/index.js +5 -0
  62. package/lib/module/zezopay/services/payments/index.js.map +1 -0
  63. package/lib/module/zezopay/services/payments/payments.js +52 -0
  64. package/lib/module/zezopay/services/payments/payments.js.map +1 -0
  65. package/lib/module/zezopay/services/payments/payments.types.js +52 -0
  66. package/lib/module/zezopay/services/payments/payments.types.js.map +1 -0
  67. package/lib/module/zezopay/services/subscriptions/index.js +5 -0
  68. package/lib/module/zezopay/services/subscriptions/index.js.map +1 -0
  69. package/lib/module/zezopay/services/subscriptions/plan/index.js +5 -0
  70. package/lib/module/zezopay/services/subscriptions/plan/index.js.map +1 -0
  71. package/lib/module/zezopay/services/subscriptions/plan/plan.js +57 -0
  72. package/lib/module/zezopay/services/subscriptions/plan/plan.js.map +1 -0
  73. package/lib/module/zezopay/services/subscriptions/plan/plan.types.js +4 -0
  74. package/lib/module/zezopay/services/subscriptions/plan/plan.types.js.map +1 -0
  75. package/lib/module/zezopay/services/utils/errorFormatter.js +49 -0
  76. package/lib/module/zezopay/services/utils/errorFormatter.js.map +1 -0
  77. package/lib/module/zezopay/services/utils/index.js +4 -0
  78. package/lib/module/zezopay/services/utils/index.js.map +1 -0
  79. package/lib/module/zezopay/theme.js +40 -0
  80. package/lib/module/zezopay/theme.js.map +1 -0
  81. package/lib/module/{ZezoPay → zezopay}/types/index.js.map +1 -1
  82. package/lib/module/{ZezoPay → zezopay}/utils/index.js +2 -1
  83. package/lib/module/zezopay/utils/index.js.map +1 -0
  84. package/lib/typescript/src/index.d.ts +1 -1
  85. package/lib/typescript/src/zezopay/ZezoPay.d.ts.map +1 -0
  86. package/lib/typescript/src/{ZezoPay → zezopay}/components/Header.d.ts +2 -0
  87. package/lib/typescript/src/zezopay/components/Header.d.ts.map +1 -0
  88. package/lib/typescript/src/{ZezoPay → zezopay}/components/PayButton.d.ts +2 -0
  89. package/lib/typescript/src/zezopay/components/PayButton.d.ts.map +1 -0
  90. package/lib/typescript/src/zezopay/components/PaymentMethod.d.ts +15 -0
  91. package/lib/typescript/src/zezopay/components/PaymentMethod.d.ts.map +1 -0
  92. package/lib/typescript/src/zezopay/components/Summary.d.ts +11 -0
  93. package/lib/typescript/src/zezopay/components/Summary.d.ts.map +1 -0
  94. package/lib/typescript/src/zezopay/components/VoucherBox.d.ts +14 -0
  95. package/lib/typescript/src/zezopay/components/VoucherBox.d.ts.map +1 -0
  96. package/lib/typescript/src/zezopay/components/index.d.ts +6 -0
  97. package/lib/typescript/src/zezopay/components/index.d.ts.map +1 -0
  98. package/lib/typescript/src/zezopay/context/ZezoPayContext.d.ts +10 -0
  99. package/lib/typescript/src/zezopay/context/ZezoPayContext.d.ts.map +1 -0
  100. package/lib/typescript/src/zezopay/context/index.d.ts +2 -0
  101. package/lib/typescript/src/zezopay/context/index.d.ts.map +1 -0
  102. package/lib/typescript/src/zezopay/hooks/index.d.ts +4 -0
  103. package/lib/typescript/src/zezopay/hooks/index.d.ts.map +1 -0
  104. package/lib/typescript/src/zezopay/hooks/useAsync.d.ts +8 -0
  105. package/lib/typescript/src/zezopay/hooks/useAsync.d.ts.map +1 -0
  106. package/lib/typescript/src/zezopay/hooks/useZezoPay.d.ts +41 -0
  107. package/lib/typescript/src/zezopay/hooks/useZezoPay.d.ts.map +1 -0
  108. package/lib/typescript/src/zezopay/hooks/useZezoPay.helpers.d.ts +23 -0
  109. package/lib/typescript/src/zezopay/hooks/useZezoPay.helpers.d.ts.map +1 -0
  110. package/lib/typescript/src/zezopay/index.d.ts +8 -0
  111. package/lib/typescript/src/zezopay/index.d.ts.map +1 -0
  112. package/lib/typescript/src/zezopay/payments/providers/iap/IAP.d.ts +17 -0
  113. package/lib/typescript/src/zezopay/payments/providers/iap/IAP.d.ts.map +1 -0
  114. package/lib/typescript/src/zezopay/payments/providers/index.d.ts +9 -0
  115. package/lib/typescript/src/zezopay/payments/providers/index.d.ts.map +1 -0
  116. package/lib/typescript/src/zezopay/payments/providers/razorpay/Razorpay.d.ts.map +1 -0
  117. package/lib/typescript/src/zezopay/payments/providers/stripe/Stripe.d.ts +7 -0
  118. package/lib/typescript/src/zezopay/payments/providers/stripe/Stripe.d.ts.map +1 -0
  119. package/lib/typescript/src/zezopay/services/api-sdk.d.ts +31 -0
  120. package/lib/typescript/src/zezopay/services/api-sdk.d.ts.map +1 -0
  121. package/lib/typescript/src/zezopay/services/baseService.d.ts +9 -0
  122. package/lib/typescript/src/zezopay/services/baseService.d.ts.map +1 -0
  123. package/lib/typescript/src/zezopay/services/common.types.d.ts +25 -0
  124. package/lib/typescript/src/zezopay/services/common.types.d.ts.map +1 -0
  125. package/lib/typescript/src/zezopay/services/digitalProducts/digitalProducts.d.ts +15 -0
  126. package/lib/typescript/src/zezopay/services/digitalProducts/digitalProducts.d.ts.map +1 -0
  127. package/lib/typescript/src/zezopay/services/digitalProducts/digitalProducts.types.d.ts +79 -0
  128. package/lib/typescript/src/zezopay/services/digitalProducts/digitalProducts.types.d.ts.map +1 -0
  129. package/lib/typescript/src/zezopay/services/digitalProducts/index.d.ts +3 -0
  130. package/lib/typescript/src/zezopay/services/digitalProducts/index.d.ts.map +1 -0
  131. package/lib/typescript/src/zezopay/services/iap/iap.d.ts +13 -0
  132. package/lib/typescript/src/zezopay/services/iap/iap.d.ts.map +1 -0
  133. package/lib/typescript/src/zezopay/services/iap/iap.types.d.ts +47 -0
  134. package/lib/typescript/src/zezopay/services/iap/iap.types.d.ts.map +1 -0
  135. package/lib/typescript/src/zezopay/services/iap/index.d.ts +3 -0
  136. package/lib/typescript/src/zezopay/services/iap/index.d.ts.map +1 -0
  137. package/lib/typescript/src/zezopay/services/index.d.ts +9 -0
  138. package/lib/typescript/src/zezopay/services/index.d.ts.map +1 -0
  139. package/lib/typescript/src/zezopay/services/payments/index.d.ts +3 -0
  140. package/lib/typescript/src/zezopay/services/payments/index.d.ts.map +1 -0
  141. package/lib/typescript/src/zezopay/services/payments/payments.d.ts +26 -0
  142. package/lib/typescript/src/zezopay/services/payments/payments.d.ts.map +1 -0
  143. package/lib/typescript/src/zezopay/services/payments/payments.types.d.ts +121 -0
  144. package/lib/typescript/src/zezopay/services/payments/payments.types.d.ts.map +1 -0
  145. package/lib/typescript/src/zezopay/services/subscriptions/index.d.ts +3 -0
  146. package/lib/typescript/src/zezopay/services/subscriptions/index.d.ts.map +1 -0
  147. package/lib/typescript/src/zezopay/services/subscriptions/plan/index.d.ts +3 -0
  148. package/lib/typescript/src/zezopay/services/subscriptions/plan/index.d.ts.map +1 -0
  149. package/lib/typescript/src/zezopay/services/subscriptions/plan/plan.d.ts +19 -0
  150. package/lib/typescript/src/zezopay/services/subscriptions/plan/plan.d.ts.map +1 -0
  151. package/lib/typescript/src/zezopay/services/subscriptions/plan/plan.types.d.ts +64 -0
  152. package/lib/typescript/src/zezopay/services/subscriptions/plan/plan.types.d.ts.map +1 -0
  153. package/lib/typescript/src/zezopay/services/utils/errorFormatter.d.ts +6 -0
  154. package/lib/typescript/src/zezopay/services/utils/errorFormatter.d.ts.map +1 -0
  155. package/lib/typescript/src/zezopay/services/utils/index.d.ts +2 -0
  156. package/lib/typescript/src/zezopay/services/utils/index.d.ts.map +1 -0
  157. package/lib/typescript/src/zezopay/theme.d.ts +38 -0
  158. package/lib/typescript/src/zezopay/theme.d.ts.map +1 -0
  159. package/lib/typescript/src/zezopay/types/index.d.ts +85 -0
  160. package/lib/typescript/src/zezopay/types/index.d.ts.map +1 -0
  161. package/lib/typescript/src/{ZezoPay → zezopay}/utils/index.d.ts.map +1 -1
  162. package/package.json +14 -7
  163. package/lib/module/ZezoPay/Payments/Providers/PaymentGateways.types.d.js +0 -2
  164. package/lib/module/ZezoPay/Payments/Providers/PaymentGateways.types.d.js.map +0 -1
  165. package/lib/module/ZezoPay/Payments/Providers/Razorpay/Razorpay.js +0 -39
  166. package/lib/module/ZezoPay/Payments/Providers/Razorpay/Razorpay.js.map +0 -1
  167. package/lib/module/ZezoPay/Payments/Providers/index.js +0 -10
  168. package/lib/module/ZezoPay/Payments/Providers/index.js.map +0 -1
  169. package/lib/module/ZezoPay/ZezoPay.js +0 -178
  170. package/lib/module/ZezoPay/ZezoPay.js.map +0 -1
  171. package/lib/module/ZezoPay/components/Header.js.map +0 -1
  172. package/lib/module/ZezoPay/components/PayButton.js +0 -143
  173. package/lib/module/ZezoPay/components/PayButton.js.map +0 -1
  174. package/lib/module/ZezoPay/components/PaymentMethod.js.map +0 -1
  175. package/lib/module/ZezoPay/components/Summary.js.map +0 -1
  176. package/lib/module/ZezoPay/components/VoucherBox.js +0 -124
  177. package/lib/module/ZezoPay/components/VoucherBox.js.map +0 -1
  178. package/lib/module/ZezoPay/index.js +0 -5
  179. package/lib/module/ZezoPay/index.js.map +0 -1
  180. package/lib/module/ZezoPay/utils/hooks/useAsync.js +0 -32
  181. package/lib/module/ZezoPay/utils/hooks/useAsync.js.map +0 -1
  182. package/lib/module/ZezoPay/utils/hooks/useZezoPay.js +0 -265
  183. package/lib/module/ZezoPay/utils/hooks/useZezoPay.js.map +0 -1
  184. package/lib/module/ZezoPay/utils/index.js.map +0 -1
  185. package/lib/typescript/src/ZezoPay/Payments/Providers/Razorpay/Razorpay.d.ts.map +0 -1
  186. package/lib/typescript/src/ZezoPay/Payments/Providers/index.d.ts +0 -7
  187. package/lib/typescript/src/ZezoPay/Payments/Providers/index.d.ts.map +0 -1
  188. package/lib/typescript/src/ZezoPay/ZezoPay.d.ts.map +0 -1
  189. package/lib/typescript/src/ZezoPay/components/Header.d.ts.map +0 -1
  190. package/lib/typescript/src/ZezoPay/components/PayButton.d.ts.map +0 -1
  191. package/lib/typescript/src/ZezoPay/components/PaymentMethod.d.ts +0 -12
  192. package/lib/typescript/src/ZezoPay/components/PaymentMethod.d.ts.map +0 -1
  193. package/lib/typescript/src/ZezoPay/components/Summary.d.ts +0 -7
  194. package/lib/typescript/src/ZezoPay/components/Summary.d.ts.map +0 -1
  195. package/lib/typescript/src/ZezoPay/components/VoucherBox.d.ts +0 -9
  196. package/lib/typescript/src/ZezoPay/components/VoucherBox.d.ts.map +0 -1
  197. package/lib/typescript/src/ZezoPay/index.d.ts +0 -3
  198. package/lib/typescript/src/ZezoPay/index.d.ts.map +0 -1
  199. package/lib/typescript/src/ZezoPay/types/index.d.ts +0 -66
  200. package/lib/typescript/src/ZezoPay/types/index.d.ts.map +0 -1
  201. package/lib/typescript/src/ZezoPay/utils/hooks/useAsync.d.ts +0 -6
  202. package/lib/typescript/src/ZezoPay/utils/hooks/useAsync.d.ts.map +0 -1
  203. package/lib/typescript/src/ZezoPay/utils/hooks/useZezoPay.d.ts +0 -46
  204. package/lib/typescript/src/ZezoPay/utils/hooks/useZezoPay.d.ts.map +0 -1
  205. package/src/ZezoPay/Payments/Providers/PaymentGateways.types.d.ts +0 -48
  206. package/src/ZezoPay/Payments/Providers/Razorpay/Razorpay.ts +0 -46
  207. package/src/ZezoPay/Payments/Providers/index.ts +0 -8
  208. package/src/ZezoPay/ZezoPay.tsx +0 -176
  209. package/src/ZezoPay/components/Header.tsx +0 -107
  210. package/src/ZezoPay/components/PayButton.tsx +0 -132
  211. package/src/ZezoPay/components/PaymentMethod.tsx +0 -263
  212. package/src/ZezoPay/components/Summary.tsx +0 -188
  213. package/src/ZezoPay/components/VoucherBox.tsx +0 -133
  214. package/src/ZezoPay/index.ts +0 -2
  215. package/src/ZezoPay/types/index.ts +0 -70
  216. package/src/ZezoPay/utils/hooks/useAsync.ts +0 -38
  217. package/src/ZezoPay/utils/hooks/useZezoPay.ts +0 -320
  218. package/src/ZezoPay/utils/index.ts +0 -16
  219. package/src/index.tsx +0 -1
  220. /package/lib/module/{ZezoPay → zezopay}/types/index.js +0 -0
  221. /package/lib/typescript/src/{ZezoPay → zezopay}/ZezoPay.d.ts +0 -0
  222. /package/lib/typescript/src/{ZezoPay/Payments/Providers/Razorpay → zezopay/payments/providers/razorpay}/Razorpay.d.ts +0 -0
  223. /package/lib/typescript/src/{ZezoPay → zezopay}/utils/index.d.ts +0 -0
@@ -0,0 +1,206 @@
1
+ "use strict";
2
+
3
+ import React, { useCallback, useMemo, useState } from 'react';
4
+ import { View, Text, TextInput, StyleSheet, TouchableOpacity, ActivityIndicator } from 'react-native';
5
+ import LinearGradient from 'react-native-linear-gradient';
6
+ import { scale, verticalScale, moderateScale } from 'react-native-size-matters';
7
+ import { mergeTheme } from "../theme.js";
8
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
+ const VoucherBox = ({
10
+ onApply,
11
+ loading = false,
12
+ couponApplied = false,
13
+ onRemove,
14
+ theme
15
+ }) => {
16
+ const [voucher, setVoucher] = useState('');
17
+ const trimmedVoucher = voucher.trim();
18
+ const isApplyDisabled = !trimmedVoucher || loading;
19
+ const mergedTheme = useMemo(() => mergeTheme(theme), [theme]);
20
+ const styles = useMemo(() => getStyles(mergedTheme.colors), [mergedTheme.colors]);
21
+ const handleChange = useCallback(text => {
22
+ setVoucher(text.toUpperCase());
23
+ }, []);
24
+ const handleApply = useCallback(() => {
25
+ if (isApplyDisabled) return;
26
+ onApply?.({
27
+ voucherCode: trimmedVoucher.toUpperCase()
28
+ });
29
+ }, [isApplyDisabled, trimmedVoucher, onApply]);
30
+ const handleRemove = useCallback(() => {
31
+ setVoucher('');
32
+ onRemove?.();
33
+ }, [onRemove]);
34
+ return /*#__PURE__*/_jsxs(View, {
35
+ style: styles.container,
36
+ children: [/*#__PURE__*/_jsx(Text, {
37
+ style: styles.title,
38
+ children: "Voucher"
39
+ }), couponApplied ?
40
+ /*#__PURE__*/
41
+ // Display applied voucher with remove button
42
+ _jsxs(View, {
43
+ style: styles.appliedWrapper,
44
+ children: [/*#__PURE__*/_jsx(Text, {
45
+ style: styles.appliedText,
46
+ children: trimmedVoucher || 'Voucher applied'
47
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
48
+ style: styles.removeButton,
49
+ onPress: handleRemove,
50
+ accessibilityRole: "button",
51
+ accessibilityLabel: "Remove voucher",
52
+ children: /*#__PURE__*/_jsx(Text, {
53
+ style: styles.removeText,
54
+ children: "Remove"
55
+ })
56
+ })]
57
+ }) :
58
+ /*#__PURE__*/
59
+ // Input for new voucher
60
+ _jsxs(View, {
61
+ style: [styles.inputWrapper, loading && styles.inputLoading],
62
+ children: [/*#__PURE__*/_jsx(TextInput, {
63
+ placeholder: "Enter code...",
64
+ style: [styles.input, isApplyDisabled && styles.inputDisabled],
65
+ value: voucher,
66
+ onChangeText: handleChange,
67
+ autoCapitalize: "characters",
68
+ autoCorrect: false,
69
+ autoComplete: "off",
70
+ editable: !loading,
71
+ accessibilityLabel: "Voucher code input",
72
+ returnKeyType: "done",
73
+ onSubmitEditing: handleApply,
74
+ placeholderTextColor: mergedTheme.colors.placeholder
75
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
76
+ style: [styles.button, isApplyDisabled ? styles.buttonDisabled : styles.buttonEnabled],
77
+ onPress: handleApply,
78
+ disabled: isApplyDisabled,
79
+ activeOpacity: 0.8,
80
+ accessibilityRole: "button",
81
+ accessibilityLabel: "Apply voucher code",
82
+ children: /*#__PURE__*/_jsx(LinearGradient, {
83
+ colors: trimmedVoucher && !loading ? mergedTheme.gradients.primary : mergedTheme.gradients.disabled,
84
+ style: styles.gradient,
85
+ start: {
86
+ x: 0,
87
+ y: 0
88
+ },
89
+ end: {
90
+ x: 1,
91
+ y: 0
92
+ },
93
+ children: loading ? /*#__PURE__*/_jsx(ActivityIndicator, {
94
+ size: "small",
95
+ color: mergedTheme.colors.onPrimary
96
+ }) : /*#__PURE__*/_jsx(Text, {
97
+ style: [styles.buttonText, isApplyDisabled && styles.disabledButtonText],
98
+ children: "Apply"
99
+ })
100
+ })
101
+ })]
102
+ })]
103
+ });
104
+ };
105
+ const getStyles = colors => StyleSheet.create({
106
+ container: {
107
+ marginBottom: verticalScale(12)
108
+ },
109
+ title: {
110
+ fontSize: moderateScale(16),
111
+ fontWeight: '700',
112
+ color: colors.textPrimary,
113
+ marginBottom: verticalScale(8)
114
+ },
115
+ inputWrapper: {
116
+ flexDirection: 'row',
117
+ alignItems: 'center',
118
+ backgroundColor: colors.background,
119
+ height: moderateScale(48),
120
+ width: '100%',
121
+ overflow: 'hidden'
122
+ },
123
+ inputDisabled: {
124
+ backgroundColor: colors.sectionBackground,
125
+ borderColor: colors.disabled
126
+ },
127
+ inputLoading: {
128
+ opacity: 0.85
129
+ },
130
+ input: {
131
+ flex: 1,
132
+ height: '100%',
133
+ fontSize: moderateScale(14),
134
+ paddingHorizontal: scale(14),
135
+ borderLeftWidth: scale(1),
136
+ borderTopWidth: scale(1),
137
+ borderBottomWidth: scale(1.5),
138
+ borderColor: colors.primary,
139
+ borderTopLeftRadius: scale(12),
140
+ borderBottomLeftRadius: scale(12),
141
+ color: colors.textPrimary
142
+ },
143
+ button: {
144
+ minWidth: scale(84),
145
+ overflow: 'hidden',
146
+ justifyContent: 'center',
147
+ alignItems: 'center',
148
+ borderTopRightRadius: scale(12),
149
+ borderBottomRightRadius: scale(12)
150
+ },
151
+ buttonEnabled: {
152
+ borderRightWidth: 1,
153
+ borderTopWidth: 1,
154
+ borderBottomWidth: 1,
155
+ borderColor: colors.primary
156
+ },
157
+ buttonDisabled: {
158
+ borderRightWidth: 1,
159
+ borderTopWidth: 1,
160
+ borderBottomWidth: 1,
161
+ borderColor: colors.disabled
162
+ },
163
+ gradient: {
164
+ width: '100%',
165
+ height: '100%',
166
+ alignItems: 'center',
167
+ justifyContent: 'center'
168
+ },
169
+ buttonText: {
170
+ color: colors.onPrimary,
171
+ fontWeight: '700',
172
+ fontSize: moderateScale(15),
173
+ textTransform: 'uppercase'
174
+ },
175
+ disabledButtonText: {
176
+ opacity: 0.8
177
+ },
178
+ appliedWrapper: {
179
+ flexDirection: 'row',
180
+ justifyContent: 'space-between',
181
+ alignItems: 'center',
182
+ borderColor: colors.primary,
183
+ borderWidth: 1,
184
+ backgroundColor: colors.sectionBackground,
185
+ borderRadius: scale(12),
186
+ paddingHorizontal: scale(12),
187
+ paddingVertical: verticalScale(10)
188
+ },
189
+ appliedText: {
190
+ fontSize: moderateScale(14),
191
+ fontWeight: '600',
192
+ color: colors.textPrimary,
193
+ textTransform: 'uppercase'
194
+ },
195
+ removeButton: {
196
+ paddingHorizontal: scale(5),
197
+ paddingVertical: verticalScale(4)
198
+ },
199
+ removeText: {
200
+ fontSize: moderateScale(14),
201
+ fontWeight: '700',
202
+ color: colors.primary
203
+ }
204
+ });
205
+ export default VoucherBox;
206
+ //# sourceMappingURL=VoucherBox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useCallback","useMemo","useState","View","Text","TextInput","StyleSheet","TouchableOpacity","ActivityIndicator","LinearGradient","scale","verticalScale","moderateScale","mergeTheme","jsx","_jsx","jsxs","_jsxs","VoucherBox","onApply","loading","couponApplied","onRemove","theme","voucher","setVoucher","trimmedVoucher","trim","isApplyDisabled","mergedTheme","styles","getStyles","colors","handleChange","text","toUpperCase","handleApply","voucherCode","handleRemove","style","container","children","title","appliedWrapper","appliedText","removeButton","onPress","accessibilityRole","accessibilityLabel","removeText","inputWrapper","inputLoading","placeholder","input","inputDisabled","value","onChangeText","autoCapitalize","autoCorrect","autoComplete","editable","returnKeyType","onSubmitEditing","placeholderTextColor","button","buttonDisabled","buttonEnabled","disabled","activeOpacity","gradients","primary","gradient","start","x","y","end","size","color","onPrimary","buttonText","disabledButtonText","create","marginBottom","fontSize","fontWeight","textPrimary","flexDirection","alignItems","backgroundColor","background","height","width","overflow","sectionBackground","borderColor","opacity","flex","paddingHorizontal","borderLeftWidth","borderTopWidth","borderBottomWidth","borderTopLeftRadius","borderBottomLeftRadius","minWidth","justifyContent","borderTopRightRadius","borderBottomRightRadius","borderRightWidth","textTransform","borderWidth","borderRadius","paddingVertical"],"sourceRoot":"../../../../src","sources":["zezopay/components/VoucherBox.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ export { default as Header } from "./Header.js";
4
+ export { default as PayButton } from "./PayButton.js";
5
+ export { default as PaymentMethod } from "./PaymentMethod.js";
6
+ export { Summary } from "./Summary.js";
7
+ export { default as VoucherBox } from "./VoucherBox.js";
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["default","Header","PayButton","PaymentMethod","Summary","VoucherBox"],"sourceRoot":"../../../../src","sources":["zezopay/components/index.ts"],"mappings":";;AAAA,SAASA,OAAO,IAAIC,MAAM,QAAQ,aAAU;AAC5C,SAASD,OAAO,IAAIE,SAAS,QAAQ,gBAAa;AAClD,SAASF,OAAO,IAAIG,aAAa,QAAQ,oBAAiB;AAC1D,SAASC,OAAO,QAAQ,cAAW;AACnC,SAASJ,OAAO,IAAIK,UAAU,QAAQ,iBAAc","ignoreList":[]}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ import React, { createContext, useContext } from 'react';
4
+ import { useZezoPay } from "../hooks/index.js";
5
+ import { jsx as _jsx } from "react/jsx-runtime";
6
+ const ZezoPayContext = /*#__PURE__*/createContext(undefined);
7
+ export const ZezoPayProvider = ({
8
+ children,
9
+ ...config
10
+ }) => {
11
+ const value = useZezoPay(config);
12
+ return /*#__PURE__*/_jsx(ZezoPayContext.Provider, {
13
+ value: value,
14
+ children: children
15
+ });
16
+ };
17
+ export const useZezoPayContext = () => {
18
+ const context = useContext(ZezoPayContext);
19
+ if (!context) {
20
+ throw new Error('useZezoPayContext must be used within a ZezoPayProvider');
21
+ }
22
+ return context;
23
+ };
24
+ //# sourceMappingURL=ZezoPayContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","createContext","useContext","useZezoPay","jsx","_jsx","ZezoPayContext","undefined","ZezoPayProvider","children","config","value","Provider","useZezoPayContext","context","Error"],"sourceRoot":"../../../../src","sources":["zezopay/context/ZezoPayContext.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,aAAa,EAAEC,UAAU,QAAwB,OAAO;AACxE,SAASC,UAAU,QAA+B,mBAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAI7D,MAAMC,cAAc,gBAAGL,aAAa,CAClCM,SACF,CAAC;AAMD,OAAO,MAAMC,eAA+C,GAAGA,CAAC;EAC9DC,QAAQ;EACR,GAAGC;AACL,CAAC,KAAK;EACJ,MAAMC,KAAK,GAAGR,UAAU,CAACO,MAAM,CAAC;EAEhC,oBACEL,IAAA,CAACC,cAAc,CAACM,QAAQ;IAACD,KAAK,EAAEA,KAAM;IAAAF,QAAA,EAAEA;EAAQ,CAA0B,CAAC;AAE/E,CAAC;AAED,OAAO,MAAMI,iBAAiB,GAAGA,CAAA,KAA2B;EAC1D,MAAMC,OAAO,GAAGZ,UAAU,CAACI,cAAc,CAAC;EAE1C,IAAI,CAACQ,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CAAC,yDAAyD,CAAC;EAC5E;EAEA,OAAOD,OAAO;AAChB,CAAC","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export * from "./ZezoPayContext.js";
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["zezopay/context/index.ts"],"mappings":";;AAAA,cAAc,qBAAkB","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ export { useAsync } from "./useAsync.js";
4
+ export { useZezoPay } from "./useZezoPay.js";
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useAsync","useZezoPay"],"sourceRoot":"../../../../src","sources":["zezopay/hooks/index.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,eAAY;AACrC,SAASC,UAAU,QAAQ,iBAAc","ignoreList":[]}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ import { useEffect, useState } from 'react';
4
+ function toError(err) {
5
+ if (err instanceof Error) return err;
6
+ if (err != null && typeof err === 'object' && 'message' in err) {
7
+ const msg = err.message;
8
+ return new Error(msg != null ? String(msg) : 'Unknown error');
9
+ }
10
+ return new Error(String(err ?? 'Unknown error'));
11
+ }
12
+ export function useAsync(asyncFn, deps = []) {
13
+ const [result, setResult] = useState(null);
14
+ const [loading, setLoading] = useState(true);
15
+ const [error, setError] = useState(null);
16
+ useEffect(() => {
17
+ let mounted = true;
18
+ setLoading(true);
19
+ const run = async () => {
20
+ try {
21
+ const res = await asyncFn();
22
+ if (mounted) {
23
+ setResult(res);
24
+ setError(null);
25
+ }
26
+ } catch (err) {
27
+ if (mounted) setError(toError(err));
28
+ } finally {
29
+ if (mounted) setLoading(false);
30
+ }
31
+ };
32
+ run();
33
+ return () => {
34
+ mounted = false;
35
+ };
36
+ // eslint-disable-next-line react-hooks/exhaustive-deps -- deps are passed by caller
37
+ }, deps);
38
+ return {
39
+ result,
40
+ loading,
41
+ error
42
+ };
43
+ }
44
+ //# sourceMappingURL=useAsync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useEffect","useState","toError","err","Error","msg","message","String","useAsync","asyncFn","deps","result","setResult","loading","setLoading","error","setError","mounted","run","res"],"sourceRoot":"../../../../src","sources":["zezopay/hooks/useAsync.ts"],"mappings":";;AAAA,SAA8BA,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAEhE,SAASC,OAAOA,CAACC,GAAY,EAAS;EACpC,IAAIA,GAAG,YAAYC,KAAK,EAAE,OAAOD,GAAG;EACpC,IAAIA,GAAG,IAAI,IAAI,IAAI,OAAOA,GAAG,KAAK,QAAQ,IAAI,SAAS,IAAIA,GAAG,EAAE;IAC9D,MAAME,GAAG,GAAIF,GAAG,CAA2BG,OAAO;IAClD,OAAO,IAAIF,KAAK,CAACC,GAAG,IAAI,IAAI,GAAGE,MAAM,CAACF,GAAG,CAAC,GAAG,eAAe,CAAC;EAC/D;EACA,OAAO,IAAID,KAAK,CAACG,MAAM,CAACJ,GAAG,IAAI,eAAe,CAAC,CAAC;AAClD;AAQA,OAAO,SAASK,QAAQA,CACtBC,OAAyB,EACzBC,IAAoB,GAAG,EAAE,EACN;EACnB,MAAM,CAACC,MAAM,EAAEC,SAAS,CAAC,GAAGX,QAAQ,CAAW,IAAI,CAAC;EACpD,MAAM,CAACY,OAAO,EAAEC,UAAU,CAAC,GAAGb,QAAQ,CAAC,IAAI,CAAC;EAC5C,MAAM,CAACc,KAAK,EAAEC,QAAQ,CAAC,GAAGf,QAAQ,CAAe,IAAI,CAAC;EAEtDD,SAAS,CAAC,MAAM;IACd,IAAIiB,OAAO,GAAG,IAAI;IAClBH,UAAU,CAAC,IAAI,CAAC;IAEhB,MAAMI,GAAG,GAAG,MAAAA,CAAA,KAA2B;MACrC,IAAI;QACF,MAAMC,GAAG,GAAG,MAAMV,OAAO,CAAC,CAAC;QAC3B,IAAIQ,OAAO,EAAE;UACXL,SAAS,CAACO,GAAG,CAAC;UACdH,QAAQ,CAAC,IAAI,CAAC;QAChB;MACF,CAAC,CAAC,OAAOb,GAAG,EAAE;QACZ,IAAIc,OAAO,EAAED,QAAQ,CAACd,OAAO,CAACC,GAAG,CAAC,CAAC;MACrC,CAAC,SAAS;QACR,IAAIc,OAAO,EAAEH,UAAU,CAAC,KAAK,CAAC;MAChC;IACF,CAAC;IACDI,GAAG,CAAC,CAAC;IAEL,OAAO,MAAM;MACXD,OAAO,GAAG,KAAK;IACjB,CAAC;IACD;EACF,CAAC,EAAEP,IAAI,CAAC;EAER,OAAO;IAAEC,MAAM;IAAEE,OAAO;IAAEE;EAAM,CAAC;AACnC","ignoreList":[]}
@@ -0,0 +1,217 @@
1
+ "use strict";
2
+
3
+ import { formatAPIError, PaymentProvider } from "../services/index.js";
4
+ import { IAP, Razorpay, Stripe } from "../payments/providers/index.js";
5
+ import { Platform } from 'react-native';
6
+ const SUPPORTED_PURCHASE_TYPES = ['subs', 'in-app'];
7
+
8
+ /** User-friendly messages for known IAP error codes (react-native-iap) */
9
+ const IAP_ERROR_MESSAGES = {
10
+ 'already-owned': 'You already own this item. Try restoring purchases if needed.',
11
+ 'developer-error': 'Invalid purchase request. Check product setup in the store.',
12
+ 'purchase-cancelled': 'Purchase was cancelled.',
13
+ 'purchase-timeout': 'Purchase timed out. Please try again.',
14
+ 'item-unavailable': 'This item is not available for purchase.',
15
+ 'service-unavailable': 'Store is temporarily unavailable. Please try again.',
16
+ 'billing-unavailable': 'Billing is not available on this device.'
17
+ };
18
+ function extractMessage(err) {
19
+ if (err.message) return err.message;
20
+ if (err.description) return err.description;
21
+ if (err.details?.error?.description) return err.details.error.description;
22
+ if (err.details?.error?.message) return err.details.error.message;
23
+ if (err.error?.message) return err.error.message;
24
+ if (err.response?.data?.message) return err.response.data.message;
25
+ return undefined;
26
+ }
27
+ export const getErrorMessage = (err, fallback) => {
28
+ if (!err) return fallback;
29
+ if (typeof err === 'string') return err;
30
+ if (err instanceof Error && err.message) return err.message;
31
+ const e = err;
32
+ if (e?.code && IAP_ERROR_MESSAGES[e.code]) {
33
+ return IAP_ERROR_MESSAGES[e.code] ?? e.message ?? fallback;
34
+ }
35
+ return extractMessage(e) || formatAPIError(err).message || fallback;
36
+ };
37
+
38
+ /** First defined value from extraData for given keys (camel or snake). */
39
+ function getExtra(extra, ...keys) {
40
+ if (!extra) return undefined;
41
+ for (const k of keys) {
42
+ const v = extra[k];
43
+ if (v != null && typeof v === 'string') return v;
44
+ }
45
+ return undefined;
46
+ }
47
+ export const getStripeClientSecret = order => {
48
+ const direct = order.paymentIntentClientSecret ?? order.clientSecret ?? order.payment_intent_client_secret;
49
+ if (direct) return direct;
50
+ const fromExtra = getExtra(order.extraData, 'paymentIntentClientSecret', 'clientSecret', 'payment_intent_client_secret');
51
+ if (fromExtra) return fromExtra;
52
+ return typeof order.orderId === 'string' && order.orderId.includes('_secret_') ? order.orderId : undefined;
53
+ };
54
+ export const getItemPrice = item => {
55
+ let price = item.price ?? 0;
56
+ const d = item.discount;
57
+ if (!d) return price;
58
+ if (typeof d === 'number') return price * (100 - d) / 100;
59
+ if (d.type === 'percentage') return price * (100 - d.amount) / 100;
60
+ if (d.type === 'fixed') return Math.max(0, price - d.amount);
61
+ return price;
62
+ };
63
+ function getPrefill(user) {
64
+ return {
65
+ user_name: user.name,
66
+ user_email: user.email,
67
+ user_phone: user.phone
68
+ };
69
+ }
70
+ function createPaymentHandlers(setSuccess, setError, callbacks, fallbackMessage = 'Payment failed') {
71
+ const reportSuccess = () => {
72
+ setSuccess(true);
73
+ setError('');
74
+ };
75
+ const handleError = (err, fallback) => {
76
+ setError(getErrorMessage(err, fallback ?? fallbackMessage));
77
+ callbacks?.onFailure?.(err);
78
+ };
79
+ return {
80
+ reportSuccess,
81
+ handleError
82
+ };
83
+ }
84
+ export const processPaymentOrder = async ({
85
+ zezoPayClient,
86
+ order,
87
+ provider,
88
+ callbacks,
89
+ publicKey,
90
+ user,
91
+ digitalProduct,
92
+ setSuccess,
93
+ setError
94
+ }) => {
95
+ if (!provider) throw new Error('No payment provider selected');
96
+ if (!order?.orderId || !order?.price || !order?.currency) {
97
+ throw new Error('Invalid order');
98
+ }
99
+ const extra = order.extraData ?? {};
100
+ const prefill = getPrefill(user);
101
+ const {
102
+ reportSuccess,
103
+ handleError
104
+ } = createPaymentHandlers(setSuccess, setError, callbacks);
105
+ if (provider === PaymentProvider.RAZORPAY) {
106
+ const razorpay = new Razorpay();
107
+ await razorpay.open({
108
+ amount: order.price * 100,
109
+ currency: order.currency,
110
+ order_id: order.orderId,
111
+ publicKey: order.publicKey ?? publicKey,
112
+ handler(response) {
113
+ if (response.razorpay_payment_id) {
114
+ callbacks?.onSuccess?.({
115
+ status: 'success',
116
+ order_id: response.razorpay_order_id,
117
+ signature: response.razorpay_signature,
118
+ payment_id: response.razorpay_payment_id,
119
+ ...response
120
+ });
121
+ reportSuccess();
122
+ } else {
123
+ handleError(new Error('Payment failed: missing payment ID'));
124
+ }
125
+ },
126
+ OnError: err => handleError(err),
127
+ prefill
128
+ });
129
+ return;
130
+ }
131
+ if (provider === PaymentProvider.STRIPE) {
132
+ const stripeClientSecret = getStripeClientSecret(order);
133
+ const stripe = new Stripe();
134
+ await stripe.open({
135
+ amount: order.price,
136
+ currency: order.currency,
137
+ order_id: order.orderId,
138
+ publicKey: order.publicKey ?? publicKey,
139
+ paymentIntentClientSecret: stripeClientSecret,
140
+ customerId: getExtra(extra, 'customerId', 'customer_id'),
141
+ customerEphemeralKeySecret: getExtra(extra, 'customerEphemeralKeySecret', 'ephemeralKey', 'customer_ephemeral_key'),
142
+ merchantDisplayName: getExtra(extra, 'merchantDisplayName', 'merchant_display_name') ?? 'ZezoPay',
143
+ returnURL: getExtra(extra, 'returnURL', 'return_url'),
144
+ handler(response) {
145
+ if (response?.paymentIntentClientSecret) {
146
+ callbacks?.onSuccess?.({
147
+ status: 'success',
148
+ provider: 'stripe',
149
+ order_id: order.orderId,
150
+ payment_intent_client_secret: response.paymentIntentClientSecret,
151
+ ...response
152
+ });
153
+ reportSuccess();
154
+ } else {
155
+ handleError(new Error('Payment failed: missing payment intent client secret'));
156
+ }
157
+ },
158
+ OnError: err => handleError(err),
159
+ prefill
160
+ });
161
+ return;
162
+ }
163
+ if (provider === PaymentProvider.APPLE_IAP || provider === PaymentProvider.GOOGLE_IAP) {
164
+ const purchaseType = order.purchase_type;
165
+ if (!purchaseType || !SUPPORTED_PURCHASE_TYPES.includes(purchaseType)) {
166
+ handleError(new Error(`IAP only supports purchase_type: 'subs' or 'in-app'. Received: ${purchaseType ?? 'undefined'}`));
167
+ return;
168
+ }
169
+ const platform = Platform.OS;
170
+ const iapProductId = (platform === 'android' ? order.android_sku_id : order.ios_sku_id) ?? getExtra(extra, 'iapProductId', 'iap_product_id') ?? digitalProduct?.ios_sku_id ?? digitalProduct?.android_sku_id;
171
+ if (!iapProductId) {
172
+ handleError(new Error('IAP productId is required'));
173
+ return;
174
+ }
175
+ const iap = new IAP(zezoPayClient);
176
+ await iap.open({
177
+ amount: order.price,
178
+ currency: order.currency,
179
+ order_id: order.orderId,
180
+ publicKey: order.publicKey ?? publicKey,
181
+ provider,
182
+ productId: iapProductId,
183
+ productType: purchaseType,
184
+ isConsumable: extra.isConsumable ?? purchaseType === 'in-app',
185
+ finishTransactionAutomatically: extra.finishTransactionAutomatically,
186
+ prefetchProducts: extra.prefetchProducts,
187
+ requestOptions: extra.requestOptions ?? undefined,
188
+ async handler(response) {
189
+ if (response?.purchaseToken) {
190
+ try {
191
+ callbacks?.onSuccess?.({
192
+ status: 'success',
193
+ provider,
194
+ order_id: order.orderId,
195
+ purchase_type: purchaseType,
196
+ iap_product_id: iapProductId,
197
+ transaction_id: response.transactionId,
198
+ transaction_receipt: response.transactionReceipt,
199
+ purchase_token: response.purchaseToken,
200
+ raw_purchase: response.rawPurchase,
201
+ ...response
202
+ });
203
+ reportSuccess();
204
+ } catch (err) {
205
+ handleError(err, 'Payment Verification Failed');
206
+ }
207
+ } else {
208
+ handleError(new Error('IAP purchase failed: No purchase token received'));
209
+ }
210
+ },
211
+ OnError: err => handleError(err)
212
+ });
213
+ return;
214
+ }
215
+ throw new Error(`Unsupported provider: ${provider}`);
216
+ };
217
+ //# sourceMappingURL=useZezoPay.helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["formatAPIError","PaymentProvider","IAP","Razorpay","Stripe","Platform","SUPPORTED_PURCHASE_TYPES","IAP_ERROR_MESSAGES","extractMessage","err","message","description","details","error","response","data","undefined","getErrorMessage","fallback","Error","e","code","getExtra","extra","keys","k","v","getStripeClientSecret","order","direct","paymentIntentClientSecret","clientSecret","payment_intent_client_secret","fromExtra","extraData","orderId","includes","getItemPrice","item","price","d","discount","type","amount","Math","max","getPrefill","user","user_name","name","user_email","email","user_phone","phone","createPaymentHandlers","setSuccess","setError","callbacks","fallbackMessage","reportSuccess","handleError","onFailure","processPaymentOrder","zezoPayClient","provider","publicKey","digitalProduct","currency","prefill","RAZORPAY","razorpay","open","order_id","handler","razorpay_payment_id","onSuccess","status","razorpay_order_id","signature","razorpay_signature","payment_id","OnError","STRIPE","stripeClientSecret","stripe","customerId","customerEphemeralKeySecret","merchantDisplayName","returnURL","APPLE_IAP","GOOGLE_IAP","purchaseType","purchase_type","platform","OS","iapProductId","android_sku_id","ios_sku_id","iap","productId","productType","isConsumable","finishTransactionAutomatically","prefetchProducts","requestOptions","purchaseToken","iap_product_id","transaction_id","transactionId","transaction_receipt","transactionReceipt","purchase_token","raw_purchase","rawPurchase"],"sourceRoot":"../../../../src","sources":["zezopay/hooks/useZezoPay.helpers.ts"],"mappings":"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","ignoreList":[]}