mapcomplete/scripts/Script.ts

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

35 lines
915 B
TypeScript
Raw Normal View History

2023-01-09 20:30:13 +01:00
import ScriptUtils from "./ScriptUtils"
export default abstract class Script {
private readonly _docs: string
constructor(docs: string) {
this._docs = docs
}
abstract main(args: string[]): Promise<void>
public run(): void {
ScriptUtils.fixUtils()
const args = [...process.argv]
args.splice(0, 2)
const start = new Date()
this.main(args)
2024-04-13 02:40:21 +02:00
.then((_) => {
const end = new Date()
const millisNeeded = end.getTime() - start.getTime()
const green = (s) => "\x1b[92m" + s + "\x1b[0m"
console.log(green("All done! (" + millisNeeded + " ms)"))
})
.catch((e) => {
console.log(`ERROR in script ${process.argv[1]}:`, e)
process.exit(1)
})
2023-01-09 20:30:13 +01:00
}
2023-06-11 19:04:40 +02:00
public printHelp() {
2023-06-11 19:04:40 +02:00
console.log(this._docs)
}
2023-01-09 20:30:13 +01:00
}