diff --git a/apps/nextjs/src/components/board/items/widget-hover-overlay.tsx b/apps/nextjs/src/components/board/items/widget-hover-overlay.tsx
index 6ea3ac572..40c64d3a1 100644
--- a/apps/nextjs/src/components/board/items/widget-hover-overlay.tsx
+++ b/apps/nextjs/src/components/board/items/widget-hover-overlay.tsx
@@ -2,7 +2,7 @@
import { Avatar, Group, Text, Tooltip } from "@mantine/core";
-import { clientApi } from "@homarr/api/client";
+import type { RouterOutputs } from "@homarr/api";
import { useEditMode } from "@homarr/boards/edit-mode";
import { getIconUrl } from "@homarr/definitions";
import { useSettings } from "@homarr/settings";
@@ -16,13 +16,13 @@ import classes from "./widget-hover-overlay.module.css";
interface WidgetHoverOverlayProps {
item: SectionItem;
+ integrations: RouterOutputs["integration"]["all"] | undefined;
}
-export const WidgetHoverOverlay = ({ item }: WidgetHoverOverlayProps) => {
+export const WidgetHoverOverlay = ({ item, integrations }: WidgetHoverOverlayProps) => {
const [isEditMode] = useEditMode();
const settings = useSettings();
const t = useI18n();
- const { data: integrations } = clientApi.integration.all.useQuery();
const { definition } = widgetImports[item.kind];
const WidgetIcon = definition.icon;
diff --git a/apps/nextjs/src/components/board/sections/content.tsx b/apps/nextjs/src/components/board/sections/content.tsx
index 3c3ca6ea0..ced30c796 100644
--- a/apps/nextjs/src/components/board/sections/content.tsx
+++ b/apps/nextjs/src/components/board/sections/content.tsx
@@ -2,6 +2,9 @@ import { useMemo } from "react";
import type { GridItemHTMLElement } from "@homarr/gridstack";
+import type { RouterOutputs } from "@homarr/api";
+import { clientApi } from "@homarr/api/client";
+
import type { DynamicSectionItem, SectionItem } from "~/app/[locale]/boards/_types";
import { BoardItemContent } from "../items/item-content";
import { WidgetHoverOverlay } from "../items/widget-hover-overlay";
@@ -12,6 +15,7 @@ import { useSectionItems } from "./use-section-items";
export const SectionContent = () => {
const { innerSections, items, refs } = useSectionContext();
+ const { data: integrations } = clientApi.integration.all.useQuery();
/**
* IMPORTANT: THE ORDER OF THE BELOW ITEMS HAS TO MATCH THE ORDER OF
@@ -31,7 +35,7 @@ export const SectionContent = () => {
return (
<>
{sortedItems.map((item) => (
-
+
))}
>
);
@@ -40,9 +44,10 @@ export const SectionContent = () => {
interface ItemProps {
item: DynamicSectionItem | SectionItem;
innerRef: React.RefObject | undefined;
+ integrations: RouterOutputs["integration"]["all"] | undefined;
}
-const Item = ({ item, innerRef }: ItemProps) => {
+const Item = ({ item, innerRef, integrations }: ItemProps) => {
const minWidth = useMinSize(item, "x");
const minHeight = useMinSize(item, "y");
return (
@@ -59,7 +64,7 @@ const Item = ({ item, innerRef }: ItemProps) => {
minWidth={minWidth}
minHeight={minHeight}
>
- {item.type === "item" && item.kind !== "app" && }
+ {item.type === "item" && item.kind !== "app" && }
{item.type === "item" ? : }
);