import Image from "next/future/image"; import classNames from "classnames"; import { useContext, useState } from "react"; import Status from "./status"; import Widget from "./widget"; import Docker from "widgets/docker/component"; import { SettingsContext } from "utils/contexts/settings"; function resolveIcon(icon) { if (icon.startsWith("http")) { return `/api/proxy?url=${encodeURIComponent(icon)}`; } if (icon.startsWith("/")) { return icon; } if (icon.endsWith(".png")) { return `https://cdn.jsdelivr.net/gh/walkxcode/dashboard-icons/png/${icon}`; } return `https://cdn.jsdelivr.net/gh/walkxcode/dashboard-icons/png/${icon}.png`; } export default function Item({ service }) { const hasLink = service.href && service.href !== "#"; const { settings } = useContext(SettingsContext); const [statsOpen, setStatsOpen] = useState(false); return (
  • {service.icon && (hasLink ? ( logo ) : (
    logo
    ))} {hasLink ? (
    {service.name}

    {service.description}

    ) : (
    {service.name}

    {service.description}

    )} {service.container && ( )}
    {service.container && service.server && (
    )} {service.widget && }
  • ); }