diff --git a/src/components/services/group.jsx b/src/components/services/group.jsx index 7fc86907..a963181c 100644 --- a/src/components/services/group.jsx +++ b/src/components/services/group.jsx @@ -1,7 +1,8 @@ -import classNames from "classnames"; import Image from "next/future/image"; +import classNames from "classnames"; import List from "components/services/list"; +import { resolveIcon } from "utils/icon-resolver"; export default function ServicesGroup({ services, layout }) { return ( @@ -14,7 +15,7 @@ export default function ServicesGroup({ services, layout }) { >
{services.icon && - logo + logo }

{services.name}

diff --git a/src/components/services/item.jsx b/src/components/services/item.jsx index 82f3741c..9d093bef 100644 --- a/src/components/services/item.jsx +++ b/src/components/services/item.jsx @@ -7,22 +7,7 @@ import Widget from "./widget"; import Docker from "./widgets/service/docker"; import { SettingsContext } from "utils/settings-context"; - -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`; -} +import { resolveIcon } from "utils/icon-resolver"; export default function Item({ service }) { const hasLink = service.href && service.href !== "#"; diff --git a/src/utils/icon-resolver.js b/src/utils/icon-resolver.js new file mode 100644 index 00000000..0a7f1211 --- /dev/null +++ b/src/utils/icon-resolver.js @@ -0,0 +1,15 @@ +export 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`; +} \ No newline at end of file