feat(definitions): declare unifiOs integration kind, category and widget kind

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
zacharyandClaude Opus 5 committed 2026-10-08 00:21:50 +02:00
1 parent f3d0c2f527
commit 13d27fb308
5 files changed
+14

No files matched your search

@@ -27,6 +27,7 @@ export const widgetDocSlugs = {
minecraftServerStatus: "minecraft-server-status",
networkControllerSummary: "network-controller-summary",
networkControllerStatus: "network-controller-status",
unifiOs: null,
rssFeed: "rss-feed",
bookmarks: "bookmarks",
indexerManager: "indexer-manager",
+10
View File
@@ -10,6 +10,7 @@ type IntegrationDocumentationSlug = IntegrationDocumentationPath extends `/docs/
export const integrationSecretKindObject = {
apiKey: { isPublic: false, multiline: false },
siteManagerApiKey: { isPublic: false, multiline: false },
username: { isPublic: true, multiline: false },
password: { isPublic: false, multiline: false },
tokenId: { isPublic: true, multiline: false },
@@ -705,6 +706,14 @@ export const integrationDefs = {
defaultPort: 8443,
features: { docker: { aliases: ["unifi", "unifi-controller"] } },
},
unifiOs: {
name: "UniFi OS",
secretKinds: [["apiKey"], ["apiKey", "siteManagerApiKey"]],
iconUrl: "https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons@master/png/unifi.png",
category: ["unifiOs"],
documentationSlug: null,
defaultPort: 443,
},
opnsense: {
httpAuth: { type: "basic", usernameKind: "opnsenseApiKey", passwordKind: "opnsenseApiSecret" },
name: "OPNsense",
@@ -1192,6 +1201,7 @@ export const integrationCategories = [
"reverseProxy",
"systemMonitoring",
"security",
"unifiOs",
] as const;
export type IntegrationCategory = (typeof integrationCategories)[number];
@@ -56,6 +56,7 @@ export const widgetIntegrationConfigs = {
mediaMissing: { supportedIntegrations: getIntegrationKindsByCategory("mediaOrganizer") },
networkControllerSummary: { supportedIntegrations: getIntegrationKindsByCategory("networkController") },
networkControllerStatus: { supportedIntegrations: getIntegrationKindsByCategory("networkController") },
unifiOs: { supportedIntegrations: ["unifiOs"] },
indexerManager: { supportedIntegrations: getIntegrationKindsByCategory("indexerManager") },
healthMonitoring: {
supportedIntegrations: [...healthMonitoringGeneralIntegrationKinds, ...healthMonitoringClusterIntegrationKinds],
+1
View File
@@ -25,6 +25,7 @@ export const widgetKinds = [
"minecraftServerStatus",
"networkControllerSummary",
"networkControllerStatus",
"unifiOs",
"rssFeed",
"bookmarks",
"indexerManager",
+1
View File
@@ -1418,6 +1418,7 @@
"search": "Search",
"mediaTranscoding": "Transcoding",
"networkController": "Network",
"unifiOs": "UniFi OS",
"releasesProvider": "Releases",
"notifications": "Notifications",
"firewall": "Firewall",