xref: /MusicFree/src/pages/searchPage/components/resultPanel/results/musicResultItem.tsx (revision 2aa881935ca35b8fb1abc4206e0dc35149231456)
1import React from 'react';
2import MusicItem from '@/components/mediaItem/musicItem';
3import Config from '@/core/config';
4import MusicQueue from '@/core/musicQueue';
5import {ISearchResult} from '@/pages/searchPage/store/atoms';
6
7interface IMusicResultsProps {
8    item: IMusic.IMusicItem;
9    index: number;
10    pluginSearchResultRef: React.MutableRefObject<ISearchResult<'music'>>;
11}
12
13export default function MusicResultItem(props: IMusicResultsProps) {
14    const {item: musicItem, pluginSearchResultRef} = props;
15
16    return (
17        <MusicItem
18            musicItem={musicItem}
19            onItemPress={() => {
20                const clickBehavior = Config.get(
21                    'setting.basic.clickMusicInSearch',
22                );
23                console.log('!!', clickBehavior, pluginSearchResultRef.current);
24                if (clickBehavior === '播放歌曲并替换播放列表') {
25                    MusicQueue.playWithReplaceQueue(
26                        musicItem,
27                        (pluginSearchResultRef?.current?.data ?? [
28                            musicItem,
29                        ]) as IMusic.IMusicItem[],
30                    );
31                } else {
32                    MusicQueue.play(musicItem);
33                }
34            }}
35        />
36    );
37}
38