From 2703cfb81ed6395db6bcf22798e3b159edb545d7 Mon Sep 17 00:00:00 2001 From: Ben Phelps Date: Sat, 17 Sep 2022 22:03:21 +0300 Subject: [PATCH 01/24] update attributions and features --- README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 0906926b..805c0c7e 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ - Automatic service discovery (via labels) - Service Integration - Sonarr, Radarr, Readarr, Prowlarr, Bazarr, Lidarr, Emby, Jellyfin, Tautulli (Plex) - - Ombi, Overseerr, Jellyseerr, Jackett, NZBGet, SABnzbd, ruTorrent, Transmission + - Ombi, Overseerr, Jellyseerr, Jackett, NZBGet, SABnzbd, ruTorrent, Transmission, qBittorrent - Portainer, Traefik, Speedtest Tracker, PiHole, AdGuard Home, Nginx Proxy Manager, Gotify - Information Providers - Coin Market Cap @@ -127,7 +127,7 @@ Huge thanks to the all the contributors who have helped make this project what i - [ilusi0n](https://github.com/benphelps/homepage/commits?author=ilusi0n) - Jellyseerr Integration - [ItsJustMeChris](https://github.com/benphelps/homepage/commits?author=ItsJustMeChris) - Coin Market Cap Widget - [jackblk](https://github.com/benphelps/homepage/commits?author=jackblk) - Vietnamese Translation -- [JazzFisch](https://github.com/benphelps/homepage/commits?author=JazzFisch) - Readarr, Bazarr, Lidarr, SABnzbd & Transmission Integrations +- [JazzFisch](https://github.com/benphelps/homepage/commits?author=JazzFisch) - Readarr, Bazarr, Lidarr, SABnzbd, Transmission & qBittorrent Integrations - [juanmanuelbc](https://github.com/benphelps/homepage/commits?author=juanmanuelbc) - Spanish and Catalan Translations - [modem7](https://github.com/benphelps/homepage/commits?author=modem7) - Impvoed Docker Image - [nicedc](https://github.com/benphelps/homepage/commits?author=nicedc) - Chinese Translation @@ -138,3 +138,4 @@ Huge thanks to the all the contributors who have helped make this project what i - [schklom](https://github.com/benphelps/homepage/commits?author=schklom) - ARM64, ARMv7 and ARMv6 - [SuperDOS](https://github.com/benphelps/homepage/commits?author=SuperDOS) - Swedish Translation - [xicopitz](https://github.com/benphelps/homepage/commits?author=xicopitz) - Gotify & Prowlarr Integration +- [andrii-kryvoviaz](https://github.com/benphelps/homepage/commits?author=andrii-kryvoviaz) - Background opacity option From 38356c31b0bdac0eec86752374bef0f174da44fa Mon Sep 17 00:00:00 2001 From: Ben Phelps Date: Sun, 18 Sep 2022 01:38:41 +0300 Subject: [PATCH 02/24] handle when structure differs from expectation --- src/pages/api/services/proxy.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/pages/api/services/proxy.js b/src/pages/api/services/proxy.js index 889b3849..f0a7eed5 100644 --- a/src/pages/api/services/proxy.js +++ b/src/pages/api/services/proxy.js @@ -23,7 +23,7 @@ function jsonArrayTransform(data, transform) { } function jsonArrayFilter(data, filter) { - return jsonArrayTransform(data, items => items.filter(filter)); + return jsonArrayTransform(data, (items) => items.filter(filter)); } const serviceProxyHandlers = { @@ -36,8 +36,8 @@ const serviceProxyHandlers = { maps: { movie: (data) => ({ wanted: jsonArrayFilter(data, (item) => item.isAvailable === false).length, - have: jsonArrayFilter(data, (item) => item.isAvailable === true).length - }) + have: jsonArrayFilter(data, (item) => item.isAvailable === true).length, + }), }, }, sonarr: { @@ -52,7 +52,7 @@ const serviceProxyHandlers = { proxy: genericProxyHandler, maps: { album: (data) => ({ - have: jsonArrayFilter(data, (item) => item.statistics.percentOfTracks === 100).length, + have: jsonArrayFilter(data, (item) => item?.statistics?.percentOfTracks === 100).length, }), }, }, @@ -60,7 +60,7 @@ const serviceProxyHandlers = { proxy: genericProxyHandler, maps: { book: (data) => ({ - have: jsonArrayFilter(data, (item) => item.statistics.bookFileCount > 0).length, + have: jsonArrayFilter(data, (item) => item?.statistics?.bookFileCount > 0).length, }), }, }, From 5fc266ed81f147cbdc70bd647393711fce92a2cc Mon Sep 17 00:00:00 2001 From: Ben Phelps Date: Sun, 18 Sep 2022 02:12:24 +0300 Subject: [PATCH 03/24] better status icon logic for tautulli --- .../services/widgets/service/tautulli.jsx | 24 +++++++++++++++---- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/src/components/services/widgets/service/tautulli.jsx b/src/components/services/widgets/service/tautulli.jsx index a9e9f61f..8ca6b01b 100644 --- a/src/components/services/widgets/service/tautulli.jsx +++ b/src/components/services/widgets/service/tautulli.jsx @@ -2,7 +2,7 @@ import useSWR from "swr"; import { useTranslation } from "react-i18next"; import { BsFillPlayFill, BsPauseFill, BsCpu, BsFillCpuFill } from "react-icons/bs"; -import { MdOutlineSmartDisplay } from "react-icons/md"; +import { MdOutlineSmartDisplay, MdSmartDisplay } from "react-icons/md"; import Widget from "../widget"; @@ -37,9 +37,16 @@ function SingleSessionEntry({ session }) {
{full_title}
+ {video_decision === "direct play" && audio_decision === "direct play" && ( + + )} {video_decision === "copy" && audio_decision === "copy" && } - {video_decision !== "copy" && audio_decision !== "copy" && } - {video_decision === "copy" && audio_decision !== "copy" && } + {video_decision !== "copy" && + video_decision !== "direct play" && + (audio_decision !== "copy" || audio_decision !== "direct play") && } + {(video_decision === "copy" || video_decision === "direct play") && + audio_decision !== "copy" && + audio_decision !== "direct play" && }
@@ -92,9 +99,16 @@ function SessionEntry({ session }) {
{full_title}
+ {video_decision === "direct play" && audio_decision === "direct play" && ( + + )} {video_decision === "copy" && audio_decision === "copy" && } - {video_decision !== "copy" && audio_decision !== "copy" && } - {video_decision === "copy" && audio_decision !== "copy" && } + {video_decision !== "copy" && + video_decision !== "direct play" && + (audio_decision !== "copy" || audio_decision !== "direct play") && } + {(video_decision === "copy" || video_decision === "direct play") && + audio_decision !== "copy" && + audio_decision !== "direct play" && }
{millisecondsToString(view_offset)}
From 05af60df4fae6463ff811fbc6b84d8cb78eeb7ba Mon Sep 17 00:00:00 2001 From: ShlomiPorush Date: Sun, 18 Sep 2022 08:37:17 +0200 Subject: [PATCH 04/24] Added translation using Weblate (Hebrew) --- public/locales/he/common.json | 1 + 1 file changed, 1 insertion(+) create mode 100644 public/locales/he/common.json diff --git a/public/locales/he/common.json b/public/locales/he/common.json new file mode 100644 index 00000000..0967ef42 --- /dev/null +++ b/public/locales/he/common.json @@ -0,0 +1 @@ +{} From d46a98c7d528d2d4cff4ef960f11f2c3fc2b22a2 Mon Sep 17 00:00:00 2001 From: Daniel Varga Date: Sat, 17 Sep 2022 08:08:32 +0000 Subject: [PATCH 05/24] Translated using Weblate (German) Currently translated at 62.0% (67 of 108 strings) Translation: Homepage/Homepage Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/ --- public/locales/de/common.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/public/locales/de/common.json b/public/locales/de/common.json index a224030a..f151ac6f 100644 --- a/public/locales/de/common.json +++ b/public/locales/de/common.json @@ -11,7 +11,7 @@ "total": "Gesamt", "free": "Frei", "used": "Gebraucht", - "load": "Load" + "load": "Belastung" }, "docker": { "rx": "Rx", @@ -24,13 +24,13 @@ "playing": "Spielen", "transcoding": "Transcodierung", "bitrate": "Bitrate", - "no_active": "No Active Streams" + "no_active": "Keine aktiven streamen" }, "tautulli": { "playing": "Spielen", "transcoding": "Transcodierung", "bitrate": "Bitrate", - "no_active": "No Active Streams" + "no_active": "Keine aktiven streamen" }, "rutorrent": { "active": "Aktiv", From f46feff445379a025b11eb39e5e40d410a7ed6b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81ngel=20Fern=C3=A1ndez=20S=C3=A1nchez?= Date: Sat, 17 Sep 2022 09:24:45 +0000 Subject: [PATCH 06/24] Translated using Weblate (Spanish) Currently translated at 100.0% (108 of 108 strings) Translation: Homepage/Homepage Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/ --- public/locales/es/common.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/public/locales/es/common.json b/public/locales/es/common.json index 22e1545a..7f188fc0 100644 --- a/public/locales/es/common.json +++ b/public/locales/es/common.json @@ -153,9 +153,9 @@ "latency": "Latencia" }, "qbittorrent": { - "download": "Download", - "upload": "Upload", - "leech": "Leech", - "seed": "Seed" + "download": "Descarga", + "upload": "Subida", + "leech": "Compañeros", + "seed": "Semillas" } } From bed5acc9d57308569568161cfa152b8758872728 Mon Sep 17 00:00:00 2001 From: Nonoss117 Date: Sat, 17 Sep 2022 12:27:05 +0000 Subject: [PATCH 07/24] Translated using Weblate (French) Currently translated at 100.0% (108 of 108 strings) Translation: Homepage/Homepage Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/ --- public/locales/fr/common.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/public/locales/fr/common.json b/public/locales/fr/common.json index b558b66f..68528d85 100644 --- a/public/locales/fr/common.json +++ b/public/locales/fr/common.json @@ -34,8 +34,8 @@ }, "rutorrent": { "active": "Actif", - "upload": "Téléverser", - "download": "Télécharger" + "upload": "Envoi", + "download": "Réception" }, "sonarr": { "wanted": "Demandé", @@ -164,8 +164,8 @@ "latency": "Latence" }, "qbittorrent": { - "download": "Download", - "upload": "Upload", + "download": "Réception", + "upload": "Envoi", "leech": "Leech", "seed": "Seed" } From d9089e8d1c87e3149e20c5fdea8b29b198d7c7df Mon Sep 17 00:00:00 2001 From: Daniel Varga Date: Sat, 17 Sep 2022 07:26:21 +0000 Subject: [PATCH 08/24] Translated using Weblate (Hungarian) Currently translated at 100.0% (108 of 108 strings) Translation: Homepage/Homepage Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/ --- public/locales/hu/common.json | 186 +++++++++++++++++----------------- 1 file changed, 93 insertions(+), 93 deletions(-) diff --git a/public/locales/hu/common.json b/public/locales/hu/common.json index 972b12f5..a3a3abb4 100644 --- a/public/locales/hu/common.json +++ b/public/locales/hu/common.json @@ -1,9 +1,9 @@ { "resources": { - "total": "Total", - "free": "Free", - "used": "Used", - "load": "Load" + "total": "Összes", + "free": "Szabad", + "used": "Használt", + "load": "Terhelés" }, "docker": { "rx": "RX", @@ -13,149 +13,149 @@ "offline": "Offline" }, "lidarr": { - "albums": "Albums", - "wanted": "Wanted", - "queued": "Queued" + "albums": "Albumok", + "wanted": "Keresett", + "queued": "Sorban áll" }, "readarr": { - "wanted": "Wanted", - "queued": "Queued", - "books": "Books" + "wanted": "Keresett", + "queued": "Sorban áll", + "books": "Könyvek" }, "bazarr": { - "missingEpisodes": "Missing Episodes", - "missingMovies": "Missing Movies" + "missingEpisodes": "Hiányzó epizódok", + "missingMovies": "Hiányzó filmek" }, "widget": { - "missing_type": "Missing Widget Type: {{type}}", - "api_error": "API Error", - "status": "Status" + "missing_type": "Hiányzó Widget Típus: {{type}}", + "api_error": "API Hiba", + "status": "Státusz" }, "weather": { - "current": "Current Location", - "allow": "Click to allow", - "updating": "Updating", - "wait": "Please wait" + "current": "Aktuális hely", + "allow": "Kattints az engedélyezéshez", + "updating": "Frissítés", + "wait": "Kérlek várj" }, "search": { - "placeholder": "Search…" + "placeholder": "Keresés…" }, "emby": { - "playing": "Playing", - "transcoding": "Transcoding", - "bitrate": "Bitrate", - "no_active": "No Active Streams" + "playing": "Lejátszás", + "transcoding": "Átkódolás", + "bitrate": "Bitráta", + "no_active": "Nincs aktív lejátszás" }, "tautulli": { - "playing": "Playing", - "transcoding": "Transcoding", - "bitrate": "Bitrate", - "no_active": "No Active Streams" + "playing": "Lejátszás folyamatban", + "transcoding": "Átkódolás", + "bitrate": "Bitráta", + "no_active": "Nincs aktív lejátszás" }, "nzbget": { - "rate": "Rate", - "remaining": "Remaining", - "downloaded": "Downloaded" + "rate": "Ráta", + "remaining": "Hátralévő", + "downloaded": "Letöltött" }, "sabnzbd": { - "rate": "Rate", - "queue": "Queue", - "timeleft": "Time Left" + "rate": "Ráta", + "queue": "Sor", + "timeleft": "Hátralévő idő" }, "rutorrent": { - "active": "Active", - "upload": "Upload", - "download": "Download" + "active": "Aktív", + "upload": "Feltöltés", + "download": "Letöltés" }, "transmission": { - "leech": "Leech", - "seed": "Seed", - "download": "Download", - "upload": "Upload" + "leech": "Leechelés", + "seed": "Seedelés", + "download": "Letöltés", + "upload": "Feltöltés" }, "qbittorrent": { - "download": "Download", - "upload": "Upload", - "leech": "Leech", - "seed": "Seed" + "download": "Letöltés", + "upload": "Feltöltés", + "leech": "Leechelés", + "seed": "Seedelés" }, "sonarr": { - "wanted": "Wanted", - "queued": "Queued", - "series": "Series" + "wanted": "Keresett", + "queued": "Sorban áll", + "series": "Sorozat" }, "radarr": { - "wanted": "Wanted", - "queued": "Queued", - "movies": "Movies" + "wanted": "Keresett", + "queued": "Sorban áll", + "movies": "Filmek" }, "ombi": { - "pending": "Pending", - "approved": "Approved", - "available": "Available" + "pending": "Függőben", + "approved": "Engedélyezett", + "available": "Elérhető" }, "jellyseerr": { - "pending": "Pending", - "approved": "Approved", - "available": "Available" + "pending": "Függőben", + "approved": "Engedélyezett", + "available": "Elérhető" }, "overseerr": { - "pending": "Pending", - "approved": "Approved", - "available": "Available" + "pending": "Függőben", + "approved": "Engedélyezett", + "available": "Elérhető" }, "pihole": { - "queries": "Queries", - "blocked": "Blocked", - "gravity": "Gravity" + "queries": "Lekérdezések", + "blocked": "Blokkolt", + "gravity": "Gravitáció" }, "adguard": { - "queries": "Queries", - "blocked": "Blocked", - "filtered": "Filtered", - "latency": "Latency" + "queries": "Lekérdezések", + "blocked": "Blokkolt", + "filtered": "Szűrt", + "latency": "Késleltetés" }, "speedtest": { - "upload": "Upload", - "download": "Download", + "upload": "Feltöltés", + "download": "Letöltés", "ping": "Ping" }, "portainer": { - "running": "Running", - "stopped": "Stopped", - "total": "Total" + "running": "Futó", + "stopped": "Megállított", + "total": "Összes" }, "traefik": { - "routers": "Routers", - "services": "Services", - "middleware": "Middleware" + "routers": "Routerek", + "services": "Folyamatok", + "middleware": "Közvetítő" }, "npm": { - "enabled": "Enabled", - "disabled": "Disabled", - "total": "Total" + "enabled": "Bekapcsolva", + "disabled": "Kikapcsolva", + "total": "Összes" }, "coinmarketcap": { - "configure": "Configure one or more crypto currencies to track", - "1hour": "1 Hour", - "1day": "1 Day", - "7days": "7 Days", - "30days": "30 Days" + "configure": "Állíts be egy vagy több Cryptovalutát a követéshez", + "1hour": "1 Óra", + "1day": "1 Nap", + "7days": "7 Nap", + "30days": "30 Nap" }, "gotify": { - "apps": "Applications", - "clients": "Clients", - "messages": "Messages" + "apps": "Applikációk", + "clients": "Kliensek", + "messages": "Üzenetek" }, "prowlarr": { - "enableIndexers": "Indexers", - "numberOfGrabs": "Grabs", - "numberOfFailGrabs": "Fail Grabs", - "numberOfQueries": "Queries", - "numberOfFailQueries": "Fail Queries" + "enableIndexers": "Indexerek", + "numberOfGrabs": "Fogott", + "numberOfFailGrabs": "Hibás fogások", + "numberOfQueries": "Lekérdezések", + "numberOfFailQueries": "Hibás lekérdezések" }, "jackett": { - "configured": "Configured", - "errored": "Errored" + "configured": "Beállított", + "errored": "Hibás" } } From eea9f1f6cb73642d9c3fdcae05a79d7c63188bab Mon Sep 17 00:00:00 2001 From: Anonymous Date: Sun, 18 Sep 2022 06:37:18 +0000 Subject: [PATCH 09/24] Translated using Weblate (Hebrew) Currently translated at 100.0% (0 of 0 strings) Translation: Homepage/Homepage Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/ --- public/locales/he/common.json | 162 +++++++++++++++++++++++++++++++++- 1 file changed, 161 insertions(+), 1 deletion(-) diff --git a/public/locales/he/common.json b/public/locales/he/common.json index 0967ef42..985a978d 100644 --- a/public/locales/he/common.json +++ b/public/locales/he/common.json @@ -1 +1,161 @@ -{} +{ + "widget": { + "missing_type": "Missing Widget Type: {{type}}", + "api_error": "API Error", + "status": "Status" + }, + "weather": { + "current": "Current Location", + "allow": "Click to allow", + "updating": "Updating", + "wait": "Please wait" + }, + "search": { + "placeholder": "Search…" + }, + "resources": { + "total": "Total", + "free": "Free", + "used": "Used", + "load": "Load" + }, + "docker": { + "rx": "RX", + "tx": "TX", + "mem": "MEM", + "cpu": "CPU", + "offline": "Offline" + }, + "emby": { + "playing": "Playing", + "transcoding": "Transcoding", + "bitrate": "Bitrate", + "no_active": "No Active Streams" + }, + "tautulli": { + "playing": "Playing", + "transcoding": "Transcoding", + "bitrate": "Bitrate", + "no_active": "No Active Streams" + }, + "nzbget": { + "rate": "Rate", + "remaining": "Remaining", + "downloaded": "Downloaded" + }, + "sabnzbd": { + "rate": "Rate", + "queue": "Queue", + "timeleft": "Time Left" + }, + "rutorrent": { + "active": "Active", + "upload": "Upload", + "download": "Download" + }, + "transmission": { + "download": "Download", + "upload": "Upload", + "leech": "Leech", + "seed": "Seed" + }, + "qbittorrent": { + "download": "Download", + "upload": "Upload", + "leech": "Leech", + "seed": "Seed" + }, + "sonarr": { + "wanted": "Wanted", + "queued": "Queued", + "series": "Series" + }, + "radarr": { + "wanted": "Wanted", + "queued": "Queued", + "movies": "Movies" + }, + "lidarr": { + "wanted": "Wanted", + "queued": "Queued", + "albums": "Albums" + }, + "readarr": { + "wanted": "Wanted", + "queued": "Queued", + "books": "Books" + }, + "bazarr": { + "missingEpisodes": "Missing Episodes", + "missingMovies": "Missing Movies" + }, + "ombi": { + "pending": "Pending", + "approved": "Approved", + "available": "Available" + }, + "jellyseerr": { + "pending": "Pending", + "approved": "Approved", + "available": "Available" + }, + "overseerr": { + "pending": "Pending", + "approved": "Approved", + "available": "Available" + }, + "pihole": { + "queries": "Queries", + "blocked": "Blocked", + "gravity": "Gravity" + }, + "adguard": { + "queries": "Queries", + "blocked": "Blocked", + "filtered": "Filtered", + "latency": "Latency" + }, + "speedtest": { + "upload": "Upload", + "download": "Download", + "ping": "Ping" + }, + "portainer": { + "running": "Running", + "stopped": "Stopped", + "total": "Total" + }, + "traefik": { + "routers": "Routers", + "services": "Services", + "middleware": "Middleware" + }, + "npm": { + "enabled": "Enabled", + "disabled": "Disabled", + "total": "Total" + }, + "coinmarketcap": { + "configure": "Configure one or more crypto currencies to track", + "1hour": "1 Hour", + "1day": "1 Day", + "7days": "7 Days", + "30days": "30 Days" + }, + "gotify": { + "apps": "Applications", + "clients": "Clients", + "messages": "Messages" + }, + "prowlarr": { + "enableIndexers": "Indexers", + "numberOfGrabs": "Grabs", + "numberOfQueries": "Queries", + "numberOfFailGrabs": "Fail Grabs", + "numberOfFailQueries": "Fail Queries" + }, + "jackett": { + "configured": "Configured", + "errored": "Errored" + } +} From f690f3acba02b735795d32af1deadd6492bb3762 Mon Sep 17 00:00:00 2001 From: Nonoss117 Date: Sun, 18 Sep 2022 13:06:17 +0000 Subject: [PATCH 10/24] Translated using Weblate (French) Currently translated at 100.0% (108 of 108 strings) Translation: Homepage/Homepage Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/ --- public/locales/fr/common.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/public/locales/fr/common.json b/public/locales/fr/common.json index 68528d85..94c88aa6 100644 --- a/public/locales/fr/common.json +++ b/public/locales/fr/common.json @@ -68,8 +68,8 @@ "gravity": "Listes dom. bloqués" }, "speedtest": { - "upload": "Téléversement", - "download": "Téléchargement", + "upload": "Envoi", + "download": "Récept.", "ping": "Ping" }, "portainer": { From 73317bda67879485e5e5cf9dbfeceae67e2f35e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?yahoo=EF=BD=9E=EF=BD=9E?= Date: Sun, 18 Sep 2022 12:12:55 +0000 Subject: [PATCH 11/24] Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (108 of 108 strings) Translation: Homepage/Homepage Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/ --- public/locales/zh-CN/common.json | 50 ++++++++++++++++---------------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/public/locales/zh-CN/common.json b/public/locales/zh-CN/common.json index 8cc40ece..d5b537fa 100644 --- a/public/locales/zh-CN/common.json +++ b/public/locales/zh-CN/common.json @@ -110,10 +110,10 @@ }, "coinmarketcap": { "configure": "配置一个或多个需要追踪的加密", - "1hour": "1 Hour", - "1day": "1 Day", - "7days": "7 Days", - "30days": "30 Days" + "1hour": "1小时", + "1day": "1天", + "7days": "7天", + "30days": "30天" }, "gotify": { "apps": "应用", @@ -121,41 +121,41 @@ "messages": "信息" }, "prowlarr": { - "enableIndexers": "Indexers", - "numberOfGrabs": "Grabs", - "numberOfQueries": "Queries", - "numberOfFailGrabs": "Fail Grabs", - "numberOfFailQueries": "Fail Queries" + "enableIndexers": "索引器", + "numberOfGrabs": "抓取", + "numberOfQueries": "查询", + "numberOfFailGrabs": "抓取失败", + "numberOfFailQueries": "查询失败" }, "transmission": { "download": "下载", "upload": "上传", - "leech": "Leech", + "leech": "吸血", "seed": "做种" }, "jackett": { - "configured": "Configured", - "errored": "Errored" + "configured": "已配置", + "errored": "出错了" }, "bazarr": { - "missingEpisodes": "Missing Episodes", - "missingMovies": "Missing Movies" + "missingEpisodes": "缺少的剧集", + "missingMovies": "缺少的电影" }, "lidarr": { - "wanted": "Wanted", - "queued": "Queued", - "albums": "Albums" + "wanted": "订阅", + "queued": "队列", + "albums": "相册" }, "adguard": { - "queries": "Queries", - "blocked": "Blocked", - "filtered": "Filtered", - "latency": "Latency" + "queries": "查询", + "blocked": "阻止", + "filtered": "过滤", + "latency": "延迟" }, "qbittorrent": { - "download": "Download", - "upload": "Upload", - "leech": "Leech", - "seed": "Seed" + "download": "下载", + "upload": "上传", + "leech": "吸血", + "seed": "做种" } } From 610b0f63e095ce41f3ce77113f43b61a9d444782 Mon Sep 17 00:00:00 2001 From: Pacux Date: Sun, 18 Sep 2022 08:34:01 +0000 Subject: [PATCH 12/24] Translated using Weblate (Catalan) Currently translated at 100.0% (108 of 108 strings) Translation: Homepage/Homepage Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/ --- public/locales/ca/common.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/public/locales/ca/common.json b/public/locales/ca/common.json index 26e1f3e5..a0763633 100644 --- a/public/locales/ca/common.json +++ b/public/locales/ca/common.json @@ -97,7 +97,7 @@ "pihole": { "queries": "Consultes", "blocked": "Bloquejat", - "gravity": "Gravetat" + "gravity": "Gravity" }, "portainer": { "running": "Executant", @@ -147,14 +147,14 @@ "albums": "Àlbums" }, "adguard": { - "queries": "Queries", - "blocked": "Blocked", - "filtered": "Filtered", - "latency": "Latency" + "queries": "Consultes", + "blocked": "Bloquejat", + "filtered": "Filtrat", + "latency": "Latència" }, "qbittorrent": { - "download": "Download", - "upload": "Upload", + "download": "Descàrrega", + "upload": "Càrrega", "leech": "Leech", "seed": "Seed" } From b5065673ab501f1b572e98a1849675fcf15ecf3c Mon Sep 17 00:00:00 2001 From: ShlomiPorush Date: Sun, 18 Sep 2022 11:06:51 +0000 Subject: [PATCH 13/24] Translated using Weblate (Hebrew) Currently translated at 93.5% (101 of 108 strings) Translation: Homepage/Homepage Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/ --- public/locales/he/common.json | 186 +++++++++++++++++----------------- 1 file changed, 93 insertions(+), 93 deletions(-) diff --git a/public/locales/he/common.json b/public/locales/he/common.json index 985a978d..fcd4e2cb 100644 --- a/public/locales/he/common.json +++ b/public/locales/he/common.json @@ -1,161 +1,161 @@ { "widget": { - "missing_type": "Missing Widget Type: {{type}}", - "api_error": "API Error", - "status": "Status" + "missing_type": "סוג ווידג'ט חסר: {{type}}", + "api_error": "שגיאת API", + "status": "סטטוס" }, "weather": { - "current": "Current Location", - "allow": "Click to allow", - "updating": "Updating", - "wait": "Please wait" + "current": "מיקום נוכחי", + "allow": "יש ללחוץ כדי לאשר", + "updating": "מעדכן", + "wait": "המתן בבקשה" }, "search": { - "placeholder": "Search…" + "placeholder": "חיפוש…" }, "resources": { - "total": "Total", - "free": "Free", - "used": "Used", - "load": "Load" + "total": "סה\"כ", + "free": "פנוי", + "used": "בשימוש", + "load": "עומס" }, "docker": { "rx": "RX", "tx": "TX", - "mem": "MEM", - "cpu": "CPU", - "offline": "Offline" + "mem": "זיכרון", + "cpu": "מעבד", + "offline": "כבוי" }, "emby": { - "playing": "Playing", - "transcoding": "Transcoding", - "bitrate": "Bitrate", - "no_active": "No Active Streams" + "playing": "מנגן", + "transcoding": "מקודד", + "bitrate": "סיביות", + "no_active": "אין הזרמות פעילות" }, "tautulli": { - "playing": "Playing", - "transcoding": "Transcoding", - "bitrate": "Bitrate", - "no_active": "No Active Streams" + "playing": "מנגן", + "transcoding": "מקודד", + "bitrate": "סיביות", + "no_active": "אין הזרמות פעילות" }, "nzbget": { - "rate": "Rate", - "remaining": "Remaining", - "downloaded": "Downloaded" + "rate": "יחס", + "remaining": "נותר", + "downloaded": "הורד" }, "sabnzbd": { - "rate": "Rate", - "queue": "Queue", - "timeleft": "Time Left" + "rate": "יחס", + "queue": "תור", + "timeleft": "זמן שנותר" }, "rutorrent": { - "active": "Active", - "upload": "Upload", - "download": "Download" + "active": "פעיל", + "upload": "העלאה", + "download": "הורדה" }, "transmission": { - "download": "Download", - "upload": "Upload", - "leech": "Leech", - "seed": "Seed" + "download": "הורדה", + "upload": "העלאה", + "leech": "בהורדה", + "seed": "בשיתוף" }, "qbittorrent": { - "download": "Download", - "upload": "Upload", - "leech": "Leech", - "seed": "Seed" + "download": "הורדה", + "upload": "העלאה", + "leech": "בהורדה", + "seed": "בשיתוף" }, "sonarr": { - "wanted": "Wanted", - "queued": "Queued", - "series": "Series" + "wanted": "מבוקש", + "queued": "בתור", + "series": "סדרות" }, "radarr": { - "wanted": "Wanted", - "queued": "Queued", - "movies": "Movies" + "wanted": "מבוקש", + "queued": "בתור", + "movies": "סרטים" }, "lidarr": { - "wanted": "Wanted", - "queued": "Queued", - "albums": "Albums" + "wanted": "מבוקש", + "queued": "בתור", + "albums": "אלבומים" }, "readarr": { - "wanted": "Wanted", - "queued": "Queued", - "books": "Books" + "wanted": "מבוקש", + "queued": "בתור", + "books": "ספרים" }, "bazarr": { - "missingEpisodes": "Missing Episodes", - "missingMovies": "Missing Movies" + "missingEpisodes": "פרקים חסרים", + "missingMovies": "סרטים חסרים" }, "ombi": { - "pending": "Pending", - "approved": "Approved", - "available": "Available" + "pending": "ממתין", + "approved": "מאושר", + "available": "זמין" }, "jellyseerr": { - "pending": "Pending", - "approved": "Approved", - "available": "Available" + "pending": "ממתין", + "approved": "מאושר", + "available": "זמין" }, "overseerr": { - "pending": "Pending", - "approved": "Approved", - "available": "Available" + "pending": "ממתין", + "approved": "מאושר", + "available": "זמין" }, "pihole": { - "queries": "Queries", - "blocked": "Blocked", + "queries": "שאילתות", + "blocked": "נחסם", "gravity": "Gravity" }, "adguard": { - "queries": "Queries", - "blocked": "Blocked", - "filtered": "Filtered", - "latency": "Latency" + "queries": "שאילתות", + "blocked": "נחסם", + "filtered": "מסונן", + "latency": "השהיה" }, "speedtest": { - "upload": "Upload", - "download": "Download", - "ping": "Ping" + "upload": "העלאה", + "download": "הורדה", + "ping": "פינג" }, "portainer": { - "running": "Running", - "stopped": "Stopped", - "total": "Total" + "running": "פעיל", + "stopped": "נעצר", + "total": "סה\"כ" }, "traefik": { - "routers": "Routers", - "services": "Services", - "middleware": "Middleware" + "routers": "ניתובים", + "services": "שירותים", + "middleware": "מתווך" }, "npm": { - "enabled": "Enabled", - "disabled": "Disabled", - "total": "Total" + "enabled": "מופעל", + "disabled": "מבוטל", + "total": "סה\"כ" }, "coinmarketcap": { - "configure": "Configure one or more crypto currencies to track", - "1hour": "1 Hour", - "1day": "1 Day", - "7days": "7 Days", - "30days": "30 Days" + "configure": "קבע את התצורה של מטבע קריפטו אחד או יותר למעקב", + "1hour": "שעה אחת", + "1day": "יום 1", + "7days": "7 יום", + "30days": "30 יום" }, "gotify": { - "apps": "Applications", - "clients": "Clients", - "messages": "Messages" + "apps": "אפליקציות", + "clients": "לקוחות", + "messages": "הודעות" }, "prowlarr": { - "enableIndexers": "Indexers", + "enableIndexers": "אינדקסים", "numberOfGrabs": "Grabs", - "numberOfQueries": "Queries", + "numberOfQueries": "שאילתות", "numberOfFailGrabs": "Fail Grabs", "numberOfFailQueries": "Fail Queries" }, "jackett": { - "configured": "Configured", - "errored": "Errored" + "configured": "מוגדר", + "errored": "שגיאה" } } From 17f54da5243fc9ed1be59089f0492927221151b0 Mon Sep 17 00:00:00 2001 From: Ben Phelps Date: Sun, 18 Sep 2022 16:41:01 +0300 Subject: [PATCH 14/24] yaml validation --- src/components/services/item.jsx | 16 ++----- src/pages/api/validate.js | 9 ++++ src/pages/api/widgets/openweathermap.js | 2 +- src/pages/api/widgets/weather.js | 2 +- src/pages/index.jsx | 56 +++++++++++++++++++++---- src/skeleton/bookmarks.yaml | 1 + src/skeleton/docker.yaml | 11 ++--- src/skeleton/services.yaml | 1 + src/skeleton/settings.yaml | 1 + src/skeleton/widgets.yaml | 1 + src/utils/config.js | 15 +++++-- 11 files changed, 83 insertions(+), 32 deletions(-) create mode 100644 src/pages/api/validate.js diff --git a/src/components/services/item.jsx b/src/components/services/item.jsx index 2d50276e..db30b532 100644 --- a/src/components/services/item.jsx +++ b/src/components/services/item.jsx @@ -22,12 +22,6 @@ function resolveIcon(icon) { } export default function Item({ service }) { - const handleOnClick = () => { - if (service.href && service.href !== "#") { - window.open(service.href, "_blank").focus(); - } - }; - const hasLink = service.href && service.href !== "#"; return ( @@ -41,13 +35,9 @@ export default function Item({ service }) {
{service.icon && (hasLink ? ( - + ) : (
logo @@ -57,7 +47,7 @@ export default function Item({ service }) { {hasLink ? ( + ) : (