epic-formulae
Version:
Simple data store to house epic formulae
40 lines (39 loc) • 1.25 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const core_1 = require("@oclif/core");
const db_1 = require("../db");
const formula_1 = require("../models/formula");
class Add extends core_1.Command {
async run() {
const { args, flags } = await this.parse(Add);
const { text } = args;
const { metre, referent } = flags;
await (0, db_1.connect)();
const f = new formula_1.Formula({ text, metre, referent });
await f.save();
this.log(`Created formula: ${f}`);
await (0, db_1.disconnect)();
}
}
exports.default = Add;
Add.description = 'Add a formula to the data store';
Add.examples = [
"$ formula add -m '(-)-uuu' -r Zeus 'cloud-gatherer'",
];
Add.flags = {
metre: core_1.Flags.string({
char: 'm',
description: "Metrical notation: 'u' = breve, '-' = macron, parenthesise ghost syllable if present",
required: true,
}),
referent: core_1.Flags.string({
char: 'r',
description: 'Referent. Keep consistent (including case) across related formulae',
required: true,
}),
};
Add.args = [{
name: 'text',
description: 'Text of the formula',
required: true,
}];