import { Text, Card, Anchor, AspectRatio, Image, Center, createStyles } from '@mantine/core'; import { motion } from 'framer-motion'; import { useState } from 'react'; import { useSortable } from '@dnd-kit/sortable'; import { CSS } from '@dnd-kit/utilities'; import { serviceItem } from '../../tools/types'; import PingComponent from '../modules/ping/PingModule'; import AppShelfMenu from './AppShelfMenu'; const useStyles = createStyles((theme) => ({ item: { transition: 'box-shadow 150ms ease, transform 100ms ease', '&:hover': { boxShadow: `${theme.shadows.md} !important`, transform: 'scale(1.05)', }, }, })); export function SortableAppShelfItem(props: any) { const { attributes, listeners, setNodeRef, transform, transition } = useSortable({ id: props.id, }); const style = { transform: CSS.Transform.toString(transform), transition, }; return (
); } export function AppShelfItem(props: any) { const { service }: { service: serviceItem } = props; const [hovering, setHovering] = useState(false); const { classes, theme } = useStyles(); return ( { setHovering(true); }} onHoverEnd={() => { setHovering(false); }} > {service.name}
{ window.open(service.url); }} />
); }