UNPKG

verrazzano

Version:

Streaming geospatial format conversion

38 lines (31 loc) 918 B
"use strict"; exports.__esModule = true; exports.default = void 0; var _child_process = require("child_process"); var _tmp = _interopRequireDefault(require("./tmp")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _ref() { return null; } // returns a stream that zips a folder var _default = async (tmpFolder, { cleanup = true }) => { const tmpZip = (0, _tmp.default)('.zip'); await new Promise((resolve, reject) => { const ps = (0, _child_process.spawn)('zip', ['-r9', tmpZip.path, tmpFolder.path]); ps.once('exit', code => { if (code >= 3) return reject(new Error(`Zip error: Exit code ${code}`)); resolve(); }); }); if (cleanup) await tmpFolder.destroy(); return { file: tmpZip, done: () => { tmpZip.destroy().catch(_ref); } }; }; exports.default = _default; module.exports = exports.default;