@paylobster/cli 4.5.0 → 4.6.1

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 (39) hide show
  1. package/EXAMPLES.md +61 -61
  2. package/dist/src/commands/alerts.d.ts +3 -0
  3. package/dist/src/commands/alerts.d.ts.map +1 -0
  4. package/dist/src/commands/alerts.js +181 -0
  5. package/dist/src/commands/alerts.js.map +1 -0
  6. package/dist/src/commands/init.d.ts +3 -0
  7. package/dist/src/commands/init.d.ts.map +1 -0
  8. package/dist/src/commands/init.js +232 -0
  9. package/dist/src/commands/init.js.map +1 -0
  10. package/dist/src/commands/link.d.ts +6 -0
  11. package/dist/src/commands/link.d.ts.map +1 -0
  12. package/dist/src/commands/link.js +188 -0
  13. package/dist/src/commands/link.js.map +1 -0
  14. package/dist/src/commands/refund.d.ts +6 -0
  15. package/dist/src/commands/refund.d.ts.map +1 -0
  16. package/dist/src/commands/refund.js +199 -0
  17. package/dist/src/commands/refund.js.map +1 -0
  18. package/dist/src/commands/swap.d.ts.map +1 -1
  19. package/dist/src/commands/swap.js +93 -1
  20. package/dist/src/commands/swap.js.map +1 -1
  21. package/dist/src/commands/webhook.d.ts +6 -0
  22. package/dist/src/commands/webhook.d.ts.map +1 -0
  23. package/dist/src/commands/webhook.js +208 -0
  24. package/dist/src/commands/webhook.js.map +1 -0
  25. package/dist/src/index.js +10 -0
  26. package/dist/src/index.js.map +1 -1
  27. package/dist/src/lib/contracts.d.ts +23 -161
  28. package/dist/src/lib/contracts.d.ts.map +1 -1
  29. package/dist/src/lib/contracts.js +6 -6
  30. package/dist/src/lib/contracts.js.map +1 -1
  31. package/package.json +1 -1
  32. package/src/commands/alerts.ts +210 -0
  33. package/src/commands/init.ts +256 -0
  34. package/src/commands/link.ts +240 -0
  35. package/src/commands/refund.ts +250 -0
  36. package/src/commands/swap.ts +120 -1
  37. package/src/commands/webhook.ts +260 -0
  38. package/src/index.ts +10 -0
  39. package/src/lib/contracts.ts +6 -6
@@ -0,0 +1,199 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createRefundCommand = createRefundCommand;
4
+ const commander_1 = require("commander");
5
+ const display_1 = require("../lib/display");
6
+ const API_URL = process.env.PAYLOBSTER_API_URL || 'https://paylobster.com';
7
+ /**
8
+ * Refunds command
9
+ */
10
+ function createRefundCommand() {
11
+ const cmd = new commander_1.Command('refund')
12
+ .description('Request and manage refunds');
13
+ // Request subcommand
14
+ cmd
15
+ .command('request')
16
+ .description('Request a refund for an escrow')
17
+ .requiredOption('--escrow-id <id>', 'Escrow ID')
18
+ .requiredOption('--reason <text>', 'Reason for refund')
19
+ .option('--tx-hash <hash>', 'Transaction hash (if applicable)')
20
+ .option('--yes', 'Skip confirmation')
21
+ .option('--json', 'Output as JSON')
22
+ .action(async (options) => {
23
+ try {
24
+ // Validate escrow ID
25
+ const escrowId = parseInt(options.escrowId);
26
+ if (isNaN(escrowId) || escrowId < 0) {
27
+ (0, display_1.error)('Invalid escrow ID. Must be a non-negative number');
28
+ process.exit(1);
29
+ }
30
+ // Confirm refund request
31
+ if (!options.yes) {
32
+ console.log();
33
+ console.log('Refund Request:');
34
+ console.log(' Escrow ID: ', escrowId);
35
+ console.log(' Reason: ', options.reason);
36
+ console.log();
37
+ const confirmed = await (0, display_1.confirm)('Submit this refund request?');
38
+ if (!confirmed) {
39
+ (0, display_1.info)('Cancelled');
40
+ process.exit(0);
41
+ }
42
+ }
43
+ const refund = await (0, display_1.withSpinner)('Submitting refund request...', async () => {
44
+ const response = await fetch(`${API_URL}/api/v3/refunds`, {
45
+ method: 'POST',
46
+ headers: {
47
+ 'Content-Type': 'application/json',
48
+ },
49
+ body: JSON.stringify({
50
+ escrowId,
51
+ reason: options.reason,
52
+ txHash: options.txHash,
53
+ }),
54
+ });
55
+ if (!response.ok) {
56
+ const err = await response.json();
57
+ throw new Error(err.error || 'Failed to request refund');
58
+ }
59
+ return response.json();
60
+ });
61
+ if ((0, display_1.outputJSON)(refund, options)) {
62
+ return;
63
+ }
64
+ (0, display_1.success)('Refund request submitted!');
65
+ console.log();
66
+ console.log(' Refund ID: ', refund.refundId);
67
+ console.log(' Escrow ID: ', refund.escrowId);
68
+ console.log(' Status: ', getStatusEmoji(refund.status), refund.status);
69
+ console.log(' Amount: ', refund.amount);
70
+ console.log(' Reason: ', refund.reason);
71
+ console.log(' Created: ', new Date(refund.createdAt).toLocaleString());
72
+ console.log();
73
+ (0, display_1.info)('Your refund request will be processed according to the escrow terms');
74
+ }
75
+ catch (err) {
76
+ (0, display_1.error)(`Failed to request refund: ${err.message}`);
77
+ process.exit(1);
78
+ }
79
+ });
80
+ // Get subcommand
81
+ cmd
82
+ .command('get <refund-id>')
83
+ .description('Get refund status')
84
+ .option('--json', 'Output as JSON')
85
+ .action(async (refundId, options) => {
86
+ try {
87
+ const refund = await (0, display_1.withSpinner)('Fetching refund details...', async () => {
88
+ const response = await fetch(`${API_URL}/api/v3/refunds?refundId=${encodeURIComponent(refundId)}`, {
89
+ method: 'GET',
90
+ headers: {
91
+ 'Content-Type': 'application/json',
92
+ },
93
+ });
94
+ if (!response.ok) {
95
+ const err = await response.json();
96
+ throw new Error(err.error || 'Failed to fetch refund');
97
+ }
98
+ return response.json();
99
+ });
100
+ if ((0, display_1.outputJSON)(refund, options)) {
101
+ return;
102
+ }
103
+ console.log();
104
+ console.log('Refund Details:');
105
+ console.log(' Refund ID: ', refund.refundId);
106
+ console.log(' Escrow ID: ', refund.escrowId);
107
+ console.log(' Status: ', getStatusEmoji(refund.status), refund.status);
108
+ console.log(' Amount: ', refund.amount);
109
+ console.log(' Reason: ', refund.reason);
110
+ if (refund.auto) {
111
+ console.log(' Auto: ', '✅ Automatic refund');
112
+ }
113
+ if (refund.txHash) {
114
+ console.log(' TX Hash: ', refund.txHash);
115
+ }
116
+ console.log(' Created: ', new Date(refund.createdAt).toLocaleString());
117
+ if (refund.processedAt) {
118
+ console.log(' Processed: ', new Date(refund.processedAt).toLocaleString());
119
+ }
120
+ console.log();
121
+ }
122
+ catch (err) {
123
+ (0, display_1.error)(`Failed to fetch refund: ${err.message}`);
124
+ process.exit(1);
125
+ }
126
+ });
127
+ // List by escrow subcommand
128
+ cmd
129
+ .command('list <escrow-id>')
130
+ .description('List all refunds for an escrow')
131
+ .option('--json', 'Output as JSON')
132
+ .action(async (escrowIdStr, options) => {
133
+ try {
134
+ // Validate escrow ID
135
+ const escrowId = parseInt(escrowIdStr);
136
+ if (isNaN(escrowId) || escrowId < 0) {
137
+ (0, display_1.error)('Invalid escrow ID. Must be a non-negative number');
138
+ process.exit(1);
139
+ }
140
+ const result = await (0, display_1.withSpinner)('Fetching refunds...', async () => {
141
+ const response = await fetch(`${API_URL}/api/v3/refunds?escrowId=${escrowId}`, {
142
+ method: 'GET',
143
+ headers: {
144
+ 'Content-Type': 'application/json',
145
+ },
146
+ });
147
+ if (!response.ok) {
148
+ const err = await response.json();
149
+ throw new Error(err.error || 'Failed to fetch refunds');
150
+ }
151
+ return response.json();
152
+ });
153
+ if ((0, display_1.outputJSON)(result, options)) {
154
+ return;
155
+ }
156
+ if (result.refunds.length === 0) {
157
+ (0, display_1.info)(`No refunds found for escrow ID ${escrowId}`);
158
+ return;
159
+ }
160
+ console.log();
161
+ console.log(`Found ${result.refunds.length} refund(s) for escrow ${escrowId}:`);
162
+ console.log();
163
+ for (const refund of result.refunds) {
164
+ console.log(` ${refund.refundId}`);
165
+ console.log(` Status: ${getStatusEmoji(refund.status)} ${refund.status}`);
166
+ console.log(` Amount: ${refund.amount}`);
167
+ console.log(` Reason: ${refund.reason}`);
168
+ if (refund.auto) {
169
+ console.log(` Auto: ✅ Automatic`);
170
+ }
171
+ console.log(` Created: ${new Date(refund.createdAt).toLocaleString()}`);
172
+ if (refund.processedAt) {
173
+ console.log(` Processed: ${new Date(refund.processedAt).toLocaleString()}`);
174
+ }
175
+ console.log();
176
+ }
177
+ }
178
+ catch (err) {
179
+ (0, display_1.error)(`Failed to fetch refunds: ${err.message}`);
180
+ process.exit(1);
181
+ }
182
+ });
183
+ return cmd;
184
+ }
185
+ function getStatusEmoji(status) {
186
+ switch (status) {
187
+ case 'pending':
188
+ return '⏳';
189
+ case 'approved':
190
+ return '✅';
191
+ case 'rejected':
192
+ return '❌';
193
+ case 'processed':
194
+ return '✅';
195
+ default:
196
+ return '❓';
197
+ }
198
+ }
199
+ //# sourceMappingURL=refund.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"refund.js","sourceRoot":"","sources":["../../../src/commands/refund.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"swap.d.ts","sourceRoot":"","sources":["../../../src/commands/swap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA6JpC;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CA4M3C"}
1
+ {"version":3,"file":"swap.d.ts","sourceRoot":"","sources":["../../../src/commands/swap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA2LpC;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAqS3C"}
@@ -110,12 +110,33 @@ async function getTokenPrice(tokenAddress) {
110
110
  const endpoint = `/swap/allowance-holder/price?chainId=${BASE_CHAIN_ID}&sellToken=${tokenAddress}&buyToken=USDC&sellAmount=${parseTokenAmount('1', getTokenDecimals(tokenAddress))}`;
111
111
  return call0xAPI(endpoint);
112
112
  }
113
+ const API_BASE = process.env.PAYLOBSTER_API_URL || 'https://paylobster.com';
114
+ /**
115
+ * Get smart route from PayLobster API
116
+ */
117
+ async function getSmartRoute(sellToken, buyToken, sellAmount, takerAddress) {
118
+ const res = await fetch(`${API_BASE}/api/v3/swap/route`, {
119
+ method: 'POST',
120
+ headers: { 'Content-Type': 'application/json' },
121
+ body: JSON.stringify({
122
+ tokenIn: sellToken,
123
+ tokenOut: buyToken,
124
+ amountIn: sellAmount,
125
+ takerAddress,
126
+ }),
127
+ });
128
+ if (!res.ok) {
129
+ const data = await res.json().catch(() => ({}));
130
+ throw new Error(data.error || `Smart route failed: ${res.status}`);
131
+ }
132
+ return res.json();
133
+ }
113
134
  /**
114
135
  * Create swap command
115
136
  */
116
137
  function createSwapCommand() {
117
138
  const cmd = new commander_1.Command('swap')
118
- .description('Token swaps on Base using 0x');
139
+ .description('Token swaps on Base using 0x (with smart routing)');
119
140
  // Swap quote subcommand
120
141
  cmd
121
142
  .command('quote')
@@ -222,6 +243,77 @@ function createSwapCommand() {
222
243
  process.exit(1);
223
244
  }
224
245
  });
246
+ // Smart swap subcommand (natural language style)
247
+ cmd
248
+ .command('auto')
249
+ .description('Smart swap with auto-routing (multi-hop if needed)')
250
+ .argument('<amount>', 'Amount to sell')
251
+ .argument('<fromToken>', 'Token to sell')
252
+ .argument('[toKeyword]', '"to" keyword (ignored)')
253
+ .argument('[toToken]', 'Token to buy')
254
+ .option('--usd', 'Interpret amount as USD value')
255
+ .option('--slippage <percent>', 'Slippage tolerance (default: 0.5)', '0.5')
256
+ .option('--yes', 'Skip confirmation')
257
+ .option('--json', 'Output as JSON')
258
+ .action(async (amount, fromTokenArg, toKeyword, toTokenArg, options) => {
259
+ try {
260
+ const address = (0, wallet_1.getWalletAddress)();
261
+ // Handle "10 USDC to ANTIHUNTER" pattern
262
+ let toToken = toTokenArg;
263
+ if (toKeyword && toKeyword.toLowerCase() !== 'to') {
264
+ // "swap auto 10 USDC ANTIHUNTER" — no "to" keyword
265
+ toToken = toKeyword;
266
+ }
267
+ if (!toToken) {
268
+ (0, display_1.error)('Missing destination token. Usage: paylobster swap auto 10 USDC to ANTIHUNTER');
269
+ process.exit(1);
270
+ }
271
+ const sellTokenAddr = resolveToken(fromTokenArg);
272
+ const buyTokenAddr = resolveToken(toToken);
273
+ const sellDecimals = getTokenDecimals(fromTokenArg);
274
+ const sellAmount = parseTokenAmount(amount.replace('$', ''), sellDecimals);
275
+ const routeData = await (0, display_1.withSpinner)('🧠 Finding best route...', async () => getSmartRoute(sellTokenAddr, buyTokenAddr, sellAmount, address));
276
+ if (!routeData.bestRoute) {
277
+ (0, display_1.error)('No route found for this swap');
278
+ process.exit(1);
279
+ }
280
+ const route = routeData.bestRoute;
281
+ const hopCount = route.hops?.length || 1;
282
+ if ((0, display_1.outputJSON)(routeData, options))
283
+ return;
284
+ console.log();
285
+ console.log(chalk_1.default.bold.cyan('🧠 Smart Route Found'));
286
+ console.log();
287
+ console.log(' From: ', chalk_1.default.white.bold(amount), chalk_1.default.gray(fromTokenArg.toUpperCase()));
288
+ console.log(' To: ', chalk_1.default.white.bold(toToken.toUpperCase()));
289
+ console.log(' Route: ', chalk_1.default.white(route.source || 'Auto'));
290
+ console.log(' Hops: ', chalk_1.default.white(hopCount.toString()));
291
+ // Show each hop
292
+ if (route.hops) {
293
+ for (let i = 0; i < route.hops.length; i++) {
294
+ const hop = route.hops[i];
295
+ console.log(chalk_1.default.gray(` Step ${i + 1}: `), chalk_1.default.dim(`${hop.dex}: ${hop.tokenIn.slice(0, 8)}... → ${hop.tokenOut.slice(0, 8)}...`));
296
+ }
297
+ }
298
+ console.log(' Output: ', chalk_1.default.green.bold(routeData.estimatedOutput));
299
+ console.log(' Impact: ', chalk_1.default.yellow(`${((routeData.priceImpact || 0) * 100).toFixed(2)}%`));
300
+ console.log(' Gas: ', chalk_1.default.gray(`~${routeData.gasEstimate}`));
301
+ console.log();
302
+ if (!options.yes) {
303
+ const confirmed = await (0, display_1.confirm)('Execute this swap?');
304
+ if (!confirmed) {
305
+ (0, display_1.info)('Cancelled');
306
+ process.exit(0);
307
+ }
308
+ }
309
+ (0, display_1.info)('Swap execution requires wallet signing. Transaction data is available above.');
310
+ console.log();
311
+ }
312
+ catch (err) {
313
+ (0, display_1.error)(`Smart swap failed: ${err}`);
314
+ process.exit(1);
315
+ }
316
+ });
225
317
  // List tokens subcommand
226
318
  cmd
227
319
  .command('tokens')
@@ -1 +1 @@
1
- {"version":3,"file":"swap.js","sourceRoot":"","sources":["../../../src/commands/swap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"swap.js","sourceRoot":"","sources":["../../../src/commands/swap.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { Command } from 'commander';
2
+ /**
3
+ * Webhooks command
4
+ */
5
+ export declare function createWebhookCommand(): Command;
6
+ //# sourceMappingURL=webhook.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhook.d.ts","sourceRoot":"","sources":["../../../src/commands/webhook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiBpC;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,OAAO,CA+O9C"}
@@ -0,0 +1,208 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createWebhookCommand = createWebhookCommand;
4
+ const commander_1 = require("commander");
5
+ const display_1 = require("../lib/display");
6
+ const API_URL = process.env.PAYLOBSTER_API_URL || 'https://paylobster.com';
7
+ /**
8
+ * Webhooks command
9
+ */
10
+ function createWebhookCommand() {
11
+ const cmd = new commander_1.Command('webhooks')
12
+ .description('Register and manage webhooks');
13
+ // Register subcommand
14
+ cmd
15
+ .command('register')
16
+ .description('Register a new webhook')
17
+ .requiredOption('--url <url>', 'Webhook URL')
18
+ .requiredOption('--events <events>', 'Comma-separated event types')
19
+ .option('--secret <secret>', 'Webhook secret for signature verification')
20
+ .option('--json', 'Output as JSON')
21
+ .action(async (options) => {
22
+ try {
23
+ // Validate URL
24
+ try {
25
+ new URL(options.url);
26
+ }
27
+ catch {
28
+ (0, display_1.error)('Invalid URL format');
29
+ process.exit(1);
30
+ }
31
+ // Parse events
32
+ const events = options.events.split(',').map(e => e.trim()).filter(Boolean);
33
+ if (events.length === 0) {
34
+ (0, display_1.error)('At least one event type is required');
35
+ process.exit(1);
36
+ }
37
+ const webhook = await (0, display_1.withSpinner)('Registering webhook...', async () => {
38
+ const response = await fetch(`${API_URL}/api/v3/webhooks`, {
39
+ method: 'POST',
40
+ headers: {
41
+ 'Content-Type': 'application/json',
42
+ },
43
+ body: JSON.stringify({
44
+ url: options.url,
45
+ events,
46
+ secret: options.secret,
47
+ }),
48
+ });
49
+ if (!response.ok) {
50
+ const err = await response.json();
51
+ throw new Error(err.error || 'Failed to register webhook');
52
+ }
53
+ return response.json();
54
+ });
55
+ if ((0, display_1.outputJSON)(webhook, options)) {
56
+ return;
57
+ }
58
+ (0, display_1.success)('Webhook registered!');
59
+ console.log();
60
+ console.log(' Webhook ID: ', webhook.id);
61
+ console.log(' URL: ', webhook.url);
62
+ console.log(' Events: ', webhook.events.join(', '));
63
+ console.log(' Status: ', webhook.status);
64
+ if (webhook.secret) {
65
+ console.log(' Secret: ', webhook.secret);
66
+ }
67
+ console.log();
68
+ (0, display_1.info)('Your webhook will receive notifications for the specified events');
69
+ }
70
+ catch (err) {
71
+ (0, display_1.error)(`Failed to register webhook: ${err.message}`);
72
+ process.exit(1);
73
+ }
74
+ });
75
+ // List subcommand
76
+ cmd
77
+ .command('list')
78
+ .description('List all registered webhooks')
79
+ .option('--address <address>', 'Filter by address')
80
+ .option('--json', 'Output as JSON')
81
+ .action(async (options) => {
82
+ try {
83
+ const result = await (0, display_1.withSpinner)('Fetching webhooks...', async () => {
84
+ const url = new URL(`${API_URL}/api/v3/webhooks`);
85
+ if (options.address) {
86
+ url.searchParams.set('address', options.address);
87
+ }
88
+ const response = await fetch(url.toString(), {
89
+ method: 'GET',
90
+ headers: {
91
+ 'Content-Type': 'application/json',
92
+ },
93
+ });
94
+ if (!response.ok) {
95
+ const err = await response.json();
96
+ throw new Error(err.error || 'Failed to fetch webhooks');
97
+ }
98
+ return response.json();
99
+ });
100
+ if ((0, display_1.outputJSON)(result, options)) {
101
+ return;
102
+ }
103
+ if (result.webhooks.length === 0) {
104
+ (0, display_1.info)('No webhooks registered');
105
+ return;
106
+ }
107
+ console.log();
108
+ console.log(`Found ${result.webhooks.length} webhook(s):`);
109
+ console.log();
110
+ for (const webhook of result.webhooks) {
111
+ console.log(` ${webhook.id}`);
112
+ console.log(` URL: ${webhook.url}`);
113
+ console.log(` Events: ${webhook.events.join(', ')}`);
114
+ console.log(` Status: ${webhook.status === 'active' ? '✅ Active' : '⏸️ Paused'}`);
115
+ if (webhook.lastDeliveryAttempt) {
116
+ const status = webhook.lastDeliveryStatus === 'success' ? '✅' : '❌';
117
+ console.log(` Last: ${status} ${new Date(webhook.lastDeliveryAttempt).toLocaleString()}`);
118
+ }
119
+ console.log();
120
+ }
121
+ }
122
+ catch (err) {
123
+ (0, display_1.error)(`Failed to fetch webhooks: ${err.message}`);
124
+ process.exit(1);
125
+ }
126
+ });
127
+ // Get subcommand
128
+ cmd
129
+ .command('get <id>')
130
+ .description('Get webhook details')
131
+ .option('--include-secret', 'Include webhook secret in output')
132
+ .option('--json', 'Output as JSON')
133
+ .action(async (id, options) => {
134
+ try {
135
+ const webhook = await (0, display_1.withSpinner)('Fetching webhook...', async () => {
136
+ const url = new URL(`${API_URL}/api/v3/webhooks/${id}`);
137
+ if (options.includeSecret) {
138
+ url.searchParams.set('includeSecret', 'true');
139
+ }
140
+ const response = await fetch(url.toString(), {
141
+ method: 'GET',
142
+ headers: {
143
+ 'Content-Type': 'application/json',
144
+ },
145
+ });
146
+ if (!response.ok) {
147
+ const err = await response.json();
148
+ throw new Error(err.error || 'Failed to fetch webhook');
149
+ }
150
+ return response.json();
151
+ });
152
+ if ((0, display_1.outputJSON)(webhook, options)) {
153
+ return;
154
+ }
155
+ console.log();
156
+ console.log('Webhook Details:');
157
+ console.log(' ID: ', webhook.id);
158
+ console.log(' URL: ', webhook.url);
159
+ console.log(' Events: ', webhook.events.join(', '));
160
+ console.log(' Status: ', webhook.status === 'active' ? '✅ Active' : '⏸️ Paused');
161
+ if (webhook.secret) {
162
+ console.log(' Secret: ', webhook.secret);
163
+ }
164
+ console.log(' Created: ', new Date(webhook.createdAt).toLocaleString());
165
+ if (webhook.lastDeliveryAttempt) {
166
+ const status = webhook.lastDeliveryStatus === 'success' ? '✅ Success' : '❌ Failed';
167
+ console.log(' Last: ', `${status} at ${new Date(webhook.lastDeliveryAttempt).toLocaleString()}`);
168
+ }
169
+ console.log();
170
+ }
171
+ catch (err) {
172
+ (0, display_1.error)(`Failed to fetch webhook: ${err.message}`);
173
+ process.exit(1);
174
+ }
175
+ });
176
+ // Delete subcommand
177
+ cmd
178
+ .command('delete <id>')
179
+ .description('Delete a webhook')
180
+ .option('--json', 'Output as JSON')
181
+ .action(async (id, options) => {
182
+ try {
183
+ const result = await (0, display_1.withSpinner)('Deleting webhook...', async () => {
184
+ const response = await fetch(`${API_URL}/api/v3/webhooks/${id}`, {
185
+ method: 'DELETE',
186
+ headers: {
187
+ 'Content-Type': 'application/json',
188
+ },
189
+ });
190
+ if (!response.ok) {
191
+ const err = await response.json();
192
+ throw new Error(err.error || 'Failed to delete webhook');
193
+ }
194
+ return response.json();
195
+ });
196
+ if ((0, display_1.outputJSON)(result, options)) {
197
+ return;
198
+ }
199
+ (0, display_1.success)('Webhook deleted successfully');
200
+ }
201
+ catch (err) {
202
+ (0, display_1.error)(`Failed to delete webhook: ${err.message}`);
203
+ process.exit(1);
204
+ }
205
+ });
206
+ return cmd;
207
+ }
208
+ //# sourceMappingURL=webhook.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhook.js","sourceRoot":"","sources":["../../../src/commands/webhook.ts"],"names":[],"mappings":"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"}
package/dist/src/index.js CHANGED
@@ -33,6 +33,11 @@ const health_1 = require("./commands/health");
33
33
  const search_1 = require("./commands/search");
34
34
  const export_1 = require("./commands/export");
35
35
  const trust_graph_1 = require("./commands/trust-graph");
36
+ const init_1 = require("./commands/init");
37
+ const link_1 = require("./commands/link");
38
+ const webhook_1 = require("./commands/webhook");
39
+ const refund_1 = require("./commands/refund");
40
+ const alerts_1 = require("./commands/alerts");
36
41
  const chalk_1 = __importDefault(require("chalk"));
37
42
  // Load environment variables from .env file if present
38
43
  const dotenv_1 = __importDefault(require("dotenv"));
@@ -81,6 +86,11 @@ program.addCommand((0, health_1.createHealthCommand)());
81
86
  program.addCommand((0, search_1.createSearchCommand)());
82
87
  program.addCommand((0, export_1.createExportCommand)());
83
88
  program.addCommand((0, trust_graph_1.createTrustGraphCommand)());
89
+ program.addCommand((0, init_1.createInitCommand)());
90
+ program.addCommand((0, link_1.createLinkCommand)());
91
+ program.addCommand((0, webhook_1.createWebhookCommand)());
92
+ program.addCommand((0, refund_1.createRefundCommand)());
93
+ program.addCommand((0, alerts_1.createAlertsCommand)());
84
94
  (0, invest_1.registerInvestCommand)(program);
85
95
  // Handle errors
86
96
  program.exitOverride((err) => {