From ef05175af5bf379450093e6d3a86f8c205cd61c1 Mon Sep 17 00:00:00 2001 From: ty <786220806@qq.com> Date: Sun, 22 Mar 2026 14:48:58 +0800 Subject: [PATCH] feat(cli): add send command --- packages/cli/src/commands/send.ts | 35 +++++++++++++++++++++++++++++++ packages/cli/src/index.ts | 2 ++ 2 files changed, 37 insertions(+) create mode 100644 packages/cli/src/commands/send.ts diff --git a/packages/cli/src/commands/send.ts b/packages/cli/src/commands/send.ts new file mode 100644 index 0000000..d733fd7 --- /dev/null +++ b/packages/cli/src/commands/send.ts @@ -0,0 +1,35 @@ +import { Command } from "commander"; +import { api } from "../api.js"; +import { log, printJson, printText } from "../output.js"; + +export function registerSendCommand(program: Command) { + program + .command("send") + .description("Send an email from a temporary address") + .requiredOption("--email-id ", "email ID to send from") + .requiredOption("--to
", "recipient email address") + .requiredOption("--subject ", "email subject") + .requiredOption("--content ", "email body text") + .action(async (opts) => { + const json = program.opts().json; + try { + const result = (await api.sendEmail(opts.emailId, { + to: opts.to, + subject: opts.subject, + content: opts.content, + })) as any; + + if (json) { + printJson({ + success: true, + remainingEmails: result.remainingEmails, + }); + } else { + printText(`Email sent successfully. Remaining today: ${result.remainingEmails}`); + } + } catch (e: any) { + log(`Error: ${e.message}`); + process.exit(1); + } + }); +} diff --git a/packages/cli/src/index.ts b/packages/cli/src/index.ts index bc8a570..6ab1254 100644 --- a/packages/cli/src/index.ts +++ b/packages/cli/src/index.ts @@ -6,6 +6,7 @@ import { registerListCommand } from "./commands/list.js"; import { registerWaitCommand } from "./commands/wait.js"; import { registerReadCommand } from "./commands/read.js"; import { registerDeleteCommand } from "./commands/delete.js"; +import { registerSendCommand } from "./commands/send.js"; const program = new Command(); @@ -21,5 +22,6 @@ registerListCommand(program); registerWaitCommand(program); registerReadCommand(program); registerDeleteCommand(program); +registerSendCommand(program); program.parse();