xref: /MusicFree/src/pages/albumDetail/hooks/useAlbumMusicList.ts (revision 2aa881935ca35b8fb1abc4206e0dc35149231456)
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