turbo-sync/dist/lib/sync.js
Benjamin Toby 219db3d88e Updates
2025-01-16 07:12:45 +01:00

47 lines
1.8 KiB
JavaScript

"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const child_process_1 = require("child_process");
const files_1 = __importDefault(require("./watch/files"));
const folders_1 = __importDefault(require("./watch/folders"));
const confFileProvidedJSON = process.argv[process.argv.length - 1];
try {
const configFileObject = JSON.parse(confFileProvidedJSON);
console.log(`Running '${configFileObject.title}' ...`);
if (Array.isArray(configFileObject.files) &&
Array.isArray(configFileObject.folders)) {
throw new Error("Choose wither `files` or `folders`. Not both");
}
const files = configFileObject === null || configFileObject === void 0 ? void 0 : configFileObject.files;
const firstFile = files === null || files === void 0 ? void 0 : files[0];
const folders = configFileObject === null || configFileObject === void 0 ? void 0 : configFileObject.folders;
const firstFolder = folders === null || folders === void 0 ? void 0 : folders[0];
const options = configFileObject.options;
if (firstFile && (files === null || files === void 0 ? void 0 : files[0])) {
(0, files_1.default)({ files, options });
}
else if (firstFolder && (folders === null || folders === void 0 ? void 0 : folders[0])) {
(0, folders_1.default)({ folders, options });
}
}
catch (error) {
console.log(error);
process.exit();
}
process.on("exit", (code) => {
if (code == 1) {
const args = process.argv;
const cmd = args.shift();
if (cmd) {
(0, child_process_1.spawn)(cmd, args, {
stdio: "inherit",
});
}
}
else {
process.exit(0);
}
});