lbry-desktop/ui/util/thumbnail.js

30 lines
865 B
JavaScript
Raw Normal View History

2020-12-15 19:54:35 +01:00
// @flow
2021-10-07 22:38:56 +02:00
import { THUMBNAIL_CDN_URL, THUMBNAIL_HEIGHT, THUMBNAIL_WIDTH, THUMBNAIL_QUALITY } from 'config';
2020-12-15 19:54:35 +01:00
type Props = {
thumbnail: ?string,
height?: number,
width?: number,
quality?: number,
};
export function getThumbnailCdnUrl(props: Props) {
const { thumbnail, height = THUMBNAIL_HEIGHT, width = THUMBNAIL_WIDTH, quality = THUMBNAIL_QUALITY } = props;
if (!THUMBNAIL_CDN_URL || !thumbnail) {
return thumbnail;
}
if (thumbnail && !thumbnail.includes('https://spee.ch')) {
return `${THUMBNAIL_CDN_URL}s:${width}:${height}/quality:${quality}/plain/${thumbnail}`;
2020-12-15 19:54:35 +01:00
}
2021-10-07 22:38:56 +02:00
if (thumbnail && thumbnail.includes('https://spee.ch') && !thumbnail.includes('?quality=')) {
2020-12-15 19:54:35 +01:00
return `${thumbnail}?quality=${quality}&height=${height}&width=${width}`;
}
2021-10-07 22:38:56 +02:00
if (thumbnail && thumbnail.includes('https://spee.ch')) {
return thumbnail;
}
2020-12-15 19:54:35 +01:00
}