intradoc
Version:
In-place document content replacer CLI utility.
33 lines (29 loc) • 1.04 kB
JavaScript
;
var node_path = require('node:path');
var loadData = require('../../load/loadData.js');
var loadFiles = require('../../load/loadFiles.js');
var index = require('../../utils/index.js');
const processInput = async (options) => {
const $ = console.log;
const cwd = options.cwd;
const { data, numKeys, numDataSources } = await loadData.loadData({
data: options.data,
cwd
});
const { files, numFiles } = await loadFiles.loadFiles({
files: options.files,
cwd
});
$();
$(`loaded data with ${numKeys} key(s) from ${numDataSources} source(s)`);
$();
$(`process ${numFiles} file(s):`);
for await (const file of files) {
const { content, numReplaced } = options.replacer(file.content, data);
await index.saveFile(file.filepath, content);
$(` - ${file.dirpath}${node_path.sep}`);
$(` ${file.filename} - ${numReplaced} occurrence(s) replaced`);
}
};
exports.processInput = processInput;
//# sourceMappingURL=index.js.map