diff --git a/src/renderer/components/virtual-grid/virtual-infinite-grid.tsx b/src/renderer/components/virtual-grid/virtual-infinite-grid.tsx index 9663367f..4a8d9eae 100644 --- a/src/renderer/components/virtual-grid/virtual-infinite-grid.tsx +++ b/src/renderer/components/virtual-grid/virtual-infinite-grid.tsx @@ -26,6 +26,7 @@ interface VirtualGridProps cardRows: CardRow[]; display?: ListDisplayType; fetchFn: (options: { columnCount: number; skip: number; take: number }) => Promise; + fetchInitialData?: () => any; handleFavorite?: (options: { id: string[]; isFavorite: boolean; @@ -56,6 +57,7 @@ export const VirtualInfiniteGrid = forwardRef( handlePlayQueueAdd, minimumBatchSize, fetchFn, + fetchInitialData, loading, initialScrollOffset, handleFavorite, @@ -67,7 +69,7 @@ export const VirtualInfiniteGrid = forwardRef( const listRef = useRef(null); const loader = useRef(null); - const [itemData, setItemData] = useState([]); + const [itemData, setItemData] = useState(fetchInitialData?.() || []); const { itemHeight, rowCount, columnCount } = useMemo(() => { const itemsPerRow = itemSize;