"use client"; import { Center, Flex, ScrollArea, SimpleGrid, Stack, Text } from "@mantine/core"; import { clientApi } from "@homarr/api/client"; import { useCurrentIntlLocale, useI18n } from "@homarr/translation/client"; import type { WidgetComponentProps } from "../definition"; import { getUsableWidgetQueryData } from "../common/query-state"; import { VpnIntegrationCard } from "./vpn-card"; export default function VpnWidget({ options, integrationIds, width, height }: WidgetComponentProps<"vpn">) { const summariesQuery = clientApi.widget.vpn.getSummaries.useQuery({ ...options, integrationIds, }); const integrations = getUsableWidgetQueryData(summariesQuery) ?? []; const { isPending } = summariesQuery; const t = useI18n("widget.vpn"); const tCommon = useI18n("common"); const locale = useCurrentIntlLocale(); const dense = width < 240 || height < 120; if (isPending || integrations.length === 0) { return (