14060c00aS猫头猫import React from 'react'; 24060c00aS猫头猫import {StyleSheet, View} from 'react-native'; 3bf6e62f2S猫头猫import rpx from '@/utils/rpx'; 4bf6e62f2S猫头猫import Icon from 'react-native-vector-icons/MaterialCommunityIcons'; 5242960d3S猫头猫import MusicQueue from '@/core/musicQueue'; 6bf6e62f2S猫头猫import repeatModeConst from '@/constants/repeatModeConst'; 7bf6e62f2S猫头猫import musicIsPaused from '@/utils/musicIsPaused'; 8*c15039e2S猫头猫 9c446f2b8S猫头猫import useOrientation from '@/hooks/useOrientation'; 10*c15039e2S猫头猫import {showPanel} from '@/components/panels/usePanel'; 11bf6e62f2S猫头猫 124060c00aS猫头猫export default function () { 13bf6e62f2S猫头猫 const repeatMode = MusicQueue.useRepeatMode(); 14bf6e62f2S猫头猫 const musicState = MusicQueue.usePlaybackState(); 15*c15039e2S猫头猫 16c446f2b8S猫头猫 const orientation = useOrientation(); 17bf6e62f2S猫头猫 18bf6e62f2S猫头猫 return ( 19bf6e62f2S猫头猫 <> 20c446f2b8S猫头猫 <View 21c446f2b8S猫头猫 style={[ 22c446f2b8S猫头猫 style.wrapper, 23c446f2b8S猫头猫 orientation === 'horizonal' 24c446f2b8S猫头猫 ? { 25c446f2b8S猫头猫 marginTop: 0, 26c446f2b8S猫头猫 } 27c446f2b8S猫头猫 : null, 28c446f2b8S猫头猫 ]}> 29bf6e62f2S猫头猫 <Icon 30bf6e62f2S猫头猫 color={'white'} 31bf6e62f2S猫头猫 name={repeatModeConst[repeatMode].icon} 32bf6e62f2S猫头猫 size={rpx(56)} 33bf6e62f2S猫头猫 onPress={() => { 34bf6e62f2S猫头猫 MusicQueue.toggleRepeatMode(); 354060c00aS猫头猫 }} 364060c00aS猫头猫 /> 37bf6e62f2S猫头猫 <Icon 38bf6e62f2S猫头猫 color={'white'} 39bf6e62f2S猫头猫 name={'skip-previous'} 40bf6e62f2S猫头猫 size={rpx(56)} 41bf6e62f2S猫头猫 onPress={() => { 42bf6e62f2S猫头猫 MusicQueue.skipToPrevious(); 434060c00aS猫头猫 }} 444060c00aS猫头猫 /> 45bf6e62f2S猫头猫 <Icon 46bf6e62f2S猫头猫 color={'white'} 47bf6e62f2S猫头猫 name={ 48bf6e62f2S猫头猫 musicIsPaused(musicState) 49bf6e62f2S猫头猫 ? 'play-circle-outline' 50bf6e62f2S猫头猫 : 'pause-circle-outline' 51bf6e62f2S猫头猫 } 52bf6e62f2S猫头猫 size={rpx(96)} 53bf6e62f2S猫头猫 onPress={() => { 54bf6e62f2S猫头猫 if (musicIsPaused(musicState)) { 55bf6e62f2S猫头猫 MusicQueue.play(); 56bf6e62f2S猫头猫 } else { 57bf6e62f2S猫头猫 MusicQueue.pause(); 58bf6e62f2S猫头猫 } 594060c00aS猫头猫 }} 604060c00aS猫头猫 /> 61bf6e62f2S猫头猫 <Icon 62bf6e62f2S猫头猫 color={'white'} 63bf6e62f2S猫头猫 name={'skip-next'} 64bf6e62f2S猫头猫 size={rpx(56)} 65bf6e62f2S猫头猫 onPress={() => { 66bf6e62f2S猫头猫 MusicQueue.skipToNext(); 674060c00aS猫头猫 }} 684060c00aS猫头猫 /> 69bf6e62f2S猫头猫 <Icon 70bf6e62f2S猫头猫 color={'white'} 71bf6e62f2S猫头猫 name={'playlist-music'} 72bf6e62f2S猫头猫 size={rpx(56)} 73bf6e62f2S猫头猫 onPress={() => { 74bf6e62f2S猫头猫 showPanel('PlayList'); 754060c00aS猫头猫 }} 764060c00aS猫头猫 /> 77bf6e62f2S猫头猫 </View> 78bf6e62f2S猫头猫 </> 79bf6e62f2S猫头猫 ); 80bf6e62f2S猫头猫} 81bf6e62f2S猫头猫 82bf6e62f2S猫头猫const style = StyleSheet.create({ 83bf6e62f2S猫头猫 wrapper: { 844245d81aS猫头猫 width: '100%', 85bf6e62f2S猫头猫 marginTop: rpx(36), 86bf6e62f2S猫头猫 height: rpx(100), 87bf6e62f2S猫头猫 flexDirection: 'row', 88bf6e62f2S猫头猫 justifyContent: 'space-around', 89bf6e62f2S猫头猫 alignItems: 'center', 90bf6e62f2S猫头猫 }, 91bf6e62f2S猫头猫}); 92