109 | {error &&
}
110 |
111 | {(inViewport && !isVideo && error !== true) && (
112 | <>
113 | {blurBackground && (
114 |

120 | )}
121 |
![]()
}
123 | data-loaded={loading ? 'false' : 'true'}
124 | src={src}
125 | {...props}
126 | />
127 | >
128 | )}
129 |
130 | {(inViewport && isVideo && error !== true) && (
131 |
143 | );
144 | };
145 |
146 | export default LazyImage;
147 |
--------------------------------------------------------------------------------
/src/components/asset/LibraryImage.tsx:
--------------------------------------------------------------------------------
1 | import { FC, CSSProperties } from 'react';
2 | import { findModuleExport, SteamAppOverview, Export } from '@decky/ui';
3 |
4 | export interface LibraryImageProps {
5 | app?: SteamAppOverview;
6 | rgSources?: any;
7 | appid?: number;
8 | eAssetType: eAssetType;
9 | className?: string;
10 | imageClassName?: string;
11 | allowCustomization?: boolean;
12 | neverShowTitle?: boolean;
13 | name?: string;
14 | suppressTransitions?: boolean;
15 | bShortDisplay?: boolean;
16 | backgroundType?: 'transparent';
17 | onIncrementalError?: (evt: Event, t: any, r: any) => void;
18 | onLoad?: (evt: Event) => void;
19 | onError?: (evt: Event) => void;
20 | style?: CSSProperties;
21 | }
22 |
23 | const LibraryImage = findModuleExport((e: Export) => e?.toString && e.toString().includes('Either rgSources or app must be specified')) as FC