xref: /MusicFree/src/components/musicSheetPage/index.tsx (revision bef6dda83b032c223c1d30d583f106aaa6f87796)
1be539549S猫头猫import React from 'react';
2be539549S猫头猫import NavBar from './components/navBar';
3be539549S猫头猫import MusicBar from '@/components/musicBar';
4b1fa57d0S猫头猫import SheetMusicList from './components/sheetMusicList';
5be539549S猫头猫import StatusBar from '@/components/base/statusBar';
63b155a65S猫头猫import globalStyle from '@/constants/globalStyle';
73b155a65S猫头猫import VerticalSafeAreaView from '../base/verticalSafeAreaView';
8be539549S猫头猫
9be539549S猫头猫interface IMusicSheetPageProps {
10be539549S猫头猫    navTitle: string;
11be539549S猫头猫    sheetInfo: ICommon.WithMusicList<IMusic.IMusicSheetItemBase> | null;
12f9afcc0dS猫头猫    musicList?: IMusic.IMusicItem[] | null;
13f9afcc0dS猫头猫    onEndReached?: () => void;
14ceb900cdS猫头猫    loadMore?: 'loading' | 'done' | 'idle';
15*bef6dda8S猫头猫    // 是否可收藏
16*bef6dda8S猫头猫    canStar?: boolean;
17be539549S猫头猫}
18be539549S猫头猫
19be539549S猫头猫export default function MusicSheetPage(props: IMusicSheetPageProps) {
20*bef6dda8S猫头猫    const {navTitle, sheetInfo, musicList, onEndReached, loadMore, canStar} =
21*bef6dda8S猫头猫        props;
22be539549S猫头猫
23be539549S猫头猫    return (
243b155a65S猫头猫        <VerticalSafeAreaView style={globalStyle.fwflex1}>
25be539549S猫头猫            <StatusBar />
26be539549S猫头猫            <NavBar
27f9afcc0dS猫头猫                musicList={musicList ?? sheetInfo?.musicList ?? []}
28be539549S猫头猫                navTitle={navTitle}
29be539549S猫头猫            />
30b1fa57d0S猫头猫            <SheetMusicList
31*bef6dda8S猫头猫                canStar={canStar}
32e650bfb3S猫头猫                sheetInfo={sheetInfo as any}
33f9afcc0dS猫头猫                musicList={musicList ?? sheetInfo?.musicList}
34f9afcc0dS猫头猫                onEndReached={() => {
35f9afcc0dS猫头猫                    onEndReached?.();
36f9afcc0dS猫头猫                }}
37f9afcc0dS猫头猫                loadMore={loadMore}
38be539549S猫头猫            />
39be539549S猫头猫            <MusicBar />
403b155a65S猫头猫        </VerticalSafeAreaView>
41be539549S猫头猫    );
42be539549S猫头猫}
43