agentcard 0.0.16 → 0.0.18
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/dist/src/commands/cards/create.js +39 -78
- package/dist/src/commands/cards/create.js.map +1 -1
- package/dist/src/commands/cards/list.js +7 -2
- package/dist/src/commands/cards/list.js.map +1 -1
- package/dist/src/commands/cards/refund.d.ts +1 -0
- package/dist/src/commands/cards/refund.js +100 -0
- package/dist/src/commands/cards/refund.js.map +1 -0
- package/dist/src/index.js +12 -4
- package/dist/src/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -3,60 +3,13 @@ import inquirer from "inquirer";
|
|
|
3
3
|
import open from "open";
|
|
4
4
|
import ora from "ora";
|
|
5
5
|
import { get, post } from "../../lib/api.js";
|
|
6
|
-
import { prompt } from "../../lib/prompt.js";
|
|
7
6
|
import { printCardDetails } from "./details.js";
|
|
8
7
|
const POLL_INTERVAL = 2000;
|
|
9
8
|
const TIMEOUT = 10 * 60 * 1000;
|
|
10
9
|
function formatDollars(cents) {
|
|
11
10
|
return `$${(cents / 100).toFixed(2)}`;
|
|
12
11
|
}
|
|
13
|
-
async function requestCustomCard(amountCents) {
|
|
14
|
-
let cents = amountCents;
|
|
15
|
-
if (!cents) {
|
|
16
|
-
const { amount: rawAmount } = await inquirer.prompt([
|
|
17
|
-
{
|
|
18
|
-
type: "input",
|
|
19
|
-
name: "amount",
|
|
20
|
-
message: "Enter amount in dollars (e.g. 75):",
|
|
21
|
-
validate: (v) => {
|
|
22
|
-
const n = parseFloat(v);
|
|
23
|
-
if (isNaN(n) || n <= 0)
|
|
24
|
-
return "Enter a valid dollar amount";
|
|
25
|
-
if (!Number.isInteger(n))
|
|
26
|
-
return "Amount must be a whole dollar value (no cents)";
|
|
27
|
-
if (n < 20)
|
|
28
|
-
return "Minimum amount is $20";
|
|
29
|
-
if (n > 200)
|
|
30
|
-
return "Maximum amount is $200";
|
|
31
|
-
return true;
|
|
32
|
-
},
|
|
33
|
-
},
|
|
34
|
-
]);
|
|
35
|
-
cents = Math.round(parseFloat(rawAmount) * 100);
|
|
36
|
-
}
|
|
37
|
-
console.log("");
|
|
38
|
-
console.log(chalk.yellow("Note: Most cards are delivered quickly. During high demand, it may take up to 72 hours."));
|
|
39
|
-
console.log("");
|
|
40
|
-
const spinner = ora("Creating checkout session...").start();
|
|
41
|
-
try {
|
|
42
|
-
const res = await post("/api/cards/request", { amountCents: cents });
|
|
43
|
-
spinner.stop();
|
|
44
|
-
console.log("");
|
|
45
|
-
console.log(chalk.green(`Complete payment to request your ${formatDollars(cents)} card:`));
|
|
46
|
-
console.log("");
|
|
47
|
-
console.log(` ${res.url}`);
|
|
48
|
-
console.log("");
|
|
49
|
-
}
|
|
50
|
-
catch (err) {
|
|
51
|
-
spinner.fail(`Failed to submit request: ${err instanceof Error ? err.message : "Unknown error"}`);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
async function getAvailableDenominations() {
|
|
55
|
-
const res = await get("/api/cards/denominations");
|
|
56
|
-
return res.denominations;
|
|
57
|
-
}
|
|
58
12
|
export async function createCard(amount) {
|
|
59
|
-
const denominations = await getAvailableDenominations();
|
|
60
13
|
let dollars;
|
|
61
14
|
if (amount) {
|
|
62
15
|
dollars = parseInt(amount, 10);
|
|
@@ -64,41 +17,32 @@ export async function createCard(amount) {
|
|
|
64
17
|
console.error(chalk.red("Amount must be a positive integer (in dollars)."));
|
|
65
18
|
process.exit(1);
|
|
66
19
|
}
|
|
67
|
-
const match = denominations.find((d) => d.amountCents === dollars * 100);
|
|
68
|
-
if (!match) {
|
|
69
|
-
// Not in stock — automatically request as custom amount
|
|
70
|
-
await requestCustomCard(dollars * 100);
|
|
71
|
-
return;
|
|
72
|
-
}
|
|
73
20
|
}
|
|
74
21
|
else {
|
|
75
|
-
const
|
|
76
|
-
name: formatDollars(d.amountCents),
|
|
77
|
-
value: d.amountCents / 100,
|
|
78
|
-
}));
|
|
79
|
-
// Add custom request option
|
|
80
|
-
choices.push({
|
|
81
|
-
name: "Request custom amount",
|
|
82
|
-
value: -1,
|
|
83
|
-
});
|
|
84
|
-
if (denominations.length === 0) {
|
|
85
|
-
console.log(chalk.dim("No cards available right now."));
|
|
86
|
-
await requestCustomCard();
|
|
87
|
-
return;
|
|
88
|
-
}
|
|
89
|
-
const answers = await prompt([
|
|
22
|
+
const { rawAmount } = await inquirer.prompt([
|
|
90
23
|
{
|
|
91
|
-
type: "
|
|
92
|
-
name: "
|
|
93
|
-
message: "
|
|
94
|
-
|
|
24
|
+
type: "input",
|
|
25
|
+
name: "rawAmount",
|
|
26
|
+
message: "Enter card amount in dollars (multiples of $5, up to $200):",
|
|
27
|
+
validate: (v) => {
|
|
28
|
+
const n = parseFloat(v);
|
|
29
|
+
if (isNaN(n) || n <= 0)
|
|
30
|
+
return "Enter a valid dollar amount";
|
|
31
|
+
if (!Number.isInteger(n) || n % 5 !== 0)
|
|
32
|
+
return "Amount must be a multiple of $5 (e.g. 5, 10, 15, 20)";
|
|
33
|
+
if (n < 5)
|
|
34
|
+
return "Minimum amount is $5";
|
|
35
|
+
if (n > 200)
|
|
36
|
+
return "Maximum amount is $200";
|
|
37
|
+
return true;
|
|
38
|
+
},
|
|
95
39
|
},
|
|
96
40
|
]);
|
|
97
|
-
dollars =
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
41
|
+
dollars = parseInt(rawAmount, 10);
|
|
42
|
+
}
|
|
43
|
+
if (dollars < 5 || dollars > 200 || dollars % 5 !== 0) {
|
|
44
|
+
console.error(chalk.red("Amount must be a multiple of $5, between $5 and $200."));
|
|
45
|
+
process.exit(1);
|
|
102
46
|
}
|
|
103
47
|
const spinner = ora("Creating checkout session...").start();
|
|
104
48
|
let purchase;
|
|
@@ -112,10 +56,23 @@ export async function createCard(amount) {
|
|
|
112
56
|
process.exit(1);
|
|
113
57
|
}
|
|
114
58
|
spinner.stop();
|
|
59
|
+
if (purchase.manualFulfillment) {
|
|
60
|
+
console.log("");
|
|
61
|
+
console.log(chalk.yellow("Note: Cards are currently being fulfilled manually. After payment, your card will be available within 72 hours."));
|
|
62
|
+
console.log(chalk.yellow("Run `agentcard list` to check when your card is ready."));
|
|
63
|
+
console.log("");
|
|
64
|
+
}
|
|
115
65
|
console.log(`Checkout URL: ${purchase.url}`);
|
|
66
|
+
if (purchase.manualFulfillment) {
|
|
67
|
+
// In manual mode, don't auto-open or poll — just show the URL
|
|
68
|
+
console.log("");
|
|
69
|
+
console.log(chalk.green("Complete payment at the URL above."));
|
|
70
|
+
console.log(chalk.dim("Your card will appear in `agentcard list` once fulfilled (up to 72 hours)."));
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
116
73
|
console.log(chalk.blue("Opening browser for payment..."));
|
|
117
74
|
await open(purchase.url);
|
|
118
|
-
const paymentSpinner = ora("Waiting for payment...").start();
|
|
75
|
+
const paymentSpinner = ora("Waiting for payment and card provisioning...").start();
|
|
119
76
|
const deadline = Date.now() + TIMEOUT;
|
|
120
77
|
while (Date.now() < deadline) {
|
|
121
78
|
await new Promise((resolve) => setTimeout(resolve, POLL_INTERVAL));
|
|
@@ -134,6 +91,10 @@ export async function createCard(amount) {
|
|
|
134
91
|
}
|
|
135
92
|
return;
|
|
136
93
|
}
|
|
94
|
+
if (status.status === "failed") {
|
|
95
|
+
paymentSpinner.fail(chalk.red(status.error || "Card could not be provisioned. Your payment has been refunded."));
|
|
96
|
+
process.exit(1);
|
|
97
|
+
}
|
|
137
98
|
if (status.status === "expired") {
|
|
138
99
|
paymentSpinner.fail("Payment session expired. Please try again.");
|
|
139
100
|
process.exit(1);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../src/commands/cards/create.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../src/commands/cards/create.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,13 +18,18 @@ export async function listCards() {
|
|
|
18
18
|
}
|
|
19
19
|
if (cards.length > 0) {
|
|
20
20
|
const idWidth = Math.max(4, ...cards.map((c) => c.id.length)) + 2;
|
|
21
|
-
const header = `${"ID".padEnd(idWidth)} ${"Last 4".padEnd(8)} ${"Amount".padEnd(10)} Purchased`;
|
|
21
|
+
const header = `${"ID".padEnd(idWidth)} ${"Last 4".padEnd(8)} ${"Amount".padEnd(10)} ${"Status".padEnd(12)} Purchased`;
|
|
22
22
|
console.log(chalk.bold(header));
|
|
23
23
|
console.log("-".repeat(header.length));
|
|
24
24
|
for (const card of cards) {
|
|
25
25
|
const amount = `$${(card.amountCents / 100).toFixed(2)}`;
|
|
26
26
|
const date = card.purchasedAt ? new Date(card.purchasedAt).toLocaleDateString() : "-";
|
|
27
|
-
|
|
27
|
+
let status = card.status === "sold" ? chalk.green("active") : chalk.dim(card.status);
|
|
28
|
+
if (card.refundedAt) {
|
|
29
|
+
const refundAmt = card.refundedAmountCents ? `$${(card.refundedAmountCents / 100).toFixed(2)}` : "";
|
|
30
|
+
status = chalk.yellow(`refunded ${refundAmt}`);
|
|
31
|
+
}
|
|
32
|
+
console.log(`${card.id.padEnd(idWidth)} ${card.last4.padEnd(8)} ${amount.padEnd(10)} ${status.padEnd(22)} ${date}`);
|
|
28
33
|
}
|
|
29
34
|
console.log(chalk.dim(`\nRun \`agentcard details <id>\` to view full card details.`));
|
|
30
35
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/commands/cards/list.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/commands/cards/list.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function refundCard(cardId: string, amount?: string): Promise<void>;
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import chalk from "chalk";
|
|
2
|
+
import inquirer from "inquirer";
|
|
3
|
+
import ora from "ora";
|
|
4
|
+
import { get, post } from "../../lib/api.js";
|
|
5
|
+
const POLL_INTERVAL = 2000;
|
|
6
|
+
const TIMEOUT = 10 * 60 * 1000;
|
|
7
|
+
export async function refundCard(cardId, amount) {
|
|
8
|
+
let dollars;
|
|
9
|
+
if (amount) {
|
|
10
|
+
dollars = parseFloat(amount);
|
|
11
|
+
if (isNaN(dollars) || dollars <= 0) {
|
|
12
|
+
console.error(chalk.red("Amount must be a positive number (in dollars)."));
|
|
13
|
+
process.exit(1);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
const { rawAmount } = await inquirer.prompt([
|
|
18
|
+
{
|
|
19
|
+
type: "input",
|
|
20
|
+
name: "rawAmount",
|
|
21
|
+
message: "Enter the amount to refund in dollars:",
|
|
22
|
+
validate: (v) => {
|
|
23
|
+
const n = parseFloat(v);
|
|
24
|
+
if (isNaN(n) || n <= 0)
|
|
25
|
+
return "Enter a valid dollar amount";
|
|
26
|
+
return true;
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
]);
|
|
30
|
+
dollars = parseFloat(rawAmount);
|
|
31
|
+
}
|
|
32
|
+
const amountCents = Math.round(dollars * 100);
|
|
33
|
+
// Fetch card details so the user knows exactly which card to use
|
|
34
|
+
const detailsSpinner = ora("Fetching card details...").start();
|
|
35
|
+
let card;
|
|
36
|
+
try {
|
|
37
|
+
card = await get(`/api/cards/${cardId}/details`);
|
|
38
|
+
}
|
|
39
|
+
catch (err) {
|
|
40
|
+
detailsSpinner.fail(`Failed to fetch card details: ${err instanceof Error ? err.message : "Unknown error"}`);
|
|
41
|
+
process.exit(1);
|
|
42
|
+
}
|
|
43
|
+
detailsSpinner.stop();
|
|
44
|
+
const expiry = `${String(card.expiryMonth).padStart(2, "0")}/${card.expiryYear}`;
|
|
45
|
+
console.log("");
|
|
46
|
+
console.log(chalk.bold(" Use this card on the checkout page:"));
|
|
47
|
+
console.log(chalk.dim(" ────────────────────────────"));
|
|
48
|
+
console.log(` Number: ${chalk.white(card.pan)}`);
|
|
49
|
+
console.log(` CVV: ${chalk.white(card.cvv)}`);
|
|
50
|
+
console.log(` Expiry: ${chalk.white(expiry)}`);
|
|
51
|
+
console.log(chalk.dim(" ────────────────────────────"));
|
|
52
|
+
console.log("");
|
|
53
|
+
console.log(chalk.yellow.bold(" Please make sure to use the card above on checkout to"));
|
|
54
|
+
console.log(chalk.yellow.bold(" ensure your refund ends up in the right place."));
|
|
55
|
+
console.log("");
|
|
56
|
+
const spinner = ora("Creating refund checkout session...").start();
|
|
57
|
+
let refund;
|
|
58
|
+
try {
|
|
59
|
+
refund = await post("/api/cards/refund", {
|
|
60
|
+
cardId,
|
|
61
|
+
amountCents,
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
catch (err) {
|
|
65
|
+
spinner.fail(`Failed to create refund: ${err instanceof Error ? err.message : "Unknown error"}`);
|
|
66
|
+
process.exit(1);
|
|
67
|
+
}
|
|
68
|
+
spinner.stop();
|
|
69
|
+
console.log(`Checkout URL: ${refund.url}`);
|
|
70
|
+
const pollSpinner = ora("Waiting for payment and refund processing...").start();
|
|
71
|
+
const deadline = Date.now() + TIMEOUT;
|
|
72
|
+
while (Date.now() < deadline) {
|
|
73
|
+
await new Promise((resolve) => setTimeout(resolve, POLL_INTERVAL));
|
|
74
|
+
try {
|
|
75
|
+
const status = await get(`/api/cards/refund/status?session_id=${refund.sessionId}`);
|
|
76
|
+
if (status.status === "complete") {
|
|
77
|
+
const refundedDollars = status.refundedAmountCents
|
|
78
|
+
? `$${(status.refundedAmountCents / 100).toFixed(2)}`
|
|
79
|
+
: `$${dollars.toFixed(2)}`;
|
|
80
|
+
pollSpinner.succeed(chalk.green(`Refund of ${refundedDollars} processed! Funds will return to your original payment method.`));
|
|
81
|
+
console.log(chalk.dim(" Note: refunds typically appear within 5-10 business days."));
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
if (status.status === "failed") {
|
|
85
|
+
pollSpinner.fail(chalk.red(status.error || "Refund failed. Please contact support."));
|
|
86
|
+
process.exit(1);
|
|
87
|
+
}
|
|
88
|
+
if (status.status === "expired") {
|
|
89
|
+
pollSpinner.fail("Checkout session expired. Please try again.");
|
|
90
|
+
process.exit(1);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
catch {
|
|
94
|
+
// Not ready yet, keep polling
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
pollSpinner.fail("Refund timed out. Please check your email or contact support.");
|
|
98
|
+
process.exit(1);
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=refund.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"refund.js","sourceRoot":"","sources":["../../../../src/commands/cards/refund.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.js
CHANGED
|
@@ -6,6 +6,7 @@ import { createCard } from "./commands/cards/create.js";
|
|
|
6
6
|
import { listCards } from "./commands/cards/list.js";
|
|
7
7
|
import { cardDetails } from "./commands/cards/details.js";
|
|
8
8
|
import { balance } from "./commands/balance.js";
|
|
9
|
+
import { refundCard } from "./commands/cards/refund.js";
|
|
9
10
|
import { trackPurchase } from "./commands/track/purchase.js";
|
|
10
11
|
import { getLocalVersion } from "./lib/update-check.js";
|
|
11
12
|
const program = new Command();
|
|
@@ -19,11 +20,12 @@ Examples:
|
|
|
19
20
|
|
|
20
21
|
$ agentcard signup --email you@example.com Sign up (AI-friendly, no browser)
|
|
21
22
|
$ agentcard signup Sign up (interactive prompt)
|
|
22
|
-
$ agentcard create --amount 25 Buy a $25
|
|
23
|
-
$ agentcard create
|
|
23
|
+
$ agentcard create --amount 25 Buy a $25 prepaid Visa card
|
|
24
|
+
$ agentcard create Purchase a card (prompts for amount, multiples of $5)
|
|
24
25
|
$ agentcard list List your cards
|
|
25
26
|
$ agentcard details <id> Reveal full card number, CVV, expiry
|
|
26
27
|
$ agentcard balance <id> Check card denomination
|
|
28
|
+
$ agentcard refund <id> --amount 15 Refund $15 from your card
|
|
27
29
|
|
|
28
30
|
Quickstart:
|
|
29
31
|
|
|
@@ -54,8 +56,8 @@ program
|
|
|
54
56
|
// -- Cards ------------------------------------------------------------------
|
|
55
57
|
program
|
|
56
58
|
.command("create")
|
|
57
|
-
.description("Purchase a prepaid card
|
|
58
|
-
.option("--amount <dollars>", "Card amount in dollars (e.g. 10, 25, 50)")
|
|
59
|
+
.description("Purchase a prepaid Visa card (multiples of $5, $5-$200)")
|
|
60
|
+
.option("--amount <dollars>", "Card amount in dollars, must be a multiple of $5 (e.g. 5, 10, 25, 50)")
|
|
59
61
|
.action((opts) => createCard(opts.amount));
|
|
60
62
|
program
|
|
61
63
|
.command("list")
|
|
@@ -71,6 +73,12 @@ program
|
|
|
71
73
|
.description("Check card denomination")
|
|
72
74
|
.argument("<id>", "Card ID")
|
|
73
75
|
.action(balance);
|
|
76
|
+
program
|
|
77
|
+
.command("refund")
|
|
78
|
+
.description("Refund remaining card balance to your original payment method")
|
|
79
|
+
.argument("<id>", "Card ID")
|
|
80
|
+
.option("--amount <dollars>", "Amount to refund in dollars")
|
|
81
|
+
.action((id, opts) => refundCard(id, opts.amount));
|
|
74
82
|
// -- Tracking (hidden) ------------------------------------------------------
|
|
75
83
|
program
|
|
76
84
|
.command("track-purchase", { hidden: true })
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,WAAW,CAAC;KACjB,WAAW,CAAC,0CAA0C,CAAC;KACvD,OAAO,CAAC,eAAe,EAAE,CAAC;KAC1B,kBAAkB,EAAE;KACpB,WAAW,CACV,OAAO,EACP
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|