Projekt

Obecné

Profil

Stáhnout (1.75 KB) Statistiky
| Větev: | Tag: | Revize:
1
import { Box, Center, HStack, Image, Pressable, ScrollView, Text, VStack } from "native-base"
2
import { useEffect } from "react"
3
import { DrawerScreenProps } from "@react-navigation/drawer"
4
import { RootDrawerParamList } from "../../pages/Navigation"
5
import { ItemPreviewMissingImage } from "./ItemPreviewMissingImage"
6

    
7
interface ItemPreviewProps {
8
    caption: string
9
    title: string
10
    name?: string
11
    image?: string
12
    itemId: string
13
    inventoryLabel: string
14
    navigation: any
15
}
16

    
17
const ItemPreview = (props: ItemPreviewProps) => {
18

    
19
    return (
20
        <>
21
            <Pressable
22
                onPress={() => props.navigation.navigate("Item", {itemId: props.itemId})}
23
                key={props.itemId}
24
            >
25
                <HStack
26
                    space={ 2 }
27
                    flex={ 1 }
28
                    alignItems={ "flex-start" }
29
                    key={props.itemId}
30
                >
31
                    {props.image ? (
32
                    <Image
33
                        source={ {uri: `http:/147.228.173.159/static/images/thumb-${props.image}`} }
34
                        size={ "sm" }
35
                        alt={ props.image }
36
                    />
37
                    ) : (
38
                        <ItemPreviewMissingImage inventoryLabel={props.inventoryLabel} h={65} w={65} />
39
                    )}
40
                    <VStack h={70} maxW={"80%"}>
41
                        <Text fontSize={"sm"} italic>{ props.name }</Text>
42
                        <Text fontSize={"sm"} bold noOfLines={1}>{ props.caption }</Text>
43
                        <Text fontSize={"2xs"} lineHeight={"2xs"} noOfLines={2}>{ props.title }</Text>
44
                    </VStack>
45
                </HStack>
46
            </Pressable>
47
        </>
48
    )
49
}
50

    
51
export default ItemPreview
(1-1/4)