curl_transcode
Version:
Transcode cURL query to various programming languages
44 lines (37 loc) • 1.13 kB
text/typescript
import * as process from "process";
import "dotenv/config";
import { makeExampleCode } from "./lib.ts";
import { ConfigError, CommandLineError, TranscodeError } from "./error.ts";
import { CommandLine } from "./command_line.ts";
function main() {
try {
let commandline = CommandLine.fromProcessArguments();
makeExampleCode(commandline.sourceDirectory, commandline.targetDirectory);
} catch (error) {
if (error instanceof ConfigError) {
handleConfigError(error);
}
if (error instanceof CommandLineError) {
handleCommandLineError(error);
}
if (error instanceof TranscodeError) {
handleTranscodeError(error);
}
throw error;
}
}
function handleConfigError(error: ConfigError) {
console.error("invalid configuration file: " + error.message);
process.exit(1);
}
function handleCommandLineError(error: CommandLineError) {
console.error("invalid command arguments");
console.error(error.message);
process.exit(1);
}
function handleTranscodeError(error: TranscodeError) {
console.error(error.message);
process.exit(1);
}
main();