mirror of
https://github.com/vercel/next.js.git
synced 2026-09-20 02:25:18 +08:00
4466ba436b
## Description This PR ensures that the default prettier config is used for examples and templates. This config is compatible with `prettier@3` as well (upgrading prettier is bigger change that can be a future PR). ## Changes - Updated `.prettierrc.json` in root with `"trailingComma": "es5"` (will be needed upgrading to prettier@3) - Added `examples/.prettierrc.json` with default config (this will change every example) - Added `packages/create-next-app/templates/.prettierrc.json` with default config (this will change every template) ## Related - Fixes #54402 - Closes #54409
32 lines
756 B
TypeScript
32 lines
756 B
TypeScript
import Image from "next/image";
|
|
const DEFAULT_QUALITY = 20;
|
|
|
|
// https://dotcms.com/docs/latest/image-resizing-and-processing
|
|
const getUrlWithResizingParameters = ({
|
|
src,
|
|
width,
|
|
quality = DEFAULT_QUALITY,
|
|
}) => {
|
|
const urlParams = [];
|
|
const lastSeparatorIdx = src.lastIndexOf("/");
|
|
const imageIdentifierAndField = src.slice(0, lastSeparatorIdx);
|
|
|
|
urlParams.push(imageIdentifierAndField);
|
|
urlParams.push(width + "w");
|
|
urlParams.push(quality + "q");
|
|
|
|
return urlParams.join("/");
|
|
};
|
|
|
|
const dotCmsLoader = (props) => {
|
|
return `${process.env.NEXT_PUBLIC_DOTCMS_HOST}${getUrlWithResizingParameters(
|
|
props,
|
|
)}`;
|
|
};
|
|
|
|
const DotCmsImage = (params) => {
|
|
return <Image {...params} loader={dotCmsLoader} />;
|
|
};
|
|
|
|
export default DotCmsImage;
|