diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 00000000..3e283d69 --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1,3 @@ +github: benphelps +ko_fi: benphelps +custom: ["https://paypal.me/phelpsben"] diff --git a/.gitignore b/.gitignore index 32e06969..7ab221f9 100644 --- a/.gitignore +++ b/.gitignore @@ -19,6 +19,10 @@ .DS_Store *.pem +# log files +error.log +homepage.log + # debug npm-debug.log* yarn-debug.log* diff --git a/README.md b/README.md index ed7c5e6f..d7f7f08a 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,15 @@  -[](https://github.com/benphelps/homepage/actions/workflows/docker-publish.yml) -[](https://hosted.weblate.org/engage/homepage/) +
+ + + ## Features @@ -18,9 +26,9 @@ - Service Integration - Sonarr, Radarr, Readarr, Prowlarr, Bazarr, Lidarr, Emby, Jellyfin, Tautulli (Plex) - Ombi, Overseerr, Jellyseerr, Jackett, NZBGet, SABnzbd, ruTorrent, Transmission, qBittorrent - - Portainer, Traefik, Speedtest Tracker, PiHole, AdGuard Home, Nginx Proxy Manager, Gotify + - Portainer, Traefik, Speedtest Tracker, PiHole, AdGuard Home, Nginx Proxy Manager, Gotify, Syncthing Relay Server - Information Providers - - Coin Market Cap + - Coin Market Cap, Mastodon - Information & Utility Widgets - System Stats (Disk, CPU, Memory) - Weather via WeatherAPI.com or OpenWeatherMap @@ -123,9 +131,10 @@ Huge thanks to the all the contributors who have helped make this project what i - [andrii-kryvoviaz](https://github.com/benphelps/homepage/commits?author=andrii-kryvoviaz) - Background opacity option - [boerniee](https://github.com/benphelps/homepage/commits?author=boerniee) - German Translation - [comradekingu](https://github.com/benphelps/homepage/commits?author=comradekingu) - Norwegian Bokmål Translation -- [Daniel Varga] - German & Hungarian Translation +- Daniel Varga - German & Hungarian Translation - [deffcolony](https://github.com/benphelps/homepage/commits?author=deffcolony) - Dutch Translation - [desolaris](https://github.com/benphelps/homepage/commits?author=desolaris) - Russian Translation +- [DevPGSV](https://github.com/benphelps/homepage/commits?author=DevPGSV) - Syncthing Relay Server & Mastodon widgets - [ilusi0n](https://github.com/benphelps/homepage/commits?author=ilusi0n) - Jellyseerr Integration - [ItsJustMeChris](https://github.com/benphelps/homepage/commits?author=ItsJustMeChris) - Coin Market Cap Widget - [jackblk](https://github.com/benphelps/homepage/commits?author=jackblk) - Vietnamese Translation diff --git a/package.json b/package.json index dd9f7f87..cf9c4131 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,9 @@ "rutorrent-promise": "^2.0.0", "shvl": "^3.0.0", "swr": "^1.3.0", - "tough-cookie": "^4.1.2" + "tailwind-scrollbar": "^2.0.1", + "tough-cookie": "^4.1.2", + "winston": "^3.8.2" }, "devDependencies": { "autoprefixer": "^10.4.9", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 19309218..e2625a90 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -35,9 +35,11 @@ specifiers: rutorrent-promise: ^2.0.0 shvl: ^3.0.0 swr: ^1.3.0 + tailwind-scrollbar: ^2.0.1 tailwindcss: ^3.1.8 tough-cookie: ^4.1.2 typescript: ^4.8.3 + winston: ^3.8.2 dependencies: '@headlessui/react': 1.7.0_biqbaboplfbrettd7655fr4n2y @@ -62,7 +64,9 @@ dependencies: rutorrent-promise: 2.0.0 shvl: 3.0.0 swr: 1.3.0_react@18.2.0 + tailwind-scrollbar: 2.0.1_tailwindcss@3.1.8 tough-cookie: 4.1.2 + winston: 3.8.2 devDependencies: autoprefixer: 10.4.9_postcss@8.4.16 @@ -100,6 +104,19 @@ packages: resolution: {integrity: sha512-wMue2Sy4GAVTk6Ic4tJVcnfdau+gx2EnG7S+uAEe+TWJFqE4YoWN4/H8MSLj4eYJKxGg26lZwboEniNiNwZQ6Q==} dev: false + /@colors/colors/1.5.0: + resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} + engines: {node: '>=0.1.90'} + dev: false + + /@dabh/diagnostics/2.0.3: + resolution: {integrity: sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==} + dependencies: + colorspace: 1.1.4 + enabled: 2.0.0 + kuler: 2.0.0 + dev: false + /@eslint/eslintrc/1.3.2: resolution: {integrity: sha512-AXYd23w1S/bv3fTs3Lz0vjiYemS08jWkI3hYyS9I1ry+0f+Yjs1wm+sU0BS8qDOPrBIkp4qHYC16I8uVtpLajQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -500,6 +517,10 @@ packages: resolution: {integrity: sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==} dev: true + /async/3.2.4: + resolution: {integrity: sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==} + dev: false + /asynckit/0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} dev: false @@ -646,6 +667,12 @@ packages: resolution: {integrity: sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA==} dev: false + /color-convert/1.9.3: + resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} + dependencies: + color-name: 1.1.3 + dev: false + /color-convert/2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} engines: {node: '>=7.0.0'} @@ -653,9 +680,34 @@ packages: color-name: 1.1.4 dev: true + /color-name/1.1.3: + resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} + dev: false + /color-name/1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + /color-string/1.9.1: + resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} + dependencies: + color-name: 1.1.4 + simple-swizzle: 0.2.2 + dev: false + + /color/3.2.1: + resolution: {integrity: sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==} + dependencies: + color-convert: 1.9.3 + color-string: 1.9.1 + dev: false + + /colorspace/1.1.4: + resolution: {integrity: sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==} + dependencies: + color: 3.2.1 + text-hex: 1.0.0 + dev: false + /combined-stream/1.0.8: resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} engines: {node: '>= 0.8'} @@ -837,6 +889,10 @@ packages: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} dev: true + /enabled/2.0.0: + resolution: {integrity: sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==} + dev: false + /end-of-stream/1.4.4: resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} dependencies: @@ -1323,6 +1379,10 @@ packages: dependencies: reusify: 1.0.4 + /fecha/4.2.3: + resolution: {integrity: sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==} + dev: false + /file-entry-cache/6.0.1: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} engines: {node: ^10.12.0 || >=12.0.0} @@ -1356,6 +1416,10 @@ packages: resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==} dev: true + /fn.name/1.1.0: + resolution: {integrity: sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==} + dev: false + /follow-redirects/1.15.2: resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==} engines: {node: '>=4.0'} @@ -1602,6 +1666,10 @@ packages: side-channel: 1.0.4 dev: true + /is-arrayish/0.3.2: + resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} + dev: false + /is-bigint/1.0.4: resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} dependencies: @@ -1679,6 +1747,11 @@ packages: call-bind: 1.0.2 dev: true + /is-stream/2.0.1: + resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} + engines: {node: '>=8'} + dev: false + /is-string/1.0.7: resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} engines: {node: '>= 0.4'} @@ -1743,6 +1816,10 @@ packages: object.assign: 4.1.4 dev: true + /kuler/2.0.0: + resolution: {integrity: sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==} + dev: false + /language-subtag-registry/0.3.22: resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==} dev: true @@ -1776,6 +1853,16 @@ packages: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} dev: true + /logform/2.4.2: + resolution: {integrity: sha512-W4c9himeAwXEdZ05dQNerhFz2XG80P9Oj0loPUMV23VC2it0orMHQhJm4hdnnor3rd1HsGf6a2lPwBM1zeXHGw==} + dependencies: + '@colors/colors': 1.5.0 + fecha: 4.2.3 + ms: 2.1.3 + safe-stable-stringify: 2.4.0 + triple-beam: 1.3.0 + dev: false + /loose-envify/1.4.0: resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} hasBin: true @@ -1843,7 +1930,6 @@ packages: /ms/2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - dev: true /nan/2.16.0: resolution: {integrity: sha512-UdAqHyFngu7TfQKsCBgAA6pWDkT8MAO7d0jyOecVhN5354xbLqdn8mV9Tat9gepAupm0bt2DbeaSC8vS52MuFA==} @@ -2000,6 +2086,12 @@ packages: dependencies: wrappy: 1.0.2 + /one-time/1.0.0: + resolution: {integrity: sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==} + dependencies: + fn.name: 1.1.0 + dev: false + /optionator/0.9.1: resolution: {integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==} engines: {node: '>= 0.8.0'} @@ -2347,6 +2439,11 @@ packages: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} dev: false + /safe-stable-stringify/2.4.0: + resolution: {integrity: sha512-eehKHKpab6E741ud7ZIMcXhKcP6TSIezPkNZhy5U8xC6+VvrRdUA2tMgxGxaGl4cz7c2Ew5+mg5+wNB16KQqrA==} + engines: {node: '>=10'} + dev: false + /safer-buffer/2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} dev: false @@ -2398,6 +2495,12 @@ packages: object-inspect: 1.12.2 dev: true + /simple-swizzle/0.2.2: + resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} + dependencies: + is-arrayish: 0.3.2 + dev: false + /slash/3.0.0: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} engines: {node: '>=8'} @@ -2423,6 +2526,10 @@ packages: nan: 2.16.0 dev: false + /stack-trace/0.0.10: + resolution: {integrity: sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==} + dev: false + /statuses/2.0.1: resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} engines: {node: '>= 0.8'} @@ -2515,6 +2622,15 @@ packages: react: 18.2.0 dev: false + /tailwind-scrollbar/2.0.1_tailwindcss@3.1.8: + resolution: {integrity: sha512-OcR7qHBbux4k+k6bWqnEQFYFooLK/F4dhkBz6nvswIoaA9ancZ5h20e0tyV7ifSWLDCUBtpG+1NHRA8HMRH/wg==} + engines: {node: '>=12.13.0'} + peerDependencies: + tailwindcss: 3.x + dependencies: + tailwindcss: 3.1.8_postcss@8.4.16 + dev: false + /tailwindcss/3.1.8_postcss@8.4.16: resolution: {integrity: sha512-YSneUCZSFDYMwk+TGq8qYFdCA3yfBRdBlS7txSq0LUmzyeqRe3a8fBQzbz9M3WS/iFT4BNf/nmw9mEzrnSaC0g==} engines: {node: '>=12.13.0'} @@ -2567,6 +2683,10 @@ packages: readable-stream: 3.6.0 dev: false + /text-hex/1.0.0: + resolution: {integrity: sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==} + dev: false + /text-table/0.2.0: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} dev: true @@ -2596,6 +2716,10 @@ packages: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} dev: false + /triple-beam/1.3.0: + resolution: {integrity: sha512-XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw==} + dev: false + /tsconfig-paths/3.14.1: resolution: {integrity: sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==} dependencies: @@ -2733,6 +2857,32 @@ packages: isexe: 2.0.0 dev: true + /winston-transport/4.5.0: + resolution: {integrity: sha512-YpZzcUzBedhlTAfJg6vJDlyEai/IFMIVcaEZZyl3UXIl4gmqRpU7AE89AHLkbzLUsv0NVmw7ts+iztqKxxPW1Q==} + engines: {node: '>= 6.4.0'} + dependencies: + logform: 2.4.2 + readable-stream: 3.6.0 + triple-beam: 1.3.0 + dev: false + + /winston/3.8.2: + resolution: {integrity: sha512-MsE1gRx1m5jdTTO9Ld/vND4krP2To+lgDoMEHGGa4HIlAUyXJtfc7CxQcGXVyz2IBpw5hbFkj2b/AtUdQwyRew==} + engines: {node: '>= 12.0.0'} + dependencies: + '@colors/colors': 1.5.0 + '@dabh/diagnostics': 2.0.3 + async: 3.2.4 + is-stream: 2.0.1 + logform: 2.4.2 + one-time: 1.0.0 + readable-stream: 3.6.0 + safe-stable-stringify: 2.4.0 + stack-trace: 0.0.10 + triple-beam: 1.3.0 + winston-transport: 4.5.0 + dev: false + /word-wrap/1.2.3: resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==} engines: {node: '>=0.10.0'} diff --git a/public/locales/ca/common.json b/public/locales/ca/common.json index a0763633..e9ba3641 100644 --- a/public/locales/ca/common.json +++ b/public/locales/ca/common.json @@ -155,7 +155,18 @@ "qbittorrent": { "download": "Descàrrega", "upload": "Càrrega", - "leech": "Leech", - "seed": "Seed" + "leech": "Companys", + "seed": "Llavors" + }, + "mastodon": { + "user_count": "Usuaris", + "status_count": "Publicacions", + "domain_count": "Dominis" + }, + "strelaysrv": { + "numActiveSessions": "Sessions", + "numConnections": "Connexions", + "dataRelayed": "Transmès", + "transferRate": "Velocitat" } } diff --git a/public/locales/de/common.json b/public/locales/de/common.json index 08ddddd7..cff97b11 100644 --- a/public/locales/de/common.json +++ b/public/locales/de/common.json @@ -48,9 +48,9 @@ "movies": "Filme" }, "readarr": { - "wanted": "Wanted", - "queued": "Queued", - "books": "Books" + "wanted": "Gesucht", + "queued": "In Warteschlange", + "books": "Bücher" }, "ombi": { "pending": "Ausstehend", @@ -79,8 +79,8 @@ }, "traefik": { "routers": "Router", - "services": "Services", - "middleware": "Middleware" + "services": "Dienste", + "middleware": "Zwischenanwendung" }, "npm": { "enabled": "Aktiviert", @@ -94,68 +94,79 @@ "wait": "Bitte warten" }, "overseerr": { - "pending": "Pending", - "approved": "Approved", - "available": "Available" + "pending": "Ausstehend", + "approved": "Genehmigt", + "available": "Verfügbar" }, "sabnzbd": { - "rate": "Rate", - "queue": "Queue", - "timeleft": "Time Left" + "rate": "Geschwindigkeit", + "queue": "Warteschlange", + "timeleft": "Verbleibende Zeit" }, "nzbget": { - "rate": "Rate", - "remaining": "Remaining", - "downloaded": "Downloaded" + "rate": "Geschwindigkeit", + "remaining": "Verbleibend", + "downloaded": "Heruntergeladen" }, "coinmarketcap": { - "configure": "Configure one or more crypto currencies to track", - "1hour": "1 Hour", - "1day": "1 Day", - "7days": "7 Days", - "30days": "30 Days" + "configure": "Konfiguriere eine oder mehrere Kryptowährungen zur Verfolgung", + "1hour": "1 Stunde", + "1day": "1 Tag", + "7days": "7 Tage", + "30days": "30 Tage" }, "gotify": { - "apps": "Applications", - "clients": "Clients", - "messages": "Messages" + "apps": "Programme", + "clients": "Benutzer", + "messages": "Nachrichten" }, "prowlarr": { - "enableIndexers": "Indexers", - "numberOfGrabs": "Grabs", - "numberOfQueries": "Queries", - "numberOfFailGrabs": "Fail Grabs", - "numberOfFailQueries": "Fail Queries" + "enableIndexers": "Indexer", + "numberOfGrabs": "Abrufungen", + "numberOfQueries": "Anfragen", + "numberOfFailGrabs": "Fehlgeschlagene Abrufungen", + "numberOfFailQueries": "Fehlgeschlagene Anfragen" }, "transmission": { - "download": "Download", - "upload": "Upload", + "download": "Herunterladen", + "upload": "Hochladen", "leech": "Leech", "seed": "Seed" }, "jackett": { - "configured": "Configured", - "errored": "Errored" + "configured": "Konfiguriert", + "errored": "Fehlerhaft" }, "bazarr": { - "missingEpisodes": "Missing Episodes", - "missingMovies": "Missing Movies" + "missingEpisodes": "Fehlende Episoden", + "missingMovies": "Fehlende Filme" }, "lidarr": { - "wanted": "Wanted", - "queued": "Queued", - "albums": "Albums" + "wanted": "Gesucht", + "queued": "In Warteschlange", + "albums": "Alben" }, "adguard": { - "queries": "Queries", - "blocked": "Blocked", - "filtered": "Filtered", - "latency": "Latency" + "queries": "Anfragen", + "blocked": "Blockiert", + "filtered": "Gefiltert", + "latency": "Latenz" }, "qbittorrent": { - "download": "Download", - "upload": "Upload", + "download": "Herunterladen", + "upload": "Hochladen", "leech": "Leech", "seed": "Seed" + }, + "mastodon": { + "user_count": "Users", + "status_count": "Posts", + "domain_count": "Domains" + }, + "strelaysrv": { + "numActiveSessions": "Sessions", + "numConnections": "Connections", + "dataRelayed": "Relayed", + "transferRate": "Rate" } } diff --git a/public/locales/en/common.json b/public/locales/en/common.json index fb4de8c5..63776994 100644 --- a/public/locales/en/common.json +++ b/public/locales/en/common.json @@ -173,5 +173,16 @@ "users": "Users", "loginsLast24H": "Logins (24h)", "failedLoginsLast24H": "Failed Logins (24h)" + }, + "strelaysrv": { + "numActiveSessions": "Sessions", + "numConnections": "Connections", + "dataRelayed": "Relayed", + "transferRate": "Rate" + }, + "mastodon": { + "user_count": "Users", + "status_count": "Posts", + "domain_count": "Domains" } } diff --git a/public/locales/es/common.json b/public/locales/es/common.json index d5d32ce0..47ffd142 100644 --- a/public/locales/es/common.json +++ b/public/locales/es/common.json @@ -157,5 +157,16 @@ "upload": "Subida", "leech": "Compañeros", "seed": "Semillas" + }, + "mastodon": { + "user_count": "Usuarios", + "status_count": "Publicaciones", + "domain_count": "Dominios" + }, + "strelaysrv": { + "numActiveSessions": "Sesiones", + "numConnections": "Conexiones", + "dataRelayed": "Transmitido", + "transferRate": "Velocidad" } } diff --git a/public/locales/fr/common.json b/public/locales/fr/common.json index 14544d2d..03d9c169 100644 --- a/public/locales/fr/common.json +++ b/public/locales/fr/common.json @@ -168,5 +168,16 @@ "upload": "Envoi", "leech": "Leech", "seed": "Seed" + }, + "mastodon": { + "user_count": "Utilisateurs", + "status_count": "Messages", + "domain_count": "Domaines" + }, + "strelaysrv": { + "numActiveSessions": "Sessions", + "numConnections": "Connections", + "dataRelayed": "Relayed", + "transferRate": "Rate" } } diff --git a/public/locales/he/common.json b/public/locales/he/common.json index fcd4e2cb..48a1acd5 100644 --- a/public/locales/he/common.json +++ b/public/locales/he/common.json @@ -157,5 +157,16 @@ "jackett": { "configured": "מוגדר", "errored": "שגיאה" + }, + "mastodon": { + "user_count": "Users", + "status_count": "Posts", + "domain_count": "Domains" + }, + "strelaysrv": { + "numActiveSessions": "Sessions", + "numConnections": "Connections", + "dataRelayed": "Relayed", + "transferRate": "Rate" } } diff --git a/public/locales/hr/common.json b/public/locales/hr/common.json index a2d66c81..d1c69cdf 100644 --- a/public/locales/hr/common.json +++ b/public/locales/hr/common.json @@ -157,5 +157,16 @@ "upload": "Upload", "leech": "Leech", "seed": "Seed" + }, + "mastodon": { + "user_count": "Users", + "status_count": "Posts", + "domain_count": "Domains" + }, + "strelaysrv": { + "numActiveSessions": "Sessions", + "numConnections": "Connections", + "dataRelayed": "Relayed", + "transferRate": "Rate" } } diff --git a/public/locales/hu/common.json b/public/locales/hu/common.json index a3a3abb4..e73ca38f 100644 --- a/public/locales/hu/common.json +++ b/public/locales/hu/common.json @@ -157,5 +157,16 @@ "jackett": { "configured": "Beállított", "errored": "Hibás" + }, + "mastodon": { + "user_count": "Users", + "status_count": "Posts", + "domain_count": "Domains" + }, + "strelaysrv": { + "numActiveSessions": "Sessions", + "numConnections": "Connections", + "dataRelayed": "Relayed", + "transferRate": "Rate" } } diff --git a/public/locales/it/common.json b/public/locales/it/common.json index 2e07b8f9..2547fb34 100644 --- a/public/locales/it/common.json +++ b/public/locales/it/common.json @@ -157,5 +157,16 @@ "leech": "Leech", "upload": "Upload", "seed": "Seed" + }, + "mastodon": { + "user_count": "Users", + "status_count": "Posts", + "domain_count": "Domains" + }, + "strelaysrv": { + "numActiveSessions": "Sessions", + "numConnections": "Connections", + "dataRelayed": "Relayed", + "transferRate": "Rate" } } diff --git a/public/locales/nb-NO/common.json b/public/locales/nb-NO/common.json index 93bd9c1c..9d4924a7 100644 --- a/public/locales/nb-NO/common.json +++ b/public/locales/nb-NO/common.json @@ -157,5 +157,16 @@ "upload": "Upload", "leech": "Leech", "seed": "Seed" + }, + "mastodon": { + "user_count": "Users", + "status_count": "Posts", + "domain_count": "Domains" + }, + "strelaysrv": { + "numActiveSessions": "Sessions", + "numConnections": "Connections", + "dataRelayed": "Relayed", + "transferRate": "Rate" } } diff --git a/public/locales/nl/common.json b/public/locales/nl/common.json index d439e2a7..c4eb9435 100644 --- a/public/locales/nl/common.json +++ b/public/locales/nl/common.json @@ -157,5 +157,16 @@ "upload": "Upload", "leech": "Leech", "seed": "Seed" + }, + "mastodon": { + "user_count": "Users", + "status_count": "Posts", + "domain_count": "Domains" + }, + "strelaysrv": { + "numActiveSessions": "Sessions", + "numConnections": "Connections", + "dataRelayed": "Relayed", + "transferRate": "Rate" } } diff --git a/public/locales/pl/common.json b/public/locales/pl/common.json index 16e53894..9e51e98f 100644 --- a/public/locales/pl/common.json +++ b/public/locales/pl/common.json @@ -157,5 +157,16 @@ "upload": "Upload", "leech": "Leech", "seed": "Seed" + }, + "mastodon": { + "user_count": "Users", + "status_count": "Posts", + "domain_count": "Domains" + }, + "strelaysrv": { + "numActiveSessions": "Sessions", + "numConnections": "Connections", + "dataRelayed": "Relayed", + "transferRate": "Rate" } } diff --git a/public/locales/pt/common.json b/public/locales/pt/common.json index 6394df8d..415eca6d 100644 --- a/public/locales/pt/common.json +++ b/public/locales/pt/common.json @@ -168,5 +168,16 @@ "upload": "Upload", "leech": "Leech", "seed": "Seed" + }, + "mastodon": { + "user_count": "Users", + "status_count": "Posts", + "domain_count": "Domains" + }, + "strelaysrv": { + "numActiveSessions": "Sessions", + "numConnections": "Connections", + "dataRelayed": "Relayed", + "transferRate": "Rate" } } diff --git a/public/locales/ru/common.json b/public/locales/ru/common.json index 73da2e36..6cb0da89 100644 --- a/public/locales/ru/common.json +++ b/public/locales/ru/common.json @@ -157,5 +157,16 @@ "upload": "Upload", "leech": "Leech", "seed": "Seed" + }, + "mastodon": { + "user_count": "Users", + "status_count": "Posts", + "domain_count": "Domains" + }, + "strelaysrv": { + "numConnections": "Connections", + "dataRelayed": "Relayed", + "transferRate": "Rate", + "numActiveSessions": "Sessions" } } diff --git a/public/locales/sv/common.json b/public/locales/sv/common.json index 4e52f59d..c87992dd 100644 --- a/public/locales/sv/common.json +++ b/public/locales/sv/common.json @@ -157,5 +157,16 @@ "upload": "Upload", "leech": "Leech", "seed": "Seed" + }, + "mastodon": { + "user_count": "Users", + "status_count": "Posts", + "domain_count": "Domains" + }, + "strelaysrv": { + "numActiveSessions": "Sessions", + "numConnections": "Connections", + "dataRelayed": "Relayed", + "transferRate": "Rate" } } diff --git a/public/locales/vi/common.json b/public/locales/vi/common.json index e72c01a6..13dc48a8 100644 --- a/public/locales/vi/common.json +++ b/public/locales/vi/common.json @@ -157,5 +157,16 @@ "upload": "Upload", "leech": "Leech", "seed": "Seed" + }, + "mastodon": { + "user_count": "Users", + "status_count": "Posts", + "domain_count": "Domains" + }, + "strelaysrv": { + "numActiveSessions": "Sessions", + "numConnections": "Connections", + "dataRelayed": "Relayed", + "transferRate": "Rate" } } diff --git a/public/locales/zh-CN/common.json b/public/locales/zh-CN/common.json index f8d9f802..966755d7 100644 --- a/public/locales/zh-CN/common.json +++ b/public/locales/zh-CN/common.json @@ -157,5 +157,16 @@ "upload": "上传", "leech": "吸血", "seed": "做种" + }, + "mastodon": { + "user_count": "Users", + "status_count": "Posts", + "domain_count": "Domains" + }, + "strelaysrv": { + "numActiveSessions": "Sessions", + "dataRelayed": "Relayed", + "numConnections": "Connections", + "transferRate": "Rate" } } diff --git a/public/locales/zh-Hant/common.json b/public/locales/zh-Hant/common.json index 6dd8c9b2..691d139c 100644 --- a/public/locales/zh-Hant/common.json +++ b/public/locales/zh-Hant/common.json @@ -157,5 +157,16 @@ "upload": "Upload", "leech": "Leech", "seed": "Seed" + }, + "mastodon": { + "user_count": "Users", + "status_count": "Posts", + "domain_count": "Domains" + }, + "strelaysrv": { + "numActiveSessions": "Sessions", + "numConnections": "Connections", + "dataRelayed": "Relayed", + "transferRate": "Rate" } } diff --git a/src/components/bookmarks/group.jsx b/src/components/bookmarks/group.jsx index bf61bcd9..af510081 100644 --- a/src/components/bookmarks/group.jsx +++ b/src/components/bookmarks/group.jsx @@ -2,13 +2,8 @@ import List from "components/bookmarks/list"; export default function BookmarksGroup({ group }) { return ( -