feat: add pi hole summary integration (#521)

* feat: add pi hole summary integration

* feat: add pi hole summary widget

* fix: type issues with integrations and integrationIds

* feat: add middleware for integrations and improve cache redis channel

* feat: add error boundary for widgets

* fix: broken lock file

* fix: format format issues

* fix: typecheck issue

* fix: deepsource issues

* fix: widget sandbox without error boundary

* chore: address pull request feedback

* chore: remove todo comment and created issue

* fix: format issues

* fix: deepsource issue
This commit is contained in:
Meier Lukas
2024-05-26 17:13:34 +02:00
committed by GitHub
parent 96c71aed6e
commit d57b771a17
45 changed files with 902 additions and 124 deletions

View File

@@ -447,6 +447,7 @@ export default {
previous: "Previous",
next: "Next",
checkoutDocs: "Check out the documentation",
tryAgain: "Try again",
},
iconPicker: {
header: "Type name or objects to filter for icons... Homarr will search through {countIcons} icons for you.",
@@ -531,7 +532,6 @@ export default {
custom: {
passwordsDoNotMatch: "Passwords do not match",
boardAlreadyExists: "A board with this name already exists",
// TODO: Add custom error messages
},
},
},
@@ -641,6 +641,38 @@ export default {
},
},
},
dnsHoleSummary: {
name: "DNS Hole Summary",
description: "Displays the summary of your DNS Hole",
option: {
layout: {
label: "Layout",
option: {
row: {
label: "Horizontal",
},
column: {
label: "Vertical",
},
grid: {
label: "Grid",
},
},
},
usePiHoleColors: {
label: "Use Pi-Hole colors",
},
},
error: {
internalServerError: "Failed to fetch DNS Hole Summary",
},
data: {
adsBlockedToday: "blocked today",
adsBlockedTodayPercentage: "blocked today",
dnsQueriesToday: "Queries today",
domainsBeingBlocked: "Domains on blocklist",
},
},
clock: {
name: "Date and time",
description: "Displays the current date and time.",
@@ -834,6 +866,12 @@ export default {
},
},
},
error: {
action: {
logs: "Check logs for more details",
},
noIntegration: "No integration selected",
},
},
video: {
name: "Video Stream",