Compare commits

..
1317 Commits
Author SHA1 Message Date
shamoon a0fa6367ca Merge pull request #1161 from MrLemur/add-traefik-ingressroute
Feature: Add Traefik IngressRoute support for Kubernetes
2023-04-04 15:56:38 -07:00
shamoon 8378066bd4 Merge pull request #1182 from benphelps/fix-1181
Fix emby/jellyfin now playing > 1
2023-04-04 15:04:16 -07:00
shamoon db85193bbf Fix emby/jellyfin now playing > 1 2023-04-04 15:00:09 -07:00
shamoon 364c7ce183 make osx-temperature-sensor optional 2023-04-04 14:27:44 -07:00
shamoon 48180604f9 Fix jellyfin / emby blocks boolean evaluation 2023-04-04 00:55:05 -07:00
shamoon 88089a8a11 Merge pull request #1174 from benphelps/fix-memory-calc
Fix memory display in v0.6.11
2023-04-03 23:29:12 -07:00
shamoon 2829f0b649 Update memory.jsx 2023-04-03 23:22:28 -07:00
shamoon 0d5856db1e Merge pull request #1172 from benphelps/cpu-temp-fixes
Fix glances cpu temp detection & fahrenheit conversion
2023-04-03 21:50:23 -07:00
shamoon f3ec238a2c Fix glances cpu temp detection & fahrenheit conversion 2023-04-03 21:49:28 -07:00
shamoon 2ab8e63df2 Merge pull request #1169 from SebastianOsinski/diskstation_volume
Add option to specify volume in Diskstation widget
2023-04-03 14:35:21 -07:00
shamoon 616e8f2553 diskstation codestyle 2023-04-03 14:24:06 -07:00
Sebastian Osiński f55ba3b67a Add option to specify volume in Diskstation widget 2023-04-03 22:10:56 +02:00
Alanimdeo 2a56fd9992 Translated using Weblate (Korean)
Currently translated at 43.1% (174 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ko/
2023-04-01 11:49:47 +02:00
Dan 74afa06d7c Translated using Weblate (Ukrainian)
Currently translated at 100.0% (403 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-04-01 11:49:47 +02:00
yahoo~~ ef5b998d41 Translated using Weblate (Chinese (Simplified))
Currently translated at 98.7% (398 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-04-01 11:49:47 +02:00
gallegonovato fe4389a883 Translated using Weblate (Spanish)
Currently translated at 100.0% (403 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-04-01 11:49:46 +02:00
shamoon 4cb5241e94 glances temp usage bar 2023-03-31 10:37:41 -07:00
shamoon 872237167d Uptime usage bar 2023-03-31 10:37:31 -07:00
shamoon a90f178ee0 Better handle multi-core temp 2023-03-31 08:44:27 -07:00
shamoon 489132269e Update [...service].js 2023-03-31 08:06:19 -07:00
shamoon 9303302ce7 Update [...service].js 2023-03-31 08:05:08 -07:00
shamoon 9ff977b339 Update [...service].js 2023-03-31 08:00:14 -07:00
shamoon a2aab6451c lint 2023-03-30 14:40:24 -07:00
shamoon 1e64cf02cd Add temp usage bar, fix disk percentage 2023-03-30 14:36:40 -07:00
Kassim Benhaddad df714c7556 feat: add Traefik IngressRoute support for k8s 2023-03-29 23:19:56 +01:00
shamoon 868c16620f Update pnpm-lock.yaml for pnpm v8 2023-03-29 15:10:35 -07:00
shamoon 7aab51158d Update pnpm-lock.yaml 2023-03-29 15:07:18 -07:00
shamoon e8b99b5bff update package lock files 2023-03-29 15:04:28 -07:00
shamoon 54f34cff26 Update package-lock.json 2023-03-29 15:00:10 -07:00
shamoon 9333af20f5 Update glances.jsx 2023-03-29 14:57:31 -07:00
Anonymous 7ec3e5937e Translated using Weblate (Korean)
Currently translated at 41.4% (167 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ko/
2023-03-29 23:38:37 +02:00
Anonymous d25af55533 Translated using Weblate (Slovak)
Currently translated at 2.2% (9 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sk/
2023-03-29 23:38:36 +02:00
Anonymous b3d1058a42 Translated using Weblate (Thai)
Currently translated at 11.6% (47 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/th/
2023-03-29 23:38:36 +02:00
Anonymous 9353771a4d Translated using Weblate (Latvian)
Currently translated at 29.5% (119 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-03-29 23:38:36 +02:00
Anonymous e2393153d7 Translated using Weblate (Japanese)
Currently translated at 3.7% (15 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-03-29 23:38:35 +02:00
Anonymous 3b07e78bc9 Translated using Weblate (Ukrainian)
Currently translated at 97.2% (392 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-03-29 23:38:35 +02:00
Anonymous 212ce266bc Translated using Weblate (Esperanto)
Currently translated at 25.5% (103 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-03-29 23:38:34 +02:00
Anonymous 9557fbad63 Translated using Weblate (Hindi)
Currently translated at 2.2% (9 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-03-29 23:38:34 +02:00
Anonymous 1ed5d63695 Translated using Weblate (Malay)
Currently translated at 62.7% (253 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-03-29 23:38:34 +02:00
Anonymous ac6aef0c8c Translated using Weblate (Danish)
Currently translated at 49.1% (198 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-03-29 23:38:33 +02:00
Anonymous ec2422e266 Translated using Weblate (Czech)
Currently translated at 97.2% (392 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-03-29 23:38:33 +02:00
Anonymous 05ab210363 Translated using Weblate (Arabic)
Currently translated at 65.0% (262 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-03-29 23:38:32 +02:00
Anonymous 47736b60bf Translated using Weblate (Serbian)
Currently translated at 2.2% (9 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-03-29 23:38:32 +02:00
Anonymous 608a34053a Translated using Weblate (Turkish)
Currently translated at 78.6% (317 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-03-29 23:38:31 +02:00
Anonymous 5df6ff01ba Translated using Weblate (Bulgarian)
Currently translated at 11.4% (46 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-03-29 23:38:31 +02:00
Anonymous fc57e9b72a Translated using Weblate (Telugu)
Currently translated at 53.8% (217 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-03-29 23:38:31 +02:00
Anonymous 0f5ee01032 Translated using Weblate (Finnish)
Currently translated at 44.1% (178 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-03-29 23:38:30 +02:00
Anonymous ec58c5995b Translated using Weblate (Yue)
Currently translated at 29.2% (118 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-03-29 23:38:30 +02:00
Anonymous 991821c417 Translated using Weblate (Portuguese (Brazil))
Currently translated at 96.7% (390 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-03-29 23:38:29 +02:00
Anonymous b54b6e9636 Translated using Weblate (Romanian)
Currently translated at 37.4% (151 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-03-29 23:38:29 +02:00
Anonymous 94c96d129b Translated using Weblate (Hebrew)
Currently translated at 25.0% (101 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-03-29 23:38:29 +02:00
Anonymous 8c929d5701 Translated using Weblate (Hungarian)
Currently translated at 26.7% (108 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-03-29 23:38:28 +02:00
Anonymous 49ea1df313 Translated using Weblate (Croatian)
Currently translated at 70.9% (286 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-03-29 23:38:28 +02:00
Anonymous 96a5b533b2 Translated using Weblate (Swedish)
Currently translated at 32.7% (132 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-03-29 23:38:27 +02:00
Anonymous 4f62f15acf Translated using Weblate (Polish)
Currently translated at 71.7% (289 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-03-29 23:38:27 +02:00
Anonymous 7dd33c6ced Translated using Weblate (Catalan)
Currently translated at 64.0% (258 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-03-29 23:38:26 +02:00
Anonymous 0bb3fc4a34 Translated using Weblate (Chinese (Traditional))
Currently translated at 89.0% (359 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-03-29 23:38:26 +02:00
Anonymous 4fa1eee3e9 Translated using Weblate (Dutch)
Currently translated at 60.0% (242 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-03-29 23:38:26 +02:00
Anonymous 0ab98294cf Translated using Weblate (Vietnamese)
Currently translated at 10.9% (44 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-03-29 23:38:25 +02:00
Anonymous 1e43364406 Translated using Weblate (Norwegian Bokmål)
Currently translated at 19.6% (79 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-03-29 23:38:25 +02:00
Anonymous 1b4efd2321 Translated using Weblate (Italian)
Currently translated at 71.4% (288 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-03-29 23:38:24 +02:00
Anonymous 0b79763474 Translated using Weblate (Chinese (Simplified))
Currently translated at 96.5% (389 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-03-29 23:38:24 +02:00
Anonymous 5782f83d99 Translated using Weblate (Russian)
Currently translated at 11.9% (48 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-03-29 23:38:24 +02:00
Anonymous 96568b14a8 Translated using Weblate (Portuguese)
Currently translated at 94.5% (381 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-03-29 23:38:23 +02:00
Anonymous 8a6144c4c6 Translated using Weblate (French)
Currently translated at 97.2% (392 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-03-29 23:38:23 +02:00
Anonymous 01e59acecb Translated using Weblate (Spanish)
Currently translated at 97.2% (392 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-03-29 23:38:22 +02:00
Anonymous 728c98a3cd Translated using Weblate (German)
Currently translated at 90.0% (363 of 403 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-03-29 23:38:22 +02:00
Cloudburst 50ee5abe46 Translated using Weblate (Polish)
Currently translated at 73.7% (289 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-03-29 23:36:30 +02:00
tony390616 680a3f6f96 Translated using Weblate (Chinese (Traditional))
Currently translated at 91.5% (359 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-03-29 23:36:30 +02:00
Roel van de Wiel b0c971d4af Translated using Weblate (Dutch)
Currently translated at 61.7% (242 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-03-29 23:36:30 +02:00
yahoo~~ 6b4535cf29 Translated using Weblate (Chinese (Simplified))
Currently translated at 99.2% (389 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-03-29 23:36:30 +02:00
shamoon c649c4ef17 Merge pull request #1084 from benphelps/feature-updated-resources
Feature: updated resources widget with cpu temp + uptime
2023-03-29 14:36:23 -07:00
shamoon f830faf8af update glances widget 2023-03-29 14:35:48 -07:00
shamoon b51af4377f Add uptime to resources widget 2023-03-29 14:35:48 -07:00
shamoon f46addf20a Add cputemp to resources widget 2023-03-29 14:35:48 -07:00
shamoon d4a3ba84e9 Convert resources widget to systeminformation dependency
Update resources.js
2023-03-29 14:35:48 -07:00
shamoon 903ab2c8d4 Merge pull request #1159 from Faeranne/main
Feature: support for Docker TLS based connections
2023-03-29 14:32:48 -07:00
Nina Morgan f37d3580b7 add support for Docker TLS based connections 2023-03-29 16:58:50 -04:00
shamoon bffda3240a Merge pull request #1156 from SebastianOsinski/improve_docker_memory_stats
Display Docker container's used memory instead of total memory
2023-03-28 16:32:24 -07:00
shamoon dde188c3c4 Fix calculate memory when no cache value 2023-03-28 15:51:55 -07:00
Sebastian Osiński e549a87719 Display Docker container's used memory instead of total memory 2023-03-28 19:40:09 +02:00
Henrique Miraldo 58bb5a2bbf Translated using Weblate (Portuguese (Brazil))
Currently translated at 99.4% (390 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-03-26 17:37:53 +02:00
Henrique Miraldo bd027868d0 Translated using Weblate (Portuguese)
Currently translated at 97.1% (381 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-03-26 17:37:52 +02:00
shamoon f895a6bf23 Fix status error display 2023-03-25 08:46:42 -07:00
Henrique Miraldo 5437da4999 Translated using Weblate (Portuguese)
Currently translated at 96.1% (377 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-03-25 15:40:51 +01:00
Smexhy d5447f8aa8 Translated using Weblate (Czech)
Currently translated at 100.0% (392 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-03-24 18:40:07 +01:00
Sitram 436a7cb8ea Translated using Weblate (Romanian)
Currently translated at 38.5% (151 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-03-24 18:40:07 +01:00
Sitram 1984a2a349 Translated using Weblate (Romanian)
Currently translated at 35.2% (138 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-03-23 14:41:32 +01:00
Alanimdeo 9081dcc77c Translated using Weblate (Korean)
Currently translated at 42.6% (167 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ko/
2023-03-22 17:41:31 +01:00
shamoon d9b0c58896 Update README.md 2023-03-21 14:19:18 -07:00
Anonymous 3838c7395c Translated using Weblate (Korean)
Currently translated at 100.0% (0 of 0 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ko/
2023-03-21 15:32:33 +01:00
Dan fb871f52c3 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (392 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-03-21 15:32:29 +01:00
Smexhy 497874a9df Translated using Weblate (Czech)
Currently translated at 100.0% (392 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-03-21 15:32:29 +01:00
Nonoss117 59783f8edd Translated using Weblate (French)
Currently translated at 100.0% (392 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-03-21 15:32:28 +01:00
gallegonovato 3caa7153a3 Translated using Weblate (Spanish)
Currently translated at 100.0% (392 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-03-21 15:32:28 +01:00
Alanimdeo a03815657f Added translation using Weblate (Korean) 2023-03-21 15:31:53 +01:00
Anonymous 58eba72136 Translated using Weblate (Slovak)
Currently translated at 2.2% (9 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sk/
2023-03-20 15:07:31 +01:00
Anonymous fefaef3442 Translated using Weblate (Thai)
Currently translated at 11.9% (47 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/th/
2023-03-20 15:07:30 +01:00
Anonymous 07152261d8 Translated using Weblate (Latvian)
Currently translated at 30.3% (119 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-03-20 15:07:30 +01:00
Anonymous 63fe833a2e Translated using Weblate (Japanese)
Currently translated at 3.8% (15 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-03-20 15:07:30 +01:00
Anonymous cce31d5d58 Translated using Weblate (Ukrainian)
Currently translated at 97.4% (382 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-03-20 15:07:29 +01:00
Anonymous fadad38f8f Translated using Weblate (Esperanto)
Currently translated at 26.2% (103 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-03-20 15:07:29 +01:00
Anonymous 7912c0603e Translated using Weblate (Hindi)
Currently translated at 2.2% (9 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-03-20 15:07:29 +01:00
Anonymous f6685938c0 Translated using Weblate (Malay)
Currently translated at 64.5% (253 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-03-20 15:07:28 +01:00
Anonymous dda3164c72 Translated using Weblate (Danish)
Currently translated at 50.5% (198 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-03-20 15:07:28 +01:00
Anonymous b63a75840f Translated using Weblate (Czech)
Currently translated at 85.9% (337 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-03-20 15:07:28 +01:00
Anonymous e0d872fe38 Translated using Weblate (Arabic)
Currently translated at 66.8% (262 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-03-20 15:07:28 +01:00
Anonymous c4832d8fcc Translated using Weblate (Serbian)
Currently translated at 2.2% (9 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-03-20 15:07:27 +01:00
Anonymous a464cc3161 Translated using Weblate (Turkish)
Currently translated at 80.8% (317 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-03-20 15:07:27 +01:00
Anonymous 37ceb2254a Translated using Weblate (Bulgarian)
Currently translated at 11.7% (46 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-03-20 15:07:27 +01:00
Anonymous 8ecd936ccd Translated using Weblate (Telugu)
Currently translated at 55.3% (217 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-03-20 15:07:26 +01:00
Anonymous 01407158a0 Translated using Weblate (Finnish)
Currently translated at 45.4% (178 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-03-20 15:07:26 +01:00
Anonymous a0efa9911d Translated using Weblate (Yue)
Currently translated at 30.1% (118 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-03-20 15:07:26 +01:00
Anonymous 9927a7a871 Translated using Weblate (Portuguese (Brazil))
Currently translated at 97.4% (382 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-03-20 15:07:25 +01:00
Anonymous d17bf1aae5 Translated using Weblate (Romanian)
Currently translated at 34.9% (137 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-03-20 15:07:25 +01:00
Anonymous 12c9fd5042 Translated using Weblate (Hebrew)
Currently translated at 25.7% (101 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-03-20 15:07:25 +01:00
Anonymous 5a04819950 Translated using Weblate (Hungarian)
Currently translated at 27.5% (108 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-03-20 15:07:24 +01:00
Anonymous c2f8257684 Translated using Weblate (Croatian)
Currently translated at 72.9% (286 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-03-20 15:07:24 +01:00
Anonymous 27c740220a Translated using Weblate (Swedish)
Currently translated at 33.6% (132 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-03-20 15:07:24 +01:00
Anonymous cdc33a410b Translated using Weblate (Polish)
Currently translated at 72.7% (285 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-03-20 15:07:23 +01:00
Anonymous 2e648d0370 Translated using Weblate (Catalan)
Currently translated at 65.8% (258 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-03-20 15:07:23 +01:00
Anonymous 9541c18f72 Translated using Weblate (Chinese (Traditional))
Currently translated at 90.3% (354 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-03-20 15:07:20 +01:00
Anonymous 959e1be01c Translated using Weblate (Dutch)
Currently translated at 22.4% (88 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-03-20 15:07:20 +01:00
Anonymous 30b29e504f Translated using Weblate (Vietnamese)
Currently translated at 11.2% (44 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-03-20 15:07:20 +01:00
Anonymous 7e39341dc0 Translated using Weblate (Norwegian Bokmål)
Currently translated at 20.1% (79 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-03-20 15:07:19 +01:00
Anonymous 78d8680710 Translated using Weblate (Italian)
Currently translated at 73.4% (288 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-03-20 15:07:19 +01:00
Anonymous 4330c6d04c Translated using Weblate (Chinese (Simplified))
Currently translated at 85.4% (335 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-03-20 15:07:19 +01:00
Anonymous 9aa41e620b Translated using Weblate (Russian)
Currently translated at 12.2% (48 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-03-20 15:07:18 +01:00
Anonymous a20bc95cd7 Translated using Weblate (Portuguese)
Currently translated at 95.6% (375 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-03-20 15:07:18 +01:00
Anonymous ef70a7fd42 Translated using Weblate (French)
Currently translated at 99.7% (391 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-03-20 15:07:18 +01:00
Anonymous 6ef4520234 Translated using Weblate (Spanish)
Currently translated at 99.7% (391 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-03-20 15:07:18 +01:00
Anonymous 7efffda7ec Translated using Weblate (German)
Currently translated at 92.6% (363 of 392 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-03-20 15:07:17 +01:00
Nonoss117 c72bd392f4 Translated using Weblate (French)
Currently translated at 100.0% (391 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-03-20 15:06:11 +01:00
gallegonovato 5bde439500 Translated using Weblate (Spanish)
Currently translated at 100.0% (391 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-03-20 15:06:11 +01:00
shamoon 606bcdc835 Add docker healthy translation 2023-03-20 07:02:39 -07:00
shamoon 07b896832b Merge pull request #1121 from shalak/enhance_nextcloud_widget
Add support of NC-Token to Nextcloud widget
2023-03-19 23:03:27 -07:00
shamoon 7d8da29e57 Update credentialed.js 2023-03-19 23:03:12 -07:00
Anonymous 5261f74c7c Translated using Weblate (Slovak)
Currently translated at 2.3% (9 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sk/
2023-03-20 07:01:42 +01:00
Anonymous 5c51683e8c Translated using Weblate (Thai)
Currently translated at 12.0% (47 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/th/
2023-03-20 07:01:42 +01:00
Anonymous dd1a322260 Translated using Weblate (Latvian)
Currently translated at 30.4% (119 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-03-20 07:01:42 +01:00
Anonymous c4755e117f Translated using Weblate (Japanese)
Currently translated at 3.8% (15 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-03-20 07:01:41 +01:00
Anonymous aefcdd2dc5 Translated using Weblate (Ukrainian)
Currently translated at 97.6% (382 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-03-20 07:01:41 +01:00
Anonymous dde8ec92b0 Translated using Weblate (Esperanto)
Currently translated at 26.3% (103 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-03-20 07:01:40 +01:00
Anonymous a35b1dc428 Translated using Weblate (Hindi)
Currently translated at 2.3% (9 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-03-20 07:01:40 +01:00
Anonymous 3165ae5c0c Translated using Weblate (Malay)
Currently translated at 64.7% (253 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-03-20 07:01:40 +01:00
Anonymous 4b1f96b86b Translated using Weblate (Danish)
Currently translated at 50.6% (198 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-03-20 07:01:39 +01:00
Anonymous e15ff18abc Translated using Weblate (Czech)
Currently translated at 86.1% (337 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-03-20 07:01:39 +01:00
Anonymous ccd4cee723 Translated using Weblate (Arabic)
Currently translated at 67.0% (262 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-03-20 07:01:38 +01:00
Anonymous a6b92b4be5 Translated using Weblate (Serbian)
Currently translated at 2.3% (9 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-03-20 07:01:38 +01:00
Anonymous 9f166fa737 Translated using Weblate (Turkish)
Currently translated at 81.0% (317 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-03-20 07:01:37 +01:00
Anonymous cd5c61d31c Translated using Weblate (Bulgarian)
Currently translated at 11.7% (46 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-03-20 07:01:37 +01:00
Anonymous 91da884b73 Translated using Weblate (Telugu)
Currently translated at 55.4% (217 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-03-20 07:01:36 +01:00
Anonymous 5d83064599 Translated using Weblate (Finnish)
Currently translated at 45.5% (178 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-03-20 07:01:36 +01:00
Anonymous e16da44af7 Translated using Weblate (Yue)
Currently translated at 30.1% (118 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-03-20 07:01:36 +01:00
Anonymous c0e6cb0ed8 Translated using Weblate (Portuguese (Brazil))
Currently translated at 97.6% (382 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-03-20 07:01:35 +01:00
Anonymous f9859c5ce1 Translated using Weblate (Romanian)
Currently translated at 35.0% (137 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-03-20 07:01:35 +01:00
Anonymous 48e1375f77 Translated using Weblate (Hebrew)
Currently translated at 25.8% (101 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-03-20 07:01:35 +01:00
Anonymous aa30102bc0 Translated using Weblate (Hungarian)
Currently translated at 27.6% (108 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-03-20 07:01:34 +01:00
Anonymous 18c89bdb68 Translated using Weblate (Croatian)
Currently translated at 73.1% (286 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-03-20 07:01:34 +01:00
Anonymous 48db343d14 Translated using Weblate (Swedish)
Currently translated at 33.7% (132 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-03-20 07:01:33 +01:00
Anonymous c2e9ffb65c Translated using Weblate (Polish)
Currently translated at 72.8% (285 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-03-20 07:01:33 +01:00
Anonymous 1fd015b203 Translated using Weblate (Catalan)
Currently translated at 65.9% (258 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-03-20 07:01:32 +01:00
Anonymous 3892575350 Translated using Weblate (Chinese (Traditional))
Currently translated at 90.5% (354 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-03-20 07:01:32 +01:00
Anonymous 8baa0be5ff Translated using Weblate (Dutch)
Currently translated at 22.5% (88 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-03-20 07:01:32 +01:00
Anonymous 2e375c2bb5 Translated using Weblate (Vietnamese)
Currently translated at 11.2% (44 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-03-20 07:01:31 +01:00
Anonymous 84a3f7155d Translated using Weblate (Norwegian Bokmål)
Currently translated at 20.2% (79 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-03-20 07:01:31 +01:00
Anonymous 0ca175e75d Translated using Weblate (Italian)
Currently translated at 73.6% (288 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-03-20 07:01:30 +01:00
Anonymous 44d4eba975 Translated using Weblate (Chinese (Simplified))
Currently translated at 85.6% (335 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-03-20 07:01:30 +01:00
Anonymous b658d807cb Translated using Weblate (Russian)
Currently translated at 12.2% (48 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-03-20 07:01:30 +01:00
Anonymous 06384ce2a7 Translated using Weblate (Portuguese)
Currently translated at 95.9% (375 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-03-20 07:01:29 +01:00
Anonymous 18c923517a Translated using Weblate (French)
Currently translated at 97.6% (382 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-03-20 07:01:29 +01:00
Anonymous 4b3f44000c Translated using Weblate (Spanish)
Currently translated at 97.6% (382 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-03-20 07:01:29 +01:00
Anonymous bb03c7bae7 Translated using Weblate (German)
Currently translated at 92.8% (363 of 391 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-03-20 07:01:28 +01:00
Smexhy e12baeeb9a Translated using Weblate (Czech)
Currently translated at 88.2% (337 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-03-20 06:59:58 +01:00
shamoon f149d292bc Merge pull request #1124 from benphelps/fix-1123
Add translation for some missing items
2023-03-19 22:59:52 -07:00
shamoon 401b35bea9 Add translation for some missing items
Closes #1123
2023-03-19 22:58:47 -07:00
Mirek Szajowski 94dc5ad0e5 Add support of NC-Token to Nextcloud widget 2023-03-20 03:03:43 +01:00
Anonymous b488d6a13c Translated using Weblate (Slovak)
Currently translated at 100.0% (0 of 0 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sk/
2023-03-19 22:19:13 +01:00
Ladislav Križo 374099b2cc Added translation using Weblate (Slovak) 2023-03-19 22:18:36 +01:00
Dan 5eb0c9b19e Translated using Weblate (Ukrainian)
Currently translated at 100.0% (382 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-03-18 02:39:06 +01:00
Smexhy 1f20d5188e Translated using Weblate (Czech)
Currently translated at 88.2% (337 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-03-18 02:39:06 +01:00
PedroBuffon da81c1de4e Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (382 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-03-18 02:39:05 +01:00
Nonoss117 885c078231 Translated using Weblate (French)
Currently translated at 100.0% (382 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-03-18 02:39:04 +01:00
gallegonovato aa15612171 Translated using Weblate (Spanish)
Currently translated at 100.0% (382 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-03-18 02:39:04 +01:00
Anonymous 8f9f0d8181 Translated using Weblate (Thai)
Currently translated at 12.3% (47 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/th/
2023-03-15 18:42:20 +01:00
Anonymous a1dee40ed6 Translated using Weblate (Latvian)
Currently translated at 31.1% (119 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-03-15 18:42:20 +01:00
Anonymous 4738f1cf54 Translated using Weblate (Japanese)
Currently translated at 3.9% (15 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-03-15 18:42:20 +01:00
Anonymous 98fef9729f Translated using Weblate (Ukrainian)
Currently translated at 98.9% (378 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-03-15 18:42:20 +01:00
Anonymous 6c23f047e0 Translated using Weblate (Esperanto)
Currently translated at 26.9% (103 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-03-15 18:42:20 +01:00
Anonymous 7e0c258a45 Translated using Weblate (Hindi)
Currently translated at 2.3% (9 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-03-15 18:42:20 +01:00
Anonymous 9d570dc477 Translated using Weblate (Malay)
Currently translated at 66.2% (253 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-03-15 18:42:20 +01:00
Anonymous 99b4bd5b5f Translated using Weblate (Danish)
Currently translated at 51.8% (198 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-03-15 18:42:20 +01:00
Anonymous 8eee91615f Translated using Weblate (Czech)
Currently translated at 82.7% (316 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-03-15 18:42:20 +01:00
Anonymous c0a064b32b Translated using Weblate (Arabic)
Currently translated at 68.5% (262 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-03-15 18:42:20 +01:00
Anonymous 0dc8aa2f31 Translated using Weblate (Serbian)
Currently translated at 2.3% (9 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-03-15 18:42:20 +01:00
Anonymous fad3d142d2 Translated using Weblate (Turkish)
Currently translated at 82.9% (317 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-03-15 18:42:20 +01:00
Anonymous 994f2f992e Translated using Weblate (Bulgarian)
Currently translated at 12.0% (46 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-03-15 18:42:19 +01:00
Anonymous 20aabbbe7e Translated using Weblate (Telugu)
Currently translated at 56.8% (217 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-03-15 18:42:19 +01:00
Anonymous b2baf72399 Translated using Weblate (Finnish)
Currently translated at 46.5% (178 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-03-15 18:42:19 +01:00
Anonymous 67ea7a7fda Translated using Weblate (Yue)
Currently translated at 30.8% (118 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-03-15 18:42:19 +01:00
Anonymous cce24d7104 Translated using Weblate (Portuguese (Brazil))
Currently translated at 94.5% (361 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-03-15 18:42:19 +01:00
Anonymous e9515f0fde Translated using Weblate (Romanian)
Currently translated at 35.8% (137 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-03-15 18:42:19 +01:00
Anonymous 34c7fe7052 Translated using Weblate (Hebrew)
Currently translated at 26.4% (101 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-03-15 18:42:19 +01:00
Anonymous 740d61d37a Translated using Weblate (Hungarian)
Currently translated at 28.2% (108 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-03-15 18:42:19 +01:00
Anonymous 5242c8855e Translated using Weblate (Croatian)
Currently translated at 74.8% (286 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-03-15 18:42:19 +01:00
Anonymous a19b354f25 Translated using Weblate (Swedish)
Currently translated at 34.5% (132 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-03-15 18:42:19 +01:00
Anonymous aec0253cf2 Translated using Weblate (Polish)
Currently translated at 74.6% (285 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-03-15 18:42:19 +01:00
Anonymous 5772e02646 Translated using Weblate (Catalan)
Currently translated at 67.5% (258 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-03-15 18:42:19 +01:00
Anonymous cc422a4078 Translated using Weblate (Chinese (Traditional))
Currently translated at 92.6% (354 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-03-15 18:42:19 +01:00
Anonymous 0cd1af5306 Translated using Weblate (Dutch)
Currently translated at 23.0% (88 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-03-15 18:42:19 +01:00
Anonymous a956e67da8 Translated using Weblate (Vietnamese)
Currently translated at 11.5% (44 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-03-15 18:42:19 +01:00
Anonymous d6bb006a06 Translated using Weblate (Norwegian Bokmål)
Currently translated at 20.6% (79 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-03-15 18:42:19 +01:00
Anonymous 71813bc0d9 Translated using Weblate (Italian)
Currently translated at 75.3% (288 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-03-15 18:42:19 +01:00
Anonymous 1ec33d0740 Translated using Weblate (Chinese (Simplified))
Currently translated at 87.6% (335 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-03-15 18:42:19 +01:00
Anonymous fbef105685 Translated using Weblate (Russian)
Currently translated at 12.5% (48 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-03-15 18:42:19 +01:00
Anonymous c98ad4066d Translated using Weblate (Portuguese)
Currently translated at 98.1% (375 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-03-15 18:42:19 +01:00
Anonymous 9a4bcf6720 Translated using Weblate (French)
Currently translated at 98.9% (378 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-03-15 18:42:19 +01:00
Anonymous cffa0d7489 Translated using Weblate (Spanish)
Currently translated at 98.9% (378 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-03-15 18:42:19 +01:00
Anonymous 9d64b08c1a Translated using Weblate (German)
Currently translated at 95.0% (363 of 382 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-03-15 18:42:19 +01:00
Smexhy 344bee5378 Translated using Weblate (Czech)
Currently translated at 83.5% (316 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-03-15 18:42:19 +01:00
shamoon fe860992c0 Merge pull request #1111 from benphelps/fix-1110
Fix: Add padding to values in resources widget
2023-03-15 10:42:12 -07:00
shamoon 70a15838d5 Merge pull request #1085 from benphelps/audiobookshelf-widget
Add audiobookshelf widget
2023-03-15 10:41:27 -07:00
shamoon 69fcd3f0c8 Add padding to values in resources widget
Closes #1110
2023-03-15 10:27:01 -07:00
Dan f2f74288f6 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (378 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-03-15 12:36:59 +01:00
ssantos 6901023a0c Translated using Weblate (Portuguese)
Currently translated at 99.2% (375 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-03-14 02:36:45 +01:00
Nonoss117 e1a1dbcc82 Translated using Weblate (French)
Currently translated at 100.0% (378 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-03-13 22:40:44 +01:00
gallegonovato bfc083544a Translated using Weblate (Spanish)
Currently translated at 100.0% (378 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-03-13 22:40:43 +01:00
Anonymous d6d5c3cbda Translated using Weblate (Thai)
Currently translated at 12.4% (47 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/th/
2023-03-13 02:57:41 +01:00
Anonymous 6cd31f0dd4 Translated using Weblate (Latvian)
Currently translated at 31.4% (119 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-03-13 02:57:41 +01:00
Anonymous 9240a84ec9 Translated using Weblate (Japanese)
Currently translated at 3.9% (15 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-03-13 02:57:40 +01:00
Anonymous 71376204a6 Translated using Weblate (Ukrainian)
Currently translated at 98.9% (374 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-03-13 02:57:40 +01:00
Anonymous b75a3a4f41 Translated using Weblate (Esperanto)
Currently translated at 27.2% (103 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-03-13 02:57:39 +01:00
Anonymous b395839a2f Translated using Weblate (Hindi)
Currently translated at 2.3% (9 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-03-13 02:57:39 +01:00
Anonymous 6d2022d6eb Translated using Weblate (Malay)
Currently translated at 66.9% (253 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-03-13 02:57:39 +01:00
Anonymous e0532cbc6a Translated using Weblate (Danish)
Currently translated at 52.3% (198 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-03-13 02:57:38 +01:00
Anonymous ff69a8ecd7 Translated using Weblate (Czech)
Currently translated at 66.1% (250 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-03-13 02:57:38 +01:00
Anonymous cdd11a8762 Translated using Weblate (Arabic)
Currently translated at 69.3% (262 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-03-13 02:57:38 +01:00
Anonymous cd0bb9df57 Translated using Weblate (Serbian)
Currently translated at 2.3% (9 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-03-13 02:57:37 +01:00
Anonymous effc1f190f Translated using Weblate (Turkish)
Currently translated at 83.8% (317 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-03-13 02:57:37 +01:00
Anonymous d8408562aa Translated using Weblate (Bulgarian)
Currently translated at 12.1% (46 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-03-13 02:57:36 +01:00
Anonymous d687434b1f Translated using Weblate (Telugu)
Currently translated at 57.4% (217 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-03-13 02:57:36 +01:00
Anonymous 95560033d2 Translated using Weblate (Finnish)
Currently translated at 47.0% (178 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-03-13 02:57:35 +01:00
Anonymous f9db8c4a6b Translated using Weblate (Yue)
Currently translated at 31.2% (118 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-03-13 02:57:35 +01:00
Anonymous 363e0a682b Translated using Weblate (Portuguese (Brazil))
Currently translated at 95.5% (361 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-03-13 02:57:35 +01:00
Anonymous d6d1c97ee0 Translated using Weblate (Romanian)
Currently translated at 36.2% (137 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-03-13 02:57:34 +01:00
Anonymous 6f72c4e52d Translated using Weblate (Hebrew)
Currently translated at 26.7% (101 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-03-13 02:57:34 +01:00
Anonymous 3c1f53410e Translated using Weblate (Hungarian)
Currently translated at 28.5% (108 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-03-13 02:57:33 +01:00
Anonymous bcecded090 Translated using Weblate (Croatian)
Currently translated at 75.6% (286 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-03-13 02:57:33 +01:00
Anonymous f6f1384da7 Translated using Weblate (Swedish)
Currently translated at 34.9% (132 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-03-13 02:57:33 +01:00
Anonymous 8e80868027 Translated using Weblate (Polish)
Currently translated at 75.3% (285 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-03-13 02:57:32 +01:00
Anonymous ec70a71d16 Translated using Weblate (Catalan)
Currently translated at 68.2% (258 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-03-13 02:57:32 +01:00
Anonymous 4b4138b876 Translated using Weblate (Chinese (Traditional))
Currently translated at 93.6% (354 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-03-13 02:57:32 +01:00
Anonymous 90675c6a14 Translated using Weblate (Dutch)
Currently translated at 23.2% (88 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-03-13 02:57:31 +01:00
Anonymous 8a7bcaf7f7 Translated using Weblate (Vietnamese)
Currently translated at 11.6% (44 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-03-13 02:57:31 +01:00
Anonymous 1cf9961ee8 Translated using Weblate (Norwegian Bokmål)
Currently translated at 20.8% (79 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-03-13 02:57:30 +01:00
Anonymous 415c1bcb09 Translated using Weblate (Italian)
Currently translated at 76.1% (288 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-03-13 02:57:30 +01:00
Anonymous bf032bdc12 Translated using Weblate (Chinese (Simplified))
Currently translated at 88.6% (335 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-03-13 02:57:30 +01:00
Anonymous 9dd04020ef Translated using Weblate (Russian)
Currently translated at 12.6% (48 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-03-13 02:57:29 +01:00
Anonymous 09401caf7b Translated using Weblate (Portuguese)
Currently translated at 67.7% (256 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-03-13 02:57:29 +01:00
Anonymous a112b6ddb8 Translated using Weblate (French)
Currently translated at 98.9% (374 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-03-13 02:57:29 +01:00
Anonymous 16ed4faeee Translated using Weblate (Spanish)
Currently translated at 98.9% (374 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-03-13 02:57:28 +01:00
Anonymous 7418bb019a Translated using Weblate (German)
Currently translated at 96.0% (363 of 378 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-03-13 02:57:28 +01:00
Starxy bff522eb9d Translated using Weblate (Chinese (Simplified))
Currently translated at 89.5% (335 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-03-13 02:55:50 +01:00
Nonoss117 cea5b4d841 Translated using Weblate (French)
Currently translated at 100.0% (374 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-03-13 02:55:50 +01:00
Rabenherz112 d5cd78e0c9 Translated using Weblate (German)
Currently translated at 97.0% (363 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-03-13 02:55:50 +01:00
shamoon 3b5fa0ed13 Merge pull request #1101 from jagadam97/main
Feature: support optional media counts in jellyfin / emby widgets
2023-03-12 18:55:43 -07:00
shamoon eaf7ba608b Fix blocks for emby/jellyfin, support enable/disable 2023-03-12 16:50:28 -07:00
Dinesh Reddy J 29c7a51b04 modified: src/widgets/emby/component.jsx 2023-03-12 22:11:15 +05:30
Dinesh Reddy J 263801677a Added Jellyfin Widget to show number of movies,Series, Episodes songs #264 2023-03-12 21:57:13 +05:30
Nonoss117 eaec0f075c Translated using Weblate (French)
Currently translated at 100.0% (374 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-03-11 14:40:04 +01:00
shamoon c00946cdc5 Merge pull request #1093 from Zlendy/immich
Fix: Use human readable units for storage in Immich widget
2023-03-10 19:15:48 -08:00
Zlendy 78642a36d0 Fix: immich API now returns bytes for storage 2023-03-10 19:15:37 -08:00
Bastian fb15f5dbc9 Translated using Weblate (German)
Currently translated at 94.9% (355 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-03-09 10:38:32 +01:00
Bastian c9daea1f22 Translated using Weblate (German)
Currently translated at 72.7% (272 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-03-07 23:33:17 +01:00
Rabenherz112 924ba2f2cf Translated using Weblate (German)
Currently translated at 61.2% (229 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-03-06 10:40:10 +01:00
shamoon a55bc357fd Add audiobookshelf widget 2023-03-05 23:34:46 -08:00
shamoon b8a1b90713 Update credentialed.js 2023-03-05 23:32:27 -08:00
Dan c2cdb773dc Translated using Weblate (Ukrainian)
Currently translated at 100.0% (374 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-03-04 14:39:47 +01:00
Nonoss117 ed2fd3726f Translated using Weblate (French)
Currently translated at 100.0% (374 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-03-04 14:39:46 +01:00
Raphaël Catarino cab4801211 Translated using Weblate (French)
Currently translated at 100.0% (374 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-03-04 14:39:46 +01:00
gallegonovato a824cb8ccd Translated using Weblate (Spanish)
Currently translated at 100.0% (374 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-03-04 14:39:46 +01:00
shamoon 31470a4459 Merge pull request #1080 from afknst/main
Fix: Cannot access qBittorrent from quick launch
2023-03-03 06:57:00 -08:00
afknst 8f2d5b7bf9 Merge branch 'benphelps:main' into main 2023-03-03 12:48:48 +01:00
afknst 3d4654d592 Fix: Cannot access qBittorrent from quick launch #1079 2023-03-03 12:41:33 +01:00
shamoon 30f04f75f2 use correct rutorrent rate units 2023-03-03 00:55:05 -08:00
shamoon 26246c5997 fix deluge units 2023-03-03 00:48:28 -08:00
shamoon 8c97bf6213 Merge pull request #1078 from benphelps/fix-1077
Fix: use correct rate units for pyload
2023-03-03 00:36:01 -08:00
shamoon 6db6c823c4 use correct rate units for pyload 2023-03-03 00:34:51 -08:00
Anonymous c3185240ff Translated using Weblate (Thai)
Currently translated at 12.5% (47 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/th/
2023-03-02 15:46:49 +01:00
Anonymous 8f70ee6d48 Translated using Weblate (Latvian)
Currently translated at 31.8% (119 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-03-02 15:46:49 +01:00
Anonymous 980b509128 Translated using Weblate (Japanese)
Currently translated at 4.0% (15 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-03-02 15:46:48 +01:00
Anonymous ac05b12b60 Translated using Weblate (Ukrainian)
Currently translated at 99.1% (371 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-03-02 15:46:48 +01:00
Anonymous d490a53dd7 Translated using Weblate (Esperanto)
Currently translated at 27.5% (103 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-03-02 15:46:47 +01:00
Anonymous 7dd6be471f Translated using Weblate (Hindi)
Currently translated at 2.4% (9 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-03-02 15:46:47 +01:00
Anonymous e7d40d3c95 Translated using Weblate (Malay)
Currently translated at 67.6% (253 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-03-02 15:46:47 +01:00
Anonymous 8448ca6bee Translated using Weblate (Danish)
Currently translated at 52.9% (198 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-03-02 15:46:46 +01:00
Anonymous fc87e539a0 Translated using Weblate (Czech)
Currently translated at 66.8% (250 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-03-02 15:46:46 +01:00
Anonymous 486d7aa125 Translated using Weblate (Arabic)
Currently translated at 70.0% (262 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-03-02 15:46:45 +01:00
Anonymous a23d7cd440 Translated using Weblate (Serbian)
Currently translated at 2.4% (9 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-03-02 15:46:45 +01:00
Anonymous 1b706d86f0 Translated using Weblate (Turkish)
Currently translated at 84.7% (317 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-03-02 15:46:44 +01:00
Anonymous 2ae6780346 Translated using Weblate (Bulgarian)
Currently translated at 12.2% (46 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-03-02 15:46:44 +01:00
Anonymous 7db6e80173 Translated using Weblate (Telugu)
Currently translated at 58.0% (217 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-03-02 15:46:44 +01:00
Anonymous 2a45580621 Translated using Weblate (Finnish)
Currently translated at 47.5% (178 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-03-02 15:46:43 +01:00
Anonymous e66e87cec6 Translated using Weblate (Yue)
Currently translated at 31.5% (118 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-03-02 15:46:43 +01:00
Anonymous 392f725319 Translated using Weblate (Portuguese (Brazil))
Currently translated at 96.5% (361 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-03-02 15:46:43 +01:00
Anonymous 20f074fa7d Translated using Weblate (Romanian)
Currently translated at 36.6% (137 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-03-02 15:46:42 +01:00
Anonymous 921f3d7812 Translated using Weblate (Hebrew)
Currently translated at 27.0% (101 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-03-02 15:46:42 +01:00
Anonymous 5c1238c874 Translated using Weblate (Hungarian)
Currently translated at 28.8% (108 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-03-02 15:46:41 +01:00
Anonymous 5e74acbada Translated using Weblate (Croatian)
Currently translated at 76.4% (286 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-03-02 15:46:41 +01:00
Anonymous ca726ea953 Translated using Weblate (Swedish)
Currently translated at 35.2% (132 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-03-02 15:46:41 +01:00
Anonymous d3ccd072d4 Translated using Weblate (Polish)
Currently translated at 76.2% (285 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-03-02 15:46:40 +01:00
Anonymous 9902706073 Translated using Weblate (Catalan)
Currently translated at 68.9% (258 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-03-02 15:46:40 +01:00
Anonymous 4bf53a6cbd Translated using Weblate (Chinese (Traditional))
Currently translated at 94.6% (354 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-03-02 15:46:40 +01:00
Anonymous 1495f2ab11 Translated using Weblate (Dutch)
Currently translated at 23.5% (88 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-03-02 15:46:39 +01:00
Anonymous 42bca2ff48 Translated using Weblate (Vietnamese)
Currently translated at 11.7% (44 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-03-02 15:46:39 +01:00
Anonymous 939b7bc5c7 Translated using Weblate (Norwegian Bokmål)
Currently translated at 21.1% (79 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-03-02 15:46:38 +01:00
Anonymous b5b19482f4 Translated using Weblate (Italian)
Currently translated at 77.0% (288 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-03-02 15:46:38 +01:00
Anonymous 9cec8a88fe Translated using Weblate (Chinese (Simplified))
Currently translated at 88.5% (331 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-03-02 15:46:38 +01:00
Anonymous fc35de0cb7 Translated using Weblate (Russian)
Currently translated at 12.8% (48 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-03-02 15:46:38 +01:00
Anonymous 63200511e0 Translated using Weblate (Portuguese)
Currently translated at 68.4% (256 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-03-02 15:46:37 +01:00
Anonymous 7f9fc716bb Translated using Weblate (French)
Currently translated at 99.1% (371 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-03-02 15:46:37 +01:00
Anonymous d66c33b071 Translated using Weblate (Spanish)
Currently translated at 99.1% (371 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-03-02 15:46:37 +01:00
Anonymous 803a9435d2 Translated using Weblate (German)
Currently translated at 60.9% (228 of 374 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-03-02 15:46:36 +01:00
shamoon 711dde6741 Merge pull request #1071 from math625f/main
Added Ghostfolio widget
2023-03-02 06:45:59 -08:00
Dan 0feb0570c9 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (371 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-03-02 13:37:01 +01:00
Nonoss117 e1dec3e735 Translated using Weblate (French)
Currently translated at 100.0% (371 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-03-02 13:37:01 +01:00
gallegonovato 29b1805ab5 Translated using Weblate (Spanish)
Currently translated at 100.0% (371 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-03-02 13:37:01 +01:00
Mathias R 27a2b08c27 Removed unused translation key 2023-03-02 08:22:54 +01:00
shamoon e11589f52e simplify ghostfolio widget 2023-03-01 22:45:22 -08:00
Mathias R e97fdc17be Added Ghostfolio widget 2023-03-01 19:44:13 +01:00
Anonymous cb554f269c Translated using Weblate (Thai)
Currently translated at 12.6% (47 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/th/
2023-03-01 07:14:57 +01:00
Anonymous 91cc6b1b1a Translated using Weblate (Latvian)
Currently translated at 32.0% (119 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-03-01 07:14:56 +01:00
Anonymous 96e62d86a7 Translated using Weblate (Japanese)
Currently translated at 4.0% (15 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-03-01 07:14:56 +01:00
Anonymous 7ad91fdaf0 Translated using Weblate (Ukrainian)
Currently translated at 97.3% (361 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-03-01 07:14:55 +01:00
Anonymous b7fe38f362 Translated using Weblate (Esperanto)
Currently translated at 27.7% (103 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-03-01 07:14:55 +01:00
Anonymous 0bca9e5f0c Translated using Weblate (Hindi)
Currently translated at 2.4% (9 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-03-01 07:14:55 +01:00
Anonymous c2474a3080 Translated using Weblate (Malay)
Currently translated at 68.1% (253 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-03-01 07:14:54 +01:00
Anonymous 311c62df4f Translated using Weblate (Danish)
Currently translated at 53.3% (198 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-03-01 07:14:54 +01:00
Anonymous f48974e7b6 Translated using Weblate (Czech)
Currently translated at 67.3% (250 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-03-01 07:14:53 +01:00
Anonymous 8320b23655 Translated using Weblate (Arabic)
Currently translated at 70.6% (262 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-03-01 07:14:53 +01:00
Anonymous d26eca4146 Translated using Weblate (Serbian)
Currently translated at 2.4% (9 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-03-01 07:14:53 +01:00
Anonymous b4fcdbb2ae Translated using Weblate (Turkish)
Currently translated at 85.4% (317 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-03-01 07:14:52 +01:00
Anonymous e1dfacd90b Translated using Weblate (Bulgarian)
Currently translated at 12.3% (46 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-03-01 07:14:52 +01:00
Anonymous 8309d5735d Translated using Weblate (Telugu)
Currently translated at 58.4% (217 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-03-01 07:14:51 +01:00
Anonymous 58d888c149 Translated using Weblate (Finnish)
Currently translated at 47.9% (178 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-03-01 07:14:51 +01:00
Anonymous 26c70e6bac Translated using Weblate (Yue)
Currently translated at 31.8% (118 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-03-01 07:14:51 +01:00
Anonymous 7f849d26a8 Translated using Weblate (Portuguese (Brazil))
Currently translated at 97.3% (361 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-03-01 07:14:50 +01:00
Anonymous 20a1c0e9e7 Translated using Weblate (Romanian)
Currently translated at 36.9% (137 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-03-01 07:14:50 +01:00
Anonymous 4afef12acd Translated using Weblate (Hebrew)
Currently translated at 27.2% (101 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-03-01 07:14:49 +01:00
Anonymous 9160947c93 Translated using Weblate (Hungarian)
Currently translated at 29.1% (108 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-03-01 07:14:49 +01:00
Anonymous a4b06288ca Translated using Weblate (Croatian)
Currently translated at 77.0% (286 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-03-01 07:14:49 +01:00
Anonymous 9596870d6a Translated using Weblate (Swedish)
Currently translated at 35.5% (132 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-03-01 07:14:48 +01:00
Anonymous 992d46c54b Translated using Weblate (Polish)
Currently translated at 76.8% (285 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-03-01 07:14:48 +01:00
Anonymous 080c9ce17c Translated using Weblate (Catalan)
Currently translated at 69.5% (258 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-03-01 07:14:48 +01:00
Anonymous 1c65c4c904 Translated using Weblate (Chinese (Traditional))
Currently translated at 95.4% (354 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-03-01 07:14:47 +01:00
Anonymous 68dd83e152 Translated using Weblate (Dutch)
Currently translated at 23.7% (88 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-03-01 07:14:46 +01:00
Anonymous 6cc07dbf69 Translated using Weblate (Vietnamese)
Currently translated at 11.8% (44 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-03-01 07:14:46 +01:00
Anonymous cf11707bd9 Translated using Weblate (Norwegian Bokmål)
Currently translated at 21.2% (79 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-03-01 07:14:46 +01:00
Anonymous 070a255cb4 Translated using Weblate (Italian)
Currently translated at 77.6% (288 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-03-01 07:14:45 +01:00
Anonymous 007051b673 Translated using Weblate (Chinese (Simplified))
Currently translated at 89.2% (331 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-03-01 07:14:45 +01:00
Anonymous 1b180bdceb Translated using Weblate (Russian)
Currently translated at 12.9% (48 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-03-01 07:14:45 +01:00
Anonymous b09e526006 Translated using Weblate (Portuguese)
Currently translated at 69.0% (256 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-03-01 07:14:44 +01:00
Anonymous 751fbc4b6e Translated using Weblate (French)
Currently translated at 98.6% (366 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-03-01 07:14:44 +01:00
Anonymous 8c067616e2 Translated using Weblate (Spanish)
Currently translated at 98.6% (366 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-03-01 07:14:44 +01:00
Anonymous 3e225fa37c Translated using Weblate (German)
Currently translated at 61.4% (228 of 371 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-03-01 07:14:43 +01:00
Nonoss117 20fc755078 Translated using Weblate (French)
Currently translated at 100.0% (366 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-03-01 07:13:19 +01:00
gallegonovato 2800029edc Translated using Weblate (Spanish)
Currently translated at 100.0% (366 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-03-01 07:13:19 +01:00
shamoon 65b23b9674 Merge pull request #1067 from Sairenity/1042-minecraft-server-status
Minecraft server status widget
2023-02-28 22:13:13 -08:00
Jason Fischer 3db5435c19 Merge pull request #1043 from jameswynn/variable-substitution
Added support for environment variable substitution
2023-02-28 20:14:30 -08:00
shamoon c6e76f4e31 move minecraft proxy & use url key 2023-02-28 08:50:43 -08:00
Sairenity b36ef0234e refactor widget.js, return http 200 when server is offline 2023-02-28 16:22:43 +00:00
shamoon af2566c237 Merge pull request #1069 from rommelkott/main
Refactor Healthchecks widget API host to be parametrized
2023-02-28 07:58:20 -08:00
Sairenity ad66637ff1 rewrite minecraft server status widget to directly ping server 2023-02-28 11:49:39 +00:00
Rommel Kott bf2f527f76 Refactor API host to be parametrized 2023-02-28 01:04:44 -06:00
Anonymous 009b13817a Translated using Weblate (Thai)
Currently translated at 12.8% (47 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/th/
2023-02-28 05:17:49 +01:00
Anonymous 397dfa98a2 Translated using Weblate (Latvian)
Currently translated at 32.5% (119 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-02-28 05:17:49 +01:00
Anonymous b46f07244a Translated using Weblate (Japanese)
Currently translated at 4.0% (15 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-02-28 05:17:49 +01:00
Anonymous 371aec0d98 Translated using Weblate (Ukrainian)
Currently translated at 98.6% (361 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-28 05:17:48 +01:00
Anonymous f6aef7e2f9 Translated using Weblate (Esperanto)
Currently translated at 28.1% (103 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-02-28 05:17:48 +01:00
Anonymous 8a1be1e02d Translated using Weblate (Hindi)
Currently translated at 2.4% (9 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-02-28 05:17:48 +01:00
Anonymous e2d5f94b04 Translated using Weblate (Malay)
Currently translated at 69.1% (253 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-02-28 05:17:48 +01:00
Anonymous 7b455e0c1b Translated using Weblate (Danish)
Currently translated at 54.0% (198 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-02-28 05:17:47 +01:00
Anonymous 4aedbe4bdc Translated using Weblate (Czech)
Currently translated at 68.3% (250 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-02-28 05:17:47 +01:00
Anonymous c2ed7feab7 Translated using Weblate (Arabic)
Currently translated at 71.5% (262 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-02-28 05:17:47 +01:00
Anonymous 0989c02d38 Translated using Weblate (Serbian)
Currently translated at 2.4% (9 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-02-28 05:17:46 +01:00
Anonymous dd026c85d9 Translated using Weblate (Turkish)
Currently translated at 86.6% (317 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-02-28 05:17:46 +01:00
Anonymous 66e45d2594 Translated using Weblate (Bulgarian)
Currently translated at 12.5% (46 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-02-28 05:17:46 +01:00
Anonymous ea578d6185 Translated using Weblate (Telugu)
Currently translated at 59.2% (217 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-02-28 05:17:45 +01:00
Anonymous aadb2ecdb3 Translated using Weblate (Finnish)
Currently translated at 48.6% (178 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-02-28 05:17:45 +01:00
Anonymous 296e80b7d5 Translated using Weblate (Yue)
Currently translated at 32.2% (118 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-02-28 05:17:45 +01:00
Anonymous 6f298eb4ee Translated using Weblate (Portuguese (Brazil))
Currently translated at 98.6% (361 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-02-28 05:17:44 +01:00
Anonymous 644fcdc57b Translated using Weblate (Romanian)
Currently translated at 37.4% (137 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-02-28 05:17:44 +01:00
Anonymous f9b963da6b Translated using Weblate (Hebrew)
Currently translated at 27.5% (101 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-02-28 05:17:44 +01:00
Anonymous 56be3474db Translated using Weblate (Hungarian)
Currently translated at 29.5% (108 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-02-28 05:17:43 +01:00
Anonymous 2850111024 Translated using Weblate (Croatian)
Currently translated at 78.1% (286 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-02-28 05:17:43 +01:00
Anonymous abe20929c3 Translated using Weblate (Swedish)
Currently translated at 36.0% (132 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-02-28 05:17:43 +01:00
Anonymous 820eaa67d7 Translated using Weblate (Polish)
Currently translated at 77.8% (285 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-02-28 05:17:43 +01:00
Anonymous 3ce25830cc Translated using Weblate (Catalan)
Currently translated at 70.4% (258 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-02-28 05:17:42 +01:00
Anonymous 6e899c0684 Translated using Weblate (Chinese (Traditional))
Currently translated at 96.7% (354 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-02-28 05:17:42 +01:00
Anonymous 40bf9202ec Translated using Weblate (Dutch)
Currently translated at 24.0% (88 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-02-28 05:17:42 +01:00
Anonymous 92ba57e1e0 Translated using Weblate (Vietnamese)
Currently translated at 12.0% (44 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-02-28 05:17:41 +01:00
Anonymous 34ca28b65f Translated using Weblate (Norwegian Bokmål)
Currently translated at 21.5% (79 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-02-28 05:17:41 +01:00
Anonymous 34ebf27b06 Translated using Weblate (Italian)
Currently translated at 78.6% (288 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-02-28 05:17:41 +01:00
Anonymous 3adfaf9e26 Translated using Weblate (Chinese (Simplified))
Currently translated at 90.4% (331 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-28 05:17:40 +01:00
Anonymous 5bdef9c6a1 Translated using Weblate (Russian)
Currently translated at 13.1% (48 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-02-28 05:17:40 +01:00
Anonymous e5bd5bb423 Translated using Weblate (Portuguese)
Currently translated at 69.9% (256 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-02-28 05:17:40 +01:00
Anonymous 5bc7fc168c Translated using Weblate (French)
Currently translated at 99.4% (364 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-28 05:17:40 +01:00
Anonymous 44c99af690 Translated using Weblate (Spanish)
Currently translated at 99.4% (364 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-28 05:17:39 +01:00
Anonymous befefd9af6 Translated using Weblate (German)
Currently translated at 62.2% (228 of 366 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-02-28 05:17:39 +01:00
shamoon 78e92dac22 Merge pull request #1068 from Aesop7/main
Add Quicklaunch feature to jump to a url
2023-02-27 20:15:26 -08:00
shamoon af147c0da0 Support open url in quicklaunch 2023-02-27 20:06:30 -08:00
danny 6d5434fa3a Add the ability to go to a URL from quicklaunch
disable shift indicator whenever modal is closed

Add prefix to make feature more explicit

Hide the results when shift is pressed

fix typo - className not class

Revert "Add the ability to go to a URL from quicklaunch"

This reverts commit c52184df275b2819a968db0a3f2a57d56b988ac9.
2023-02-27 17:29:43 -08:00
Sairenity f418ee6327 Add minecraft server status indicator 2023-02-27 11:59:37 +00:00
shamoon cbf11e3fb4 Merge pull request #1063 from benphelps/issue-1060
Change: Alter cloudflare widget to use api token [Breaking Change]
2023-02-26 08:31:11 -08:00
shamoon e9790e5677 Change cloudflare widget to use api tokens 2023-02-26 08:18:47 -08:00
gallegonovato 86383e5dce Translated using Weblate (Spanish)
Currently translated at 100.0% (364 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-26 16:36:39 +01:00
shamoon 449c23a63d fix service widgets import organization 2023-02-24 22:24:30 -08:00
Anonymous 829f7e33bc Translated using Weblate (Thai)
Currently translated at 12.9% (47 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/th/
2023-02-25 07:10:38 +01:00
Anonymous 9f4237f07d Translated using Weblate (Latvian)
Currently translated at 32.6% (119 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-02-25 07:10:38 +01:00
Anonymous 7458b9f685 Translated using Weblate (Japanese)
Currently translated at 4.1% (15 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-02-25 07:10:37 +01:00
Anonymous 9a11cd5f81 Translated using Weblate (Ukrainian)
Currently translated at 99.1% (361 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-25 07:10:37 +01:00
Anonymous 81aaf5aa56 Translated using Weblate (Esperanto)
Currently translated at 28.2% (103 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-02-25 07:10:37 +01:00
Anonymous 716660318b Translated using Weblate (Hindi)
Currently translated at 2.4% (9 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-02-25 07:10:36 +01:00
Anonymous a861971ba6 Translated using Weblate (Malay)
Currently translated at 69.5% (253 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-02-25 07:10:36 +01:00
Anonymous 6a7a30b423 Translated using Weblate (Danish)
Currently translated at 54.3% (198 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-02-25 07:10:36 +01:00
Anonymous e60768d156 Translated using Weblate (Czech)
Currently translated at 68.6% (250 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-02-25 07:10:35 +01:00
Anonymous dfa9cf29f9 Translated using Weblate (Arabic)
Currently translated at 71.9% (262 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-02-25 07:10:35 +01:00
Anonymous ab576f173b Translated using Weblate (Serbian)
Currently translated at 2.4% (9 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-02-25 07:10:35 +01:00
Anonymous 10604fc5d2 Translated using Weblate (Turkish)
Currently translated at 87.0% (317 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-02-25 07:10:34 +01:00
Anonymous ebc8b745a4 Translated using Weblate (Bulgarian)
Currently translated at 12.6% (46 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-02-25 07:10:34 +01:00
Anonymous f0151a5d57 Translated using Weblate (Telugu)
Currently translated at 59.6% (217 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-02-25 07:10:34 +01:00
Anonymous 76274a7843 Translated using Weblate (Finnish)
Currently translated at 48.9% (178 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-02-25 07:10:33 +01:00
Anonymous 20635da031 Translated using Weblate (Yue)
Currently translated at 32.4% (118 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-02-25 07:10:33 +01:00
Anonymous a52f4ed984 Translated using Weblate (Portuguese (Brazil))
Currently translated at 99.1% (361 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-02-25 07:10:33 +01:00
Anonymous 1f4e89cf10 Translated using Weblate (Romanian)
Currently translated at 37.6% (137 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-02-25 07:10:32 +01:00
Anonymous 2ae71a27fe Translated using Weblate (Hebrew)
Currently translated at 27.7% (101 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-02-25 07:10:32 +01:00
Anonymous eb508170f0 Translated using Weblate (Hungarian)
Currently translated at 29.6% (108 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-02-25 07:10:32 +01:00
Anonymous 7ba37c894d Translated using Weblate (Croatian)
Currently translated at 78.5% (286 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-02-25 07:10:32 +01:00
Anonymous 37d7a94d8a Translated using Weblate (Swedish)
Currently translated at 36.2% (132 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-02-25 07:10:31 +01:00
Anonymous 98595a84e2 Translated using Weblate (Polish)
Currently translated at 78.2% (285 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-02-25 07:10:31 +01:00
Anonymous 509d0a785e Translated using Weblate (Catalan)
Currently translated at 70.8% (258 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-02-25 07:10:31 +01:00
Anonymous 49e564af8a Translated using Weblate (Chinese (Traditional))
Currently translated at 97.2% (354 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-02-25 07:10:30 +01:00
Anonymous 72a65e9a15 Translated using Weblate (Dutch)
Currently translated at 24.1% (88 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-02-25 07:10:30 +01:00
Anonymous dcbfd25d04 Translated using Weblate (Vietnamese)
Currently translated at 12.0% (44 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-02-25 07:10:30 +01:00
Anonymous e7e46db9a1 Translated using Weblate (Norwegian Bokmål)
Currently translated at 21.7% (79 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-02-25 07:10:29 +01:00
Anonymous 4c2cbb180f Translated using Weblate (Italian)
Currently translated at 79.1% (288 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-02-25 07:10:29 +01:00
Anonymous 6b56311955 Translated using Weblate (Chinese (Simplified))
Currently translated at 90.9% (331 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-25 07:10:29 +01:00
Anonymous 7cce64a91a Translated using Weblate (Russian)
Currently translated at 13.1% (48 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-02-25 07:10:28 +01:00
Anonymous aaf4a5855e Translated using Weblate (Portuguese)
Currently translated at 70.3% (256 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-02-25 07:10:28 +01:00
Anonymous 2e83eec155 Translated using Weblate (French)
Currently translated at 99.1% (361 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-25 07:10:28 +01:00
Anonymous 21e9b55b74 Translated using Weblate (Spanish)
Currently translated at 98.6% (359 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-25 07:10:27 +01:00
Anonymous 5976a3c27f Translated using Weblate (German)
Currently translated at 62.6% (228 of 364 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-02-25 07:10:27 +01:00
Dan cb9755d8e6 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (361 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-25 07:09:58 +01:00
Bruno Rossetto c139fbebd7 Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (361 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-02-25 07:09:58 +01:00
Nonoss117 8ef7b301ec Translated using Weblate (French)
Currently translated at 100.0% (361 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-25 07:09:58 +01:00
shamoon 102ce2b1fe Merge pull request #1056 from tristo7/prometheus-widget
add prometheus service widget
2023-02-24 22:09:51 -08:00
shamoon fe494a4ab3 add prometheus widget data validation 2023-02-24 22:07:42 -08:00
Tristin Terry 8dcb3a27bd add prometheus service widget 2023-02-24 19:55:13 -06:00
shamoon 7740f7e2dd Revert #1044 2023-02-24 11:58:29 -08:00
shamoon 99efe2e7aa Merge pull request #1051 from benphelps/dependabot/github_actions/actions/checkout-3 2023-02-24 11:36:59 -08:00
dependabot[bot] 79df42a743 Bump actions/checkout from 2 to 3
Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-24 17:03:59 +00:00
Anonymous 555e9463e8 Translated using Weblate (Thai)
Currently translated at 13.0% (47 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/th/
2023-02-24 16:54:25 +01:00
Anonymous a2424ea0bd Translated using Weblate (Latvian)
Currently translated at 32.9% (119 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-02-24 16:54:25 +01:00
Anonymous 743e9dcbf8 Translated using Weblate (Japanese)
Currently translated at 4.1% (15 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-02-24 16:54:24 +01:00
Anonymous 350bb1ff25 Translated using Weblate (Ukrainian)
Currently translated at 99.4% (359 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-24 16:54:24 +01:00
Anonymous bf50eaff17 Translated using Weblate (Esperanto)
Currently translated at 28.5% (103 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-02-24 16:54:24 +01:00
Anonymous 2594068fd0 Translated using Weblate (Hindi)
Currently translated at 2.4% (9 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-02-24 16:54:24 +01:00
Anonymous 72f66385ae Translated using Weblate (Malay)
Currently translated at 70.0% (253 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-02-24 16:54:23 +01:00
Anonymous 9cae86d88b Translated using Weblate (Danish)
Currently translated at 54.8% (198 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-02-24 16:54:23 +01:00
Anonymous 9f5b381b17 Translated using Weblate (Czech)
Currently translated at 69.2% (250 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-02-24 16:54:23 +01:00
Anonymous 707bb93ad6 Translated using Weblate (Arabic)
Currently translated at 72.5% (262 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-02-24 16:54:22 +01:00
Anonymous dfcd4d8e84 Translated using Weblate (Serbian)
Currently translated at 2.4% (9 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-02-24 16:54:22 +01:00
Anonymous 3d99302e33 Translated using Weblate (Turkish)
Currently translated at 87.8% (317 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-02-24 16:54:21 +01:00
Anonymous a5036a701b Translated using Weblate (Bulgarian)
Currently translated at 12.7% (46 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-02-24 16:54:21 +01:00
Anonymous 3aa0fd594c Translated using Weblate (Telugu)
Currently translated at 60.1% (217 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-02-24 16:54:21 +01:00
Anonymous 67c60b4256 Translated using Weblate (Finnish)
Currently translated at 49.3% (178 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-02-24 16:54:20 +01:00
Anonymous 42675c2e71 Translated using Weblate (Yue)
Currently translated at 32.6% (118 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-02-24 16:54:20 +01:00
Anonymous 35098385c0 Translated using Weblate (Portuguese (Brazil))
Currently translated at 69.8% (252 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-02-24 16:54:19 +01:00
Anonymous 409204c564 Translated using Weblate (Romanian)
Currently translated at 37.9% (137 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-02-24 16:54:19 +01:00
Anonymous 7ad59dc85f Translated using Weblate (Hebrew)
Currently translated at 27.9% (101 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-02-24 16:54:19 +01:00
Anonymous f87d3d4ae3 Translated using Weblate (Hungarian)
Currently translated at 29.9% (108 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-02-24 16:54:19 +01:00
Anonymous c84fecd981 Translated using Weblate (Croatian)
Currently translated at 79.2% (286 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-02-24 16:54:18 +01:00
Anonymous 321ede5297 Translated using Weblate (Swedish)
Currently translated at 36.5% (132 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-02-24 16:54:18 +01:00
Anonymous 6bea32ad83 Translated using Weblate (Polish)
Currently translated at 78.9% (285 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-02-24 16:54:18 +01:00
Anonymous 2a73b603c9 Translated using Weblate (Catalan)
Currently translated at 71.4% (258 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-02-24 16:54:17 +01:00
Anonymous 8203537915 Translated using Weblate (Chinese (Traditional))
Currently translated at 98.0% (354 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-02-24 16:54:17 +01:00
Anonymous c56f48fb42 Translated using Weblate (Dutch)
Currently translated at 24.3% (88 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-02-24 16:54:17 +01:00
Anonymous 743267ba7b Translated using Weblate (Vietnamese)
Currently translated at 12.1% (44 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-02-24 16:54:16 +01:00
Anonymous 218327b4a2 Translated using Weblate (Norwegian Bokmål)
Currently translated at 21.8% (79 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-02-24 16:54:16 +01:00
Anonymous 7754b8b8f1 Translated using Weblate (Italian)
Currently translated at 79.7% (288 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-02-24 16:54:16 +01:00
Anonymous c0df7db05e Translated using Weblate (Chinese (Simplified))
Currently translated at 91.6% (331 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-24 16:54:15 +01:00
Anonymous 2c8aea1cd9 Translated using Weblate (Russian)
Currently translated at 13.2% (48 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-02-24 16:54:15 +01:00
Anonymous d0ba6aebbf Translated using Weblate (Portuguese)
Currently translated at 70.9% (256 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-02-24 16:54:15 +01:00
Anonymous 5ed50bbb57 Translated using Weblate (French)
Currently translated at 99.4% (359 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-24 16:54:14 +01:00
Anonymous 311b7b1cea Translated using Weblate (Spanish)
Currently translated at 99.4% (359 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-24 16:54:14 +01:00
Anonymous 101b706cd9 Translated using Weblate (German)
Currently translated at 63.1% (228 of 361 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-02-24 16:54:14 +01:00
Bruno Rossetto bdfb09b1a4 Translated using Weblate (Portuguese (Brazil))
Currently translated at 70.1% (252 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-02-24 16:53:50 +01:00
shamoon 65c06adb5a Merge pull request #1026 from Oupsman/pterodactyl
Pterodactyl widget: initial commit
2023-02-24 07:53:45 -08:00
shamoon 8c26da6655 Merge pull request #1047 from jameswynn/chart-commons-version 2023-02-24 07:50:19 -08:00
James Wynn c0d58d8206 Typo in common lib version 2023-02-24 08:58:41 -06:00
shamoon c2136e8353 Merge pull request #1044 from jameswynn/helm-chart 2023-02-24 06:52:00 -08:00
Dan bc26d4f3b3 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (359 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-24 02:46:32 +01:00
James Wynn 563cc9ce60 Migrated helm chart from jameswynn/helm-charts
Standard chart release pipeline from:
https://helm.sh/docs/howto/chart_releaser_action/
2023-02-23 14:36:55 -06:00
Sairenity 8f3ae6d674 added english translations for minecraft server status 2023-02-23 18:33:42 +00:00
Sairenity 8604418fb1 implemented fetching of minecraft server status 2023-02-23 18:30:44 +00:00
shamoon b2d22d7574 Cache config env variables & check if config contains variables before substitution 2023-02-23 09:51:28 -08:00
shamoon 060d5afcaa Simplify pterodactyl to only show server / node counts 2023-02-23 07:50:13 -08:00
Benoit SERRA 8e9ce016b1 Pterodactyl widget: initial commit 2023-02-23 07:50:13 -08:00
James Wynn e0f1aae4d5 Added support for environment variable substitution
* Only environment variables starting with HOMEPAGE_VAR_ and HOMEPAGE_FILE_
  are supported
* The value of env var HOMEPAGE_VAR_XXX will replace {{HOMEPAGE_VAR_XXX}}
  in any config
* The value of env var HOMEPAGE_FILE_XXX must be a file path, the contents
  of which will be used to replace {{HOMEPAGE_FILE_XXX}} in any config
* If a substituted value contains a variable reference it may also be
  replaced, but the behavior is non-deterministic
2023-02-23 08:50:25 -06:00
shamoon b65f6fca19 Merge pull request #1040 from jameswynn/external-services
Added "external" boolean annotation to specify external services
2023-02-22 08:27:06 -08:00
James Wynn f8f96645b0 Added "external" boolean annotation to specify external services
External services define a kubernetes service pointing to an application
hosted outside of the cluster. These services should not attempt to get
the status based on kubernetes deployments. The new boolean flag disables
this functionality. Since this is an edge case, the default value is "false".
2023-02-22 09:05:26 -06:00
Anonymous 81a2e1e692 Translated using Weblate (Czech)
Currently translated at 69.6% (250 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-02-22 06:14:06 +01:00
Chun Chi Hsieh 50a9bdbcb8 Translated using Weblate (Chinese (Traditional))
Currently translated at 98.6% (354 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-02-22 06:14:05 +01:00
shamoon 601edb8d6b Merge pull request #1033 from DanBrezeanu/877-remove-bottom-version
Configuration option for removing bottom version
2023-02-21 08:20:40 -08:00
Dan Brezeanu 9eafac346b Configuration option for removing bottom version 2023-02-21 10:11:24 +02:00
shamoon 767fc1ec39 Better handle homebridge errors 2023-02-20 17:39:16 -08:00
Tomáš Plášek 09fa08b037 Translated using Weblate (Czech)
Currently translated at 69.6% (250 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-02-21 02:07:54 +01:00
Nonoss117 fe204dd0c3 Translated using Weblate (French)
Currently translated at 100.0% (359 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-21 02:07:53 +01:00
Antonio Sanchez Castellón 93fe847667 Translated using Weblate (Spanish)
Currently translated at 100.0% (359 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-21 02:07:53 +01:00
gallegonovato f474b746d3 Translated using Weblate (Spanish)
Currently translated at 100.0% (359 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-21 02:07:52 +01:00
shamoon b69bb94253 Merge pull request #1031 from benphelps/fix-1025
Fix homebridge config UI-X API expires login with 403
2023-02-20 14:59:46 -08:00
shamoon 9df4ba0881 Fix homebridge config UI-X API expires login with 403 2023-02-20 14:58:19 -08:00
shamoon b2f26e1a43 Update status.jsx 2023-02-20 14:55:01 -08:00
Anonymous f9282180db Translated using Weblate (Thai)
Currently translated at 13.0% (47 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/th/
2023-02-20 08:36:14 +01:00
Anonymous 794fcaf3c3 Translated using Weblate (Latvian)
Currently translated at 33.1% (119 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-02-20 08:36:14 +01:00
Anonymous ea9b7de1c9 Translated using Weblate (Japanese)
Currently translated at 4.1% (15 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-02-20 08:36:14 +01:00
Anonymous aef672f1bb Translated using Weblate (Ukrainian)
Currently translated at 97.7% (351 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-20 08:36:13 +01:00
Anonymous c0ad65b3b1 Translated using Weblate (Esperanto)
Currently translated at 28.6% (103 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-02-20 08:36:12 +01:00
Anonymous 062dd5b79c Translated using Weblate (Hindi)
Currently translated at 2.5% (9 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-02-20 08:36:12 +01:00
Anonymous 085e485e7c Translated using Weblate (Malay)
Currently translated at 70.4% (253 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-02-20 08:36:12 +01:00
Anonymous c227b70f32 Translated using Weblate (Danish)
Currently translated at 55.1% (198 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-02-20 08:36:11 +01:00
Anonymous e06a992437 Translated using Weblate (Czech)
Currently translated at 62.6% (225 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-02-20 08:36:11 +01:00
Anonymous f9a96e10d6 Translated using Weblate (Arabic)
Currently translated at 72.9% (262 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-02-20 08:36:11 +01:00
Anonymous 0c52bf02eb Translated using Weblate (Serbian)
Currently translated at 2.5% (9 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-02-20 08:36:10 +01:00
Anonymous ae7a938245 Translated using Weblate (Turkish)
Currently translated at 88.3% (317 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-02-20 08:36:10 +01:00
Anonymous 1c749bf93e Translated using Weblate (Bulgarian)
Currently translated at 12.8% (46 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-02-20 08:36:09 +01:00
Anonymous 72b21b5d0e Translated using Weblate (Telugu)
Currently translated at 60.4% (217 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-02-20 08:36:09 +01:00
Anonymous 4762177ef2 Translated using Weblate (Finnish)
Currently translated at 49.5% (178 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-02-20 08:36:09 +01:00
Anonymous 418578c795 Translated using Weblate (Yue)
Currently translated at 32.8% (118 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-02-20 08:36:08 +01:00
Anonymous d2335eb4cc Translated using Weblate (Portuguese (Brazil))
Currently translated at 48.1% (173 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-02-20 08:36:08 +01:00
Anonymous 520965c7fd Translated using Weblate (Romanian)
Currently translated at 38.1% (137 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-02-20 08:36:08 +01:00
Anonymous 7b36e071ea Translated using Weblate (Hebrew)
Currently translated at 28.1% (101 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-02-20 08:36:07 +01:00
Anonymous 3ea68caf53 Translated using Weblate (Hungarian)
Currently translated at 30.0% (108 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-02-20 08:36:07 +01:00
Anonymous e36ab158f7 Translated using Weblate (Croatian)
Currently translated at 79.6% (286 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-02-20 08:36:07 +01:00
Anonymous b5dedbdbf1 Translated using Weblate (Swedish)
Currently translated at 36.7% (132 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-02-20 08:36:06 +01:00
Anonymous abc44e3fe1 Translated using Weblate (Polish)
Currently translated at 79.3% (285 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-02-20 08:36:06 +01:00
Anonymous 32aeae0c41 Translated using Weblate (Catalan)
Currently translated at 71.8% (258 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-02-20 08:36:05 +01:00
Anonymous b0c443f982 Translated using Weblate (Chinese (Traditional))
Currently translated at 87.4% (314 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-02-20 08:36:05 +01:00
Anonymous 890b9a97cb Translated using Weblate (Dutch)
Currently translated at 24.5% (88 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-02-20 08:36:05 +01:00
Anonymous 034a30a29c Translated using Weblate (Vietnamese)
Currently translated at 12.2% (44 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-02-20 08:36:04 +01:00
Anonymous b651fb84c4 Translated using Weblate (Norwegian Bokmål)
Currently translated at 22.0% (79 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-02-20 08:36:04 +01:00
Anonymous 4354698b15 Translated using Weblate (Italian)
Currently translated at 80.2% (288 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-02-20 08:36:04 +01:00
Anonymous 01210bcbc9 Translated using Weblate (Chinese (Simplified))
Currently translated at 92.2% (331 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-20 08:36:03 +01:00
Anonymous 810bae42fc Translated using Weblate (Russian)
Currently translated at 13.3% (48 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-02-20 08:36:03 +01:00
Anonymous bfb8b703dc Translated using Weblate (Portuguese)
Currently translated at 71.3% (256 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-02-20 08:36:03 +01:00
Anonymous 2ab980e658 Translated using Weblate (French)
Currently translated at 97.7% (351 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-20 08:36:02 +01:00
Anonymous 509a4e5460 Translated using Weblate (Spanish)
Currently translated at 97.7% (351 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-20 08:36:02 +01:00
Anonymous 030aec3908 Translated using Weblate (German)
Currently translated at 63.5% (228 of 359 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-02-20 08:36:02 +01:00
Dan 26e4216780 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (351 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-20 08:35:07 +01:00
Nonoss117 08d7636165 Translated using Weblate (French)
Currently translated at 100.0% (351 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-20 08:35:07 +01:00
gallegonovato 9fcc6cae36 Translated using Weblate (Spanish)
Currently translated at 100.0% (351 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-20 08:35:07 +01:00
shamoon 893c443f21 Merge pull request #1023 from rommelkott/main
Add Health checks widget
2023-02-19 23:35:01 -08:00
shamoon 594f47fa68 Rework healthchecks date formatting 2023-02-19 23:32:53 -08:00
Rommel Kott 5def5dd508 Add healthcheck widget 2023-02-19 23:31:33 -08:00
shamoon 0e2b474540 Merge pull request #1022 from danroc/main
Fix: Correct flood + transmission rate units
2023-02-19 18:43:42 -08:00
shamoon 4855aa762f correct transmission rate units 2023-02-19 07:46:51 -08:00
Daniel Rocha 96507e4eba Use byterate for flood 2023-02-19 07:46:51 -08:00
shamoon 08f56b54f5 Update component.jsx 2023-02-19 06:25:07 -08:00
shamoon 9662c29374 Update PULL_REQUEST_TEMPLATE.md 2023-02-18 23:17:07 -08:00
shamoon 14e1a9a4ed limit widgets > 4 blocks 2023-02-18 22:58:55 -08:00
Jason Fischer 45946ddfe1 Merge pull request #963 from benphelps/fix-settings-after-container-update
Fix settings after container update
2023-02-18 22:56:53 -08:00
shamoon 651b8d8ef7 Update PULL_REQUEST_TEMPLATE.md 2023-02-18 22:50:38 -08:00
shamoon 8e53dff5dc Create PULL_REQUEST_TEMPLATE.md 2023-02-18 22:44:37 -08:00
Anonymous c84a75ce77 Translated using Weblate (Thai)
Currently translated at 13.3% (47 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/th/
2023-02-19 07:22:26 +01:00
Anonymous 21106e4bbd Translated using Weblate (Latvian)
Currently translated at 33.9% (119 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-02-19 07:22:26 +01:00
Anonymous af6f867e41 Translated using Weblate (Japanese)
Currently translated at 4.2% (15 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-02-19 07:22:26 +01:00
Anonymous deaa4e5a13 Translated using Weblate (Ukrainian)
Currently translated at 96.5% (339 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-19 07:22:25 +01:00
Anonymous fff96b6ab7 Translated using Weblate (Esperanto)
Currently translated at 29.3% (103 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-02-19 07:22:25 +01:00
Anonymous 7648f2d409 Translated using Weblate (Hindi)
Currently translated at 2.5% (9 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-02-19 07:22:24 +01:00
Anonymous 6461578fc5 Translated using Weblate (Malay)
Currently translated at 72.0% (253 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-02-19 07:22:24 +01:00
Anonymous 9d97b6e231 Translated using Weblate (Danish)
Currently translated at 56.4% (198 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-02-19 07:22:24 +01:00
Anonymous 71109db50f Translated using Weblate (Czech)
Currently translated at 64.1% (225 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-02-19 07:22:23 +01:00
Anonymous f7294131b7 Translated using Weblate (Arabic)
Currently translated at 74.6% (262 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-02-19 07:22:23 +01:00
Anonymous 271aee139e Translated using Weblate (Serbian)
Currently translated at 2.5% (9 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-02-19 07:22:23 +01:00
Anonymous 3d9e739cb4 Translated using Weblate (Turkish)
Currently translated at 90.3% (317 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-02-19 07:22:22 +01:00
Anonymous ada39bb876 Translated using Weblate (Bulgarian)
Currently translated at 13.1% (46 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-02-19 07:22:22 +01:00
Anonymous 160b936206 Translated using Weblate (Telugu)
Currently translated at 61.8% (217 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-02-19 07:22:21 +01:00
Anonymous 5874598a36 Translated using Weblate (Finnish)
Currently translated at 50.7% (178 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-02-19 07:22:21 +01:00
Anonymous 938d03e4ba Translated using Weblate (Yue)
Currently translated at 33.6% (118 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-02-19 07:22:21 +01:00
Anonymous 4314013b2e Translated using Weblate (Portuguese (Brazil))
Currently translated at 49.2% (173 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-02-19 07:22:20 +01:00
Anonymous acfeaae8c6 Translated using Weblate (Romanian)
Currently translated at 39.0% (137 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-02-19 07:22:20 +01:00
Anonymous b70fa0e844 Translated using Weblate (Hebrew)
Currently translated at 28.7% (101 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-02-19 07:22:20 +01:00
Anonymous b7dcd3e9cd Translated using Weblate (Hungarian)
Currently translated at 30.7% (108 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-02-19 07:22:19 +01:00
Anonymous f697c9b9dd Translated using Weblate (Croatian)
Currently translated at 81.4% (286 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-02-19 07:22:19 +01:00
Anonymous 06fa779966 Translated using Weblate (Swedish)
Currently translated at 37.6% (132 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-02-19 07:22:19 +01:00
Anonymous 6eefa34741 Translated using Weblate (Polish)
Currently translated at 81.1% (285 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-02-19 07:22:18 +01:00
Anonymous 4bd2fda6ae Translated using Weblate (Catalan)
Currently translated at 73.5% (258 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-02-19 07:22:18 +01:00
Anonymous ec701d9fd7 Translated using Weblate (Chinese (Traditional))
Currently translated at 89.4% (314 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-02-19 07:22:17 +01:00
Anonymous 6476094ce4 Translated using Weblate (Dutch)
Currently translated at 25.0% (88 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-02-19 07:22:17 +01:00
Anonymous 57940c1519 Translated using Weblate (Vietnamese)
Currently translated at 12.5% (44 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-02-19 07:22:17 +01:00
Anonymous 4b494efcd1 Translated using Weblate (Norwegian Bokmål)
Currently translated at 22.5% (79 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-02-19 07:22:16 +01:00
Anonymous bb8796000c Translated using Weblate (Italian)
Currently translated at 82.0% (288 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-02-19 07:22:16 +01:00
Anonymous e49478085c Translated using Weblate (Chinese (Simplified))
Currently translated at 94.3% (331 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-19 07:22:16 +01:00
Anonymous db5a7beb57 Translated using Weblate (Russian)
Currently translated at 13.6% (48 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-02-19 07:22:15 +01:00
Anonymous 0b7b1c4c9e Translated using Weblate (Portuguese)
Currently translated at 72.9% (256 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-02-19 07:22:15 +01:00
Anonymous 4a85caca50 Translated using Weblate (French)
Currently translated at 97.7% (343 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-19 07:22:15 +01:00
Anonymous 410054347d Translated using Weblate (Spanish)
Currently translated at 97.7% (343 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-19 07:22:14 +01:00
Anonymous 05b056d18e Translated using Weblate (German)
Currently translated at 64.9% (228 of 351 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-02-19 07:22:14 +01:00
shamoon 080d684089 Merge pull request #807 from JeffResc/unmanic
Add Unmanic service widget
2023-02-18 22:21:42 -08:00
shamoon 0666268d91 unmanic use generic proxy 2023-02-18 22:21:32 -08:00
Jeff Rescignano b45d6240ae Add Unmanic service widget 2023-02-18 22:19:45 -08:00
shamoon e35a66d3f1 Suppory body in widget endpoint mappings 2023-02-18 22:18:27 -08:00
Anonymous 2367564041 Translated using Weblate (Thai)
Currently translated at 13.5% (47 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/th/
2023-02-18 22:58:54 +01:00
Anonymous 0223e8828f Translated using Weblate (Latvian)
Currently translated at 34.1% (119 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-02-18 22:58:54 +01:00
Anonymous 408533ee24 Translated using Weblate (Japanese)
Currently translated at 4.3% (15 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-02-18 22:58:53 +01:00
Anonymous 0c745d6d58 Translated using Weblate (Ukrainian)
Currently translated at 97.4% (339 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-18 22:58:53 +01:00
Anonymous 35cbe9e69b Translated using Weblate (Esperanto)
Currently translated at 29.5% (103 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-02-18 22:58:52 +01:00
Anonymous 91511edcfb Translated using Weblate (Hindi)
Currently translated at 2.5% (9 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-02-18 22:58:52 +01:00
Anonymous df8cf8cb20 Translated using Weblate (Malay)
Currently translated at 72.7% (253 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-02-18 22:58:52 +01:00
Anonymous 8c1b95cb0a Translated using Weblate (Danish)
Currently translated at 56.8% (198 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-02-18 22:58:51 +01:00
Anonymous 264f2fb84b Translated using Weblate (Czech)
Currently translated at 64.6% (225 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-02-18 22:58:51 +01:00
Anonymous 13fe3f6e73 Translated using Weblate (Arabic)
Currently translated at 75.2% (262 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-02-18 22:58:50 +01:00
Anonymous c7a927fe7d Translated using Weblate (Serbian)
Currently translated at 2.5% (9 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-02-18 22:58:50 +01:00
Anonymous 446d06b538 Translated using Weblate (Turkish)
Currently translated at 91.0% (317 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-02-18 22:58:50 +01:00
Anonymous a2d88bd30f Translated using Weblate (Bulgarian)
Currently translated at 13.2% (46 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-02-18 22:58:49 +01:00
Anonymous bbde2876e2 Translated using Weblate (Telugu)
Currently translated at 62.3% (217 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-02-18 22:58:49 +01:00
Anonymous 161dcf70ab Translated using Weblate (Finnish)
Currently translated at 51.1% (178 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-02-18 22:58:48 +01:00
Anonymous 1544d6cb37 Translated using Weblate (Yue)
Currently translated at 33.9% (118 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-02-18 22:58:48 +01:00
Anonymous b6b716c95f Translated using Weblate (Portuguese (Brazil))
Currently translated at 49.7% (173 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-02-18 22:58:47 +01:00
Anonymous f0b32e7d14 Translated using Weblate (Romanian)
Currently translated at 39.3% (137 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-02-18 22:58:47 +01:00
Anonymous 27eb036996 Translated using Weblate (Hebrew)
Currently translated at 29.0% (101 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-02-18 22:58:46 +01:00
Anonymous 65cee0ec2b Translated using Weblate (Hungarian)
Currently translated at 31.0% (108 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-02-18 22:58:46 +01:00
Anonymous 735cf18dd8 Translated using Weblate (Croatian)
Currently translated at 82.1% (286 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-02-18 22:58:46 +01:00
Anonymous a4a0d293cd Translated using Weblate (Swedish)
Currently translated at 37.9% (132 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-02-18 22:58:45 +01:00
Anonymous bcc7852e25 Translated using Weblate (Polish)
Currently translated at 81.8% (285 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-02-18 22:58:45 +01:00
Anonymous 724fc07610 Translated using Weblate (Catalan)
Currently translated at 74.1% (258 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-02-18 22:58:44 +01:00
Anonymous 2f0cf218fc Translated using Weblate (Chinese (Traditional))
Currently translated at 90.2% (314 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-02-18 22:58:44 +01:00
Anonymous 534b28259f Translated using Weblate (Dutch)
Currently translated at 25.2% (88 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-02-18 22:58:44 +01:00
Anonymous 61db2fd57d Translated using Weblate (Vietnamese)
Currently translated at 12.6% (44 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-02-18 22:58:43 +01:00
Anonymous 0a926a322a Translated using Weblate (Norwegian Bokmål)
Currently translated at 22.7% (79 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-02-18 22:58:43 +01:00
Anonymous 386df61ed7 Translated using Weblate (Italian)
Currently translated at 82.7% (288 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-02-18 22:58:42 +01:00
Anonymous 467f42e0f6 Translated using Weblate (Chinese (Simplified))
Currently translated at 95.1% (331 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-18 22:58:42 +01:00
Anonymous 5dd4df8a05 Translated using Weblate (Russian)
Currently translated at 13.7% (48 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-02-18 22:58:42 +01:00
Anonymous 0a4116425b Translated using Weblate (Portuguese)
Currently translated at 73.5% (256 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-02-18 22:58:41 +01:00
Anonymous e26e7f8559 Translated using Weblate (French)
Currently translated at 98.5% (343 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-18 22:58:41 +01:00
Anonymous 0b30764b89 Translated using Weblate (Spanish)
Currently translated at 98.5% (343 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-18 22:58:41 +01:00
Anonymous 97669a98a9 Translated using Weblate (German)
Currently translated at 65.5% (228 of 348 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-02-18 22:58:40 +01:00
Mbarmemandshamoon addf0911a0 Add Kopia widget (#1018)
* Add Kopia widget

* Add Kopia widget

* Modify Kopia widget blocks

* Kopia next run / last run

---------

Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
2023-02-18 13:58:01 -08:00
Nonoss117 806b7f3cab Translated using Weblate (French)
Currently translated at 100.0% (343 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-18 12:37:10 +01:00
gallegonovato 9b037ce349 Translated using Weblate (Spanish)
Currently translated at 100.0% (343 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-18 12:37:09 +01:00
shamoon 79d199b321 Merge pull request #1019 from benphelps/issue-1007
Fix: pass csrf token for unifi login
2023-02-17 14:12:07 -08:00
shamoon 5289476937 Pass csrf token for unifi login 2023-02-16 22:45:11 -08:00
Anonymous 08f5cd8ef2 Translated using Weblate (Thai)
Currently translated at 13.7% (47 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/th/
2023-02-17 07:06:41 +01:00
Anonymous 7634e41652 Translated using Weblate (Latvian)
Currently translated at 34.6% (119 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-02-17 07:06:40 +01:00
Anonymous 321c7c95f8 Translated using Weblate (Japanese)
Currently translated at 4.3% (15 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-02-17 07:06:40 +01:00
Anonymous 5697037550 Translated using Weblate (Ukrainian)
Currently translated at 98.8% (339 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-17 07:06:40 +01:00
Anonymous bb43d30d81 Translated using Weblate (Esperanto)
Currently translated at 30.0% (103 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-02-17 07:06:39 +01:00
Anonymous 7f0db24203 Translated using Weblate (Hindi)
Currently translated at 2.6% (9 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-02-17 07:06:39 +01:00
Anonymous 89699cabb1 Translated using Weblate (Malay)
Currently translated at 73.7% (253 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-02-17 07:06:38 +01:00
Anonymous 5e51a16959 Translated using Weblate (Danish)
Currently translated at 57.7% (198 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-02-17 07:06:38 +01:00
Anonymous babc73c74e Translated using Weblate (Czech)
Currently translated at 65.5% (225 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-02-17 07:06:38 +01:00
Anonymous a8391db069 Translated using Weblate (Arabic)
Currently translated at 76.3% (262 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-02-17 07:06:37 +01:00
Anonymous e9b8b50b24 Translated using Weblate (Serbian)
Currently translated at 2.6% (9 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-02-17 07:06:37 +01:00
Anonymous d52d31a2bd Translated using Weblate (Turkish)
Currently translated at 92.4% (317 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-02-17 07:06:37 +01:00
Anonymous 890d392b29 Translated using Weblate (Bulgarian)
Currently translated at 13.4% (46 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-02-17 07:06:36 +01:00
Anonymous 77b5879602 Translated using Weblate (Telugu)
Currently translated at 63.2% (217 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-02-17 07:06:36 +01:00
Anonymous 1b643d8572 Translated using Weblate (Finnish)
Currently translated at 51.8% (178 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-02-17 07:06:35 +01:00
Anonymous d7544e9b9f Translated using Weblate (Yue)
Currently translated at 34.4% (118 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-02-17 07:06:35 +01:00
Anonymous 1c71b8872f Translated using Weblate (Portuguese (Brazil))
Currently translated at 50.4% (173 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-02-17 07:06:35 +01:00
Anonymous c1865592de Translated using Weblate (Romanian)
Currently translated at 39.9% (137 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-02-17 07:06:34 +01:00
Anonymous 6d3dc81692 Translated using Weblate (Hebrew)
Currently translated at 29.4% (101 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-02-17 07:06:34 +01:00
Anonymous 95caacce41 Translated using Weblate (Hungarian)
Currently translated at 31.4% (108 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-02-17 07:06:33 +01:00
Anonymous caf2d2c63b Translated using Weblate (Croatian)
Currently translated at 83.3% (286 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-02-17 07:06:33 +01:00
Anonymous 7bed5604ca Translated using Weblate (Swedish)
Currently translated at 38.4% (132 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-02-17 07:06:33 +01:00
Anonymous 5ff206565c Translated using Weblate (Polish)
Currently translated at 83.0% (285 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-02-17 07:06:32 +01:00
Anonymous 976bcdd794 Translated using Weblate (Catalan)
Currently translated at 75.2% (258 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-02-17 07:06:32 +01:00
Anonymous bdbd570fbc Translated using Weblate (Chinese (Traditional))
Currently translated at 91.5% (314 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-02-17 07:06:31 +01:00
Anonymous 1fdcc95ab1 Translated using Weblate (Dutch)
Currently translated at 25.6% (88 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-02-17 07:06:31 +01:00
Anonymous b0113908a6 Translated using Weblate (Vietnamese)
Currently translated at 12.8% (44 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-02-17 07:06:31 +01:00
Anonymous b9c823decb Translated using Weblate (Norwegian Bokmål)
Currently translated at 23.0% (79 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-02-17 07:06:30 +01:00
Anonymous a23ec1d4f3 Translated using Weblate (Italian)
Currently translated at 83.9% (288 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-02-17 07:06:30 +01:00
Anonymous 58b3706d5d Translated using Weblate (Chinese (Simplified))
Currently translated at 96.5% (331 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-17 07:06:30 +01:00
Anonymous 4d1c01b9f9 Translated using Weblate (Russian)
Currently translated at 13.9% (48 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-02-17 07:06:29 +01:00
Anonymous edb94b7499 Translated using Weblate (Portuguese)
Currently translated at 74.6% (256 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-02-17 07:06:29 +01:00
Anonymous dd43b02e92 Translated using Weblate (French)
Currently translated at 98.8% (339 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-17 07:06:28 +01:00
Anonymous daaeedf3e5 Translated using Weblate (Spanish)
Currently translated at 98.8% (339 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-17 07:06:28 +01:00
Anonymous 10f7d9cbfe Translated using Weblate (German)
Currently translated at 66.4% (228 of 343 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-02-17 07:06:28 +01:00
shamoon 21a4751289 Merge pull request #1010 from Mbarmem/main
Add Nextcloud widget
2023-02-16 22:05:51 -08:00
shamoon ad6eeaaf75 Remove nextcloud shares block 2023-02-16 22:05:32 -08:00
Dan 5d5ddfec1b Translated using Weblate (Ukrainian)
Currently translated at 100.0% (339 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-16 12:36:36 +01:00
Nonoss117 3d3dcd2a63 Translated using Weblate (French)
Currently translated at 100.0% (339 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-16 12:36:35 +01:00
gallegonovato ede631e487 Translated using Weblate (Spanish)
Currently translated at 100.0% (339 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-16 12:36:35 +01:00
Mbarmem ed96c46fa5 Add Nextcloud widget 2023-02-16 11:30:05 +03:00
shamoon 5a8b1b587b Merge pull request #1008 from benphelps/fix-1001
Feature: strip sensitive information contained in URLs from frontend API calls
2023-02-15 15:31:53 -08:00
shamoon e1176e9e3b Strip sensitive information contained in URLs from frontend API calls 2023-02-15 14:46:31 -08:00
shamoon a25606cfe9 Merge pull request #994 from benphelps/fix-970
Fix: improve swarm status for replicated services & prefer stats for local containers
2023-02-14 10:41:49 -08:00
shamoonandRaphaël Catarino ae7a77d247 Use replica count for swarm status
Co-Authored-By: Raphaël Catarino <raphcatarino@gmail.com>
2023-02-14 10:41:12 -08:00
Anonymous be51be60a2 Translated using Weblate (Thai)
Currently translated at 13.8% (47 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/th/
2023-02-14 19:33:04 +01:00
Anonymous 07f7025dde Translated using Weblate (Latvian)
Currently translated at 35.1% (119 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-02-14 19:33:03 +01:00
Anonymous bd62195c60 Translated using Weblate (Japanese)
Currently translated at 4.4% (15 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-02-14 19:33:03 +01:00
Anonymous 2af8f5f36b Translated using Weblate (Ukrainian)
Currently translated at 97.6% (331 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-14 19:33:02 +01:00
Anonymous 52ab10a17b Translated using Weblate (Esperanto)
Currently translated at 30.3% (103 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-02-14 19:33:02 +01:00
Anonymous 6cec2f0d0d Translated using Weblate (Hindi)
Currently translated at 2.6% (9 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-02-14 19:33:02 +01:00
Anonymous d953b52938 Translated using Weblate (Malay)
Currently translated at 74.6% (253 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-02-14 19:33:01 +01:00
Anonymous 7d43d23d84 Translated using Weblate (Danish)
Currently translated at 58.4% (198 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-02-14 19:33:01 +01:00
Anonymous 34653dd286 Translated using Weblate (Czech)
Currently translated at 66.3% (225 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-02-14 19:33:00 +01:00
Anonymous 3d0a53f4ae Translated using Weblate (Arabic)
Currently translated at 77.2% (262 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-02-14 19:33:00 +01:00
Anonymous f704acc3b1 Translated using Weblate (Serbian)
Currently translated at 2.6% (9 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-02-14 19:32:59 +01:00
Anonymous db4d812a12 Translated using Weblate (Turkish)
Currently translated at 93.5% (317 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-02-14 19:32:59 +01:00
Anonymous e8fcb8add2 Translated using Weblate (Bulgarian)
Currently translated at 13.5% (46 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-02-14 19:32:58 +01:00
Anonymous 54bfecd59a Translated using Weblate (Telugu)
Currently translated at 64.0% (217 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-02-14 19:32:58 +01:00
Anonymous 5bf2b816c8 Translated using Weblate (Finnish)
Currently translated at 52.5% (178 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-02-14 19:32:58 +01:00
Anonymous 8cfa880f5c Translated using Weblate (Yue)
Currently translated at 34.8% (118 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-02-14 19:32:57 +01:00
Anonymous 30af03a7ce Translated using Weblate (Portuguese (Brazil))
Currently translated at 51.0% (173 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-02-14 19:32:57 +01:00
Anonymous 6aaf82418e Translated using Weblate (Romanian)
Currently translated at 40.4% (137 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-02-14 19:32:56 +01:00
Anonymous d4b46eb18c Translated using Weblate (Hebrew)
Currently translated at 29.7% (101 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-02-14 19:32:56 +01:00
Anonymous a5a0a0c510 Translated using Weblate (Hungarian)
Currently translated at 31.8% (108 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-02-14 19:32:56 +01:00
Anonymous 613e40a900 Translated using Weblate (Croatian)
Currently translated at 84.3% (286 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-02-14 19:32:55 +01:00
Anonymous 248b5759a0 Translated using Weblate (Swedish)
Currently translated at 38.9% (132 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-02-14 19:32:55 +01:00
Anonymous 5c35aee418 Translated using Weblate (Polish)
Currently translated at 84.0% (285 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-02-14 19:32:54 +01:00
Anonymous 2f9cf474dd Translated using Weblate (Catalan)
Currently translated at 76.1% (258 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-02-14 19:32:54 +01:00
Anonymous 378be50c35 Translated using Weblate (Chinese (Traditional))
Currently translated at 92.6% (314 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-02-14 19:32:53 +01:00
Anonymous 49c55e04e9 Translated using Weblate (Dutch)
Currently translated at 25.9% (88 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-02-14 19:32:53 +01:00
Anonymous c1250d0ab6 Translated using Weblate (Vietnamese)
Currently translated at 12.9% (44 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-02-14 19:32:53 +01:00
Anonymous b7e9a69345 Translated using Weblate (Norwegian Bokmål)
Currently translated at 23.3% (79 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-02-14 19:32:52 +01:00
Anonymous 1210add0ff Translated using Weblate (Italian)
Currently translated at 84.9% (288 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-02-14 19:32:52 +01:00
Anonymous e235790d68 Translated using Weblate (Chinese (Simplified))
Currently translated at 97.6% (331 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-14 19:32:51 +01:00
Anonymous 31a6408583 Translated using Weblate (Russian)
Currently translated at 14.1% (48 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-02-14 19:32:51 +01:00
Anonymous 0a5276b12d Translated using Weblate (Portuguese)
Currently translated at 75.5% (256 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-02-14 19:32:51 +01:00
Anonymous d440126c45 Translated using Weblate (French)
Currently translated at 98.8% (335 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-14 19:32:50 +01:00
Anonymous 6a3f096d44 Translated using Weblate (Spanish)
Currently translated at 98.8% (335 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-14 19:32:50 +01:00
Anonymous 1b5f7ac3e2 Translated using Weblate (German)
Currently translated at 67.2% (228 of 339 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-02-14 19:32:49 +01:00
Nonoss117 e56d29febb Translated using Weblate (French)
Currently translated at 100.0% (335 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-14 19:32:13 +01:00
gallegonovato 610ad9819a Translated using Weblate (Spanish)
Currently translated at 100.0% (335 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-14 19:32:13 +01:00
shamoon 2c6b2a1474 Merge pull request #999 from benphelps/add-grafana-widget
Add grafana widget
2023-02-14 10:32:07 -08:00
shamoon 460983b741 Add grafana stats 2023-02-14 10:30:05 -08:00
shamoon c1f22b3e2c Cleanup grafana widget + fix labels 2023-02-14 10:30:05 -08:00
Mbarmem cd7d7ba729 Add Grafana widget 2023-02-14 10:30:05 -08:00
shamoon f74275293a Prefer swarm task containers locally for status / stats 2023-02-14 10:09:12 -08:00
Anonymous 8a6343dee7 Translated using Weblate (Thai)
Currently translated at 14.0% (47 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/th/
2023-02-14 05:23:13 +01:00
Anonymous d7671149b7 Translated using Weblate (Latvian)
Currently translated at 35.5% (119 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-02-14 05:23:13 +01:00
Anonymous db2063a3ee Translated using Weblate (Japanese)
Currently translated at 4.4% (15 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-02-14 05:23:12 +01:00
Anonymous ed2e15f8c3 Translated using Weblate (Ukrainian)
Currently translated at 98.8% (331 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-14 05:23:12 +01:00
Anonymous 69640fea19 Translated using Weblate (Esperanto)
Currently translated at 30.7% (103 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-02-14 05:23:12 +01:00
Anonymous 7b6a0aa86f Translated using Weblate (Hindi)
Currently translated at 2.6% (9 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-02-14 05:23:11 +01:00
Anonymous aa3d3ff208 Translated using Weblate (Malay)
Currently translated at 75.5% (253 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-02-14 05:23:11 +01:00
Anonymous a8c3ecb00c Translated using Weblate (Danish)
Currently translated at 59.1% (198 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-02-14 05:23:10 +01:00
Anonymous 35b533b3f0 Translated using Weblate (Czech)
Currently translated at 67.1% (225 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-02-14 05:23:10 +01:00
Anonymous e433c195e8 Translated using Weblate (Arabic)
Currently translated at 78.2% (262 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-02-14 05:23:10 +01:00
Anonymous c799f1207f Translated using Weblate (Serbian)
Currently translated at 2.6% (9 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-02-14 05:23:09 +01:00
Anonymous ab7a73dae6 Translated using Weblate (Turkish)
Currently translated at 94.6% (317 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-02-14 05:23:09 +01:00
Anonymous 8ec4291753 Translated using Weblate (Bulgarian)
Currently translated at 13.7% (46 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-02-14 05:23:08 +01:00
Anonymous d5c99a9582 Translated using Weblate (Telugu)
Currently translated at 64.7% (217 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-02-14 05:23:08 +01:00
Anonymous e729a75975 Translated using Weblate (Finnish)
Currently translated at 53.1% (178 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-02-14 05:23:07 +01:00
Anonymous 55f3a68b5f Translated using Weblate (Yue)
Currently translated at 35.2% (118 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-02-14 05:23:07 +01:00
Anonymous 33a3d9bcff Translated using Weblate (Portuguese (Brazil))
Currently translated at 51.6% (173 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-02-14 05:23:07 +01:00
Anonymous b5e8284d7f Translated using Weblate (Romanian)
Currently translated at 40.8% (137 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-02-14 05:23:06 +01:00
Anonymous 1497e4dbd5 Translated using Weblate (Hebrew)
Currently translated at 30.1% (101 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-02-14 05:23:06 +01:00
Anonymous 615a0c419c Translated using Weblate (Hungarian)
Currently translated at 32.2% (108 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-02-14 05:23:06 +01:00
Anonymous 26b4e8adea Translated using Weblate (Croatian)
Currently translated at 85.3% (286 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-02-14 05:23:05 +01:00
Anonymous 10d5f11a9c Translated using Weblate (Swedish)
Currently translated at 39.4% (132 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-02-14 05:23:05 +01:00
Anonymous e241e4c683 Translated using Weblate (Polish)
Currently translated at 85.0% (285 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-02-14 05:23:05 +01:00
Anonymous 049dda86e3 Translated using Weblate (Catalan)
Currently translated at 77.0% (258 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-02-14 05:23:04 +01:00
Anonymous 78088afb9c Translated using Weblate (Chinese (Traditional))
Currently translated at 93.7% (314 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-02-14 05:23:04 +01:00
Anonymous 75e310c19e Translated using Weblate (Dutch)
Currently translated at 26.2% (88 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-02-14 05:23:03 +01:00
Anonymous eed83c4a98 Translated using Weblate (Vietnamese)
Currently translated at 13.1% (44 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-02-14 05:23:03 +01:00
Anonymous 9d22af1166 Translated using Weblate (Norwegian Bokmål)
Currently translated at 23.5% (79 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-02-14 05:23:03 +01:00
Anonymous 06761a38c0 Translated using Weblate (Italian)
Currently translated at 85.9% (288 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-02-14 05:23:02 +01:00
Anonymous 338d723ffd Translated using Weblate (Chinese (Simplified))
Currently translated at 98.8% (331 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-14 05:23:02 +01:00
Anonymous 5d57892db4 Translated using Weblate (Russian)
Currently translated at 14.3% (48 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-02-14 05:23:02 +01:00
Anonymous 107993821a Translated using Weblate (Portuguese)
Currently translated at 76.4% (256 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-02-14 05:23:01 +01:00
Anonymous 6f6b35d790 Translated using Weblate (French)
Currently translated at 98.8% (331 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-14 05:23:01 +01:00
Anonymous e362ed129d Translated using Weblate (Spanish)
Currently translated at 98.8% (331 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-14 05:23:01 +01:00
Anonymous 65065fed17 Translated using Weblate (German)
Currently translated at 68.0% (228 of 335 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-02-14 05:23:00 +01:00
shamoon ebe58769f6 fix fileflows widget labels 2023-02-13 20:22:15 -08:00
beucismis 2e54f586a2 Translated using Weblate (Turkish)
Currently translated at 95.7% (317 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-02-13 23:39:56 +01:00
shamoon d07b508990 Merge pull request #990 from Mbarmem/main
Add FileFlows widget
2023-02-13 00:14:00 -08:00
shamoon 598815ba5c fileflows code cleanup 2023-02-13 00:13:31 -08:00
Mbarmem 6bb94dc185 Add FileFlows widget 2023-02-13 00:13:31 -08:00
shamoon aabd05a0cb Merge pull request #988 from vorotynsky/fix-footer 2023-02-12 07:54:26 -08:00
Vorotynsky Maxim f558d27e8c Move the footer to the bottom 2023-02-12 15:32:50 +01:00
mspzyzh 220f662d10 Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (331 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-12 12:46:37 +01:00
mspzyzh 2fb33d048b Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (331 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-12 07:32:12 +01:00
mspzyzh a3d56e2d4b Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (331 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-12 07:21:51 +01:00
mspzyzh caecfaa87d Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (331 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-12 06:40:34 +01:00
mspzyzh 7cf92d5a92 Translated using Weblate (Chinese (Simplified))
Currently translated at 98.7% (327 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-12 06:14:48 +01:00
Lei Seaks b619fe95d1 Translated using Weblate (Chinese (Simplified))
Currently translated at 94.8% (314 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-11 04:23:55 +01:00
Jason Fischer e1f0e3814a Merge pull request #954 from benphelps/rewrite-rutorrent-proxy
Feat: rewrite rutorrent proxy
2023-02-09 21:00:31 -08:00
Jason Fischer 8d7f41388c Merge pull request #975 from jameswynn/kubernetes-ping
Added support for "ping" configuration in kubernetes ingress annotations
2023-02-09 20:56:23 -08:00
James Wynn b4cdb03228 Added support for "ping" configuration in kubernetes ingress annotations 2023-02-09 17:09:59 -06:00
Phongsakorn Wisetthon 0de278802b Translated using Weblate (Thai)
Currently translated at 14.1% (47 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/th/
2023-02-09 10:38:54 +01:00
zhangnew 64704a1559 Translated using Weblate (Chinese (Simplified))
Currently translated at 94.5% (313 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-09 10:38:54 +01:00
shamoon 668df2d773 Merge pull request #964 from chain710/fixsetcookie 2023-02-08 19:14:57 -08:00
shamoon 3600e5487d Apply suggestions from #964 code review 2023-02-08 08:30:53 -08:00
chain710 f109ffa9bc cookieJar.setCookieSync ignore error
cookieJar.setCookieSync crash node when error, like:
```
uncaughtException: Error: Cookie not in this host's domain. Cookie:example.com Request:127.0.0.1
```
2023-02-08 20:33:11 +08:00
shamoon 73c8ff7ee6 Use buildtime in config hash 2023-02-08 00:37:46 -08:00
shamoon 7b474d4cef Revert "Merge pull request #609 from benphelps/fix-576"
This reverts commit a7f290dfdd, reversing
changes made to cf38395100.
2023-02-08 00:19:33 -08:00
Phongsakorn Wisetthon 02b0604ad7 Translated using Weblate (Thai)
Currently translated at 9.9% (33 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/th/
2023-02-08 06:47:34 +01:00
Anonymous 845c7bbdcc Translated using Weblate (Thai)
Currently translated at 100.0% (0 of 0 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/th/
2023-02-08 06:35:55 +01:00
Dan 1d23cad458 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (331 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-08 06:35:51 +01:00
Nonoss117 babaa0705a Translated using Weblate (French)
Currently translated at 100.0% (331 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-08 06:35:50 +01:00
gallegonovato 6a8f0f7814 Translated using Weblate (Spanish)
Currently translated at 100.0% (331 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-08 06:35:50 +01:00
Phongsakorn Wisetthon 23f3a5f404 Added translation using Weblate (Thai) 2023-02-08 06:35:21 +01:00
shamoon f8a0c69e4b Merge pull request #953 from benphelps/revert-904-feat/custom-css
Revert "feat: Custom CSS"
2023-02-06 14:26:29 -08:00
shamoon b2211bcdfd rewrite rutorrent proxy 2023-02-06 14:23:30 -08:00
shamoon b9b989fd11 Revert "feat: Custom CSS" 2023-02-06 14:07:11 -08:00
Anonymous 3cbfd10df7 Translated using Weblate (Latvian)
Currently translated at 35.9% (119 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-02-06 22:58:19 +01:00
Anonymous 58fa62f926 Translated using Weblate (Japanese)
Currently translated at 4.5% (15 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-02-06 22:58:19 +01:00
Anonymous 15cd1bba5c Translated using Weblate (Ukrainian)
Currently translated at 98.7% (327 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-06 22:58:19 +01:00
Anonymous bef2da4f96 Translated using Weblate (Esperanto)
Currently translated at 31.1% (103 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-02-06 22:58:18 +01:00
Anonymous 4b1fd17e61 Translated using Weblate (Hindi)
Currently translated at 2.7% (9 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-02-06 22:58:18 +01:00
Anonymous d501904913 Translated using Weblate (Malay)
Currently translated at 76.4% (253 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-02-06 22:58:17 +01:00
Anonymous e57b5c9af9 Translated using Weblate (Danish)
Currently translated at 59.8% (198 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-02-06 22:58:17 +01:00
Anonymous 9ab9854c2c Translated using Weblate (Czech)
Currently translated at 67.9% (225 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-02-06 22:58:16 +01:00
Anonymous e195cc5276 Translated using Weblate (Arabic)
Currently translated at 79.1% (262 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-02-06 22:58:16 +01:00
Anonymous bfa1e4ca5b Translated using Weblate (Serbian)
Currently translated at 2.7% (9 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-02-06 22:58:16 +01:00
Anonymous 6041e7349f Translated using Weblate (Turkish)
Currently translated at 69.7% (231 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-02-06 22:58:15 +01:00
Anonymous eb04581a0e Translated using Weblate (Bulgarian)
Currently translated at 13.8% (46 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-02-06 22:58:15 +01:00
Anonymous b70ab6ee27 Translated using Weblate (Telugu)
Currently translated at 65.5% (217 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-02-06 22:58:14 +01:00
Anonymous 5e0dbdb9ec Translated using Weblate (Finnish)
Currently translated at 53.7% (178 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-02-06 22:58:14 +01:00
Anonymous 30cb733dc9 Translated using Weblate (Yue)
Currently translated at 35.6% (118 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-02-06 22:58:14 +01:00
Anonymous 471246a3ca Translated using Weblate (Portuguese (Brazil))
Currently translated at 52.2% (173 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-02-06 22:58:13 +01:00
Anonymous b99fa9e140 Translated using Weblate (Romanian)
Currently translated at 41.3% (137 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-02-06 22:58:13 +01:00
Anonymous eb6ac8f18d Translated using Weblate (Hebrew)
Currently translated at 30.5% (101 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-02-06 22:58:12 +01:00
Anonymous e4a980a222 Translated using Weblate (Hungarian)
Currently translated at 32.6% (108 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-02-06 22:58:12 +01:00
Anonymous 3f608e52b5 Translated using Weblate (Croatian)
Currently translated at 86.4% (286 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-02-06 22:58:12 +01:00
Anonymous 8749c655d5 Translated using Weblate (Swedish)
Currently translated at 39.8% (132 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-02-06 22:58:11 +01:00
Anonymous 67ff299e1c Translated using Weblate (Polish)
Currently translated at 86.1% (285 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-02-06 22:58:11 +01:00
Anonymous ada3c9df0d Translated using Weblate (Catalan)
Currently translated at 77.9% (258 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-02-06 22:58:11 +01:00
Anonymous f385c9ea9f Translated using Weblate (Chinese (Traditional))
Currently translated at 94.8% (314 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-02-06 22:58:10 +01:00
Anonymous 608dcb05fc Translated using Weblate (Dutch)
Currently translated at 26.5% (88 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-02-06 22:58:10 +01:00
Anonymous 5a65b5a052 Translated using Weblate (Vietnamese)
Currently translated at 13.2% (44 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-02-06 22:58:09 +01:00
Anonymous 4dfa04251c Translated using Weblate (Norwegian Bokmål)
Currently translated at 23.8% (79 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-02-06 22:58:09 +01:00
Anonymous 393602eff7 Translated using Weblate (Italian)
Currently translated at 87.0% (288 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-02-06 22:58:09 +01:00
Anonymous 1ec665ecf7 Translated using Weblate (Chinese (Simplified))
Currently translated at 94.2% (312 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-06 22:58:08 +01:00
Anonymous 33c0d917fb Translated using Weblate (Russian)
Currently translated at 14.5% (48 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-02-06 22:58:08 +01:00
Anonymous 165592b9be Translated using Weblate (Portuguese)
Currently translated at 77.3% (256 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-02-06 22:58:08 +01:00
Anonymous 00bd1eee9a Translated using Weblate (French)
Currently translated at 98.7% (327 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-06 22:58:07 +01:00
Anonymous 3591e46f0f Translated using Weblate (Spanish)
Currently translated at 98.7% (327 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-06 22:58:07 +01:00
Anonymous fdbd5506a1 Translated using Weblate (German)
Currently translated at 68.8% (228 of 331 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-02-06 22:58:06 +01:00
Dan 995ad4b59a Translated using Weblate (Ukrainian)
Currently translated at 100.0% (327 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-06 22:56:44 +01:00
Nonoss117 c598fefde8 Translated using Weblate (French)
Currently translated at 100.0% (327 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-06 22:56:44 +01:00
gallegonovato d8baad453f Translated using Weblate (Spanish)
Currently translated at 100.0% (327 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-06 22:56:44 +01:00
Jason Fischer a5747c34b8 Merge pull request #866 from Oupsman/synologywidget
Add Synology Diskstation widget & consolidate Synology proxies
2023-02-06 13:56:35 -08:00
Jason Fischer 153dcf398e Merge main 2023-02-06 13:45:56 -08:00
Jason Fischer f53f975669 Settle on four fields with free size displayed as Available 2023-02-06 13:43:40 -08:00
shamoon 10097ab4fc lint photoprism 2023-02-05 22:14:54 -08:00
Anonymous 95b416c243 Translated using Weblate (Latvian)
Currently translated at 36.3% (119 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-02-06 07:13:16 +01:00
Anonymous 3f0dcaff68 Translated using Weblate (Japanese)
Currently translated at 4.5% (15 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-02-06 07:13:16 +01:00
Anonymous 2da96f8610 Translated using Weblate (Ukrainian)
Currently translated at 97.8% (320 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-06 07:13:15 +01:00
Anonymous 2f2efb224f Translated using Weblate (Esperanto)
Currently translated at 31.4% (103 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-02-06 07:13:15 +01:00
Anonymous 120566e22a Translated using Weblate (Hindi)
Currently translated at 2.7% (9 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-02-06 07:13:15 +01:00
Anonymous a035ff2181 Translated using Weblate (Malay)
Currently translated at 77.3% (253 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-02-06 07:13:14 +01:00
Anonymous 7c31c891a5 Translated using Weblate (Danish)
Currently translated at 60.5% (198 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-02-06 07:13:14 +01:00
Anonymous 1c4814f7bf Translated using Weblate (Czech)
Currently translated at 68.8% (225 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-02-06 07:13:13 +01:00
Anonymous 20a78af1f6 Translated using Weblate (Arabic)
Currently translated at 80.1% (262 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-02-06 07:13:13 +01:00
Anonymous 1ef7cb90e8 Translated using Weblate (Serbian)
Currently translated at 2.7% (9 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-02-06 07:13:13 +01:00
Anonymous 773b8ba7f4 Translated using Weblate (Turkish)
Currently translated at 70.6% (231 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-02-06 07:13:12 +01:00
Anonymous 19d329c53f Translated using Weblate (Bulgarian)
Currently translated at 14.0% (46 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-02-06 07:13:12 +01:00
Anonymous 14044aa64e Translated using Weblate (Telugu)
Currently translated at 66.3% (217 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-02-06 07:13:12 +01:00
Anonymous 73cc4f9b5f Translated using Weblate (Finnish)
Currently translated at 54.4% (178 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-02-06 07:13:11 +01:00
Anonymous ba53edd1b7 Translated using Weblate (Yue)
Currently translated at 36.0% (118 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-02-06 07:13:11 +01:00
Anonymous 9f4965141d Translated using Weblate (Portuguese (Brazil))
Currently translated at 52.9% (173 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-02-06 07:13:11 +01:00
Anonymous 4af9a611a3 Translated using Weblate (Romanian)
Currently translated at 41.8% (137 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-02-06 07:13:10 +01:00
Anonymous d51fbc5f6d Translated using Weblate (Hebrew)
Currently translated at 30.8% (101 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-02-06 07:13:10 +01:00
Anonymous 409e481b8c Translated using Weblate (Hungarian)
Currently translated at 33.0% (108 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-02-06 07:13:10 +01:00
Anonymous cf54837d05 Translated using Weblate (Croatian)
Currently translated at 87.4% (286 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-02-06 07:13:09 +01:00
Anonymous 292f7a64d8 Translated using Weblate (Swedish)
Currently translated at 40.3% (132 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-02-06 07:13:09 +01:00
Anonymous 4dfb1a1c5e Translated using Weblate (Polish)
Currently translated at 87.1% (285 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-02-06 07:13:09 +01:00
Anonymous 098eec96e2 Translated using Weblate (Catalan)
Currently translated at 78.8% (258 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-02-06 07:13:08 +01:00
Anonymous 80834b6f30 Translated using Weblate (Chinese (Traditional))
Currently translated at 96.0% (314 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-02-06 07:13:08 +01:00
Anonymous 8ae54777f6 Translated using Weblate (Dutch)
Currently translated at 26.9% (88 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-02-06 07:13:08 +01:00
Anonymous ff1129ecd7 Translated using Weblate (Vietnamese)
Currently translated at 13.4% (44 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-02-06 07:13:07 +01:00
Anonymous 093c523ae6 Translated using Weblate (Norwegian Bokmål)
Currently translated at 24.1% (79 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-02-06 07:13:07 +01:00
Anonymous 9f2348ad39 Translated using Weblate (Italian)
Currently translated at 88.0% (288 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-02-06 07:13:07 +01:00
Anonymous 7b2fb0279a Translated using Weblate (Chinese (Simplified))
Currently translated at 95.4% (312 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-06 07:13:06 +01:00
Anonymous 9f67e82817 Translated using Weblate (Russian)
Currently translated at 14.6% (48 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-02-06 07:13:06 +01:00
Anonymous 3d6821a463 Translated using Weblate (Portuguese)
Currently translated at 78.2% (256 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-02-06 07:13:06 +01:00
Anonymous 43c4effc42 Translated using Weblate (French)
Currently translated at 98.7% (323 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-06 07:13:05 +01:00
Anonymous 1830b7f277 Translated using Weblate (Spanish)
Currently translated at 97.8% (320 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-06 07:13:05 +01:00
Anonymous bc2492c773 Translated using Weblate (German)
Currently translated at 69.7% (228 of 327 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-02-06 07:13:05 +01:00
Nonoss117 3bb18a746b Translated using Weblate (French)
Currently translated at 100.0% (323 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-06 07:12:38 +01:00
shamoon baf40600dc Merge pull request #940 from geckoflume/photoprism
Feature: PhotoPrism widget
2023-02-05 22:12:34 -08:00
shamoon a226f9de12 remove folders, unused vars 2023-02-05 22:11:22 -08:00
geckoflume 551f521edd Add PhotoPrism widget 2023-02-05 22:11:22 -08:00
Anonymous b96045eb8c Translated using Weblate (Latvian)
Currently translated at 36.8% (119 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-02-06 06:37:57 +01:00
Anonymous be5f1dd8e1 Translated using Weblate (Japanese)
Currently translated at 4.6% (15 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-02-06 06:37:57 +01:00
Anonymous 5aa88fcf06 Translated using Weblate (Ukrainian)
Currently translated at 99.0% (320 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-06 06:37:57 +01:00
Anonymous 876ddc8302 Translated using Weblate (Esperanto)
Currently translated at 31.8% (103 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-02-06 06:37:56 +01:00
Anonymous eaada4a406 Translated using Weblate (Hindi)
Currently translated at 2.7% (9 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-02-06 06:37:56 +01:00
Anonymous 91017fe71c Translated using Weblate (Malay)
Currently translated at 78.3% (253 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-02-06 06:37:55 +01:00
Anonymous 6987f96d1d Translated using Weblate (Danish)
Currently translated at 61.3% (198 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-02-06 06:37:55 +01:00
Anonymous dec63583c8 Translated using Weblate (Czech)
Currently translated at 69.6% (225 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-02-06 06:37:55 +01:00
Anonymous 9477dd1f3c Translated using Weblate (Arabic)
Currently translated at 81.1% (262 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-02-06 06:37:54 +01:00
Anonymous b953c1089a Translated using Weblate (Serbian)
Currently translated at 2.7% (9 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-02-06 06:37:54 +01:00
Anonymous 2acceff22e Translated using Weblate (Turkish)
Currently translated at 71.5% (231 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-02-06 06:37:54 +01:00
Anonymous 701b97c1f8 Translated using Weblate (Bulgarian)
Currently translated at 14.2% (46 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-02-06 06:37:53 +01:00
Anonymous 5e917822c9 Translated using Weblate (Telugu)
Currently translated at 67.1% (217 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-02-06 06:37:53 +01:00
Anonymous 4b9f3c1e15 Translated using Weblate (Finnish)
Currently translated at 55.1% (178 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-02-06 06:37:53 +01:00
Anonymous 9314ac4760 Translated using Weblate (Yue)
Currently translated at 36.5% (118 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-02-06 06:37:52 +01:00
Anonymous 5dd7094815 Translated using Weblate (Portuguese (Brazil))
Currently translated at 53.5% (173 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-02-06 06:37:52 +01:00
Anonymous ff385b462a Translated using Weblate (Romanian)
Currently translated at 42.4% (137 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-02-06 06:37:52 +01:00
Anonymous 5addfc6ea8 Translated using Weblate (Hebrew)
Currently translated at 31.2% (101 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-02-06 06:37:51 +01:00
Anonymous 397a340c47 Translated using Weblate (Hungarian)
Currently translated at 33.4% (108 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-02-06 06:37:51 +01:00
Anonymous 0b75d07a2b Translated using Weblate (Croatian)
Currently translated at 88.5% (286 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-02-06 06:37:51 +01:00
Anonymous 6f434bbedd Translated using Weblate (Swedish)
Currently translated at 40.8% (132 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-02-06 06:37:50 +01:00
Anonymous e91efab940 Translated using Weblate (Polish)
Currently translated at 88.2% (285 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-02-06 06:37:50 +01:00
Anonymous d737c57278 Translated using Weblate (Catalan)
Currently translated at 79.8% (258 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-02-06 06:37:50 +01:00
Anonymous 63c1a8e409 Translated using Weblate (Chinese (Traditional))
Currently translated at 97.2% (314 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-02-06 06:37:49 +01:00
Anonymous a15a264912 Translated using Weblate (Dutch)
Currently translated at 27.2% (88 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-02-06 06:37:49 +01:00
Anonymous 08b9b52f09 Translated using Weblate (Vietnamese)
Currently translated at 13.6% (44 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-02-06 06:37:49 +01:00
Anonymous 9a47a8517c Translated using Weblate (Norwegian Bokmål)
Currently translated at 24.4% (79 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-02-06 06:37:48 +01:00
Anonymous 405b00fbd8 Translated using Weblate (Italian)
Currently translated at 89.1% (288 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-02-06 06:37:48 +01:00
Anonymous 02becf7dcf Translated using Weblate (Chinese (Simplified))
Currently translated at 96.5% (312 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-06 06:37:48 +01:00
Anonymous 490e88a34a Translated using Weblate (Russian)
Currently translated at 14.8% (48 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-02-06 06:37:47 +01:00
Anonymous 8f58132da1 Translated using Weblate (Portuguese)
Currently translated at 79.2% (256 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-02-06 06:37:47 +01:00
Anonymous ecddc5e1c8 Translated using Weblate (French)
Currently translated at 99.0% (320 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-06 06:37:47 +01:00
Anonymous e297caf516 Translated using Weblate (Spanish)
Currently translated at 99.0% (320 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-06 06:37:46 +01:00
Anonymous cbc496c81f Translated using Weblate (German)
Currently translated at 70.5% (228 of 323 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-02-06 06:37:46 +01:00
ryanxu ea6c4ab0c2 Translated using Weblate (Chinese (Simplified))
Currently translated at 97.5% (312 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-06 06:37:22 +01:00
shamoon 46d4b3e19e Merge pull request #935 from KillahB33/Mylar
Mylar widget
2023-02-05 21:37:15 -08:00
Jason Fischer 11ae52df4a Merge main 2023-02-05 00:21:35 -08:00
Bryan 77e02e6729 Merge branch 'main' into Mylar 2023-02-03 20:47:58 -05:00
KillahBee 58e8109856 adding working mylar 2023-02-03 15:51:52 -05:00
Dan 52f15ab834 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (320 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-03 21:49:25 +01:00
Nonoss117 4cdf7317ec Translated using Weblate (French)
Currently translated at 100.0% (320 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-03 21:49:24 +01:00
gallegonovato 05818b5d1d Translated using Weblate (Spanish)
Currently translated at 100.0% (320 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-03 21:49:24 +01:00
shamoon d2a2fd99cc Merge pull request #934 from benphelps/fix-proxmoxbackupserver-label
Fix label for PBS when data not returned yet
2023-02-03 10:23:45 -08:00
shamoon 486b376dca Fix label for PBS when data not returned yet 2023-02-03 10:22:51 -08:00
Anonymous 2fae4acd4a Translated using Weblate (Latvian)
Currently translated at 37.1% (119 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-02-03 10:25:49 +01:00
Anonymous 2b20e2e17f Translated using Weblate (Japanese)
Currently translated at 4.6% (15 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-02-03 10:25:48 +01:00
Anonymous cc0f2ca083 Translated using Weblate (Ukrainian)
Currently translated at 97.1% (311 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-03 10:25:48 +01:00
Anonymous 263cf6d6b1 Translated using Weblate (Esperanto)
Currently translated at 32.1% (103 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-02-03 10:25:48 +01:00
Anonymous 72f4506f06 Translated using Weblate (Hindi)
Currently translated at 2.8% (9 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-02-03 10:25:48 +01:00
Anonymous 2183bf623f Translated using Weblate (Malay)
Currently translated at 79.0% (253 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-02-03 10:25:48 +01:00
Anonymous 17ac3008aa Translated using Weblate (Danish)
Currently translated at 61.8% (198 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-02-03 10:25:47 +01:00
Anonymous db07b3e7a1 Translated using Weblate (Czech)
Currently translated at 70.3% (225 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-02-03 10:25:47 +01:00
Anonymous 1b1b671080 Translated using Weblate (Arabic)
Currently translated at 81.8% (262 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-02-03 10:25:47 +01:00
Anonymous ca295e0850 Translated using Weblate (Serbian)
Currently translated at 2.8% (9 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-02-03 10:25:47 +01:00
Anonymous ec3fd692a8 Translated using Weblate (Turkish)
Currently translated at 72.1% (231 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-02-03 10:25:47 +01:00
Anonymous 9deaa48144 Translated using Weblate (Bulgarian)
Currently translated at 14.3% (46 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-02-03 10:25:46 +01:00
Anonymous c725f9af38 Translated using Weblate (Telugu)
Currently translated at 67.8% (217 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-02-03 10:25:46 +01:00
Anonymous 4d3864c2ec Translated using Weblate (Finnish)
Currently translated at 55.6% (178 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-02-03 10:25:46 +01:00
Anonymous 8d69ab33aa Translated using Weblate (Yue)
Currently translated at 36.8% (118 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-02-03 10:25:46 +01:00
Anonymous fdc975d6df Translated using Weblate (Portuguese (Brazil))
Currently translated at 54.0% (173 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-02-03 10:25:45 +01:00
Anonymous d4b7de9d0d Translated using Weblate (Romanian)
Currently translated at 42.8% (137 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-02-03 10:25:45 +01:00
Anonymous 4daa33ea63 Translated using Weblate (Hebrew)
Currently translated at 31.5% (101 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-02-03 10:25:45 +01:00
Anonymous 10adefe2b4 Translated using Weblate (Hungarian)
Currently translated at 33.7% (108 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-02-03 10:25:45 +01:00
Anonymous 4198fcf6b6 Translated using Weblate (Croatian)
Currently translated at 89.3% (286 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-02-03 10:25:44 +01:00
Anonymous 9466b652b9 Translated using Weblate (Swedish)
Currently translated at 41.2% (132 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-02-03 10:25:44 +01:00
Anonymous f4a1700dc5 Translated using Weblate (Polish)
Currently translated at 89.0% (285 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-02-03 10:25:44 +01:00
Anonymous c1552228bf Translated using Weblate (Catalan)
Currently translated at 80.6% (258 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-02-03 10:25:44 +01:00
Anonymous 1106107094 Translated using Weblate (Chinese (Traditional))
Currently translated at 98.1% (314 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-02-03 10:25:43 +01:00
Anonymous b5e218bb1d Translated using Weblate (Dutch)
Currently translated at 27.5% (88 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-02-03 10:25:43 +01:00
Anonymous d015ae1089 Translated using Weblate (Vietnamese)
Currently translated at 13.7% (44 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-02-03 10:25:43 +01:00
Anonymous 0eb7c77892 Translated using Weblate (Norwegian Bokmål)
Currently translated at 24.6% (79 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-02-03 10:25:43 +01:00
Anonymous a3b2321837 Translated using Weblate (Italian)
Currently translated at 90.0% (288 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-02-03 10:25:43 +01:00
Anonymous f9f9f68c71 Translated using Weblate (Chinese (Simplified))
Currently translated at 97.1% (311 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-03 10:25:42 +01:00
Anonymous 2e728aa207 Translated using Weblate (Russian)
Currently translated at 15.0% (48 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-02-03 10:25:42 +01:00
Anonymous f71f15bbf4 Translated using Weblate (Portuguese)
Currently translated at 80.0% (256 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-02-03 10:25:42 +01:00
Anonymous 8037e78725 Translated using Weblate (French)
Currently translated at 99.6% (319 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-03 10:25:42 +01:00
Anonymous 3878dd57a3 Translated using Weblate (Spanish)
Currently translated at 98.7% (316 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-03 10:25:42 +01:00
Anonymous 1411ab99a0 Translated using Weblate (German)
Currently translated at 71.2% (228 of 320 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-02-03 10:25:41 +01:00
Chun Chi Hsieh 5f92a3084c Translated using Weblate (Chinese (Traditional))
Currently translated at 98.4% (314 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-02-03 10:24:55 +01:00
Nonoss117 a4ede7f8d7 Translated using Weblate (French)
Currently translated at 100.0% (319 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-03 10:24:55 +01:00
shamoon f50f5c130e Merge pull request #931 from benphelps/unifi-improvements
Unifi improvements
2023-02-03 01:24:46 -08:00
shamoon 17ebdd8226 Unifi widgets support sites other than default 2023-02-03 01:19:42 -08:00
shamoon c2983197a0 Unifi widgets show warning with no data 2023-02-03 01:19:42 -08:00
Anonymous e311866969 Translated using Weblate (Latvian)
Currently translated at 37.3% (119 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-02-03 04:49:19 +01:00
Anonymous 879da993b8 Translated using Weblate (Japanese)
Currently translated at 4.7% (15 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-02-03 04:49:19 +01:00
Anonymous 204e4ebac0 Translated using Weblate (Ukrainian)
Currently translated at 97.4% (311 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-03 04:49:19 +01:00
Anonymous ff567bd543 Translated using Weblate (Esperanto)
Currently translated at 32.2% (103 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-02-03 04:49:18 +01:00
Anonymous b75d34d8c7 Translated using Weblate (Hindi)
Currently translated at 2.8% (9 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-02-03 04:49:18 +01:00
Anonymous 3a6be33c98 Translated using Weblate (Malay)
Currently translated at 79.3% (253 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-02-03 04:49:18 +01:00
Anonymous 4c69d65e57 Translated using Weblate (Danish)
Currently translated at 62.0% (198 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-02-03 04:49:18 +01:00
Anonymous 6678614e9c Translated using Weblate (Czech)
Currently translated at 70.5% (225 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-02-03 04:49:17 +01:00
Anonymous 8971dc3169 Translated using Weblate (Arabic)
Currently translated at 82.1% (262 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-02-03 04:49:17 +01:00
Anonymous c87618a9bb Translated using Weblate (Serbian)
Currently translated at 2.8% (9 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-02-03 04:49:17 +01:00
Anonymous e84a3fa7dc Translated using Weblate (Turkish)
Currently translated at 72.4% (231 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-02-03 04:49:17 +01:00
Anonymous 4fc5a11a88 Translated using Weblate (Bulgarian)
Currently translated at 14.4% (46 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-02-03 04:49:16 +01:00
Anonymous 9a894b49d1 Translated using Weblate (Telugu)
Currently translated at 68.0% (217 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-02-03 04:49:16 +01:00
Anonymous a778b5daed Translated using Weblate (Finnish)
Currently translated at 55.7% (178 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-02-03 04:49:16 +01:00
Anonymous 35e71a7ffd Translated using Weblate (Yue)
Currently translated at 36.9% (118 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-02-03 04:49:16 +01:00
Anonymous 2312ca86ef Translated using Weblate (Portuguese (Brazil))
Currently translated at 54.2% (173 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-02-03 04:49:15 +01:00
Anonymous aabe51ab7e Translated using Weblate (Romanian)
Currently translated at 42.9% (137 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-02-03 04:49:15 +01:00
Anonymous 0bdc22a4ff Translated using Weblate (Hebrew)
Currently translated at 31.6% (101 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-02-03 04:49:15 +01:00
Anonymous 0e285a3d89 Translated using Weblate (Hungarian)
Currently translated at 33.8% (108 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-02-03 04:49:15 +01:00
Anonymous 5c03482924 Translated using Weblate (Croatian)
Currently translated at 89.6% (286 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-02-03 04:49:14 +01:00
Anonymous 4b340c0167 Translated using Weblate (Swedish)
Currently translated at 41.3% (132 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-02-03 04:49:14 +01:00
Anonymous 459d3473fc Translated using Weblate (Polish)
Currently translated at 89.3% (285 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-02-03 04:49:14 +01:00
Anonymous e3fe95c2c2 Translated using Weblate (Catalan)
Currently translated at 80.8% (258 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-02-03 04:49:14 +01:00
Anonymous 2182412548 Translated using Weblate (Chinese (Traditional))
Currently translated at 90.2% (288 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-02-03 04:49:13 +01:00
Anonymous 1b3e6fc289 Translated using Weblate (Dutch)
Currently translated at 27.5% (88 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-02-03 04:49:13 +01:00
Anonymous 5989e1dc52 Translated using Weblate (Vietnamese)
Currently translated at 13.7% (44 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-02-03 04:49:13 +01:00
Anonymous 4afd53f685 Translated using Weblate (Norwegian Bokmål)
Currently translated at 24.7% (79 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-02-03 04:49:13 +01:00
Anonymous 05ab215fd7 Translated using Weblate (Italian)
Currently translated at 90.2% (288 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-02-03 04:49:13 +01:00
Anonymous cb637e25ed Translated using Weblate (Chinese (Simplified))
Currently translated at 97.4% (311 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-03 04:49:12 +01:00
Anonymous 449e393480 Translated using Weblate (Russian)
Currently translated at 15.0% (48 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-02-03 04:49:12 +01:00
Anonymous 009fe33b9f Translated using Weblate (Portuguese)
Currently translated at 80.2% (256 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-02-03 04:49:12 +01:00
Anonymous d543430b06 Translated using Weblate (French)
Currently translated at 99.0% (316 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-03 04:49:11 +01:00
Anonymous 18afde8478 Translated using Weblate (Spanish)
Currently translated at 99.0% (316 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-03 04:49:11 +01:00
Anonymous 2d7d082c3d Translated using Weblate (German)
Currently translated at 71.4% (228 of 319 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-02-03 04:49:11 +01:00
Nonoss117 52489c47f2 Translated using Weblate (French)
Currently translated at 100.0% (316 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-03 04:48:47 +01:00
gallegonovato 5b8972812d Translated using Weblate (Spanish)
Currently translated at 100.0% (316 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-03 04:48:47 +01:00
Bryanandshamoon f851085ebf Komga Widget (#922)
Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
2023-02-02 19:48:40 -08:00
Anonymous aee8ba1e1d Translated using Weblate (Latvian)
Currently translated at 37.6% (119 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-02-02 18:42:13 +01:00
Anonymous c7a10cf204 Translated using Weblate (Japanese)
Currently translated at 4.7% (15 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-02-02 18:42:12 +01:00
Anonymous d5af3140d5 Translated using Weblate (Ukrainian)
Currently translated at 98.4% (311 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-02 18:42:12 +01:00
Anonymous 2c8a120c9e Translated using Weblate (Esperanto)
Currently translated at 32.5% (103 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-02-02 18:42:12 +01:00
Anonymous 36aed7b6cc Translated using Weblate (Hindi)
Currently translated at 2.8% (9 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-02-02 18:42:12 +01:00
Anonymous c08272d7ed Translated using Weblate (Malay)
Currently translated at 80.0% (253 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-02-02 18:42:11 +01:00
Anonymous c93dd4d524 Translated using Weblate (Danish)
Currently translated at 62.6% (198 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-02-02 18:42:11 +01:00
Anonymous 551bd5b07e Translated using Weblate (Czech)
Currently translated at 71.2% (225 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-02-02 18:42:11 +01:00
Anonymous 9144a17b83 Translated using Weblate (Arabic)
Currently translated at 82.9% (262 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-02-02 18:42:10 +01:00
Anonymous 833cb2b32d Translated using Weblate (Serbian)
Currently translated at 2.8% (9 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-02-02 18:42:10 +01:00
Anonymous 276d14971e Translated using Weblate (Turkish)
Currently translated at 73.1% (231 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-02-02 18:42:10 +01:00
Anonymous 46163338c4 Translated using Weblate (Bulgarian)
Currently translated at 14.5% (46 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-02-02 18:42:10 +01:00
Anonymous ea22bfca90 Translated using Weblate (Telugu)
Currently translated at 68.6% (217 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-02-02 18:42:10 +01:00
Anonymous 3ab248081e Translated using Weblate (Finnish)
Currently translated at 56.3% (178 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-02-02 18:42:09 +01:00
Anonymous d9d277d161 Translated using Weblate (Yue)
Currently translated at 37.3% (118 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-02-02 18:42:09 +01:00
Anonymous a4e76d6fb3 Translated using Weblate (Portuguese (Brazil))
Currently translated at 54.7% (173 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-02-02 18:42:09 +01:00
Anonymous f271be8848 Translated using Weblate (Romanian)
Currently translated at 43.3% (137 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-02-02 18:42:09 +01:00
Anonymous 3cf8cc3be5 Translated using Weblate (Hebrew)
Currently translated at 31.9% (101 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-02-02 18:42:08 +01:00
Anonymous 0a553a3552 Translated using Weblate (Hungarian)
Currently translated at 34.1% (108 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-02-02 18:42:08 +01:00
Anonymous 4c69351026 Translated using Weblate (Croatian)
Currently translated at 90.5% (286 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-02-02 18:42:08 +01:00
Anonymous eb06e6563f Translated using Weblate (Swedish)
Currently translated at 41.7% (132 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-02-02 18:42:08 +01:00
Anonymous 9f16ff0e65 Translated using Weblate (Polish)
Currently translated at 90.1% (285 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-02-02 18:42:07 +01:00
Anonymous 07c0978b6f Translated using Weblate (Catalan)
Currently translated at 81.6% (258 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-02-02 18:42:07 +01:00
Anonymous 07c84b349b Translated using Weblate (Chinese (Traditional))
Currently translated at 91.1% (288 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-02-02 18:42:07 +01:00
Anonymous 212ee29cb5 Translated using Weblate (Dutch)
Currently translated at 27.8% (88 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-02-02 18:42:06 +01:00
Anonymous b6fb6c9b57 Translated using Weblate (Vietnamese)
Currently translated at 13.9% (44 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-02-02 18:42:06 +01:00
Anonymous 25ce2437de Translated using Weblate (Norwegian Bokmål)
Currently translated at 25.0% (79 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-02-02 18:42:06 +01:00
Anonymous 34c6fe15cb Translated using Weblate (Italian)
Currently translated at 91.1% (288 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-02-02 18:42:06 +01:00
Anonymous 2f3896a55d Translated using Weblate (Chinese (Simplified))
Currently translated at 98.4% (311 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-02 18:42:06 +01:00
Anonymous d6182ea641 Translated using Weblate (Russian)
Currently translated at 15.1% (48 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-02-02 18:42:05 +01:00
Anonymous 01b08e4902 Translated using Weblate (Portuguese)
Currently translated at 81.0% (256 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-02-02 18:42:05 +01:00
Anonymous 541d5a9f93 Translated using Weblate (French)
Currently translated at 98.4% (311 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-02 18:42:05 +01:00
Anonymous 02dfbc193d Translated using Weblate (Spanish)
Currently translated at 98.4% (311 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-02 18:42:04 +01:00
Anonymous 2ed4ac8b77 Translated using Weblate (German)
Currently translated at 72.1% (228 of 316 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-02-02 18:42:04 +01:00
shamoon 29e0b309e5 Merge pull request #923 from benphelps/fix-065-search
Fix search broken in 0.6.5
2023-02-02 09:41:34 -08:00
shamoon ce644afe9e Fix search broken in 0.6.5 2023-02-02 09:40:52 -08:00
shamoon c5ac34a6b5 Merge pull request #916 from benphelps/uptimekuma
Feature: Uptime kuma widget
2023-02-02 01:43:20 -08:00
shamoon 015d7dac52 Rework uptime kuma remove proxy display more info 2023-02-02 01:11:27 -08:00
chain710 c3d15a61c3 Implement uptime-kuma widget 2023-02-02 00:49:56 -08:00
shamoon f517d704b8 Merge pull request #904 from lholota/feat/custom-css
feat: Custom CSS
2023-02-01 21:15:58 -08:00
hymbz 167f3a4f84 Translated using Weblate (Chinese (Simplified))
Currently translated at 62.3% (194 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-02-02 05:27:59 +01:00
shamoon e411e2ac0d Merge pull request #912 from eanmclaughlin/patch-1
Fix: Show container status if health is an empty string
2023-02-01 15:40:00 -08:00
Ean McLaughlin ff27b1ef51 Show container status if health is an empty string
If data.health is an empty string, ?? will accept it and not use the right side value; instead, we should use || which treats empty string as false and returns the right side value. This will show "RUNNING" in the status box if health is "".
2023-02-01 15:32:10 -07:00
Mateus 41a2e5932f Translated using Weblate (Portuguese (Brazil))
Currently translated at 55.6% (173 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-02-01 18:01:16 +01:00
Dan fb1e11b6cb Translated using Weblate (Ukrainian)
Currently translated at 100.0% (311 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-02-01 04:02:57 +01:00
Nonoss117 dfc787b004 Translated using Weblate (French)
Currently translated at 100.0% (311 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-02-01 04:02:57 +01:00
gallegonovato 224d5da982 Translated using Weblate (Spanish)
Currently translated at 100.0% (311 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-02-01 04:02:57 +01:00
shamoon 713344132a Merge pull request #905 from benphelps/dependabot/github_actions/docker/build-push-action-4
Bump docker/build-push-action from 3 to 4
2023-01-31 09:30:22 -08:00
dependabot[bot] 49d2dabe53 Bump docker/build-push-action from 3 to 4
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 3 to 4.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-31 16:09:16 +00:00
Lukas Holota 147a165bbc Allow Custom CSS 2023-01-31 07:25:36 -08:00
Benoit 4c17e3fd14 Synology Widget : making it work with multiple widgets connecting to differents versions of DSM 2023-01-31 12:07:23 +01:00
shamoon 046f2986a8 lint support custom search provider in quicklaunch 2023-01-31 00:58:29 -08:00
shamoon ad299e9c94 Merge pull request #899 from chain710/main
Support multi search providers
2023-01-31 00:41:04 -08:00
shamoon 7a5a3a6608 Compatible with quicklaunch internet search 2023-01-31 00:36:11 -08:00
shamoon 87dbbcb1e0 Refactor multi & single providers & retain provider key only 2023-01-31 00:34:29 -08:00
chain710 3bc0522812 Support multi search providers
- add `providers` option in search widget, value is array of provider name, like: `[google, bing]`
2023-01-31 00:34:29 -08:00
Anonymous adea9da881 Translated using Weblate (Latvian)
Currently translated at 38.2% (119 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-01-31 09:34:17 +01:00
Anonymous 1ccf0b3c7a Translated using Weblate (Japanese)
Currently translated at 4.8% (15 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-01-31 09:34:17 +01:00
Anonymous 3c44e49b76 Translated using Weblate (Ukrainian)
Currently translated at 96.7% (301 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-01-31 09:34:17 +01:00
Anonymous 711eedfc84 Translated using Weblate (Esperanto)
Currently translated at 33.1% (103 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-01-31 09:34:17 +01:00
Anonymous 348833e682 Translated using Weblate (Hindi)
Currently translated at 2.8% (9 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-01-31 09:34:17 +01:00
Anonymous fe128a976f Translated using Weblate (Malay)
Currently translated at 81.3% (253 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-01-31 09:34:16 +01:00
Anonymous 7ca1839287 Translated using Weblate (Danish)
Currently translated at 63.6% (198 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-01-31 09:34:16 +01:00
Anonymous 7ac98d010c Translated using Weblate (Czech)
Currently translated at 72.3% (225 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-01-31 09:34:16 +01:00
Anonymous 4af1f1bb7d Translated using Weblate (Arabic)
Currently translated at 84.2% (262 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-01-31 09:34:16 +01:00
Anonymous 69a86bc5dc Translated using Weblate (Serbian)
Currently translated at 2.8% (9 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-01-31 09:34:15 +01:00
Anonymous 98ca15c962 Translated using Weblate (Turkish)
Currently translated at 74.2% (231 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-01-31 09:34:15 +01:00
Anonymous 4837f26aa1 Translated using Weblate (Bulgarian)
Currently translated at 14.7% (46 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-01-31 09:34:15 +01:00
Anonymous 3c06637dd7 Translated using Weblate (Telugu)
Currently translated at 69.7% (217 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-01-31 09:34:15 +01:00
Anonymous 076c2fbb0d Translated using Weblate (Finnish)
Currently translated at 57.2% (178 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-01-31 09:34:15 +01:00
Anonymous 3034b78772 Translated using Weblate (Yue)
Currently translated at 37.9% (118 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-01-31 09:34:14 +01:00
Anonymous bddbe890f8 Translated using Weblate (Portuguese (Brazil))
Currently translated at 37.6% (117 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-01-31 09:34:14 +01:00
Anonymous f7520f2fdf Translated using Weblate (Romanian)
Currently translated at 44.0% (137 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-01-31 09:34:14 +01:00
Anonymous 158dcf0098 Translated using Weblate (Hebrew)
Currently translated at 32.4% (101 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-01-31 09:34:14 +01:00
Anonymous 6e5efc6804 Translated using Weblate (Hungarian)
Currently translated at 34.7% (108 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-01-31 09:34:14 +01:00
Anonymous 329985927b Translated using Weblate (Croatian)
Currently translated at 91.9% (286 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-01-31 09:34:13 +01:00
Anonymous c648e106db Translated using Weblate (Swedish)
Currently translated at 42.4% (132 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-01-31 09:34:13 +01:00
Anonymous 2356745e15 Translated using Weblate (Polish)
Currently translated at 91.6% (285 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-01-31 09:34:13 +01:00
Anonymous c52bc57190 Translated using Weblate (Catalan)
Currently translated at 82.9% (258 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-01-31 09:34:13 +01:00
Anonymous 2e43b93eb6 Translated using Weblate (Chinese (Traditional))
Currently translated at 92.6% (288 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-01-31 09:34:13 +01:00
Anonymous 6d779355b3 Translated using Weblate (Dutch)
Currently translated at 28.2% (88 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-01-31 09:34:12 +01:00
Anonymous 10fb1be641 Translated using Weblate (Vietnamese)
Currently translated at 14.1% (44 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-01-31 09:34:12 +01:00
Anonymous 10a4cb8552 Translated using Weblate (Norwegian Bokmål)
Currently translated at 25.4% (79 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-01-31 09:34:12 +01:00
Anonymous 2951574caa Translated using Weblate (Italian)
Currently translated at 92.6% (288 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-01-31 09:34:12 +01:00
Anonymous 4e0a1fdcdd Translated using Weblate (Chinese (Simplified))
Currently translated at 62.3% (194 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-01-31 09:34:12 +01:00
Anonymous d38948bb6a Translated using Weblate (Russian)
Currently translated at 15.4% (48 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-01-31 09:34:12 +01:00
Anonymous 53743119b8 Translated using Weblate (Portuguese)
Currently translated at 82.3% (256 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-01-31 09:34:11 +01:00
Anonymous 38d1ecc7c0 Translated using Weblate (French)
Currently translated at 99.3% (309 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-01-31 09:34:11 +01:00
Anonymous b31e64d1dc Translated using Weblate (Spanish)
Currently translated at 98.0% (305 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-01-31 09:34:11 +01:00
Anonymous 8f5dcd5175 Translated using Weblate (German)
Currently translated at 73.3% (228 of 311 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-01-31 09:34:11 +01:00
shamoon 1f5912c232 Support custom search in quicklaunch web search 2023-01-31 00:33:30 -08:00
Anonymous 9b8e01971f Translated using Weblate (Latvian)
Currently translated at 38.3% (119 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-01-31 08:54:40 +01:00
Anonymous 7b12c9e24a Translated using Weblate (Japanese)
Currently translated at 4.8% (15 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-01-31 08:54:40 +01:00
Anonymous e079587d89 Translated using Weblate (Ukrainian)
Currently translated at 97.0% (301 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-01-31 08:54:40 +01:00
Anonymous 6a0a5ff1f7 Translated using Weblate (Esperanto)
Currently translated at 33.2% (103 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-01-31 08:54:40 +01:00
Anonymous e3e5c0274b Translated using Weblate (Hindi)
Currently translated at 2.9% (9 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-01-31 08:54:39 +01:00
Anonymous de70ce620e Translated using Weblate (Malay)
Currently translated at 81.6% (253 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-01-31 08:54:39 +01:00
Anonymous 56d9ec64fd Translated using Weblate (Danish)
Currently translated at 63.8% (198 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-01-31 08:54:39 +01:00
Anonymous bca597febe Translated using Weblate (Czech)
Currently translated at 72.5% (225 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-01-31 08:54:39 +01:00
Anonymous 579cac73e0 Translated using Weblate (Arabic)
Currently translated at 84.5% (262 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-01-31 08:54:39 +01:00
Anonymous c29b174dcf Translated using Weblate (Serbian)
Currently translated at 2.9% (9 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-01-31 08:54:38 +01:00
Anonymous c693a5e690 Translated using Weblate (Turkish)
Currently translated at 74.5% (231 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-01-31 08:54:38 +01:00
Anonymous e4724690b2 Translated using Weblate (Bulgarian)
Currently translated at 14.8% (46 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-01-31 08:54:38 +01:00
Anonymous eb679d615b Translated using Weblate (Telugu)
Currently translated at 70.0% (217 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-01-31 08:54:38 +01:00
Anonymous a9e70b815d Translated using Weblate (Finnish)
Currently translated at 57.4% (178 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-01-31 08:54:38 +01:00
Anonymous 96b00f9207 Translated using Weblate (Yue)
Currently translated at 38.0% (118 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-01-31 08:54:37 +01:00
Anonymous fb5ebb0ca0 Translated using Weblate (Portuguese (Brazil))
Currently translated at 37.7% (117 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-01-31 08:54:37 +01:00
Anonymous 9550071dab Translated using Weblate (Romanian)
Currently translated at 44.1% (137 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-01-31 08:54:37 +01:00
Anonymous 4581833ed4 Translated using Weblate (Hebrew)
Currently translated at 32.5% (101 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-01-31 08:54:37 +01:00
Anonymous fe148d4cd0 Translated using Weblate (Hungarian)
Currently translated at 34.8% (108 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-01-31 08:54:37 +01:00
Anonymous 9076de919b Translated using Weblate (Croatian)
Currently translated at 92.2% (286 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-01-31 08:54:36 +01:00
Anonymous 5cf95eb383 Translated using Weblate (Swedish)
Currently translated at 42.5% (132 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-01-31 08:54:36 +01:00
Anonymous 1785206df0 Translated using Weblate (Polish)
Currently translated at 91.9% (285 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-01-31 08:54:36 +01:00
Anonymous 1805b43816 Translated using Weblate (Catalan)
Currently translated at 83.2% (258 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-01-31 08:54:36 +01:00
Anonymous f406af59bc Translated using Weblate (Chinese (Traditional))
Currently translated at 92.9% (288 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-01-31 08:54:36 +01:00
Anonymous 98b4280a02 Translated using Weblate (Dutch)
Currently translated at 28.3% (88 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-01-31 08:54:35 +01:00
Anonymous 9699481b9a Translated using Weblate (Vietnamese)
Currently translated at 14.1% (44 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-01-31 08:54:35 +01:00
Anonymous ab436152dd Translated using Weblate (Norwegian Bokmål)
Currently translated at 25.4% (79 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-01-31 08:54:35 +01:00
Anonymous cacbe6d17b Translated using Weblate (Italian)
Currently translated at 92.9% (288 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-01-31 08:54:35 +01:00
Anonymous 50b435b7e3 Translated using Weblate (Chinese (Simplified))
Currently translated at 62.5% (194 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-01-31 08:54:35 +01:00
Anonymous 4e47b19fb9 Translated using Weblate (Russian)
Currently translated at 15.4% (48 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-01-31 08:54:35 +01:00
Anonymous 66620c5d42 Translated using Weblate (Portuguese)
Currently translated at 82.5% (256 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-01-31 08:54:34 +01:00
Anonymous f1aa9444c1 Translated using Weblate (French)
Currently translated at 99.6% (309 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-01-31 08:54:34 +01:00
Anonymous 908ee43375 Translated using Weblate (Spanish)
Currently translated at 98.3% (305 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-01-31 08:54:34 +01:00
Anonymous c2e52f8821 Translated using Weblate (German)
Currently translated at 73.5% (228 of 310 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-01-31 08:54:34 +01:00
achao1m5 3194e5af85 Translated using Weblate (Chinese (Simplified))
Currently translated at 62.7% (194 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-01-31 08:54:09 +01:00
Nonoss117 2fae3243a7 Translated using Weblate (French)
Currently translated at 100.0% (309 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-01-31 08:54:09 +01:00
shamoon adce18d023 Merge pull request #897 from avdept/add_search_to_quicklaunch
Add internet search to quicklaunch
2023-01-30 23:54:04 -08:00
shamoon 11d03be4de Use configured search provider, allow disable internet search 2023-01-30 23:38:37 -08:00
Alex Sinelnikov 4e17628f97 Added search to quicklaunch 2023-01-30 10:16:45 +02:00
Jason Fischer 893b3f0986 Merge main 2023-01-29 17:07:40 -08:00
Jason Fischer e62952c2c1 Create reusable Synology proxy
- Migrate DiskStation and DownloadStation to use new proxy
- Move DiskStation proxy UI logic into component
2023-01-29 17:04:36 -08:00
Anonymous cf072933a1 Translated using Weblate (Latvian)
Currently translated at 38.5% (119 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-01-29 18:53:29 +01:00
Anonymous f8a57b1a5f Translated using Weblate (Japanese)
Currently translated at 4.8% (15 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-01-29 18:53:28 +01:00
Anonymous 385e935533 Translated using Weblate (Ukrainian)
Currently translated at 97.4% (301 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-01-29 18:53:28 +01:00
Anonymous eaa7f1bf6d Translated using Weblate (Esperanto)
Currently translated at 33.3% (103 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-01-29 18:53:28 +01:00
Anonymous fb7ad30dfc Translated using Weblate (Hindi)
Currently translated at 2.9% (9 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-01-29 18:53:28 +01:00
Anonymous 95fcd821be Translated using Weblate (Malay)
Currently translated at 81.8% (253 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-01-29 18:53:27 +01:00
Anonymous a4e1083d02 Translated using Weblate (Danish)
Currently translated at 64.0% (198 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-01-29 18:53:27 +01:00
Anonymous 7e9ed86441 Translated using Weblate (Czech)
Currently translated at 72.8% (225 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-01-29 18:53:27 +01:00
Anonymous c76d750e18 Translated using Weblate (Arabic)
Currently translated at 84.7% (262 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-01-29 18:53:27 +01:00
Anonymous b75617e2f2 Translated using Weblate (Serbian)
Currently translated at 2.9% (9 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-01-29 18:53:27 +01:00
Anonymous cf7ba59f0f Translated using Weblate (Turkish)
Currently translated at 74.7% (231 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-01-29 18:53:26 +01:00
Anonymous 14377962f2 Translated using Weblate (Bulgarian)
Currently translated at 14.8% (46 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-01-29 18:53:26 +01:00
Anonymous aab38e1b5f Translated using Weblate (Telugu)
Currently translated at 70.2% (217 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-01-29 18:53:26 +01:00
Anonymous 1449c5a0a3 Translated using Weblate (Finnish)
Currently translated at 57.6% (178 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-01-29 18:53:26 +01:00
Anonymous 72481876f8 Translated using Weblate (Yue)
Currently translated at 38.1% (118 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-01-29 18:53:25 +01:00
Anonymous 7f207692ce Translated using Weblate (Portuguese (Brazil))
Currently translated at 37.8% (117 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-01-29 18:53:25 +01:00
Anonymous dab31b2feb Translated using Weblate (Romanian)
Currently translated at 44.3% (137 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-01-29 18:53:25 +01:00
Anonymous 13d2213ceb Translated using Weblate (Hebrew)
Currently translated at 32.6% (101 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-01-29 18:53:25 +01:00
Anonymous 2a77bb11c5 Translated using Weblate (Hungarian)
Currently translated at 34.9% (108 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-01-29 18:53:24 +01:00
Anonymous fcf9c6417b Translated using Weblate (Croatian)
Currently translated at 92.5% (286 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-01-29 18:53:24 +01:00
Anonymous e08ce475f5 Translated using Weblate (Swedish)
Currently translated at 42.7% (132 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-01-29 18:53:24 +01:00
Anonymous ba96ab8b50 Translated using Weblate (Polish)
Currently translated at 92.2% (285 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-01-29 18:53:23 +01:00
Anonymous 0743095093 Translated using Weblate (Catalan)
Currently translated at 83.4% (258 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-01-29 18:53:23 +01:00
Anonymous 0bb40d7ad1 Translated using Weblate (Chinese (Traditional))
Currently translated at 93.2% (288 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-01-29 18:53:23 +01:00
Anonymous 33467a5c63 Translated using Weblate (Dutch)
Currently translated at 28.4% (88 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-01-29 18:53:23 +01:00
Anonymous f88de790a9 Translated using Weblate (Vietnamese)
Currently translated at 14.2% (44 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-01-29 18:53:22 +01:00
Anonymous 85afbcb86c Translated using Weblate (Norwegian Bokmål)
Currently translated at 25.5% (79 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-01-29 18:53:22 +01:00
Anonymous c502f65d07 Translated using Weblate (Italian)
Currently translated at 93.2% (288 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-01-29 18:53:22 +01:00
Anonymous 6baf028d6d Translated using Weblate (Chinese (Simplified))
Currently translated at 54.3% (168 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-01-29 18:53:21 +01:00
Anonymous 8441838065 Translated using Weblate (Russian)
Currently translated at 15.5% (48 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-01-29 18:53:21 +01:00
Anonymous 901be4ff60 Translated using Weblate (Portuguese)
Currently translated at 82.8% (256 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-01-29 18:53:21 +01:00
Anonymous c9e8b13c37 Translated using Weblate (French)
Currently translated at 98.7% (305 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-01-29 18:53:21 +01:00
Anonymous ac1a3e95ca Translated using Weblate (Spanish)
Currently translated at 98.7% (305 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-01-29 18:53:20 +01:00
Anonymous 9978bf6fdc Translated using Weblate (German)
Currently translated at 73.7% (228 of 309 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-01-29 18:53:20 +01:00
Nonoss117 7f5996cb58 Translated using Weblate (French)
Currently translated at 100.0% (305 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-01-29 18:52:52 +01:00
gallegonovato 8468ffb243 Translated using Weblate (Spanish)
Currently translated at 100.0% (305 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-01-29 18:52:52 +01:00
shamoon a7927b4873 Merge pull request #895 from benphelps/fix-864
Don't show QEMU templates in VMs field for Proxmox widget
2023-01-29 09:52:46 -08:00
Jason Fischer c9439eafa2 Don't show QEMU templates in VMs field for Proxmox widget
fixes #864
2023-01-29 09:44:15 -08:00
shamoon 5af01d2436 Merge pull request #887 from Zlendy/immich
Add Immich Widget
2023-01-28 21:50:55 -08:00
shamoon 19cf9969b9 Fix immich widget error catching & awaiting data 2023-01-28 21:49:31 -08:00
Zlendy dbcd6f5df7 Fix: Immich API no longer has an "error" property 2023-01-28 21:49:31 -08:00
Zlendy 6b5e8ab0c7 Add Immich Widget 2023-01-28 21:49:31 -08:00
shamoon e5d65f410c Merge pull request #893 from benphelps/fix-892
Fix nzbget download rate units
2023-01-28 21:18:37 -08:00
shamoon f2b3a12569 Fix nzbget download rate units 2023-01-28 21:17:39 -08:00
Anonymous 3df03ecaab Translated using Weblate (Latvian)
Currently translated at 39.0% (119 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-01-29 01:46:40 +01:00
Anonymous 0fdab8cffc Translated using Weblate (Japanese)
Currently translated at 4.9% (15 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-01-29 01:46:39 +01:00
Anonymous 7d23b0199c Translated using Weblate (Ukrainian)
Currently translated at 98.6% (301 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-01-29 01:46:39 +01:00
Anonymous 0ae6d7e182 Translated using Weblate (Esperanto)
Currently translated at 33.7% (103 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-01-29 01:46:39 +01:00
Anonymous 2b8af9546f Translated using Weblate (Hindi)
Currently translated at 2.9% (9 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-01-29 01:46:39 +01:00
Anonymous 8713ef4d6a Translated using Weblate (Malay)
Currently translated at 82.9% (253 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-01-29 01:46:38 +01:00
Anonymous 0d5c878c29 Translated using Weblate (Danish)
Currently translated at 64.9% (198 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-01-29 01:46:38 +01:00
Anonymous bb823140e1 Translated using Weblate (Czech)
Currently translated at 73.7% (225 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-01-29 01:46:38 +01:00
Anonymous 749e78864e Translated using Weblate (Arabic)
Currently translated at 85.2% (260 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-01-29 01:46:37 +01:00
Anonymous 6199c2e3b0 Translated using Weblate (Serbian)
Currently translated at 2.9% (9 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-01-29 01:46:37 +01:00
Anonymous 935681bd70 Translated using Weblate (Turkish)
Currently translated at 75.7% (231 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-01-29 01:46:37 +01:00
Anonymous dc7f563fff Translated using Weblate (Bulgarian)
Currently translated at 15.0% (46 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-01-29 01:46:36 +01:00
Anonymous 8c3b8e2cbc Translated using Weblate (Telugu)
Currently translated at 71.1% (217 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-01-29 01:46:36 +01:00
Anonymous 60df0ab4ff Translated using Weblate (Finnish)
Currently translated at 58.3% (178 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-01-29 01:46:36 +01:00
Anonymous 436650d8ef Translated using Weblate (Yue)
Currently translated at 38.6% (118 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-01-29 01:46:35 +01:00
Anonymous 6e6fcb33ce Translated using Weblate (Portuguese (Brazil))
Currently translated at 38.3% (117 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-01-29 01:46:35 +01:00
Anonymous ba25e74add Translated using Weblate (Romanian)
Currently translated at 44.9% (137 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-01-29 01:46:35 +01:00
Anonymous 59c524726a Translated using Weblate (Hebrew)
Currently translated at 33.1% (101 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-01-29 01:46:34 +01:00
Anonymous 7e3620f86f Translated using Weblate (Hungarian)
Currently translated at 35.4% (108 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-01-29 01:46:34 +01:00
Anonymous b11fa21d4a Translated using Weblate (Croatian)
Currently translated at 93.7% (286 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-01-29 01:46:33 +01:00
Anonymous 3fdae79c88 Translated using Weblate (Swedish)
Currently translated at 43.2% (132 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-01-29 01:46:33 +01:00
Anonymous 933619aa8e Translated using Weblate (Polish)
Currently translated at 93.4% (285 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-01-29 01:46:33 +01:00
Anonymous 63616e0a79 Translated using Weblate (Catalan)
Currently translated at 84.5% (258 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-01-29 01:46:33 +01:00
Anonymous c933e40e92 Translated using Weblate (Chinese (Traditional))
Currently translated at 94.4% (288 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-01-29 01:46:32 +01:00
Anonymous 347e28ea3f Translated using Weblate (Dutch)
Currently translated at 28.8% (88 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-01-29 01:46:32 +01:00
Anonymous f6fdbd0426 Translated using Weblate (Vietnamese)
Currently translated at 14.4% (44 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-01-29 01:46:31 +01:00
Anonymous 5d82f5f7d8 Translated using Weblate (Norwegian Bokmål)
Currently translated at 25.9% (79 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-01-29 01:46:31 +01:00
Anonymous 4c9f1041ef Translated using Weblate (Italian)
Currently translated at 94.4% (288 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-01-29 01:46:31 +01:00
Anonymous 6d133b3889 Translated using Weblate (Chinese (Simplified))
Currently translated at 55.0% (168 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-01-29 01:46:31 +01:00
Anonymous d94f1ce3e7 Translated using Weblate (Russian)
Currently translated at 15.7% (48 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-01-29 01:46:30 +01:00
Anonymous 1e8b257dbe Translated using Weblate (Portuguese)
Currently translated at 83.9% (256 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-01-29 01:46:30 +01:00
Anonymous 0190c18a6b Translated using Weblate (French)
Currently translated at 98.6% (301 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-01-29 01:46:29 +01:00
Anonymous 56331b3efd Translated using Weblate (Spanish)
Currently translated at 98.6% (301 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-01-29 01:46:29 +01:00
Anonymous c3561e8fce Translated using Weblate (German)
Currently translated at 74.7% (228 of 305 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-01-29 01:46:29 +01:00
azzam 910582fbc0 Translated using Weblate (Arabic)
Currently translated at 86.3% (260 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-01-29 01:45:53 +01:00
2a42d89d08 Add Proxmox Backup Server Widget (#879)
* Add Proxmox Backup Server Widget

* Clarification added to Failed Tasks

* Refactor pbs to proxmoxbackupserver

* Removing property instead of recreating object

* minor code styling of proxmoxbackupserver widget

---------

Co-authored-by: Eizock <>
Co-authored-by: Michael Shamoon <4887959+shamoon@users.noreply.github.com>
2023-01-28 16:32:47 -08:00
Jason Fischer b0f16f6612 Merge pull request #889 from benphelps/fix-864
Don't include LXC templates in LXC count
2023-01-28 13:09:48 -08:00
Jason Fischer 0d5f8f6e7c Don't include LXC templates in LXC count
fixes #864
2023-01-28 12:59:20 -08:00
Kai Huuhko e368717c70 Translated using Weblate (Finnish)
Currently translated at 59.1% (178 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-01-27 13:45:04 +01:00
Dan 1e5a6f8eff Translated using Weblate (Ukrainian)
Currently translated at 100.0% (301 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-01-26 11:54:36 +01:00
Chun Chi Hsieh 945d13ee3c Translated using Weblate (Chinese (Traditional))
Currently translated at 95.6% (288 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-01-26 11:54:36 +01:00
Nonoss117 cc09e44890 Translated using Weblate (French)
Currently translated at 100.0% (301 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-01-26 11:54:36 +01:00
gallegonovato 29b6fefdff Translated using Weblate (Spanish)
Currently translated at 100.0% (301 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-01-26 11:54:36 +01:00
Jason Fischer e96036e076 Merge pull request #873 from jameswynn/sort-services-by-weight
Services are now sorted by a new 'weight' field
2023-01-24 17:52:08 -08:00
James Wynn 8d016629d3 Services are now sorted by the 'weight' field.
* Default for discovered services is 0
* Default weight for configured services is their index within their
  group scaled by 100, i.e. (index + 1) * 100
* Should be backwards compatible with current loose ordering
2023-01-24 12:48:49 -06:00
shamoon 555f9f7b14 Merge pull request #871 from jameswynn/fix-discovered-widget-fields-parsing
Discovered services need widget field list parsed
2023-01-24 08:36:20 -08:00
James Wynn 02e9df8f28 Parse widget field list if is a string 2023-01-24 09:31:20 -06:00
Anonymous 5ecb9466ae Translated using Weblate (Latvian)
Currently translated at 39.5% (119 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-01-24 04:55:03 +01:00
Anonymous 9c9c0e2b64 Translated using Weblate (Japanese)
Currently translated at 4.9% (15 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-01-24 04:55:02 +01:00
Anonymous 2d87c7c1d2 Translated using Weblate (Ukrainian)
Currently translated at 98.0% (295 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-01-24 04:55:02 +01:00
Anonymous cdbf02edae Translated using Weblate (Esperanto)
Currently translated at 34.2% (103 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-01-24 04:55:02 +01:00
Anonymous b630b14504 Translated using Weblate (Hindi)
Currently translated at 2.9% (9 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-01-24 04:55:02 +01:00
Anonymous e0bf277741 Translated using Weblate (Malay)
Currently translated at 84.0% (253 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-01-24 04:55:02 +01:00
Anonymous 351993234e Translated using Weblate (Danish)
Currently translated at 65.7% (198 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-01-24 04:55:01 +01:00
Anonymous 192a4f4d14 Translated using Weblate (Czech)
Currently translated at 74.7% (225 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-01-24 04:55:01 +01:00
Anonymous bfb882d03d Translated using Weblate (Arabic)
Currently translated at 14.6% (44 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-01-24 04:55:01 +01:00
Anonymous 9ee86f1c5a Translated using Weblate (Serbian)
Currently translated at 2.9% (9 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-01-24 04:55:01 +01:00
Anonymous 6d3c71a72e Translated using Weblate (Turkish)
Currently translated at 76.7% (231 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-01-24 04:55:01 +01:00
Anonymous ad273ce5ad Translated using Weblate (Bulgarian)
Currently translated at 15.2% (46 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-01-24 04:55:00 +01:00
Anonymous 799c9ecb17 Translated using Weblate (Telugu)
Currently translated at 72.0% (217 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-01-24 04:55:00 +01:00
Anonymous a5c8f08f4b Translated using Weblate (Finnish)
Currently translated at 57.8% (174 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-01-24 04:55:00 +01:00
Anonymous 9f2476f419 Translated using Weblate (Yue)
Currently translated at 39.2% (118 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-01-24 04:55:00 +01:00
Anonymous 942a61aa4b Translated using Weblate (Portuguese (Brazil))
Currently translated at 38.8% (117 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-01-24 04:54:59 +01:00
Anonymous 099f3726e8 Translated using Weblate (Romanian)
Currently translated at 45.5% (137 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-01-24 04:54:59 +01:00
Anonymous 14310bf2ed Translated using Weblate (Hebrew)
Currently translated at 33.5% (101 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-01-24 04:54:59 +01:00
Anonymous 176811da9b Translated using Weblate (Hungarian)
Currently translated at 35.8% (108 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-01-24 04:54:59 +01:00
Anonymous f8d35e7f5d Translated using Weblate (Croatian)
Currently translated at 95.0% (286 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-01-24 04:54:59 +01:00
Anonymous ce94636a54 Translated using Weblate (Swedish)
Currently translated at 43.8% (132 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-01-24 04:54:58 +01:00
Anonymous 7e659b2dbc Translated using Weblate (Polish)
Currently translated at 94.6% (285 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-01-24 04:54:58 +01:00
Anonymous cb92e82fd0 Translated using Weblate (Catalan)
Currently translated at 85.7% (258 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-01-24 04:54:58 +01:00
Anonymous d7d5f46820 Translated using Weblate (Chinese (Traditional))
Currently translated at 95.6% (288 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-01-24 04:54:58 +01:00
Anonymous 23b8f25f07 Translated using Weblate (Dutch)
Currently translated at 29.2% (88 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-01-24 04:54:57 +01:00
Anonymous dc55da38c6 Translated using Weblate (Vietnamese)
Currently translated at 14.6% (44 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-01-24 04:54:57 +01:00
Anonymous aa35eb5c5e Translated using Weblate (Norwegian Bokmål)
Currently translated at 26.2% (79 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-01-24 04:54:57 +01:00
Anonymous 8c800eb032 Translated using Weblate (Italian)
Currently translated at 95.6% (288 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-01-24 04:54:57 +01:00
Anonymous cdfb7e7d73 Translated using Weblate (Chinese (Simplified))
Currently translated at 55.8% (168 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-01-24 04:54:56 +01:00
Anonymous 48298cc4e8 Translated using Weblate (Russian)
Currently translated at 15.9% (48 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-01-24 04:54:56 +01:00
Anonymous ce786fb765 Translated using Weblate (Portuguese)
Currently translated at 85.0% (256 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-01-24 04:54:56 +01:00
Anonymous 50939069af Translated using Weblate (French)
Currently translated at 99.3% (299 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-01-24 04:54:56 +01:00
Anonymous ec8a73751c Translated using Weblate (Spanish)
Currently translated at 99.3% (299 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-01-24 04:54:55 +01:00
Anonymous a994d5379e Translated using Weblate (German)
Currently translated at 75.7% (228 of 301 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-01-24 04:54:55 +01:00
shamoon f9e27a6bb5 Merge pull request #868 from KillahB33/main
Cloudflared Widget
2023-01-23 19:54:34 -08:00
Pacux 6d61cb5aaa Translated using Weblate (Catalan)
Currently translated at 86.2% (258 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-01-23 23:52:33 +01:00
Michael Shamoon 89c6528f24 cloudflare widget validation, handle multiple connections, fix translation file error, capitalize status 2023-01-23 10:31:08 -08:00
KillahBee 2836ee1f3b cloudflared widget working locally 2023-01-23 12:06:35 -05:00
shamoon d71a1f9345 Merge pull request #861 from benphelps/fix-opnsense-no-wan
Fix: Handle opnsense no wan interface
2023-01-22 14:29:49 -08:00
Michael Shamoon c8116fc9e8 Better error output for docker integration 2023-01-22 14:23:14 -08:00
Michael Shamoon ca4b5b131d Allow specifying wan interface on opnsense widget 2023-01-22 11:02:52 -08:00
Hosted Weblate c74b46712b Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/
2023-01-22 18:30:38 +01:00
Michael Shamoon 794f22d373 Re-merge "use unprivileged user in a container"
This reverts commit 67e72fb96a.
2023-01-22 09:30:29 -08:00
Benoit 2b3d4b388a Synology Diskstation widget : initial commit 2023-01-22 11:51:04 +01:00
KillahBee fa1792cd5f adding cloudflare widget 2023-01-20 11:43:19 -05:00
Anonymous cdbdb86c9e Translated using Weblate (Latvian)
Currently translated at 39.7% (119 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/lv/
2023-01-20 17:09:01 +01:00
Anonymous 71669b295d Translated using Weblate (Japanese)
Currently translated at 5.0% (15 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ja/
2023-01-20 17:09:01 +01:00
Anonymous 9f68f3b3f4 Translated using Weblate (Ukrainian)
Currently translated at 98.6% (295 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-01-20 17:09:01 +01:00
Anonymous 0b41c1d686 Translated using Weblate (Esperanto)
Currently translated at 34.4% (103 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/eo/
2023-01-20 17:09:01 +01:00
Anonymous 85073629ad Translated using Weblate (Hindi)
Currently translated at 3.0% (9 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hi/
2023-01-20 17:09:00 +01:00
Anonymous 680d889228 Translated using Weblate (Malay)
Currently translated at 84.6% (253 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ms/
2023-01-20 17:09:00 +01:00
Anonymous e4c2eec7ee Translated using Weblate (Danish)
Currently translated at 66.2% (198 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/da/
2023-01-20 17:09:00 +01:00
Anonymous 0642999826 Translated using Weblate (Czech)
Currently translated at 75.2% (225 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/cs/
2023-01-20 17:09:00 +01:00
Anonymous 1a1194acf8 Translated using Weblate (Arabic)
Currently translated at 14.7% (44 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ar/
2023-01-20 17:08:59 +01:00
Anonymous e6f9d6fd1d Translated using Weblate (Serbian)
Currently translated at 3.0% (9 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sr/
2023-01-20 17:08:59 +01:00
Anonymous ec4dcd0663 Translated using Weblate (Turkish)
Currently translated at 77.2% (231 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/tr/
2023-01-20 17:08:59 +01:00
Anonymous 1993a1660a Translated using Weblate (Bulgarian)
Currently translated at 15.3% (46 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/bg/
2023-01-20 17:08:59 +01:00
Anonymous 530495d804 Translated using Weblate (Telugu)
Currently translated at 72.5% (217 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/te/
2023-01-20 17:08:58 +01:00
Anonymous c490d2467f Translated using Weblate (Finnish)
Currently translated at 41.1% (123 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fi/
2023-01-20 17:08:58 +01:00
Anonymous c7771033c6 Translated using Weblate (Yue)
Currently translated at 39.4% (118 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/yue/
2023-01-20 17:08:58 +01:00
Anonymous ccb227366d Translated using Weblate (Portuguese (Brazil))
Currently translated at 39.1% (117 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt_BR/
2023-01-20 17:08:58 +01:00
Anonymous 0d4b4ef65c Translated using Weblate (Romanian)
Currently translated at 45.8% (137 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ro/
2023-01-20 17:08:58 +01:00
Anonymous 45b59cd336 Translated using Weblate (Hebrew)
Currently translated at 33.7% (101 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/he/
2023-01-20 17:08:57 +01:00
Anonymous 8dcc25f68f Translated using Weblate (Hungarian)
Currently translated at 36.1% (108 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hu/
2023-01-20 17:08:57 +01:00
Anonymous f0557d0a9c Translated using Weblate (Croatian)
Currently translated at 95.6% (286 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/hr/
2023-01-20 17:08:56 +01:00
Anonymous f1baafe9a1 Translated using Weblate (Swedish)
Currently translated at 44.1% (132 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/sv/
2023-01-20 17:08:56 +01:00
Anonymous 940b6098d4 Translated using Weblate (Polish)
Currently translated at 95.3% (285 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-01-20 17:08:56 +01:00
Anonymous 580c6adfb1 Translated using Weblate (Catalan)
Currently translated at 86.2% (258 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ca/
2023-01-20 17:08:56 +01:00
Anonymous c9cb975265 Translated using Weblate (Chinese (Traditional))
Currently translated at 94.9% (284 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-01-20 17:08:56 +01:00
Anonymous 3f887a7e26 Translated using Weblate (Dutch)
Currently translated at 29.4% (88 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nl/
2023-01-20 17:08:55 +01:00
Anonymous 3d5bb9d9eb Translated using Weblate (Vietnamese)
Currently translated at 14.7% (44 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/vi/
2023-01-20 17:08:55 +01:00
Anonymous 6cd9d76892 Translated using Weblate (Norwegian Bokmål)
Currently translated at 26.4% (79 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/nb_NO/
2023-01-20 17:08:55 +01:00
Anonymous cc073ea23c Translated using Weblate (Italian)
Currently translated at 96.3% (288 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/it/
2023-01-20 17:08:54 +01:00
Anonymous b6a2421a64 Translated using Weblate (Chinese (Simplified))
Currently translated at 56.1% (168 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hans/
2023-01-20 17:08:54 +01:00
Anonymous 300fce5f17 Translated using Weblate (Russian)
Currently translated at 16.0% (48 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/ru/
2023-01-20 17:08:54 +01:00
Anonymous 19e654656f Translated using Weblate (Portuguese)
Currently translated at 85.6% (256 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pt/
2023-01-20 17:08:54 +01:00
Anonymous 3add3a57d2 Translated using Weblate (French)
Currently translated at 98.6% (295 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-01-20 17:08:54 +01:00
Anonymous e850abbaec Translated using Weblate (Spanish)
Currently translated at 98.6% (295 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-01-20 17:08:53 +01:00
Anonymous d4b3885139 Translated using Weblate (German)
Currently translated at 76.2% (228 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/de/
2023-01-20 17:08:53 +01:00
Hosted Weblate 3737ce704e Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/
2023-01-20 17:08:30 +01:00
Dan 43d781f1f9 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (299 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/uk/
2023-01-20 17:08:28 +01:00
retmas-gh fc01c6b428 Translated using Weblate (Polish)
Currently translated at 95.9% (287 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/pl/
2023-01-20 17:08:28 +01:00
Chun Chi Hsieh 592848f42f Translated using Weblate (Chinese (Traditional))
Currently translated at 96.3% (288 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/zh_Hant/
2023-01-20 17:08:27 +01:00
Nonoss117 6634909f5b Translated using Weblate (French)
Currently translated at 100.0% (299 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/fr/
2023-01-20 17:08:27 +01:00
gallegonovato 6c5f27cd87 Translated using Weblate (Spanish)
Currently translated at 100.0% (299 of 299 strings)

Translation: Homepage/Homepage
Translate-URL: https://hosted.weblate.org/projects/homepage/homepage/es/
2023-01-20 17:08:27 +01:00
shamoon 995ebb1941 Merge pull request #851 from benphelps/rename-octoprint
Remove capital from octoprint widget
2023-01-20 08:08:20 -08:00
Michael Shamoon d27b795d81 Remove capital from octoprint widget
remove

add
2023-01-20 07:09:00 -08:00
shamoon 01eea51555 Merge pull request #850 from benphelps/revert-644-feat/unprivileged-container
Revert "use unprivileged user in a container"
2023-01-19 19:09:42 -08:00
shamoon 67e72fb96a Revert "use unprivileged user in a container" 2023-01-19 19:09:00 -08:00
144 changed files with 12796 additions and 6523 deletions

No files matched your search

+1 -1
View File
@@ -3,7 +3,7 @@
"build": {
"dockerfile": "Dockerfile",
"args": {
"VARIANT": "18-buster"
"VARIANT": "18-bullseye"
}
},
"customizations": {
+26
View File
@@ -0,0 +1,26 @@
## Proposed change
<!--
Please include a summary of the change. Screenshots and / or videos can also be helpful if appropriate.
New service widgets should include example(s) of relevant relevant API output as well as a PR to the docs for the new widget. See the development guidelines for new widgets: https://gethomepage.dev/en/more/development/#service-widget-guidelines
-->
Closes # (issue)
## Type of change
<!--
What type of change does your PR introduce to Homepage?
-->
- [ ] New service widget
- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Other (please explain)
## Checklist:
- [ ] If adding a service widget or a change that requires it, I have added a corresponding PR to the [documentation](https://github.com/benphelps/homepage-docs) here:
- [ ] If applicable, I have checked that all tests pass with e.g. `pnpm lint`.
- [ ] If applicable, I have tested my code for new features & regressions on both mobile & desktop devices, using the latest version of major browsers.
+1 -1
View File
@@ -88,7 +88,7 @@ jobs:
# https://github.com/docker/build-push-action
- name: Build and push Docker image
id: build-and-push
uses: docker/build-push-action@v3
uses: docker/build-push-action@v4
with:
context: .
push: ${{ github.event_name != 'pull_request' }}
+1
View File
@@ -4,6 +4,7 @@
/node_modules
/.pnp
.pnp.js
.pnpm-store
# testing
/coverage
+1 -2
View File
@@ -37,8 +37,7 @@
- **Secure!** Every API request to backend services goes through a proxy server, so your API keys are never exposed to the frontend client.
- Images built for AMD64 (x86_64), ARM64, ARMv7 and ARMv6
- Supports all Raspberry Pi's, most SBCs & Apple Silicon
- Full i18n support with automatic language detection
- Translations for Catalan, Chinese, Dutch, Finnish, French, German, Hebrew, Hungarian, Malay, Norwegian Bokmål, Polish, Portuguese, Portuguese (Brazil), Romanian, Russian, Spanish, Swedish and Yue
- Full i18n support with translations for Catalan, Chinese, Dutch, Finnish, French, German, Hebrew, Hungarian, Malay, Norwegian Bokmål, Polish, Portuguese, Portuguese (Brazil), Romanian, Russian, Spanish, Swedish and Yue
- Want to help translate? [Join the Weblate project](https://hosted.weblate.org/engage/homepage/)
- Service & Web Bookmarks
- Docker Integration
+1113 -3876
View File
File diff suppressed because it is too large. Load diff
+5 -2
View File
@@ -20,18 +20,18 @@
"js-yaml": "^4.1.0",
"json-rpc-2.0": "^1.4.1",
"memory-cache": "^0.2.0",
"minecraft-ping-js": "^1.0.2",
"next": "^12.3.1",
"next-i18next": "^12.0.1",
"node-os-utils": "^1.3.7",
"pretty-bytes": "^6.0.0",
"raw-body": "^2.5.1",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-i18next": "^11.18.6",
"react-icons": "^4.4.0",
"rutorrent-promise": "^2.0.0",
"shvl": "^3.0.0",
"swr": "^1.3.0",
"systeminformation": "^5.17.12",
"tough-cookie": "^4.1.2",
"winston": "^3.8.2",
"xml-js": "^1.6.11"
@@ -53,5 +53,8 @@
"tailwind-scrollbar": "^2.0.1",
"tailwindcss": "^3.1.8",
"typescript": "^4.8.3"
},
"optionalDependencies": {
"osx-temperature-sensor": "^1.0.8"
}
}
+1231 -1063
View File
File diff suppressed because it is too large. Load diff
+372 -230
View File
@@ -3,16 +3,16 @@
"missing_type": "نوع القطعة مفقود: {{type}}",
"api_error": "API خطأ",
"status": "الحالة",
"information": "Information",
"information": "معلومات",
"url": "URL",
"raw_error": "Raw Error",
"response_data": "Response Data"
"response_data": "بيانات الاستجابة"
},
"weather": {
"current": "الموقع الحالي",
"allow": "اضغط للسماح",
"allow": "أنقر للسماح",
"updating": "جاري التحديث",
"wait": "الرجاء الانتظار"
"wait": "الرجاء الإنتظار"
},
"search": {
"placeholder": "بحث …"
@@ -22,403 +22,545 @@
"total": "المجموع",
"free": "متاح",
"used": "مستخدم",
"load": "الضغط"
"load": "الضغط",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"unifi": {
"users": "المستخدمون",
"uptime": "مدة تشغيل النظام",
"days": "ايام",
"days": "أيام",
"wan": "WAN",
"lan": "LAN",
"wlan": "WLAN",
"devices": "الاجهزة",
"lan_devices": "LAN اجهزة",
"wlan_devices": "WLAN احهزة",
"devices": "الأجهزة",
"lan_devices": "LAN أجهزة",
"wlan_devices": "WLAN أجهزة",
"lan_users": "LAN مستخدمين",
"wlan_users": "WLAN مستخدمين",
"up": "اعلي",
"down": "اسفل",
"wait": "الرجاء الانتظار"
"up": "يعمل",
"down": "لا يعمل",
"wait": "الرجاء الإنتظار",
"empty_data": "Subsystem status unknown"
},
"wmo": {
"73-day": "Snow",
"0-day": "Sunny",
"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",
"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-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",
"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"
"73-day": "ثلج",
"0-day": "مشمس",
"0-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": "رذاذ متجمد",
"57-night": "رذاذ متجمد",
"61-day": "مطر خفيف",
"61-night": "مطر خفيف",
"63-day": "مطر",
"63-night": "مطر",
"65-day": "مطر شديد",
"65-night": "مطر شديد",
"66-day": "مطر متجمد",
"66-night": "مطر متجمد",
"67-day": "مطر متجمد",
"67-night": "مطر متجمد",
"71-day": "ثلج خفيف",
"71-night": "ثلج خفيف",
"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": "زخات الثلوج",
"86-day": "زخات الثلوج",
"86-night": "زخات الثلوج",
"95-day": "عاصفة رعدية",
"95-night": "‬عاصفة رعدية",
"96-day": "عاصفة رعدية مع مطر",
"96-night": "عاصفة رعدية مع مطر",
"99-day": "عاصفة رعدية مع مطر",
"99-night": "عاصفة رعدية مع مطر"
},
"docker": {
"rx": "RX",
"tx": "TX",
"mem": "الرام",
"mem": "الذاكرة",
"cpu": "المعالج",
"offline": "غير متصل",
"error": "Error",
"unknown": "Unknown"
"error": "خطأ",
"unknown": "مجهول",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"emby": {
"playing": "يعمل الان",
"playing": "يعمل الآن",
"transcoding": "التحويل",
"bitrate": "معدل البت",
"no_active": "No Active Streams"
"no_active": "No Active Streams",
"songs": "Songs",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes"
},
"changedetectionio": {
"totalObserved": "Total Observed",
"diffsDetected": "Diffs Detected"
},
"tautulli": {
"playing": "Playing",
"transcoding": "Transcoding",
"bitrate": "Bitrate",
"playing": "يشتغل",
"transcoding": "التحويل",
"bitrate": "معدل البت",
"no_active": "No Active Streams"
},
"nzbget": {
"rate": "Rate",
"remaining": "Remaining",
"downloaded": "Downloaded"
"rate": "معدل",
"remaining": "متبقي",
"downloaded": "مُنزل"
},
"plex": {
"streams": "Active Streams",
"movies": "Movies",
"tv": "TV Shows"
"movies": "أفلام",
"tv": "مسلسلات"
},
"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",
"download": "تنزيل",
"upload": "تحميل",
"leech": "Leech",
"seed": "Seed"
},
"qbittorrent": {
"download": "Download",
"upload": "Upload",
"download": "تنزيل",
"upload": "تحميل",
"leech": "Leech",
"seed": "Seed"
},
"sonarr": {
"wanted": "Wanted",
"queued": "Queued",
"series": "Series"
"wanted": "مطلوب",
"queued": "في الإنتظار",
"series": "سلسلة"
},
"radarr": {
"wanted": "Wanted",
"missing": "Missing",
"queued": "Queued",
"movies": "Movies"
"wanted": "مطلوب",
"missing": "مفقود",
"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",
"processing": "Processing"
"pending": "معلق",
"approved": "مصدق",
"available": "متاح",
"processing": "معالجة"
},
"pihole": {
"queries": "Queries",
"blocked": "Blocked",
"gravity": "Gravity"
"queries": "الاستعلامات",
"blocked": "محظور",
"gravity": "الجاذبية"
},
"adguard": {
"queries": "Queries",
"blocked": "Blocked",
"filtered": "Filtered",
"latency": "Latency"
"queries": "الاستعلامات",
"blocked": "محظور",
"filtered": "مرشح",
"latency": "الإستجابة"
},
"speedtest": {
"upload": "Upload",
"download": "Download",
"upload": "التحميل",
"download": "تنزيل",
"ping": "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": "١ يوم",
"7days": "٧ أيام",
"30days": "٣٠ يوم"
},
"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"
"numberOfFailQueries": "فشل الاستعلامات"
},
"jackett": {
"configured": "Configured",
"errored": "Errored"
"errored": "خطأ"
},
"strelaysrv": {
"numActiveSessions": "Sessions",
"numConnections": "Connections",
"numActiveSessions": "الجلسات",
"numConnections": "التوصيلات",
"dataRelayed": "Relayed",
"transferRate": "Rate"
"transferRate": "معدل"
},
"mastodon": {
"user_count": "Users",
"user_count": "المستخدمين",
"status_count": "Posts",
"domain_count": "Domains"
},
"authentik": {
"users": "Users",
"loginsLast24H": "Logins (24h)",
"failedLoginsLast24H": "Failed Logins (24h)"
"users": "المستخدمين",
"loginsLast24H": "تسجيلات الدخول (٢٤س)",
"failedLoginsLast24H": "فشل تسجيلات الدخول (٢٤س)"
},
"proxmox": {
"mem": "MEM",
"cpu": "CPU",
"mem": "الذاكرة",
"cpu": "المعالج",
"lxc": "LXC",
"vms": "VMs"
},
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Please wait"
"cpu": "معالج",
"mem": "الذاكرة",
"wait": "الرجاء الإنتظار",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service"
"bookmark": "مفضلة",
"service": "خدمة",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"homebridge": {
"available_update": "System",
"updates": "Updates",
"update_available": "Update Available",
"up_to_date": "Up to Date",
"available_update": "نظام",
"updates": "تحديثات",
"update_available": "تحديث متاح",
"up_to_date": "حتى الآن",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"watchtower": {
"containers_scanned": "Scanned",
"containers_updated": "Updated",
"containers_failed": "Failed"
"containers_updated": "محدث",
"containers_failed": "فشل"
},
"autobrr": {
"approvedPushes": "Approved",
"rejectedPushes": "Rejected",
"filters": "Filters",
"indexers": "Indexers"
"approvedPushes": "مصدق",
"rejectedPushes": "مرفوض",
"filters": "المرشحات",
"indexers": "مفهرسات"
},
"tubearchivist": {
"downloads": "Queue",
"videos": "Videos",
"channels": "Channels",
"playlists": "Playlists"
"downloads": "إنتظار",
"videos": "الفيديوهات",
"channels": "القنوات",
"playlists": "قوائم التشغيل"
},
"truenas": {
"load": "System Load",
"uptime": "Uptime",
"alerts": "Alerts",
"load": "حمل النظام",
"uptime": "مدة التشغيل",
"alerts": "تنبيهات",
"time": "{{value, number(style: unit; unitDisplay: long;)}}"
},
"navidrome": {
"nothing_streaming": "No Active Streams",
"please_wait": "Please Wait"
"please_wait": "الرجاء الإنتظار"
},
"pyload": {
"speed": "Speed",
"active": "Active",
"queue": "Queue",
"total": "Total"
"speed": "السرعة",
"active": "نشط",
"queue": "إنتظار",
"total": "مجموع"
},
"gluetun": {
"public_ip": "Public IP",
"region": "Region",
"country": "Country"
"public_ip": "العام IP",
"region": "منطقة",
"country": "الدولة"
},
"hdhomerun": {
"channels": "Channels",
"channels": "قنوات",
"hd": "HD"
},
"ping": {
"error": "Error",
"error": "خطأ",
"ping": "Ping"
},
"scrutiny": {
"passed": "Passed",
"failed": "Failed",
"unknown": "Unknown"
"passed": "إجتاز",
"failed": "فشل",
"unknown": "مجهول"
},
"paperlessngx": {
"inbox": "Inbox",
"total": "Total"
"inbox": "صندوق الوارد",
"total": "المجموع"
},
"deluge": {
"download": "Download",
"upload": "Upload",
"download": "تنزيل",
"upload": "تحميل",
"leech": "Leech",
"seed": "Seed"
},
"flood": {
"download": "Download",
"upload": "Upload",
"download": "التنزيل",
"upload": "التحميل",
"leech": "Leech",
"seed": "Seed"
},
"tdarr": {
"queue": "Queue",
"processed": "Processed",
"errored": "Errored",
"saved": "Saved"
"queue": "إنتظار",
"processed": "معالجة",
"errored": "خطأ",
"saved": "حفظ"
},
"miniflux": {
"read": "Read",
"unread": "Unread"
"read": "قراءة",
"unread": "غير مقروء"
},
"nextdns": {
"wait": "Please Wait",
"no_devices": "No Device Data Received"
"wait": "الرجاء الإنتظار",
"no_devices": "لم يتم استلام بيانات الجهاز"
},
"common": {
"bibyterate": "{{value, rate(bits: false; binary: true)}}",
"bibitrate": "{{value, rate(bits: true; binary: true)}}"
},
"omada": {
"connectedAp": "Connected APs",
"activeUser": "Active devices",
"alerts": "Alerts",
"connectedAp": "المتصلة APs",
"activeUser": "الأجهزة النشطة",
"alerts": "تنبيهات",
"connectedGateway": "Connected gateways",
"connectedSwitches": "Connected switches"
},
"downloadstation": {
"download": "Download",
"upload": "Upload",
"download": "تنزيل",
"upload": "تحميل",
"leech": "Leech",
"seed": "Seed"
},
"mikrotik": {
"cpuLoad": "CPU Load",
"memoryUsed": "Memory Used",
"uptime": "Uptime",
"cpuLoad": "حمل المعالج",
"memoryUsed": "الذاكرة الستخدمة",
"uptime": "مدة التشغيل",
"numberOfLeases": "Leases"
},
"xteve": {
"streams_all": "All Streams",
"streams_active": "Active Streams",
"streams_xepg": "XEPG Channels"
"streams_xepg": "XEPG قنوات"
},
"opnsense": {
"cpu": "CPU Load",
"memory": "Active Memory",
"wanUpload": "WAN Upload",
"wanDownload": "WAN Download"
"cpu": "حمل المعالج",
"memory": "الذاكرة النشطة",
"wanUpload": "WAN التحميل",
"wanDownload": "WAN التنزيل"
},
"moonraker": {
"printer_state": "Printer State",
"print_status": "Print Status",
"print_progress": "Progress",
"layers": "Layers"
"printer_state": "حالة الطابعة",
"print_status": "حالة الطابعة",
"print_progress": "تقدم",
"layers": "طبقات"
},
"medusa": {
"wanted": "Wanted",
"queued": "Queued",
"series": "Series"
"wanted": "مطلوب",
"queued": "في الإنتظار",
"series": "سلسلة"
},
"octoPrint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
"octoprint": {
"printer_state": "حالة",
"temp_tool": "أداة درجة الحرارة",
"temp_bed": "درجة حرارة السرير",
"job_completion": "إتمام"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "حالة"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"volumeAvailable": "Available",
"uptime": "Uptime"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+150 -8
View File
@@ -32,7 +32,15 @@
"total": "Общо",
"free": "Свободни",
"used": "Заети",
"load": "Натоварване"
"load": "Натоварване",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"unifi": {
"users": "Потребители",
@@ -48,7 +56,8 @@
"wlan": "WLAN",
"devices": "Devices",
"lan_devices": "LAN Devices",
"wlan_devices": "WLAN Devices"
"wlan_devices": "WLAN Devices",
"empty_data": "Subsystem status unknown"
},
"docker": {
"offline": "Изключен",
@@ -57,13 +66,24 @@
"mem": "MEM",
"cpu": "CPU",
"error": "Error",
"unknown": "Unknown"
"unknown": "Unknown",
"partial": "Partial",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"healthy": "Healthy"
},
"emby": {
"playing": "Възпроизвежда",
"transcoding": "Конвертира",
"bitrate": "Bitrate",
"no_active": "Няма активни потоци"
"no_active": "Няма активни потоци",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"tautulli": {
"playing": "Възпроизвежда",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Please wait"
"wait": "Please wait",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Total Observed",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service"
"service": "Service",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"homebridge": {
"available_update": "System",
@@ -287,7 +315,10 @@
"update_available": "Update Available",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"autobrr": {
"rejectedPushes": "Rejected",
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"down": "Sites Down",
"up": "Sites Up",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"down": "Offline",
"grace": "In Grace Period",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+151 -9
View File
@@ -38,7 +38,15 @@
"free": "Lliure",
"used": "Utilitzat",
"load": "Càrrega",
"cpu": "CPU"
"cpu": "CPU",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"docker": {
"rx": "Rebut",
@@ -47,13 +55,24 @@
"cpu": "Processador",
"offline": "Fora de línia",
"error": "Error",
"unknown": "Desconegut"
"unknown": "Desconegut",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"emby": {
"playing": "Reproduint",
"transcoding": "Transcodificant",
"bitrate": "Taxa de bits",
"no_active": "Sense reproduccions actives"
"no_active": "Sense reproduccions actives",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"tautulli": {
"playing": "Reproduint",
@@ -184,7 +203,7 @@
"failedLoginsLast24H": "Errors d'inici de sessió (24h)"
},
"proxmox": {
"vms": "Màquines Virtuals",
"vms": "VMs",
"mem": "Memòria",
"cpu": "Processador",
"lxc": "LXC"
@@ -203,7 +222,8 @@
"wlan": "WLAN",
"devices": "Dispositius",
"lan_devices": "Dispositius LAN",
"wlan_devices": "Dispositius WLAN"
"wlan_devices": "Dispositius WLAN",
"empty_data": "Subsystem status unknown"
},
"plex": {
"streams": "Transmissions actives",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "Processador",
"mem": "Memòria",
"wait": "Si us plau, espereu"
"wait": "Si us plau, espereu",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Total d'observats",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Marcador",
"service": "Servei"
"service": "Servei",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"homebridge": {
"available_update": "Sistema",
@@ -287,7 +315,10 @@
"update_available": "Actualització disponible",
"up_to_date": "Actualitzat",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"autobrr": {
"approvedPushes": "Aprovat",
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"m": "m",
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+228 -86
View File
@@ -14,11 +14,11 @@
"widget": {
"missing_type": "Chybí typ widgetu: {{type}}",
"api_error": "Chyba API",
"status": "Status",
"information": "Information",
"status": "Stav",
"information": "Informace",
"url": "URL",
"raw_error": "Raw Error",
"response_data": "Response Data"
"raw_error": "Nevyřešená chyba",
"response_data": "Data odezvy"
},
"weather": {
"current": "Aktuální poloha",
@@ -34,7 +34,15 @@
"total": "Celkem",
"free": "Volné",
"used": "Využité",
"load": "Vytížení"
"load": "Vytížení",
"mem": "RAM",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m",
"temp": "TEMP"
},
"unifi": {
"users": "Uživatelé",
@@ -50,7 +58,8 @@
"wlan_users": "WLAN Uživatelé",
"up": "BĚŽÍ",
"down": "NEBĚŽÍ",
"wait": "Počkejte prosím"
"wait": "Počkejte prosím",
"empty_data": "Status podsystému neznámý"
},
"docker": {
"rx": "RX",
@@ -58,14 +67,25 @@
"mem": "RAM",
"cpu": "CPU",
"offline": "Offline",
"error": "Error",
"unknown": "Unknown"
"error": "Chyba",
"unknown": "Neznámý",
"running": "Běží",
"starting": "Startuje",
"unhealthy": "Nezdravý",
"not_found": "Nenalezen",
"exited": "Ukončen",
"partial": "Částečný",
"healthy": "Zdravý"
},
"emby": {
"playing": "Přehrává",
"transcoding": "Transkódování",
"bitrate": "Bitrate",
"no_active": "Žádný aktivní stream"
"no_active": "Žádný aktivní stream",
"movies": "Filmy",
"series": "Seriály",
"episodes": "Epizody",
"songs": "Písničky"
},
"changedetectionio": {
"totalObserved": "Celkem zjištěno",
@@ -100,33 +120,33 @@
"transmission": {
"download": "Stahování",
"upload": "Nahrávání",
"leech": "Leecher",
"seed": "Seeder"
"leech": "Leecherů",
"seed": "Seedů"
},
"qbittorrent": {
"download": "Stahování",
"upload": "Nahrávání",
"leech": "Leecher",
"seed": "Seeder"
"leech": "Leechované",
"seed": "Seedované"
},
"sonarr": {
"wanted": "Hledaný",
"wanted": "Hledané",
"queued": "Ve frontě",
"series": "Seriály"
},
"radarr": {
"wanted": "Hledaný",
"wanted": "Hledané",
"missing": "Chybějící",
"queued": "Ve frontě",
"movies": "Filmy"
},
"lidarr": {
"wanted": "Hledaný",
"wanted": "Hledané",
"queued": "Ve frontě",
"albums": "Alba"
},
"readarr": {
"wanted": "Hledaný",
"wanted": "Hledané",
"queued": "Ve frontě",
"books": "Knihy"
},
@@ -137,23 +157,23 @@
"ombi": {
"pending": "Čeká",
"approved": "Schváleno",
"available": "Dostupný"
"available": "Dostupné"
},
"jellyseerr": {
"pending": "Čeká",
"approved": "Schváleno",
"available": "Dostupný"
"available": "Dostupné"
},
"overseerr": {
"pending": "Čeká",
"approved": "Schváleno",
"available": "Dostupný",
"processing": "Processing"
"available": "Dostupné",
"processing": "Zpracovávání"
},
"pihole": {
"queries": "Dotazy",
"blocked": "Blokováno",
"gravity": "Gravitace"
"gravity": "Gravity"
},
"adguard": {
"queries": "Dotazy",
@@ -287,19 +307,30 @@
"glances": {
"cpu": "CPU",
"mem": "RAM",
"wait": "Prosím počkejte"
"wait": "Prosím počkejte",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"quicklaunch": {
"bookmark": "Záložka",
"service": "Služba"
"service": "Služba",
"search": "Hledat",
"custom": "Vlastní",
"visit": "Navštivte",
"url": "URL"
},
"homebridge": {
"update_available": "Dostupná aktualizace",
"up_to_date": "Aktuální",
"update_available": "Dostupná",
"up_to_date": "Žádné",
"available_update": "Systém",
"updates": "Aktualizace",
"child_bridges": "Podřadné můstky",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Zapnutý",
"pending": "Čeká se",
"down": "Vypnutý"
},
"watchtower": {
"containers_scanned": "Naskenováno",
@@ -313,112 +344,223 @@
"indexers": "Indexery"
},
"navidrome": {
"nothing_streaming": "No Active Streams",
"please_wait": "Please Wait"
"nothing_streaming": "Žádné aktivní streamy",
"please_wait": "Čekejte prosím"
},
"pyload": {
"speed": "Speed",
"active": "Active",
"queue": "Queue",
"total": "Total"
"speed": "Rychlost",
"active": "Aktivní",
"queue": "Fronta",
"total": "Celkem"
},
"gluetun": {
"public_ip": "Public IP",
"region": "Region",
"country": "Country"
"public_ip": "Veřejná IP",
"region": "Oblast",
"country": "Stát"
},
"hdhomerun": {
"channels": "Channels",
"channels": "Kanály",
"hd": "HD"
},
"ping": {
"error": "Error",
"ping": "Ping"
"error": "Chyba",
"ping": "Odezva"
},
"scrutiny": {
"passed": "Passed",
"failed": "Failed",
"unknown": "Unknown"
"passed": "Přijato",
"failed": "Neúspěšné",
"unknown": "Neznámé"
},
"paperlessngx": {
"inbox": "Inbox",
"total": "Total"
"inbox": "Doručená pošta",
"total": "Celkem"
},
"deluge": {
"upload": "Upload",
"upload": "Nahrávání",
"leech": "Leech",
"seed": "Seed",
"download": "Download"
"download": "Stahování"
},
"flood": {
"download": "Download",
"upload": "Upload",
"download": "Stahování",
"upload": "Nahrávání",
"leech": "Leech",
"seed": "Seed"
},
"tdarr": {
"queue": "Queue",
"processed": "Processed",
"errored": "Errored",
"saved": "Saved"
"queue": "Fronta",
"processed": "Zpracováno",
"errored": "Chybné",
"saved": "Uložené"
},
"miniflux": {
"read": "Read",
"unread": "Unread"
"read": "Přečteno",
"unread": "Nepřečteno"
},
"nextdns": {
"wait": "Please Wait",
"no_devices": "No Device Data Received"
"wait": "Počkejte prosím",
"no_devices": "Žádná přijatá data zařízení"
},
"common": {
"bibyterate": "{{value, rate(bits: false; binary: true)}}",
"bibitrate": "{{value, rate(bits: true; binary: true)}}"
},
"omada": {
"connectedAp": "Connected APs",
"activeUser": "Active devices",
"alerts": "Alerts",
"connectedGateway": "Connected gateways",
"connectedSwitches": "Connected switches"
"connectedAp": "Připojené APs",
"activeUser": "Aktivní zařízení",
"alerts": "Upozornění",
"connectedGateway": "Připojené brány",
"connectedSwitches": "Připojené přepínače"
},
"downloadstation": {
"download": "Download",
"upload": "Upload",
"download": "Stahování",
"upload": "Nahrávání",
"leech": "Leech",
"seed": "Seed"
},
"mikrotik": {
"cpuLoad": "CPU Load",
"memoryUsed": "Memory Used",
"uptime": "Uptime",
"numberOfLeases": "Leases"
"cpuLoad": "Zatížení procesoru",
"memoryUsed": "Použitá paměť",
"uptime": "Doba provozu",
"numberOfLeases": "Pronájmy"
},
"xteve": {
"streams_all": "All Streams",
"streams_active": "Active Streams",
"streams_xepg": "XEPG Channels"
"streams_all": "Všechny proudy",
"streams_active": "Aktivní proudy",
"streams_xepg": "Kanály XEPG"
},
"opnsense": {
"cpu": "CPU Load",
"memory": "Active Memory",
"wanUpload": "WAN Upload",
"wanDownload": "WAN Download"
"cpu": "Zatížení procesoru",
"memory": "Aktivní paměť",
"wanUpload": "Nahrávání WAN",
"wanDownload": "WAN Stažení"
},
"moonraker": {
"print_progress": "Progress",
"printer_state": "Printer State",
"print_status": "Print Status",
"layers": "Layers"
"print_progress": "Progres",
"printer_state": "Stav tiskárny",
"print_status": "Stav tisku",
"layers": "Vrstvy"
},
"medusa": {
"wanted": "Wanted",
"queued": "Queued",
"series": "Series"
"wanted": "Hledané",
"queued": "Fronta",
"series": "Série"
},
"octoPrint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
"octoprint": {
"printer_state": "Stav",
"temp_tool": "Teplota nástroje",
"temp_bed": "Teplota postele",
"job_completion": "Dokončení"
},
"cloudflared": {
"origin_ip": "Původní IP",
"status": "Stav"
},
"proxmoxbackupserver": {
"datastore_usage": "Datové úložiště",
"failed_tasks_24h": "Neúspěšné úlohy 24h",
"cpu_usage": "CPU",
"memory_usage": "Paměť"
},
"immich": {
"users": "Uživatelé",
"photos": "Fotografie",
"videos": "Videa",
"storage": "Úložiště"
},
"uptimekuma": {
"up": "Stránky Up",
"down": "Stránky Down",
"uptime": "Doba provozu",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Knihovny",
"series": "Série",
"books": "Knihy"
},
"mylar": {
"series": "Série",
"issues": "Problémy",
"wanted": "Hledá se"
},
"photoprism": {
"albums": "Alba",
"photos": "Fotografie",
"videos": "Videa",
"people": "Lidé"
},
"diskstation": {
"days": "Dni",
"uptime": "Doba provozu",
"volumeAvailable": "K dispozici"
},
"fileflows": {
"queue": "Fronta",
"processing": "Zpracování",
"processed": "Zpracováno",
"time": "Čas"
},
"grafana": {
"dashboards": "Přístrojové panely",
"datasources": "Zdroje dat",
"totalalerts": "Celkový počet upozornění",
"alertstriggered": "Spuštěné výstrahy"
},
"nextcloud": {
"cpuload": "CPU zatížení",
"memoryusage": "Využití paměti",
"freespace": "Volný prostor",
"activeusers": "Aktivní uživatelé"
},
"kopia": {
"status": "Stav",
"size": "Velikost",
"lastrun": "Poslední spuštění",
"nextrun": "Další spuštění",
"failed": "Neúspěšné"
},
"unmanic": {
"active_workers": "Aktivní workers",
"total_workers": "Workers celkem",
"records_total": "Délka fronty"
},
"healthchecks": {
"new": "Nové",
"up": "Online",
"grace": "V období odkladu",
"down": "Offline",
"paused": "Pozastaveno",
"status": "Stav",
"last_ping": "Poslední ping",
"never": "Zatím žádné pingy"
},
"pterodactyl": {
"servers": "Servery",
"nodes": "Uzly"
},
"prometheus": {
"targets_down": "Cíle vypnuté",
"targets_total": "Cíle celkem",
"targets_up": "Cíle zapnuté"
},
"minecraft": {
"up": "Online",
"down": "Offline",
"players": "Hráči",
"version": "Verze",
"status": "Stav"
},
"ghostfolio": {
"gross_percent_today": "Dnes",
"gross_percent_1y": "Jeden rok",
"gross_percent_max": "Za celou dobu"
},
"audiobookshelf": {
"podcasts": "Podcasty",
"books": "Knihy",
"podcastsDuration": "Trvání",
"booksDuration": "Trvání"
}
}
+150 -8
View File
@@ -68,7 +68,11 @@
"glances": {
"cpu": "CPU",
"mem": "RAM",
"wait": "Vent venligst"
"wait": "Vent venligst",
"uptime": "UP",
"days": "d",
"hours": "h",
"temp": "TEMP"
},
"wmo": {
"1-day": "Hovedsageligt solrigt",
@@ -134,7 +138,10 @@
"update_available": "Opdateringer tilgængelige",
"up_to_date": "Opdateret",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"widget": {
"missing_type": "Manglende Widget Type: {{type}}",
@@ -159,7 +166,15 @@
"total": "Total",
"free": "Fri",
"used": "Brugt",
"load": "Belastning"
"load": "Belastning",
"mem": "MEM",
"hours": "h",
"minutes": "m",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d"
},
"unifi": {
"users": "Brugere",
@@ -175,7 +190,8 @@
"wlan_users": "WLAN Brugere",
"up": "Oppe",
"down": "NED",
"wait": "Vent venligst"
"wait": "Vent venligst",
"empty_data": "Subsystem status unknown"
},
"docker": {
"cpu": "CPU",
@@ -184,13 +200,24 @@
"mem": "RAM",
"offline": "Offline",
"error": "Error",
"unknown": "Unknown"
"unknown": "Unknown",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"emby": {
"playing": "Afspiller",
"transcoding": "Transcoder",
"bitrate": "Bitrate",
"no_active": "Ingen Aktive Streams"
"no_active": "Ingen Aktive Streams",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"changedetectionio": {
"totalObserved": "Total Observeret",
@@ -287,7 +314,11 @@
},
"quicklaunch": {
"bookmark": "Bogmærker",
"service": "Service"
"service": "Service",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"watchtower": {
"containers_scanned": "Scannet",
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"totalalerts": "Total Alerts",
"dashboards": "Dashboards",
"datasources": "Data Sources",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"memoryusage": "Memory Usage",
"cpuload": "Cpu Load",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"booksDuration": "Duration",
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration"
}
}
+200 -58
View File
@@ -4,8 +4,8 @@
"api_error": "API-Fehler",
"status": "Status",
"url": "URL",
"information": "Information",
"raw_error": "Raw Error",
"information": "Informationen",
"raw_error": "Unbearbeiteter Fehler",
"response_data": "Empfangene Daten"
},
"search": {
@@ -16,7 +16,15 @@
"free": "Frei",
"used": "Gebraucht",
"load": "Last",
"cpu": "CPU"
"cpu": "CPU",
"mem": "RAM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"docker": {
"rx": "Rx",
@@ -24,14 +32,25 @@
"mem": "Mem",
"cpu": "Prozessor",
"offline": "Offline",
"error": "Error",
"unknown": "Unknown"
"error": "Fehler",
"unknown": "Unbekannt",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"emby": {
"playing": "Spielen",
"transcoding": "Transcodierung",
"bitrate": "Bitrate",
"no_active": "Keine aktiven Streams"
"no_active": "Keine aktiven Streams",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"tautulli": {
"playing": "Spielen",
@@ -105,7 +124,7 @@
"pending": "Ausstehend",
"approved": "Genehmigt",
"available": "Verfügbar",
"processing": "Processing"
"processing": "Wird verarbeitet"
},
"sabnzbd": {
"rate": "Geschwindigkeit",
@@ -203,7 +222,8 @@
"wlan": "WLAN",
"devices": "Geräte",
"lan_devices": "LAN-Geräte",
"wlan_devices": "WLAN Geräte"
"wlan_devices": "WLAN Geräte",
"empty_data": "Subsystem status unbekannt"
},
"plex": {
"streams": "Aktive Streams",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "Prozessor",
"mem": "RAM",
"wait": "Bitte warten"
"wait": "Bitte warten",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Gesamt beobachtet",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Lesezeichen",
"service": "Dienst"
"service": "Dienst",
"search": "Suchen",
"custom": "Benutzerdefiniert",
"visit": "Besuchen",
"url": "URL"
},
"homebridge": {
"available_update": "System",
@@ -287,7 +315,10 @@
"update_available": "Aktualisierung verfügbar",
"up_to_date": "Aktuell",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"autobrr": {
"approvedPushes": "Genehmigt",
@@ -313,36 +344,36 @@
"time": "{{value, number(style: unit; unitDisplay: long;)}}"
},
"navidrome": {
"nothing_streaming": "No Active Streams",
"please_wait": "Please Wait"
"nothing_streaming": "Keine Aktiven Übertragungen",
"please_wait": "Bitte warten"
},
"pyload": {
"speed": "Speed",
"active": "Active",
"queue": "Queue",
"total": "Total"
"speed": "Geschwindigkeit",
"active": "Aktiv",
"queue": "Warteschlange",
"total": "Gesamt"
},
"gluetun": {
"public_ip": "Public IP",
"public_ip": "Öffentliche IP",
"region": "Region",
"country": "Country"
"country": "Land"
},
"hdhomerun": {
"channels": "Channels",
"channels": "Kanäle",
"hd": "HD"
},
"ping": {
"ping": "Ping",
"error": "Error"
"error": "Fehler"
},
"scrutiny": {
"passed": "Passed",
"failed": "Failed",
"unknown": "Unknown"
"passed": "Bestanden",
"failed": "Fehlgeschlagen",
"unknown": "Unbekannt"
},
"paperlessngx": {
"inbox": "Inbox",
"total": "Total"
"inbox": "Eingang",
"total": "Gesamt"
},
"deluge": {
"download": "Download",
@@ -357,29 +388,29 @@
"seed": "Seed"
},
"tdarr": {
"queue": "Queue",
"processed": "Processed",
"errored": "Errored",
"saved": "Saved"
"queue": "Warteschlange",
"processed": "Verarbeitet",
"errored": "Fehlgeschlagen",
"saved": "Gespeichert"
},
"miniflux": {
"unread": "Unread",
"read": "Read"
"unread": "Ungelesen",
"read": "Lesen"
},
"nextdns": {
"wait": "Please Wait",
"no_devices": "No Device Data Received"
"wait": "Bitte Warten",
"no_devices": "Keine Daten empfangen"
},
"common": {
"bibyterate": "{{value, rate(bits: false; binary: true)}}",
"bibitrate": "{{value, rate(bits: true; binary: true)}}"
},
"omada": {
"connectedAp": "Connected APs",
"activeUser": "Active devices",
"alerts": "Alerts",
"connectedGateway": "Connected gateways",
"connectedSwitches": "Connected switches"
"connectedAp": "Verbundene APs",
"activeUser": "Aktive Geräte",
"alerts": "Meldungen",
"connectedGateway": "Verbundene Gateways",
"connectedSwitches": "Verbundene Switches"
},
"downloadstation": {
"download": "Download",
@@ -388,37 +419,148 @@
"seed": "Seed"
},
"mikrotik": {
"cpuLoad": "CPU Load",
"memoryUsed": "Memory Used",
"uptime": "Uptime",
"cpuLoad": "CPU Auslastung",
"memoryUsed": "RAM Verbrauch",
"uptime": "Laufzeit",
"numberOfLeases": "Leases"
},
"xteve": {
"streams_all": "All Streams",
"streams_active": "Active Streams",
"streams_xepg": "XEPG Channels"
"streams_all": "Keine Übertragungen",
"streams_active": "Aktive Streams",
"streams_xepg": "XEPG Kanäle"
},
"opnsense": {
"cpu": "CPU Load",
"memory": "Active Memory",
"cpu": "CPU Auslastung",
"memory": "Aktiver RAM",
"wanUpload": "WAN Upload",
"wanDownload": "WAN Download"
},
"moonraker": {
"printer_state": "Printer State",
"print_status": "Print Status",
"print_progress": "Progress",
"layers": "Layers"
"printer_state": "Drucker Status",
"print_status": "Druck Status",
"print_progress": "Fortschritt",
"layers": "Schichten"
},
"medusa": {
"wanted": "Wanted",
"queued": "Queued",
"series": "Series"
"wanted": "Gesucht",
"queued": "Wartend",
"series": "Serie"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
"temp_tool": "Düsen Temp",
"temp_bed": "Bett Temp",
"job_completion": "Fortschritt"
},
"cloudflared": {
"origin_ip": "Ursprüngliche IP",
"status": "Status"
},
"proxmoxbackupserver": {
"cpu_usage": "CPU",
"datastore_usage": "Datenspeicher",
"failed_tasks_24h": "Fehlgeschlagene Prozesse 24h",
"memory_usage": "RAM"
},
"immich": {
"users": "Benutzer",
"photos": "Fotos",
"videos": "Videos",
"storage": "Speicher"
},
"uptimekuma": {
"up": "Seiten verfügbar",
"down": "Seiten nicht verfügbar",
"uptime": "Laufzeit",
"incident": "Vorfall",
"m": "m"
},
"komga": {
"libraries": "Bibliotheken",
"series": "Serie",
"books": "Bücher"
},
"mylar": {
"series": "Serie",
"issues": "Probleme",
"wanted": "Gesucht"
},
"photoprism": {
"albums": "Alben",
"photos": "Fotos",
"videos": "Videos",
"people": "Personen"
},
"diskstation": {
"days": "Tage",
"uptime": "Laufzeit",
"volumeAvailable": "Verfügbar"
},
"fileflows": {
"queue": "Warteschlange",
"processing": "Wird verarbeitet",
"processed": "Verarbeitet",
"time": "Zeit"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Datenquellen",
"totalalerts": "Gesamte Meldungen",
"alertstriggered": "Ausgelöste Alarme"
},
"nextcloud": {
"cpuload": "CPU Last",
"memoryusage": "RAM Verbrauch",
"freespace": "Freier Speicher",
"activeusers": "Aktive Nutzer"
},
"kopia": {
"status": "Status",
"size": "Größe",
"lastrun": "Letzter Durchlauf",
"nextrun": "Nächster Durchlauf",
"failed": "Fehlgeschlagen"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"grace": "In Grace Period",
"new": "Neu",
"up": "Online",
"down": "Offline",
"paused": "Pausiert",
"status": "Status",
"last_ping": "Letzter Ping",
"never": "Noch keine Pings"
},
"pterodactyl": {
"servers": "Server",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Spieler",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_max": "All time",
"gross_percent_today": "Heute",
"gross_percent_1y": "Ein Jahr"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
Regular → Executable
+151 -9
View File
@@ -32,10 +32,18 @@
},
"resources": {
"cpu": "CPU",
"mem": "MEM",
"total": "Total",
"free": "Free",
"used": "Used",
"load": "Load"
"load": "Load",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"unifi": {
"users": "Users",
@@ -51,16 +59,24 @@
"wlan_users": "WLAN Users",
"up": "UP",
"down": "DOWN",
"wait": "Please wait"
"wait": "Please wait",
"empty_data": "Subsystem status unknown"
},
"docker": {
"rx": "RX",
"tx": "TX",
"mem": "MEM",
"cpu": "CPU",
"running": "Running",
"offline": "Offline",
"error": "Error",
"unknown": "Unknown"
"unknown": "Unknown",
"healthy": "Healthy",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial"
},
"ping": {
"error": "Error",
@@ -70,7 +86,11 @@
"playing": "Playing",
"transcoding": "Transcoding",
"bitrate": "Bitrate",
"no_active": "No Active Streams"
"no_active": "No Active Streams",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"flood": {
"download": "Download",
@@ -260,6 +280,13 @@
"queued": "Queued",
"series": "Series"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"miniflux": {
"read": "Read",
"unread": "Unread"
@@ -278,11 +305,19 @@
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Please wait"
"wait": "Please wait",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service"
"service": "Service",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"wmo": {
"0-day": "Sunny",
@@ -348,7 +383,20 @@
"update_available": "Update Available",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"watchtower": {
"containers_scanned": "Scanned",
@@ -424,10 +472,104 @@
"print_progress": "Progress",
"layers": "Layers"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
}
+150 -8
View File
@@ -22,7 +22,15 @@
"total": "Totalo",
"free": "Libera",
"used": "Uzata",
"load": "Ŝarĝo"
"load": "Ŝarĝo",
"mem": "MEM",
"temp": "TEMP",
"months": "mo",
"max": "Max",
"uptime": "UP",
"days": "d",
"hours": "h",
"minutes": "m"
},
"unifi": {
"users": "Uzantoj",
@@ -38,7 +46,8 @@
"wlan_users": "WLAN Users",
"up": "UP",
"down": "DOWN",
"wait": "Please wait"
"wait": "Please wait",
"empty_data": "Subsystem status unknown"
},
"docker": {
"rx": "RX",
@@ -47,7 +56,14 @@
"cpu": "Ĉefprocesoro",
"offline": "Offline",
"error": "Eraro",
"unknown": "Nekonata"
"unknown": "Nekonata",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"ping": {
"error": "Eraro",
@@ -57,7 +73,11 @@
"playing": "Ludante",
"transcoding": "Transcoding",
"bitrate": "Bitrate",
"no_active": "No Active Streams"
"no_active": "No Active Streams",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"changedetectionio": {
"totalObserved": "Total Observed",
@@ -231,11 +251,19 @@
"glances": {
"cpu": "Ĉefprocesoro",
"mem": "Memoro",
"wait": "Bonvolu atendi"
"wait": "Bonvolu atendi",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Servo"
"service": "Servo",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"wmo": {
"0-day": "Suna",
@@ -301,7 +329,10 @@
"update_available": "Update Available",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"watchtower": {
"containers_scanned": "Scanned",
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"activeusers": "Active Users",
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+154 -12
View File
@@ -16,7 +16,15 @@
"free": "Libre",
"used": "Usado",
"load": "Carga",
"cpu": "CPU"
"cpu": "CPU",
"mem": "MEM",
"temp": "TEMPORAL",
"max": "Máximo",
"uptime": "ARRIBA",
"months": "Meses",
"days": "Días",
"hours": "Horas",
"minutes": "Minutos"
},
"docker": {
"rx": "Recibido",
@@ -25,13 +33,24 @@
"cpu": "Procesador",
"offline": "Desconectado",
"error": "Fallo",
"unknown": "Desconocido"
"unknown": "Desconocido",
"running": "Ejecutando",
"starting": "Comenzando",
"unhealthy": "Insalubre",
"not_found": "No encontrado",
"exited": "Salida",
"partial": "Parcial",
"healthy": "Saludable"
},
"emby": {
"playing": "Reproduciendo",
"transcoding": "Transcodificando",
"bitrate": "Tasa de bits",
"no_active": "Sin transmisiones activas"
"no_active": "Sin transmisiones activas",
"movies": "Películas",
"series": "Serie",
"episodes": "Episodios",
"songs": "Canciones"
},
"tautulli": {
"playing": "Reproduciendo",
@@ -139,7 +158,7 @@
"transmission": {
"download": "Bajada",
"upload": "Subida",
"leech": "Leech",
"leech": "Sanguijuela",
"seed": "Semillas"
},
"jackett": {
@@ -203,7 +222,8 @@
"wlan": "WLAN",
"devices": "Dispositivos",
"lan_devices": "Dispositivos LAN",
"wlan_devices": "Dispositivos WLAN"
"wlan_devices": "Dispositivos WLAN",
"empty_data": "Se desconoce el estado del subsistema"
},
"plex": {
"streams": "Transmisiones activas",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "Procesador",
"mem": "Memoria",
"wait": "Espere por favor"
"wait": "Espere por favor",
"temp": "TEMPORAL",
"uptime": "ARRIBA",
"days": "Días",
"hours": "Horas"
},
"changedetectionio": {
"totalObserved": "Total Observados",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Marcadores",
"service": "Servicio"
"service": "Servicio",
"search": "Buscar",
"custom": "Personalizado",
"visit": "Visita",
"url": "URL"
},
"homebridge": {
"available_update": "Sistema",
@@ -287,7 +315,10 @@
"update_available": "Actualización disponible",
"up_to_date": "Actualizado",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Arriba",
"pending": "Pendiente",
"down": "Abajo"
},
"autobrr": {
"approvedPushes": "Aprobado",
@@ -415,10 +446,121 @@
"queued": "A la espera",
"series": "Serie"
},
"octoPrint": {
"octoprint": {
"temp_bed": "temperatura de la plataforma",
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
"temp_tool": "Herramienta de temperatura",
"job_completion": "Finalización"
},
"cloudflared": {
"origin_ip": "IP de origen",
"status": "Estado"
},
"proxmoxbackupserver": {
"cpu_usage": "CPU",
"datastore_usage": "Almacén de datos",
"failed_tasks_24h": "Tareas fallidas en 24h",
"memory_usage": "Memoria"
},
"immich": {
"users": "Usuarios",
"photos": "Fotos",
"videos": "Vídeos",
"storage": "Almacenamiento"
},
"uptimekuma": {
"up": "Páginas web activas",
"down": "Páginas web inactivas",
"uptime": "Disponibilidad",
"incident": "Incidencia",
"m": "m"
},
"komga": {
"libraries": "Librerías",
"series": "Series",
"books": "Libros"
},
"mylar": {
"issues": "Cuestiones",
"series": "Series",
"wanted": "Buscado"
},
"photoprism": {
"albums": "Álbumes",
"photos": "Fotos",
"videos": "Vídeos",
"people": "Personas"
},
"diskstation": {
"days": "Días",
"uptime": "Funcionando",
"volumeAvailable": "Disponible"
},
"fileflows": {
"queue": "Cola",
"processing": "Procesando",
"processed": "Procesado",
"time": "Tiempo"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Fuentes de datos",
"totalalerts": "Alertas totales",
"alertstriggered": "Alertas activadas"
},
"nextcloud": {
"cpuload": "Carga de la CPU",
"memoryusage": "Uso de la memoria",
"freespace": "Espacio libre",
"activeusers": "Usuarios activos"
},
"kopia": {
"status": "Estado",
"size": "Tamaño",
"lastrun": "Última ejecución",
"nextrun": "Siguiente ejecución",
"failed": "Fallido"
},
"unmanic": {
"active_workers": "Trabajadores en activo",
"total_workers": "Total de trabajadores",
"records_total": "Duración de la cola"
},
"healthchecks": {
"new": "Nuevo",
"up": "Conectado",
"down": "Desconectado",
"grace": "En Periodo de Gracia",
"paused": "Pausado",
"status": "Estado",
"last_ping": "Último Ping",
"never": "Aún no hay pings"
},
"pterodactyl": {
"servers": "Servidores",
"nodes": "Nodos"
},
"prometheus": {
"targets_up": "Objetivos arriba",
"targets_down": "Objetivos abajo",
"targets_total": "Objetivos totales"
},
"minecraft": {
"status": "Estado",
"up": "En línea",
"players": "Jugadores",
"version": "Versión",
"down": "Sin conexión"
},
"ghostfolio": {
"gross_percent_today": "Hoy",
"gross_percent_1y": "Un año",
"gross_percent_max": "Todo el tiempo"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Libros",
"podcastsDuration": "Duración",
"booksDuration": "Duración"
}
}
+155 -13
View File
@@ -22,7 +22,15 @@
"total": "Yhteensä",
"free": "Vapaana",
"used": "Käytetty",
"load": "Kuorma"
"load": "Kuorma",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"docker": {
"rx": "RX",
@@ -31,13 +39,24 @@
"cpu": "CPU",
"offline": "Offline",
"error": "Error",
"unknown": "Unknown"
"unknown": "Unknown",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"emby": {
"playing": "Toistaa",
"transcoding": "Transkoodaa",
"bitrate": "Bittinopeus",
"no_active": "Ei aktiivisia striimejä"
"no_active": "Ei aktiivisia striimejä",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"tautulli": {
"playing": "Toistaa",
@@ -194,7 +213,7 @@
"uptime": "System Uptime",
"lan_users": "LAN Users",
"wlan_users": "WLAN Users",
"wait": "Please wait",
"wait": "Odota, ole hyvä",
"days": "Days",
"wan": "WAN",
"up": "UP",
@@ -203,7 +222,8 @@
"lan_devices": "LAN Devices",
"lan": "LAN",
"wlan": "WLAN",
"wlan_devices": "WLAN Devices"
"wlan_devices": "WLAN Devices",
"empty_data": "Subsystem status unknown"
},
"plex": {
"streams": "Active Streams",
@@ -213,7 +233,11 @@
"glances": {
"wait": "Please wait",
"cpu": "CPU",
"mem": "MEM"
"mem": "MEM",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Total Observed",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service"
"service": "Service",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"homebridge": {
"available_update": "System",
@@ -287,7 +315,10 @@
"update_available": "Update Available",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"autobrr": {
"approvedPushes": "Approved",
@@ -314,7 +345,7 @@
},
"navidrome": {
"nothing_streaming": "No Active Streams",
"please_wait": "Please Wait"
"please_wait": "Odota, ole hyvä"
},
"pyload": {
"speed": "Speed",
@@ -411,14 +442,125 @@
"layers": "Layers"
},
"medusa": {
"wanted": "Wanted",
"queued": "Queued",
"series": "Series"
"wanted": "Haluttu",
"queued": "Jonossa",
"series": "Sarja"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+157 -15
View File
@@ -16,7 +16,15 @@
"free": "Libre",
"used": "Utilisé",
"load": "Charge",
"cpu": "CPU"
"cpu": "CPU",
"mem": "MÉM",
"max": "Max",
"temp": "TEMP",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"docker": {
"rx": "Rx",
@@ -25,13 +33,24 @@
"cpu": "Cpu",
"offline": "Hors ligne",
"error": "Erreur",
"unknown": "Inconnu"
"unknown": "Inconnu",
"running": "Démarré",
"starting": "Démarrage",
"unhealthy": "Dysfonctionnement",
"not_found": "Inconnu",
"exited": "Arrêté",
"partial": "Partiel",
"healthy": "Fonctionnel"
},
"emby": {
"playing": "En lecture",
"transcoding": "Transcodage",
"bitrate": "Débit",
"no_active": "Aucun flux actif"
"no_active": "Aucun flux actif",
"movies": "Films",
"series": "Séries TV",
"episodes": "Épisodes",
"songs": "Musique"
},
"tautulli": {
"playing": "En lecture",
@@ -46,12 +65,12 @@
},
"sonarr": {
"wanted": "Demande",
"queued": "En attente",
"queued": "Attente",
"series": "Séries"
},
"radarr": {
"wanted": "Demande",
"queued": "En attente",
"queued": "Attente",
"movies": "Films",
"missing": "Manquant"
},
@@ -102,14 +121,14 @@
"wait": "Veuillez patienter"
},
"overseerr": {
"pending": "En attente",
"pending": "Attente",
"approved": "Demande",
"available": "Disponible",
"processing": "En traitement"
"processing": "Traitement"
},
"sabnzbd": {
"rate": "Débit",
"queue": "Queue",
"queue": "En attente",
"timeleft": "Temps restant"
},
"nzbget": {
@@ -203,7 +222,8 @@
"wlan": "WLAN",
"devices": "Équipt.",
"lan_devices": "Équipt. LAN",
"wlan_devices": "Équipt. WLAN"
"wlan_devices": "Équipt. WLAN",
"empty_data": "Statut sous-système inconnu"
},
"plex": {
"streams": "Flux actif",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "Cpu",
"mem": "Mém",
"wait": "Merci de patienter"
"wait": "Merci de patienter",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Total Observé",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Signet",
"service": "Service"
"service": "Service",
"search": "Recherche",
"custom": "Personnalisé",
"visit": "Aller vers",
"url": "URL"
},
"homebridge": {
"available_update": "Système",
@@ -287,7 +315,10 @@
"update_available": "Mise à jour disponible",
"up_to_date": "À jour",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"autobrr": {
"approvedPushes": "Approuvé",
@@ -360,7 +391,7 @@
"queue": "À traiter",
"processed": "Traité",
"errored": "En erreur",
"saved": "Enregistré"
"saved": "Economisé"
},
"miniflux": {
"read": "Lu",
@@ -415,10 +446,121 @@
"queued": "En attente",
"series": "Séries"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
"job_completion": "Achèvement"
},
"cloudflared": {
"origin_ip": "IP Publique",
"status": "Statut"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Tâches échouées 24h",
"cpu_usage": "CPU",
"memory_usage": "Mémoire"
},
"immich": {
"users": "Utilisateurs",
"photos": "Photos",
"videos": "Vidéos",
"storage": "Stockage"
},
"uptimekuma": {
"up": "En ligne",
"down": "Hors ligne",
"uptime": "Dispo.",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Librairies",
"series": "Séries",
"books": "Livres"
},
"mylar": {
"series": "Séries",
"issues": "Issues",
"wanted": "Demande"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Vidéos",
"people": "Personnes"
},
"diskstation": {
"days": "Jours",
"uptime": "Fonctionnement",
"volumeAvailable": "Disponible"
},
"fileflows": {
"queue": "À traiter",
"processing": "Traitement",
"processed": "Traité",
"time": "Temps"
},
"grafana": {
"dashboards": "Tableau de bord",
"datasources": "Sources données",
"totalalerts": "Total alertes",
"alertstriggered": "Alertes déclenchées"
},
"nextcloud": {
"freespace": "Espace Libre",
"activeusers": "Utilisateurs Actifs",
"cpuload": "Charge Cpu",
"memoryusage": "Utilisation Mémoire"
},
"kopia": {
"status": "Statut",
"size": "Taille",
"lastrun": "Dernière exécution",
"nextrun": "Prochaine exécution",
"failed": "En erreur"
},
"unmanic": {
"active_workers": "En cours",
"total_workers": "Total",
"records_total": "En attente"
},
"healthchecks": {
"new": "Nouveau",
"up": "En ligne",
"grace": "En Période de Grâce",
"down": "Hors ligne",
"paused": "En Pause",
"status": "Statut",
"last_ping": "Dernier Ping",
"never": "Pas de Ping"
},
"pterodactyl": {
"servers": "Serveurs",
"nodes": "Nœuds"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Joueurs",
"version": "Version",
"status": "Statut",
"up": "En ligne",
"down": "Hors ligne"
},
"ghostfolio": {
"gross_percent_today": "Aujourd'hui",
"gross_percent_1y": "Un an",
"gross_percent_max": "Depuis le début"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Livres",
"podcastsDuration": "Durée",
"booksDuration": "Durée"
}
}
+150 -8
View File
@@ -22,7 +22,15 @@
"free": "פנוי",
"used": "בשימוש",
"load": "עומס",
"cpu": "CPU"
"cpu": "CPU",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"docker": {
"rx": "RX",
@@ -31,13 +39,24 @@
"cpu": "מעבד",
"offline": "כבוי",
"error": "Error",
"unknown": "Unknown"
"unknown": "Unknown",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"emby": {
"playing": "מנגן",
"transcoding": "מקודד",
"bitrate": "סיביות",
"no_active": "אין הזרמות פעילות"
"no_active": "אין הזרמות פעילות",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"tautulli": {
"playing": "מנגן",
@@ -203,7 +222,8 @@
"wlan": "WLAN",
"devices": "Devices",
"lan_devices": "LAN Devices",
"wlan_devices": "WLAN Devices"
"wlan_devices": "WLAN Devices",
"empty_data": "Subsystem status unknown"
},
"plex": {
"streams": "Active Streams",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Please wait"
"wait": "Please wait",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Total Observed",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service"
"service": "Service",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"homebridge": {
"available_update": "System",
@@ -287,7 +315,10 @@
"update_available": "Update Available",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"autobrr": {
"approvedPushes": "Approved",
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+150 -8
View File
@@ -56,7 +56,15 @@
"total": "Total",
"free": "Free",
"used": "Used",
"load": "Load"
"load": "Load",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"unifi": {
"users": "Users",
@@ -72,7 +80,8 @@
"wlan_users": "WLAN Users",
"up": "UP",
"down": "DOWN",
"wait": "Please wait"
"wait": "Please wait",
"empty_data": "Subsystem status unknown"
},
"docker": {
"rx": "RX",
@@ -81,13 +90,24 @@
"cpu": "CPU",
"offline": "Offline",
"error": "Error",
"unknown": "Unknown"
"unknown": "Unknown",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"emby": {
"playing": "Playing",
"transcoding": "Transcoding",
"bitrate": "Bitrate",
"no_active": "No Active Streams"
"no_active": "No Active Streams",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"changedetectionio": {
"totalObserved": "Total Observed",
@@ -221,11 +241,19 @@
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Please wait"
"wait": "Please wait",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service"
"service": "Service",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"wmo": {
"0-day": "Sunny",
@@ -291,7 +319,10 @@
"update_available": "Update Available",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"watchtower": {
"containers_scanned": "Scanned",
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+150 -8
View File
@@ -13,7 +13,15 @@
"free": "Slobodno",
"used": "Korišteno",
"load": "Opterećenje",
"cpu": "CPU"
"cpu": "CPU",
"mem": "MEM",
"minutes": "m",
"max": "Max",
"uptime": "UP",
"months": "mo",
"temp": "TEMP",
"days": "d",
"hours": "h"
},
"sabnzbd": {
"rate": "Stopa",
@@ -72,13 +80,24 @@
"cpu": "CPU",
"offline": "Nepovezan",
"error": "Greška",
"unknown": "Nepoznato"
"unknown": "Nepoznato",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"emby": {
"playing": "Reprodukcija",
"transcoding": "Prekodiranje",
"bitrate": "Stopa bitova",
"no_active": "Nema aktivnih prijenosa"
"no_active": "Nema aktivnih prijenosa",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"tautulli": {
"playing": "Reprodukcija",
@@ -203,7 +222,8 @@
"wlan": "WLAN",
"devices": "Uređaji",
"lan_devices": "LAN uređaji",
"wlan_devices": "WLAN uređaji"
"wlan_devices": "WLAN uređaji",
"empty_data": "Subsystem status unknown"
},
"plex": {
"streams": "Aktivni prijenosi",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Pričekaj"
"wait": "Pričekaj",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Ukupno promatrano",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Straničnik",
"service": "Usluga"
"service": "Usluga",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"homebridge": {
"available_update": "Sustav",
@@ -287,7 +315,10 @@
"update_available": "Dostupna je nova verzija",
"up_to_date": "Aktualno",
"child_bridges": "Podređeni mosotvi",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"autobrr": {
"rejectedPushes": "Odbijeno",
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"videos": "Videos",
"albums": "Albums",
"photos": "Photos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"alertstriggered": "Alerts Triggered",
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+150 -8
View File
@@ -4,7 +4,15 @@
"free": "Szabad",
"used": "Használt",
"load": "Terhelés",
"cpu": "CPU"
"cpu": "CPU",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"docker": {
"rx": "RX",
@@ -13,7 +21,14 @@
"cpu": "CPU",
"offline": "Offline",
"error": "Error",
"unknown": "Unknown"
"unknown": "Unknown",
"unhealthy": "Unhealthy",
"running": "Running",
"starting": "Starting",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"lidarr": {
"albums": "Albumok",
@@ -51,7 +66,11 @@
"playing": "Lejátszás",
"transcoding": "Átkódolás",
"bitrate": "Bitráta",
"no_active": "Nincs aktív lejátszás"
"no_active": "Nincs aktív lejátszás",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"tautulli": {
"playing": "Lejátszás folyamatban",
@@ -203,7 +222,8 @@
"wlan": "WLAN",
"devices": "Devices",
"lan_devices": "LAN Devices",
"wlan_devices": "WLAN Devices"
"wlan_devices": "WLAN Devices",
"empty_data": "Subsystem status unknown"
},
"plex": {
"streams": "Active Streams",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Please wait"
"wait": "Please wait",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Total Observed",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service"
"service": "Service",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"homebridge": {
"available_update": "System",
@@ -287,7 +315,10 @@
"update_available": "Update Available",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"autobrr": {
"approvedPushes": "Approved",
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+150 -8
View File
@@ -6,13 +6,24 @@
"offline": "Offline",
"rx": "RX",
"error": "Errore",
"unknown": "Sconosciuto"
"unknown": "Sconosciuto",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"emby": {
"playing": "In riproduzione",
"transcoding": "Transcodifica",
"bitrate": "Bitrate",
"no_active": "Nessuno Stream Attivo"
"no_active": "Nessuno Stream Attivo",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"tautulli": {
"playing": "In riproduzione",
@@ -52,7 +63,15 @@
"free": "Libero",
"used": "In utilizzo",
"load": "Carico",
"cpu": "CPU"
"cpu": "CPU",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"rutorrent": {
"active": "Attivo",
@@ -203,7 +222,8 @@
"wlan": "WLAN",
"devices": "Dispositivi",
"lan_devices": "Dispositivi LAN",
"wlan_devices": "Dispositivi WLAN"
"wlan_devices": "Dispositivi WLAN",
"empty_data": "Subsystem status unknown"
},
"plex": {
"streams": "Trasmissioni attive",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Attendere prego"
"wait": "Attendere prego",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Totale Osservato",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Segnalibro",
"service": "Servizio"
"service": "Servizio",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"homebridge": {
"available_update": "Sistema",
@@ -287,7 +315,10 @@
"update_available": "Aggiornamento Disponibile",
"up_to_date": "Aggiornato",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"autobrr": {
"approvedPushes": "Approvato",
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"memoryusage": "Memory Usage",
"cpuload": "Cpu Load",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+151 -9
View File
@@ -17,7 +17,11 @@
"glances": {
"mem": "MEM",
"cpu": "CPU",
"wait": "Please wait"
"wait": "Please wait",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"autobrr": {
"filters": "Filters",
@@ -57,7 +61,15 @@
"total": "Total",
"free": "Free",
"used": "Used",
"load": "Load"
"load": "Load",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"unifi": {
"users": "Users",
@@ -73,7 +85,8 @@
"wlan_users": "WLAN Users",
"up": "UP",
"down": "DOWN",
"wait": "Please wait"
"wait": "Please wait",
"empty_data": "Subsystem status unknown"
},
"docker": {
"rx": "RX",
@@ -82,7 +95,14 @@
"cpu": "CPU",
"offline": "Offline",
"error": "Error",
"unknown": "Unknown"
"unknown": "Unknown",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"ping": {
"error": "Error",
@@ -92,7 +112,11 @@
"playing": "Playing",
"transcoding": "Transcoding",
"bitrate": "Bitrate",
"no_active": "No Active Streams"
"no_active": "No Active Streams",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"flood": {
"download": "Download",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service"
"service": "Service",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"wmo": {
"0-day": "Sunny",
@@ -345,7 +373,10 @@
"update_available": "Update Available",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"watchtower": {
"containers_scanned": "Scanned",
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"temp_bed": "Bed temp",
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"never": "No pings yet",
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_max": "All time",
"gross_percent_today": "Today",
"gross_percent_1y": "One year"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+566
View File
@@ -0,0 +1,566 @@
{
"common": {
"bibyterate": "{{value, rate(bits: false; binary: true)}}",
"bibitrate": "{{value, rate(bits: true; binary: true)}}"
},
"rutorrent": {
"download": "다운로드",
"active": "활성",
"upload": "업로드"
},
"authentik": {
"users": "Users",
"loginsLast24H": "Logins (24h)",
"failedLoginsLast24H": "Failed Logins (24h)"
},
"pterodactyl": {
"nodes": "Nodes",
"servers": "Servers"
},
"widget": {
"missing_type": "Missing Widget Type: {{type}}",
"api_error": "API 오류",
"information": "정보",
"status": "상태",
"url": "URL",
"raw_error": "Raw 오류",
"response_data": "응답 데이터"
},
"weather": {
"current": "현재 위치",
"allow": "클릭하여 허용",
"updating": "갱신 중",
"wait": "잠시만 기다리세요"
},
"search": {
"placeholder": "검색…"
},
"resources": {
"cpu": "CPU",
"mem": "MEM",
"total": "총합",
"free": "남음",
"used": "사용",
"load": "부하",
"temp": "온도",
"max": "최대",
"uptime": "가동",
"months": "달",
"days": "일",
"hours": "시간",
"minutes": "분"
},
"unifi": {
"users": "사용자",
"uptime": "시스템 업타임",
"days": "일",
"wan": "WAN",
"lan": "LAN",
"wlan": "WLAN",
"devices": "장치",
"lan_devices": "LAN 장치",
"wlan_devices": "WLAN 장치",
"lan_users": "LAN 사용자",
"wlan_users": "WLAN 사용자",
"up": "UP",
"down": "DOWN",
"wait": "잠시만 기다리세요",
"empty_data": "서브시스템 상태 알 수 없음"
},
"docker": {
"rx": "RX",
"tx": "TX",
"mem": "MEM",
"cpu": "CPU",
"running": "가동 중",
"offline": "중지",
"error": "오류",
"unknown": "알 수 없음",
"healthy": "좋음",
"starting": "시작 중",
"unhealthy": "이상",
"not_found": "찾을 수 없음",
"exited": "종료됨",
"partial": "부분적"
},
"ping": {
"error": "오류",
"ping": "Ping"
},
"emby": {
"playing": "재생 중",
"transcoding": "트랜스코딩",
"bitrate": "비트레이트",
"no_active": "활성 스트림 없음",
"movies": "영화",
"series": "시리즈",
"episodes": "에피소드",
"songs": "음악"
},
"flood": {
"download": "다운로드",
"upload": "업로드",
"leech": "리치",
"seed": "시드"
},
"changedetectionio": {
"totalObserved": "Total Observed",
"diffsDetected": "변경 감지됨"
},
"tautulli": {
"playing": "재생 중",
"transcoding": "트랜스코딩",
"bitrate": "비트레이트",
"no_active": "활성 스트림 없음"
},
"omada": {
"connectedAp": "연결된 AP",
"activeUser": "활성 장치",
"alerts": "경고",
"connectedGateway": "연결된 게이트웨이",
"connectedSwitches": "연결된 스위치"
},
"nzbget": {
"rate": "비율",
"remaining": "남음",
"downloaded": "다운로드됨"
},
"plex": {
"streams": "활성 스트림",
"movies": "영화",
"tv": "TV 쇼"
},
"sabnzbd": {
"rate": "비율",
"queue": "대기열",
"timeleft": "남은 시간"
},
"transmission": {
"download": "다운로드",
"upload": "업로드",
"leech": "리치",
"seed": "시드"
},
"qbittorrent": {
"download": "다운로드",
"upload": "업로드",
"leech": "리치",
"seed": "시드"
},
"deluge": {
"download": "다운로드",
"upload": "업로드",
"leech": "리치",
"seed": "시드"
},
"downloadstation": {
"download": "다운로드",
"upload": "업로드",
"leech": "리치",
"seed": "시드"
},
"sonarr": {
"wanted": "요청",
"queued": "대기 중",
"series": "시리즈"
},
"radarr": {
"wanted": "요청",
"missing": "빠짐",
"queued": "대기 중",
"movies": "영화"
},
"lidarr": {
"wanted": "요청",
"queued": "대기 중",
"albums": "앨범"
},
"readarr": {
"wanted": "요청",
"queued": "대기 중",
"books": "책"
},
"bazarr": {
"missingEpisodes": "빠진 에피소드",
"missingMovies": "빠진 영화"
},
"ombi": {
"pending": "대기 중",
"approved": "승인됨",
"available": "이용 가능"
},
"jellyseerr": {
"pending": "대기 중",
"approved": "승인됨",
"available": "사용 가능"
},
"overseerr": {
"pending": "대기 중",
"processing": "처리 중",
"approved": "승인됨",
"available": "사용 가능"
},
"pihole": {
"queries": "쿼리",
"blocked": "차단됨",
"gravity": "Gravity"
},
"adguard": {
"queries": "쿼리",
"blocked": "차단됨",
"filtered": "필터링됨",
"latency": "지연"
},
"speedtest": {
"upload": "업로드",
"download": "다운로드",
"ping": "Ping"
},
"portainer": {
"running": "가동 중",
"stopped": "중지",
"total": "총합"
},
"tdarr": {
"queue": "대기열",
"processed": "처리됨",
"errored": "오류",
"saved": "저장됨"
},
"traefik": {
"routers": "라우터",
"services": "서비스",
"middleware": "미들웨어"
},
"navidrome": {
"nothing_streaming": "활성 스트림 없음",
"please_wait": "잠시만 기다리세요"
},
"npm": {
"enabled": "활성",
"disabled": "비활성",
"total": "총합"
},
"coinmarketcap": {
"configure": "한 개 이상의 가상화폐를 설정하여 추적",
"1hour": "1시간",
"1day": "1일",
"7days": "7일",
"30days": "30일"
},
"gotify": {
"apps": "어플리케이션",
"clients": "클라이언트",
"messages": "메시지"
},
"prowlarr": {
"enableIndexers": "인덱서",
"numberOfGrabs": "Grabs",
"numberOfQueries": "Queries",
"numberOfFailGrabs": "Fail Grabs",
"numberOfFailQueries": "Fail Queries"
},
"jackett": {
"configured": "Configured",
"errored": "Errored"
},
"strelaysrv": {
"numActiveSessions": "Sessions",
"numConnections": "Connections",
"dataRelayed": "Relayed",
"transferRate": "Rate"
},
"mastodon": {
"user_count": "Users",
"status_count": "Posts",
"domain_count": "Domains"
},
"medusa": {
"wanted": "Wanted",
"queued": "Queued",
"series": "Series"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"miniflux": {
"read": "Read",
"unread": "Unread"
},
"proxmox": {
"mem": "MEM",
"cpu": "CPU",
"lxc": "LXC",
"vms": "VMs"
},
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Please wait",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"wmo": {
"0-day": "Sunny",
"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",
"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",
"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",
"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"
},
"homebridge": {
"available_update": "System",
"updates": "Updates",
"update_available": "Update Available",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"watchtower": {
"containers_scanned": "Scanned",
"containers_updated": "Updated",
"containers_failed": "Failed"
},
"autobrr": {
"approvedPushes": "Approved",
"rejectedPushes": "Rejected",
"filters": "Filters",
"indexers": "Indexers"
},
"tubearchivist": {
"downloads": "Queue",
"videos": "Videos",
"channels": "Channels",
"playlists": "Playlists"
},
"truenas": {
"load": "System Load",
"uptime": "Uptime",
"alerts": "Alerts",
"time": "{{value, number(style: unit; unitDisplay: long;)}}"
},
"pyload": {
"speed": "Speed",
"active": "Active",
"queue": "Queue",
"total": "Total"
},
"gluetun": {
"public_ip": "Public IP",
"region": "Region",
"country": "Country"
},
"hdhomerun": {
"channels": "Channels",
"hd": "HD"
},
"scrutiny": {
"passed": "Passed",
"failed": "Failed",
"unknown": "Unknown"
},
"paperlessngx": {
"inbox": "Inbox",
"total": "Total"
},
"nextdns": {
"wait": "Please Wait",
"no_devices": "No Device Data Received"
},
"mikrotik": {
"cpuLoad": "CPU Load",
"memoryUsed": "Memory Used",
"uptime": "Uptime",
"numberOfLeases": "Leases"
},
"xteve": {
"streams_all": "All Streams",
"streams_active": "Active Streams",
"streams_xepg": "XEPG Channels"
},
"opnsense": {
"cpu": "CPU Load",
"memory": "Active Memory",
"wanUpload": "WAN Upload",
"wanDownload": "WAN Download"
},
"moonraker": {
"printer_state": "Printer State",
"print_status": "Print Status",
"print_progress": "Progress",
"layers": "Layers"
},
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+150 -8
View File
@@ -26,7 +26,15 @@
"total": "Kopā",
"free": "Brīvs",
"used": "Izmantojas",
"load": "Ielādē"
"load": "Ielādē",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"unifi": {
"users": "Lietotāji",
@@ -42,7 +50,8 @@
"wlan_users": "WLAN lietotāji",
"up": "DARBOJAS",
"down": "NEDARBOJAS",
"wait": "Lūdzu, uzgaidiet"
"wait": "Lūdzu, uzgaidiet",
"empty_data": "Subsystem status unknown"
},
"docker": {
"rx": "RX",
@@ -51,7 +60,14 @@
"cpu": "CPU",
"offline": "Bezsaistē",
"error": "Kļūda",
"unknown": "Nezināms"
"unknown": "Nezināms",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"ping": {
"error": "Kļūda",
@@ -61,7 +77,11 @@
"playing": "Atskaņo",
"transcoding": "Pārkodē",
"bitrate": "Bitrate",
"no_active": "Nav aktīvu straumju"
"no_active": "Nav aktīvu straumju",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"flood": {
"download": "Lejupielāde",
@@ -269,11 +289,19 @@
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Please wait"
"wait": "Please wait",
"uptime": "UP",
"days": "d",
"hours": "h",
"temp": "TEMP"
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service"
"service": "Service",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"wmo": {
"0-day": "Saulains",
@@ -339,7 +367,10 @@
"update_available": "Update Available",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"watchtower": {
"containers_scanned": "Scanned",
@@ -415,10 +446,121 @@
"print_progress": "Progress",
"layers": "Layers"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"down": "Offline",
"players": "Players",
"status": "Status",
"up": "Online",
"version": "Version"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+150 -8
View File
@@ -4,7 +4,15 @@
"total": "Jumlah",
"free": "Bebas",
"used": "Telah diguna",
"load": "Beban"
"load": "Beban",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"unifi": {
"uptime": "Masa Operasi Sistem",
@@ -20,7 +28,8 @@
"wlan_users": "Pengguna WLAN",
"up": "HIDUP",
"down": "MATI",
"wait": "Sila tunggu"
"wait": "Sila tunggu",
"empty_data": "Subsystem status unknown"
},
"lidarr": {
"queued": "Dibaris Gilir",
@@ -58,11 +67,19 @@
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Sila tunggu"
"wait": "Sila tunggu",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"quicklaunch": {
"bookmark": "Tandabuku",
"service": "Servis"
"service": "Servis",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"wmo": {
"0-day": "Terik",
@@ -152,7 +169,14 @@
"cpu": "CPU",
"offline": "Luar talian",
"error": "Ralat",
"unknown": "Tidak Diketahui"
"unknown": "Tidak Diketahui",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"changedetectionio": {
"totalObserved": "Jumlah Diperhatikan",
@@ -162,7 +186,11 @@
"playing": "Sedang dimainkan",
"transcoding": "Transkoding",
"bitrate": "Kadar bit",
"no_active": "Tiada Strim Aktif"
"no_active": "Tiada Strim Aktif",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"tautulli": {
"playing": "Sedang Dimainkan",
@@ -287,7 +315,10 @@
"updates": "Kemaskini",
"update_available": "Kemaskini Tersedia",
"up_to_date": "Terkemaskini",
"child_bridges": "Jambatan Anak"
"child_bridges": "Jambatan Anak",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"watchtower": {
"containers_scanned": "Terimbas",
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+150 -8
View File
@@ -16,7 +16,15 @@
"free": "Ledig",
"used": "Brukt",
"load": "Last inn",
"cpu": "CPU"
"cpu": "CPU",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"docker": {
"rx": "Mottatt",
@@ -25,13 +33,24 @@
"cpu": "Prosessor",
"offline": "Frakoblet",
"error": "Error",
"unknown": "Unknown"
"unknown": "Unknown",
"running": "Running",
"starting": "Starting",
"exited": "Exited",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"partial": "Partial",
"healthy": "Healthy"
},
"emby": {
"playing": "Spiller",
"transcoding": "Transkoding",
"bitrate": "Bitrate",
"no_active": "Ingen aktive strømmer"
"no_active": "Ingen aktive strømmer",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"tautulli": {
"playing": "Spiller",
@@ -203,7 +222,8 @@
"wlan": "WLAN",
"devices": "Devices",
"lan_devices": "LAN Devices",
"wlan_devices": "WLAN Devices"
"wlan_devices": "WLAN Devices",
"empty_data": "Subsystem status unknown"
},
"plex": {
"streams": "Active Streams",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Please wait"
"wait": "Please wait",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Total Observed",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service"
"service": "Service",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"homebridge": {
"available_update": "System",
@@ -287,7 +315,10 @@
"update_available": "Update Available",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"autobrr": {
"approvedPushes": "Approved",
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+242 -100
View File
@@ -1,6 +1,6 @@
{
"widget": {
"missing_type": "Missing Widget Type: {{type}}",
"missing_type": "Missend Widget Type: {{type}}",
"api_error": "API Error",
"status": "Status",
"information": "Informatie",
@@ -13,7 +13,15 @@
"free": "Vrij",
"used": "Gebruikt",
"load": "Laadt",
"cpu": "CPU"
"cpu": "CPU",
"mem": "MEM",
"days": "d",
"hours": "h",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"minutes": "m"
},
"docker": {
"rx": "RX",
@@ -22,7 +30,14 @@
"cpu": "CPU",
"offline": "Offline",
"error": "Fout",
"unknown": "Onbekend"
"unknown": "Onbekend",
"running": "Running",
"starting": "Starten",
"unhealthy": "Ongezond",
"not_found": "Niet Gevonden",
"exited": "Verlaten",
"partial": "Gedeeltelijk",
"healthy": "Gezond"
},
"speedtest": {
"upload": "Upload",
@@ -47,13 +62,17 @@
"playing": "Afspelen",
"transcoding": "Transcodering",
"bitrate": "Bitsnelheid",
"no_active": "Geen Actieve Steams"
"no_active": "Geen Actieve Steams",
"movies": "Films",
"series": "Series",
"episodes": "Afleveringen",
"songs": "Liedjes"
},
"tautulli": {
"playing": "Afspelen",
"transcoding": "Transcodering",
"bitrate": "Bitsnelheid",
"no_active": "No Active Streams"
"no_active": "Geen Actieve Streams"
},
"rutorrent": {
"active": "Actief",
@@ -69,12 +88,12 @@
"movies": "Films",
"wanted": "Gezocht",
"queued": "In de wachtrij",
"missing": "Missing"
"missing": "Missend"
},
"readarr": {
"wanted": "Wanted",
"queued": "Queued",
"books": "Books"
"wanted": "Gezocht",
"queued": "In de wachtrij",
"books": "Boeken"
},
"ombi": {
"pending": "In afwachting",
@@ -102,32 +121,32 @@
"total": "Totaal"
},
"overseerr": {
"pending": "Pending",
"approved": "Approved",
"available": "Available",
"pending": "In Afwachting",
"approved": "Goedgekeurd",
"available": "Beschikbaar",
"processing": "Processing"
},
"sabnzbd": {
"rate": "Rate",
"queue": "Queue",
"queue": "Wachtrij",
"timeleft": "Time Left"
},
"nzbget": {
"rate": "Rate",
"remaining": "Remaining",
"downloaded": "Downloaded"
"remaining": "Resterend",
"downloaded": "Gedownload"
},
"coinmarketcap": {
"configure": "Configure one or more crypto currencies to track",
"1hour": "1 Hour",
"7days": "7 Days",
"1day": "1 Day",
"30days": "30 Days"
"1hour": "1 Uur",
"7days": "7 Dagen",
"1day": "1 Dag",
"30days": "30 Dagen"
},
"gotify": {
"apps": "Applications",
"apps": "Applicaties",
"clients": "Clients",
"messages": "Messages"
"messages": "Berichten"
},
"prowlarr": {
"enableIndexers": "Indexers",
@@ -143,21 +162,21 @@
"seed": "Seed"
},
"jackett": {
"configured": "Configured",
"configured": "Geconfigureerd",
"errored": "Errored"
},
"bazarr": {
"missingEpisodes": "Missing Episodes",
"missingMovies": "Missing Movies"
"missingEpisodes": "Ontbrekende Afleveringen",
"missingMovies": "Ontbrekende Films"
},
"lidarr": {
"wanted": "Wanted",
"queued": "Queued",
"wanted": "Gezocht",
"queued": "In de wachtrij",
"albums": "Albums"
},
"adguard": {
"queries": "Queries",
"blocked": "Blocked",
"blocked": "Geblokkeerd",
"filtered": "Filtered",
"latency": "Latency"
},
@@ -170,7 +189,7 @@
"mastodon": {
"user_count": "Users",
"status_count": "Posts",
"domain_count": "Domains"
"domain_count": "Domeinen"
},
"strelaysrv": {
"numActiveSessions": "Sessions",
@@ -179,7 +198,7 @@
"transferRate": "Rate"
},
"authentik": {
"users": "Users",
"users": "Gebruikers",
"loginsLast24H": "Logins (24h)",
"failedLoginsLast24H": "Failed Logins (24h)"
},
@@ -203,36 +222,41 @@
"wlan": "WLAN",
"devices": "Apparaten",
"lan_devices": "LAN Apparaten",
"wlan_devices": "WLAN Apparaten"
"wlan_devices": "WLAN Apparaten",
"empty_data": "Subsystem status unknown"
},
"plex": {
"streams": "Active Streams",
"movies": "Movies",
"tv": "TV Shows"
"streams": "Actieve Streams",
"movies": "Films",
"tv": "TV Series"
},
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Please wait"
"wait": "Please wait",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Totaal waargenomen",
"diffsDetected": "Diffs Detected"
"diffsDetected": "Verschillen Gedetecteerd"
},
"wmo": {
"0-day": "Sunny",
"0-night": "Clear",
"1-day": "Mainly Sunny",
"1-night": "Mainly Clear",
"3-day": "Cloudy",
"99-night": "Thunderstorm With Hail",
"3-night": "Cloudy",
"2-day": "Partly Cloudy",
"2-night": "Partly Cloudy",
"45-day": "Foggy",
"45-night": "Foggy",
"48-day": "Foggy",
"48-night": "Foggy",
"0-day": "Zonnig",
"0-night": "Helder",
"1-day": "Overwegend Zonnig",
"1-night": "Overwegend Helder",
"3-day": "Bewolkt",
"99-night": "Onweersbui Met Hagel",
"3-night": "Bewolkt",
"2-day": "Gedeeltelijk Bewolkt",
"2-night": "Gedeeltelijk Bewolkt",
"45-day": "Mistig",
"45-night": "Mistig",
"48-day": "Mistig",
"48-night": "Mistig",
"51-day": "Light Drizzle",
"51-night": "Light Drizzle",
"53-day": "Drizzle",
@@ -243,22 +267,22 @@
"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",
"61-day": "Lichte Regen",
"61-night": "Lichte Regen",
"63-day": "Regen",
"63-night": "Regen",
"65-day": "Hevige Regen",
"65-night": "Hevige Regen",
"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",
"71-day": "Lichte Sneeuw",
"71-night": "Lichte Sneeuw",
"73-day": "Sneeuw",
"73-night": "Sneeuw",
"75-day": "Hevige Sneeuw",
"75-night": "Hevige Sneeuw",
"77-day": "Snow Grains",
"77-night": "Snow Grains",
"80-day": "Light Showers",
@@ -271,39 +295,46 @@
"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"
"95-day": "Onweersbui",
"95-night": "Onweersbui",
"96-day": "Onweersbui Met Hagel",
"96-night": "Onweersbui Met Hagel",
"99-day": "Onweersbui Met Hagel"
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service"
"bookmark": "Bladwijzer",
"service": "Service",
"search": "Zoek",
"custom": "Custom",
"visit": "Bezoek",
"url": "URL"
},
"homebridge": {
"available_update": "System",
"available_update": "Systeem",
"updates": "Updates",
"update_available": "Update Available",
"update_available": "Update Beschikbaar",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "In afwachting van",
"down": "Down"
},
"autobrr": {
"approvedPushes": "Approved",
"rejectedPushes": "Rejected",
"approvedPushes": "Goedgekeurd",
"rejectedPushes": "Afgewezen",
"filters": "Filters",
"indexers": "Indexers"
},
"watchtower": {
"containers_scanned": "Scanned",
"containers_scanned": "Gescanned",
"containers_updated": "Updated",
"containers_failed": "Failed"
"containers_failed": "Gefaald"
},
"tubearchivist": {
"downloads": "Queue",
"videos": "Videos",
"channels": "Channels",
"channels": "Kanalen",
"playlists": "Playlists"
},
"truenas": {
@@ -313,22 +344,22 @@
"time": "{{value, number(style: unit; unitDisplay: long;)}}"
},
"navidrome": {
"nothing_streaming": "No Active Streams",
"please_wait": "Please Wait"
"nothing_streaming": "Geen Actieve Streams",
"please_wait": "Even geduld aub"
},
"pyload": {
"speed": "Speed",
"active": "Active",
"total": "Total",
"queue": "Queue"
"speed": "Snelheid",
"active": "Actief",
"total": "Totaal",
"queue": "Wachtrij"
},
"gluetun": {
"public_ip": "Public IP",
"region": "Region",
"country": "Country"
"public_ip": "Publiek IP",
"region": "Regio",
"country": "Land"
},
"hdhomerun": {
"channels": "Channels",
"channels": "Kanalen",
"hd": "HD"
},
"ping": {
@@ -337,12 +368,12 @@
},
"scrutiny": {
"passed": "Passed",
"failed": "Failed",
"unknown": "Unknown"
"failed": "Gefaald",
"unknown": "Onbekend"
},
"paperlessngx": {
"inbox": "Inbox",
"total": "Total"
"total": "Totaal"
},
"deluge": {
"download": "Download",
@@ -357,18 +388,18 @@
"seed": "Seed"
},
"tdarr": {
"queue": "Queue",
"queue": "Wachtrij",
"processed": "Processed",
"errored": "Errored",
"saved": "Saved"
},
"miniflux": {
"read": "Read",
"unread": "Unread"
"read": "Gelezen",
"unread": "Ongelezen"
},
"nextdns": {
"wait": "Please Wait",
"no_devices": "No Device Data Received"
"wait": "Even geduld aub",
"no_devices": "Geen Apparaat Data Ontvangen"
},
"common": {
"bibyterate": "{{value, rate(bits: false; binary: true)}}",
@@ -376,8 +407,8 @@
},
"omada": {
"connectedAp": "Connected APs",
"activeUser": "Active devices",
"alerts": "Alerts",
"activeUser": "Actieve apparaten",
"alerts": "Meldingen",
"connectedGateway": "Connected gateways",
"connectedSwitches": "Connected switches"
},
@@ -388,8 +419,8 @@
"seed": "Seed"
},
"mikrotik": {
"cpuLoad": "CPU Load",
"memoryUsed": "Memory Used",
"cpuLoad": "CPU Belasting",
"memoryUsed": "Geheugen Gebruikt",
"uptime": "Uptime",
"numberOfLeases": "Leases"
},
@@ -399,8 +430,8 @@
"streams_xepg": "XEPG Channels"
},
"opnsense": {
"cpu": "CPU Load",
"memory": "Active Memory",
"cpu": "CPU Belasting",
"memory": "Actief Geheugen",
"wanUpload": "WAN Upload",
"wanDownload": "WAN Download"
},
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Geheugen"
},
"immich": {
"users": "Gebruikers",
"photos": "Foto's",
"videos": "Videos",
"storage": "Opslag"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Bibliotheken",
"series": "Series",
"books": "Boeken"
},
"mylar": {
"wanted": "Wanted",
"series": "Series",
"issues": "Problemen"
},
"photoprism": {
"albums": "Albums",
"photos": "Foto's",
"videos": "Videos",
"people": "Personen"
},
"diskstation": {
"days": "Dagen",
"uptime": "Uptime",
"volumeAvailable": "Beschikbaar"
},
"fileflows": {
"queue": "Wachtrij",
"processing": "Processing",
"processed": "Processed",
"time": "Tijd"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Belasting",
"memoryusage": "Geheugen Gebruik",
"freespace": "Vrije Ruimte",
"activeusers": "Actieve Gebruikers"
},
"kopia": {
"status": "Status",
"size": "Grootte",
"lastrun": "Laatste Run",
"nextrun": "Volgende Run",
"failed": "Gefaald"
},
"unmanic": {
"active_workers": "Actieve Werkers",
"total_workers": "Totale Werkers",
"records_total": "Wachtrij Lengte"
},
"healthchecks": {
"new": "Nieuw",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Gepauzeerd",
"status": "Status",
"last_ping": "Laatste Ping",
"never": "Nog geen pings"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Spelers",
"version": "Versie",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Vandaag",
"gross_percent_1y": "Een jaar",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Boeken",
"podcastsDuration": "Duur",
"booksDuration": "Duur"
}
}
+164 -22
View File
@@ -13,13 +13,25 @@
"load": "Obciążenie",
"total": "Całkowite",
"free": "Wolne",
"cpu": "CPU"
"cpu": "CPU",
"mem": "PAM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"emby": {
"no_active": "Brak aktywnych strumieni",
"playing": "Odtwarzanie",
"transcoding": "Transkodowanie",
"bitrate": "Bitrate"
"bitrate": "Bitrate",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"tautulli": {
"playing": "Odtwarzanie",
@@ -65,7 +77,14 @@
"cpu": "Procesor",
"offline": "Offline",
"error": "Błąd",
"unknown": "Nieznany"
"unknown": "Nieznany",
"running": "Działa",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Zdrowy"
},
"nzbget": {
"rate": "Szybkość",
@@ -203,7 +222,8 @@
"wlan": "WLAN",
"devices": "Urządzenia",
"lan_devices": "Urządzenia LAN",
"wlan_devices": "Urządzenia WLAN"
"wlan_devices": "Urządzenia WLAN",
"empty_data": "Nieznany stan"
},
"plex": {
"streams": "Aktywne strumienie",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "Procesor",
"mem": "Pamięć",
"wait": "Proszę czekać"
"wait": "Proszę czekać",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"diffsDetected": "Wykryto różnic",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Zakładka",
"service": "Usługi"
"service": "Usługi",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"homebridge": {
"available_update": "System",
@@ -287,7 +315,10 @@
"update_available": "Dostępna aktualizacja",
"up_to_date": "Aktualny",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"autobrr": {
"approvedPushes": "Zaakceptowane",
@@ -394,31 +425,142 @@
"numberOfLeases": "Dzierżawy"
},
"xteve": {
"streams_all": "All Streams",
"streams_active": "Active Streams",
"streams_xepg": "XEPG Channels"
"streams_all": "Wszystkie strumienie",
"streams_active": "Aktywne strumienie",
"streams_xepg": "Kanały XEPG"
},
"opnsense": {
"cpu": "CPU Load",
"memory": "Active Memory",
"wanUpload": "WAN Upload",
"wanDownload": "WAN Download"
"cpu": "Obciążenie procesora",
"memory": "Pamięć rzeczywista",
"wanUpload": "WAN wysyłanie",
"wanDownload": "WAN pobieranie"
},
"moonraker": {
"printer_state": "Printer State",
"print_status": "Print Status",
"print_progress": "Progress",
"layers": "Layers"
"printer_state": "Stan drukarki",
"print_status": "Status wydruku",
"print_progress": "Postęp",
"layers": "Warstwy"
},
"medusa": {
"wanted": "Wanted",
"queued": "Queued",
"series": "Series"
"wanted": "Poszukiwane",
"queued": "Zakolejkowane",
"series": "Seria"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"uptime": "Uptime",
"volumeAvailable": "Available",
"days": "Days"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+306 -164
View File
@@ -31,16 +31,16 @@
"missing_type": "Tipo de Widget ausente: {{type}}",
"api_error": "Erro da API",
"status": "Status",
"information": "Information",
"information": "Informação",
"url": "URL",
"raw_error": "Raw Error",
"response_data": "Response Data"
"raw_error": "Erro Bruto",
"response_data": "Dados de Resposta"
},
"weather": {
"current": "Localização atual",
"allow": "Clique para permitir",
"updating": "Atualizando",
"wait": "Aguarde, por favor"
"wait": "Por favor aguarde"
},
"search": {
"placeholder": "Buscar…"
@@ -50,22 +50,41 @@
"free": "Livre",
"used": "Usado",
"load": "Carregamento",
"cpu": "CPU"
"cpu": "CPU",
"mem": "MEM",
"max": "Max",
"temp": "TEMP",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"docker": {
"rx": "Rx",
"tx": "Tx",
"mem": "Mem",
"rx": "Recebido",
"tx": "Transmitido",
"mem": "Memória",
"cpu": "CPU",
"offline": "Desligado",
"error": "Error",
"unknown": "Unknown"
"error": "Erro",
"unknown": "Desconhecido",
"running": "Executando",
"starting": "Iniciando",
"unhealthy": "Não-saudável",
"not_found": "Não Encontrado",
"exited": "Encerrado",
"partial": "Parcial",
"healthy": "Saudável"
},
"emby": {
"playing": "Reproduzindo",
"transcoding": "Transcodificando",
"bitrate": "Taxa de bits",
"no_active": "Sem transmissões ativas"
"no_active": "Sem transmissões ativas",
"movies": "Filmes",
"series": "Séries",
"episodes": "Episódios",
"songs": "Musicas"
},
"tautulli": {
"playing": "Reproduzindo",
@@ -99,7 +118,7 @@
"wanted": "Desejado",
"queued": "Na fila",
"movies": "Filmes",
"missing": "Missing"
"missing": "Faltando"
},
"lidarr": {
"wanted": "Desejado",
@@ -129,12 +148,12 @@
"pending": "Pendente",
"approved": "Aprovado",
"available": "Disponível",
"processing": "Processing"
"processing": "Processando"
},
"pihole": {
"queries": "Consultas",
"blocked": "Bloquado",
"gravity": "Gravity"
"blocked": "Bloqueados",
"gravity": "Gravidade"
},
"adguard": {
"queries": "Consultas",
@@ -148,9 +167,9 @@
"ping": "Ping"
},
"traefik": {
"routers": "Rotas",
"routers": "Roteadores",
"services": "Serviços",
"middleware": "Middleware"
"middleware": "Software intermediario"
},
"npm": {
"enabled": "Habilitado",
@@ -164,10 +183,10 @@
},
"prowlarr": {
"enableIndexers": "Indexadores",
"numberOfGrabs": "Grabs",
"numberOfQueries": "Queries",
"numberOfFailGrabs": "Fail Grabs",
"numberOfFailQueries": "Fail Queries"
"numberOfGrabs": "Buscas",
"numberOfQueries": "Consultas",
"numberOfFailGrabs": "Buscas sem êxito",
"numberOfFailQueries": "Consultas Falhas"
},
"jackett": {
"configured": "Configurado",
@@ -179,169 +198,181 @@
"domain_count": "Domínios"
},
"authentik": {
"users": "Users",
"users": "Usuários",
"loginsLast24H": "Logins (24h)",
"failedLoginsLast24H": "Failed Logins (24h)"
"failedLoginsLast24H": "Logins Falhos (24h)"
},
"proxmox": {
"mem": "MEM",
"mem": "Memória",
"cpu": "CPU",
"lxc": "LXC",
"vms": "VMs"
},
"unifi": {
"users": "Users",
"uptime": "System Uptime",
"days": "Days",
"users": "Usuários",
"uptime": "Tempo de Funcionamento",
"days": "Dias",
"wan": "WAN",
"lan_users": "LAN Users",
"wlan_users": "WLAN Users",
"up": "UP",
"down": "DOWN",
"wait": "Please wait",
"lan_users": "Usuarios locais",
"wlan_users": "Usuarios WLAN",
"up": "LIGADO",
"down": "CÁIDO",
"wait": "Por favor aguarde",
"lan": "LAN",
"wlan": "WLAN",
"devices": "Devices",
"lan_devices": "LAN Devices",
"wlan_devices": "WLAN Devices"
"devices": "Dispositivos",
"lan_devices": "Dispositivos LAN",
"wlan_devices": "Dispositivos WLAN",
"empty_data": "Status de Subsistema Desconhecido"
},
"plex": {
"streams": "Active Streams",
"movies": "Movies",
"tv": "TV Shows"
"streams": "Transmissões ativas",
"movies": "Filmes",
"tv": "Séries de TV"
},
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Please wait"
"wait": "Por favor aguarde",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Observados",
"diffsDetected": "Mudanças"
},
"wmo": {
"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",
"56-night": "Light Freezing Drizzle",
"57-day": "Freezing Drizzle",
"99-day": "Thunderstorm With Hail",
"99-night": "Thunderstorm With Hail",
"0-day": "Sunny",
"53-day": "Drizzle",
"0-night": "Clear",
"1-day": "Mainly Sunny",
"51-day": "Light Drizzle",
"51-night": "Light Drizzle",
"53-night": "Drizzle",
"55-day": "Heavy Drizzle",
"55-night": "Heavy Drizzle",
"56-day": "Light 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",
"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",
"86-day": "Snow Showers",
"86-night": "Snow Showers",
"95-day": "Thunderstorm",
"95-night": "Thunderstorm",
"96-day": "Thunderstorm With Hail",
"96-night": "Thunderstorm With Hail"
"1-night": "Principalmente Limpo",
"2-day": "Parcialmente Nublado",
"2-night": "Parcialmente nublado",
"3-day": "Nublado",
"3-night": "Nublado",
"45-day": "Névoa",
"45-night": "Névoa",
"48-day": "Névoa",
"48-night": "Névoa",
"56-night": "Leve Garoa Congelante",
"57-day": "Garoa Congelante",
"99-day": "Trovoada Com Granizo",
"99-night": "Trovoada Com Granizo",
"0-day": "Ensolarado",
"53-day": "Garoando",
"0-night": "Limpo",
"1-day": "Principalmente Ensolarado",
"51-day": "Leve Garoa",
"51-night": "Leve Garoa",
"53-night": "Garoando",
"55-day": "Garoa Pesada",
"55-night": "Garoa Pesada",
"56-day": "Leve Garoa Congelante",
"57-night": "Garoa Congelante",
"61-day": "Chuva Leve",
"61-night": "Chuva Leve",
"63-day": "Chuva",
"63-night": "Chuva",
"65-day": "Chuva Pesada",
"65-night": "Chuva Pesada",
"66-day": "Chuva Congelante",
"66-night": "Chuva Congelante",
"67-day": "Chuva Congelante",
"67-night": "Chuva Congelante",
"71-day": "Neve Leve",
"71-night": "Neve Leve",
"73-day": "Neve",
"73-night": "Neve",
"75-day": "Neve Pesada",
"75-night": "Neve Pesada",
"77-day": "Grãos de Neve",
"77-night": "Grãos de Neve",
"80-day": "Chuviscos Leve",
"80-night": "Chuviscos Leve",
"81-day": "Chuviscos",
"81-night": "Chuviscos",
"82-day": "Chuviscos Pesado",
"82-night": "Chuviscos Pesado",
"85-day": "Precipitação de Neve",
"85-night": "Precipitação de Neve",
"86-day": "Precipitação de Neve",
"86-night": "Precipitação de Neve",
"95-day": "Trovoada",
"95-night": "Trovoada",
"96-day": "Trovoada Com Granizo",
"96-night": "Trovoada Com Granizo"
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service"
"bookmark": "Favorito",
"service": "Serviço",
"search": "Busca",
"custom": "Personalizado",
"visit": "Visitar",
"url": "URL"
},
"homebridge": {
"available_update": "System",
"updates": "Updates",
"update_available": "Update Available",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"available_update": "Sistema",
"updates": "Atualizações",
"update_available": "Atualização Disponível",
"up_to_date": "Atualizado",
"child_bridges": "Pontes Filhas",
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pendente",
"down": "Down"
},
"autobrr": {
"approvedPushes": "Approved",
"rejectedPushes": "Rejected",
"filters": "Filters",
"indexers": "Indexers"
"approvedPushes": "Aprovado",
"rejectedPushes": "Rejeitado",
"filters": "Filtros",
"indexers": "Indexadores"
},
"watchtower": {
"containers_scanned": "Scanned",
"containers_updated": "Updated",
"containers_failed": "Failed"
"containers_scanned": "Escaneado",
"containers_updated": "Atualizado",
"containers_failed": "Falha"
},
"tubearchivist": {
"downloads": "Queue",
"videos": "Videos",
"channels": "Channels",
"playlists": "Playlists"
"downloads": "Fila",
"videos": "Vídeos",
"channels": "Canais",
"playlists": "Listas"
},
"truenas": {
"load": "System Load",
"uptime": "Uptime",
"alerts": "Alerts",
"load": "Carga do Sistema",
"uptime": "Tempo Ativo",
"alerts": "Alertas",
"time": "{{value, number(style: unit; unitDisplay: long;)}}"
},
"navidrome": {
"nothing_streaming": "No Active Streams",
"please_wait": "Please Wait"
"nothing_streaming": "Sem transmissões ativas",
"please_wait": "Por favor aguarde"
},
"pyload": {
"speed": "Speed",
"active": "Active",
"queue": "Queue",
"speed": "Velocidade",
"active": "Ativo",
"queue": "Fila",
"total": "Total"
},
"gluetun": {
"public_ip": "Public IP",
"region": "Region",
"country": "Country"
"public_ip": "IP Público",
"region": "Região",
"country": "País"
},
"hdhomerun": {
"channels": "Channels",
"channels": "Canais",
"hd": "HD"
},
"ping": {
"error": "Error",
"error": "Erro",
"ping": "Ping"
},
"scrutiny": {
"passed": "Passed",
"failed": "Failed",
"unknown": "Unknown"
"passed": "Passou",
"failed": "Falha",
"unknown": "Desconhecido"
},
"paperlessngx": {
"inbox": "Inbox",
"inbox": "Caixa de Entrada",
"total": "Total"
},
"deluge": {
@@ -357,29 +388,29 @@
"seed": "Seed"
},
"tdarr": {
"queue": "Queue",
"processed": "Processed",
"errored": "Errored",
"saved": "Saved"
"queue": "Fila",
"processed": "Processado",
"errored": "Erro",
"saved": "Salvo"
},
"miniflux": {
"read": "Read",
"unread": "Unread"
"read": "Lidos",
"unread": "Não Lidos"
},
"nextdns": {
"wait": "Please Wait",
"no_devices": "No Device Data Received"
"wait": "Por favor aguarde",
"no_devices": "Nenhum dado de dispositivo recebido"
},
"common": {
"bibyterate": "{{value, rate(bits: false; binary: true)}}",
"bibitrate": "{{value, rate(bits: true; binary: true)}}"
},
"omada": {
"connectedAp": "Connected APs",
"activeUser": "Active devices",
"alerts": "Alerts",
"connectedGateway": "Connected gateways",
"connectedSwitches": "Connected switches"
"connectedAp": "Pontos de acesso conectados",
"activeUser": "Dispositivos ativos",
"alerts": "Alertas",
"connectedGateway": "Gateways conectados",
"connectedSwitches": "Interruptores conectados"
},
"downloadstation": {
"download": "Download",
@@ -388,37 +419,148 @@
"seed": "Seed"
},
"mikrotik": {
"cpuLoad": "CPU Load",
"memoryUsed": "Memory Used",
"uptime": "Uptime",
"numberOfLeases": "Leases"
"cpuLoad": "Carga de CPU",
"memoryUsed": "Memória Utilizada",
"uptime": "Tempo Ativo",
"numberOfLeases": "Concessões"
},
"xteve": {
"streams_all": "All Streams",
"streams_active": "Active Streams",
"streams_xepg": "XEPG Channels"
"streams_all": "Todos Fluxos",
"streams_active": "Fluxos Ativos",
"streams_xepg": "Canais XEPG"
},
"opnsense": {
"cpu": "CPU Load",
"memory": "Active Memory",
"cpu": "Carga de CPU",
"memory": "Memória Ativa",
"wanUpload": "WAN Upload",
"wanDownload": "WAN Download"
},
"moonraker": {
"printer_state": "Printer State",
"print_status": "Print Status",
"print_progress": "Progress",
"layers": "Layers"
"printer_state": "Estado da Impressora",
"print_status": "Status da Impressora",
"print_progress": "Progresso",
"layers": "Camadas"
},
"medusa": {
"wanted": "Wanted",
"queued": "Queued",
"series": "Series"
"wanted": "Desejado",
"queued": "Na fila",
"series": "Séries"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
"temp_tool": "Temp. Ferramenta",
"temp_bed": "Temp. Cama",
"job_completion": "Conclusão"
},
"cloudflared": {
"origin_ip": "IP Origem",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Armaz. de Dados",
"failed_tasks_24h": "Tarefas Falhas 24h",
"cpu_usage": "CPU",
"memory_usage": "Memória"
},
"immich": {
"users": "Usuários",
"photos": "Fotos",
"videos": "Vídeos",
"storage": "Armazenamento"
},
"uptimekuma": {
"up": "Sites no Ar",
"down": "Sites Fora do Ar",
"uptime": "Tempo Ativo",
"incident": "Incidente",
"m": "m"
},
"komga": {
"libraries": "Bibliotecas",
"series": "Séries",
"books": "Livros"
},
"mylar": {
"series": "Séries",
"issues": "Problemas",
"wanted": "Desejado"
},
"photoprism": {
"videos": "Vídeos",
"albums": "Álbuns",
"photos": "Fotos",
"people": "Pessoa"
},
"diskstation": {
"days": "Dias",
"uptime": "Tempo Ativo",
"volumeAvailable": "Disponível"
},
"fileflows": {
"queue": "Fila",
"processing": "Processando",
"processed": "Processado",
"time": "Hora"
},
"grafana": {
"dashboards": "Painéis",
"datasources": "Origem de Dados",
"totalalerts": "Total Alertas",
"alertstriggered": "Alertas Disparados"
},
"nextcloud": {
"cpuload": "Carga de CPU",
"memoryusage": "Memória Utilizada",
"freespace": "Espaço Livre",
"activeusers": "Usuários Ativos"
},
"kopia": {
"status": "Status",
"size": "Tamanho",
"lastrun": "Ultima Execução",
"nextrun": "Próxima Execução",
"failed": "Falha"
},
"unmanic": {
"active_workers": "Trabalhadores Ativos",
"total_workers": "Total Trabalhadores",
"records_total": "Comprimento da Fila"
},
"healthchecks": {
"new": "Novo",
"up": "Online",
"grace": "Em Período Gratuito",
"down": "Offline",
"paused": "Pausado",
"status": "Status",
"last_ping": "Ultimo Ping",
"never": "Nenhum ping ainda"
},
"pterodactyl": {
"servers": "Servidores",
"nodes": "Nós"
},
"prometheus": {
"targets_up": "Alvo ativo",
"targets_down": "Alvo inativo",
"targets_total": "Alvos totais"
},
"minecraft": {
"players": "Reprodutores",
"version": "Versão",
"status": "Status",
"up": "Conectado",
"down": "Desconectado"
},
"ghostfolio": {
"gross_percent_today": "Hoje",
"gross_percent_1y": "Um ano",
"gross_percent_max": "Todo periodo"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Livros",
"podcastsDuration": "Duração",
"booksDuration": "Duração"
}
}
+178 -36
View File
@@ -16,7 +16,15 @@
"free": "Livre",
"used": "Utilizado",
"load": "Carga",
"cpu": "CPU"
"cpu": "CPU",
"mem": "MEM",
"max": "Max",
"temp": "TEMP",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"docker": {
"rx": "Rx",
@@ -25,13 +33,24 @@
"cpu": "CPU",
"offline": "Desligado",
"error": "Erro",
"unknown": "Desconhecido"
"unknown": "Desconhecido",
"partial": "Parcial",
"running": "A correr",
"starting": "A iniciar",
"unhealthy": "Não-saudável",
"not_found": "Não Encontrado",
"exited": "Encerrado",
"healthy": "Saudável"
},
"emby": {
"playing": "A reproduzir",
"transcoding": "Transcodificação",
"bitrate": "Taxa de bits",
"no_active": "Sem streams ativas"
"no_active": "Sem streams ativas",
"movies": "Filmes",
"series": "Séries",
"episodes": "Episódios",
"songs": "Canções"
},
"tautulli": {
"playing": "Reproduzindo",
@@ -197,7 +216,7 @@
"users": "Utilizadores"
},
"proxmox": {
"mem": "MEM",
"mem": "Memória",
"cpu": "CPU",
"lxc": "LXC",
"vms": "VMs"
@@ -216,7 +235,8 @@
"wlan": "WLAN",
"devices": "Dispositivos",
"lan_devices": "Dispositivos LAN",
"wlan_devices": "Dispositivos WLAN"
"wlan_devices": "Dispositivos WLAN",
"empty_data": "Status de Subsistema Desconhecido"
},
"plex": {
"streams": "Streams Ativas",
@@ -226,7 +246,11 @@
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Por favor, aguarde"
"wait": "Por favor, aguarde",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Total Observado",
@@ -252,38 +276,38 @@
"53-night": "Chuvisco",
"55-day": "Aguaceiro Forte",
"55-night": "Aguaceiro Forte",
"56-day": "Light Freezing Drizzle",
"56-night": "Light Freezing Drizzle",
"57-day": "Freezing Drizzle",
"57-night": "Freezing Drizzle",
"66-day": "Freezing Rain",
"56-day": "Leve Garoa Congelante",
"56-night": "Leve Garoa Congelante",
"57-day": "Garoa Congelante",
"57-night": "Garoa Congelante",
"66-day": "Chuva Congelante",
"61-day": "Chuva fraca",
"61-night": "Chuva fraca",
"63-day": "Chuva",
"63-night": "Chuva",
"65-day": "Chuva forte",
"66-night": "Freezing Rain",
"66-night": "Chuva Congelante",
"65-night": "Chuva forte",
"67-day": "Freezing Rain",
"67-night": "Freezing Rain",
"67-day": "Chuva Congelante",
"67-night": "Chuva Congelante",
"71-day": "Neve fraca",
"71-night": "Neve fraca",
"73-day": "Neve",
"73-night": "Neve",
"75-day": "Neve forte",
"75-night": "Neve forte",
"77-day": "Snow Grains",
"77-night": "Snow Grains",
"77-day": "Grãos de Neve",
"77-night": "Grãos de Neve",
"80-day": "Neve fraca",
"80-night": "Chuviscos ligeiros",
"81-day": "Chuviscos",
"81-night": "Chuviscos",
"82-day": "Chuviscos fortes",
"82-night": "Chuviscos fortes",
"85-day": "Snow Showers",
"85-night": "Snow Showers",
"86-day": "Snow Showers",
"86-night": "Snow Showers",
"85-day": "Precipitação de Neve",
"85-night": "Precipitação de Neve",
"86-day": "Precipitação de Neve",
"86-night": "Precipitação de Neve",
"95-day": "Trovoada",
"95-night": "Trovoada",
"96-day": "Trovoada com granizo",
@@ -292,15 +316,22 @@
},
"quicklaunch": {
"bookmark": "Marcador",
"service": "Serviço"
"service": "Serviço",
"search": "Busca",
"custom": "Personalizado",
"visit": "Visitar",
"url": "URL"
},
"homebridge": {
"available_update": "Sistema",
"updates": "Atualizações",
"update_available": "Atualização disponível",
"up_to_date": "Atualizado",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges": "Pontes Filhas",
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pendente",
"down": "Down"
},
"autobrr": {
"approvedPushes": "Aprovado",
@@ -400,7 +431,7 @@
"cpuLoad": "Carga do CPU",
"memoryUsed": "Memória Utilizada",
"uptime": "Ativo",
"numberOfLeases": "Leases"
"numberOfLeases": "Concessões"
},
"xteve": {
"streams_all": "Todos os Streams",
@@ -414,20 +445,131 @@
"wanDownload": "WAN Descarga"
},
"moonraker": {
"printer_state": "Printer State",
"print_status": "Print Status",
"print_progress": "Progress",
"layers": "Layers"
"printer_state": "Estado da Impressora",
"print_status": "Estado da Impressora",
"print_progress": "Progresso",
"layers": "Camadas"
},
"medusa": {
"wanted": "Wanted",
"queued": "Queued",
"series": "Series"
"wanted": "Desejado",
"queued": "Na fila",
"series": "Séries"
},
"octoPrint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
"octoprint": {
"printer_state": "Estado",
"temp_tool": "Temp. Ferramenta",
"temp_bed": "Temp. Cama",
"job_completion": "Conclusão"
},
"cloudflared": {
"origin_ip": "IP Origem",
"status": "Estado"
},
"proxmoxbackupserver": {
"datastore_usage": "Armaz. de Dados",
"failed_tasks_24h": "Tarefas Falhas 24h",
"cpu_usage": "CPU",
"memory_usage": "Memória"
},
"immich": {
"users": "Utilizadores",
"photos": "Fotos",
"videos": "Vídeos",
"storage": "Armazenamento"
},
"uptimekuma": {
"up": "Sites no Ar",
"down": "Sites Fora do Ar",
"uptime": "Tempo Ativo",
"incident": "Incidente",
"m": "m"
},
"komga": {
"libraries": "Bibliotecas",
"series": "Séries",
"books": "Livros"
},
"mylar": {
"series": "Séries",
"issues": "Problemas",
"wanted": "Desejado"
},
"photoprism": {
"albums": "Álbuns",
"photos": "Fotos",
"videos": "Vídeos",
"people": "Pessoa"
},
"diskstation": {
"days": "Dias",
"uptime": "Tempo Ativo",
"volumeAvailable": "Disponível"
},
"fileflows": {
"queue": "Fila",
"processing": "Processando",
"processed": "Processado",
"time": "Hora"
},
"grafana": {
"dashboards": "Painéis",
"datasources": "Origem de Dados",
"totalalerts": "Total Alertas",
"alertstriggered": "Alertas Disparados"
},
"nextcloud": {
"cpuload": "Carga de CPU",
"memoryusage": "Memória Utilizada",
"freespace": "Espaço Livre",
"activeusers": "Utilizadores Ativos"
},
"kopia": {
"status": "Estado",
"size": "Tamanho",
"lastrun": "Ultima Execução",
"nextrun": "Próxima Execução",
"failed": "Falha"
},
"unmanic": {
"active_workers": "Workers Ativos",
"total_workers": "Total Workers",
"records_total": "Comprimento da Fila"
},
"healthchecks": {
"never": "Nenhum ping ainda",
"new": "Novo",
"up": "Online",
"grace": "Em Período Gratuito",
"down": "Offline",
"paused": "Pausado",
"status": "Estado",
"last_ping": "Ultimo Ping"
},
"pterodactyl": {
"servers": "Servidores",
"nodes": "Nós"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total de Alvos"
},
"minecraft": {
"players": "Reprodutores",
"version": "Versão",
"status": "Estado",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Hoje",
"gross_percent_1y": "Um ano",
"gross_percent_max": "Todo o tempo"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Livros",
"podcastsDuration": "Duração",
"booksDuration": "Duração"
}
}
+157 -15
View File
@@ -4,7 +4,15 @@
"load": "Sarcină",
"total": "Total",
"free": "Disponibili",
"cpu": "Procesor"
"cpu": "Procesor",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"docker": {
"rx": "RX",
@@ -13,7 +21,14 @@
"cpu": "CPU",
"offline": "Offline",
"error": "Error",
"unknown": "Unknown"
"unknown": "Unknown",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"jellyseerr": {
"approved": "Aprobate",
@@ -64,10 +79,10 @@
"missing_type": "Lipsește Tipul de Widget: {{type}}",
"api_error": "Eroare API",
"status": "Status",
"information": "Information",
"information": "Informație",
"url": "URL",
"raw_error": "Raw Error",
"response_data": "Response Data"
"raw_error": "Eroare Raw",
"response_data": "Date de raspuns"
},
"search": {
"placeholder": "Caută…"
@@ -87,7 +102,11 @@
"playing": "Activ",
"transcoding": "Transcodare",
"bitrate": "Bitrate",
"no_active": "Niciun stream activ"
"no_active": "Niciun stream activ",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"sabnzbd": {
"rate": "Rată",
@@ -198,12 +217,13 @@
"wlan_users": "Utilizatori WLAN",
"up": "Pornit",
"down": "Oprit",
"wait": "Va rugam asteptati",
"wait": "Vă rugăm așteptați",
"lan": "LAN",
"wlan": "WLAN",
"devices": "Devices",
"lan_devices": "LAN Devices",
"wlan_devices": "WLAN Devices"
"devices": "Dispozitive",
"lan_devices": "Dispozitive LAN",
"wlan_devices": "Dispozitive WLAN",
"empty_data": "Starea subsistemului este necunoscut"
},
"plex": {
"streams": "Fluxuri active",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "Procesor",
"mem": "Memorie",
"wait": "Te rugam sa astepti"
"wait": "Te rugam sa astepti",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Total Observed",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service"
"service": "Service",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"homebridge": {
"update_available": "Update Available",
@@ -287,7 +315,10 @@
"child_bridges": "Child Bridges",
"available_update": "System",
"updates": "Updates",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"autobrr": {
"approvedPushes": "Approved",
@@ -371,7 +402,7 @@
"no_devices": "No Device Data Received"
},
"common": {
"bibyterate": "{{value, rate(bits: false; binary: true)}}",
"bibyterate": "{{valoare, rata(bits: fals; binar: adevarat)}}",
"bibitrate": "{{value, rate(bits: true; binary: true)}}"
},
"omada": {
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"activeusers": "Active Users",
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Eșuat"
},
"unmanic": {
"active_workers": "Muncitori activi",
"total_workers": "Muncitori totali",
"records_total": "Lungimea cozii"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servere",
"nodes": "Noduri"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+150 -8
View File
@@ -16,7 +16,15 @@
"free": "Свободно",
"used": "Использовано",
"load": "Загрузка",
"cpu": "Процессор"
"cpu": "Процессор",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"docker": {
"rx": "Rx",
@@ -25,13 +33,24 @@
"cpu": "Процессор",
"offline": "Не в сети",
"error": "Ошибка",
"unknown": "Неизвестный"
"unknown": "Неизвестный",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"emby": {
"playing": "Воспроизведение",
"transcoding": "Транскодирование",
"bitrate": "Битрейт",
"no_active": "Нет активных потоков"
"no_active": "Нет активных потоков",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"tautulli": {
"playing": "Воспроизведение",
@@ -203,7 +222,8 @@
"wlan": "WLAN",
"devices": "Устройства",
"lan_devices": "Устройства подключённые по LAN",
"wlan_devices": "WLAN Devices"
"wlan_devices": "WLAN Devices",
"empty_data": "Subsystem status unknown"
},
"plex": {
"streams": "Active Streams",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Please wait"
"wait": "Please wait",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Всего наблюдаемых",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service"
"service": "Service",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"homebridge": {
"available_update": "System",
@@ -287,7 +315,10 @@
"update_available": "Update Available",
"up_to_date": "Up to Date",
"child_bridges_status": "{{ok}}/{{total}}",
"child_bridges": "Child Bridges"
"child_bridges": "Child Bridges",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"autobrr": {
"approvedPushes": "Approved",
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+566
View File
@@ -0,0 +1,566 @@
{
"docker": {
"rx": "RX",
"tx": "TX",
"mem": "MEM",
"cpu": "CPU",
"offline": "Offline",
"error": "Error",
"unknown": "Unknown",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"rutorrent": {
"active": "Active",
"upload": "Upload",
"download": "Download"
},
"tdarr": {
"queue": "Queue",
"processed": "Processed",
"errored": "Errored",
"saved": "Saved"
},
"strelaysrv": {
"numActiveSessions": "Sessions",
"numConnections": "Connections",
"dataRelayed": "Relayed",
"transferRate": "Rate"
},
"proxmox": {
"vms": "VMs",
"mem": "MEM",
"cpu": "CPU",
"lxc": "LXC"
},
"wmo": {
"0-night": "Clear",
"1-day": "Mainly Sunny",
"1-night": "Mainly Clear",
"2-day": "Partly Cloudy",
"85-night": "Snow Showers",
"86-day": "Snow Showers",
"86-night": "Snow Showers",
"95-day": "Thunderstorm",
"95-night": "Thunderstorm",
"0-day": "Sunny",
"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",
"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",
"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",
"96-day": "Thunderstorm With Hail",
"96-night": "Thunderstorm With Hail",
"99-day": "Thunderstorm With Hail",
"99-night": "Thunderstorm With Hail"
},
"hdhomerun": {
"channels": "Channels",
"hd": "HD"
},
"xteve": {
"streams_all": "All Streams",
"streams_xepg": "XEPG Channels",
"streams_active": "Active Streams"
},
"moonraker": {
"layers": "Layers",
"printer_state": "Printer State",
"print_status": "Print Status",
"print_progress": "Progress"
},
"immich": {
"storage": "Storage",
"users": "Users",
"videos": "Videos",
"photos": "Photos"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"common": {
"bibyterate": "{{value, rate(bits: false; binary: true)}}",
"bibitrate": "{{value, rate(bits: true; binary: true)}}"
},
"widget": {
"api_error": "API Error",
"missing_type": "Missing Widget Type: {{type}}",
"information": "Information",
"status": "Status",
"url": "URL",
"raw_error": "Raw Error",
"response_data": "Response Data"
},
"weather": {
"current": "Current Location",
"allow": "Click to allow",
"updating": "Updating",
"wait": "Please wait"
},
"search": {
"placeholder": "Search…"
},
"resources": {
"cpu": "CPU",
"mem": "MEM",
"total": "Total",
"free": "Free",
"used": "Used",
"load": "Load",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"unifi": {
"users": "Users",
"uptime": "System Uptime",
"days": "Days",
"wan": "WAN",
"lan": "LAN",
"wlan": "WLAN",
"devices": "Devices",
"lan_devices": "LAN Devices",
"wlan_devices": "WLAN Devices",
"lan_users": "LAN Users",
"wlan_users": "WLAN Users",
"up": "UP",
"down": "DOWN",
"wait": "Please wait",
"empty_data": "Subsystem status unknown"
},
"ping": {
"error": "Error",
"ping": "Ping"
},
"emby": {
"playing": "Playing",
"transcoding": "Transcoding",
"bitrate": "Bitrate",
"no_active": "No Active Streams",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"flood": {
"download": "Download",
"upload": "Upload",
"leech": "Leech",
"seed": "Seed"
},
"changedetectionio": {
"totalObserved": "Total Observed",
"diffsDetected": "Diffs Detected"
},
"tautulli": {
"playing": "Playing",
"transcoding": "Transcoding",
"bitrate": "Bitrate",
"no_active": "No Active Streams"
},
"omada": {
"connectedAp": "Connected APs",
"activeUser": "Active devices",
"alerts": "Alerts",
"connectedGateway": "Connected gateways",
"connectedSwitches": "Connected switches"
},
"nzbget": {
"rate": "Rate",
"remaining": "Remaining",
"downloaded": "Downloaded"
},
"plex": {
"streams": "Active Streams",
"movies": "Movies",
"tv": "TV Shows"
},
"sabnzbd": {
"rate": "Rate",
"queue": "Queue",
"timeleft": "Time Left"
},
"transmission": {
"download": "Download",
"upload": "Upload",
"leech": "Leech",
"seed": "Seed"
},
"qbittorrent": {
"download": "Download",
"upload": "Upload",
"leech": "Leech",
"seed": "Seed"
},
"deluge": {
"download": "Download",
"upload": "Upload",
"leech": "Leech",
"seed": "Seed"
},
"downloadstation": {
"download": "Download",
"upload": "Upload",
"leech": "Leech",
"seed": "Seed"
},
"sonarr": {
"wanted": "Wanted",
"queued": "Queued",
"series": "Series"
},
"radarr": {
"wanted": "Wanted",
"missing": "Missing",
"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",
"processing": "Processing",
"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"
},
"navidrome": {
"nothing_streaming": "No Active Streams",
"please_wait": "Please Wait"
},
"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"
},
"mastodon": {
"user_count": "Users",
"status_count": "Posts",
"domain_count": "Domains"
},
"medusa": {
"wanted": "Wanted",
"queued": "Queued",
"series": "Series"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"miniflux": {
"read": "Read",
"unread": "Unread"
},
"authentik": {
"users": "Users",
"loginsLast24H": "Logins (24h)",
"failedLoginsLast24H": "Failed Logins (24h)"
},
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Please wait",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"homebridge": {
"available_update": "System",
"updates": "Updates",
"update_available": "Update Available",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"watchtower": {
"containers_scanned": "Scanned",
"containers_updated": "Updated",
"containers_failed": "Failed"
},
"autobrr": {
"approvedPushes": "Approved",
"rejectedPushes": "Rejected",
"filters": "Filters",
"indexers": "Indexers"
},
"tubearchivist": {
"downloads": "Queue",
"videos": "Videos",
"channels": "Channels",
"playlists": "Playlists"
},
"truenas": {
"load": "System Load",
"uptime": "Uptime",
"alerts": "Alerts",
"time": "{{value, number(style: unit; unitDisplay: long;)}}"
},
"pyload": {
"speed": "Speed",
"active": "Active",
"queue": "Queue",
"total": "Total"
},
"gluetun": {
"public_ip": "Public IP",
"region": "Region",
"country": "Country"
},
"scrutiny": {
"passed": "Passed",
"failed": "Failed",
"unknown": "Unknown"
},
"paperlessngx": {
"inbox": "Inbox",
"total": "Total"
},
"nextdns": {
"wait": "Please Wait",
"no_devices": "No Device Data Received"
},
"mikrotik": {
"cpuLoad": "CPU Load",
"memoryUsed": "Memory Used",
"uptime": "Uptime",
"numberOfLeases": "Leases"
},
"opnsense": {
"cpu": "CPU Load",
"memory": "Active Memory",
"wanUpload": "WAN Upload",
"wanDownload": "WAN Download"
},
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"freespace": "Free Space",
"activeusers": "Active Users",
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"total_workers": "Total Workers",
"records_total": "Queue Length",
"active_workers": "Active Workers"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+150 -8
View File
@@ -22,7 +22,15 @@
"total": "Total",
"free": "Free",
"used": "Used",
"load": "Load"
"load": "Load",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"unifi": {
"users": "Users",
@@ -38,7 +46,8 @@
"wlan_users": "WLAN Users",
"up": "UP",
"down": "DOWN",
"wait": "Please wait"
"wait": "Please wait",
"empty_data": "Subsystem status unknown"
},
"docker": {
"rx": "RX",
@@ -47,13 +56,24 @@
"cpu": "CPU",
"offline": "Offline",
"error": "Error",
"unknown": "Unknown"
"unknown": "Unknown",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"emby": {
"playing": "Playing",
"transcoding": "Transcoding",
"bitrate": "Bitrate",
"no_active": "No Active Streams"
"no_active": "No Active Streams",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"tautulli": {
"playing": "Playing",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Please wait"
"wait": "Please wait",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Total Observed",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service"
"service": "Service",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"homebridge": {
"available_update": "System",
@@ -287,7 +315,10 @@
"update_available": "Update Available",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"autobrr": {
"approvedPushes": "Approved",
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"nodes": "Nodes",
"servers": "Servers"
},
"prometheus": {
"targets_total": "Total Targets",
"targets_up": "Targets Up",
"targets_down": "Targets Down"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+150 -8
View File
@@ -19,7 +19,15 @@
"total": "Total",
"free": "Ledigt",
"used": "Använt",
"cpu": "CPU"
"cpu": "CPU",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"docker": {
"rx": "RX",
@@ -28,7 +36,14 @@
"cpu": "CPU",
"offline": "Offline",
"error": "Error",
"unknown": "Unknown"
"unknown": "Unknown",
"exited": "Exited",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"partial": "Partial",
"healthy": "Healthy"
},
"search": {
"placeholder": "Sök…"
@@ -37,7 +52,11 @@
"playing": "Spelar",
"transcoding": "Omkodning",
"bitrate": "Bitrate",
"no_active": "Inga aktiva strömmar"
"no_active": "Inga aktiva strömmar",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"tautulli": {
"playing": "Spelar",
@@ -203,7 +222,8 @@
"wlan": "WLAN",
"devices": "Devices",
"lan_devices": "LAN Devices",
"wlan_devices": "WLAN Devices"
"wlan_devices": "WLAN Devices",
"empty_data": "Subsystem status unknown"
},
"plex": {
"streams": "Aktiva strömmar",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Vänligen vänta"
"wait": "Vänligen vänta",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Total Observed",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service"
"service": "Service",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"homebridge": {
"available_update": "System",
@@ -287,7 +315,10 @@
"update_available": "Update Available",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"autobrr": {
"approvedPushes": "Approved",
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+150 -8
View File
@@ -39,7 +39,15 @@
"total": "మొత్తం",
"free": "మిగిలింది",
"used": "ఉపయోగించబడిన",
"load": "లోడ్"
"load": "లోడ్",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"docker": {
"rx": "RX",
@@ -48,13 +56,24 @@
"cpu": "సీపియూ",
"offline": "ఆఫ్‌లైన్",
"error": "Error",
"unknown": "Unknown"
"unknown": "Unknown",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"emby": {
"playing": "ఆడుతున్నారు",
"transcoding": "ట్రాన్స్‌కోడింగ్",
"bitrate": "బిట్రేట్",
"no_active": "యాక్టివ్ స్ట్రీమ్‌లు లేవు"
"no_active": "యాక్టివ్ స్ట్రీమ్‌లు లేవు",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"tautulli": {
"playing": "ఆడుతున్నారు",
@@ -203,7 +222,8 @@
"wlan": "WLAN",
"devices": "పరికరాలు",
"lan_devices": "LAN పరికరాలు",
"wlan_devices": "WLAN పరికరాలు"
"wlan_devices": "WLAN పరికరాలు",
"empty_data": "Subsystem status unknown"
},
"plex": {
"streams": "యాక్టివ్ స్ట్రీమ్‌లు",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "సీపియూ",
"mem": "MEM",
"wait": "దయచేసి వేచి ఉండండి"
"wait": "దయచేసి వేచి ఉండండి",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "మొత్తం గమనించబడింది",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "బుక్మార్క్",
"service": "సేవ"
"service": "సేవ",
"search": "Search",
"custom": "Custom",
"url": "URL",
"visit": "Visit"
},
"homebridge": {
"available_update": "వ్యవస్థ",
@@ -287,7 +315,10 @@
"update_available": "అందుబాటులో నవీకరణ",
"up_to_date": "తాజాగా",
"child_bridges": "పిల్ల వంతెనలు",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"autobrr": {
"rejectedPushes": "తిరస్కరించారు",
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"cpuload": "Cpu Load",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+566
View File
@@ -0,0 +1,566 @@
{
"navidrome": {
"nothing_streaming": "No Active Streams",
"please_wait": "Please Wait"
},
"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"
},
"pyload": {
"queue": "Queue",
"total": "Total",
"speed": "Speed",
"active": "Active"
},
"gluetun": {
"public_ip": "Public IP",
"region": "Region",
"country": "Country"
},
"hdhomerun": {
"channels": "Channels",
"hd": "HD"
},
"scrutiny": {
"passed": "Passed",
"failed": "Failed",
"unknown": "Unknown"
},
"docker": {
"rx": "RX",
"tx": "TX",
"mem": "เมม",
"cpu": "ซีพียู",
"offline": "ออฟไลน์",
"error": "ข้อผิดพลาด",
"unknown": "ไม่ทราบ",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"common": {
"bibyterate": "{{value, rate(bits: false; binary: true)}}",
"bibitrate": "{{value, rate(bits: true; binary: true)}}"
},
"unifi": {
"days": "วัน",
"wan": "WAN",
"lan": "แลน",
"wlan": "WLAN",
"devices": "อุปกรณ์",
"lan_devices": "อุปกรณ์แลน",
"wlan_devices": "WLAN Devices",
"lan_users": "LAN Users",
"wlan_users": "WLAN Users",
"up": "UP",
"down": "DOWN",
"wait": "Please wait",
"empty_data": "Subsystem status unknown",
"users": "ผู้ใช้",
"uptime": "เวลาทำงานของระบบ"
},
"widget": {
"missing_type": "Missing Widget Type: {{type}}",
"api_error": "API มีข้อผิดพลาด",
"information": "ข้อมูล",
"status": "สถานะ",
"url": "URL",
"raw_error": "ข้อมูลต้นฉบับผิดพลาด",
"response_data": "ข้อมูลการตอบกลับ"
},
"weather": {
"current": "สถานที่ปัจจุบัน",
"allow": "คลิกเพื่ออนุญาต",
"updating": "กำลังปรับปรุง",
"wait": "โปรดรอ"
},
"search": {
"placeholder": "ค้นหา…"
},
"resources": {
"cpu": "ซีพียู",
"mem": "เมม",
"total": "ทั้งหมด",
"free": "ฟรี",
"used": "ใช้แล้ว",
"load": "โหลด",
"hours": "h",
"minutes": "m",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d"
},
"ping": {
"error": "ข้อผิดพลาด",
"ping": "ปิง"
},
"emby": {
"playing": "กำลังเล่น",
"transcoding": "การแปลงรหัส",
"bitrate": "อัตราบิต",
"no_active": "ไม่มีสตรีมที่ใช้งานอยู่",
"movies": "Movies",
"series": "Series",
"songs": "Songs",
"episodes": "Episodes"
},
"deluge": {
"download": "ดาวน์โหลด",
"upload": "Upload",
"leech": "Leech",
"seed": "Seed"
},
"flood": {
"download": "ดาวน์โหลด",
"upload": "อัพโหลด",
"leech": "Leech",
"seed": "Seed"
},
"changedetectionio": {
"totalObserved": "Total Observed",
"diffsDetected": "Diffs Detected"
},
"tautulli": {
"playing": "Playing",
"transcoding": "Transcoding",
"bitrate": "Bitrate",
"no_active": "No Active Streams"
},
"omada": {
"connectedAp": "Connected APs",
"activeUser": "Active devices",
"alerts": "Alerts",
"connectedGateway": "Connected gateways",
"connectedSwitches": "Connected switches"
},
"nzbget": {
"rate": "Rate",
"remaining": "Remaining",
"downloaded": "Downloaded"
},
"plex": {
"streams": "Active Streams",
"movies": "Movies",
"tv": "TV Shows"
},
"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"
},
"downloadstation": {
"download": "Download",
"upload": "Upload",
"leech": "Leech",
"seed": "Seed"
},
"sonarr": {
"wanted": "Wanted",
"queued": "Queued",
"series": "Series"
},
"readarr": {
"queued": "Queued",
"books": "Books",
"wanted": "Wanted"
},
"tdarr": {
"queue": "Queue",
"processed": "Processed",
"errored": "Errored",
"saved": "Saved"
},
"traefik": {
"routers": "Routers",
"services": "Services",
"middleware": "Middleware"
},
"bazarr": {
"missingEpisodes": "Missing Episodes",
"missingMovies": "Missing Movies"
},
"radarr": {
"wanted": "Wanted",
"missing": "Missing",
"queued": "Queued",
"movies": "Movies"
},
"lidarr": {
"wanted": "Wanted",
"queued": "Queued",
"albums": "Albums"
},
"ombi": {
"pending": "Pending",
"approved": "Approved",
"available": "Available"
},
"jellyseerr": {
"pending": "Pending",
"approved": "Approved",
"available": "Available"
},
"overseerr": {
"pending": "Pending",
"processing": "Processing",
"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"
},
"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"
},
"strelaysrv": {
"numActiveSessions": "Sessions",
"numConnections": "Connections",
"dataRelayed": "Relayed",
"transferRate": "Rate"
},
"mastodon": {
"user_count": "Users",
"status_count": "Posts",
"domain_count": "Domains"
},
"medusa": {
"wanted": "Wanted",
"queued": "Queued",
"series": "Series"
},
"miniflux": {
"read": "Read",
"unread": "Unread"
},
"authentik": {
"users": "Users",
"loginsLast24H": "Logins (24h)",
"failedLoginsLast24H": "Failed Logins (24h)"
},
"proxmox": {
"mem": "MEM",
"cpu": "CPU",
"lxc": "LXC",
"vms": "VMs"
},
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Please wait",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"wmo": {
"67-day": "Freezing Rain",
"0-day": "Sunny",
"0-night": "Clear",
"1-day": "Mainly Sunny",
"1-night": "Mainly Clear",
"65-day": "Heavy Rain",
"65-night": "Heavy Rain",
"66-day": "Freezing Rain",
"66-night": "Freezing Rain",
"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",
"57-night": "Freezing Drizzle",
"61-day": "Light Rain",
"61-night": "Light Rain",
"63-day": "Rain",
"63-night": "Rain",
"67-night": "Freezing Rain",
"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",
"71-day": "Light Snow",
"71-night": "Light Snow",
"73-day": "Snow",
"73-night": "Snow",
"75-day": "Heavy 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"
},
"homebridge": {
"updates": "Updates",
"update_available": "Update Available",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}",
"available_update": "System",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"watchtower": {
"containers_scanned": "Scanned",
"containers_updated": "Updated",
"containers_failed": "Failed"
},
"autobrr": {
"approvedPushes": "Approved",
"rejectedPushes": "Rejected",
"filters": "Filters",
"indexers": "Indexers"
},
"tubearchivist": {
"downloads": "Queue",
"videos": "Videos",
"channels": "Channels",
"playlists": "Playlists"
},
"truenas": {
"load": "System Load",
"uptime": "Uptime",
"alerts": "Alerts",
"time": "{{value, number(style: unit; unitDisplay: long;)}}"
},
"paperlessngx": {
"inbox": "Inbox",
"total": "Total"
},
"nextdns": {
"wait": "Please Wait",
"no_devices": "No Device Data Received"
},
"mikrotik": {
"cpuLoad": "CPU Load",
"memoryUsed": "Memory Used",
"uptime": "Uptime",
"numberOfLeases": "Leases"
},
"xteve": {
"streams_all": "All Streams",
"streams_active": "Active Streams",
"streams_xepg": "XEPG Channels"
},
"opnsense": {
"cpu": "CPU Load",
"memory": "Active Memory",
"wanUpload": "WAN Upload",
"wanDownload": "WAN Download"
},
"moonraker": {
"printer_state": "Printer State",
"print_status": "Print Status",
"print_progress": "Progress",
"layers": "Layers"
},
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "เว็บไซต์ ล่ม",
"uptime": "เวลาทำงาน",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+208 -66
View File
@@ -3,10 +3,10 @@
"missing_type": "Kayıp Araç Türü: {{type}}",
"api_error": "API Hatası",
"status": "Durum",
"information": "Information",
"information": "Bilgi",
"url": "URL",
"raw_error": "Raw Error",
"response_data": "Response Data"
"raw_error": "Ham Hata",
"response_data": "Yanıt Verisi"
},
"weather": {
"current": "Mevcut Konum",
@@ -18,11 +18,19 @@
"placeholder": "Ara…"
},
"resources": {
"cpu": "İşlemci",
"cpu": "CPU",
"total": "Toplam",
"free": "Boşta",
"used": "Kullanımda",
"load": "Yük"
"load": "Yük",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"unifi": {
"users": "Kullanıcılar",
@@ -38,7 +46,8 @@
"wlan": "WLAN",
"devices": "Aygıtlar",
"lan_devices": "LAN Aygıtları",
"wlan_devices": "WLAN Aygıtları"
"wlan_devices": "WLAN Aygıtları",
"empty_data": "Alt sistem durumu bilinmiyor"
},
"docker": {
"rx": "Gelen Veri",
@@ -46,14 +55,25 @@
"mem": "Bellek",
"cpu": "İşlemci",
"offline": "Çevrimdışı",
"error": "Error",
"unknown": "Unknown"
"error": "Hata",
"unknown": "Bilinmiyor",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"emby": {
"playing": "Oynatılıyor",
"transcoding": "Dönüştürülüyor",
"bitrate": "Bit Oranı",
"no_active": "Aktif akış yok"
"no_active": "Aktif akış yok",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"tautulli": {
"playing": "Oynatılıyor",
@@ -89,7 +109,7 @@
},
"qbittorrent": {
"download": "İndirme",
"upload": "Yükleme",
"upload": "Yükle",
"leech": "İsteyen",
"seed": "Sunan"
},
@@ -132,7 +152,7 @@
"pending": "Bekliyor",
"approved": "Onaylı",
"available": "Kullanılabilir",
"processing": "Processing"
"processing": "İşleniyor"
},
"pihole": {
"queries": "Sorgular",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "İşlemci",
"mem": "Bellek",
"wait": "Lütfen bekleyiniz"
"wait": "Lütfen bekleyiniz",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Toplam Gözlenen",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Yer İmi",
"service": "Hizmet"
"service": "Hizmet",
"search": "Ara",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"homebridge": {
"available_update": "Sistem",
@@ -287,7 +315,10 @@
"update_available": "Güncelleme Kullanılabilir",
"up_to_date": "Güncel",
"child_bridges": "Alt Köprüler",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"autobrr": {
"approvedPushes": "Onaylandı",
@@ -323,102 +354,213 @@
"total": "Toplam"
},
"gluetun": {
"public_ip": "Public IP",
"region": "Region",
"country": "Country"
"public_ip": "Açık IP",
"region": "Bölge",
"country": "Ülke"
},
"hdhomerun": {
"channels": "Channels",
"channels": "Kanallar",
"hd": "HD"
},
"ping": {
"error": "Error",
"error": "Hata",
"ping": "Ping"
},
"scrutiny": {
"passed": "Passed",
"failed": "Failed",
"unknown": "Unknown"
"passed": "Geçti",
"failed": "Başarısız",
"unknown": "Bilinmeyen"
},
"paperlessngx": {
"inbox": "Inbox",
"total": "Total"
"inbox": "Gelen Kutusu",
"total": "Toplam"
},
"deluge": {
"download": "Download",
"upload": "Upload",
"download": "İndir",
"upload": "Yükle",
"leech": "Leech",
"seed": "Seed"
"seed": "Tohum"
},
"flood": {
"download": "Download",
"upload": "Upload",
"download": "İndir",
"upload": "Yükle",
"leech": "Leech",
"seed": "Seed"
"seed": "Tohum"
},
"tdarr": {
"queue": "Queue",
"processed": "Processed",
"errored": "Errored",
"saved": "Saved"
"queue": "Sıra",
"processed": "İşlendi",
"errored": "Hatalı",
"saved": "Kaydedildi"
},
"miniflux": {
"read": "Read",
"unread": "Unread"
"read": "Oku",
"unread": "Okunmamış"
},
"nextdns": {
"wait": "Please Wait",
"no_devices": "No Device Data Received"
"wait": "Lütfen Bekle",
"no_devices": "Cihaz Verisi Alınamadı"
},
"common": {
"bibyterate": "{{value, rate(bits: false; binary: true)}}",
"bibitrate": "{{value, rate(bits: true; binary: true)}}"
},
"omada": {
"connectedAp": "Connected APs",
"activeUser": "Active devices",
"alerts": "Alerts",
"connectedGateway": "Connected gateways",
"connectedSwitches": "Connected switches"
"connectedAp": "Bağlı AP'ler",
"activeUser": "Aktif cihazlar",
"alerts": "Alarmlar",
"connectedGateway": "Bağlı ağ geçitleri",
"connectedSwitches": "Bağlı anahtarlar"
},
"downloadstation": {
"download": "Download",
"upload": "Upload",
"download": "İndir",
"upload": "Yükle",
"leech": "Leech",
"seed": "Seed"
"seed": "Tohum"
},
"mikrotik": {
"cpuLoad": "CPU Load",
"memoryUsed": "Memory Used",
"uptime": "Uptime",
"cpuLoad": "CPU Yükü",
"memoryUsed": "Bellek Kullanımı",
"uptime": "Çalışma Süresi",
"numberOfLeases": "Leases"
},
"xteve": {
"streams_all": "All Streams",
"streams_active": "Active Streams",
"streams_xepg": "XEPG Channels"
"streams_all": "Tüm Akışlar",
"streams_active": "Aktif Akışlar",
"streams_xepg": "XEPG Kanalları"
},
"opnsense": {
"cpu": "CPU Load",
"memory": "Active Memory",
"wanUpload": "WAN Upload",
"wanDownload": "WAN Download"
"cpu": "CPU Yükü",
"memory": "Aktif Bellek",
"wanUpload": "WAN Yükleme",
"wanDownload": "WAN İndirme"
},
"moonraker": {
"printer_state": "Printer State",
"print_status": "Print Status",
"print_progress": "Progress",
"layers": "Layers"
"printer_state": "Yazıcı Durumu",
"print_status": "Yazıcı Durumu",
"print_progress": "İlerleme",
"layers": "Katmanlar"
},
"medusa": {
"wanted": "Wanted",
"queued": "Queued",
"series": "Series"
"queued": "Kuyrukta",
"series": "Seri"
},
"octoPrint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"octoprint": {
"printer_state": "Durum",
"temp_tool": "Araç sıcaklığı",
"temp_bed": "Yatak sıcaklığı",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Durum"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Bellek"
},
"immich": {
"users": "Kullanıcılar",
"photos": "Fotoğraflar",
"videos": "Videolar",
"storage": "Depo"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Çalışma Süresi",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Kütüphane",
"series": "Series",
"books": "Kitaplar"
},
"mylar": {
"series": "Seriler",
"issues": "Sorunlar",
"wanted": "Aranan"
},
"photoprism": {
"albums": "Albümler",
"photos": "Fotoğraflar",
"videos": "Videolar",
"people": "İnsan"
},
"diskstation": {
"days": "Gün",
"uptime": "Çalışma Süresi",
"volumeAvailable": "Mevcut"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+154 -12
View File
@@ -127,7 +127,15 @@
"total": "Всього",
"free": "Вільно",
"used": "Використано",
"load": "Навантаження"
"load": "Навантаження",
"mem": "Пам'ять",
"temp": "TEMP",
"max": "Max",
"uptime": "Відправка",
"months": "міс",
"days": "д",
"hours": "г",
"minutes": "хв"
},
"unifi": {
"users": "Користувачі",
@@ -143,7 +151,8 @@
"wlan_users": "WLAN користувачі",
"up": "Відправка",
"down": "Завантаження",
"wait": "Будь ласка, зачекайте"
"wait": "Будь ласка, зачекайте",
"empty_data": "Статус підсистеми невідомий"
},
"docker": {
"rx": "RX",
@@ -152,7 +161,14 @@
"cpu": "CPU",
"offline": "Офлайн",
"error": "Помилка",
"unknown": "Невідомий"
"unknown": "Невідомий",
"starting": "Запуск",
"unhealthy": "Нездоровий",
"not_found": "Не знайдено",
"exited": "Вийшов",
"partial": "Частковий",
"running": "Запущено",
"healthy": "Здоров'я"
},
"ping": {
"error": "Помилка",
@@ -162,7 +178,11 @@
"playing": "Відтворення",
"transcoding": "Перекодування",
"bitrate": "Бітрейт",
"no_active": "Немає активних потоків"
"no_active": "Немає активних потоків",
"movies": "Фільми",
"series": "Серії",
"episodes": "Епізоди",
"songs": "Пісні"
},
"flood": {
"download": "Завантаження",
@@ -337,11 +357,19 @@
"glances": {
"cpu": "CPU",
"mem": "Пам'ять",
"wait": "Будь ласка, зачекайте"
"wait": "Будь ласка, зачекайте",
"temp": "TEMP",
"uptime": "Відправка",
"days": "д",
"hours": "г"
},
"quicklaunch": {
"bookmark": "Закладка",
"service": "Сервіс"
"service": "Сервіс",
"search": "Пошук",
"custom": "Користувацький",
"visit": "Відвідайте",
"url": "URL"
},
"homebridge": {
"available_update": "Система",
@@ -349,7 +377,10 @@
"child_bridges_status": "{{ok}}/{{total}}",
"update_available": "Доступне оновлення",
"up_to_date": "Актуально",
"child_bridges": "Дитячі мости"
"child_bridges": "Дитячі мости",
"up": "Вгору",
"pending": "В очікуванні",
"down": "Вниз"
},
"watchtower": {
"containers_scanned": "Відскановано",
@@ -415,10 +446,121 @@
"queued": "У черзі",
"series": "Серії"
},
"octoPrint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
"octoprint": {
"printer_state": "Стан",
"temp_tool": "Температура інструменту",
"temp_bed": "Температура ліжка",
"job_completion": "Завершення"
},
"cloudflared": {
"origin_ip": "Походження IP",
"status": "Стан"
},
"proxmoxbackupserver": {
"datastore_usage": "Сховище даних",
"failed_tasks_24h": "Невиконані завдання 24 години",
"cpu_usage": "CPU",
"memory_usage": "Пам'ять"
},
"immich": {
"users": "Користувачі",
"photos": "Фотографії",
"videos": "Відео",
"storage": "Сховище"
},
"uptimekuma": {
"up": "Активні сайти",
"down": "Неактивні сайти",
"uptime": "Час роботи",
"incident": "Інцидент",
"m": "хв"
},
"komga": {
"libraries": "Бібліотеки",
"series": "Серії",
"books": "Книжки"
},
"mylar": {
"series": "Серії",
"issues": "Питання",
"wanted": "Розшукується"
},
"photoprism": {
"albums": "Альбоми",
"photos": "Фото",
"videos": "Відео",
"people": "Люди"
},
"diskstation": {
"days": "Днів",
"uptime": "Час роботи",
"volumeAvailable": "Доступно"
},
"fileflows": {
"queue": "Черга",
"processing": "Обробка",
"processed": "Оброблено",
"time": "Час"
},
"grafana": {
"dashboards": "Інформаційні панелі",
"datasources": "Джерела даних",
"totalalerts": "Всього сповіщень",
"alertstriggered": "Спрацювали сповіщення"
},
"nextcloud": {
"cpuload": "Навантаження Cpu",
"memoryusage": "Використання пам'яті",
"freespace": "Вільного місця",
"activeusers": "Активні користувачі"
},
"kopia": {
"status": "Статус",
"size": "Розмір",
"lastrun": "Останній запуск",
"nextrun": "Наступний запуск",
"failed": "Помилка"
},
"unmanic": {
"active_workers": "Активні працівники",
"total_workers": "Всього робітників",
"records_total": "Довжина черги"
},
"healthchecks": {
"new": "Новий",
"up": "Онлайн",
"down": "Офлайн",
"grace": "У пільговий період",
"paused": "Призупинено",
"status": "Стан",
"last_ping": "Останній пінг",
"never": "Пінгів ще немає"
},
"pterodactyl": {
"servers": "Сервери",
"nodes": "Вузли"
},
"prometheus": {
"targets_up": "Цілі вгору",
"targets_down": "Цілі вниз",
"targets_total": "Всього цілей"
},
"minecraft": {
"players": "Гравці",
"version": "Версія",
"status": "Стан",
"up": "Онлайн",
"down": "Офлайн"
},
"ghostfolio": {
"gross_percent_today": "Сьогодні",
"gross_percent_1y": "Один рік",
"gross_percent_max": "Весь час"
},
"audiobookshelf": {
"podcasts": "Подкасти",
"books": "Книжки",
"podcastsDuration": "Тривалість",
"booksDuration": "Тривалість"
}
}
+150 -8
View File
@@ -16,7 +16,15 @@
"free": "Dư",
"used": "Đã dùng",
"load": "Load",
"cpu": "CPU"
"cpu": "CPU",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"docker": {
"rx": "RX",
@@ -25,13 +33,24 @@
"cpu": "CPU",
"offline": "Ngoại tuyến",
"error": "Error",
"unknown": "Unknown"
"unknown": "Unknown",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"emby": {
"playing": "Đang chơi",
"transcoding": "Chuyển định dạng",
"bitrate": "Bitrate",
"no_active": "No Active Streams"
"no_active": "No Active Streams",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"tautulli": {
"playing": "Đang chơi",
@@ -203,7 +222,8 @@
"wlan": "WLAN",
"devices": "Devices",
"lan_devices": "LAN Devices",
"wlan_devices": "WLAN Devices"
"wlan_devices": "WLAN Devices",
"empty_data": "Subsystem status unknown"
},
"plex": {
"streams": "Active Streams",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Please wait"
"wait": "Please wait",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Total Observed",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service"
"service": "Service",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"homebridge": {
"available_update": "System",
@@ -287,7 +315,10 @@
"update_available": "Update Available",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"down": "Down",
"pending": "Pending"
},
"autobrr": {
"approvedPushes": "Approved",
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"photos": "Photos",
"videos": "Videos",
"people": "People",
"albums": "Albums"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processing": "Processing",
"processed": "Processed",
"time": "Time"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"status": "Status",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+150 -8
View File
@@ -3,7 +3,11 @@
"transcoding": "轉碼緊",
"bitrate": "比特率",
"playing": "播放緊",
"no_active": "無任何活動"
"no_active": "無任何活動",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"tautulli": {
"playing": "播放緊",
@@ -40,7 +44,15 @@
"free": "剩餘",
"used": "用咗",
"load": "負荷",
"cpu": "CPU"
"cpu": "CPU",
"mem": "MEM",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"docker": {
"rx": "接收",
@@ -49,7 +61,14 @@
"cpu": "處理器",
"offline": "離線",
"error": "Error",
"unknown": "Unknown"
"unknown": "Unknown",
"running": "Running",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial",
"healthy": "Healthy"
},
"nzbget": {
"rate": "速度",
@@ -203,7 +222,8 @@
"wlan": "WLAN",
"devices": "Devices",
"lan_devices": "LAN Devices",
"wlan_devices": "WLAN Devices"
"wlan_devices": "WLAN Devices",
"empty_data": "Subsystem status unknown"
},
"plex": {
"streams": "Active Streams",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "CPU",
"mem": "MEM",
"wait": "Please wait"
"wait": "Please wait",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Total Observed",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service"
"service": "Service",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"url": "URL"
},
"homebridge": {
"available_update": "System",
@@ -287,7 +315,10 @@
"update_available": "Update Available",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"autobrr": {
"approvedPushes": "Approved",
@@ -415,10 +446,121 @@
"queued": "Queued",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
},
"cloudflared": {
"origin_ip": "Origin IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"cpu_usage": "CPU",
"memory_usage": "Memory"
},
"immich": {
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Storage"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"uptime": "Uptime",
"incident": "Incident",
"m": "m"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"books": "Books"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"wanted": "Wanted"
},
"photoprism": {
"albums": "Albums",
"photos": "Photos",
"videos": "Videos",
"people": "People"
},
"diskstation": {
"days": "Days",
"uptime": "Uptime",
"volumeAvailable": "Available"
},
"fileflows": {
"queue": "Queue",
"processed": "Processed",
"time": "Time",
"processing": "Processing"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users"
},
"kopia": {
"lastrun": "Last Run",
"nextrun": "Next Run",
"failed": "Failed",
"status": "Status",
"size": "Size"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "New",
"up": "Online",
"grace": "In Grace Period",
"down": "Offline",
"paused": "Paused",
"status": "Status",
"last_ping": "Last Ping",
"never": "No pings yet"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+261 -119
View File
@@ -3,20 +3,28 @@
"missing_type": "缺少小部件类型:{{type}}",
"api_error": "API错误",
"status": "状态",
"information": "Information",
"information": "信息",
"url": "URL",
"raw_error": "Raw Error",
"response_data": "Response Data"
"raw_error": "原始错误",
"response_data": "返回数据"
},
"search": {
"placeholder": "搜索…"
},
"resources": {
"total": "共",
"total": "总计",
"free": "空闲",
"used": "已用",
"load": "负载",
"cpu": "CPU"
"cpu": "处理器",
"mem": "内存",
"temp": "温度",
"max": "最大",
"uptime": "运行时间",
"months": "月",
"days": "天",
"hours": "时",
"minutes": "分"
},
"docker": {
"rx": "接收",
@@ -24,14 +32,25 @@
"mem": "内存",
"cpu": "处理器",
"offline": "离线",
"error": "Error",
"unknown": "Unknown"
"error": "错误",
"unknown": "未知",
"starting": "启动中",
"unhealthy": "不健康的",
"not_found": "未找到",
"running": "运行中",
"exited": "已退出",
"partial": "部分",
"healthy": "健康的"
},
"emby": {
"playing": "播放中",
"transcoding": "转码",
"bitrate": "比特率",
"no_active": "暂无播放"
"no_active": "暂无播放",
"movies": "电影",
"series": "系列",
"episodes": "剧集",
"songs": "歌曲"
},
"tautulli": {
"playing": "播放中",
@@ -186,8 +205,8 @@
"proxmox": {
"mem": "内存",
"cpu": "处理器",
"lxc": "LXC",
"vms": "VMs"
"lxc": "容器",
"vms": "虚拟机"
},
"unifi": {
"users": "用户",
@@ -203,7 +222,8 @@
"wlan": "无线局域网",
"devices": "设备",
"lan_devices": "局域网设备",
"wlan_devices": "无线局域网设备"
"wlan_devices": "无线局域网设备",
"empty_data": "子系统状态未知"
},
"plex": {
"streams": "活动流",
@@ -213,7 +233,11 @@
"glances": {
"cpu": "处理器",
"mem": "内存",
"wait": "请稍等"
"wait": "请稍等",
"temp": "TEMP",
"uptime": "UP",
"days": "天",
"hours": "时"
},
"changedetectionio": {
"totalObserved": "观察到的总数",
@@ -228,8 +252,8 @@
"45-day": "有雾",
"48-day": "有雾",
"51-day": "小雨",
"73-night": "Snow",
"75-day": "Heavy Snow",
"73-night": "中雪",
"75-day": "大雪",
"1-night": "大部晴朗",
"2-day": "多云",
"2-night": "多云",
@@ -238,62 +262,69 @@
"51-night": "小雨",
"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",
"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",
"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",
"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"
"55-day": "毛毛雨",
"55-night": "毛毛雨",
"56-day": "小冻毛雨",
"56-night": "小冻毛雨",
"57-day": "冻毛雨",
"57-night": "冻毛雨",
"61-day": "小雨",
"61-night": "小雨",
"63-day": "雨",
"63-night": "雨",
"65-day": "大雨",
"65-night": "大雨",
"66-day": "冻雨",
"66-night": "冻雨",
"67-day": "冻雨",
"67-night": "冻雨",
"71-day": "小雪",
"71-night": "小雪",
"73-day": "中雪",
"75-night": "大雪",
"77-day": "雪粒",
"77-night": "雪粒",
"80-day": "微阵雨",
"80-night": "微阵雨",
"81-day": "阵雨",
"81-night": "阵雨",
"82-day": "强阵雨",
"82-night": "强阵雨",
"85-day": "阵雪",
"85-night": "阵雪",
"86-day": "阵雪",
"86-night": "阵雪",
"95-day": "雷雨",
"95-night": "雷雨",
"96-day": "雷雨伴随冰雹",
"96-night": "雷雨伴随冰雹",
"99-day": "雷雨伴随冰雹",
"99-night": "雷雨伴随冰雹"
},
"quicklaunch": {
"bookmark": "书签",
"service": "服务"
"service": "服务",
"search": "搜索",
"custom": "自定",
"visit": "访问",
"url": "网址"
},
"homebridge": {
"available_update": "System",
"updates": "Updates",
"update_available": "Update Available",
"updates": "更新",
"update_available": "有可用的更新",
"up_to_date": "Up to Date",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "待定中",
"down": "Down"
},
"autobrr": {
"approvedPushes": "Approved",
"rejectedPushes": "Rejected",
"approvedPushes": "已核准",
"rejectedPushes": "拒绝",
"filters": "Filters",
"indexers": "Indexers"
"indexers": "索引器"
},
"watchtower": {
"containers_scanned": "以扫描",
@@ -301,14 +332,14 @@
"containers_failed": "失败"
},
"tubearchivist": {
"downloads": "Queue",
"videos": "Videos",
"channels": "Channels",
"playlists": "Playlists"
"downloads": "队列",
"videos": "影片",
"channels": "频道",
"playlists": "播放清单"
},
"truenas": {
"load": "System Load",
"uptime": "Uptime",
"load": "系统负载",
"uptime": "运行时间",
"alerts": "警报",
"time": "{{value, number(style: unit; unitDisplay: long;)}}"
},
@@ -317,108 +348,219 @@
"please_wait": "请等待"
},
"pyload": {
"speed": "Speed",
"speed": "速度",
"active": "Active",
"queue": "Queue",
"queue": "队列",
"total": "Total"
},
"gluetun": {
"public_ip": "Public IP",
"region": "Region",
"country": "Country"
"country": "国家"
},
"hdhomerun": {
"channels": "Channels",
"channels": "频道",
"hd": "HD"
},
"ping": {
"error": "Error",
"error": "错误",
"ping": "Ping"
},
"scrutiny": {
"passed": "Passed",
"failed": "Failed",
"unknown": "Unknown"
"passed": "通过",
"failed": "失败",
"unknown": "未知的"
},
"paperlessngx": {
"inbox": "Inbox",
"inbox": "收件箱",
"total": "Total"
},
"deluge": {
"download": "Download",
"upload": "Upload",
"leech": "Leech",
"seed": "Seed"
"download": "下载",
"upload": "上传",
"leech": "下载中",
"seed": "做种"
},
"flood": {
"leech": "Leech",
"download": "Download",
"upload": "Upload",
"seed": "Seed"
"leech": "下载中",
"download": "下载",
"upload": "上传",
"seed": "做种"
},
"tdarr": {
"saved": "Saved",
"queue": "Queue",
"processed": "Processed",
"errored": "Errored"
"saved": "已保存",
"queue": "队列",
"processed": "已处理",
"errored": "出错"
},
"miniflux": {
"read": "Read",
"unread": "Unread"
"read": "已读",
"unread": "未读"
},
"nextdns": {
"wait": "Please Wait",
"no_devices": "No Device Data Received"
"wait": "请稍候",
"no_devices": "没有接收到设备数据"
},
"common": {
"bibyterate": "{{value, rate(bits: false; binary: true)}}",
"bibitrate": "{{value, rate(bits: true; binary: true)}}"
},
"omada": {
"connectedAp": "Connected APs",
"activeUser": "Active devices",
"alerts": "Alerts",
"connectedGateway": "Connected gateways",
"connectedSwitches": "Connected switches"
"connectedAp": "连接中的AP",
"activeUser": "活跃设备",
"alerts": "警报",
"connectedGateway": "已连接网关",
"connectedSwitches": "已连接开关"
},
"downloadstation": {
"download": "Download",
"upload": "Upload",
"leech": "Leech",
"seed": "Seed"
"download": "下载",
"upload": "上传",
"leech": "下载中",
"seed": "做种"
},
"mikrotik": {
"cpuLoad": "CPU Load",
"memoryUsed": "Memory Used",
"uptime": "Uptime",
"numberOfLeases": "Leases"
"cpuLoad": "处理器负载",
"memoryUsed": "内存使用",
"uptime": "运行时间",
"numberOfLeases": "已连接"
},
"xteve": {
"streams_all": "All Streams",
"streams_active": "Active Streams",
"streams_xepg": "XEPG Channels"
"streams_all": "所有播放活动",
"streams_active": "正在播放",
"streams_xepg": "XEPG 频道"
},
"opnsense": {
"cpu": "CPU Load",
"memory": "Active Memory",
"wanUpload": "WAN Upload",
"wanDownload": "WAN Download"
"cpu": "处理器负载",
"memory": "空闲内存",
"wanUpload": "WAN上传",
"wanDownload": "WAN下载"
},
"moonraker": {
"printer_state": "Printer State",
"print_status": "Print Status",
"printer_state": "打印机状态",
"print_status": "打印状态",
"print_progress": "Progress",
"layers": "Layers"
"layers": "层"
},
"medusa": {
"wanted": "Wanted",
"queued": "Queued",
"wanted": "关注中",
"queued": "已加入队列",
"series": "Series"
},
"octoPrint": {
"octoprint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
"temp_tool": "喷头温度",
"temp_bed": "平台温度",
"job_completion": "完成度"
},
"cloudflared": {
"origin_ip": "源IP",
"status": "Status"
},
"proxmoxbackupserver": {
"datastore_usage": "数据存储",
"failed_tasks_24h": "24h失败任务",
"cpu_usage": "处理器",
"memory_usage": "内存"
},
"immich": {
"users": "使用者",
"photos": "照片",
"videos": "影片",
"storage": "储存空间"
},
"uptimekuma": {
"up": "在线网站",
"down": "离线网站",
"uptime": "运行时间",
"incident": "严重事件",
"m": "m"
},
"komga": {
"libraries": "书库",
"series": "系列",
"books": "书刊"
},
"mylar": {
"series": "系列",
"issues": "问题",
"wanted": "关注中"
},
"photoprism": {
"albums": "相册",
"photos": "照片",
"videos": "视频",
"people": "人物"
},
"diskstation": {
"uptime": "运行时间",
"volumeAvailable": "剩余存储",
"days": "天"
},
"fileflows": {
"queue": "队列",
"processing": "处理中",
"processed": "已处理",
"time": "时间"
},
"grafana": {
"totalalerts": "警报总数",
"dashboards": "控制面板",
"datasources": "数据来源",
"alertstriggered": "触发的警报"
},
"nextcloud": {
"cpuload": "处理器负载",
"memoryusage": "内存占用",
"freespace": "剩余空间",
"activeusers": "活跃用户"
},
"kopia": {
"status": "状态",
"size": "大小",
"lastrun": "最后运行",
"nextrun": "下次运行",
"failed": "失败"
},
"unmanic": {
"active_workers": "在线工作节点",
"total_workers": "工作节点总数",
"records_total": "队列长度"
},
"healthchecks": {
"new": "新建立",
"up": "在线的",
"grace": "延缓中",
"down": "离线",
"paused": "暂停",
"status": "状态",
"last_ping": "上次检查",
"never": "尚未检查"
},
"pterodactyl": {
"servers": "服务器",
"nodes": "节点"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "播放中",
"version": "版本",
"status": "状态",
"up": "在线的",
"down": "离线"
},
"ghostfolio": {
"gross_percent_today": "今天",
"gross_percent_1y": "一年",
"gross_percent_max": "所有时间"
},
"audiobookshelf": {
"podcasts": "播客",
"books": "图书",
"podcastsDuration": "持续时间",
"booksDuration": "持续时间"
}
}
+212 -70
View File
@@ -1,12 +1,12 @@
{
"widget": {
"missing_type": "遺失小工具的類型: {{type}}",
"api_error": "API錯誤",
"api_error": "API 錯誤",
"status": "狀態",
"information": "資訊",
"url": "URL",
"raw_error": "Raw Error",
"response_data": "Response Data"
"url": "網址",
"raw_error": "原始錯誤",
"response_data": "回復數據"
},
"weather": {
"current": "目前位置",
@@ -21,13 +21,24 @@
"mem": "記憶體",
"cpu": "處理器",
"error": "錯誤",
"unknown": "未知的"
"unknown": "未知的",
"running": "執行中",
"starting": "啟動中",
"unhealthy": "不健康的",
"not_found": "未找到",
"exited": "Exited",
"partial": "Partial",
"healthy": "健康的"
},
"emby": {
"playing": "正在播放",
"transcoding": "轉碼",
"bitrate": "位元率",
"no_active": "無播放活動"
"no_active": "無播放活動",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
},
"tautulli": {
"playing": "正在播放",
@@ -36,9 +47,9 @@
"no_active": "無播放活動"
},
"jellyseerr": {
"pending": "待定",
"approved": "已接受",
"available": "可用的"
"pending": "待下載",
"approved": "已核准",
"available": "可觀看"
},
"search": {
"placeholder": "搜尋…"
@@ -48,7 +59,15 @@
"free": "剩餘",
"used": "已使用",
"load": "負載",
"cpu": "CPU"
"cpu": "CPU",
"mem": "記憶體",
"temp": "TEMP",
"max": "Max",
"uptime": "UP",
"months": "mo",
"days": "d",
"hours": "h",
"minutes": "m"
},
"nzbget": {
"rate": "速率",
@@ -61,20 +80,20 @@
"timeleft": "剩餘時間"
},
"rutorrent": {
"active": "Active",
"upload": "上傳",
"download": "下載"
"active": "活動中",
"upload": "上行速率",
"download": "下行速率"
},
"radarr": {
"movies": "電影",
"wanted": "關注中",
"queued": "已加入佇列",
"missing": "遺失"
"missing": "缺少"
},
"sonarr": {
"wanted": "關注中",
"queued": "已加入佇列",
"series": "系列"
"series": "影集"
},
"readarr": {
"wanted": "關注中",
@@ -82,24 +101,24 @@
"books": "書籍"
},
"ombi": {
"pending": "待定",
"approved": "已接受",
"available": "可用的"
"pending": "待下載",
"approved": "已核准",
"available": "可觀看"
},
"overseerr": {
"pending": "待定",
"approved": "已接受",
"available": "可用的",
"pending": "待下載",
"approved": "已核准",
"available": "可觀看",
"processing": "處理中"
},
"pihole": {
"queries": "查詢數",
"queries": "查詢",
"blocked": "已阻擋",
"gravity": "Gravity"
},
"speedtest": {
"upload": "上行",
"download": "下行",
"upload": "上行速率",
"download": "下行速率",
"ping": "Ping"
},
"portainer": {
@@ -132,23 +151,23 @@
"prowlarr": {
"enableIndexers": "索引器",
"numberOfGrabs": "抓取",
"numberOfQueries": "查詢數",
"numberOfQueries": "查詢",
"numberOfFailGrabs": "抓取失敗",
"numberOfFailQueries": "查詢失敗"
},
"transmission": {
"download": "下載",
"upload": "上傳",
"leech": "Leech",
"seed": "Seed"
"download": "下行速率",
"upload": "上行速率",
"leech": "未完成下載",
"seed": "已完成下載"
},
"jackett": {
"configured": "已配置",
"errored": "發生錯誤"
},
"bazarr": {
"missingEpisodes": "缺失的劇集",
"missingMovies": "缺失的電影"
"missingEpisodes": "缺少的劇集",
"missingMovies": "缺少的電影"
},
"lidarr": {
"wanted": "關注中",
@@ -156,16 +175,16 @@
"albums": "專輯"
},
"adguard": {
"queries": "查詢數",
"queries": "查詢",
"blocked": "已阻擋",
"filtered": "已過濾",
"latency": "延遲"
},
"qbittorrent": {
"download": "下載",
"upload": "上傳",
"leech": "Leech",
"seed": "Seed"
"download": "下行速率",
"upload": "上行速率",
"leech": "未完成下載",
"seed": "已完成下載"
},
"mastodon": {
"user_count": "使用者",
@@ -196,14 +215,15 @@
"wan": "WAN",
"lan_users": "LAN使用者",
"wlan_users": "WLAN使用者",
"up": "UP",
"down": "DOWN",
"up": "上線",
"down": "離線",
"wait": "請稍後",
"lan": "LAN",
"wlan": "WLAN",
"devices": "設備",
"lan_devices": "LAN設備",
"wlan_devices": "WLAN設備"
"wlan_devices": "WLAN設備",
"empty_data": "子系統狀態未知"
},
"plex": {
"streams": "正在播放",
@@ -213,11 +233,15 @@
"glances": {
"cpu": "CPU",
"mem": "記憶體",
"wait": "請稍後"
"wait": "請稍後",
"temp": "TEMP",
"uptime": "UP",
"days": "d",
"hours": "h"
},
"changedetectionio": {
"totalObserved": "Total Observed",
"diffsDetected": "Diffs Detected"
"totalObserved": "總監測數",
"diffsDetected": "偵測到的變更"
},
"wmo": {
"0-day": "晴",
@@ -279,7 +303,11 @@
},
"quicklaunch": {
"bookmark": "書籤",
"service": "服務"
"service": "服務",
"search": "搜尋",
"custom": "自訂",
"visit": "Visit",
"url": "URL"
},
"homebridge": {
"available_update": "系統",
@@ -287,10 +315,13 @@
"update_available": "有可用的更新",
"up_to_date": "已更新至最新",
"child_bridges": "Child Bridges",
"child_bridges_status": "{{ok}}/{{total}}"
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"pending": "Pending",
"down": "Down"
},
"autobrr": {
"approvedPushes": "接受",
"approvedPushes": "已核准",
"rejectedPushes": "拒絕",
"filters": "篩選器",
"indexers": "索引器"
@@ -345,16 +376,16 @@
"total": "全部"
},
"deluge": {
"download": "下載",
"upload": "上傳",
"leech": "Leech",
"seed": "Seed"
"download": "下行速率",
"upload": "上行速率",
"leech": "未完成下載",
"seed": "已完成下載"
},
"flood": {
"download": "下載",
"upload": "上傳",
"leech": "Leech",
"seed": "Seed"
"download": "下載速率",
"upload": "上傳速率",
"leech": "未完成下載",
"seed": "已完成下載"
},
"tdarr": {
"queue": "佇列",
@@ -382,10 +413,10 @@
"connectedSwitches": "已連接的交換器"
},
"downloadstation": {
"download": "下載",
"upload": "上傳",
"leech": "Leech",
"seed": "Seed"
"download": "下行速率",
"upload": "上行速率",
"leech": "未完成下載",
"seed": "已完成下載"
},
"mikrotik": {
"cpuLoad": "CPU負載",
@@ -400,25 +431,136 @@
},
"opnsense": {
"cpu": "CPU負載",
"memory": "Active Memory",
"memory": "記憶體",
"wanUpload": "WAN上傳",
"wanDownload": "WAN下載"
},
"moonraker": {
"printer_state": "Printer State",
"print_status": "Print Status",
"print_progress": "Progress",
"layers": "Layers"
"printer_state": "列印機狀態",
"print_status": "列印狀態",
"print_progress": "進度",
"layers": "層"
},
"medusa": {
"wanted": "Wanted",
"queued": "Queued",
"series": "Series"
"wanted": "關注中",
"queued": "已加入佇列",
"series": "影集"
},
"octoPrint": {
"printer_state": "Status",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
"octoprint": {
"printer_state": "狀態",
"temp_tool": "噴頭溫度",
"temp_bed": "平台溫度",
"job_completion": "完成度"
},
"cloudflared": {
"origin_ip": "源頭IP",
"status": "狀態"
},
"proxmoxbackupserver": {
"datastore_usage": "數據存儲",
"failed_tasks_24h": "24小時內失敗任務",
"cpu_usage": "CPU",
"memory_usage": "記憶體"
},
"immich": {
"users": "使用者",
"photos": "照片",
"videos": "影片",
"storage": "儲存空間"
},
"uptimekuma": {
"up": "在線網站",
"down": "離線網站",
"uptime": "在線時間",
"incident": "事件",
"m": "m"
},
"komga": {
"libraries": "文庫",
"series": "叢刊",
"books": "書刊"
},
"mylar": {
"series": "系列",
"issues": "出版",
"wanted": "關注中"
},
"photoprism": {
"albums": "相簿",
"photos": "照片",
"videos": "影片",
"people": "人物"
},
"diskstation": {
"days": "天",
"uptime": "運行時間",
"volumeAvailable": "剩餘容量"
},
"fileflows": {
"queue": "佇列",
"processing": "處理中",
"processed": "已處理",
"time": "時間"
},
"grafana": {
"dashboards": "控制面板",
"datasources": "數據來源",
"totalalerts": "警報總數",
"alertstriggered": "觸發的警報"
},
"nextcloud": {
"cpuload": "處理器負載",
"memoryusage": "記憶體用量",
"freespace": "可用空間",
"activeusers": "活躍用戶"
},
"kopia": {
"status": "狀態",
"size": "檔案大小",
"lastrun": "上次運行",
"nextrun": "下次運行",
"failed": "失敗"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
},
"healthchecks": {
"new": "新建立",
"up": "上線",
"grace": "延緩中",
"down": "離線",
"paused": "擱置中",
"status": "狀態",
"last_ping": "上次檢查",
"never": "尚未檢查"
},
"pterodactyl": {
"servers": "Servers",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
},
"minecraft": {
"players": "Players",
"version": "Version",
"status": "Status",
"up": "Online",
"down": "Offline"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Books",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
}
}
+42 -10
View File
@@ -6,18 +6,20 @@ import ResolvedIcon from "./resolvedicon";
import { SettingsContext } from "utils/contexts/settings";
export default function QuickLaunch({servicesAndBookmarks, searchString, setSearchString, isOpen, close, searchDescriptions}) {
export default function QuickLaunch({servicesAndBookmarks, searchString, setSearchString, isOpen, close, searchProvider}) {
const { t } = useTranslation();
const { settings } = useContext(SettingsContext);
const { searchDescriptions, hideVisitURL } = settings?.quicklaunch ? settings.quicklaunch : { searchDescriptions: false, hideVisitURL: false };
const searchField = useRef();
const [results, setResults] = useState([]);
const [currentItemIndex, setCurrentItemIndex] = useState(null);
const [url, setUrl] = useState(null);
function openCurrentItem(newWindow) {
const result = results[currentItemIndex];
window.open(result.href, newWindow ? "_blank" : result.target ?? settings.target ?? "_blank");
window.open(result.href, newWindow ? "_blank" : result.target ?? settings.target ?? "_blank", 'noreferrer');
}
const closeAndReset = useCallback(() => {
@@ -29,12 +31,21 @@ export default function QuickLaunch({servicesAndBookmarks, searchString, setSear
}, [close, setSearchString, setCurrentItemIndex]);
function handleSearchChange(event) {
setSearchString(event.target.value.toLowerCase())
const rawSearchString = event.target.value.toLowerCase();
try {
if (!/.+[.:].+/g.test(rawSearchString)) throw new Error(); // basic test for probably a url
let urlString = rawSearchString;
if (urlString.indexOf('http') !== 0) urlString = `https://${rawSearchString}`;
setUrl(new URL(urlString)); // basic validation
} catch (e) {
setUrl(null);
}
setSearchString(rawSearchString);
}
function handleSearchKeyDown(event) {
if (!isOpen) return;
if (event.key === "Escape") {
closeAndReset();
event.preventDefault();
@@ -50,6 +61,7 @@ export default function QuickLaunch({servicesAndBookmarks, searchString, setSear
}
}
function handleItemHover(event) {
setCurrentItemIndex(parseInt(event.target?.dataset?.index, 10));
}
@@ -76,13 +88,33 @@ export default function QuickLaunch({servicesAndBookmarks, searchString, setSear
newResults = newResults.sort((a, b) => b.priority - a.priority);
}
if (searchProvider) {
newResults.push(
{
href: searchProvider.url + encodeURIComponent(searchString),
name: `${searchProvider.name ?? t("quicklaunch.custom")} ${t("quicklaunch.search")} `,
type: 'search',
}
)
}
if (!hideVisitURL && url) {
newResults.unshift(
{
href: url.toString(),
name: `${t("quicklaunch.visit")} URL`,
type: 'url',
}
)
}
setResults(newResults);
if (newResults.length) {
setCurrentItemIndex(0);
}
}
}, [searchString, servicesAndBookmarks, searchDescriptions]);
}, [searchString, servicesAndBookmarks, searchDescriptions, hideVisitURL, searchProvider, url, t]);
const [hidden, setHidden] = useState(true);
@@ -90,7 +122,7 @@ export default function QuickLaunch({servicesAndBookmarks, searchString, setSear
function handleBackdropClick(event) {
if (event.target?.tagName === "DIV") closeAndReset();
}
if (isOpen) {
searchField.current.focus();
document.body.addEventListener('click', handleBackdropClick);
@@ -135,20 +167,20 @@ export default function QuickLaunch({servicesAndBookmarks, searchString, setSear
i === currentItemIndex && "bg-theme-300/50 dark:bg-theme-700/50",
)} onClick={handleItemClick}>
<div className="flex flex-row items-center mr-4 pointer-events-none">
<div className="w-5 text-xs mr-4">
{(r.icon || r.abbr) && <div className="w-5 text-xs mr-4">
{r.icon && <ResolvedIcon icon={r.icon} />}
{r.abbr && r.abbr}
</div>
</div>}
<div className="flex flex-col md:flex-row text-left items-baseline mr-4 pointer-events-none">
<span className="mr-4">{r.name}</span>
{r.description &&
{r.description &&
<span className="text-xs text-theme-600 text-light">
{searchDescriptions && r.priority < 2 ? highlightText(r.description) : r.description}
</span>
}
</div>
</div>
<div className="text-xs text-theme-600 font-bold pointer-events-none">{r.type === 'service' ? t("quicklaunch.service") : t("quicklaunch.bookmark")}</div>
<div className="text-xs text-theme-600 font-bold pointer-events-none">{t(`quicklaunch.${r.type ? r.type.toLowerCase() : 'bookmark'}`)}</div>
</button>
</li>
))}
+1 -1
View File
@@ -91,7 +91,7 @@ export default function Item({ service }) {
<span className="sr-only">View container stats</span>
</button>
)}
{service.app && (
{(service.app && !service.external) && (
<button
type="button"
onClick={() => (statsOpen ? closeStats() : setStatsOpen(true))}
@@ -6,7 +6,7 @@ export default function KubernetesStatus({ service }) {
const { data, error } = useSWR(`/api/kubernetes/status/${service.namespace}/${service.app}?${podSelectorString}`);
if (error) {
<div className="w-auto px-1.5 py-0.5 text-center bg-theme-500/10 dark:bg-theme-900/50 rounded-b-[3px] overflow-hidden" title={data.status}>
<div className="w-auto px-1.5 py-0.5 text-center bg-theme-500/10 dark:bg-theme-900/50 rounded-b-[3px] overflow-hidden" title={t("docker.error")}>
<div className="text-[8px] font-bold text-rose-500/80 uppercase">{t("docker.error")}</div>
</div>
}
+36 -23
View File
@@ -7,41 +7,54 @@ export default function Status({ service }) {
const { data, error } = useSWR(`/api/docker/status/${service.container}/${service.server || ""}`);
if (error) {
<div className="w-auto px-1.5 py-0.5 text-center bg-theme-500/10 dark:bg-theme-900/50 rounded-b-[3px] overflow-hidden" title={data.status}>
<div className="w-auto px-1.5 py-0.5 text-center bg-theme-500/10 dark:bg-theme-900/50 rounded-b-[3px] overflow-hidden" title={t("docker.error")}>
<div className="text-[8px] font-bold text-rose-500/80 uppercase">{t("docker.error")}</div>
</div>
}
if (data && data.status === "running") {
if (data.health === "starting") {
if (data) {
let statusLabel = "";
if (data.status?.includes("running")) {
if (data.health === "starting") {
return (
<div className="w-auto px-1.5 py-0.5 text-center bg-theme-500/10 dark:bg-theme-900/50 rounded-b-[3px] overflow-hidden" title={t("docker.starting")}>
<div className="text-[8px] font-bold text-blue-500/80 uppercase">{t("docker.starting")}</div>
</div>
);
}
if (data.health === "unhealthy") {
return (
<div className="w-auto px-1.5 py-0.5 text-center bg-theme-500/10 dark:bg-theme-900/50 rounded-b-[3px] overflow-hidden" title={t("docker.unhealthy")}>
<div className="text-[8px] font-bold text-orange-400/50 dark:text-orange-400/80 uppercase">{t("docker.unhealthy")}</div>
</div>
);
}
if (!data.health) {
statusLabel = data.status.replace("running", t("docker.running"))
} else {
statusLabel = data.health === "healthy" ? t("docker.healthy") : data.health
}
return (
<div className="w-auto px-1.5 py-0.5 text-center bg-theme-500/10 dark:bg-theme-900/50 rounded-b-[3px] overflow-hidden" title={data.health}>
<div className="text-[8px] font-bold text-blue-500/80 uppercase">{data.health}</div>
<div className="w-auto px-1.5 py-0.5 text-center bg-theme-500/10 dark:bg-theme-900/50 rounded-b-[3px] overflow-hidden" title={statusLabel}>
<div className="text-[8px] font-bold text-emerald-500/80 uppercase">{statusLabel}</div>
</div>
);
}
if (data.health === "unhealthy") {
if (data.status === "not found" || data.status === "exited" || data.status?.startsWith("partial")) {
if (data.status === "not found") statusLabel = t("docker.not_found")
else if (data.status === "exited") statusLabel = t("docker.exited")
else statusLabel = data.status.replace("partial", t("docker.partial"))
return (
<div className="w-auto px-1.5 py-0.5 text-center bg-theme-500/10 dark:bg-theme-900/50 rounded-b-[3px] overflow-hidden" title={data.health}>
<div className="text-[8px] font-bold text-orange-400/50 dark:text-orange-400/80 uppercase">{data.health}</div>
<div className="w-auto px-1.5 py-0.5 text-center bg-theme-500/10 dark:bg-theme-900/50 rounded-b-[3px] overflow-hidden" title={statusLabel}>
<div className="text-[8px] font-bold text-orange-400/50 dark:text-orange-400/80 uppercase">{statusLabel}</div>
</div>
);
}
return (
<div className="w-auto px-1.5 py-0.5 text-center bg-theme-500/10 dark:bg-theme-900/50 rounded-b-[3px] overflow-hidden" title={data.health ?? data.status}>
<div className="text-[8px] font-bold text-emerald-500/80 uppercase">{data.health ?? data.status}</div>
</div>
);
}
if (data && (data.status === "not found" || data.status === "exited")) {
return (
<div className="w-auto px-1.5 py-0.5 text-center bg-theme-500/10 dark:bg-theme-900/50 rounded-b-[3px] overflow-hidden" title={data.status}>
<div className="text-[8px] font-bold text-orange-400/50 dark:text-orange-400/80 uppercase">{data.status}</div>
</div>
);
}
return (
+12 -1
View File
@@ -9,7 +9,18 @@ export default function Container({ error = false, children, service }) {
const fields = service?.widget?.fields;
const type = service?.widget?.type;
if (fields && type) {
visibleChildren = children.filter(child => fields.some(field => `${type}.${field}` === child?.props?.label));
// if the field contains a "." then it most likely contains a common loc value
// logic now allows a fields array that can look like:
// fields: [ "resources.cpu", "resources.mem", "field"]
// or even
// fields: [ "resources.cpu", "widget_type.field" ]
visibleChildren = children.filter(child => fields.some(field => {
let fullField = field;
if (!field.includes(".")) {
fullField = `${type}.${field}`;
}
return fullField === child?.props?.label;
}));
}
return <div className="relative flex flex-row w-full">{visibleChildren}</div>;
+60 -5
View File
@@ -1,11 +1,17 @@
import useSWR from "swr";
import { BiError } from "react-icons/bi";
import { FaMemory } from "react-icons/fa";
import { FaMemory, FaRegClock, FaThermometerHalf } from "react-icons/fa";
import { FiCpu } from "react-icons/fi";
import { useTranslation } from "next-i18next";
import UsageBar from "../resources/usage-bar";
const cpuSensorLabels = ["cpu_thermal", "Core"];
function convertToFahrenheit(t) {
return t * 9/5 + 32
}
export default function Widget({ options }) {
const { t, i18n } = useTranslation();
@@ -64,6 +70,24 @@ export default function Widget({ options }) {
);
}
const unit = options.units === "imperial" ? "fahrenheit" : "celsius";
let mainTemp = 0;
let maxTemp = 80;
const cpuSensors = data.sensors?.filter(s => cpuSensorLabels.some(label => s.label.startsWith(label)) && s.type === "temperature_core");
if (options.cputemp && cpuSensors) {
try {
mainTemp = cpuSensors.reduce((acc, s) => acc + s.value, 0) / cpuSensors.length;
maxTemp = Math.max(cpuSensors.reduce((acc, s) => acc + s.warning, 0) / cpuSensors.length, maxTemp);
if (unit === "fahrenheit") {
mainTemp = convertToFahrenheit(mainTemp);
maxTemp = convertToFahrenheit(maxTemp);
}
} catch (e) {
// cpu sensor retrieval failed
}
}
const tempPercent = Math.round((mainTemp / maxTemp) * 100);
return (
<div className="flex flex-col max-w:full sm:basis-auto self-center grow-0 flex-wrap ml-4">
<div className="flex flex-row self-center flex-wrap justify-between">
@@ -73,7 +97,7 @@ export default function Widget({ options }) {
<div className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">
{t("common.number", {
value: data.cpu,
value: data.quicklook.cpu,
style: "unit",
unit: "percent",
maximumFractionDigits: 0,
@@ -81,7 +105,7 @@ export default function Widget({ options }) {
</div>
<div className="pr-1">{t("glances.cpu")}</div>
</div>
<UsageBar percent={data.cpu} />
<UsageBar percent={data.quicklook.cpu} />
</div>
</div>
<div className="flex-none flex flex-row items-center mr-3 py-1.5">
@@ -90,7 +114,7 @@ export default function Widget({ options }) {
<div className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">
{t("common.number", {
value: data.mem,
value: data.quicklook.mem,
style: "unit",
unit: "percent",
maximumFractionDigits: 0,
@@ -98,9 +122,40 @@ export default function Widget({ options }) {
</div>
<div className="pr-1">{t("glances.mem")}</div>
</div>
<UsageBar percent={data.mem} />
<UsageBar percent={data.quicklook.mem} />
</div>
</div>
{options.cputemp && mainTemp > 0 &&
(<div className="flex-none flex flex-row items-center mr-3 py-1.5">
<FaThermometerHalf className="text-theme-800 dark:text-theme-200 w-5 h-5" />
<div className="flex flex-col ml-3 text-left min-w-[85px]">
<span className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">
{t("common.number", {
value: mainTemp,
maximumFractionDigits: 1,
style: "unit",
unit
})}
</div>
<div className="pr-1">{t("glances.temp")}</div>
</span>
<UsageBar percent={tempPercent} />
</div>
</div>)}
{options.uptime && data.uptime &&
(<div className="flex-none flex flex-row items-center mr-3 py-1.5">
<FaRegClock className="text-theme-800 dark:text-theme-200 w-5 h-5" />
<div className="flex flex-col ml-3 text-left min-w-[85px]">
<span className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">
{data.uptime.replace(" days,", t("glances.days")).replace(/:\d\d:\d\d$/g, t("glances.hours"))}
</div>
<div className="pr-1">{t("glances.uptime")}</div>
</span>
<UsageBar percent={Math.round((new Date().getSeconds() / 60) * 100)} />
</div>
</div>)}
</div>
{options.label && (
<div className="pt-1 text-center text-theme-800 dark:text-theme-200 text-xs">{options.label}</div>
+4 -4
View File
@@ -29,12 +29,12 @@ export default function Cpu({ expanded }) {
<FiCpu className="text-theme-800 dark:text-theme-200 w-5 h-5" />
<div className="flex flex-col ml-3 text-left min-w-[85px]">
<div className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">-</div>
<div className="pl-0.5 pr-1">-</div>
<div className="pr-1">{t("resources.cpu")}</div>
</div>
{expanded && (
<div className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">-</div>
<div className="pl-0.5 pr-1">-</div>
<div className="pr-1">{t("resources.load")}</div>
</div>
)}
@@ -51,7 +51,7 @@ export default function Cpu({ expanded }) {
<FiCpu className="text-theme-800 dark:text-theme-200 w-5 h-5" />
<div className="flex flex-col ml-3 text-left min-w-[85px]">
<div className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">
<div className="pl-0.5 pr-1">
{t("common.number", {
value: data.cpu.usage,
style: "unit",
@@ -63,7 +63,7 @@ export default function Cpu({ expanded }) {
</div>
{expanded && (
<div className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">
<div className="pl-0.5 pr-1">
{t("common.number", {
value: data.cpu.load,
maximumFractionDigits: 2,
@@ -0,0 +1,93 @@
import useSWR from "swr";
import { FaThermometerHalf } from "react-icons/fa";
import { BiError } from "react-icons/bi";
import { useTranslation } from "next-i18next";
import UsageBar from "./usage-bar";
function convertToFahrenheit(t) {
return t * 9/5 + 32
}
export default function CpuTemp({ expanded, units }) {
const { t } = useTranslation();
const { data, error } = useSWR(`/api/widgets/resources?type=cputemp`, {
refreshInterval: 1500,
});
if (error || data?.error) {
return (
<div className="flex-none flex flex-row items-center mr-3 py-1.5">
<BiError className="text-theme-800 dark:text-theme-200 w-5 h-5" />
<div className="flex flex-col ml-3 text-left">
<span className="text-theme-800 dark:text-theme-200 text-xs">{t("widget.api_error")}</span>
</div>
</div>
);
}
if (!data || !data.cputemp) {
return (
<div className="flex-none flex flex-row items-center mr-3 py-1.5 animate-pulse">
<FaThermometerHalf className="text-theme-800 dark:text-theme-200 w-5 h-5" />
<div className="flex flex-col ml-3 text-left min-w-[85px]">
<span className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">-</div>
<div className="pr-1">{t("resources.temp")}</div>
</span>
{expanded && (
<span className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">-</div>
<div className="pr-1">{t("resources.max")}</div>
</span>
)}
</div>
</div>
);
}
let minTemp = 0;
let mainTemp = data.cputemp.main;
if (data.cputemp.cores?.length) {
mainTemp = data.cputemp.cores.reduce((a, b) => a + b) / data.cputemp.cores.length;
minTemp = Math.min(...data.cputemp.cores);
}
const unit = units === "imperial" ? "fahrenheit" : "celsius";
mainTemp = (unit === "celsius") ? mainTemp : convertToFahrenheit(mainTemp);
const maxTemp = (unit === "celsius") ? data.cputemp.max : convertToFahrenheit(data.cputemp.max);
const percent = Math.round(((mainTemp - minTemp) / (maxTemp - minTemp)) * 100);
return (
<div className="flex-none flex flex-row items-center mr-3 py-1.5">
<FaThermometerHalf className="text-theme-800 dark:text-theme-200 w-5 h-5" />
<div className="flex flex-col ml-3 text-left min-w-[85px]">
<span className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">
{t("common.number", {
value: mainTemp,
maximumFractionDigits: 1,
style: "unit",
unit
})}
</div>
<div className="pr-1">{t("resources.temp")}</div>
</span>
{expanded && (
<span className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">
{t("common.number", {
value: maxTemp,
maximumFractionDigits: 1,
style: "unit",
unit
})}
</div>
<div className="pr-1">{t("resources.max")}</div>
</span>
)}
<UsageBar percent={percent} />
</div>
</div>
);
}
+6 -5
View File
@@ -29,12 +29,12 @@ export default function Disk({ options, expanded }) {
<FiHardDrive className="text-theme-800 dark:text-theme-200 w-5 h-5" />
<div className="flex flex-col ml-3 text-left min-w-[85px]">
<span className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">-</div>
<div className="pl-0.5 pr-1">-</div>
<div className="pr-1">{t("resources.free")}</div>
</span>
{expanded && (
<span className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">-</div>
<div className="pl-0.5 pr-1">-</div>
<div className="pr-1">{t("resources.total")}</div>
</span>
)}
@@ -44,19 +44,20 @@ export default function Disk({ options, expanded }) {
);
}
const percent = Math.round((data.drive.usedGb / data.drive.totalGb) * 100);
// data.drive.used not accurate?
const percent = Math.round(((data.drive.size - data.drive.available) / data.drive.size) * 100);
return (
<div className="flex-none flex flex-row items-center mr-3 py-1.5">
<FiHardDrive className="text-theme-800 dark:text-theme-200 w-5 h-5" />
<div className="flex flex-col ml-3 text-left min-w-[85px]">
<span className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">{t("common.bytes", { value: data.drive.freeGb * 1024 * 1024 * 1024 })}</div>
<div className="pl-0.5 pr-1">{t("common.bytes", { value: data.drive.available })}</div>
<div className="pr-1">{t("resources.free")}</div>
</span>
{expanded && (
<span className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">{t("common.bytes", { value: data.drive.totalGb * 1024 * 1024 * 1024 })}</div>
<div className="pl-0.5 pr-1">{t("common.bytes", { value: data.drive.size })}</div>
<div className="pr-1">{t("resources.total")}</div>
</span>
)}
+7 -7
View File
@@ -29,12 +29,12 @@ export default function Memory({ expanded }) {
<FaMemory className="text-theme-800 dark:text-theme-200 w-5 h-5" />
<div className="flex flex-col ml-3 text-left min-w-[85px]">
<span className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">-</div>
<div className="pl-0.5 pr-1">-</div>
<div className="pr-1">{t("resources.free")}</div>
</span>
{expanded && (
<span className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">-</div>
<div className="pl-0.5 pr-1">-</div>
<div className="pr-1">{t("resources.total")}</div>
</span>
)}
@@ -44,23 +44,23 @@ export default function Memory({ expanded }) {
);
}
const percent = Math.round((data.memory.usedMemMb / data.memory.totalMemMb) * 100);
const percent = Math.round((data.memory.active / data.memory.total) * 100);
return (
<div className="flex-none flex flex-row items-center mr-3 py-1.5">
<FaMemory className="text-theme-800 dark:text-theme-200 w-5 h-5" />
<div className="flex flex-col ml-3 text-left min-w-[85px]">
<span className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">
{t("common.bytes", { value: data.memory.freeMemMb * 1024 * 1024, maximumFractionDigits: 1, binary: true })}
<div className="pl-0.5 pr-1">
{t("common.bytes", { value: data.memory.available, maximumFractionDigits: 1, binary: true })}
</div>
<div className="pr-1">{t("resources.free")}</div>
</span>
{expanded && (
<span className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">
<div className="pl-0.5 pr-1">
{t("common.bytes", {
value: data.memory.totalMemMb * 1024 * 1024,
value: data.memory.total,
maximumFractionDigits: 1,
binary: true,
})}
@@ -1,9 +1,11 @@
import Disk from "./disk";
import Cpu from "./cpu";
import Memory from "./memory";
import CpuTemp from "./cputemp";
import Uptime from "./uptime";
export default function Resources({ options }) {
const { expanded } = options;
const { expanded, units } = options;
return (
<div className="flex flex-col max-w:full sm:basis-auto self-center grow-0 flex-wrap">
<div className="flex flex-row self-center flex-wrap justify-between">
@@ -12,6 +14,8 @@ export default function Resources({ options }) {
{Array.isArray(options.disk)
? options.disk.map((disk) => <Disk key={disk} options={{ disk }} expanded={expanded} />)
: options.disk && <Disk options={options} expanded={expanded} />}
{options.cputemp && <CpuTemp expanded={expanded} units={units} />}
{options.uptime && <Uptime />}
</div>
{options.label && (
<div className="ml-6 pt-1 text-center text-theme-800 dark:text-theme-200 text-xs">{options.label}</div>
@@ -0,0 +1,66 @@
import useSWR from "swr";
import { FaRegClock } from "react-icons/fa";
import { BiError } from "react-icons/bi";
import { useTranslation } from "next-i18next";
import UsageBar from "./usage-bar";
export default function Uptime() {
const { t } = useTranslation();
const { data, error } = useSWR(`/api/widgets/resources?type=uptime`, {
refreshInterval: 1500,
});
if (error || data?.error) {
return (
<div className="flex-none flex flex-row items-center mr-3 py-1.5">
<BiError className="text-theme-800 dark:text-theme-200 w-5 h-5" />
<div className="flex flex-col ml-3 text-left">
<span className="text-theme-800 dark:text-theme-200 text-xs">{t("widget.api_error")}</span>
</div>
</div>
);
}
if (!data) {
return (
<div className="flex-none flex flex-row items-center mr-3 py-1.5 animate-pulse">
<FaRegClock className="text-theme-800 dark:text-theme-200 w-5 h-5" />
<div className="flex flex-col ml-3 text-left min-w-[85px]">
<span className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">-</div>
<div className="pr-1">{t("resources.temp")}</div>
</span>
</div>
</div>
);
}
const mo = Math.floor(data.uptime / (3600 * 24 * 31));
const d = Math.floor(data.uptime % (3600 * 24 * 31) / (3600 * 24));
const h = Math.floor(data.uptime % (3600 * 24) / 3600);
const m = Math.floor(data.uptime % 3600 / 60);
let uptime;
if (mo > 0) uptime = `${mo}${t("resources.months")} ${d}${t("resources.days")}`;
else if (d > 0) uptime = `${d}${t("resources.days")} ${h}${t("resources.hours")}`;
else uptime = `${h}${t("resources.hours")} ${m}${t("resources.minutes")}`;
const percent = Math.round((new Date().getSeconds() / 60) * 100);
return (
<div className="flex-none flex flex-row items-center mr-3 py-1.5">
<FaRegClock className="text-theme-800 dark:text-theme-200 w-5 h-5" />
<div className="flex flex-col ml-3 text-left min-w-[85px]">
<span className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
<div className="pl-0.5">
{uptime}
</div>
<div className="pr-1">{t("resources.uptime")}</div>
</span>
<UsageBar percent={percent} />
</div>
</div>
);
}
+93 -14
View File
@@ -1,9 +1,11 @@
import { useState } from "react";
import { useState, useEffect, Fragment } from "react";
import { useTranslation } from "next-i18next";
import { FiSearch } from "react-icons/fi";
import { SiDuckduckgo, SiMicrosoftbing, SiGoogle, SiBaidu, SiBrave } from "react-icons/si";
import { Listbox, Transition } from "@headlessui/react";
import classNames from "classnames";
const providers = {
export const searchProviders = {
google: {
name: "Google",
url: "https://www.google.com/search?q=",
@@ -36,21 +38,55 @@ const providers = {
},
};
function getAvailableProviderIds(options) {
if (options.provider && Array.isArray(options.provider)) {
return Object.keys(searchProviders).filter((value) => options.provider.includes(value));
}
if (options.provider && searchProviders[options.provider]) {
return [options.provider];
}
return null;
}
const localStorageKey = "search-name";
export function getStoredProvider() {
if (typeof window !== 'undefined') {
const storedName = localStorage.getItem(localStorageKey);
if (storedName) {
return Object.values(searchProviders).find((el) => el.name === storedName);
}
}
return null;
}
export default function Search({ options }) {
const { t } = useTranslation();
const provider = providers[options.provider];
const [query, setQuery] = useState("");
const availableProviderIds = getAvailableProviderIds(options);
if (!provider) {
const [query, setQuery] = useState("");
const [selectedProvider, setSelectedProvider] = useState(searchProviders[availableProviderIds[0] ?? searchProviders.google]);
useEffect(() => {
const storedProvider = getStoredProvider();
let storedProviderKey = null;
storedProviderKey = Object.keys(searchProviders).find((pkey) => searchProviders[pkey] === storedProvider);
if (storedProvider && availableProviderIds.includes(storedProviderKey)) {
setSelectedProvider(storedProvider);
}
}, [availableProviderIds]);
if (!availableProviderIds) {
return null;
}
function handleSubmit(event) {
const q = encodeURIComponent(query);
if (provider.url) {
window.open(`${provider.url}${q}`, options.target || "_blank");
const { url } = selectedProvider;
if (url) {
window.open(`${url}${q}`, options.target || "_blank");
} else {
window.open(`${options.url}${q}`, options.target || "_blank");
}
@@ -60,6 +96,11 @@ export default function Search({ options }) {
setQuery("");
}
const onChangeProvider = (provider) => {
setSelectedProvider(provider);
localStorage.setItem(localStorageKey, provider.name);
}
return (
<form className="flex-col relative h-8 my-4 min-w-fit grow first:ml-0 ml-4" onSubmit={handleSubmit}>
<div className="flex absolute inset-y-0 left-0 items-center pl-3 pointer-events-none w-full text-theme-800 dark:text-white" />
@@ -82,17 +123,55 @@ export default function Search({ options }) {
// eslint-disable-next-line jsx-a11y/no-autofocus
autoFocus={options.focus}
/>
<button
type="submit"
className="
<Listbox as="div" value={selectedProvider} onChange={onChangeProvider} className="relative text-left" disabled={availableProviderIds?.length === 1}>
<div>
<Listbox.Button
className="
absolute right-0.5 bottom-0.5 rounded-r-md px-4 py-2 border-1
text-white font-medium text-sm
bg-theme-600/40 dark:bg-white/10
focus:ring-theme-500 dark:focus:ring-white/50"
>
<provider.icon className="text-white w-3 h-3" />
<span className="sr-only">{t("search.search")}</span>
</button>
>
<selectedProvider.icon className="text-white w-3 h-3" />
<span className="sr-only">{t("search.search")}</span>
</Listbox.Button>
</div>
<Transition
as={Fragment}
enter="transition ease-out duration-100"
enterFrom="transform opacity-0 scale-95"
enterTo="transform opacity-100 scale-100"
leave="transition ease-in duration-75"
leaveFrom="transform opacity-100 scale-100"
leaveTo="transform opacity-0 scale-95"
>
<Listbox.Options
className="absolute right-0 z-10 mt-1 origin-top-right rounded-md
bg-theme-100 dark:bg-theme-600 shadow-lg
ring-1 ring-black ring-opacity-5 focus:outline-none"
>
<div className="flex flex-col">
{availableProviderIds.map((providerId) => {
const p = searchProviders[providerId];
return (
<Listbox.Option key={providerId} value={p} as={Fragment}>
{({ active }) => (
<li
className={classNames(
"rounded-md cursor-pointer",
active ? "bg-theme-600/10 dark:bg-white/10 dark:text-gray-900" : "dark:text-gray-100"
)}
>
<p.icon className="h-4 w-4 mx-4 my-2" />
</li>
)}
</Listbox.Option>
);
})}
</div>
</Listbox.Options>
</Transition>
</Listbox>
</form>
);
}
@@ -20,7 +20,6 @@ export default function Widget({ options }) {
<BiError className="w-8 h-8 text-theme-800 dark:text-theme-200" />
<div className="flex flex-col ml-3 text-left">
<span className="text-theme-800 dark:text-theme-200 text-sm">{t("widget.api_error")}</span>
<span className="text-theme-800 dark:text-theme-200 text-xs">-</span>
</div>
</div>
</div>
@@ -28,7 +27,7 @@ export default function Widget({ options }) {
);
}
const defaultSite = statsData?.data?.find(s => s.name === "default");
const defaultSite = options.site ? statsData?.data.find(s => s.desc === options.site) : statsData?.data?.find(s => s.name === "default");
if (!defaultSite) {
return (
@@ -55,6 +54,8 @@ export default function Widget({ options }) {
const name = wan.gw_name ?? defaultSite.desc;
const uptime = wan["gw_system-stats"] ? wan["gw_system-stats"].uptime : null;
const dataEmpty = !(wan.show || lan.show || wlan.show || uptime);
return (
<div className="flex-none flex flex-row items-center mr-3 py-1.5">
<div className="flex flex-col">
@@ -64,6 +65,14 @@ export default function Widget({ options }) {
{name}
</div>
</div>
{dataEmpty && <div className="flex flex-row ml-3 text-[8px] justify-between">
<div className="flex flex-row items-center justify-end">
<div className="flex flex-row">
<BiError className="w-4 h-4 text-theme-800 dark:text-theme-200" />
<span className="text-theme-800 dark:text-theme-200 text-xs">{t("unifi.empty_data")}</span>
</div>
</div>
</div>}
<div className="flex flex-row ml-3 text-[10px] justify-between">
{uptime && <div className="flex flex-row" title={t("unifi.uptime")}>
<div className="pr-0.5 text-theme-800 dark:text-theme-200">
+28 -20
View File
@@ -1,16 +1,18 @@
import Docker from "dockerode";
import getDockerArguments from "utils/config/docker";
import createLogger from "utils/logger";
const logger = createLogger("dockerStatsService");
export default async function handler(req, res) {
const { service } = req.query;
const [containerName, containerServer] = service;
if (!containerName && !containerServer) {
res.status(400).send({
return res.status(400).send({
error: "docker query parameters are required",
});
return;
}
try {
@@ -23,23 +25,21 @@ export default async function handler(req, res) {
// bad docker connections can result in a <Buffer ...> object?
// in any case, this ensures the result is the expected array
if (!Array.isArray(containers)) {
res.status(500).send({
return res.status(500).send({
error: "query failed",
});
return;
}
const containerNames = containers.map((container) => container.Names[0].replace(/^\//, ""));
const containerNames = containers.map((container) => container.Names[0]?.replace(/^\//, ""));
const containerExists = containerNames.includes(containerName);
if (containerExists) {
const container = docker.getContainer(containerName);
const stats = await container.stats({ stream: false });
res.status(200).json({
return res.status(200).json({
stats,
});
return;
}
// Try with a service deployed in Docker Swarm, if enabled
@@ -53,27 +53,35 @@ export default async function handler(req, res) {
})
.catch(() => []);
// For now we are only interested in the first one (in case replicas > 1).
// TODO: Show the result for all replicas/containers?
const taskContainerId = tasks.at(0)?.Status?.ContainerStatus?.ContainerID;
// We can only get stats for 'local' containers so try to find one
const localContainerIDs = containers.map(c => c.Id);
const task = tasks.find(t => localContainerIDs.includes(t.Status?.ContainerStatus?.ContainerID)) ?? tasks.at(0);
const taskContainerId = task?.Status?.ContainerStatus?.ContainerID;
if (taskContainerId) {
const container = docker.getContainer(taskContainerId);
const stats = await container.stats({ stream: false });
try {
const container = docker.getContainer(taskContainerId);
const stats = await container.stats({ stream: false });
res.status(200).json({
stats,
});
return;
return res.status(200).json({
stats,
});
} catch (e) {
return res.status(200).json({
error: "Unable to retrieve stats"
})
}
}
}
res.status(200).send({
return res.status(404).send({
error: "not found",
});
} catch {
res.status(500).send({
error: {message: "Unknown error"},
} catch (e) {
logger.error(e);
return res.status(500).send({
error: {message: e?.message ?? "Unknown error"},
});
}
}
+56 -19
View File
@@ -1,6 +1,9 @@
import Docker from "dockerode";
import getDockerArguments from "utils/config/docker";
import createLogger from "utils/logger";
const logger = createLogger("dockerStatusService");
export default async function handler(req, res) {
const { service } = req.query;
@@ -27,7 +30,7 @@ export default async function handler(req, res) {
});
}
const containerNames = containers.map((container) => container.Names[0].replace(/^\//, ""));
const containerNames = containers.map((container) => container.Names[0]?.replace(/^\//, ""));
const containerExists = containerNames.includes(containerName);
if (containerExists) {
@@ -41,36 +44,70 @@ export default async function handler(req, res) {
}
if (dockerArgs.swarm) {
const tasks = await docker.listTasks({
const serviceInfo = await docker.getService(containerName).inspect()
.catch(() => undefined);
if (!serviceInfo) {
return res.status(404).send({
status: "not found",
});
}
const tasks = await docker
.listTasks({
filters: {
service: [containerName],
// A service can have several offline containers, we only look for an active one.
"desired-state": ["running"],
},
})
.catch(() => []);
// For now we are only interested in the first one (in case replicas > 1).
// TODO: Show the result for all replicas/containers?
const taskContainerId = tasks.at(0)?.Status?.ContainerStatus?.ContainerID;
if (taskContainerId) {
const container = docker.getContainer(taskContainerId);
const info = await container.inspect();
return res.status(200).json({
status: info.State.Status,
health: info.State.Health?.Status,
});
if (serviceInfo.Spec.Mode?.Replicated) {
// Replicated service, check n replicas
const replicas = parseInt(serviceInfo.Spec.Mode?.Replicated?.Replicas, 10);
if (tasks.length === replicas) {
return res.status(200).json({
status: `running ${tasks.length}/${replicas}`,
});
}
if (tasks.length > 0) {
return res.status(200).json({
status: `partial ${tasks.length}/${replicas}`,
});
}
} else {
// Global service, prefer 'local' containers
const localContainerIDs = containers.map(c => c.Id);
const task = tasks.find(t => localContainerIDs.includes(t.Status?.ContainerStatus?.ContainerID)) ?? tasks.at(0);
const taskContainerId = task?.Status?.ContainerStatus?.ContainerID;
if (taskContainerId) {
try {
const container = docker.getContainer(taskContainerId);
const info = await container.inspect();
return res.status(200).json({
status: info.State.Status,
health: info.State.Health?.Status,
});
} catch (e) {
if (task) {
return res.status(200).json({
status: task.Status.State
})
}
}
}
}
}
return res.status(200).send({
error: "not found",
return res.status(404).send({
status: "not found",
});
} catch {
} catch (e) {
logger.error(e);
return res.status(500).send({
error: "unknown error",
error: {message: e?.message ?? "Unknown error"},
});
}
}
+4 -1
View File
@@ -19,7 +19,10 @@ export default async function handler(req, res) {
return hash(readFileSync(configYaml, "utf8"));
});
const combinedHash = hash(hashes.join(""));
// this ties hash to specific build which should force revaliation between versions
const buildTime = process.env.NEXT_PUBLIC_BUILDTIME?.length ? process.env.NEXT_PUBLIC_BUILDTIME : '';
const combinedHash = hash(hashes.join("") + buildTime);
res.send({
hash: combinedHash,
+1
View File
@@ -32,6 +32,7 @@ export default async function handler(req, res) {
}
req.method = mapping?.method || "GET";
if (mapping?.body) req.body = mapping?.body;
req.query.endpoint = endpoint;
if (req.query.segments) {
+36 -14
View File
@@ -4,19 +4,16 @@ import { getPrivateWidgetOptions } from "utils/config/widget-helpers";
const logger = createLogger("glances");
export default async function handler(req, res) {
const { index } = req.query;
const privateWidgetOptions = await getPrivateWidgetOptions("glances", index);
async function retrieveFromGlancesAPI(privateWidgetOptions, endpoint) {
let errorMessage;
const url = privateWidgetOptions?.url;
if (!url) {
const errorMessage = "Missing Glances URL";
errorMessage = "Missing Glances URL";
logger.error(errorMessage);
return res.status(400).json({ error: errorMessage });
throw new Error(errorMessage);
}
const apiUrl = `${url}/api/3/quicklook`;
const apiUrl = `${url}/api/3/${endpoint}`;
const headers = {
"Accept-Encoding": "application/json"
};
@@ -25,16 +22,41 @@ export default async function handler(req, res) {
}
const params = { method: "GET", headers };
const [status, contentType, data] = await httpProxy(apiUrl, params);
const [status, , data] = await httpProxy(apiUrl, params);
if (status === 401) {
logger.error("Authorization failure getting data from glances API. Data: %s", data);
errorMessage = `Authorization failure getting data from glances API. Data: ${data.toString()}`
logger.error(errorMessage);
throw new Error(errorMessage);
}
if (status !== 200) {
logger.error("HTTP %d getting data from glances API. Data: %s", status, data);
errorMessage = `HTTP ${status} getting data from glances API. Data: ${data.toString()}`
logger.error(errorMessage);
throw new Error(errorMessage);
}
if (contentType) res.setHeader("Content-Type", contentType);
return res.status(status).send(data);
return JSON.parse(Buffer.from(data).toString());
}
export default async function handler(req, res) {
const { index } = req.query;
const privateWidgetOptions = await getPrivateWidgetOptions("glances", index);
try {
const quicklookData = await retrieveFromGlancesAPI(privateWidgetOptions, "quicklook");
const data = {
quicklook: quicklookData
}
data.uptime = await retrieveFromGlancesAPI(privateWidgetOptions, "uptime");
data.sensors = await retrieveFromGlancesAPI(privateWidgetOptions, "sensors");
return res.status(200).send(data);
} catch (e) {
return res.status(400).json({ error: e.message });
}
}
+21 -5
View File
@@ -1,15 +1,16 @@
import { existsSync } from "fs";
import { cpu, drive, mem } from "node-os-utils";
const si = require('systeminformation');
export default async function handler(req, res) {
const { type, target } = req.query;
if (type === "cpu") {
const load = await si.currentLoad();
return res.status(200).json({
cpu: {
usage: await cpu.usage(1000),
load: cpu.loadavgTime(5),
usage: load.currentLoad,
load: load.avgLoad,
},
});
}
@@ -21,14 +22,29 @@ export default async function handler(req, res) {
});
}
const fsSize = await si.fsSize();
return res.status(200).json({
drive: await drive.info(target || "/"),
drive: fsSize.find(fs => fs.mount === target) ?? fsSize.find(fs => fs.mount === "/")
});
}
if (type === "memory") {
return res.status(200).json({
memory: await mem.info(),
memory: await si.mem(),
});
}
if (type === "cputemp") {
return res.status(200).json({
cputemp: await si.cpuTemperature(),
});
}
if (type === "uptime") {
const timeData = await si.time();
return res.status(200).json({
uptime: timeData.uptime
});
}
+21 -6
View File
@@ -22,6 +22,7 @@ import { bookmarksResponse, servicesResponse, widgetsResponse } from "utils/conf
import ErrorBoundary from "components/errorboundry";
import themes from "utils/styles/themes";
import QuickLaunch from "components/quicklaunch";
import { getStoredProvider, searchProviders } from "components/widgets/search/search";
const ThemeToggle = dynamic(() => import("components/toggles/theme"), {
ssr: false,
@@ -99,7 +100,7 @@ function Index({ initialSettings, fallback }) {
localStorage.setItem("hash", hashData.hash);
}
if (!initialSettings.isValid || (previousHash && previousHash !== hashData.hash)) {
if (previousHash && previousHash !== hashData.hash) {
setStale(true);
localStorage.setItem("hash", hashData.hash);
@@ -111,7 +112,7 @@ function Index({ initialSettings, fallback }) {
}
}
}
}, [hashData, initialSettings]);
}, [hashData]);
if (stale) {
return (
@@ -174,7 +175,7 @@ function Home({ initialSettings }) {
const { data: services } = useSWR("/api/services");
const { data: bookmarks } = useSWR("/api/bookmarks");
const { data: widgets } = useSWR("/api/widgets");
const servicesAndBookmarks = [...services.map(sg => sg.services).flat(), ...bookmarks.map(bg => bg.bookmarks).flat()]
useEffect(() => {
@@ -193,6 +194,20 @@ function Home({ initialSettings }) {
const [searching, setSearching] = useState(false);
const [searchString, setSearchString] = useState("");
let searchProvider = null;
const searchWidget = Object.values(widgets).find(w => w.type === "search");
if (searchWidget) {
if (Array.isArray(searchWidget.options?.provider)) {
// if search provider is a list, try to retrieve from localstorage, fall back to the first
searchProvider = getStoredProvider() ?? searchProviders[searchWidget.options.provider[0]];
} else if (searchWidget.options?.provider === 'custom') {
searchProvider = {
url: searchWidget.options.url
}
} else {
searchProvider = searchProviders[searchWidget.options?.provider];
}
}
useEffect(() => {
function handleKeyDown(e) {
@@ -237,7 +252,7 @@ function Home({ initialSettings }) {
/>
<meta name="theme-color" content={themes[initialSettings.color || "slate"][initialSettings.theme || "dark"]} />
</Head>
<div className="relative container m-auto flex flex-col justify-between z-10">
<div className="relative container m-auto flex flex-col justify-between z-10 h-full">
<div
className={classNames(
"flex flex-row flex-wrap justify-between",
@@ -250,7 +265,7 @@ function Home({ initialSettings }) {
setSearchString={setSearchString}
isOpen={searching}
close={setSearching}
searchDescriptions={settings.quicklaunch?.searchDescriptions}
searchProvider={settings.quicklaunch?.hideInternetSearch ? null : searchProvider}
/>
{widgets && (
<>
@@ -294,7 +309,7 @@ function Home({ initialSettings }) {
</div>
<div className="flex p-8 pt-4 w-full justify-end">
<Version />
{!initialSettings?.hideVersion && <Version />}
</div>
</div>
</>
+16 -3
View File
@@ -4,7 +4,7 @@ import path from "path";
import yaml from "js-yaml";
import checkAndCopyConfig, { getSettings } from "utils/config/config";
import checkAndCopyConfig, { getSettings, substituteEnvironmentVars } from "utils/config/config";
import {
servicesFromConfig,
servicesFromDocker,
@@ -13,11 +13,23 @@ import {
} from "utils/config/service-helpers";
import { cleanWidgetGroups, widgetsFromConfig } from "utils/config/widget-helpers";
/**
* Compares services by weight then by name.
*/
function compareServices(service1, service2) {
const comp = service1.weight - service2.weight;
if (comp !== 0) {
return comp;
}
return service1.name.localeCompare(service2.name);
}
export async function bookmarksResponse() {
checkAndCopyConfig("bookmarks.yaml");
const bookmarksYaml = path.join(process.cwd(), "config", "bookmarks.yaml");
const fileContents = await fs.readFile(bookmarksYaml, "utf8");
const rawFileContents = await fs.readFile(bookmarksYaml, "utf8");
const fileContents = substituteEnvironmentVars(rawFileContents);
const bookmarks = yaml.load(fileContents);
if (!bookmarks) return [];
@@ -112,7 +124,8 @@ export async function servicesResponse() {
...discoveredDockerGroup.services,
...discoveredKubernetesGroup.services,
...configuredGroup.services
].filter((service) => service),
].filter((service) => service)
.sort(compareServices),
};
if (definedLayouts) {
+37 -17
View File
@@ -1,9 +1,14 @@
/* eslint-disable no-console */
import { join } from "path";
import { existsSync, copyFile, readFileSync, statSync } from "fs";
import { existsSync, copyFile, readFileSync } from "fs";
import cache from "memory-cache";
import yaml from "js-yaml";
const cacheKey = "homepageEnvironmentVariables";
const homepageVarPrefix = "HOMEPAGE_VAR_";
const homepageFilePrefix = "HOMEPAGE_FILE_";
export default function checkAndCopyConfig(config) {
const configYaml = join(process.cwd(), "config", config);
if (!existsSync(configYaml)) {
@@ -27,23 +32,38 @@ export default function checkAndCopyConfig(config) {
}
}
function getCachedEnvironmentVars() {
let cachedVars = cache.get(cacheKey);
if (!cachedVars) {
// initialize cache
cachedVars = Object.entries(process.env).filter(([key, ]) => key.includes(homepageVarPrefix) || key.includes(homepageFilePrefix));
cache.put(cacheKey, cachedVars);
}
return cachedVars;
}
export function substituteEnvironmentVars(str) {
let result = str;
if (result.includes('{{')) { // crude check if we have vars to replace
const cachedVars = getCachedEnvironmentVars();
cachedVars.forEach(([key, value]) => {
if (key.startsWith(homepageVarPrefix)) {
result = result.replaceAll(`{{${key}}}`, value);
} else if (key.startsWith(homepageFilePrefix)) {
const filename = value;
const fileContents = readFileSync(filename, "utf8");
result = result.replaceAll(`{{${key}}}`, fileContents);
}
});
}
return result;
}
export function getSettings() {
checkAndCopyConfig("settings.yaml");
const settingsYaml = join(process.cwd(), "config", "settings.yaml");
const fileContents = readFileSync(settingsYaml, "utf8");
let stats;
try {
stats = statSync(settingsYaml);
} catch (e) {
stats = {};
}
const yamlLoaded = yaml.load(fileContents) ?? {};
return {
...yamlLoaded,
isValid: fileContents !== "-\n" && stats.size !== 2 // see https://github.com/benphelps/homepage/pull/609
};
}
const rawFileContents = readFileSync(settingsYaml, "utf8");
const fileContents = substituteEnvironmentVars(rawFileContents);
return yaml.load(fileContents) ?? {};
}
+18 -5
View File
@@ -3,13 +3,14 @@ import { readFileSync } from "fs";
import yaml from "js-yaml";
import checkAndCopyConfig from "utils/config/config";
import checkAndCopyConfig, { substituteEnvironmentVars } from "utils/config/config";
export default function getDockerArguments(server) {
checkAndCopyConfig("docker.yaml");
const configFile = path.join(process.cwd(), "config", "docker.yaml");
const configData = readFileSync(configFile, "utf8");
const rawConfigData = readFileSync(configFile, "utf8");
const configData = substituteEnvironmentVars(rawConfigData);
const servers = yaml.load(configData);
if (!server) {
@@ -26,10 +27,22 @@ export default function getDockerArguments(server) {
}
if (servers[server].host) {
return {
conn: { host: servers[server].host, port: servers[server].port || null },
const res ={
conn: { host: servers[server].host },
swarm: !!servers[server].swarm,
};
}
if (servers[server].port){
res.conn.port = servers[server].port;
}
if (servers[server].tls){
res.conn.ca = readFileSync(path.join(process.cwd(), "config", servers[server].tls.caFile));
res.conn.cert = readFileSync(path.join(process.cwd(), "config", servers[server].tls.certFile));
res.conn.key = readFileSync(path.join(process.cwd(), "config", servers[server].tls.keyFile));
}
return res;
}
return servers[server];
+3 -2
View File
@@ -4,13 +4,14 @@ import { readFileSync } from "fs";
import yaml from "js-yaml";
import { KubeConfig } from "@kubernetes/client-node";
import checkAndCopyConfig from "utils/config/config";
import checkAndCopyConfig, { substituteEnvironmentVars } from "utils/config/config";
export default function getKubeConfig() {
checkAndCopyConfig("kubernetes.yaml");
const configFile = path.join(process.cwd(), "config", "kubernetes.yaml");
const configData = readFileSync(configFile, "utf8");
const rawConfigData = readFileSync(configFile, "utf8");
const configData = substituteEnvironmentVars(rawConfigData);
const config = yaml.load(configData);
const kc = new KubeConfig();
+72 -6
View File
@@ -4,20 +4,22 @@ import path from "path";
import yaml from "js-yaml";
import Docker from "dockerode";
import * as shvl from "shvl";
import { NetworkingV1Api } from "@kubernetes/client-node";
import { CustomObjectsApi, NetworkingV1Api } from "@kubernetes/client-node";
import createLogger from "utils/logger";
import checkAndCopyConfig from "utils/config/config";
import checkAndCopyConfig, { substituteEnvironmentVars } from "utils/config/config";
import getDockerArguments from "utils/config/docker";
import getKubeConfig from "utils/config/kubernetes";
const logger = createLogger("service-helpers");
export async function servicesFromConfig() {
checkAndCopyConfig("services.yaml");
const servicesYaml = path.join(process.cwd(), "config", "services.yaml");
const fileContents = await fs.readFile(servicesYaml, "utf8");
const rawFileContents = await fs.readFile(servicesYaml, "utf8");
const fileContents = substituteEnvironmentVars(rawFileContents);
const services = yaml.load(fileContents);
if (!services) {
@@ -33,6 +35,15 @@ export async function servicesFromConfig() {
})),
}));
// add default weight to services based on their position in the configuration
servicesArray.forEach((group, groupIndex) => {
group.services.forEach((service, serviceIndex) => {
if(!service.weight) {
servicesArray[groupIndex].services[serviceIndex].weight = (serviceIndex + 1) * 100;
}
});
});
return servicesArray;
}
@@ -40,7 +51,8 @@ export async function servicesFromDocker() {
checkAndCopyConfig("docker.yaml");
const dockerYaml = path.join(process.cwd(), "config", "docker.yaml");
const dockerFileContents = await fs.readFile(dockerYaml, "utf8");
const rawDockerFileContents = await fs.readFile(dockerYaml, "utf8");
const dockerFileContents = substituteEnvironmentVars(rawDockerFileContents);
const servers = yaml.load(dockerFileContents);
if (!servers) {
@@ -133,6 +145,7 @@ export async function servicesFromKubernetes() {
return [];
}
const networking = kc.makeApiClient(NetworkingV1Api);
const crd = kc.makeApiClient(CustomObjectsApi);
const ingressList = await networking.listIngressForAllNamespaces(null, null, null, null)
.then((response) => response.body)
@@ -140,6 +153,20 @@ export async function servicesFromKubernetes() {
logger.error("Error getting ingresses: %d %s %s", error.statusCode, error.body, error.response);
return null;
});
const traefikIngressList = await crd.listClusterCustomObject("traefik.containo.us", "v1alpha1", "ingressroutes")
.then((response) => response.body)
.catch((error) => {
logger.error("Error getting traefik ingresses: %d %s %s", error.statusCode, error.body, error.response);
return null;
});
if (traefikIngressList && traefikIngressList.items.length > 0) {
const traefikServices = traefikIngressList.items
.filter((ingress) => ingress.metadata.annotations && ingress.metadata.annotations[`${ANNOTATION_BASE}/href`])
ingressList.items.push(...traefikServices);
}
if (!ingressList) {
return [];
}
@@ -152,12 +179,20 @@ export async function servicesFromKubernetes() {
href: ingress.metadata.annotations[`${ANNOTATION_BASE}/href`] || getUrlFromIngress(ingress),
name: ingress.metadata.annotations[`${ANNOTATION_BASE}/name`] || ingress.metadata.name,
group: ingress.metadata.annotations[`${ANNOTATION_BASE}/group`] || "Kubernetes",
weight: ingress.metadata.annotations[`${ANNOTATION_BASE}/weight`] || '0',
icon: ingress.metadata.annotations[`${ANNOTATION_BASE}/icon`] || '',
description: ingress.metadata.annotations[`${ANNOTATION_BASE}/description`] || '',
external: false,
};
if (ingress.metadata.annotations[`${ANNOTATION_BASE}/external`]) {
constructedService.external = String(ingress.metadata.annotations[`${ANNOTATION_BASE}/external`]).toLowerCase() === "true"
}
if (ingress.metadata.annotations[ANNOTATION_POD_SELECTOR]) {
constructedService.podSelector = ingress.metadata.annotations[ANNOTATION_POD_SELECTOR];
}
if (ingress.metadata.annotations[`${ANNOTATION_BASE}/ping`]) {
constructedService.ping = ingress.metadata.annotations[`${ANNOTATION_BASE}/ping`];
}
Object.keys(ingress.metadata.annotations).forEach((annotation) => {
if (annotation.startsWith(ANNOTATION_WIDGET_BASE)) {
shvl.set(constructedService, annotation.replace(`${ANNOTATION_BASE}/`, ""), ingress.metadata.annotations[annotation]);
@@ -201,6 +236,17 @@ export function cleanServiceGroups(groups) {
name: serviceGroup.name,
services: serviceGroup.services.map((service) => {
const cleanedService = { ...service };
if (typeof service.weight === 'string') {
const weight = parseInt(service.weight, 10);
if (Number.isNaN(weight)) {
cleanedService.weight = 0;
} else {
cleanedService.weight = weight;
}
}
if (typeof cleanedService.weight !== "number") {
cleanedService.weight = 0;
}
if (cleanedService.widget) {
// whitelisted set of keys to pass to the frontend
@@ -212,14 +258,21 @@ export function cleanServiceGroups(groups) {
currency, // coinmarketcap widget
symbols,
defaultinterval,
site, // unifi widget
namespace, // kubernetes widget
app,
podSelector
podSelector,
wan, // opnsense widget,
enableBlocks, // emby/jellyfin
enableNowPlaying,
volume // diskstation widget
} = cleanedService.widget;
const fieldsList = typeof fields === 'string' ? JSON.parse(fields) : fields;
cleanedService.widget = {
type,
fields: fields || null,
fields: fieldsList || null,
service_name: service.name,
service_group: serviceGroup.name,
};
@@ -232,11 +285,24 @@ export function cleanServiceGroups(groups) {
if (server) cleanedService.widget.server = server;
if (container) cleanedService.widget.container = container;
}
if (type === "unifi") {
if (site) cleanedService.widget.site = site;
}
if (type === "kubernetes") {
if (namespace) cleanedService.widget.namespace = namespace;
if (app) cleanedService.widget.app = app;
if (podSelector) cleanedService.widget.podSelector = podSelector;
}
if (type === "opnsense") {
if (wan) cleanedService.widget.wan = wan;
}
if (type === "emby" || type === "jellyfin") {
if (enableBlocks) cleanedService.widget.enableBlocks = enableBlocks;
if (enableNowPlaying) cleanedService.widget.enableNowPlaying = enableNowPlaying;
}
if (type === "diskstation") {
if (volume) cleanedService.widget.volume = volume;
}
}
return cleanedService;
+3 -2
View File
@@ -3,7 +3,7 @@ import path from "path";
import yaml from "js-yaml";
import checkAndCopyConfig from "utils/config/config";
import checkAndCopyConfig, { substituteEnvironmentVars } from "utils/config/config";
const exemptWidgets = ["search"];
@@ -11,7 +11,8 @@ export async function widgetsFromConfig() {
checkAndCopyConfig("widgets.yaml");
const widgetsYaml = path.join(process.cwd(), "config", "widgets.yaml");
const fileContents = await fs.readFile(widgetsYaml, "utf8");
const rawFileContents = await fs.readFile(widgetsYaml, "utf8");
const fileContents = substituteEnvironmentVars(rawFileContents);
const widgets = yaml.load(fileContents);
if (!widgets) return [];
+9
View File
@@ -53,3 +53,12 @@ export function jsonArrayTransform(data, transform) {
export function jsonArrayFilter(data, filter) {
return jsonArrayTransform(data, (items) => items.filter(filter));
}
export function sanitizeErrorURL(errorURL) {
// Dont display sensitive params on frontend
const url = new URL(errorURL);
["apikey", "api_key", "token", "t"].forEach(key => {
if (url.searchParams.has(key)) url.searchParams.set(key, "***")
});
return url.toString();
}
+1 -1
View File
@@ -34,6 +34,6 @@ export function addCookieToJar(url, headers) {
}
for (let i = 0; i < cookies.length; i += 1) {
cookieJar.setCookieSync(cookies[i], url.toString());
cookieJar.setCookieSync(cookies[i], url.toString(), { ignoreError: true });
}
}
+23 -6
View File
@@ -1,5 +1,5 @@
import getServiceWidget from "utils/config/service-helpers";
import { formatApiCall } from "utils/proxy/api-helpers";
import { formatApiCall, sanitizeErrorURL } from "utils/proxy/api-helpers";
import validateWidgetData from "utils/proxy/validate-widget-data";
import { httpProxy } from "utils/proxy/http";
import createLogger from "utils/logger";
@@ -28,18 +28,32 @@ export default async function credentialedProxyHandler(req, res, map) {
headers["X-CMC_PRO_API_KEY"] = `${widget.key}`;
} else if (widget.type === "gotify") {
headers["X-gotify-Key"] = `${widget.key}`;
} else if (widget.type === "authentik") {
headers.Authorization = `Bearer ${widget.key}`;
} else if (widget.type === "truenas") {
headers.Authorization = `Bearer ${widget.key}`;
} else if ([
"authentik",
"cloudflared",
"ghostfolio",
"truenas",
"pterodactyl",
].includes(widget.type))
{
headers.Authorization = `Bearer ${widget.key}`;
} else if (widget.type === "proxmox") {
headers.Authorization = `PVEAPIToken=${widget.username}=${widget.password}`;
} else if (widget.type === "proxmoxbackupserver") {
delete headers["Content-Type"];
headers.Authorization = `PBSAPIToken=${widget.username}:${widget.password}`;
} else if (widget.type === "autobrr") {
headers["X-API-Token"] = `${widget.key}`;
} else if (widget.type === "tubearchivist") {
headers.Authorization = `Token ${widget.key}`;
} else if (widget.type === "miniflux") {
headers["X-Auth-Token"] = `${widget.key}`;
} else if (widget.type === "nextcloud") {
if (widget.key) {
headers["NC-Token"] = `${widget.key}`;
} else {
headers.Authorization = `Basic ${Buffer.from(`${widget.username}:${widget.password}`).toString("base64")}`;
}
} else {
headers["X-API-Key"] = `${widget.key}`;
}
@@ -62,7 +76,10 @@ export default async function credentialedProxyHandler(req, res, map) {
}
if (!validateWidgetData(widget, endpoint, data)) {
return res.status(500).json({error: {message: "Invalid data", url, data}});
if (data.error && data.error.url) {
data.error.url = sanitizeErrorURL(url);
}
return res.status(500).json({error: {message: "Invalid data", url: sanitizeErrorURL(url), data}});
}
if (status === 200 && map) {
+13 -5
View File
@@ -1,5 +1,5 @@
import getServiceWidget from "utils/config/service-helpers";
import { formatApiCall } from "utils/proxy/api-helpers";
import { formatApiCall, sanitizeErrorURL } from "utils/proxy/api-helpers";
import validateWidgetData from "utils/proxy/validate-widget-data";
import { httpProxy } from "utils/proxy/http";
import createLogger from "utils/logger";
@@ -27,15 +27,23 @@ export default async function genericProxyHandler(req, res, map) {
};
}
const [status, contentType, data] = await httpProxy(url, {
const params = {
method: req.method,
headers,
});
}
if (req.body) {
params.body = req.body;
}
const [status, contentType, data] = await httpProxy(url, params);
let resultData = data;
if (!validateWidgetData(widget, endpoint, resultData)) {
return res.status(status).json({error: {message: "Invalid data", url, data: resultData}});
if (resultData.error && resultData.error.url) {
resultData.error.url = sanitizeErrorURL(url);
}
return res.status(status).json({error: {message: "Invalid data", url: sanitizeErrorURL(url), data: resultData}});
}
if (status === 200 && map) {
@@ -50,7 +58,7 @@ export default async function genericProxyHandler(req, res, map) {
if (status >= 400) {
logger.debug("HTTP Error %d calling %s//%s%s...", status, url.protocol, url.hostname, url.pathname);
return res.status(status).json({error: {message: "HTTP Error", url, data}});
return res.status(status).json({error: {message: "HTTP Error", url: sanitizeErrorURL(url), data}});
}
return res.status(status).send(resultData);
+176
View File
@@ -0,0 +1,176 @@
import cache from "memory-cache";
import getServiceWidget from "utils/config/service-helpers";
import { asJson, formatApiCall } from "utils/proxy/api-helpers";
import { httpProxy } from "utils/proxy/http";
import createLogger from "utils/logger";
import widgets from "widgets/widgets";
const INFO_ENDPOINT = "{url}/webapi/query.cgi?api=SYNO.API.Info&version=1&method=query";
const AUTH_ENDPOINT = "{url}/webapi/{path}?api=SYNO.API.Auth&version={maxVersion}&method=login&account={username}&passwd={password}&session=DownloadStation&format=cookie";
const AUTH_API_NAME = "SYNO.API.Auth";
const proxyName = "synologyProxyHandler";
const logger = createLogger(proxyName);
async function login(loginUrl) {
const [status, contentType, data] = await httpProxy(loginUrl);
if (status !== 200) {
return [status, contentType, data];
}
const json = asJson(data);
if (json?.success !== true) {
// from page 16: https://global.download.synology.com/download/Document/Software/DeveloperGuide/Os/DSM/All/enu/DSM_Login_Web_API_Guide_enu.pdf
/*
Code Description
400 No such account or incorrect password
401 Account disabled
402 Permission denied
403 2-step verification code required
404 Failed to authenticate 2-step verification code
*/
let message = "Authentication failed.";
if (json?.error?.code >= 403) message += " 2FA enabled.";
logger.warn("Unable to login. Code: %d", json?.error?.code);
return [401, "application/json", JSON.stringify({ code: json?.error?.code, message })];
}
return [status, contentType, data];
}
async function getApiInfo(serviceWidget, apiName, serviceName) {
const cacheKey = `${proxyName}__${apiName}__${serviceName}`
let { cgiPath, maxVersion } = cache.get(cacheKey) ?? {};
if (cgiPath && maxVersion) {
return [cgiPath, maxVersion];
}
const infoUrl = formatApiCall(INFO_ENDPOINT, serviceWidget);
// eslint-disable-next-line no-unused-vars
const [status, contentType, data] = await httpProxy(infoUrl);
if (status === 200) {
try {
const json = asJson(data);
if (json?.data?.[apiName]) {
cgiPath = json.data[apiName].path;
maxVersion = json.data[apiName].maxVersion;
logger.debug(`Detected ${serviceWidget.type}: apiName '${apiName}', cgiPath '${cgiPath}', and maxVersion ${maxVersion}`);
cache.put(cacheKey, { cgiPath, maxVersion });
return [cgiPath, maxVersion];
}
}
catch {
logger.warn(`Error ${status} obtaining ${apiName} info`);
}
}
return [null, null];
}
async function handleUnsuccessfulResponse(serviceWidget, url, serviceName) {
logger.debug(`Attempting login to ${serviceWidget.type}`);
// eslint-disable-next-line no-unused-vars
const [apiPath, maxVersion] = await getApiInfo(serviceWidget, AUTH_API_NAME, serviceName);
const authArgs = { path: apiPath ?? "entry.cgi", maxVersion: maxVersion ?? 7, ...serviceWidget };
const loginUrl = formatApiCall(AUTH_ENDPOINT, authArgs);
const [status, contentType, data] = await login(loginUrl);
if (status !== 200) {
return [status, contentType, data];
}
return httpProxy(url);
}
function toError(url, synologyError) {
// commeon codes (100 => 199) from:
// https://global.download.synology.com/download/Document/Software/DeveloperGuide/Os/DSM/All/enu/DSM_Login_Web_API_Guide_enu.pdf
const code = synologyError.error?.code ?? synologyError.error ?? synologyError.code ?? 100;
const error = { code };
switch (code) {
case 102:
error.error = "The requested API does not exist.";
break;
case 103:
error.error = "The requested method does not exist.";
break;
case 104:
error.error = "The requested version does not support the functionality.";
break;
case 105:
error.error = "The logged in session does not have permission.";
break;
case 106:
error.error = "Session timeout.";
break;
case 107:
error.error = "Session interrupted by duplicated login.";
break;
case 119:
error.error = "Invalid session or SID not found.";
break;
default:
error.error = synologyError.message ?? "Unknown error.";
break;
}
logger.warn(`Unable to call ${url}. code: ${code}, error: ${error.error}.`)
return error;
}
export default async function synologyProxyHandler(req, res) {
const { group, service, endpoint } = req.query;
if (!group || !service) {
return res.status(400).json({ error: "Invalid proxy service type" });
}
const serviceWidget = await getServiceWidget(group, service);
const widget = widgets?.[serviceWidget.type];
const mapping = widget?.mappings?.[endpoint];
if (!widget.api || !mapping) {
return res.status(403).json({ error: "Service does not support API calls" });
}
const [cgiPath, maxVersion] = await getApiInfo(serviceWidget, mapping.apiName, service);
if (!cgiPath || !maxVersion) {
return res.status(400).json({ error: `Unrecognized API name: ${mapping.apiName}`})
}
const url = formatApiCall(widget.api, {
apiName: mapping.apiName,
apiMethod: mapping.apiMethod,
cgiPath,
maxVersion,
...serviceWidget
});
let [status, contentType, data] = await httpProxy(url);
if (status !== 200) {
logger.debug("Error %d calling url %s", status, url);
return res.status(status, data);
}
let json = asJson(data);
if (json?.success !== true) {
logger.debug(`Attempting login to ${serviceWidget.type}`);
[status, contentType, data] = await handleUnsuccessfulResponse(serviceWidget, url, service);
json = asJson(data);
}
if (json.success !== true) {
data = toError(url, json);
status = 500;
}
if (contentType) res.setHeader("Content-Type", contentType);
return res.status(status).send(data);
}
+46
View File
@@ -0,0 +1,46 @@
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: librariesData, error: librariesError } = useWidgetAPI(widget, "libraries");
if (librariesError) {
return <Container error={librariesError} />;
}
if (!librariesData) {
return (
<Container service={service}>
<Block label="audiobookshelf.podcasts" />
<Block label="audiobookshelf.podcastsDuration" />
<Block label="audiobookshelf.books" />
<Block label="audiobookshelf.booksDuration" />
</Container>
);
}
const podcastLibraries = librariesData.filter(l => l.mediaType === "podcast");
const bookLibraries = librariesData.filter(l => l.mediaType === "book");
const totalPodcasts = podcastLibraries.reduce((total, pL) => parseInt(pL.stats?.totalItems, 10) + total, 0);
const totalBooks = bookLibraries.reduce((total, bL) => parseInt(bL.stats?.totalItems, 10) + total, 0);
const totalPodcastsDuration = podcastLibraries.reduce((total, pL) => parseFloat(pL.stats?.totalDuration) + total, 0);
const totalBooksDuration = bookLibraries.reduce((total, bL) => parseFloat(bL.stats?.totalDuration) + total, 0);
return (
<Container service={service}>
<Block label="audiobookshelf.podcasts" value={t("common.number", { value: totalPodcasts })} />
<Block label="audiobookshelf.podcastsDuration" value={t("common.number", { value: totalPodcastsDuration / 60, maximumFractionDigits: 0, style: "unit", unit: "minute" })} />
<Block label="audiobookshelf.books" value={t("common.number", { value: totalBooks })} />
<Block label="audiobookshelf.booksDuration" value={t("common.number", { value: totalBooksDuration / 60, maximumFractionDigits: 0, style: "unit", unit: "minute" })} />
</Container>
);
}
+64
View File
@@ -0,0 +1,64 @@
import { httpProxy } from "utils/proxy/http";
import { formatApiCall } from "utils/proxy/api-helpers";
import getServiceWidget from "utils/config/service-helpers";
import createLogger from "utils/logger";
import widgets from "widgets/widgets";
const proxyName = "audiobookshelfProxyHandler";
const logger = createLogger(proxyName);
async function retrieveFromAPI(url, key) {
const headers = {
"content-type": "application/json",
"Authorization": `Bearer ${key}`
};
const [status, , data] = await httpProxy(url, { headers });
if (status !== 200) {
throw new Error(`Error getting data from Audiobookshelf: ${status}. Data: ${data.toString()}`);
}
return JSON.parse(Buffer.from(data).toString());
}
export default async function audiobookshelfProxyHandler(req, res) {
const { group, service, endpoint } = req.query;
if (!group || !service) {
logger.debug("Invalid or missing service '%s' or group '%s'", service, group);
return res.status(400).json({ error: "Invalid proxy service type" });
}
const widget = await getServiceWidget(group, service);
if (!widget) {
logger.debug("Invalid or missing widget for service '%s' in group '%s'", service, group);
return res.status(400).json({ error: "Invalid proxy service type" });
}
if (!widget.key) {
logger.debug("Invalid or missing key for service '%s' in group '%s'", service, group);
return res.status(400).json({ error: "Missing widget key" });
}
const apiURL = widgets[widget.type].api;
try {
const url = new URL(formatApiCall(apiURL, { endpoint, ...widget }));
const libraryData = await retrieveFromAPI(url, widget.key);
const libraryStats = await Promise.all(libraryData.libraries.map(async l => {
const stats = await retrieveFromAPI(new URL(formatApiCall(apiURL, { endpoint: `libraries/${l.id}/stats`, ...widget })), widget.key);
return {
...l,
stats
};
}));
return res.status(200).send(libraryStats);
} catch (e) {
logger.error(e.message);
return res.status(500).send({error: {message: e.message}});
}
}
+14
View File
@@ -0,0 +1,14 @@
import audiobookshelfProxyHandler from "./proxy";
const widget = {
api: "{url}/api/{endpoint}",
proxyHandler: audiobookshelfProxyHandler,
mappings: {
libraries: {
endpoint: "libraries",
},
},
};
export default widget;
+31
View File
@@ -0,0 +1,31 @@
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 { widget } = service;
const { data: statsData, error: statsError } = useWidgetAPI(widget, "cfd_tunnel");
if (statsError) {
return <Container error={statsError} />;
}
if (!statsData) {
return (
<Container service={service}>
<Block label="cloudflared.status" />
<Block label="cloudflared.origin_ip" />
</Container>
);
}
const originIP = statsData.result.connections?.origin_ip ?? statsData.result.connections[0]?.origin_ip;
return (
<Container service={service}>
<Block label="cloudflared.status" value={statsData.result.status.charAt(0).toUpperCase() + statsData.result.status.slice(1)} />
<Block label="cloudflared.origin_ip" value={originIP} />
</Container>
);
}
+18
View File
@@ -0,0 +1,18 @@
import credentialedProxyHandler from "utils/proxy/handlers/credentialed";
const widget = {
api: "https://api.cloudflare.com/client/v4/accounts/{accountid}/{endpoint}/{tunnelid}",
proxyHandler: credentialedProxyHandler,
mappings: {
"cfd_tunnel": {
endpoint: "cfd_tunnel",
validate: [
"success",
"result"
]
},
},
};
export default widget;
+20 -1
View File
@@ -2,45 +2,62 @@ import dynamic from "next/dynamic";
const components = {
adguard: dynamic(() => import("./adguard/component")),
audiobookshelf: dynamic(() => import("./audiobookshelf/component")),
authentik: dynamic(() => import("./authentik/component")),
autobrr: dynamic(() => import("./autobrr/component")),
bazarr: dynamic(() => import("./bazarr/component")),
changedetectionio: dynamic(() => import("./changedetectionio/component")),
cloudflared: dynamic(() => import("./cloudflared/component")),
coinmarketcap: dynamic(() => import("./coinmarketcap/component")),
deluge: dynamic(() => import("./deluge/component")),
diskstation: dynamic(() => import("./diskstation/component")),
downloadstation: dynamic(() => import("./downloadstation/component")),
docker: dynamic(() => import("./docker/component")),
kubernetes: dynamic(() => import("./kubernetes/component")),
emby: dynamic(() => import("./emby/component")),
fileflows: dynamic(() => import("./fileflows/component")),
flood: dynamic(() => import("./flood/component")),
ghostfolio: dynamic(() => import("./ghostfolio/component")),
gluetun: dynamic(() => import("./gluetun/component")),
gotify: dynamic(() => import("./gotify/component")),
grafana: dynamic(() => import("./grafana/component")),
hdhomerun: dynamic(() => import("./hdhomerun/component")),
homebridge: dynamic(() => import("./homebridge/component")),
healthchecks: dynamic(() => import("./healthchecks/component")),
immich: dynamic(() => import("./immich/component")),
jackett: dynamic(() => import("./jackett/component")),
jellyfin: dynamic(() => import("./emby/component")),
jellyseerr: dynamic(() => import("./jellyseerr/component")),
komga: dynamic(() => import("./komga/component")),
kopia: dynamic(() => import("./kopia/component")),
lidarr: dynamic(() => import("./lidarr/component")),
mastodon: dynamic(() => import("./mastodon/component")),
medusa: dynamic(() => import("./medusa/component")),
minecraft: dynamic(() => import("./minecraft/component")),
miniflux: dynamic(() => import("./miniflux/component")),
mikrotik: dynamic(() => import("./mikrotik/component")),
moonraker: dynamic(() => import("./moonraker/component")),
mylar: dynamic(() => import("./mylar/component")),
navidrome: dynamic(() => import("./navidrome/component")),
nextcloud: dynamic(() => import("./nextcloud/component")),
nextdns: dynamic(() => import("./nextdns/component")),
npm: dynamic(() => import("./npm/component")),
nzbget: dynamic(() => import("./nzbget/component")),
octoPrint: dynamic(() => import("./octoPrint/component")),
octoprint: dynamic(() => import("./octoprint/component")),
omada: dynamic(() => import("./omada/component")),
ombi: dynamic(() => import("./ombi/component")),
opnsense: dynamic(() => import("./opnsense/component")),
overseerr: dynamic(() => import("./overseerr/component")),
paperlessngx: dynamic(() => import("./paperlessngx/component")),
photoprism: dynamic(() => import("./photoprism/component")),
proxmoxbackupserver: dynamic(() => import("./proxmoxbackupserver/component")),
pihole: dynamic(() => import("./pihole/component")),
plex: dynamic(() => import("./plex/component")),
portainer: dynamic(() => import("./portainer/component")),
prometheus: dynamic(() => import("./prometheus/component")),
prowlarr: dynamic(() => import("./prowlarr/component")),
proxmox: dynamic(() => import("./proxmox/component")),
pterodactyl: dynamic(() => import("./pterodactyl/component")),
pyload: dynamic(() => import("./pyload/component")),
qbittorrent: dynamic(() => import("./qbittorrent/component")),
radarr: dynamic(() => import("./radarr/component")),
@@ -58,6 +75,8 @@ const components = {
tubearchivist: dynamic(() => import("./tubearchivist/component")),
truenas: dynamic(() => import("./truenas/component")),
unifi: dynamic(() => import("./unifi/component")),
unmanic: dynamic(() => import("./unmanic/component")),
uptimekuma: dynamic(() => import("./uptimekuma/component")),
watchtower: dynamic(() => import("./watchtower/component")),
xteve: dynamic(() => import("./xteve/component")),
};
+2 -2
View File
@@ -44,9 +44,9 @@ export default function Component({ service }) {
return (
<Container service={service}>
<Block label="deluge.leech" value={t("common.number", { value: leech })} />
<Block label="deluge.download" value={t("common.bitrate", { value: rateDl })} />
<Block label="deluge.download" value={t("common.byterate", { value: rateDl })} />
<Block label="deluge.seed" value={t("common.number", { value: completed })} />
<Block label="deluge.upload" value={t("common.bitrate", { value: rateUl })} />
<Block label="deluge.upload" value={t("common.byterate", { value: rateUl })} />
</Container>
);
}
+54
View File
@@ -0,0 +1,54 @@
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: infoData, error: infoError } = useWidgetAPI(widget, "system_info");
const { data: storageData, error: storageError } = useWidgetAPI(widget, "system_storage");
const { data: utilizationData, error: utilizationError } = useWidgetAPI(widget, "utilization");
if (storageError || infoError || utilizationError) {
return <Container error={ storageError ?? infoError ?? utilizationError } />;
}
if (!storageData || !infoData || !utilizationData) {
return (
<Container service={service}>
<Block label="diskstation.uptime" />
<Block label="diskstation.volumeAvailable" />
<Block label="resources.cpu" />
<Block label="resources.mem" />
</Container>
);
}
// uptime info
// eslint-disable-next-line no-unused-vars
const [hour, minutes, seconds] = infoData.data.up_time.split(":");
const days = Math.floor(hour / 24);
const uptime = `${ t("common.number", { value: days }) } ${ t("diskstation.days") }`;
// storage info
const volume = widget.volume ? storageData.data.vol_info?.find(vol => vol.name === widget.volume) : storageData.data.vol_info?.[0];
const usedBytes = parseFloat(volume?.used_size);
const totalBytes = parseFloat(volume?.total_size);
const freeBytes = totalBytes - usedBytes;
// utilization info
const { cpu, memory } = utilizationData.data;
const cpuLoad = parseFloat(cpu.user_load) + parseFloat(cpu.system_load);
const memoryUsage = 100 - ((100 * (parseFloat(memory.avail_real) + parseFloat(memory.cached))) / parseFloat(memory.total_real));
return (
<Container service={service}>
<Block label="diskstation.uptime" value={ uptime } />
<Block label="diskstation.volumeAvailable" value={ t("common.bbytes", { value: freeBytes, maximumFractionDigits: 1 }) } />
<Block label="resources.cpu" value={ t("common.percent", { value: cpuLoad }) } />
<Block label="resources.mem" value={ t("common.percent", { value: memoryUsage }) } />
</Container>
);
}
+27
View File
@@ -0,0 +1,27 @@
import synologyProxyHandler from '../../utils/proxy/handlers/synology'
const widget = {
// cgiPath and maxVersion are discovered at runtime, don't supply
api: "{url}/webapi/{cgiPath}?api={apiName}&version={maxVersion}&method={apiMethod}",
proxyHandler: synologyProxyHandler,
mappings: {
"system_storage": {
apiName: "SYNO.Core.System",
apiMethod: "info&type=\"storage\"",
endpoint: "system_storage"
},
"system_info": {
apiName: "SYNO.Core.System",
apiMethod: "info",
endpoint: "system_info"
},
"utilization": {
apiName: "SYNO.Core.System.Utilization",
apiMethod: "get",
endpoint: "utilization"
}
},
};
export default widget;
+3 -3
View File
@@ -1,7 +1,7 @@
import useSWR from "swr";
import { useTranslation } from "next-i18next";
import calculateCPUPercent from "./stats-helpers";
import { calculateCPUPercent, calculateUsedMemory } from "./stats-helpers";
import Container from "components/services/widget/container";
import Block from "components/services/widget/block";
@@ -22,7 +22,7 @@ export default function Component({ service }) {
return <Container error={finalError} />;
}
if (statusData && statusData.status !== "running") {
if (statusData && !(statusData.status.includes("running") || statusData.status.includes("partial"))) {
return (
<Container>
<Block label={t("widget.status")} value={t("docker.offline")} />
@@ -47,7 +47,7 @@ export default function Component({ service }) {
<Container service={service}>
<Block label="docker.cpu" value={t("common.percent", { value: calculateCPUPercent(statsData.stats) })} />
{statsData.stats.memory_stats.usage &&
<Block label="docker.mem" value={t("common.bytes", { value: statsData.stats.memory_stats.usage })} />
<Block label="docker.mem" value={t("common.bytes", { value: calculateUsedMemory(statsData.stats) })} />
}
{network && (
<>
+5 -1
View File
@@ -1,4 +1,4 @@
export default function calculateCPUPercent(stats) {
export function calculateCPUPercent(stats) {
let cpuPercent = 0.0;
const cpuDelta = stats.cpu_stats.cpu_usage.total_usage - stats.precpu_stats.cpu_usage.total_usage;
const systemDelta = stats.cpu_stats.system_cpu_usage - stats.precpu_stats.system_cpu_usage;
@@ -9,3 +9,7 @@ export default function calculateCPUPercent(stats) {
return Math.round(cpuPercent * 10) / 10;
}
export function calculateUsedMemory(stats) {
return stats.memory_stats.usage - (stats.memory_stats.stats.cache ?? 0)
}
-88
View File
@@ -1,88 +0,0 @@
import { formatApiCall } from "utils/proxy/api-helpers";
import { httpProxy } from "utils/proxy/http";
import createLogger from "utils/logger";
import widgets from "widgets/widgets";
import getServiceWidget from "utils/config/service-helpers";
const logger = createLogger("downloadstationProxyHandler");
async function login(loginUrl) {
const [status, contentType, data] = await httpProxy(loginUrl);
if (status !== 200) {
return [status, contentType, data];
}
const json = JSON.parse(data.toString());
if (json?.success !== true) {
// from https://global.download.synology.com/download/Document/Software/DeveloperGuide/Package/DownloadStation/All/enu/Synology_Download_Station_Web_API.pdf
/*
Code Description
400 No such account or incorrect password
401 Account disabled
402 Permission denied
403 2-step verification code required
404 Failed to authenticate 2-step verification code
*/
let message = "Authentication failed.";
if (json?.error?.code >= 403) message += " 2FA enabled.";
logger.warn("Unable to login. Code: %d", json?.error?.code);
return [401, "application/json", JSON.stringify({ code: json?.error?.code, message })];
}
return [status, contentType, data];
}
export default async function downloadstationProxyHandler(req, res) {
const { group, service, endpoint } = req.query;
if (!group || !service) {
return res.status(400).json({ error: "Invalid proxy service type" });
}
const widget = await getServiceWidget(group, service);
const api = widgets?.[widget.type]?.api;
if (!api) {
return res.status(403).json({ error: "Service does not support API calls" });
}
const url = formatApiCall(api, { endpoint, ...widget });
let [status, contentType, data] = await httpProxy(url);
if (status !== 200) {
logger.debug("Error %d calling endpoint %s", status, url);
return res.status(status, data);
}
const json = JSON.parse(data.toString());
if (json?.success !== true) {
logger.debug("Attempting login to DownloadStation");
const apiInfoUrl = formatApiCall("{url}/webapi/query.cgi?api=SYNO.API.Info&version=1&method=query", widget);
let path = "entry.cgi";
let maxVersion = 7;
[status, contentType, data] = await httpProxy(apiInfoUrl);
if (status === 200) {
try {
const apiAuthInfo = JSON.parse(data.toString()).data['SYNO.API.Auth'];
if (apiAuthInfo) {
path = apiAuthInfo.path;
maxVersion = apiAuthInfo.maxVersion;
logger.debug(`Deteceted Downloadstation auth API path: ${path} and maxVersion: ${maxVersion}`);
}
} catch {
logger.debug(`Error ${status} obtaining DownloadStation API info`);
}
}
const authApi = `{url}/webapi/${path}?api=SYNO.API.Auth&version=${maxVersion}&method=login&account={username}&passwd={password}&session=DownloadStation&format=cookie`
const loginUrl = formatApiCall(authApi, widget);
[status, contentType, data] = await login(loginUrl);
if (status !== 200) {
return res.status(status).end(data)
}
[status, contentType, data] = await httpProxy(url);
}
if (contentType) res.setHeader("Content-Type", contentType);
return res.status(status).send(data);
}
+7 -4
View File
@@ -1,12 +1,15 @@
import downloadstationProxyHandler from "./proxy";
import synologyProxyHandler from '../../utils/proxy/handlers/synology'
const widget = {
api: "{url}/webapi/DownloadStation/task.cgi?api=SYNO.DownloadStation.Task&version=1&method={endpoint}",
proxyHandler: downloadstationProxyHandler,
// cgiPath and maxVersion are discovered at runtime, don't supply
api: "{url}/webapi/{cgiPath}?api={apiName}&version={maxVersion}&method={apiMethod}",
proxyHandler: synologyProxyHandler,
mappings: {
"list": {
endpoint: "list&additional=transfer",
apiName: "SYNO.DownloadStation.Task",
apiMethod: "list&additional=transfer",
endpoint: "list"
},
},
};
+103 -45
View File
@@ -2,6 +2,7 @@ import { useTranslation } from "next-i18next";
import { BsVolumeMuteFill, BsFillPlayFill, BsPauseFill, BsCpu, BsFillCpuFill } from "react-icons/bs";
import { MdOutlineSmartDisplay } from "react-icons/md";
import Block from "components/services/widget/block";
import Container from "components/services/widget/container";
import { formatProxyUrlWithSegments } from "utils/proxy/api-helpers";
import useWidgetAPI from "utils/proxy/use-widget-api";
@@ -148,6 +149,33 @@ function SessionEntry({ playCommand, session }) {
);
}
function CountBlocks({ service, countData }) {
const { t } = useTranslation();
// allows filtering
// eslint-disable-next-line no-param-reassign
if (service.widget?.type === 'jellyfin') service.widget.type = 'emby'
if (!countData) {
return (
<Container service={service}>
<Block label="emby.movies" />
<Block label="emby.series" />
<Block label="emby.episodes" />
<Block label="emby.songs" />
</Container>
)
}
return (
<Container service={service}>
<Block label="emby.movies" value={t("common.number", { value: countData.MovieCount })} />
<Block label="emby.series" value={t("common.number", { value: countData.SeriesCount })} />
<Block label="emby.episodes" value={t("common.number", { value: countData.EpisodeCount })} />
<Block label="emby.songs" value={t("common.number", { value: countData.SongCount })} />
</Container>
)
}
export default function Component({ service }) {
const { t } = useTranslation();
@@ -161,6 +189,12 @@ export default function Component({ service }) {
refreshInterval: 5000,
});
const {
data: countData,
error: countError,
} = useWidgetAPI(widget, "Count", {
refreshInterval: 60000,});
async function handlePlayCommand(session, command) {
const url = formatProxyUrlWithSegments(widget, "PlayControl", {
sessionId: session.Id,
@@ -171,69 +205,93 @@ export default function Component({ service }) {
});
}
if (sessionsError) {
return <Container error={sessionsError} />;
if (sessionsError || countError) {
return <Container error={sessionsError ?? countError} />;
}
if (!sessionsData) {
const enableBlocks = service.widget?.enableBlocks
const enableNowPlaying = service.widget?.enableNowPlaying ?? true
if (!sessionsData || !countData) {
return (
<div className="flex flex-col pb-1">
<>
{enableBlocks && <CountBlocks service={service} countData={null} />}
{enableNowPlaying && <div className="flex flex-col pb-1">
<div className="text-theme-700 dark:text-theme-200 text-xs relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1">
<span className="absolute left-2 text-xs mt-[2px]">-</span>
</div>
<div className="text-theme-700 dark:text-theme-200 text-xs relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1">
<span className="absolute left-2 text-xs mt-[2px]">-</span>
</div>
</div>
</div>}
</>
);
}
const playing = sessionsData
.filter((session) => session?.NowPlayingItem)
.sort((a, b) => {
if (a.PlayState.PositionTicks > b.PlayState.PositionTicks) {
return 1;
}
if (a.PlayState.PositionTicks < b.PlayState.PositionTicks) {
return -1;
}
return 0;
});
if (playing.length === 0) {
if (enableNowPlaying) {
const playing = sessionsData
.filter((session) => session?.NowPlayingItem)
.sort((a, b) => {
if (a.PlayState.PositionTicks > b.PlayState.PositionTicks) {
return 1;
}
if (a.PlayState.PositionTicks < b.PlayState.PositionTicks) {
return -1;
}
return 0;
});
if (playing.length === 0) {
return (
<>
{enableBlocks && <CountBlocks service={service} countData={countData} />}
<div className="flex flex-col pb-1 mx-1">
<div className="text-theme-700 dark:text-theme-200 text-xs relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1">
<span className="absolute left-2 text-xs mt-[2px]">{t("emby.no_active")}</span>
</div>
<div className="text-theme-700 dark:text-theme-200 text-xs relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1">
<span className="absolute left-2 text-xs mt-[2px]">-</span>
</div>
</div>
</>
);
}
if (playing.length === 1) {
const session = playing[0];
return (
<>
{enableBlocks && <CountBlocks service={service} countData={countData} />}
<div className="flex flex-col pb-1 mx-1">
<SingleSessionEntry
playCommand={(currentSession, command) => handlePlayCommand(currentSession, command)}
session={session}
/>
</div>
</>
);
}
if (playing.length > 0)
return (
<>
{enableBlocks && <CountBlocks service={service} countData={countData} />}
<div className="flex flex-col pb-1 mx-1">
<div className="text-theme-700 dark:text-theme-200 text-xs relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1">
<span className="absolute left-2 text-xs mt-[2px]">{t("emby.no_active")}</span>
</div>
<div className="text-theme-700 dark:text-theme-200 text-xs relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1">
<span className="absolute left-2 text-xs mt-[2px]">-</span>
</div>
{playing.map((session) => (
<SessionEntry
key={session.Id}
playCommand={(currentSession, command) => handlePlayCommand(currentSession, command)}
session={session}
/>
))}
</div>
</>
);
}
if (playing.length === 1) {
const session = playing[0];
if (enableBlocks) {
return (
<div className="flex flex-col pb-1 mx-1">
<SingleSessionEntry
playCommand={(currentSession, command) => handlePlayCommand(currentSession, command)}
session={session}
/>
</div>
);
<CountBlocks service={service} countData={countData} />
)
}
return (
<div className="flex flex-col pb-1 mx-1">
{playing.map((session) => (
<SessionEntry
key={session.Id}
playCommand={(currentSession, command) => handlePlayCommand(currentSession, command)}
session={session}
/>
))}
</div>
);
}
+9
View File
@@ -8,6 +8,15 @@ const widget = {
Sessions: {
endpoint: "Sessions",
},
Count: {
endpoint: "Items/Counts",
segments: [
"MovieCount",
"SeriesCount",
"EpisodeCount",
"SongCount"
]
},
PlayControl: {
method: "POST",
endpoint: "Sessions/{sessionId}/Playing/{command}",
+37
View File
@@ -0,0 +1,37 @@
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: fileflowsData, error: fileflowsError } = useWidgetAPI(widget, "status");
if (fileflowsError) {
return <Container error={fileflowsError} />;
}
if (!fileflowsData) {
return (
<Container service={service}>
<Block label="fileflows.queue" />
<Block label="fileflows.processing" />
<Block label="fileflows.processed" />
<Block label="fileflows.time" />
</Container>
);
}
return (
<Container service={service}>
<Block label="fileflows.queue" value={t("common.number", { value: fileflowsData.queue })} />
<Block label="fileflows.processing" value={t("common.number", { value: fileflowsData.processing })} />
<Block label="fileflows.processed" value={t("common.number", { value: fileflowsData.processed })} />
<Block label="fileflows.time" value={fileflowsData.time?.length ? fileflowsData.time : "0:00"} />
</Container>
);
}
+14
View File
@@ -0,0 +1,14 @@
import genericProxyHandler from "utils/proxy/handlers/generic";
const widget = {
api: "{url}/api/{endpoint}",
proxyHandler: genericProxyHandler,
mappings: {
"status": {
endpoint: "status",
},
},
};
export default widget;
+2 -2
View File
@@ -45,9 +45,9 @@ export default function Component({ service }) {
return (
<Container service={service}>
<Block label="flood.leech" value={t("common.number", { value: leech })} />
<Block label="flood.download" value={t("common.bitrate", { value: rateDl })} />
<Block label="flood.download" value={t("common.byterate", { value: rateDl })} />
<Block label="flood.seed" value={t("common.number", { value: completed })} />
<Block label="flood.upload" value={t("common.bitrate", { value: rateUl })} />
<Block label="flood.upload" value={t("common.byterate", { value: rateUl })} />
</Container>
);
}
+41
View File
@@ -0,0 +1,41 @@
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";
function getPerformancePercent(t, performanceRange) {
return `${(performanceRange.performance.currentGrossPerformancePercent > 0 ? "+" : "")}${t("common.percent", { value: performanceRange.performance.currentGrossPerformancePercent * 100, maximumFractionDigits: 2 })}`
}
export default function Component({ service }) {
const { t } = useTranslation();
const { widget } = service;
const { data: performanceToday, error: ghostfolioErrorToday } = useWidgetAPI(widget, "today");
const { data: performanceYear, error: ghostfolioErrorYear } = useWidgetAPI(widget, "year");
const { data: performanceMax, error: ghostfolioErrorMax } = useWidgetAPI(widget, "max");
if (ghostfolioErrorToday || ghostfolioErrorYear || ghostfolioErrorMax) {
const finalError = ghostfolioErrorToday ?? ghostfolioErrorYear ?? ghostfolioErrorMax
return <Container error={finalError} />;
}
if (!performanceToday || !performanceYear || !performanceMax) {
return (
<Container service={service}>
<Block label="ghostfolio.gross_percent_today" />
<Block label="ghostfolio.gross_percent_1y" />
<Block label="ghostfolio.gross_percent_max" />
</Container>
);
}
return (
<Container service={service}>
<Block label="ghostfolio.gross_percent_today" value={getPerformancePercent(t, performanceToday)} />
<Block label="ghostfolio.gross_percent_1y" value={getPerformancePercent(t, performanceYear)} />
<Block label="ghostfolio.gross_percent_max" value={getPerformancePercent(t, performanceMax)} />
</Container>
);
}
+20
View File
@@ -0,0 +1,20 @@
import credentialedProxyHandler from "utils/proxy/handlers/credentialed";
const widget = {
api: "{url}/api/v2/portfolio/performance?range={endpoint}",
proxyHandler: credentialedProxyHandler,
mappings: {
today: {
endpoint: "1d"
},
year: {
endpoint: "1y"
},
max: {
endpoint: "max"
},
},
};
export default widget;
+37
View File
@@ -0,0 +1,37 @@
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: alertsData, error: alertsError } = useWidgetAPI(widget, "alerts");
if (statsError || alertsError) {
return <Container error={statsError ?? alertsError} />;
}
if (!statsData || !alertsData) {
return (
<Container service={service}>
<Block label="grafana.dashboards" />
<Block label="grafana.datasources" />
<Block label="grafana.totalalerts" />
<Block label="grafana.alertstriggered" />
</Container>
);
}
return (
<Container service={service}>
<Block label="grafana.dashboards" value={t("common.number", { value: statsData.dashboards })} />
<Block label="grafana.datasources" value={t("common.number", { value: statsData.datasources })} />
<Block label="grafana.totalalerts" value={t("common.number", { value: statsData.alerts })} />
<Block label="grafana.alertstriggered" value={t("common.number", { value: alertsData.filter(a => a.state === "alerting").length })} />
</Container>
);
}
+20
View File
@@ -0,0 +1,20 @@
import genericProxyHandler from "utils/proxy/handlers/generic";
const widget = {
api: "{url}/api/{endpoint}",
proxyHandler: genericProxyHandler,
mappings: {
alerts: {
endpoint: "alerts",
},
stats: {
endpoint: "admin/stats",
validate: [
"dashboards"
]
},
},
};
export default widget;
Loaded 100 of 144 files, more files were not shown because too many files have changed in this diff. Show more