xref: /MusicFree/src/components/mediaItem/sheetItem.tsx (revision b4c389f44ac4dad056e7314478fadd2eca82a4b1)
1ceb900cdS猫头猫import React from 'react';
2ceb900cdS猫头猫import {StyleSheet, View} from 'react-native';
3ceb900cdS猫头猫import rpx from '@/utils/rpx';
4*b4c389f4Smaotoumaoimport {ROUTE_PATH, useNavigate} from '@/core/router';
5ceb900cdS猫头猫import ImageBtn from '../base/imageBtn';
6ceb900cdS猫头猫
7ceb900cdS猫头猫interface ISheetItemProps {
8ceb900cdS猫头猫    pluginHash: string;
9ceb900cdS猫头猫    sheetInfo: IMusic.IMusicSheetItemBase;
10ceb900cdS猫头猫}
11ceb900cdS猫头猫
12ceb900cdS猫头猫const marginBottom = rpx(16);
13ceb900cdS猫头猫
14ceb900cdS猫头猫export default function SheetItem(props: ISheetItemProps) {
15ceb900cdS猫头猫    const {sheetInfo, pluginHash} = props ?? {};
16ceb900cdS猫头猫    const navigate = useNavigate();
17ceb900cdS猫头猫    return (
18ceb900cdS猫头猫        <View style={style.imageWrapper}>
19ceb900cdS猫头猫            <ImageBtn
20ceb900cdS猫头猫                style={{
21ceb900cdS猫头猫                    marginBottom,
22ceb900cdS猫头猫                }}
23771839b6S猫头猫                uri={sheetInfo?.artwork ?? sheetInfo?.coverImg}
24771839b6S猫头猫                title={sheetInfo?.title}
25ceb900cdS猫头猫                onPress={() => {
26ceb900cdS猫头猫                    navigate(ROUTE_PATH.PLUGIN_SHEET_DETAIL, {
27ceb900cdS猫头猫                        pluginHash,
28ceb900cdS猫头猫                        sheetInfo,
29ceb900cdS猫头猫                    });
30ceb900cdS猫头猫                }}
31ceb900cdS猫头猫            />
32ceb900cdS猫头猫        </View>
33ceb900cdS猫头猫    );
34ceb900cdS猫头猫}
35ceb900cdS猫头猫const style = StyleSheet.create({
36ceb900cdS猫头猫    imageWrapper: {
37ceb900cdS猫头猫        width: '100%',
38ceb900cdS猫头猫        justifyContent: 'center',
39ceb900cdS猫头猫        alignItems: 'center',
40ceb900cdS猫头猫    },
41ceb900cdS猫头猫});
42