1import PluginManager from '@/core/pluginManager'; 2import {useEffect, useState} from 'react'; 3 4export default function useAlbumDetail(albumItem: IAlbum.IAlbumItem | null) { 5 const [mergedAlbumItem, setMergedAlbumItem] = 6 useState<IAlbum.IAlbumItem | null>(albumItem); 7 useEffect(() => { 8 if (albumItem === null) { 9 return; 10 } 11 PluginManager.getByMedia(albumItem) 12 ?.methods?.getAlbumInfo?.(albumItem) 13 ?.then(_ => { 14 console.log('RES', _); 15 if (_) { 16 setMergedAlbumItem(prev => ({ 17 ...(prev ?? {}), 18 ...(_ ?? {}), 19 })); 20 } 21 }); 22 }, []); 23 return mergedAlbumItem; 24} 25