@abdssamie/adyen-payments 0.1.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 (69) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +258 -0
  3. package/dist/client/_generated/_ignore.d.ts +1 -0
  4. package/dist/client/_generated/_ignore.d.ts.map +1 -0
  5. package/dist/client/_generated/_ignore.js +3 -0
  6. package/dist/client/_generated/_ignore.js.map +1 -0
  7. package/dist/client/index.d.ts +206 -0
  8. package/dist/client/index.d.ts.map +1 -0
  9. package/dist/client/index.js +566 -0
  10. package/dist/client/index.js.map +1 -0
  11. package/dist/component/_generated/api.d.ts +36 -0
  12. package/dist/component/_generated/api.d.ts.map +1 -0
  13. package/dist/component/_generated/api.js +31 -0
  14. package/dist/component/_generated/api.js.map +1 -0
  15. package/dist/component/_generated/component.d.ts +215 -0
  16. package/dist/component/_generated/component.d.ts.map +1 -0
  17. package/dist/component/_generated/component.js +11 -0
  18. package/dist/component/_generated/component.js.map +1 -0
  19. package/dist/component/_generated/dataModel.d.ts +46 -0
  20. package/dist/component/_generated/dataModel.d.ts.map +1 -0
  21. package/dist/component/_generated/dataModel.js +11 -0
  22. package/dist/component/_generated/dataModel.js.map +1 -0
  23. package/dist/component/_generated/server.d.ts +121 -0
  24. package/dist/component/_generated/server.d.ts.map +1 -0
  25. package/dist/component/_generated/server.js +78 -0
  26. package/dist/component/_generated/server.js.map +1 -0
  27. package/dist/component/convex.config.d.ts +3 -0
  28. package/dist/component/convex.config.d.ts.map +1 -0
  29. package/dist/component/convex.config.js +3 -0
  30. package/dist/component/convex.config.js.map +1 -0
  31. package/dist/component/private.d.ts +71 -0
  32. package/dist/component/private.d.ts.map +1 -0
  33. package/dist/component/private.js +250 -0
  34. package/dist/component/private.js.map +1 -0
  35. package/dist/component/public.d.ts +170 -0
  36. package/dist/component/public.d.ts.map +1 -0
  37. package/dist/component/public.js +210 -0
  38. package/dist/component/public.js.map +1 -0
  39. package/dist/component/schema.d.ts +101 -0
  40. package/dist/component/schema.d.ts.map +1 -0
  41. package/dist/component/schema.js +63 -0
  42. package/dist/component/schema.js.map +1 -0
  43. package/dist/react/hooks.d.ts +182 -0
  44. package/dist/react/hooks.d.ts.map +1 -0
  45. package/dist/react/hooks.js +215 -0
  46. package/dist/react/hooks.js.map +1 -0
  47. package/dist/react/index.d.ts +3 -0
  48. package/dist/react/index.d.ts.map +1 -0
  49. package/dist/react/index.js +3 -0
  50. package/dist/react/index.js.map +1 -0
  51. package/package.json +104 -0
  52. package/src/client/_generated/_ignore.ts +1 -0
  53. package/src/client/index.test.ts +196 -0
  54. package/src/client/index.ts +823 -0
  55. package/src/client/setup.test.ts +26 -0
  56. package/src/client/webhooks.test.ts +182 -0
  57. package/src/component/_generated/api.ts +52 -0
  58. package/src/component/_generated/component.ts +293 -0
  59. package/src/component/_generated/dataModel.ts +60 -0
  60. package/src/component/_generated/server.ts +156 -0
  61. package/src/component/convex.config.ts +3 -0
  62. package/src/component/private.ts +277 -0
  63. package/src/component/public.test.ts +92 -0
  64. package/src/component/public.ts +229 -0
  65. package/src/component/schema.ts +67 -0
  66. package/src/component/setup.test.ts +11 -0
  67. package/src/react/hooks.ts +488 -0
  68. package/src/react/index.ts +18 -0
  69. package/src/test.ts +18 -0
@@ -0,0 +1,250 @@
1
+ import { v } from "convex/values";
2
+ import { mutation } from "./_generated/server.js";
3
+ /**
4
+ * Record a newly created checkout session.
5
+ */
6
+ export const insertCheckoutSession = mutation({
7
+ args: {
8
+ sessionId: v.string(),
9
+ sessionData: v.string(),
10
+ shopperReference: v.optional(v.string()),
11
+ merchantReference: v.string(),
12
+ amount: v.number(),
13
+ currency: v.string(),
14
+ url: v.optional(v.string()),
15
+ autoCapture: v.optional(v.boolean()),
16
+ },
17
+ returns: v.null(),
18
+ handler: async (ctx, args) => {
19
+ const existing = await ctx.db
20
+ .query("checkout_sessions")
21
+ .withIndex("by_session_id", (q) => q.eq("sessionId", args.sessionId))
22
+ .unique();
23
+ if (!existing) {
24
+ await ctx.db.insert("checkout_sessions", {
25
+ sessionId: args.sessionId,
26
+ sessionData: args.sessionData,
27
+ shopperReference: args.shopperReference,
28
+ merchantReference: args.merchantReference,
29
+ status: "active",
30
+ amount: args.amount,
31
+ currency: args.currency,
32
+ url: args.url,
33
+ autoCapture: args.autoCapture,
34
+ });
35
+ }
36
+ return null;
37
+ },
38
+ });
39
+ /**
40
+ * Record a payment transaction (e.g. authorization success/failure).
41
+ */
42
+ export const recordPayment = mutation({
43
+ args: {
44
+ pspReference: v.string(),
45
+ originalReference: v.optional(v.string()),
46
+ shopperReference: v.optional(v.string()),
47
+ merchantReference: v.string(),
48
+ amount: v.number(),
49
+ currency: v.string(),
50
+ status: v.string(),
51
+ paymentMethod: v.optional(v.string()),
52
+ userId: v.optional(v.string()),
53
+ orgId: v.optional(v.string()),
54
+ metadata: v.optional(v.any()),
55
+ },
56
+ returns: v.null(),
57
+ handler: async (ctx, args) => {
58
+ const existing = await ctx.db
59
+ .query("payments")
60
+ .withIndex("by_psp_reference", (q) => q.eq("pspReference", args.pspReference))
61
+ .unique();
62
+ if (!existing) {
63
+ await ctx.db.insert("payments", {
64
+ pspReference: args.pspReference,
65
+ originalReference: args.originalReference,
66
+ shopperReference: args.shopperReference,
67
+ merchantReference: args.merchantReference,
68
+ amount: args.amount,
69
+ currency: args.currency,
70
+ status: args.status,
71
+ paymentMethod: args.paymentMethod,
72
+ created: Date.now(),
73
+ userId: args.userId,
74
+ orgId: args.orgId,
75
+ metadata: args.metadata,
76
+ });
77
+ }
78
+ else {
79
+ await ctx.db.patch("payments", existing._id, {
80
+ status: args.status,
81
+ ...(args.shopperReference !== undefined && { shopperReference: args.shopperReference }),
82
+ ...(args.userId !== undefined && { userId: args.userId }),
83
+ ...(args.orgId !== undefined && { orgId: args.orgId }),
84
+ ...(args.metadata !== undefined && { metadata: args.metadata }),
85
+ });
86
+ }
87
+ return null;
88
+ },
89
+ });
90
+ /**
91
+ * Update the status of a payment transaction (e.g. captured, refunded, cancelled).
92
+ */
93
+ export const updatePaymentStatus = mutation({
94
+ args: {
95
+ pspReference: v.string(),
96
+ status: v.string(),
97
+ originalReference: v.optional(v.string()),
98
+ },
99
+ returns: v.null(),
100
+ handler: async (ctx, args) => {
101
+ const payment = await ctx.db
102
+ .query("payments")
103
+ .withIndex("by_psp_reference", (q) => q.eq("pspReference", args.pspReference))
104
+ .unique();
105
+ if (payment) {
106
+ await ctx.db.patch("payments", payment._id, {
107
+ status: args.status,
108
+ ...(args.originalReference !== undefined && { originalReference: args.originalReference }),
109
+ });
110
+ }
111
+ else {
112
+ // If payment is not found locally, create a placeholder payment that will be backfilled/updated.
113
+ // (This handles cases where captures/refunds are triggered but original auth record is not in db)
114
+ await ctx.db.insert("payments", {
115
+ pspReference: args.pspReference,
116
+ originalReference: args.originalReference,
117
+ merchantReference: "unknown",
118
+ amount: 0,
119
+ currency: "unknown",
120
+ status: args.status,
121
+ created: Date.now(),
122
+ });
123
+ }
124
+ return null;
125
+ },
126
+ });
127
+ /**
128
+ * Insert or update a single tokenized payment method.
129
+ */
130
+ export const insertPaymentMethod = mutation({
131
+ args: {
132
+ shopperReference: v.string(),
133
+ recurringDetailReference: v.string(),
134
+ variant: v.string(),
135
+ cardLast4: v.optional(v.string()),
136
+ cardExpiryMonth: v.optional(v.string()),
137
+ cardExpiryYear: v.optional(v.string()),
138
+ metadata: v.optional(v.any()),
139
+ },
140
+ returns: v.null(),
141
+ handler: async (ctx, args) => {
142
+ const existing = await ctx.db
143
+ .query("payment_methods")
144
+ .withIndex("by_recurring_detail_reference", (q) => q.eq("recurringDetailReference", args.recurringDetailReference))
145
+ .unique();
146
+ if (existing) {
147
+ await ctx.db.patch("payment_methods", existing._id, {
148
+ status: "active",
149
+ variant: args.variant,
150
+ cardLast4: args.cardLast4,
151
+ cardExpiryMonth: args.cardExpiryMonth,
152
+ cardExpiryYear: args.cardExpiryYear,
153
+ ...(args.metadata !== undefined && { metadata: args.metadata }),
154
+ });
155
+ }
156
+ else {
157
+ await ctx.db.insert("payment_methods", {
158
+ shopperReference: args.shopperReference,
159
+ recurringDetailReference: args.recurringDetailReference,
160
+ variant: args.variant,
161
+ cardLast4: args.cardLast4,
162
+ cardExpiryMonth: args.cardExpiryMonth,
163
+ cardExpiryYear: args.cardExpiryYear,
164
+ status: "active",
165
+ metadata: args.metadata,
166
+ });
167
+ }
168
+ return null;
169
+ },
170
+ });
171
+ /**
172
+ * Synchronize the active stored card/payment method tokens for a shopper.
173
+ */
174
+ export const syncPaymentMethods = mutation({
175
+ args: {
176
+ shopperReference: v.string(),
177
+ paymentMethods: v.array(v.object({
178
+ recurringDetailReference: v.string(),
179
+ variant: v.string(),
180
+ cardLast4: v.optional(v.string()),
181
+ cardExpiryMonth: v.optional(v.string()),
182
+ cardExpiryYear: v.optional(v.string()),
183
+ metadata: v.optional(v.any()),
184
+ })),
185
+ },
186
+ returns: v.null(),
187
+ handler: async (ctx, args) => {
188
+ // Get all existing payment methods for the shopper
189
+ const existing = await ctx.db
190
+ .query("payment_methods")
191
+ .withIndex("by_shopper_reference", (q) => q.eq("shopperReference", args.shopperReference))
192
+ .collect();
193
+ const incomingRefs = new Set(args.paymentMethods.map((m) => m.recurringDetailReference));
194
+ // Mark methods that are no longer active as disabled
195
+ for (const method of existing) {
196
+ if (!incomingRefs.has(method.recurringDetailReference) &&
197
+ method.status !== "disabled") {
198
+ await ctx.db.patch("payment_methods", method._id, { status: "disabled" });
199
+ }
200
+ }
201
+ // Insert or update incoming active methods
202
+ for (const method of args.paymentMethods) {
203
+ const match = existing.find((m) => m.recurringDetailReference === method.recurringDetailReference);
204
+ if (match) {
205
+ await ctx.db.patch("payment_methods", match._id, {
206
+ status: "active",
207
+ variant: method.variant,
208
+ cardLast4: method.cardLast4,
209
+ cardExpiryMonth: method.cardExpiryMonth,
210
+ cardExpiryYear: method.cardExpiryYear,
211
+ ...(method.metadata !== undefined && { metadata: method.metadata }),
212
+ });
213
+ }
214
+ else {
215
+ await ctx.db.insert("payment_methods", {
216
+ shopperReference: args.shopperReference,
217
+ recurringDetailReference: method.recurringDetailReference,
218
+ variant: method.variant,
219
+ cardLast4: method.cardLast4,
220
+ cardExpiryMonth: method.cardExpiryMonth,
221
+ cardExpiryYear: method.cardExpiryYear,
222
+ status: "active",
223
+ metadata: method.metadata,
224
+ });
225
+ }
226
+ }
227
+ return null;
228
+ },
229
+ });
230
+ /**
231
+ * Update the status of a checkout session.
232
+ */
233
+ export const updateCheckoutSessionStatus = mutation({
234
+ args: {
235
+ merchantReference: v.string(),
236
+ status: v.string(),
237
+ },
238
+ returns: v.null(),
239
+ handler: async (ctx, args) => {
240
+ const session = await ctx.db
241
+ .query("checkout_sessions")
242
+ .withIndex("by_merchant_reference", (q) => q.eq("merchantReference", args.merchantReference))
243
+ .unique();
244
+ if (session) {
245
+ await ctx.db.patch("checkout_sessions", session._id, { status: args.status });
246
+ }
247
+ return null;
248
+ },
249
+ });
250
+ //# sourceMappingURL=private.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"private.js","sourceRoot":"","sources":["../../src/component/private.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,170 @@
1
+ /**
2
+ * Get a shopper by their shopperReference.
3
+ */
4
+ export declare const getShopper: import("convex/server").RegisteredQuery<"public", {
5
+ shopperReference: string;
6
+ }, Promise<{
7
+ metadata?: any;
8
+ userId?: string | undefined;
9
+ email?: string | undefined;
10
+ name?: string | undefined;
11
+ shopperReference: string;
12
+ } | null>>;
13
+ /**
14
+ * Get a shopper by their email address.
15
+ */
16
+ export declare const getShopperByEmail: import("convex/server").RegisteredQuery<"public", {
17
+ email: string;
18
+ }, Promise<{
19
+ metadata?: any;
20
+ userId?: string | undefined;
21
+ email?: string | undefined;
22
+ name?: string | undefined;
23
+ shopperReference: string;
24
+ } | null>>;
25
+ /**
26
+ * Get a shopper by their user ID.
27
+ */
28
+ export declare const getShopperByUserId: import("convex/server").RegisteredQuery<"public", {
29
+ userId: string;
30
+ }, Promise<{
31
+ metadata?: any;
32
+ userId?: string | undefined;
33
+ email?: string | undefined;
34
+ name?: string | undefined;
35
+ shopperReference: string;
36
+ } | null>>;
37
+ /**
38
+ * Get a payment transaction by its PSP reference.
39
+ */
40
+ export declare const getPayment: import("convex/server").RegisteredQuery<"public", {
41
+ pspReference: string;
42
+ }, Promise<{
43
+ shopperReference?: string | undefined;
44
+ metadata?: any;
45
+ orgId?: string | undefined;
46
+ originalReference?: string | undefined;
47
+ paymentMethod?: string | undefined;
48
+ userId?: string | undefined;
49
+ amount: number;
50
+ currency: string;
51
+ merchantReference: string;
52
+ pspReference: string;
53
+ status: string;
54
+ created: number;
55
+ } | null>>;
56
+ /**
57
+ * List all payments for a shopper.
58
+ */
59
+ export declare const listPayments: import("convex/server").RegisteredQuery<"public", {
60
+ shopperReference: string;
61
+ }, Promise<{
62
+ shopperReference?: string | undefined;
63
+ metadata?: any;
64
+ orgId?: string | undefined;
65
+ originalReference?: string | undefined;
66
+ paymentMethod?: string | undefined;
67
+ userId?: string | undefined;
68
+ amount: number;
69
+ currency: string;
70
+ merchantReference: string;
71
+ pspReference: string;
72
+ status: string;
73
+ created: number;
74
+ }[]>>;
75
+ /**
76
+ * List all payments for an organization ID.
77
+ */
78
+ export declare const listPaymentsByOrgId: import("convex/server").RegisteredQuery<"public", {
79
+ orgId: string;
80
+ }, Promise<{
81
+ shopperReference?: string | undefined;
82
+ metadata?: any;
83
+ orgId?: string | undefined;
84
+ originalReference?: string | undefined;
85
+ paymentMethod?: string | undefined;
86
+ userId?: string | undefined;
87
+ amount: number;
88
+ currency: string;
89
+ merchantReference: string;
90
+ pspReference: string;
91
+ status: string;
92
+ created: number;
93
+ }[]>>;
94
+ /**
95
+ * List all payments for a user ID.
96
+ */
97
+ export declare const listPaymentsByUserId: import("convex/server").RegisteredQuery<"public", {
98
+ userId: string;
99
+ }, Promise<{
100
+ shopperReference?: string | undefined;
101
+ metadata?: any;
102
+ orgId?: string | undefined;
103
+ originalReference?: string | undefined;
104
+ paymentMethod?: string | undefined;
105
+ userId?: string | undefined;
106
+ amount: number;
107
+ currency: string;
108
+ merchantReference: string;
109
+ pspReference: string;
110
+ status: string;
111
+ created: number;
112
+ }[]>>;
113
+ /**
114
+ * List stored payment methods for a shopper.
115
+ */
116
+ export declare const listPaymentMethods: import("convex/server").RegisteredQuery<"public", {
117
+ shopperReference: string;
118
+ }, Promise<{
119
+ cardExpiryMonth?: string | undefined;
120
+ cardExpiryYear?: string | undefined;
121
+ cardLast4?: string | undefined;
122
+ metadata?: any;
123
+ shopperReference: string;
124
+ recurringDetailReference: string;
125
+ variant: string;
126
+ status: string;
127
+ }[]>>;
128
+ /**
129
+ * Get a checkout session by its session ID.
130
+ */
131
+ export declare const getCheckoutSession: import("convex/server").RegisteredQuery<"public", {
132
+ sessionId: string;
133
+ }, Promise<{
134
+ autoCapture?: boolean | undefined;
135
+ shopperReference?: string | undefined;
136
+ url?: string | undefined;
137
+ amount: number;
138
+ currency: string;
139
+ merchantReference: string;
140
+ sessionData: string;
141
+ sessionId: string;
142
+ status: string;
143
+ } | null>>;
144
+ /**
145
+ * Create or update a shopper mapping with optional metadata.
146
+ */
147
+ export declare const createOrUpdateShopper: import("convex/server").RegisteredMutation<"public", {
148
+ metadata?: any;
149
+ userId?: string | undefined;
150
+ email?: string | undefined;
151
+ name?: string | undefined;
152
+ shopperReference: string;
153
+ }, Promise<string>>;
154
+ /**
155
+ * Get a checkout session by its merchantReference.
156
+ */
157
+ export declare const getCheckoutSessionByMerchantReference: import("convex/server").RegisteredQuery<"public", {
158
+ merchantReference: string;
159
+ }, Promise<{
160
+ autoCapture?: boolean | undefined;
161
+ shopperReference?: string | undefined;
162
+ url?: string | undefined;
163
+ amount: number;
164
+ currency: string;
165
+ merchantReference: string;
166
+ sessionData: string;
167
+ sessionId: string;
168
+ status: string;
169
+ } | null>>;
170
+ //# sourceMappingURL=public.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/component/public.ts"],"names":[],"mappings":"AAcA;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;UAcrB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;UAY5B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;UAY7B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;UAcrB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;KAYvB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;KAU9B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;KAU/B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;KAY7B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;UAY7B,CAAC;AAMH;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;mBAmChC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,qCAAqC;;;;;;;;;;;;UAchD,CAAC"}
@@ -0,0 +1,210 @@
1
+ import { v } from "convex/values";
2
+ import { mutation, query } from "./_generated/server.js";
3
+ import schema from "./schema.js";
4
+ // Reusable validators that omit system fields (_id, _creationTime)
5
+ const shopperValidator = schema.tables.shoppers.validator;
6
+ const paymentMethodValidator = schema.tables.payment_methods.validator;
7
+ const paymentValidator = schema.tables.payments.validator;
8
+ const checkoutSessionValidator = schema.tables.checkout_sessions.validator;
9
+ // ============================================================================
10
+ // PUBLIC QUERIES
11
+ // ============================================================================
12
+ /**
13
+ * Get a shopper by their shopperReference.
14
+ */
15
+ export const getShopper = query({
16
+ args: { shopperReference: v.string() },
17
+ returns: v.union(shopperValidator, v.null()),
18
+ handler: async (ctx, args) => {
19
+ const shopper = await ctx.db
20
+ .query("shoppers")
21
+ .withIndex("by_shopper_reference", (q) => q.eq("shopperReference", args.shopperReference))
22
+ .unique();
23
+ if (!shopper)
24
+ return null;
25
+ const { _id, _creationTime, ...data } = shopper;
26
+ return data;
27
+ },
28
+ });
29
+ /**
30
+ * Get a shopper by their email address.
31
+ */
32
+ export const getShopperByEmail = query({
33
+ args: { email: v.string() },
34
+ returns: v.union(shopperValidator, v.null()),
35
+ handler: async (ctx, args) => {
36
+ const shopper = await ctx.db
37
+ .query("shoppers")
38
+ .withIndex("by_email", (q) => q.eq("email", args.email))
39
+ .first();
40
+ if (!shopper)
41
+ return null;
42
+ const { _id, _creationTime, ...data } = shopper;
43
+ return data;
44
+ },
45
+ });
46
+ /**
47
+ * Get a shopper by their user ID.
48
+ */
49
+ export const getShopperByUserId = query({
50
+ args: { userId: v.string() },
51
+ returns: v.union(shopperValidator, v.null()),
52
+ handler: async (ctx, args) => {
53
+ const shopper = await ctx.db
54
+ .query("shoppers")
55
+ .withIndex("by_user_id", (q) => q.eq("userId", args.userId))
56
+ .first();
57
+ if (!shopper)
58
+ return null;
59
+ const { _id, _creationTime, ...data } = shopper;
60
+ return data;
61
+ },
62
+ });
63
+ /**
64
+ * Get a payment transaction by its PSP reference.
65
+ */
66
+ export const getPayment = query({
67
+ args: { pspReference: v.string() },
68
+ returns: v.union(paymentValidator, v.null()),
69
+ handler: async (ctx, args) => {
70
+ const payment = await ctx.db
71
+ .query("payments")
72
+ .withIndex("by_psp_reference", (q) => q.eq("pspReference", args.pspReference))
73
+ .unique();
74
+ if (!payment)
75
+ return null;
76
+ const { _id, _creationTime, ...data } = payment;
77
+ return data;
78
+ },
79
+ });
80
+ /**
81
+ * List all payments for a shopper.
82
+ */
83
+ export const listPayments = query({
84
+ args: { shopperReference: v.string() },
85
+ returns: v.array(paymentValidator),
86
+ handler: async (ctx, args) => {
87
+ const payments = await ctx.db
88
+ .query("payments")
89
+ .withIndex("by_shopper_reference", (q) => q.eq("shopperReference", args.shopperReference))
90
+ .collect();
91
+ return payments.map(({ _id, _creationTime, ...data }) => data);
92
+ },
93
+ });
94
+ /**
95
+ * List all payments for an organization ID.
96
+ */
97
+ export const listPaymentsByOrgId = query({
98
+ args: { orgId: v.string() },
99
+ returns: v.array(paymentValidator),
100
+ handler: async (ctx, args) => {
101
+ const payments = await ctx.db
102
+ .query("payments")
103
+ .withIndex("by_org_id", (q) => q.eq("orgId", args.orgId))
104
+ .collect();
105
+ return payments.map(({ _id, _creationTime, ...data }) => data);
106
+ },
107
+ });
108
+ /**
109
+ * List all payments for a user ID.
110
+ */
111
+ export const listPaymentsByUserId = query({
112
+ args: { userId: v.string() },
113
+ returns: v.array(paymentValidator),
114
+ handler: async (ctx, args) => {
115
+ const payments = await ctx.db
116
+ .query("payments")
117
+ .withIndex("by_user_id", (q) => q.eq("userId", args.userId))
118
+ .collect();
119
+ return payments.map(({ _id, _creationTime, ...data }) => data);
120
+ },
121
+ });
122
+ /**
123
+ * List stored payment methods for a shopper.
124
+ */
125
+ export const listPaymentMethods = query({
126
+ args: { shopperReference: v.string() },
127
+ returns: v.array(paymentMethodValidator),
128
+ handler: async (ctx, args) => {
129
+ const methods = await ctx.db
130
+ .query("payment_methods")
131
+ .withIndex("by_shopper_reference", (q) => q.eq("shopperReference", args.shopperReference))
132
+ .collect();
133
+ return methods.map(({ _id, _creationTime, ...data }) => data);
134
+ },
135
+ });
136
+ /**
137
+ * Get a checkout session by its session ID.
138
+ */
139
+ export const getCheckoutSession = query({
140
+ args: { sessionId: v.string() },
141
+ returns: v.union(checkoutSessionValidator, v.null()),
142
+ handler: async (ctx, args) => {
143
+ const session = await ctx.db
144
+ .query("checkout_sessions")
145
+ .withIndex("by_session_id", (q) => q.eq("sessionId", args.sessionId))
146
+ .unique();
147
+ if (!session)
148
+ return null;
149
+ const { _id, _creationTime, ...data } = session;
150
+ return data;
151
+ },
152
+ });
153
+ // ============================================================================
154
+ // PUBLIC MUTATIONS
155
+ // ============================================================================
156
+ /**
157
+ * Create or update a shopper mapping with optional metadata.
158
+ */
159
+ export const createOrUpdateShopper = mutation({
160
+ args: {
161
+ shopperReference: v.string(),
162
+ email: v.optional(v.string()),
163
+ name: v.optional(v.string()),
164
+ userId: v.optional(v.string()),
165
+ metadata: v.optional(v.any()),
166
+ },
167
+ returns: v.string(),
168
+ handler: async (ctx, args) => {
169
+ const existing = await ctx.db
170
+ .query("shoppers")
171
+ .withIndex("by_shopper_reference", (q) => q.eq("shopperReference", args.shopperReference))
172
+ .unique();
173
+ if (existing) {
174
+ await ctx.db.patch("shoppers", existing._id, {
175
+ ...(args.email !== undefined && { email: args.email }),
176
+ ...(args.name !== undefined && { name: args.name }),
177
+ ...(args.userId !== undefined && { userId: args.userId }),
178
+ ...(args.metadata !== undefined && { metadata: args.metadata }),
179
+ });
180
+ }
181
+ else {
182
+ await ctx.db.insert("shoppers", {
183
+ shopperReference: args.shopperReference,
184
+ email: args.email,
185
+ name: args.name,
186
+ userId: args.userId,
187
+ metadata: args.metadata,
188
+ });
189
+ }
190
+ return args.shopperReference;
191
+ },
192
+ });
193
+ /**
194
+ * Get a checkout session by its merchantReference.
195
+ */
196
+ export const getCheckoutSessionByMerchantReference = query({
197
+ args: { merchantReference: v.string() },
198
+ returns: v.union(checkoutSessionValidator, v.null()),
199
+ handler: async (ctx, args) => {
200
+ const session = await ctx.db
201
+ .query("checkout_sessions")
202
+ .withIndex("by_merchant_reference", (q) => q.eq("merchantReference", args.merchantReference))
203
+ .unique();
204
+ if (!session)
205
+ return null;
206
+ const { _id, _creationTime, ...data } = session;
207
+ return data;
208
+ },
209
+ });
210
+ //# sourceMappingURL=public.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public.js","sourceRoot":"","sources":["../../src/component/public.ts"],"names":[],"mappings":"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"}