File size: 1,674 Bytes
eb3f11e | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | // Read, edit, and delete message command registration.
import { Option, type Command } from "commander";
import type { MessageCliHelpers } from "./helpers.js";
/** Register message read, edit, and delete commands. */
export function registerMessageReadEditDeleteCommands(
message: Command,
helpers: MessageCliHelpers,
) {
helpers
.withMessageBase(
helpers.withRequiredMessageTarget(
message.command("read").description("Read recent messages"),
),
)
.option("--limit <n>", "Result limit")
.option("--message-id <id>", "Read a specific message id")
.option("--before <id>", "Read/search before id")
.option("--after <id>", "Read/search after id")
.option("--around <id>", "Read around id")
.option("--thread-id <id>", "Thread id (Slack thread timestamp)")
.addOption(new Option("--include-thread").hideHelp())
.action((opts) => helpers.runMessageAction("read", opts));
helpers
.withMessageBase(
helpers.withRequiredMessageTarget(
message
.command("edit")
.description("Edit a message")
.requiredOption("--message-id <id>", "Message id")
.requiredOption("-m, --message <text>", "Message body"),
),
)
.option("--thread-id <id>", "Thread id (Telegram forum thread)")
.action((opts) => helpers.runMessageAction("edit", opts));
helpers
.withMessageBase(
helpers.withRequiredMessageTarget(
message
.command("delete")
.description("Delete a message")
.requiredOption("--message-id <id>", "Message id"),
),
)
.action((opts) => helpers.runMessageAction("delete", opts));
}
|