flowgen
Version:
Generate flowtype definition files from TypeScript
33 lines (26 loc) • 1.71 kB
JavaScript
var _runner = _interopRequireDefault(require("./runner"));
var _commander = _interopRequireDefault(require("commander"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
// eslint-disable-next-line @typescript-eslint/no-var-requires
const pkg = require("../../package.json");
_commander.default.version(pkg.version).option("-o --output-file [outputFile]", "name for output file, defaults to export.flow.js", "export.flow.js").option("--no-module-exports", "use only default exports").option("--interface-records", "exact records instead of interfaces in output").option("--quiet", "output without logs").option("--no-jsdoc", "output without jsdoc").option("--no-inexact", "output without inexact types").option("--flow-typed-format [dirname]", "format output for flow-typed").option("--add-flow-header", "adds '// @flow' to the generated files (for libs)").option("--compile-tests", "compile any <filename>-tests.ts files found").option("--as-module [asModule]", "wrap the output as a module declaration (for libs)").arguments("[files...]").action((files, options) => {
(0, _runner.default)({
interfaceRecords: options.interfaceRecords,
moduleExports: options.moduleExports,
jsdoc: options.jsdoc,
quiet: options.quiet,
inexact: options.inexact,
flowTypedFormat: options.flowTypedFormat,
addFlowHeader: options.addFlowHeader,
compileTests: options.compileTests,
out: options.outputFile,
version: pkg.version,
asModule: options.asModule
}).compile(files);
});
_commander.default.parse(process.argv);
if (!process.argv.slice(2).length) {
_commander.default.outputHelp();
}
;