UNPKG

pagespeed-quest

Version:

A framework for efficient web front-end speed improvement

43 lines 3.24 kB
import Zlib from 'zlib'; export const ContentEncodingMap = new Map(); ContentEncodingMap.set('gzip', { compress: Zlib.gzip, decompress: Zlib.gunzip, }); ContentEncodingMap.set('compress', { compress: Zlib.gzip, decompress: Zlib.gunzip, }); ContentEncodingMap.set('deflate', { compress: Zlib.deflate, decompress: Zlib.inflate, }); ContentEncodingMap.set('br', { compress: Zlib.brotliCompress, decompress: Zlib.brotliDecompress, }); export async function compress(type, buffer) { const pair = ContentEncodingMap.get(type); if (!pair) return Buffer.from(buffer); return new Promise((resolve, reject) => { pair.compress(buffer, (err, result) => { if (err) return reject(err); resolve(result); }); }); } export async function decompress(type, buffer) { const pair = ContentEncodingMap.get(type); if (!pair) return Buffer.from(buffer); return new Promise((resolve, reject) => { pair.decompress(buffer, (err, result) => { if (err) return reject(err); resolve(result); }); }); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5jb2RpbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZW5jb2RpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxJQUFJLE1BQU0sTUFBTSxDQUFBO0FBU3ZCLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLElBQUksR0FBRyxFQUE0QyxDQUFBO0FBRXJGLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUU7SUFDN0IsUUFBUSxFQUFFLElBQUksQ0FBQyxJQUFJO0lBQ25CLFVBQVUsRUFBRSxJQUFJLENBQUMsTUFBTTtDQUN4QixDQUFDLENBQUE7QUFFRixrQkFBa0IsQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFO0lBQ2pDLFFBQVEsRUFBRSxJQUFJLENBQUMsSUFBSTtJQUNuQixVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU07Q0FDeEIsQ0FBQyxDQUFBO0FBRUYsa0JBQWtCLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRTtJQUNoQyxRQUFRLEVBQUUsSUFBSSxDQUFDLE9BQU87SUFDdEIsVUFBVSxFQUFFLElBQUksQ0FBQyxPQUFPO0NBQ3pCLENBQUMsQ0FBQTtBQUVGLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUU7SUFDM0IsUUFBUSxFQUFFLElBQUksQ0FBQyxjQUFjO0lBQzdCLFVBQVUsRUFBRSxJQUFJLENBQUMsZ0JBQWdCO0NBQ2xDLENBQUMsQ0FBQTtBQUVGLE1BQU0sQ0FBQyxLQUFLLFVBQVUsUUFBUSxDQUFDLElBQXlCLEVBQUUsTUFBYztJQUN0RSxNQUFNLElBQUksR0FBRyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDekMsSUFBSSxDQUFDLElBQUk7UUFBRSxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7SUFFckMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtRQUNyQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUNwQyxJQUFJLEdBQUc7Z0JBQUUsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUE7WUFDM0IsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQ2pCLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDO0FBRUQsTUFBTSxDQUFDLEtBQUssVUFBVSxVQUFVLENBQUMsSUFBeUIsRUFBRSxNQUFjO0lBQ3hFLE1BQU0sSUFBSSxHQUFHLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUN6QyxJQUFJLENBQUMsSUFBSTtRQUFFLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUVyQyxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1FBQ3JDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ3RDLElBQUksR0FBRztnQkFBRSxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQTtZQUMzQixPQUFPLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDakIsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDLENBQUMsQ0FBQTtBQUNKLENBQUMifQ==