33 lines
866 B
TypeScript
Executable File
33 lines
866 B
TypeScript
Executable File
#!/usr/bin/env runts -- --allow-import
|
|
|
|
import {args, exit} from "https://script.hatter.ink/@41/deno-commons-mod.ts";
|
|
import {parseArgs} from "jsr:@std/cli/parse-args";
|
|
import {toArrayBuffer} from "https://deno.land/std@0.203.0/streams/mod.ts";
|
|
|
|
const flags = parseArgs(args(), {
|
|
boolean: ["help"],
|
|
string: ["value"],
|
|
alias: {
|
|
V: "value",
|
|
},
|
|
});
|
|
|
|
if (flags.help) {
|
|
console.log("echo value | encode-uri.ts");
|
|
console.log("encode-uri.ts --value <value>");
|
|
exit(0);
|
|
}
|
|
|
|
let input;
|
|
if (flags.value) {
|
|
input = flags.value;
|
|
} else {
|
|
input = new TextDecoder().decode(await toArrayBuffer(Deno.stdin.readable));
|
|
}
|
|
const encoded = encodeURI(input);
|
|
|
|
console.log(encoded);
|
|
|
|
// @SCRIPT-SIGNATURE-V1: yk-r1.ES256.20260211T223656+08:00.MEUCIHhfsF0mbPmh5MylnqPg
|
|
// MEXtiFQ3ncpqJcQruOqdUViLAiEA77/M0NfgxlerlG0zjY/r0Etz7fQ0TyqX8B1Qe1iev8Q=
|