Files
ts-scripts/single-scripts/message.ts
2026-02-11 23:05:02 +08:00

70 lines
1.8 KiB
TypeScript
Executable File

#!/usr/bin/env runts -- --allow-import
import {args, log, term,} from "https://global.hatter.ink/script/get/@44/deno-commons-mod.ts";
import {parseArgs} from "jsr:@std/cli/parse-args";
function main() {
const flags = parseArgs(args(), {
boolean: [
"debug",
"info",
"success",
"ok",
"warn",
"warning",
"error",
"bold",
"under",
"auto",
],
string: [
"color",
"bgcolor",
],
});
if (flags._.length === 0) {
log.info("-");
return;
}
if (flags.error) {
log.error(...flags._);
} else if (flags.warn || flags.warning) {
log.warn(...flags._);
} else if (flags.ok || flags.success) {
log.success(...flags._);
} else if (flags.info) {
log.info(...flags._);
} else if (flags.debug) {
log.debug(...flags._);
} else {
if (flags.auto) {
console.log(term.auto(flags._.join(" ")));
} else {
const sb: string[] = [];
if (flags.color) {
sb.push(`[${flags.color}]`);
}
if (flags.bold) {
sb.push(`[bold]`);
}
if (flags.under) {
sb.push(`[under]`);
}
if (flags.bgcolor) {
sb.push(`[bg_${flags.bgcolor}]`);
}
sb.push("[[[");
sb.push(flags._.join(" "));
sb.push("]]]");
console.log(term.auto(sb.join("")));
}
}
}
main();
// @SCRIPT-SIGNATURE-V1: yk-r1.ES256.20260211T230438+08:00.MEYCIQC2/bKfjlqlMdf559NI
// rZ5wBvY+O3qT58e1otJz+sZVNwIhAIIqWyavfpvG25u6YOGkSGSgTfrM77bx+7VvfE5bptMc