p6-xer
Version:
A TypeScript module for parsing and processing Primavera P6 XER files
37 lines (36 loc) • 1.31 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.exportCommand = exportCommand;
const commander_1 = require("commander");
const XerParser_1 = require("./XerParser");
function exportCommand(program) {
program
.command('export')
.argument('<file>', 'XER file to parse')
.option('-o, --output <path>', 'output file path', 'output.xlsx')
.option('-p, --prefix <prefix>', 'sheet name prefix')
.option('--skip-empty', 'skip empty tables')
.action(async (file, options) => {
try {
const parser = new XerParser_1.XerParser({
skipEmptyTables: options.skipEmpty || false
});
const data = await parser.parse(file);
await parser.exportToXlsx(data, {
outputPath: options.output,
sheetNamePrefix: options.prefix
});
console.log('Export completed successfully!');
}
catch (error) {
console.error('Error:', error instanceof Error ? error.message : 'Unknown error occurred');
process.exit(1);
}
});
}
if (require.main === module) {
const program = new commander_1.Command();
exportCommand(program);
program.parse(process.argv);
}
;