diff --git a/public/locales/bg/common.json b/public/locales/bg/common.json index 29eb4953..0b2df53a 100644 --- a/public/locales/bg/common.json +++ b/public/locales/bg/common.json @@ -281,5 +281,11 @@ "up_to_date": "Up to Date", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers", + "approvedPushes": "Approved" } } diff --git a/public/locales/ca/common.json b/public/locales/ca/common.json index 427393dd..321c5cee 100644 --- a/public/locales/ca/common.json +++ b/public/locales/ca/common.json @@ -281,5 +281,11 @@ "up_to_date": "Up to Date", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/de/common.json b/public/locales/de/common.json index ba8a79f4..67fdc415 100644 --- a/public/locales/de/common.json +++ b/public/locales/de/common.json @@ -281,5 +281,11 @@ "up_to_date": "Up to Date", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/en/common.json b/public/locales/en/common.json index 48a3ef7f..36c336cd 100644 --- a/public/locales/en/common.json +++ b/public/locales/en/common.json @@ -293,6 +293,12 @@ "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" + }, "truenas": { "load": "System Load", "uptime": "Uptime", diff --git a/public/locales/es/common.json b/public/locales/es/common.json index 6aacdebc..0b328956 100644 --- a/public/locales/es/common.json +++ b/public/locales/es/common.json @@ -275,11 +275,17 @@ "service": "Servicio" }, "homebridge": { - "available_update": "System", - "updates": "Updates", - "update_available": "Update Available", - "up_to_date": "Up to Date", + "available_update": "Sistema", + "updates": "Actualizaciones", + "update_available": "Actualización disponible", + "up_to_date": "Actualizado", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/fi/common.json b/public/locales/fi/common.json index aab015eb..bcf4d9e7 100644 --- a/public/locales/fi/common.json +++ b/public/locales/fi/common.json @@ -281,5 +281,11 @@ "up_to_date": "Up to Date", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/fr/common.json b/public/locales/fr/common.json index 5105031b..6f1b2abf 100644 --- a/public/locales/fr/common.json +++ b/public/locales/fr/common.json @@ -275,11 +275,17 @@ "service": "Service" }, "homebridge": { - "available_update": "System", - "updates": "Updates", - "update_available": "Update Available", - "up_to_date": "Up to Date", + "available_update": "Système", + "updates": "Mises à jour", + "update_available": "Mise à jour disponible", + "up_to_date": "À jour", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/he/common.json b/public/locales/he/common.json index f1d1a1b1..9c937846 100644 --- a/public/locales/he/common.json +++ b/public/locales/he/common.json @@ -281,5 +281,11 @@ "up_to_date": "Up to Date", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/hr/common.json b/public/locales/hr/common.json index f0fd82e9..1905ff34 100644 --- a/public/locales/hr/common.json +++ b/public/locales/hr/common.json @@ -281,5 +281,11 @@ "up_to_date": "Up to Date", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "rejectedPushes": "Rejected", + "approvedPushes": "Approved", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/hu/common.json b/public/locales/hu/common.json index d3169160..b86bf0d4 100644 --- a/public/locales/hu/common.json +++ b/public/locales/hu/common.json @@ -281,5 +281,11 @@ "up_to_date": "Up to Date", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/it/common.json b/public/locales/it/common.json index 64224cc9..8e70bfa6 100644 --- a/public/locales/it/common.json +++ b/public/locales/it/common.json @@ -281,5 +281,11 @@ "up_to_date": "Up to Date", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/nb-NO/common.json b/public/locales/nb-NO/common.json index 1736b9d5..2e327d32 100644 --- a/public/locales/nb-NO/common.json +++ b/public/locales/nb-NO/common.json @@ -281,5 +281,11 @@ "up_to_date": "Up to Date", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/nl/common.json b/public/locales/nl/common.json index b1539055..13659416 100644 --- a/public/locales/nl/common.json +++ b/public/locales/nl/common.json @@ -281,5 +281,11 @@ "up_to_date": "Up to Date", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/pl/common.json b/public/locales/pl/common.json index 0d9174e1..9e8e4309 100644 --- a/public/locales/pl/common.json +++ b/public/locales/pl/common.json @@ -149,14 +149,14 @@ "errored": "Błędne" }, "adguard": { - "queries": "Queries", - "blocked": "Blocked", - "filtered": "Filtered", - "latency": "Latency" + "queries": "Zapytania", + "blocked": "Zablokowane", + "filtered": "Przefiltrowane", + "latency": "Opóźnienia" }, "qbittorrent": { - "download": "Download", - "upload": "Upload", + "download": "Pobieranie", + "upload": "Wysyłanie", "leech": "Leech", "seed": "Seed" }, @@ -187,26 +187,26 @@ "uptime": "Czas pracy systemu", "days": "Dni", "wan": "WAN", - "lan_users": "LAN Users", - "wlan_users": "WLAN Users", - "up": "UP", - "down": "DOWN", - "wait": "Please wait", + "lan_users": "Użytkownicy LAN", + "wlan_users": "Użytkownicy WLAN", + "up": "Wysyłanie", + "down": "Pobieranie", + "wait": "Proszę czekać", "lan": "LAN", "wlan": "WLAN", - "devices": "Devices", - "lan_devices": "LAN Devices", - "wlan_devices": "WLAN Devices" + "devices": "Urządzenia", + "lan_devices": "Urządzenia LAN", + "wlan_devices": "Urządzenia WLAN" }, "plex": { "streams": "Active Streams", - "movies": "Movies", - "tv": "TV Shows" + "movies": "Filmy", + "tv": "Seriale" }, "glances": { "cpu": "CPU", "mem": "MEM", - "wait": "Please wait" + "wait": "Proszę czekać" }, "changedetectionio": { "diffsDetected": "Diffs Detected", @@ -218,68 +218,74 @@ "0-night": "Clear", "1-day": "Mainly Sunny", "1-night": "Mainly Clear", - "2-day": "Partly Cloudy", - "2-night": "Partly Cloudy", - "3-day": "Cloudy", - "3-night": "Cloudy", - "45-day": "Foggy", - "45-night": "Foggy", - "48-day": "Foggy", - "48-night": "Foggy", - "51-day": "Light Drizzle", - "51-night": "Light Drizzle", - "53-day": "Drizzle", - "53-night": "Drizzle", - "55-day": "Heavy Drizzle", - "55-night": "Heavy Drizzle", + "2-day": "Częściowo pochmurnie", + "2-night": "Częściowo pochmurnie", + "3-day": "Pochmurnie", + "3-night": "Pochmurnie", + "45-day": "Mgliście", + "45-night": "Mgliście", + "48-day": "Mgliście", + "48-night": "Mgliście", + "51-day": "Lekka mżawka", + "51-night": "Lekka mżawka", + "53-day": "Mżawka", + "53-night": "Mżawka", + "55-day": "Ciężka mżawka", + "55-night": "Ciężka mżawka", "56-day": "Light Freezing Drizzle", "56-night": "Light Freezing Drizzle", "57-day": "Freezing Drizzle", "57-night": "Freezing Drizzle", - "61-day": "Light Rain", - "61-night": "Light Rain", - "63-day": "Rain", - "63-night": "Rain", - "65-day": "Heavy Rain", - "65-night": "Heavy Rain", - "66-day": "Freezing Rain", - "66-night": "Freezing Rain", - "67-day": "Freezing Rain", - "67-night": "Freezing Rain", - "71-day": "Light Snow", - "71-night": "Light Snow", - "73-day": "Snow", - "73-night": "Snow", - "75-day": "Heavy Snow", - "75-night": "Heavy Snow", + "61-day": "Lekki deszcz", + "61-night": "Lekki deszcz", + "63-day": "Deszcz", + "63-night": "Deszcz", + "65-day": "Ciężki deszcz", + "65-night": "Ciężki deszcz", + "66-day": "Mroźny deszcz", + "66-night": "Mroźny deszcz", + "67-day": "Mroźny deszcz", + "67-night": "Mroźny deszcz", + "71-day": "Lekki śnieg", + "71-night": "Lekki śnieg", + "73-day": "Śnieg", + "73-night": "Śnieg", + "75-day": "Ciężki śnieg", + "75-night": "Ciężki śnieg", "77-night": "Snow Grains", - "80-day": "Light Showers", - "80-night": "Light Showers", - "81-day": "Showers", - "81-night": "Showers", - "82-day": "Heavy Showers", - "82-night": "Heavy Showers", - "85-day": "Snow Showers", - "85-night": "Snow Showers", - "86-day": "Snow Showers", - "86-night": "Snow Showers", - "95-day": "Thunderstorm", - "95-night": "Thunderstorm", - "96-day": "Thunderstorm With Hail", - "96-night": "Thunderstorm With Hail", - "99-day": "Thunderstorm With Hail", - "99-night": "Thunderstorm With Hail" + "80-day": "Lekkie opady", + "80-night": "Lekkie opady", + "81-day": "Opady", + "81-night": "Opady", + "82-day": "Ciężkie opady", + "82-night": "Ciężkie opady", + "85-day": "Opady śniegu", + "85-night": "Opady śniegu", + "86-day": "Opady śniegu", + "86-night": "Opady śniegu", + "95-day": "Burze z piorunami", + "95-night": "Burze z piorunami", + "96-day": "Burza z gradobiciem", + "96-night": "Burza z gradobiciem", + "99-day": "Burza z gradobiciem", + "99-night": "Burza z gradobiciem" }, "quicklaunch": { "bookmark": "Bookmark", - "service": "Service" + "service": "Usługi" }, "homebridge": { "available_update": "System", - "updates": "Updates", - "update_available": "Update Available", - "up_to_date": "Up to Date", + "updates": "Aktualizacje", + "update_available": "Dostępna aktualizacja", + "up_to_date": "Aktualny", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/pt-BR/common.json b/public/locales/pt-BR/common.json index 1ffc3a8f..ccd8659e 100644 --- a/public/locales/pt-BR/common.json +++ b/public/locales/pt-BR/common.json @@ -281,5 +281,11 @@ "up_to_date": "Up to Date", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/pt/common.json b/public/locales/pt/common.json index 904cfa76..d51ef697 100644 --- a/public/locales/pt/common.json +++ b/public/locales/pt/common.json @@ -292,5 +292,11 @@ "up_to_date": "Up to Date", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/ro/common.json b/public/locales/ro/common.json index ec35d759..4158681c 100644 --- a/public/locales/ro/common.json +++ b/public/locales/ro/common.json @@ -281,5 +281,11 @@ "available_update": "System", "updates": "Updates", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/ru/common.json b/public/locales/ru/common.json index bf0c94b4..a3dc98b0 100644 --- a/public/locales/ru/common.json +++ b/public/locales/ru/common.json @@ -281,5 +281,11 @@ "up_to_date": "Up to Date", "child_bridges_status": "{{ok}}/{{total}}", "child_bridges": "Child Bridges" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/sr/common.json b/public/locales/sr/common.json index 4afa2cce..518a19ef 100644 --- a/public/locales/sr/common.json +++ b/public/locales/sr/common.json @@ -281,5 +281,11 @@ "up_to_date": "Up to Date", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/sv/common.json b/public/locales/sv/common.json index 79339c5d..febaec42 100644 --- a/public/locales/sv/common.json +++ b/public/locales/sv/common.json @@ -281,5 +281,11 @@ "up_to_date": "Up to Date", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/te/common.json b/public/locales/te/common.json index c256ffcb..6b0205fe 100644 --- a/public/locales/te/common.json +++ b/public/locales/te/common.json @@ -209,77 +209,83 @@ "wait": "దయచేసి వేచి ఉండండి" }, "changedetectionio": { - "totalObserved": "Total Observed", - "diffsDetected": "Diffs Detected" + "totalObserved": "మొత్తం గమనించబడింది", + "diffsDetected": "తేడాలు గుర్తించబడ్డాయి" }, "wmo": { - "0-day": "Sunny", - "0-night": "Clear", - "57-night": "Freezing Drizzle", - "73-day": "Snow", - "73-night": "Snow", - "75-day": "Heavy Snow", - "75-night": "Heavy Snow", - "77-day": "Snow Grains", - "77-night": "Snow Grains", - "80-day": "Light Showers", - "80-night": "Light Showers", - "81-day": "Showers", - "81-night": "Showers", - "82-day": "Heavy Showers", - "82-night": "Heavy Showers", - "85-day": "Snow Showers", - "85-night": "Snow Showers", - "1-day": "Mainly Sunny", - "1-night": "Mainly Clear", - "2-day": "Partly Cloudy", - "2-night": "Partly Cloudy", - "3-day": "Cloudy", - "3-night": "Cloudy", - "45-day": "Foggy", - "45-night": "Foggy", - "48-day": "Foggy", - "48-night": "Foggy", - "51-day": "Light Drizzle", - "51-night": "Light Drizzle", - "53-day": "Drizzle", - "53-night": "Drizzle", - "55-day": "Heavy Drizzle", - "55-night": "Heavy Drizzle", - "56-day": "Light Freezing Drizzle", - "56-night": "Light Freezing Drizzle", - "57-day": "Freezing Drizzle", - "61-day": "Light Rain", - "61-night": "Light Rain", - "63-day": "Rain", - "63-night": "Rain", - "65-day": "Heavy Rain", - "65-night": "Heavy Rain", - "66-day": "Freezing Rain", - "66-night": "Freezing Rain", - "67-day": "Freezing Rain", - "67-night": "Freezing Rain", - "71-day": "Light Snow", - "71-night": "Light Snow", - "86-day": "Snow Showers", - "86-night": "Snow Showers", - "95-day": "Thunderstorm", - "95-night": "Thunderstorm", - "96-day": "Thunderstorm With Hail", - "96-night": "Thunderstorm With Hail", - "99-day": "Thunderstorm With Hail", - "99-night": "Thunderstorm With Hail" + "0-day": "సన్నీ", + "0-night": "స్పష్టమైన", + "57-night": "గడ్డకట్టే చినుకులు", + "73-day": "మంచు", + "73-night": "మంచు", + "75-day": "భారీ మంచు", + "75-night": "భారీ మంచు", + "77-day": "మంచు గింజలు", + "77-night": "మంచు గింజలు", + "80-day": "తేలికపాటి జల్లులు", + "80-night": "తేలికపాటి జల్లులు", + "81-day": "జల్లులు", + "81-night": "జల్లులు", + "82-day": "భారీ వర్షాలు", + "82-night": "భారీ వర్షాలు", + "85-day": "మంచు జల్లులు", + "85-night": "మంచు జల్లులు", + "1-day": "ప్రధానంగా ఎండ", + "1-night": "ప్రధానంగా స్పష్టంగా", + "2-day": "పాక్షికంగా మేఘావృతమై ఉంటుంది", + "2-night": "పాక్షికంగా మేఘావృతమై ఉంటుంది", + "3-day": "మేఘావృతం", + "3-night": "మేఘావృతం", + "45-day": "పొగమంచు", + "45-night": "పొగమంచు", + "48-day": "పొగమంచు", + "48-night": "పొగమంచు", + "51-day": "తేలికపాటి చినుకులు", + "51-night": "తేలికపాటి చినుకులు", + "53-day": "చినుకులు", + "53-night": "చినుకులు", + "55-day": "భారీ చినుకులు", + "55-night": "భారీ చినుకులు", + "56-day": "తేలికపాటి గడ్డకట్టే చినుకులు", + "56-night": "తేలికపాటి గడ్డకట్టే చినుకులు", + "57-day": "గడ్డకట్టే చినుకులు", + "61-day": "తేలికపాటి వర్షం", + "61-night": "తేలికపాటి వర్షం", + "63-day": "వర్షం", + "63-night": "వర్షం", + "65-day": "భారీవర్షం", + "65-night": "భారీవర్షం", + "66-day": "గడ్డకట్టే వర్షం", + "66-night": "గడ్డకట్టే వర్షం", + "67-day": "గడ్డకట్టే వర్షం", + "67-night": "గడ్డకట్టే వర్షం", + "71-day": "తేలికపాటి మంచు", + "71-night": "తేలికపాటి మంచు", + "86-day": "మంచు జల్లులు", + "86-night": "మంచు జల్లులు", + "95-day": "ఉరుము", + "95-night": "ఉరుము", + "96-day": "వడగళ్లతో కూడిన ఉరుములతో కూడిన వర్షం", + "96-night": "వడగళ్లతో కూడిన ఉరుములతో కూడిన వర్షం", + "99-day": "వడగళ్లతో కూడిన ఉరుములతో కూడిన వర్షం", + "99-night": "వడగళ్లతో కూడిన ఉరుములతో కూడిన వర్షం" }, "quicklaunch": { - "bookmark": "Bookmark", - "service": "Service" + "bookmark": "బుక్మార్క్", + "service": "సేవ" }, "homebridge": { - "available_update": "System", - "updates": "Updates", - "update_available": "Update Available", - "up_to_date": "Up to Date", - "child_bridges": "Child Bridges", + "available_update": "వ్యవస్థ", + "updates": "నవీకరణలు", + "update_available": "అందుబాటులో నవీకరణ", + "up_to_date": "తాజాగా", + "child_bridges": "పిల్ల వంతెనలు", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "rejectedPushes": "Rejected", + "approvedPushes": "Approved", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/tr/common.json b/public/locales/tr/common.json index bed2c9ac..ac6cf2d7 100644 --- a/public/locales/tr/common.json +++ b/public/locales/tr/common.json @@ -281,5 +281,11 @@ "up_to_date": "Up to Date", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/vi/common.json b/public/locales/vi/common.json index f1dd3835..28574310 100644 --- a/public/locales/vi/common.json +++ b/public/locales/vi/common.json @@ -281,5 +281,11 @@ "up_to_date": "Up to Date", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/yue/common.json b/public/locales/yue/common.json index 63b9b91f..0a17761e 100644 --- a/public/locales/yue/common.json +++ b/public/locales/yue/common.json @@ -281,5 +281,11 @@ "up_to_date": "Up to Date", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/zh-CN/common.json b/public/locales/zh-CN/common.json index f1245ac5..1a3b524b 100644 --- a/public/locales/zh-CN/common.json +++ b/public/locales/zh-CN/common.json @@ -281,5 +281,11 @@ "up_to_date": "Up to Date", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/public/locales/zh-Hant/common.json b/public/locales/zh-Hant/common.json index 0979dc5c..d80edd7d 100644 --- a/public/locales/zh-Hant/common.json +++ b/public/locales/zh-Hant/common.json @@ -281,5 +281,11 @@ "up_to_date": "Up to Date", "child_bridges": "Child Bridges", "child_bridges_status": "{{ok}}/{{total}}" + }, + "autobrr": { + "approvedPushes": "Approved", + "rejectedPushes": "Rejected", + "filters": "Filters", + "indexers": "Indexers" } } diff --git a/src/utils/proxy/handlers/credentialed.js b/src/utils/proxy/handlers/credentialed.js index 7418b68c..c2c6e334 100644 --- a/src/utils/proxy/handlers/credentialed.js +++ b/src/utils/proxy/handlers/credentialed.js @@ -31,6 +31,8 @@ export default async function credentialedProxyHandler(req, res) { headers.Authorization = `Bearer ${widget.key}`; } else if (widget.type === "proxmox") { headers.Authorization = `PVEAPIToken=${widget.username}=${widget.password}`; + } else if (widget.type === "autobrr") { + headers["X-API-Token"] = `${widget.key}`; } else { headers["X-API-Key"] = `${widget.key}`; } diff --git a/src/widgets/autobrr/component.jsx b/src/widgets/autobrr/component.jsx new file mode 100644 index 00000000..b78f48f6 --- /dev/null +++ b/src/widgets/autobrr/component.jsx @@ -0,0 +1,39 @@ +import { useTranslation } from "next-i18next"; + +import Container from "components/services/widget/container"; +import Block from "components/services/widget/block"; +import useWidgetAPI from "utils/proxy/use-widget-api"; + +export default function Component({ service }) { + const { t } = useTranslation(); + + const { widget } = service; + + const { data: statsData, error: statsError } = useWidgetAPI(widget, "stats"); + const { data: filtersData, error: filtersError } = useWidgetAPI(widget, "filters"); + const { data: indexersData, error: indexersError } = useWidgetAPI(widget, "indexers"); + + if (statsError || filtersError || indexersError) { + return <Container error={t("widget.api_error")} />; + } + + if (!statsData || !filtersData || !indexersData) { + return ( + <Container service={service}> + <Block label="autobrr.approvedPushes" /> + <Block label="autobrr.rejectedPushes" /> + <Block label="autobrr.filters" /> + <Block label="autobrr.indexers" /> + </Container> + ); + } + + return ( + <Container service={service}> + <Block label="autobrr.approvedPushes" value={t("common.number", { value: statsData.push_approved_count })} /> + <Block label="autobrr.rejectedPushes" value={t("common.number", { value: statsData.push_rejected_count })} /> + <Block label="autobrr.filters" value={t("common.number", { value: filtersData.length })} /> + <Block label="autobrr.indexers" value={t("common.number", { value: indexersData.length })} /> + </Container> + ); +} diff --git a/src/widgets/autobrr/widget.js b/src/widgets/autobrr/widget.js new file mode 100644 index 00000000..0254029e --- /dev/null +++ b/src/widgets/autobrr/widget.js @@ -0,0 +1,20 @@ +import credentialedProxyHandler from "utils/proxy/handlers/credentialed"; + +const widget = { + api: "{url}/api/{endpoint}", + proxyHandler: credentialedProxyHandler, + + mappings: { + stats: { + endpoint: "release/stats", + }, + filters: { + endpoint: "filters", + }, + indexers: { + endpoint: "release/indexers", + }, + }, +}; + +export default widget; diff --git a/src/widgets/components.js b/src/widgets/components.js index c339946d..e966e848 100644 --- a/src/widgets/components.js +++ b/src/widgets/components.js @@ -3,6 +3,7 @@ import dynamic from "next/dynamic"; const components = { adguard: dynamic(() => import("./adguard/component")), authentik: dynamic(() => import("./authentik/component")), + autobrr: dynamic(() => import("./autobrr/component")), bazarr: dynamic(() => import("./bazarr/component")), changedetectionio: dynamic(() => import("./changedetectionio/component")), coinmarketcap: dynamic(() => import("./coinmarketcap/component")), diff --git a/src/widgets/widgets.js b/src/widgets/widgets.js index c82003fe..adb6335d 100644 --- a/src/widgets/widgets.js +++ b/src/widgets/widgets.js @@ -1,5 +1,6 @@ import adguard from "./adguard/widget"; import authentik from "./authentik/widget"; +import autobrr from "./autobrr/widget"; import bazarr from "./bazarr/widget"; import changedetectionio from "./changedetectionio/widget"; import coinmarketcap from "./coinmarketcap/widget"; @@ -36,6 +37,7 @@ import unifi from "./unifi/widget"; const widgets = { adguard, authentik, + autobrr, bazarr, changedetectionio, coinmarketcap,