ggcheckout-mcp 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.
- package/LICENSE +21 -0
- package/README.md +633 -0
- package/dist/api/client.d.ts +35 -0
- package/dist/api/client.d.ts.map +1 -0
- package/dist/api/client.js +270 -0
- package/dist/api/client.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +52 -0
- package/dist/index.js.map +1 -0
- package/dist/tools/checkouts.d.ts +4 -0
- package/dist/tools/checkouts.d.ts.map +1 -0
- package/dist/tools/checkouts.js +180 -0
- package/dist/tools/checkouts.js.map +1 -0
- package/dist/tools/payments.d.ts +4 -0
- package/dist/tools/payments.d.ts.map +1 -0
- package/dist/tools/payments.js +126 -0
- package/dist/tools/payments.js.map +1 -0
- package/dist/tools/products.d.ts +4 -0
- package/dist/tools/products.d.ts.map +1 -0
- package/dist/tools/products.js +154 -0
- package/dist/tools/products.js.map +1 -0
- package/dist/tools/types.d.ts +148 -0
- package/dist/tools/types.d.ts.map +1 -0
- package/dist/tools/types.js +2 -0
- package/dist/tools/types.js.map +1 -0
- package/dist/tools/webhooks.d.ts +4 -0
- package/dist/tools/webhooks.d.ts.map +1 -0
- package/dist/tools/webhooks.js +153 -0
- package/dist/tools/webhooks.js.map +1 -0
- package/dist/utils/logger.d.ts +4 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +13 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/validation.d.ts +11 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +54 -0
- package/dist/utils/validation.js.map +1 -0
- package/package.json +57 -0
|
@@ -0,0 +1,270 @@
|
|
|
1
|
+
import axios from 'axios';
|
|
2
|
+
import * as logger from '../utils/logger.js';
|
|
3
|
+
export class ApiClient {
|
|
4
|
+
client;
|
|
5
|
+
constructor(apiUrl, apiKey) {
|
|
6
|
+
this.client = axios.create({
|
|
7
|
+
baseURL: apiUrl,
|
|
8
|
+
timeout: 15000,
|
|
9
|
+
headers: {
|
|
10
|
+
'Content-Type': 'application/json',
|
|
11
|
+
},
|
|
12
|
+
});
|
|
13
|
+
this.client.interceptors.request.use((config) => {
|
|
14
|
+
config.headers.Authorization = `Bearer ${apiKey}`;
|
|
15
|
+
return config;
|
|
16
|
+
});
|
|
17
|
+
this.client.interceptors.response.use((response) => response, (error) => {
|
|
18
|
+
const status = error.response?.status;
|
|
19
|
+
const message = error.response?.data?.error || error.message;
|
|
20
|
+
logger.error('HTTP', `Request failed: ${status} - ${message}`);
|
|
21
|
+
throw new Error(`API Error (${status}): ${message}`);
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
async listProducts() {
|
|
25
|
+
try {
|
|
26
|
+
logger.info('HTTP', 'Listing products');
|
|
27
|
+
const response = await this.client.get('/api/product-delivery');
|
|
28
|
+
return response.data;
|
|
29
|
+
}
|
|
30
|
+
catch (error) {
|
|
31
|
+
throw error;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
async getProduct(id) {
|
|
35
|
+
try {
|
|
36
|
+
logger.info('HTTP', `Getting product: ${id}`);
|
|
37
|
+
const response = await this.client.get(`/api/product-delivery/${id}`);
|
|
38
|
+
return response.data;
|
|
39
|
+
}
|
|
40
|
+
catch (error) {
|
|
41
|
+
throw error;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
async createProduct(payload) {
|
|
45
|
+
try {
|
|
46
|
+
logger.info('HTTP', 'Creating product', { title: payload.title });
|
|
47
|
+
const response = await this.client.post('/api/product-delivery', payload);
|
|
48
|
+
return { ...payload, uid: response.data.documentId };
|
|
49
|
+
}
|
|
50
|
+
catch (error) {
|
|
51
|
+
throw error;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
async updateProduct(id, payload) {
|
|
55
|
+
try {
|
|
56
|
+
logger.info('HTTP', `Updating product: ${id}`);
|
|
57
|
+
const response = await this.client.patch(`/api/product-delivery/${id}`, {
|
|
58
|
+
...payload,
|
|
59
|
+
id,
|
|
60
|
+
});
|
|
61
|
+
return { ...payload, uid: id };
|
|
62
|
+
}
|
|
63
|
+
catch (error) {
|
|
64
|
+
throw error;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
async deleteProduct(id) {
|
|
68
|
+
try {
|
|
69
|
+
logger.info('HTTP', `Deleting product: ${id}`);
|
|
70
|
+
await this.client.delete(`/api/product-delivery/${id}`);
|
|
71
|
+
}
|
|
72
|
+
catch (error) {
|
|
73
|
+
throw error;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
async listPayments(businessId) {
|
|
77
|
+
try {
|
|
78
|
+
logger.info('HTTP', `Listing payments for business: ${businessId}`);
|
|
79
|
+
const response = await this.client.get(`/api/get-clients/business/${businessId}/payments`);
|
|
80
|
+
return response.data.payments;
|
|
81
|
+
}
|
|
82
|
+
catch (error) {
|
|
83
|
+
throw error;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
async getPaymentsPaginated(businessId, options) {
|
|
87
|
+
try {
|
|
88
|
+
const params = new URLSearchParams();
|
|
89
|
+
if (options?.pageSize)
|
|
90
|
+
params.append('pageSize', options.pageSize.toString());
|
|
91
|
+
if (options?.dateFrom)
|
|
92
|
+
params.append('dateFrom', options.dateFrom);
|
|
93
|
+
if (options?.dateTo)
|
|
94
|
+
params.append('dateTo', options.dateTo);
|
|
95
|
+
if (options?.lastCreatedAt)
|
|
96
|
+
params.append('lastCreatedAt', options.lastCreatedAt);
|
|
97
|
+
if (options?.status && options.status !== 'all') {
|
|
98
|
+
params.append('status', options.status);
|
|
99
|
+
}
|
|
100
|
+
if (options?.searchTerm)
|
|
101
|
+
params.append('searchTerm', options.searchTerm);
|
|
102
|
+
if (options?.countOnly)
|
|
103
|
+
params.append('countOnly', 'true');
|
|
104
|
+
const queryString = params.toString();
|
|
105
|
+
const url = `/api/get-clients/business/${businessId}/payments/paginated${queryString ? `?${queryString}` : ''}`;
|
|
106
|
+
logger.info('HTTP', `Getting paginated payments for business: ${businessId}`, { options });
|
|
107
|
+
const response = await this.client.get(url);
|
|
108
|
+
return response.data;
|
|
109
|
+
}
|
|
110
|
+
catch (error) {
|
|
111
|
+
throw error;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
async getPayment(businessId, paymentId) {
|
|
115
|
+
try {
|
|
116
|
+
logger.info('HTTP', `Getting payment: ${paymentId} for business: ${businessId}`);
|
|
117
|
+
const response = await this.client.get(`/api/get-clients/business/${businessId}/payments/paginated?pageSize=1000`);
|
|
118
|
+
if (!response.data.payments || response.data.payments.length === 0) {
|
|
119
|
+
throw new Error('No payments found for this business');
|
|
120
|
+
}
|
|
121
|
+
const payment = response.data.payments.find(p => p.id === paymentId);
|
|
122
|
+
if (!payment) {
|
|
123
|
+
throw new Error(`Payment ${paymentId} not found`);
|
|
124
|
+
}
|
|
125
|
+
return payment;
|
|
126
|
+
}
|
|
127
|
+
catch (error) {
|
|
128
|
+
throw error;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
async getMyBusinessId() {
|
|
132
|
+
try {
|
|
133
|
+
logger.info('HTTP', 'Getting authenticated user business ID');
|
|
134
|
+
const response = await this.client.get('/api/me');
|
|
135
|
+
return response.data.businessId;
|
|
136
|
+
}
|
|
137
|
+
catch (error) {
|
|
138
|
+
throw error;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
async listCheckouts(uuidOwnwer) {
|
|
142
|
+
try {
|
|
143
|
+
logger.info('HTTP', `Listing checkouts for owner: ${uuidOwnwer}`);
|
|
144
|
+
const response = await this.client.get(`/api/checkouts?uuidOwnwer=${uuidOwnwer}`);
|
|
145
|
+
return response.data;
|
|
146
|
+
}
|
|
147
|
+
catch (error) {
|
|
148
|
+
throw error;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
async getCheckout(id) {
|
|
152
|
+
try {
|
|
153
|
+
logger.info('HTTP', `Getting checkout: ${id}`);
|
|
154
|
+
const response = await this.client.get(`/api/checkouts/${id}`);
|
|
155
|
+
return response.data;
|
|
156
|
+
}
|
|
157
|
+
catch (error) {
|
|
158
|
+
throw error;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
async createCheckout(payload) {
|
|
162
|
+
try {
|
|
163
|
+
logger.info('HTTP', 'Creating checkout', { title: payload.title });
|
|
164
|
+
const response = await this.client.post('/api/checkouts', payload);
|
|
165
|
+
// Backend now returns { success: true, message: string, checkout: {...} }
|
|
166
|
+
return response.data.checkout;
|
|
167
|
+
}
|
|
168
|
+
catch (error) {
|
|
169
|
+
throw error;
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
async updateCheckout(id, payload) {
|
|
173
|
+
try {
|
|
174
|
+
logger.info('HTTP', `Updating checkout: ${id}`);
|
|
175
|
+
// First, get current checkout to merge with updates
|
|
176
|
+
const currentCheckout = await this.getCheckout(id);
|
|
177
|
+
// Backend requires all mandatory fields even for updates
|
|
178
|
+
const fullPayload = {
|
|
179
|
+
title: currentCheckout.title,
|
|
180
|
+
uuidOwnwer: currentCheckout.uuidOwnwer,
|
|
181
|
+
id: currentCheckout.id,
|
|
182
|
+
price: currentCheckout.price,
|
|
183
|
+
paymentMethods: currentCheckout.paymentMethods,
|
|
184
|
+
checkout: currentCheckout.checkout,
|
|
185
|
+
orderBumps: currentCheckout.orderBumps || [],
|
|
186
|
+
published: currentCheckout.published ?? true,
|
|
187
|
+
createBy: currentCheckout.createBy || 'system',
|
|
188
|
+
...payload, // Override with user updates
|
|
189
|
+
};
|
|
190
|
+
const response = await this.client.patch(`/api/checkouts/${id}`, fullPayload);
|
|
191
|
+
return response.data.productData || { ...fullPayload, uid: id };
|
|
192
|
+
}
|
|
193
|
+
catch (error) {
|
|
194
|
+
throw error;
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
async deleteCheckout(id) {
|
|
198
|
+
try {
|
|
199
|
+
logger.info('HTTP', `Deleting checkout: ${id}`);
|
|
200
|
+
// Get checkout first to get uuidOwnwer
|
|
201
|
+
const checkout = await this.getCheckout(id);
|
|
202
|
+
// Backend DELETE requires uuidOwnwer in body
|
|
203
|
+
await this.client.delete(`/api/checkouts/${id}`, {
|
|
204
|
+
data: { uuidOwnwer: checkout.uuidOwnwer }
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
catch (error) {
|
|
208
|
+
throw error;
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
async listWebhooks() {
|
|
212
|
+
try {
|
|
213
|
+
logger.info('HTTP', 'Listing webhooks');
|
|
214
|
+
const response = await this.client.get('/api/clients-webhook');
|
|
215
|
+
return response.data.webhooks;
|
|
216
|
+
}
|
|
217
|
+
catch (error) {
|
|
218
|
+
throw error;
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
async getWebhook(id) {
|
|
222
|
+
try {
|
|
223
|
+
logger.info('HTTP', `Getting webhook: ${id}`);
|
|
224
|
+
// Backend doesn't have a GET by ID endpoint, so we list and filter
|
|
225
|
+
const webhooks = await this.listWebhooks();
|
|
226
|
+
const webhook = webhooks.find(w => w.id === id);
|
|
227
|
+
if (!webhook) {
|
|
228
|
+
throw new Error(`Webhook ${id} not found`);
|
|
229
|
+
}
|
|
230
|
+
return webhook;
|
|
231
|
+
}
|
|
232
|
+
catch (error) {
|
|
233
|
+
throw error;
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
async createWebhook(payload) {
|
|
237
|
+
try {
|
|
238
|
+
logger.info('HTTP', 'Creating webhook', { name: payload.name });
|
|
239
|
+
// Add businessId if not provided
|
|
240
|
+
if (!payload.businessId) {
|
|
241
|
+
payload.businessId = await this.getMyBusinessId();
|
|
242
|
+
}
|
|
243
|
+
const response = await this.client.post('/api/clients-webhook', payload);
|
|
244
|
+
return response.data;
|
|
245
|
+
}
|
|
246
|
+
catch (error) {
|
|
247
|
+
throw error;
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
async updateWebhook(id, payload) {
|
|
251
|
+
try {
|
|
252
|
+
logger.info('HTTP', `Updating webhook: ${id}`);
|
|
253
|
+
const response = await this.client.put(`/api/clients-webhook?id=${id}`, payload);
|
|
254
|
+
return response.data;
|
|
255
|
+
}
|
|
256
|
+
catch (error) {
|
|
257
|
+
throw error;
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
async deleteWebhook(id) {
|
|
261
|
+
try {
|
|
262
|
+
logger.info('HTTP', `Deleting webhook: ${id}`);
|
|
263
|
+
await this.client.delete(`/api/clients-webhook?id=${id}`);
|
|
264
|
+
}
|
|
265
|
+
catch (error) {
|
|
266
|
+
throw error;
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import dotenv from 'dotenv';
|
|
3
|
+
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
4
|
+
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
5
|
+
import { ApiClient } from './api/client.js';
|
|
6
|
+
import { registerProductTools } from './tools/products.js';
|
|
7
|
+
import { registerPaymentTools } from './tools/payments.js';
|
|
8
|
+
import { registerCheckoutTools } from './tools/checkouts.js';
|
|
9
|
+
import { registerWebhookTools } from './tools/webhooks.js';
|
|
10
|
+
import * as logger from './utils/logger.js';
|
|
11
|
+
dotenv.config();
|
|
12
|
+
const API_KEY = process.env.GGCHECKOUT_API_KEY;
|
|
13
|
+
const API_URL = process.env.GGCHECKOUT_API_URL || 'https://www.ggcheckout.com';
|
|
14
|
+
if (!API_KEY) {
|
|
15
|
+
console.error('[MCP] Error: Missing required environment variable');
|
|
16
|
+
console.error('[MCP] Please set GGCHECKOUT_API_KEY');
|
|
17
|
+
console.error('[MCP] Example:');
|
|
18
|
+
console.error('[MCP] GGCHECKOUT_API_KEY=ggck_live_your_key_here');
|
|
19
|
+
console.error('[MCP] Get your API key at: https://www.ggcheckout.com/');
|
|
20
|
+
process.exit(1);
|
|
21
|
+
}
|
|
22
|
+
if (!API_KEY.startsWith('ggck_live_')) {
|
|
23
|
+
console.error('[MCP] Error: Invalid API key format');
|
|
24
|
+
console.error('[MCP] API key must start with "ggck_live_"');
|
|
25
|
+
process.exit(1);
|
|
26
|
+
}
|
|
27
|
+
logger.info('STARTUP', 'Initializing GG Checkout MCP Server');
|
|
28
|
+
logger.info('STARTUP', `API URL: ${API_URL}`);
|
|
29
|
+
const apiClient = new ApiClient(API_URL, API_KEY);
|
|
30
|
+
const server = new McpServer({
|
|
31
|
+
name: 'ggcheckout-mcp',
|
|
32
|
+
version: '0.1.0',
|
|
33
|
+
});
|
|
34
|
+
registerProductTools(server, apiClient);
|
|
35
|
+
registerPaymentTools(server, apiClient);
|
|
36
|
+
registerCheckoutTools(server, apiClient);
|
|
37
|
+
registerWebhookTools(server, apiClient);
|
|
38
|
+
logger.info('STARTUP', 'Registered 19 tools: list_products, get_product, create_product, update_product, delete_product, get_my_business_id, list_payments, get_payments_paginated, get_payment, list_checkouts, get_checkout, create_checkout, update_checkout, delete_checkout, list_webhooks, get_webhook, create_webhook, update_webhook, delete_webhook');
|
|
39
|
+
const transport = new StdioServerTransport();
|
|
40
|
+
await server.connect(transport);
|
|
41
|
+
logger.info('STARTUP', 'Server started successfully');
|
|
42
|
+
process.on('SIGINT', async () => {
|
|
43
|
+
logger.info('SHUTDOWN', 'Received SIGINT, shutting down gracefully');
|
|
44
|
+
await server.close();
|
|
45
|
+
process.exit(0);
|
|
46
|
+
});
|
|
47
|
+
process.on('SIGTERM', async () => {
|
|
48
|
+
logger.info('SHUTDOWN', 'Received SIGTERM, shutting down gracefully');
|
|
49
|
+
await server.close();
|
|
50
|
+
process.exit(0);
|
|
51
|
+
});
|
|
52
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkouts.d.ts","sourceRoot":"","sources":["../../src/tools/checkouts.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAG7C,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,QAwM5E"}
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import * as logger from '../utils/logger.js';
|
|
3
|
+
export function registerCheckoutTools(server, apiClient) {
|
|
4
|
+
// List all checkouts for a user
|
|
5
|
+
server.tool('list_checkouts', 'List all checkouts for the authenticated user', async () => {
|
|
6
|
+
const start = Date.now();
|
|
7
|
+
try {
|
|
8
|
+
logger.info('TOOL', 'list_checkouts: Starting');
|
|
9
|
+
// Get user's businessId first
|
|
10
|
+
const businessId = await apiClient.getMyBusinessId();
|
|
11
|
+
const checkouts = await apiClient.listCheckouts(businessId);
|
|
12
|
+
const duration = Date.now() - start;
|
|
13
|
+
logger.info('TOOL', `list_checkouts: Success (${duration}ms)`, { count: checkouts.length });
|
|
14
|
+
const output = { checkouts };
|
|
15
|
+
return {
|
|
16
|
+
content: [{ type: 'text', text: JSON.stringify(output, null, 2) }],
|
|
17
|
+
structuredContent: output
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
catch (error) {
|
|
21
|
+
const duration = Date.now() - start;
|
|
22
|
+
logger.error('TOOL', `list_checkouts: Failed (${duration}ms)`, error.message);
|
|
23
|
+
return {
|
|
24
|
+
content: [{ type: 'text', text: `Error: ${error.message}` }],
|
|
25
|
+
isError: true
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
// Get specific checkout
|
|
30
|
+
server.registerTool('get_checkout', {
|
|
31
|
+
description: 'Get details of a specific checkout by ID',
|
|
32
|
+
inputSchema: {
|
|
33
|
+
checkoutId: z.string().describe('Checkout ID (uid)')
|
|
34
|
+
}
|
|
35
|
+
}, async (args) => {
|
|
36
|
+
const { checkoutId } = args;
|
|
37
|
+
const start = Date.now();
|
|
38
|
+
try {
|
|
39
|
+
logger.info('TOOL', `get_checkout: Starting for ${checkoutId}`);
|
|
40
|
+
const checkout = await apiClient.getCheckout(checkoutId);
|
|
41
|
+
const duration = Date.now() - start;
|
|
42
|
+
logger.info('TOOL', `get_checkout: Success (${duration}ms)`);
|
|
43
|
+
const output = { checkout };
|
|
44
|
+
return {
|
|
45
|
+
content: [{ type: 'text', text: JSON.stringify(output, null, 2) }],
|
|
46
|
+
structuredContent: output
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
catch (error) {
|
|
50
|
+
const duration = Date.now() - start;
|
|
51
|
+
logger.error('TOOL', `get_checkout: Failed (${duration}ms)`, error.message);
|
|
52
|
+
return {
|
|
53
|
+
content: [{ type: 'text', text: `Error: ${error.message}` }],
|
|
54
|
+
isError: true
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
// Create checkout
|
|
59
|
+
server.registerTool('create_checkout', {
|
|
60
|
+
description: 'Create a new checkout page',
|
|
61
|
+
inputSchema: {
|
|
62
|
+
title: z.string().describe('Checkout page title'),
|
|
63
|
+
id: z.string().describe('Unique checkout ID (slug)'),
|
|
64
|
+
price: z.number().describe('Price in Brazilian Reais (e.g., 99.90)'),
|
|
65
|
+
paymentMethods: z.object({}).passthrough().describe('Payment methods configuration'),
|
|
66
|
+
checkout: z.object({}).passthrough().describe('Checkout page configuration'),
|
|
67
|
+
url: z.string().optional().describe('Checkout URL (optional)'),
|
|
68
|
+
bannerUrl: z.string().optional().describe('Banner image URL (optional)'),
|
|
69
|
+
image: z.string().optional().describe('Product image URL (optional)'),
|
|
70
|
+
sellerName: z.string().optional().describe('Seller name (optional)'),
|
|
71
|
+
orderBumps: z.array(z.any()).optional().describe('Order bumps (upsells) - optional'),
|
|
72
|
+
fields: z.array(z.any()).optional().describe('Custom form fields (optional)'),
|
|
73
|
+
socialCard: z.any().optional().describe('Social card configuration (optional)'),
|
|
74
|
+
published: z.boolean().optional().describe('Published status (default: true)'),
|
|
75
|
+
metricToken: z.string().optional().describe('Metrics token (optional)'),
|
|
76
|
+
emailProviderToken: z.string().optional().describe('Email provider token (optional)')
|
|
77
|
+
}
|
|
78
|
+
}, async (args) => {
|
|
79
|
+
const input = args;
|
|
80
|
+
const start = Date.now();
|
|
81
|
+
try {
|
|
82
|
+
logger.info('TOOL', 'create_checkout: Starting', { title: input.title });
|
|
83
|
+
// Get user's businessId and add to payload
|
|
84
|
+
const businessId = await apiClient.getMyBusinessId();
|
|
85
|
+
const payload = {
|
|
86
|
+
...input,
|
|
87
|
+
uuidOwnwer: businessId
|
|
88
|
+
};
|
|
89
|
+
const checkout = await apiClient.createCheckout(payload);
|
|
90
|
+
const duration = Date.now() - start;
|
|
91
|
+
logger.info('TOOL', `create_checkout: Success (${duration}ms)`, { uid: checkout.uid });
|
|
92
|
+
const output = { success: true, checkout };
|
|
93
|
+
return {
|
|
94
|
+
content: [{ type: 'text', text: JSON.stringify(output, null, 2) }],
|
|
95
|
+
structuredContent: output
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
catch (error) {
|
|
99
|
+
const duration = Date.now() - start;
|
|
100
|
+
logger.error('TOOL', `create_checkout: Failed (${duration}ms)`, error.message);
|
|
101
|
+
return {
|
|
102
|
+
content: [{ type: 'text', text: `Error: ${error.message}` }],
|
|
103
|
+
isError: true
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
// Update checkout
|
|
108
|
+
server.registerTool('update_checkout', {
|
|
109
|
+
description: 'Update an existing checkout page. Only provide fields you want to update.',
|
|
110
|
+
inputSchema: {
|
|
111
|
+
checkoutId: z.string().describe('Checkout ID (uid)'),
|
|
112
|
+
title: z.string().optional().describe('Checkout page title'),
|
|
113
|
+
price: z.number().optional().describe('Price in Brazilian Reais'),
|
|
114
|
+
paymentMethods: z.object({}).passthrough().optional().describe('Payment methods configuration'),
|
|
115
|
+
checkout: z.object({}).passthrough().optional().describe('Checkout page configuration'),
|
|
116
|
+
url: z.string().optional().describe('Checkout URL'),
|
|
117
|
+
bannerUrl: z.string().optional().describe('Banner image URL'),
|
|
118
|
+
image: z.string().optional().describe('Product image URL'),
|
|
119
|
+
sellerName: z.string().optional().describe('Seller name'),
|
|
120
|
+
orderBumps: z.array(z.any()).optional().describe('Order bumps (upsells)'),
|
|
121
|
+
fields: z.array(z.any()).optional().describe('Custom form fields'),
|
|
122
|
+
socialCard: z.any().optional().describe('Social card configuration'),
|
|
123
|
+
published: z.boolean().optional().describe('Published status'),
|
|
124
|
+
metricToken: z.string().optional().describe('Metrics token'),
|
|
125
|
+
emailProviderToken: z.string().optional().describe('Email provider token')
|
|
126
|
+
}
|
|
127
|
+
}, async (args) => {
|
|
128
|
+
const { checkoutId, ...input } = args;
|
|
129
|
+
const start = Date.now();
|
|
130
|
+
try {
|
|
131
|
+
logger.info('TOOL', `update_checkout: Starting for ${checkoutId}`);
|
|
132
|
+
const checkout = await apiClient.updateCheckout(checkoutId, input);
|
|
133
|
+
const duration = Date.now() - start;
|
|
134
|
+
logger.info('TOOL', `update_checkout: Success (${duration}ms)`);
|
|
135
|
+
const output = { success: true, checkout };
|
|
136
|
+
return {
|
|
137
|
+
content: [{ type: 'text', text: JSON.stringify(output, null, 2) }],
|
|
138
|
+
structuredContent: output
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
catch (error) {
|
|
142
|
+
const duration = Date.now() - start;
|
|
143
|
+
logger.error('TOOL', `update_checkout: Failed (${duration}ms)`, error.message);
|
|
144
|
+
return {
|
|
145
|
+
content: [{ type: 'text', text: `Error: ${error.message}` }],
|
|
146
|
+
isError: true
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
});
|
|
150
|
+
// Delete checkout
|
|
151
|
+
server.registerTool('delete_checkout', {
|
|
152
|
+
description: 'Delete a checkout page by ID',
|
|
153
|
+
inputSchema: {
|
|
154
|
+
checkoutId: z.string().describe('Checkout ID (uid)')
|
|
155
|
+
}
|
|
156
|
+
}, async (args) => {
|
|
157
|
+
const { checkoutId } = args;
|
|
158
|
+
const start = Date.now();
|
|
159
|
+
try {
|
|
160
|
+
logger.info('TOOL', `delete_checkout: Starting for ${checkoutId}`);
|
|
161
|
+
await apiClient.deleteCheckout(checkoutId);
|
|
162
|
+
const duration = Date.now() - start;
|
|
163
|
+
logger.info('TOOL', `delete_checkout: Success (${duration}ms)`);
|
|
164
|
+
const output = { success: true, message: `Checkout ${checkoutId} deleted successfully` };
|
|
165
|
+
return {
|
|
166
|
+
content: [{ type: 'text', text: JSON.stringify(output, null, 2) }],
|
|
167
|
+
structuredContent: output
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
catch (error) {
|
|
171
|
+
const duration = Date.now() - start;
|
|
172
|
+
logger.error('TOOL', `delete_checkout: Failed (${duration}ms)`, error.message);
|
|
173
|
+
return {
|
|
174
|
+
content: [{ type: 'text', text: `Error: ${error.message}` }],
|
|
175
|
+
isError: true
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
//# sourceMappingURL=checkouts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkouts.js","sourceRoot":"","sources":["../../src/tools/checkouts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAE7C,MAAM,UAAU,qBAAqB,CAAC,MAAiB,EAAE,SAAoB;IAC3E,gCAAgC;IAChC,MAAM,CAAC,IAAI,CACT,gBAAgB,EAChB,+CAA+C,EAC/C,KAAK,IAAI,EAAE;QACT,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;YAChD,8BAA8B;YAC9B,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,eAAe,EAAE,CAAC;YACrD,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;YAC5D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;YACpC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,4BAA4B,QAAQ,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;YAE5F,MAAM,MAAM,GAAG,EAAE,SAAS,EAAE,CAAC;YAC7B,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;gBAC3E,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;YACpC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,2BAA2B,QAAQ,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YAC9E,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;gBACrE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,wBAAwB;IACxB,MAAM,CAAC,YAAY,CACjB,cAAc,EACd;QACE,WAAW,EAAE,0CAA0C;QACvD,WAAW,EAAE;YACX,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;SACrD;KACF,EACD,KAAK,EAAE,IAAS,EAAE,EAAE;QAClB,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,8BAA8B,UAAU,EAAE,CAAC,CAAC;YAChE,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;YACpC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,0BAA0B,QAAQ,KAAK,CAAC,CAAC;YAE7D,MAAM,MAAM,GAAG,EAAE,QAAQ,EAAE,CAAC;YAC5B,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;gBAC3E,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;YACpC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,yBAAyB,QAAQ,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YAC5E,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;gBACrE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,kBAAkB;IAClB,MAAM,CAAC,YAAY,CACjB,iBAAiB,EACjB;QACE,WAAW,EAAE,4BAA4B;QACzC,WAAW,EAAE;YACX,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;YACjD,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;YACpD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;YACpE,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;YACpF,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;YAC5E,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;YAC9D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;YACxE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;YACrE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;YACpE,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;YACpF,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;YAC7E,UAAU,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;YAC/E,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;YAC9E,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;YACvE,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;SACtF;KACF,EACD,KAAK,EAAE,IAAS,EAAE,EAAE;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,2BAA2B,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YACzE,2CAA2C;YAC3C,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,eAAe,EAAE,CAAC;YACrD,MAAM,OAAO,GAAG;gBACd,GAAG,KAAK;gBACR,UAAU,EAAE,UAAU;aACvB,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;YACpC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,6BAA6B,QAAQ,KAAK,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;YAEvF,MAAM,MAAM,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YAC3C,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;gBAC3E,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;YACpC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,4BAA4B,QAAQ,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YAC/E,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;gBACrE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,kBAAkB;IAClB,MAAM,CAAC,YAAY,CACjB,iBAAiB,EACjB;QACE,WAAW,EAAE,2EAA2E;QACxF,WAAW,EAAE;YACX,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YACpD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;YAC5D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;YACjE,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;YAC/F,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;YACvF,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;YACnD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YAC7D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YAC1D,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;YACzD,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;YACzE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;YAClE,UAAU,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;YACpE,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YAC9D,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;YAC5D,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;SAC3E;KACF,EACD,KAAK,EAAE,IAAS,EAAE,EAAE;QAClB,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,iCAAiC,UAAU,EAAE,CAAC,CAAC;YACnE,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YACnE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;YACpC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,6BAA6B,QAAQ,KAAK,CAAC,CAAC;YAEhE,MAAM,MAAM,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YAC3C,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;gBAC3E,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;YACpC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,4BAA4B,QAAQ,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YAC/E,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;gBACrE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,kBAAkB;IAClB,MAAM,CAAC,YAAY,CACjB,iBAAiB,EACjB;QACE,WAAW,EAAE,8BAA8B;QAC3C,WAAW,EAAE;YACX,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;SACrD;KACF,EACD,KAAK,EAAE,IAAS,EAAE,EAAE;QAClB,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,iCAAiC,UAAU,EAAE,CAAC,CAAC;YACnE,MAAM,SAAS,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;YAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;YACpC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,6BAA6B,QAAQ,KAAK,CAAC,CAAC;YAEhE,MAAM,MAAM,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,UAAU,uBAAuB,EAAE,CAAC;YACzF,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;gBAC3E,iBAAiB,EAAE,MAAM;aAC1B,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;YACpC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,4BAA4B,QAAQ,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YAC/E,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;gBACrE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"payments.d.ts","sourceRoot":"","sources":["../../src/tools/payments.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAG7C,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,QAmJ3E"}
|