xref: /MusicFree/src/pages/sheetDetail/components/navBar.tsx (revision 5589cdf32b2bb0f641e5ac7bf1f6152cd6b9b70e)
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';
77a8d024eS猫头猫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 (
157a8d024eS猫头猫        <>
167a8d024eS猫头猫            <AppBar
177a8d024eS猫头猫                menu={[
18a3289929S猫头猫                    {
19*5589cdf3S猫头猫                        icon: 'trash-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猫头猫                    {
35*5589cdf3S猫头猫                        icon: 'pencil-square',
36f970486eS猫头猫                        title: '批量编辑',
37f970486eS猫头猫                        onPress() {
38f970486eS猫头猫                            navigation.navigate(ROUTE_PATH.MUSIC_LIST_EDITOR, {
39f970486eS猫头猫                                musicList: musicSheet.musicList,
40f970486eS猫头猫                                musicSheet: musicSheet,
41f970486eS猫头猫                            });
42f970486eS猫头猫                        },
43f970486eS猫头猫                    },
44e26be108S猫头猫                    {
45*5589cdf3S猫头猫                        icon: 'pencil-outline',
46e26be108S猫头猫                        title: '编辑歌单信息',
47e26be108S猫头猫                        onPress() {
48e26be108S猫头猫                            showDialog('EditSheetDetailDialog', {
49e26be108S猫头猫                                musicSheet: musicSheet,
50e26be108S猫头猫                            });
51e26be108S猫头猫                        },
52e26be108S猫头猫                    },
533499559fS猫头猫                    {
54*5589cdf3S猫头猫                        icon: 'sort-outline',
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猫头猫                                    },
79e43bbb40S猫头猫                                    {
80e43bbb40S猫头猫                                        value: 'time',
81e43bbb40S猫头猫                                        key: '加入歌单时间',
82e43bbb40S猫头猫                                    },
83e43bbb40S猫头猫                                    {
84e43bbb40S猫头猫                                        value: 'time-rev',
85e43bbb40S猫头猫                                        key: '加入歌单时间(逆序)',
86e43bbb40S猫头猫                                    },
873499559fS猫头猫                                ],
883499559fS猫头猫                                title: '排序',
893499559fS猫头猫                                async onOk(value) {
903499559fS猫头猫                                    MusicSheet.sortMusicList(
913499559fS猫头猫                                        value as any,
923499559fS猫头猫                                        musicSheet,
933499559fS猫头猫                                    );
943499559fS猫头猫                                },
953499559fS猫头猫                            });
963499559fS猫头猫                        },
973499559fS猫头猫                    },
984060c00aS猫头猫                ]}
997a8d024eS猫头猫                actions={[
1007a8d024eS猫头猫                    {
101*5589cdf3S猫头猫                        icon: 'magnifying-glass',
1027a8d024eS猫头猫                        onPress() {
1037a8d024eS猫头猫                            navigation.navigate(ROUTE_PATH.SEARCH_MUSIC_LIST, {
1047a8d024eS猫头猫                                musicList: musicSheet?.musicList,
1057ce5c26cS猫头猫                                musicSheet: musicSheet,
1067a8d024eS猫头猫                            });
1077a8d024eS猫头猫                        },
1087a8d024eS猫头猫                    },
1097a8d024eS猫头猫                ]}>
1107a8d024eS猫头猫                歌单
1117a8d024eS猫头猫            </AppBar>
1127a8d024eS猫头猫        </>
113bf6e62f2S猫头猫    );
114bf6e62f2S猫头猫}
115