Files
homarr/packages/widgets/src/dns-hole/summary/index.ts
Meier Lukas 0f8d9edb3e refactor: replace serverdata with suspense query (#1265)
* refactor: replace serverdata with suspense query

* fix: deepsource issues
2024-10-11 23:47:07 +02:00

32 lines
1.0 KiB
TypeScript

import { IconAd, IconServerOff } from "@tabler/icons-react";
import { getIntegrationKindsByCategory } from "@homarr/definitions";
import { createWidgetDefinition } from "../../definition";
import { optionsBuilder } from "../../options";
export const widgetKind = "dnsHoleSummary";
export const { definition, componentLoader } = createWidgetDefinition(widgetKind, {
icon: IconAd,
options: optionsBuilder.from((factory) => ({
usePiHoleColors: factory.switch({
defaultValue: true,
}),
layout: factory.select({
options: (["grid", "row", "column"] as const).map((value) => ({
value,
label: (t) => t(`widget.dnsHoleSummary.option.layout.option.${value}.label`),
})),
defaultValue: "grid",
}),
})),
supportedIntegrations: getIntegrationKindsByCategory("dnsHole"),
errors: {
INTERNAL_SERVER_ERROR: {
icon: IconServerOff,
message: (t) => t("widget.dnsHoleSummary.error.internalServerError"),
},
},
}).withDynamicImport(() => import("./component"));