import React,{CSSProperties, useState} from 'react' import * as Icon from 'react-feather' import { ProgressColor } from '../../utils/colors' import { isUpdatable, isUpdateCompat, PackageInfo } from "../../data/packageInfo" import { ProgressBar } from 'react-bootstrap' import { MyImage } from '../ui/MyImage' const DefaultStyle = (props:any) => { const { hover } = props return { display: "flex", justifyContent: "center", alignItems: "center", flexDirection:"column", textAlign: 'center', cursor: "pointer", backgroundColor: !hover ? "white" : "#ebebeb", opacity: hover ? 0.8 : 1, borderRadius: 10, marginBottom: 10, height: props.height + 50 } as CSSProperties } export interface AppIconProps { className?: string package: PackageInfo width?: number height?: number style?: CSSProperties //body?: JSX.Element //footer?: JSX.Element onClick?: (app: PackageInfo) => void } export const AppIcon = (props: AppIconProps): JSX.Element => { const [onHover,setOnHover] = useState(false) const handleOnHover = (isHover:boolean) =>{ setOnHover(isHover) } const pkg = props.package const status = pkg.status const progressColor = ProgressColor(status) let progress = pkg.progress if (!(progress > 0) && pkg.status === "installing") progress = 95 const _style = { ...DefaultStyle({...props, hover:onHover}), ...props.style} return (