const path = require('node:path'); const fs = require('node:fs'); const { parentPort } = require('node:worker_threads'); const documentsPath = process.env.NODE_ENV === "development" ? path.resolve(__dirname, `../../storage/documents`) : path.resolve(process.env.STORAGE_DIR, `documents`); function log(stringContent = '') { if (parentPort) parentPort.postMessage(`\x1b[33m[${process.pid}]\x1b[0m: ${stringContent}`); // running as worker else process.send(`\x1b[33m[${process.ppid}:${process.pid}]\x1b[0m: ${stringContent}`); // running as child_process } function conclude() { if (parentPort) parentPort.postMessage('done'); else process.exit(0); } function updateSourceDocument(docPath = null, jsonContent = {}) { const destinationFilePath = path.resolve(documentsPath, docPath); fs.writeFileSync(destinationFilePath, JSON.stringify(jsonContent, null, 4), { encoding: "utf-8", }); } module.exports = { log, conclude, updateSourceDocument, }