From e9397bcb7220cc4d17b48b0df8bc117e4a4a63a8 Mon Sep 17 00:00:00 2001 From: tniezg Date: Tue, 31 Aug 2021 13:35:24 +0200 Subject: [PATCH] Use original product image by default instead of resized --- framework/spree/types/index.ts | 4 ++++ framework/spree/utils/create-get-absolute-image-url.ts | 10 ++++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/framework/spree/types/index.ts b/framework/spree/types/index.ts index 86f5bcd97..c4d846a3e 100644 --- a/framework/spree/types/index.ts +++ b/framework/spree/types/index.ts @@ -26,10 +26,14 @@ export interface ImageStyle { url: string width: string height: string + size: string } export interface SpreeProductImage extends JsonApiDocument { attributes: { + position: number + alt: string + original_url: string styles: ImageStyle[] } } diff --git a/framework/spree/utils/create-get-absolute-image-url.ts b/framework/spree/utils/create-get-absolute-image-url.ts index 7b75aa780..09a31c54c 100644 --- a/framework/spree/utils/create-get-absolute-image-url.ts +++ b/framework/spree/utils/create-get-absolute-image-url.ts @@ -2,13 +2,19 @@ import { SpreeProductImage } from '../types' import getImageUrl from './get-image-url' const createGetAbsoluteImageUrl = - (host: string) => + (host: string, useOriginalImageSize: boolean = true) => ( image: SpreeProductImage, minWidth: number, minHeight: number ): string | null => { - const url = getImageUrl(image, minWidth, minHeight) + let url + + if (useOriginalImageSize) { + url = image.attributes.original_url || null + } else { + url = getImageUrl(image, minWidth, minHeight) + } if (url === null) { return null