gzipper
Version:
CLI for compressing files.
27 lines • 1.8 kB
JavaScript
import { Compression } from './Compression.js';
import { CompressionExtensions, CompressionNames } from '../enums.js';
/**
* Zstd compression
*/
export class ZstdCompression extends Compression {
compressionName = CompressionNames.ZSTD;
ext = CompressionExtensions.ZSTD;
/**
* Returns zstd compression instance in closure.
*/
async getCompression() {
const zstd = await import('simple-zstd');
return zstd.ZSTDCompress(this.compressionOptions.level);
}
/**
* Build zstd compression options object.
*/
selectCompression() {
const options = {};
if (this.options.zstdLevel !== undefined) {
options.level = this.options.zstdLevel;
}
this.compressionOptions = options;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiWnN0ZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wcmVzc2lvbnMvWnN0ZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFL0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXRFOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGVBQWdCLFNBQVEsV0FBd0I7SUFDbEQsZUFBZSxHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQztJQUN4QyxHQUFHLEdBQUcscUJBQXFCLENBQUMsSUFBSSxDQUFDO0lBRTFDOztPQUVHO0lBQ0gsS0FBSyxDQUFDLGNBQWM7UUFDbEIsTUFBTSxJQUFJLEdBQUcsTUFBTSxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDekMsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQ7O09BRUc7SUFDTyxpQkFBaUI7UUFDekIsTUFBTSxPQUFPLEdBQWdCLEVBQUUsQ0FBQztRQUVoQyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3pDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFDekMsQ0FBQztRQUVELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxPQUFPLENBQUM7SUFDcEMsQ0FBQztDQUNGIn0=