builder-util
Version:
Various utilities. Used by [electron-builder](https://github.com/electron-userland/electron-builder).
44 lines (35 loc) • 906 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.hashFile = hashFile;
function _crypto() {
const data = require("crypto");
_crypto = function () {
return data;
};
return data;
}
function _fs() {
const data = require("fs");
_fs = function () {
return data;
};
return data;
}
function hashFile(file, algorithm = "sha512", encoding = "base64", options) {
return new Promise((resolve, reject) => {
const hash = (0, _crypto().createHash)(algorithm);
hash.on("error", reject).setEncoding(encoding);
(0, _fs().createReadStream)(file, Object.assign({}, options, {
highWaterMark: 1024 * 1024
/* better to use more memory but hash faster */
})).on("error", reject).on("end", () => {
hash.end();
resolve(hash.read());
}).pipe(hash, {
end: false
});
});
}
//# sourceMappingURL=hash.js.map