e1c-repo-tools
Version:
Tools for 1C enterprise repository
30 lines (29 loc) • 1.6 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.getRootSrcFiles = void 0;
const fs_1 = require("fs");
const path_1 = __importDefault(require("path"));
const console_operations_1 = require("./console-operations");
const E1cDispatcher_1 = __importDefault(require("./E1cDispatcher"));
const getRootSrcFiles = async (e1cDispatcher) => {
const dispatcher = e1cDispatcher || await E1cDispatcher_1.default.initWithLocalConfig();
return Promise.all((await fs_1.promises.readdir(dispatcher.pathToSrcDir, { 'encoding': 'utf8', 'withFileTypes': true }))
.filter((file) => file.isDirectory && !file.name.match(/.bak\d*$/gmi))
.map(async (dir) => path_1.default.join(dispatcher.pathToSrcDir, dir.name, (await fs_1.promises.readdir(path_1.default.join(dispatcher.pathToSrcDir, dir.name), { 'encoding': 'utf8', 'withFileTypes': true }))
.filter((file) => file.isFile && file.name.match(/.xml$/gmi))[0].name)));
};
exports.getRootSrcFiles = getRootSrcFiles;
const main = async () => {
const dispatcher = await E1cDispatcher_1.default.initWithLocalConfig();
const rootSrcFiles = await exports.getRootSrcFiles(dispatcher);
for (let i = 0; i < rootSrcFiles.length; i += 1) {
// eslint-disable-next-line no-await-in-loop
await dispatcher.BuildExternalBinFile(rootSrcFiles[i]);
}
};
console_operations_1.switchLogUpdateOn();
main();