UNPKG

gatsby-adapter-netlify

Version:
49 lines (48 loc) 1.39 kB
"use strict"; exports.__esModule = true; exports.default = void 0; exports.generateImageArgs = generateImageArgs; exports.generateImageUrl = void 0; const generateImageUrl = function generateImageUrl(source, imageArgs) { const placeholderOrigin = `http://netlify.com`; const imageParams = generateImageArgs(imageArgs); const baseURL = new URL(`${placeholderOrigin}/.netlify/images`); baseURL.search = imageParams.toString(); baseURL.searchParams.append(`url`, source.url); baseURL.searchParams.append(`cd`, source.internal.contentDigest); return `${baseURL.pathname}${baseURL.search}`; }; exports.generateImageUrl = generateImageUrl; function generateImageArgs({ width, height, format, cropFocus, quality }) { const params = new URLSearchParams(); if (width) { params.append(`w`, width.toString()); } if (height) { params.append(`h`, height.toString()); } if (cropFocus) { params.append(`fit`, `cover`); if (Array.isArray(cropFocus)) { // For array of cropFocus values, append them as comma-separated string params.append(`position`, cropFocus.join(`,`)); } else { params.append(`position`, cropFocus); } } if (format) { params.append(`fm`, format); } if (quality) { params.append(`q`, quality.toString()); } return params; } var _default = generateImageUrl; exports.default = _default;