UNPKG

e1c-repo-tools

Version:

Tools for 1C enterprise repository

37 lines (36 loc) 1.95 kB
#!/usr/bin/env node "use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.processChangedFiles = exports.getChangedFilesToProcess = void 0; const console_operations_1 = require("./console-operations"); const E1cDispatcher_1 = __importDefault(require("./E1cDispatcher")); const git_utils_1 = require("./git-utils"); const getChangedFilesToProcess = async (filesExtensions, pathToDistDir) => (await git_utils_1.getDirStatus(pathToDistDir)) .map((str) => str.split(' ')).map((arr) => arr.filter((str) => str.length > 0).splice(-1)[0]) .filter((filepath) => filesExtensions.map((s) => `.${s}`).indexOf(filepath.slice(-4)) >= 0); exports.getChangedFilesToProcess = getChangedFilesToProcess; // TODO: remove duplicated code ./src/precommit-hook.ts const processChangedFiles = async (e1cDispatcher) => { const dispatcher = e1cDispatcher || await E1cDispatcher_1.default.initWithLocalConfig(); const filesToDump = await exports.getChangedFilesToProcess(dispatcher.filesExtensions, dispatcher.pathToDistDir); const dumpedFilesInfo = []; for (let i = 0; i < filesToDump.length; i += 1) { // eslint-disable-next-line no-await-in-loop dumpedFilesInfo.push(await dispatcher.DumpExternalBinFile(filesToDump[i])); } return dumpedFilesInfo; }; exports.processChangedFiles = processChangedFiles; const main = async () => { const dispatcher = await E1cDispatcher_1.default.initWithLocalConfig(); const dumpedFilesInfo = await exports.processChangedFiles(dispatcher); for (let i = 0; i < dumpedFilesInfo.length; i += 1) { // eslint-disable-next-line no-await-in-loop await git_utils_1.stageDir(dumpedFilesInfo[i].pathToSrcFiles); } }; console_operations_1.switchLogUpdateOn(); main();