${cardPadderIcon}
${cardImageContainerOpen}`;
@@ -1514,6 +1519,8 @@ import ServerConnections from '../ServerConnections';
case 'Episode':
case 'Series':
return '
';
+ case 'Program':
+ return '
';
case 'Book':
return '
';
case 'Folder':
@@ -1522,11 +1529,13 @@ import ServerConnections from '../ServerConnections';
return '
';
case 'Playlist':
return '
';
+ case 'Photo':
+ return '
';
case 'PhotoAlbum':
return '
';
}
- if (options && options.defaultCardImageIcon) {
+ if (options?.defaultCardImageIcon) {
return '
';
}
diff --git a/src/components/images/imageLoader.js b/src/components/images/imageLoader.js
index febd43b7b6..e25531a0ac 100644
--- a/src/components/images/imageLoader.js
+++ b/src/components/images/imageLoader.js
@@ -95,9 +95,12 @@ worker.addEventListener(
const elem = event.target;
requestAnimationFrame(() => {
const canvas = elem.previousSibling;
- if (elem.classList.contains('blurhashed') && canvas && canvas.tagName === 'CANVAS') {
+ if (elem.classList.contains('blurhashed') && canvas?.tagName === 'CANVAS') {
canvas.classList.add('lazy-hidden');
}
+
+ // HACK: Hide the content of the card padder
+ elem.parentNode?.querySelector('.cardPadder')?.classList.add('lazy-hidden-children');
});
elem.removeEventListener('animationend', onAnimationEnd);
}
@@ -135,10 +138,13 @@ worker.addEventListener(
function emptyImageElement(elem) {
elem.removeEventListener('animationend', onAnimationEnd);
const canvas = elem.previousSibling;
- if (canvas && canvas.tagName === 'CANVAS') {
+ if (canvas?.tagName === 'CANVAS') {
canvas.classList.remove('lazy-hidden');
}
+ // HACK: Unhide the content of the card padder
+ elem.parentNode?.querySelector('.cardPadder')?.classList.remove('lazy-hidden-children');
+
let url;
if (elem.tagName !== 'IMG') {
diff --git a/src/components/images/style.scss b/src/components/images/style.scss
index 9fae14fd0f..64726ae08a 100644
--- a/src/components/images/style.scss
+++ b/src/components/images/style.scss
@@ -18,7 +18,8 @@
animation: fadein 0.1s;
}
-.lazy-hidden {
+.lazy-hidden,
+.lazy-hidden-children * {
opacity: 0;
}