UNPKG

tessradb

Version:
35 lines 1.29 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.objWriteStream = exports.writeFileSync = exports.writeFile = void 0; const fs = require("fs"); const path = require("path"); const JSONS = require("JSONStream"); function getTemp(name) { return path.join(path.dirname(name), path.basename(name) + ".tetmp"); } async function writeFile(fileName, data) { let tempFileName = getTemp(fileName); await fs.promises.writeFile(tempFileName, data, "utf-8"); await fs.promises.rename(tempFileName, fileName); } exports.writeFile = writeFile; function writeFileSync(fileName, data) { let tempFileName = getTemp(fileName); fs.writeFileSync(tempFileName, data, "utf-8"); fs.renameSync(tempFileName, fileName); } exports.writeFileSync = writeFileSync; async function objWriteStream(fileName) { let tempFileName = getTemp(fileName); let writeStream = fs.createWriteStream(tempFileName); let objStream = JSONS.stringify("[", ",", "]"); objStream.pipe(writeStream); async function end() { objStream.end(); await fs.promises.rename(tempFileName, fileName); writeStream.destroy(); } return { stream: objStream, end }; } exports.objWriteStream = objWriteStream; //# sourceMappingURL=atomWrite.js.map