@summarisation/summarise
Version:
cli for summariser
48 lines (47 loc) • 2.18 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.addInputsCommand = exports.inputsAction = void 0;
const summarise_config_1 = require("../summarise.config");
const node_fs_1 = __importDefault(require("node:fs"));
const fileutils_1 = require("@summarisation/fileutils");
function inputsAction(tc) {
return async (_, opts) => {
if (opts.debug)
console.log(`tika `, opts);
await (0, summarise_config_1.abortIfDirectoryDoesNotExist)(tc.config.directories.inputs, `inputs directory ${tc.config.directories.inputs} does not exist`);
const { inputs, tika } = tc.config.directories;
const { jar } = tc.config.tika;
if (opts.clean)
await node_fs_1.default.promises.rm(tika, { recursive: true });
const config = {
debug: opts.debug === true,
dryRun: opts.dryRun === true
};
const inToOutName = (0, fileutils_1.inputToOutputFileName)(inputs, tika, {
inputDir: inputs,
outputDir: tika,
newFileNameFn: (0, fileutils_1.changeExtension)('.json')
});
console.log('made tika files', await (0, fileutils_1.executeRecursivelyCmdChanges)(tc.context.currentDirectory, inputs, dir => {
let outDir = inToOutName(dir);
return `java -jar ${jar} -i ${dir} -o ${outDir} --jsonRecursive`;
}, config));
};
}
exports.inputsAction = inputsAction;
function addInputsCommand(tc) {
return {
cmd: 'inputs',
description: `turn pdf files into text files using apache tika. ${tc.config.directories.inputs} ==> ${tc.config.directories.tika}`,
options: {
'--clean': { description: 'Delete the output file directory at the start' },
'--debug': { description: 'Show debug information' },
'--dryRun': { description: `Just do a dry run instead of actually making the pipelines` }
},
action: inputsAction(tc)
};
}
exports.addInputsCommand = addInputsCommand;