UNPKG

hastily

Version:

express middleware to simulate fastly cdn

55 lines 3.68 kB
import { optoFitToSharp } from './resize'; /** * @hidden */ const resizeCanvas = (sharp, params) => { let background = 'white'; if (params.has('bg-color')) { try { background = params.toColor('bg-color'); } catch (e) { // let it be the original; } } const options = { background, fit: 'contain', withoutEnlargement: false, }; let region; try { region = params.toRegion('canvas'); } catch (e) { return false; } if (Number(region.left) > 0 || Number(region.top) > 0) { params.warn('unsupported', 'canvas', 'pixel-specific (greater than 0) canvas offsets. Will not apply canvas.'); return false; } const positions = []; if (region.left === 0) { positions.push('left'); } if (region.top === 0) { positions.push('top'); } if (positions.length > 0) { options.position = positions.join(' '); } if (params.has('fit')) { const fitOpt = params.get('fit'); const fit = optoFitToSharp[fitOpt]; if (fit) { options.fit = fit; } else { params.warn('unsupported', 'fit'); } } params.log.debug('sharp.resize(%s, %s, %o)', region.width, region.height, options); return sharp.resize(region.width, region.height, options); }; export default resizeCanvas; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXplLWNhbnZhcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbWFwcGVycy9yZXNpemUtY2FudmFzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFMUM7O0dBRUc7QUFDSCxNQUFNLFlBQVksR0FBVyxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsRUFBRTtJQUM3QyxJQUFJLFVBQVUsR0FBVSxPQUFPLENBQUM7SUFDaEMsSUFBSSxNQUFNLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1FBQzFCLElBQUk7WUFDRixVQUFVLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN6QztRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsMEJBQTBCO1NBQzNCO0tBQ0Y7SUFDRCxNQUFNLE9BQU8sR0FBMkI7UUFDdEMsVUFBVTtRQUNWLEdBQUcsRUFBRSxTQUFTO1FBQ2Qsa0JBQWtCLEVBQUUsS0FBSztLQUMxQixDQUFDO0lBQ0YsSUFBSSxNQUFNLENBQUM7SUFDWCxJQUFJO1FBQ0YsTUFBTSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7S0FDcEM7SUFBQyxPQUFPLENBQUMsRUFBRTtRQUNWLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFDRCxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1FBQ3JELE1BQU0sQ0FBQyxJQUFJLENBQ1QsYUFBYSxFQUNiLFFBQVEsRUFDUix3RUFBd0UsQ0FDekUsQ0FBQztRQUNGLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFDRCxNQUFNLFNBQVMsR0FBYSxFQUFFLENBQUM7SUFDL0IsSUFBSSxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsRUFBRTtRQUNyQixTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0tBQ3hCO0lBQ0QsSUFBSSxNQUFNLENBQUMsR0FBRyxLQUFLLENBQUMsRUFBRTtRQUNwQixTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBQ3ZCO0lBQ0QsSUFBSSxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtRQUN4QixPQUFPLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7S0FDeEM7SUFDRCxJQUFJLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDckIsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQVcsQ0FBQztRQUMzQyxNQUFNLEdBQUcsR0FBRyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbkMsSUFBSSxHQUFHLEVBQUU7WUFDUCxPQUFPLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztTQUNuQjthQUFNO1lBQ0wsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDbkM7S0FDRjtJQUNELE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUNkLDBCQUEwQixFQUMxQixNQUFNLENBQUMsS0FBSyxFQUNaLE1BQU0sQ0FBQyxNQUFNLEVBQ2IsT0FBTyxDQUNSLENBQUM7SUFDRixPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQzVELENBQUMsQ0FBQztBQUVGLGVBQWUsWUFBWSxDQUFDIn0=