snyk-docker-plugin
Version:
Snyk CLI docker plugin
29 lines • 1.02 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.decompressZstd = void 0;
const fzstd_1 = require("fzstd");
/**
* Decompresses zstd-compressed data from a buffer.
*
* This is a synchronous buffer-to-buffer decompression utility.
* For streaming zstd decompression, use the decompressMaybe transform stream.
*
* @param compressed Buffer containing zstd-compressed data
* @returns Decompressed data as a Buffer
* @throws Error if decompression fails
*/
function decompressZstd(compressed) {
const chunks = [];
try {
const decompressor = new fzstd_1.Decompress((data) => {
chunks.push(Buffer.from(data));
});
decompressor.push(new Uint8Array(compressed), true);
return Buffer.concat(chunks);
}
catch (error) {
throw new Error(`Zstd decompression failed: ${error instanceof Error ? error.message : String(error)}`);
}
}
exports.decompressZstd = decompressZstd;
//# sourceMappingURL=compression-utils.js.map