import React, { useState } from 'react'; import { motion } from 'framer-motion'; import { Text, AspectRatio, SimpleGrid, Card, Image, useMantineTheme } from '@mantine/core'; import { useConfig } from '../../tools/state'; import { serviceItem } from '../../tools/types'; import AppShelfMenu from './AppShelfMenu'; const AppShelf = () => { const { config } = useConfig(); return ( {config.services.map((service) => ( ))} ); }; export function AppShelfItem(props: any) { const { service }: { service: serviceItem } = props; const [hovering, setHovering] = useState(false); const theme = useMantineTheme(); return ( { setHovering(true); }} onHoverEnd={() => { setHovering(false); }} > {service.name} { window.open(service.url); }} src={service.icon} /> ); } export default AppShelf;