@zezosoft/react-native-zezopay 1.0.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 (78) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +150 -0
  3. package/lib/module/ZezoPay/Payments/Providers/PaymentGateways.types.d.js +2 -0
  4. package/lib/module/ZezoPay/Payments/Providers/PaymentGateways.types.d.js.map +1 -0
  5. package/lib/module/ZezoPay/Payments/Providers/Razorpay/Razorpay.js +39 -0
  6. package/lib/module/ZezoPay/Payments/Providers/Razorpay/Razorpay.js.map +1 -0
  7. package/lib/module/ZezoPay/Payments/Providers/index.js +10 -0
  8. package/lib/module/ZezoPay/Payments/Providers/index.js.map +1 -0
  9. package/lib/module/ZezoPay/ZezoPay.js +176 -0
  10. package/lib/module/ZezoPay/ZezoPay.js.map +1 -0
  11. package/lib/module/ZezoPay/components/Header.js +97 -0
  12. package/lib/module/ZezoPay/components/Header.js.map +1 -0
  13. package/lib/module/ZezoPay/components/PayButton.js +143 -0
  14. package/lib/module/ZezoPay/components/PayButton.js.map +1 -0
  15. package/lib/module/ZezoPay/components/PaymentMethod.js +250 -0
  16. package/lib/module/ZezoPay/components/PaymentMethod.js.map +1 -0
  17. package/lib/module/ZezoPay/components/Summary.js +184 -0
  18. package/lib/module/ZezoPay/components/Summary.js.map +1 -0
  19. package/lib/module/ZezoPay/components/VoucherBox.js +124 -0
  20. package/lib/module/ZezoPay/components/VoucherBox.js.map +1 -0
  21. package/lib/module/ZezoPay/index.js +5 -0
  22. package/lib/module/ZezoPay/index.js.map +1 -0
  23. package/lib/module/ZezoPay/types/index.js +4 -0
  24. package/lib/module/ZezoPay/types/index.js.map +1 -0
  25. package/lib/module/ZezoPay/utils/hooks/useAsync.js +32 -0
  26. package/lib/module/ZezoPay/utils/hooks/useAsync.js.map +1 -0
  27. package/lib/module/ZezoPay/utils/hooks/useZezoPay.js +270 -0
  28. package/lib/module/ZezoPay/utils/hooks/useZezoPay.js.map +1 -0
  29. package/lib/module/ZezoPay/utils/index.js +15 -0
  30. package/lib/module/ZezoPay/utils/index.js.map +1 -0
  31. package/lib/module/index.js +4 -0
  32. package/lib/module/index.js.map +1 -0
  33. package/lib/module/package.json +1 -0
  34. package/lib/typescript/package.json +1 -0
  35. package/lib/typescript/src/ZezoPay/Payments/Providers/Razorpay/Razorpay.d.ts +7 -0
  36. package/lib/typescript/src/ZezoPay/Payments/Providers/Razorpay/Razorpay.d.ts.map +1 -0
  37. package/lib/typescript/src/ZezoPay/Payments/Providers/index.d.ts +7 -0
  38. package/lib/typescript/src/ZezoPay/Payments/Providers/index.d.ts.map +1 -0
  39. package/lib/typescript/src/ZezoPay/ZezoPay.d.ts +5 -0
  40. package/lib/typescript/src/ZezoPay/ZezoPay.d.ts.map +1 -0
  41. package/lib/typescript/src/ZezoPay/components/Header.d.ts +12 -0
  42. package/lib/typescript/src/ZezoPay/components/Header.d.ts.map +1 -0
  43. package/lib/typescript/src/ZezoPay/components/PayButton.d.ts +12 -0
  44. package/lib/typescript/src/ZezoPay/components/PayButton.d.ts.map +1 -0
  45. package/lib/typescript/src/ZezoPay/components/PaymentMethod.d.ts +12 -0
  46. package/lib/typescript/src/ZezoPay/components/PaymentMethod.d.ts.map +1 -0
  47. package/lib/typescript/src/ZezoPay/components/Summary.d.ts +7 -0
  48. package/lib/typescript/src/ZezoPay/components/Summary.d.ts.map +1 -0
  49. package/lib/typescript/src/ZezoPay/components/VoucherBox.d.ts +9 -0
  50. package/lib/typescript/src/ZezoPay/components/VoucherBox.d.ts.map +1 -0
  51. package/lib/typescript/src/ZezoPay/index.d.ts +3 -0
  52. package/lib/typescript/src/ZezoPay/index.d.ts.map +1 -0
  53. package/lib/typescript/src/ZezoPay/types/index.d.ts +65 -0
  54. package/lib/typescript/src/ZezoPay/types/index.d.ts.map +1 -0
  55. package/lib/typescript/src/ZezoPay/utils/hooks/useAsync.d.ts +6 -0
  56. package/lib/typescript/src/ZezoPay/utils/hooks/useAsync.d.ts.map +1 -0
  57. package/lib/typescript/src/ZezoPay/utils/hooks/useZezoPay.d.ts +46 -0
  58. package/lib/typescript/src/ZezoPay/utils/hooks/useZezoPay.d.ts.map +1 -0
  59. package/lib/typescript/src/ZezoPay/utils/index.d.ts +6 -0
  60. package/lib/typescript/src/ZezoPay/utils/index.d.ts.map +1 -0
  61. package/lib/typescript/src/index.d.ts +2 -0
  62. package/lib/typescript/src/index.d.ts.map +1 -0
  63. package/package.json +181 -0
  64. package/src/ZezoPay/Payments/Providers/PaymentGateways.types.d.ts +48 -0
  65. package/src/ZezoPay/Payments/Providers/Razorpay/Razorpay.ts +46 -0
  66. package/src/ZezoPay/Payments/Providers/index.ts +8 -0
  67. package/src/ZezoPay/ZezoPay.tsx +174 -0
  68. package/src/ZezoPay/components/Header.tsx +107 -0
  69. package/src/ZezoPay/components/PayButton.tsx +132 -0
  70. package/src/ZezoPay/components/PaymentMethod.tsx +259 -0
  71. package/src/ZezoPay/components/Summary.tsx +188 -0
  72. package/src/ZezoPay/components/VoucherBox.tsx +133 -0
  73. package/src/ZezoPay/index.ts +2 -0
  74. package/src/ZezoPay/types/index.ts +69 -0
  75. package/src/ZezoPay/utils/hooks/useAsync.ts +38 -0
  76. package/src/ZezoPay/utils/hooks/useZezoPay.ts +325 -0
  77. package/src/ZezoPay/utils/index.ts +16 -0
  78. package/src/index.tsx +1 -0
@@ -0,0 +1,270 @@
1
+ "use strict";
2
+
3
+ import { useCallback, useEffect, useMemo, useState } from 'react';
4
+ import { useAsync } from "./useAsync.js";
5
+ import { ZezoPayClient } from '@zezosoft/zezopay-client';
6
+ import { Platform } from 'react-native';
7
+ import { Razorpay } from "../../Payments/Providers/index.js";
8
+ export const allowedProviders = ['razorpay'];
9
+
10
+ /**
11
+ * Parameters for the useZezoPay hook
12
+ * @interface UseZezoPayParams
13
+ */
14
+
15
+ /**
16
+ * Custom hook to handle payments with ZezoPay SDK.
17
+ * Manages payment providers, summary items, and checkout process.
18
+ * @param params - Configuration for the ZezoPay client
19
+ * @returns Object with payment state and methods
20
+ */
21
+ export const useZezoPay = ({
22
+ publicKey,
23
+ userInfo,
24
+ subscriptionId,
25
+ digitalProductId,
26
+ summaryItems: initialItems = [],
27
+ handlePayment,
28
+ callback
29
+ }) => {
30
+ // Input validation
31
+ if (!publicKey) throw new Error('publicKey is required');
32
+ if (!userInfo?._id || !userInfo?.name) throw new Error('userInfo must include _id and name');
33
+
34
+ // SDK client
35
+ const zezopay = useMemo(() => new ZezoPayClient({
36
+ publicKey,
37
+ platform: Platform.OS === 'ios' ? 'ios' : 'android'
38
+ }), [publicKey]);
39
+
40
+ // States
41
+ const [selectedPayment, setSelectedPayment] = useState(null);
42
+ const [summaryItems, setSummaryItems] = useState(initialItems);
43
+ const [voucherCode, setVoucherCode] = useState('');
44
+ const [isProcessing, setIsProcessing] = useState(false);
45
+ const [isSuccess, setIsSuccess] = useState(false);
46
+ const [error, setError] = useState('');
47
+
48
+ // Load payment providers
49
+ const {
50
+ result: providers,
51
+ loading,
52
+ error: providerError
53
+ } = useAsync(async () => {
54
+ try {
55
+ const data = (await zezopay.payments.providers())?.data || [];
56
+ const filtered = data.filter(p => allowedProviders.includes(p.provider));
57
+ if (!filtered.length) {
58
+ throw new Error('No supported payment providers available');
59
+ }
60
+ return filtered;
61
+ } catch (err) {
62
+ console.warn('Failed to load payment providers:', err);
63
+ throw new Error('Could not fetch payment providers');
64
+ }
65
+ }, [publicKey]);
66
+
67
+ // Auto-select first provider
68
+ useEffect(() => {
69
+ if (providers?.length && !selectedPayment) {
70
+ setSelectedPayment(providers[0]?.provider);
71
+ }
72
+ }, [providers, selectedPayment]);
73
+
74
+ // Total price calculation
75
+ const totalPrice = useMemo(() => {
76
+ if (!summaryItems.length) return 0;
77
+ return Number(summaryItems.reduce((sum, item) => {
78
+ let price = item.price || 0;
79
+ if (item.discount) {
80
+ if (typeof item.discount === 'number') {
81
+ price = price * (100 - item.discount) / 100;
82
+ } else if (item.discount.type === 'percentage') {
83
+ price = price * (100 - item.discount.amount) / 100;
84
+ } else if (item.discount.type === 'fixed') {
85
+ price = Math.max(0, price - item.discount.amount); // Prevent negative prices
86
+ }
87
+ }
88
+ return sum + price;
89
+ }, 0).toFixed(2));
90
+ }, [summaryItems]);
91
+
92
+ // Remove item from summary
93
+ const removeItem = useCallback(id => {
94
+ setSummaryItems(prev => prev.filter(item => item.id !== id));
95
+ }, []);
96
+
97
+ // Default checkout handler
98
+ const defaultHandlePayment = useCallback(async ({
99
+ provider,
100
+ subscriptionId: subId,
101
+ digitalProductId: dpId,
102
+ userInfo: paymentUserInfo
103
+ }) => {
104
+ if (!provider || !allowedProviders.includes(provider)) {
105
+ throw new Error(`Invalid payment provider: ${provider || 'none'}`);
106
+ }
107
+
108
+ // Common payload properties
109
+ const basePayload = {
110
+ provider,
111
+ userId: paymentUserInfo._id,
112
+ metadata: {
113
+ userInfo: paymentUserInfo
114
+ },
115
+ ...(voucherCode && {
116
+ coupon_code: voucherCode
117
+ }) // Include coupon_code if provided
118
+ };
119
+
120
+ // Construct payload based on type
121
+ let payload;
122
+ if (subId) {
123
+ payload = {
124
+ ...basePayload,
125
+ type: 'subscription',
126
+ subscriptionId: subId
127
+ };
128
+ } else if (dpId) {
129
+ payload = {
130
+ ...basePayload,
131
+ type: 'digital-product',
132
+ digitalProductId: dpId
133
+ };
134
+ } else {
135
+ if (totalPrice <= 0) {
136
+ throw new Error('Price must be greater than zero for normal payments');
137
+ }
138
+ payload = {
139
+ ...basePayload,
140
+ type: 'normal',
141
+ price: totalPrice
142
+ };
143
+ }
144
+ try {
145
+ const result = await zezopay.payments.checkout(payload);
146
+ if (result.status !== 200) {
147
+ throw new Error(`Checkout failed with status: ${result.status}`);
148
+ }
149
+ return result.data;
150
+ } catch (err) {
151
+ console.warn('Checkout error:', err);
152
+ throw new Error('Failed to initiate checkout');
153
+ }
154
+ }, [voucherCode, totalPrice, zezopay.payments]);
155
+ const paymentFn = handlePayment || defaultHandlePayment;
156
+
157
+ // Payment handler
158
+ const paymentHandler = useCallback(async order => {
159
+ if (!selectedPayment) {
160
+ throw new Error('No payment provider selected');
161
+ }
162
+ if (!order?.orderId || !order?.price || !order?.currency) {
163
+ throw new Error('Invalid order details: missing orderId, price, or currency');
164
+ }
165
+ try {
166
+ if (selectedPayment === 'razorpay') {
167
+ const razorpay = new Razorpay();
168
+ await razorpay.open({
169
+ amount: order.price * 100,
170
+ currency: order.currency,
171
+ order_id: order.orderId,
172
+ publicKey: order.publicKey || publicKey,
173
+ // Fallback to publicKey
174
+ handler(response) {
175
+ if (response.razorpay_payment_id) {
176
+ callback?.onSuccess?.({
177
+ status: 'success',
178
+ order_id: response.razorpay_order_id,
179
+ signature: response.razorpay_signature,
180
+ payment_id: response.razorpay_payment_id
181
+ });
182
+ setIsSuccess(true);
183
+ setError('');
184
+ } else {
185
+ const err = new Error('Payment failed: No payment ID received');
186
+ setError(err.message);
187
+ callback?.onFailure?.(err);
188
+ }
189
+ },
190
+ OnError(err) {
191
+ const errorMessage = err?.description || err?.message || err?.details?.error?.description || 'Payment failed unexpectedly';
192
+ setError(errorMessage);
193
+ callback?.onError?.(err);
194
+ callback?.onFailure?.(err);
195
+ },
196
+ prefill: {
197
+ user_email: userInfo.email,
198
+ user_name: userInfo.name,
199
+ user_phone: userInfo.phone
200
+ }
201
+ });
202
+ } else {
203
+ throw new Error(`Unsupported payment provider: ${selectedPayment}`);
204
+ }
205
+ } catch (err) {
206
+ console.warn('Payment handler error:', err);
207
+ throw err;
208
+ }
209
+ }, [selectedPayment, userInfo, callback, publicKey]);
210
+
211
+ // Handle pay now
212
+ const handlePayNow = useCallback(async () => {
213
+ if (isProcessing) return; // Prevent multiple submissions
214
+ if (!selectedPayment) {
215
+ setError('Please select a payment provider');
216
+ return;
217
+ }
218
+ if (!summaryItems.length) {
219
+ setError('Cart is empty. Add items to proceed.');
220
+ return;
221
+ }
222
+ if (totalPrice <= 0) {
223
+ setError('Total price must be greater than zero');
224
+ return;
225
+ }
226
+ setError('');
227
+ setIsProcessing(true); // ✅ Set processing to true at the start
228
+
229
+ try {
230
+ const order = await paymentFn({
231
+ provider: selectedPayment,
232
+ subscriptionId,
233
+ digitalProductId,
234
+ userInfo
235
+ });
236
+ if (!order) {
237
+ const err = new Error('No order data returned from checkout');
238
+ setError(err.message);
239
+ callback?.onFailure?.(err);
240
+ return;
241
+ }
242
+ await paymentHandler(order);
243
+ } catch (err) {
244
+ const errorMessage = err.message || 'Payment failed unexpectedly';
245
+ setError(errorMessage);
246
+ callback?.onFailure?.(err);
247
+ console.warn('Payment error:', err);
248
+ } finally {
249
+ setIsProcessing(false); // ✅ Reset processing state
250
+ }
251
+ }, [isProcessing, selectedPayment, summaryItems, totalPrice, paymentFn, subscriptionId, digitalProductId, userInfo, paymentHandler, callback]);
252
+ return {
253
+ selectedPayment,
254
+ setSelectedPayment,
255
+ summaryItems,
256
+ setSummaryItems,
257
+ totalPrice,
258
+ voucherCode,
259
+ setVoucherCode,
260
+ isProcessing,
261
+ isSuccess,
262
+ error,
263
+ providers: providers || [],
264
+ loading,
265
+ providerError,
266
+ removeItem,
267
+ handlePayNow
268
+ };
269
+ };
270
+ //# sourceMappingURL=useZezoPay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useCallback","useEffect","useMemo","useState","useAsync","ZezoPayClient","Platform","Razorpay","allowedProviders","useZezoPay","publicKey","userInfo","subscriptionId","digitalProductId","summaryItems","initialItems","handlePayment","callback","Error","_id","name","zezopay","platform","OS","selectedPayment","setSelectedPayment","setSummaryItems","voucherCode","setVoucherCode","isProcessing","setIsProcessing","isSuccess","setIsSuccess","error","setError","result","providers","loading","providerError","data","payments","filtered","filter","p","includes","provider","length","err","console","warn","totalPrice","Number","reduce","sum","item","price","discount","type","amount","Math","max","toFixed","removeItem","id","prev","defaultHandlePayment","subId","dpId","paymentUserInfo","basePayload","userId","metadata","coupon_code","payload","checkout","status","paymentFn","paymentHandler","order","orderId","currency","razorpay","open","order_id","handler","response","razorpay_payment_id","onSuccess","razorpay_order_id","signature","razorpay_signature","payment_id","message","onFailure","OnError","errorMessage","description","details","onError","prefill","user_email","email","user_name","user_phone","phone","handlePayNow"],"sourceRoot":"../../../../../src","sources":["ZezoPay/utils/hooks/useZezoPay.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ export function formatCurrency({
4
+ amount,
5
+ currency = 'INR',
6
+ minimumFractionDigits = 2
7
+ }) {
8
+ return new Intl.NumberFormat('en-IN', {
9
+ style: 'currency',
10
+ currency,
11
+ minimumFractionDigits,
12
+ maximumFractionDigits: 2
13
+ }).format(amount);
14
+ }
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["formatCurrency","amount","currency","minimumFractionDigits","Intl","NumberFormat","style","maximumFractionDigits","format"],"sourceRoot":"../../../../src","sources":["ZezoPay/utils/index.ts"],"mappings":";;AAAA,OAAO,SAASA,cAAcA,CAAC;EAC7BC,MAAM;EACNC,QAAQ,GAAG,KAAK;EAChBC,qBAAqB,GAAG;AAK1B,CAAC,EAAU;EACT,OAAO,IAAIC,IAAI,CAACC,YAAY,CAAC,OAAO,EAAE;IACpCC,KAAK,EAAE,UAAU;IACjBJ,QAAQ;IACRC,qBAAqB;IACrBI,qBAAqB,EAAE;EACzB,CAAC,CAAC,CAACC,MAAM,CAACP,MAAM,CAAC;AACnB","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export * from "./ZezoPay/index.js";
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,cAAc,oBAAW","ignoreList":[]}
@@ -0,0 +1 @@
1
+ {"type":"module"}
@@ -0,0 +1 @@
1
+ {"type":"module"}
@@ -0,0 +1,7 @@
1
+ declare class Razorpay implements IPaymentGateway {
2
+ constructor();
3
+ init(): void;
4
+ open(options: IPaymentGatewayOpenOptions): Promise<void>;
5
+ }
6
+ export default Razorpay;
7
+ //# sourceMappingURL=Razorpay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Razorpay.d.ts","sourceRoot":"","sources":["../../../../../../../src/ZezoPay/Payments/Providers/Razorpay/Razorpay.ts"],"names":[],"mappings":"AAMA,cAAM,QAAS,YAAW,eAAe;;IAMvC,IAAI;IAIE,IAAI,CAAC,OAAO,EAAE,0BAA0B;CA2B/C;AAED,eAAe,QAAQ,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @author Naresh Dhamu
3
+ * @lastModified Thu 25 Sep 2025 at 11:37 AM
4
+ */
5
+ import Razorpay from './Razorpay/Razorpay';
6
+ export { Razorpay };
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/ZezoPay/Payments/Providers/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAE3C,OAAO,EAAE,QAAQ,EAAE,CAAC"}
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import type { ZezoPayProps } from './types';
3
+ declare const ZezoPay: React.FC<ZezoPayProps>;
4
+ export default ZezoPay;
5
+ //# sourceMappingURL=ZezoPay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ZezoPay.d.ts","sourceRoot":"","sources":["../../../../src/ZezoPay/ZezoPay.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAc1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAO5C,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CA4GnC,CAAC;AA4CF,eAAe,OAAO,CAAC"}
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ import type { ViewStyle, TextStyle } from 'react-native';
3
+ export interface HeaderProps {
4
+ title: string;
5
+ titleStyle?: TextStyle;
6
+ containerStyle?: ViewStyle;
7
+ leftIcon?: React.ReactNode;
8
+ onBack?: () => void;
9
+ }
10
+ declare const Header: React.FC<HeaderProps>;
11
+ export default Header;
12
+ //# sourceMappingURL=Header.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Header.d.ts","sourceRoot":"","sources":["../../../../../src/ZezoPay/components/Header.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAIzD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,QAAA,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CA8CjC,CAAC;AA8CF,eAAe,MAAM,CAAC"}
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ interface PayButtonProps {
3
+ onPaymentInitiate: () => void;
4
+ status?: 'idle' | 'processing' | 'success' | 'disabled';
5
+ paymentButtonText?: string;
6
+ paymentProcessingText?: string;
7
+ paymentSuccessText?: string;
8
+ noteText?: string;
9
+ }
10
+ declare const PayButton: React.FC<PayButtonProps>;
11
+ export default PayButton;
12
+ //# sourceMappingURL=PayButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PayButton.d.ts","sourceRoot":"","sources":["../../../../../src/ZezoPay/components/PayButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAY1B,UAAU,cAAc;IACtB,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,GAAG,UAAU,CAAC;IACxD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,QAAA,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAmEvC,CAAC;AA2CF,eAAe,SAAS,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { PaymentProviderData } from '@zezosoft/zezopay-client';
2
+ import React from 'react';
3
+ interface PaymentMethodProps {
4
+ providers: PaymentProviderData[];
5
+ selectedProvider: string | null;
6
+ onProviderChange: (provider: string) => void;
7
+ isLoading?: boolean;
8
+ error?: string | null;
9
+ }
10
+ declare const _default: React.NamedExoticComponent<PaymentMethodProps>;
11
+ export default _default;
12
+ //# sourceMappingURL=PaymentMethod.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PaymentMethod.d.ts","sourceRoot":"","sources":["../../../../../src/ZezoPay/components/PaymentMethod.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAA4B,MAAM,OAAO,CAAC;AAIjD,UAAU,kBAAkB;IAC1B,SAAS,EAAE,mBAAmB,EAAE,CAAC;IACjC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;;AAuPD,wBAAmC"}
@@ -0,0 +1,7 @@
1
+ import type { ISummaryItem } from '@zezosoft/zezopay-client';
2
+ export declare const Summary: ({ items, displayCurrency, onRemoveItem, }: {
3
+ items: ISummaryItem[];
4
+ displayCurrency?: string;
5
+ onRemoveItem?: (id: ISummaryItem['id']) => void;
6
+ }) => import("react/jsx-runtime").JSX.Element;
7
+ //# sourceMappingURL=Summary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Summary.d.ts","sourceRoot":"","sources":["../../../../../src/ZezoPay/components/Summary.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAG7D,eAAO,MAAM,OAAO,8CAIjB;IACD,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;CACjD,4CA4FA,CAAC"}
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ interface VoucherBoxProps {
3
+ voucher: string;
4
+ setVoucher: (v: string) => void;
5
+ onApply?: () => void;
6
+ }
7
+ declare const VoucherBox: React.FC<VoucherBoxProps>;
8
+ export default VoucherBox;
9
+ //# sourceMappingURL=VoucherBox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VoucherBox.d.ts","sourceRoot":"","sources":["../../../../../src/ZezoPay/components/VoucherBox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAqB1B,UAAU,eAAe;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CA4CzC,CAAC;AA6DF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './types';
2
+ export { default as ZezoPay } from './ZezoPay';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ZezoPay/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAC"}
@@ -0,0 +1,65 @@
1
+ import type { UserInfo } from '@zezosoft/zezopay-client';
2
+ export type PaymentDetails = {
3
+ userId: string;
4
+ price: number;
5
+ metadata?: {
6
+ isPaymentInitiatedEnabled?: boolean;
7
+ userInfo?: UserInfo;
8
+ };
9
+ };
10
+ export type ZezoPayProps = {
11
+ publicKey: string;
12
+ subscriptionId?: string;
13
+ digitalProductId?: string;
14
+ summaryItems: SummaryItem[];
15
+ userInfo: UserInfo;
16
+ title: string;
17
+ onBack: () => void;
18
+ callback?: ZezoPayCallbacks;
19
+ };
20
+ export type ZezoPayCallbacks = {
21
+ onSuccess?: (data: any) => void;
22
+ onFailure?: (error: any) => void;
23
+ };
24
+ export type PaymentProviderType = 'razorpay' | 'stripe' | 'ccavenue' | 'phonepe';
25
+ export type ZezoPayHookProps = {
26
+ publicKey: string;
27
+ userInfo: {
28
+ _id: string;
29
+ name: string;
30
+ email?: string;
31
+ phone?: string;
32
+ };
33
+ handlePayment?: (args: {
34
+ provider: PaymentProviderType;
35
+ subscriptionId?: string;
36
+ digitalProductId?: string;
37
+ userInfo: {
38
+ _id: string;
39
+ name: string;
40
+ email?: string;
41
+ phone?: string;
42
+ };
43
+ }) => Promise<any>;
44
+ subscriptionId?: string;
45
+ digitalProductId?: string;
46
+ summaryItems?: SummaryItem[];
47
+ validateVoucherCode?: (code: string) => number;
48
+ callbacks?: ZezoPayCallbacks;
49
+ };
50
+ export type Discount = {
51
+ type: 'percentage' | 'fixed';
52
+ amount: number;
53
+ };
54
+ export type SummaryItem = {
55
+ id: string;
56
+ name: string;
57
+ price: number;
58
+ discount?: number | {
59
+ type: 'percentage' | 'fixed';
60
+ amount: number;
61
+ };
62
+ duration?: string;
63
+ image?: string;
64
+ };
65
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/ZezoPay/types/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEzD,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE;QACT,yBAAyB,CAAC,EAAE,OAAO,CAAC;QACpC,QAAQ,CAAC,EAAE,QAAQ,CAAC;KACrB,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,CAAC,EAAE,gBAAgB,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAChC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAC3B,UAAU,GACV,QAAQ,GACR,UAAU,GACV,SAAS,CAAC;AAEd,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE;QACR,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE;QACrB,QAAQ,EAAE,mBAAmB,CAAC;QAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,QAAQ,EAAE;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;KACzE,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/C,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC"}
@@ -0,0 +1,6 @@
1
+ export declare function useAsync<T>(asyncFn: () => Promise<T>, deps?: any[]): {
2
+ result: T | null;
3
+ loading: boolean;
4
+ error: Error | null;
5
+ };
6
+ //# sourceMappingURL=useAsync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAsync.d.ts","sourceRoot":"","sources":["../../../../../../src/ZezoPay/utils/hooks/useAsync.ts"],"names":[],"mappings":"AAEA,wBAAgB,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,GAAE,GAAG,EAAO;;;;EAmCtE"}
@@ -0,0 +1,46 @@
1
+ /// <reference types="react" />
2
+ import { type ISummaryItem, type PaymentProvider, type ZezoPayCallbacks, type HandlePayment, type IReadyPaymentProvider } from '@zezosoft/zezopay-client';
3
+ export declare const allowedProviders: PaymentProvider[];
4
+ /**
5
+ * Parameters for the useZezoPay hook
6
+ * @interface UseZezoPayParams
7
+ */
8
+ interface UseZezoPayParams {
9
+ publicKey: string;
10
+ userInfo: {
11
+ _id: string;
12
+ name: string;
13
+ email?: string;
14
+ phone?: string;
15
+ };
16
+ subscriptionId?: string;
17
+ digitalProductId?: string;
18
+ summaryItems?: ISummaryItem[];
19
+ handlePayment?: HandlePayment;
20
+ callback?: ZezoPayCallbacks;
21
+ }
22
+ /**
23
+ * Custom hook to handle payments with ZezoPay SDK.
24
+ * Manages payment providers, summary items, and checkout process.
25
+ * @param params - Configuration for the ZezoPay client
26
+ * @returns Object with payment state and methods
27
+ */
28
+ export declare const useZezoPay: ({ publicKey, userInfo, subscriptionId, digitalProductId, summaryItems: initialItems, handlePayment, callback, }: UseZezoPayParams) => {
29
+ selectedPayment: string | null;
30
+ setSelectedPayment: import("react").Dispatch<import("react").SetStateAction<string | null>>;
31
+ summaryItems: ISummaryItem[];
32
+ setSummaryItems: import("react").Dispatch<import("react").SetStateAction<ISummaryItem[]>>;
33
+ totalPrice: number;
34
+ voucherCode: string;
35
+ setVoucherCode: import("react").Dispatch<import("react").SetStateAction<string>>;
36
+ isProcessing: boolean;
37
+ isSuccess: boolean;
38
+ error: string;
39
+ providers: IReadyPaymentProvider[];
40
+ loading: boolean;
41
+ providerError: Error | null;
42
+ removeItem: (id: string | number) => void;
43
+ handlePayNow: () => Promise<void>;
44
+ };
45
+ export {};
46
+ //# sourceMappingURL=useZezoPay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useZezoPay.d.ts","sourceRoot":"","sources":["../../../../../../src/ZezoPay/utils/hooks/useZezoPay.ts"],"names":[],"mappings":";AAEA,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAG3B,MAAM,0BAA0B,CAAC;AAIlC,eAAO,MAAM,gBAAgB,EAAE,eAAe,EAAiB,CAAC;AAEhE;;;GAGG;AACH,UAAU,gBAAgB;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACxE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,YAAY,EAAE,CAAC;IAC9B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,EAAE,gBAAgB,CAAC;CAC7B;AAED;;;;;GAKG;AACH,eAAO,MAAM,UAAU,oHAQpB,gBAAgB;;;;;;;;;;;;;;qBA6EmB,MAAM,GAAG,MAAM;;CAyMpD,CAAC"}
@@ -0,0 +1,6 @@
1
+ export declare function formatCurrency({ amount, currency, minimumFractionDigits, }: {
2
+ amount: number;
3
+ currency?: string;
4
+ minimumFractionDigits?: number;
5
+ }): string;
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/ZezoPay/utils/index.ts"],"names":[],"mappings":"AAAA,wBAAgB,cAAc,CAAC,EAC7B,MAAM,EACN,QAAgB,EAChB,qBAAyB,GAC1B,EAAE;IACD,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC,GAAG,MAAM,CAOT"}
@@ -0,0 +1,2 @@
1
+ export * from './ZezoPay';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC"}