@notjustcoders/ioc-arise
Version:
Arise type-safe IoC containers from your code. Zero overhead, zero coupling.
32 lines • 1.25 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const commander_1 = require("commander");
const generate_1 = require("./commands/generate");
const analyze_1 = require("./commands/analyze");
const visualize_1 = require("./commands/visualize");
const program = new commander_1.Command();
program
.name('ioc-arise')
.description('Generate type-safe IoC containers for TypeScript projects')
.version('1.0.0');
// Register commands
program.addCommand(generate_1.generateCommand);
program.addCommand(analyze_1.analyzeCommand);
program.addCommand(visualize_1.visualizeCommand);
// If no command is provided, default to 'generate'
const args = process.argv.slice(2);
const knownCommands = ['generate', 'analyze', 'visualize', '-h', '--help', '-V', '--version'];
const firstArg = args[0];
if (args.length === 0) {
// No arguments provided, default to 'generate'
process.argv.splice(2, 0, 'generate');
}
else if (firstArg && !knownCommands.includes(firstArg)) {
// First argument is not a known command, assume it's a flag and prepend 'generate'
if (firstArg.startsWith('-')) {
process.argv.splice(2, 0, 'generate');
}
}
program.parse();
//# sourceMappingURL=index.js.map