xref: /MusicFree/src/pages/sheetDetail/components/navBar.tsx (revision 7a8d024e62c773caa4d0887b9fec4611e8a8ef82)
1bf6e62f2S猫头猫import React from 'react';
2e7fa3837S猫头猫import {useNavigation} from '@react-navigation/native';
3e14deecfS猫头猫import MusicSheet from '@/core/musicSheet';
4e7fa3837S猫头猫import {ROUTE_PATH, useParams} from '@/entry/router';
52a3194f5S猫头猫import Toast from '@/utils/toast';
675d76114S猫头猫import {showDialog} from '@/components/dialogs/useDialog';
7*7a8d024eS猫头猫import AppBar from '@/components/base/appBar';
8bf6e62f2S猫头猫
94060c00aS猫头猫export default function () {
1003f1f70cS猫头猫    const navigation = useNavigation<any>();
11ceb900cdS猫头猫    const {id = 'favorite'} = useParams<'local-sheet-detail'>();
1203f1f70cS猫头猫    const musicSheet = MusicSheet.useSheets(id);
13bf6e62f2S猫头猫
14bf6e62f2S猫头猫    return (
15*7a8d024eS猫头猫        <>
16*7a8d024eS猫头猫            <AppBar
17*7a8d024eS猫头猫                menu={[
18a3289929S猫头猫                    {
19a3289929S猫头猫                        icon: 'trash-can-outline',
20a3289929S猫头猫                        title: '删除歌单',
21a3289929S猫头猫                        show: id !== 'favorite',
22a3289929S猫头猫                        onPress() {
23a3289929S猫头猫                            showDialog('SimpleDialog', {
24a3289929S猫头猫                                title: '删除歌单',
25efc141fcS猫头猫                                content: `确定删除歌单「${musicSheet.title}」吗?`,
26a3289929S猫头猫                                onOk: async () => {
27a3289929S猫头猫                                    await MusicSheet.removeSheet(id);
282a3194f5S猫头猫                                    Toast.success('已删除');
29a3289929S猫头猫                                    navigation.goBack();
30a3289929S猫头猫                                },
31a3289929S猫头猫                            });
32a3289929S猫头猫                        },
33a3289929S猫头猫                    },
34f970486eS猫头猫                    {
35f970486eS猫头猫                        icon: 'playlist-edit',
36f970486eS猫头猫                        title: '批量编辑',
37f970486eS猫头猫                        onPress() {
38f970486eS猫头猫                            navigation.navigate(ROUTE_PATH.MUSIC_LIST_EDITOR, {
39f970486eS猫头猫                                musicList: musicSheet.musicList,
40f970486eS猫头猫                                musicSheet: musicSheet,
41f970486eS猫头猫                            });
42f970486eS猫头猫                        },
43f970486eS猫头猫                    },
44e26be108S猫头猫                    {
45e26be108S猫头猫                        icon: 'square-edit-outline',
46e26be108S猫头猫                        title: '编辑歌单信息',
47e26be108S猫头猫                        onPress() {
48e26be108S猫头猫                            showDialog('EditSheetDetailDialog', {
49e26be108S猫头猫                                musicSheet: musicSheet,
50e26be108S猫头猫                            });
51e26be108S猫头猫                        },
52e26be108S猫头猫                    },
533499559fS猫头猫                    {
543499559fS猫头猫                        icon: 'sort',
553499559fS猫头猫                        title: '排序',
563499559fS猫头猫                        onPress() {
573499559fS猫头猫                            showDialog('RadioDialog', {
583499559fS猫头猫                                content: [
593499559fS猫头猫                                    {
603499559fS猫头猫                                        value: 'random',
613499559fS猫头猫                                        key: '随机顺序',
623499559fS猫头猫                                    },
633499559fS猫头猫                                    {
643499559fS猫头猫                                        value: 'a2z',
653499559fS猫头猫                                        key: '歌曲名A-Z',
663499559fS猫头猫                                    },
673499559fS猫头猫                                    {
683499559fS猫头猫                                        value: 'z2a',
693499559fS猫头猫                                        key: '歌曲名Z-A',
703499559fS猫头猫                                    },
713499559fS猫头猫                                    {
723499559fS猫头猫                                        value: 'arta2z',
733499559fS猫头猫                                        key: '作者名A-Z',
743499559fS猫头猫                                    },
753499559fS猫头猫                                    {
763499559fS猫头猫                                        value: 'artz2a',
773499559fS猫头猫                                        key: '作者名Z-A',
783499559fS猫头猫                                    },
793499559fS猫头猫                                ],
803499559fS猫头猫                                title: '排序',
813499559fS猫头猫                                async onOk(value) {
823499559fS猫头猫                                    MusicSheet.sortMusicList(
833499559fS猫头猫                                        value as any,
843499559fS猫头猫                                        musicSheet,
853499559fS猫头猫                                    );
863499559fS猫头猫                                },
873499559fS猫头猫                            });
883499559fS猫头猫                        },
893499559fS猫头猫                    },
904060c00aS猫头猫                ]}
91*7a8d024eS猫头猫                actions={[
92*7a8d024eS猫头猫                    {
93*7a8d024eS猫头猫                        icon: 'magnify',
94*7a8d024eS猫头猫                        onPress() {
95*7a8d024eS猫头猫                            navigation.navigate(ROUTE_PATH.SEARCH_MUSIC_LIST, {
96*7a8d024eS猫头猫                                musicList: musicSheet?.musicList,
97*7a8d024eS猫头猫                            });
98*7a8d024eS猫头猫                        },
99*7a8d024eS猫头猫                    },
100*7a8d024eS猫头猫                ]}>
101*7a8d024eS猫头猫                歌单
102*7a8d024eS猫头猫            </AppBar>
103*7a8d024eS猫头猫        </>
104bf6e62f2S猫头猫    );
105bf6e62f2S猫头猫}
106