mirror of
https://github.com/gethomepage/homepage.git
synced 2025-12-05 21:47:48 +01:00
Compare commits
1245 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
34589f0514 | ||
|
|
3cd441a45e | ||
|
|
816a2a5106 | ||
|
|
38079badc8 | ||
|
|
5109facf1c | ||
|
|
ee0afaa638 | ||
|
|
42b69e44a2 | ||
|
|
6dc3be6029 | ||
|
|
ec1cf2f3ca | ||
|
|
cde8c658ae | ||
|
|
8a520e07a5 | ||
|
|
eb2b37063f | ||
|
|
2d8160512f | ||
|
|
768107cde8 | ||
|
|
9fb0917054 | ||
|
|
1895899839 | ||
|
|
ec25af781c | ||
|
|
bda567e961 | ||
|
|
c525dda77d | ||
|
|
65a0b9f905 | ||
|
|
74e3a3f09c | ||
|
|
d610d379f8 | ||
|
|
e3acc444d8 | ||
|
|
16299ced66 | ||
|
|
3a018d5a63 | ||
|
|
b39c79bea1 | ||
|
|
0741ef0427 | ||
|
|
bce43c28d6 | ||
|
|
e94796f878 | ||
|
|
2ee6881376 | ||
|
|
95635fca04 | ||
|
|
4f1cde97ec | ||
|
|
d4edd432d8 | ||
|
|
63f952509e | ||
|
|
89f2e9739d | ||
|
|
9569f56aa5 | ||
|
|
ae3634e9d4 | ||
|
|
f96154189b | ||
|
|
402f86fc1b | ||
|
|
3f71bff13f | ||
|
|
a061eccef5 | ||
|
|
957bd9491b | ||
|
|
7a1f8850b8 | ||
|
|
ef3da08d93 | ||
|
|
5a67bcd14d | ||
|
|
864f4ef6cc | ||
|
|
cc88bf21a9 | ||
|
|
a6eba9bcde | ||
|
|
8bf3b3e217 | ||
|
|
97c3d7c513 | ||
|
|
13ee73f178 | ||
|
|
eedc47e091 | ||
|
|
dc8d0f6ca9 | ||
|
|
9811a4d5ee | ||
|
|
27f52fd981 | ||
|
|
7adcd6c242 | ||
|
|
74b73f99b7 | ||
|
|
1841a794a4 | ||
|
|
bca024e3c2 | ||
|
|
7cb4780a9c | ||
|
|
b0d68b3c0e | ||
|
|
9a060b3db1 | ||
|
|
0ffa5b8ace | ||
|
|
2ec96a6457 | ||
|
|
1098b0d4f9 | ||
|
|
1ecfa382bc | ||
|
|
2f83906244 | ||
|
|
6eacff4638 | ||
|
|
e1c615de14 | ||
|
|
dd842ee7a8 | ||
|
|
2681930b2e | ||
|
|
4bfad4d27e | ||
|
|
c13567bcb7 | ||
|
|
eb77e42264 | ||
|
|
75b46509c1 | ||
|
|
e433d75372 | ||
|
|
5d76ac4c7f | ||
|
|
95b91b953a | ||
|
|
63e65d721b | ||
|
|
ec6deb5ac9 | ||
|
|
b4c7faf178 | ||
|
|
132ec69f29 | ||
|
|
673404e441 | ||
|
|
e267717898 | ||
|
|
99f60eab29 | ||
|
|
17b0f635d8 | ||
|
|
c2058f353d | ||
|
|
3a10214a45 | ||
|
|
9713a16e1f | ||
|
|
0e57547824 | ||
|
|
80eb03194f | ||
|
|
a0019d832e | ||
|
|
4517409dbd | ||
|
|
61b969cced | ||
|
|
ed293071b4 | ||
|
|
5d0a793195 | ||
|
|
b2908cdd97 | ||
|
|
108ca23212 | ||
|
|
9529553102 | ||
|
|
4d55f1fba4 | ||
|
|
257ab91ffb | ||
|
|
96e8882fb5 | ||
|
|
864eb8cfbb | ||
|
|
147ed30b09 | ||
|
|
14aebf9e41 | ||
|
|
76013b32b3 | ||
|
|
f0a4ab645c | ||
|
|
eedb728025 | ||
|
|
419e930456 | ||
|
|
494a1c50d5 | ||
|
|
3b05655fb0 | ||
|
|
98baf0507b | ||
|
|
36760caff9 | ||
|
|
2363f96f1b | ||
|
|
c0c14b0233 | ||
|
|
5c28b501f6 | ||
|
|
5d9155ab22 | ||
|
|
2d13c38d38 | ||
|
|
d5891793dd | ||
|
|
7c8ab99df6 | ||
|
|
c09785b4f5 | ||
|
|
31d7b56fb6 | ||
|
|
d5fd904e55 | ||
|
|
67b1ca6251 | ||
|
|
3d13d9311d | ||
|
|
1b81942549 | ||
|
|
2013fc8193 | ||
|
|
a8415ab40f | ||
|
|
4ce941a781 | ||
|
|
2bf5830ca8 | ||
|
|
b554683eca | ||
|
|
9612a76bce | ||
|
|
4a2cf8764d | ||
|
|
1d99f2ebf1 | ||
|
|
3d32c129c0 | ||
|
|
5e42da6e53 | ||
|
|
61190f6e49 | ||
|
|
dcb3ca52e3 | ||
|
|
41aea0166e | ||
|
|
5c9d2ba04c | ||
|
|
4ad13625be | ||
|
|
acb28389f4 | ||
|
|
117930a6f5 | ||
|
|
d4db335d3d | ||
|
|
7b1ac03e3a | ||
|
|
2405e8afbd | ||
|
|
bccf83467b | ||
|
|
374e8873ce | ||
|
|
313211f756 | ||
|
|
49a68488b4 | ||
|
|
5d66323edd | ||
|
|
7d7964bfa8 | ||
|
|
34bf5da16f | ||
|
|
0aefe4e327 | ||
|
|
15d36f74d3 | ||
|
|
0ee1656872 | ||
|
|
0e3d05ffe2 | ||
|
|
843f624655 | ||
|
|
ba77e0e0f7 | ||
|
|
b7198d1d52 | ||
|
|
e990ba3394 | ||
|
|
e19dab3c5d | ||
|
|
82d2f08e8b | ||
|
|
43b32fd1fb | ||
|
|
d6448763e0 | ||
|
|
51ea4ea405 | ||
|
|
713cb217e4 | ||
|
|
8ef88f2153 | ||
|
|
6bfc98daf8 | ||
|
|
fc7e73eba2 | ||
|
|
14b886793c | ||
|
|
c460b7594f | ||
|
|
6cfb150c9a | ||
|
|
f107481da2 | ||
|
|
96891e3205 | ||
|
|
582f916379 | ||
|
|
b4d12cad9d | ||
|
|
2c9225cde2 | ||
|
|
26715edbd0 | ||
|
|
4a11c34db6 | ||
|
|
de3ff0b3ba | ||
|
|
338715fe58 | ||
|
|
8dbe0d7fe1 | ||
|
|
f63d9ea7c1 | ||
|
|
00b590ed2a | ||
|
|
e72d58a382 | ||
|
|
ad87faa7ed | ||
|
|
fc41d144f6 | ||
|
|
6c64295505 | ||
|
|
ebd48e4081 | ||
|
|
71439eb689 | ||
|
|
9c33a30fb1 | ||
|
|
f8e1207abc | ||
|
|
93f2bc7773 | ||
|
|
04f947b920 | ||
|
|
d1ebfde45c | ||
|
|
b22fdb42f4 | ||
|
|
c79d57775f | ||
|
|
caaf6c86ba | ||
|
|
9484e9f963 | ||
|
|
2d13648e01 | ||
|
|
2ddddf5cfe | ||
|
|
9086fcadc9 | ||
|
|
4502dba6ca | ||
|
|
92d1ad2d9d | ||
|
|
eb15ab054f | ||
|
|
1047da8e23 | ||
|
|
69ded4bd2f | ||
|
|
6898ed3676 | ||
|
|
e12184863a | ||
|
|
81f2906ae7 | ||
|
|
84296e573f | ||
|
|
4b4c63d562 | ||
|
|
1faaa1466a | ||
|
|
3a75fbb77d | ||
|
|
ad586f3853 | ||
|
|
5800957ec1 | ||
|
|
a58eabdb9b | ||
|
|
7cede1318e | ||
|
|
d90a038884 | ||
|
|
a234eeffb1 | ||
|
|
38bb974c64 | ||
|
|
0976c21fa4 | ||
|
|
a4c046c3e1 | ||
|
|
eb67cf1d6f | ||
|
|
fb04972701 | ||
|
|
4a80b32bb6 | ||
|
|
d00d9ffee3 | ||
|
|
c0af877e91 | ||
|
|
f8586a9df6 | ||
|
|
8cc19daf24 | ||
|
|
9f57f45816 | ||
|
|
a11df88d8a | ||
|
|
ff81233772 | ||
|
|
7cec116b11 | ||
|
|
4dc84201a0 | ||
|
|
9abdcc56a0 | ||
|
|
5b5fc60a0c | ||
|
|
63b59c3964 | ||
|
|
15d30abc93 | ||
|
|
a7d73828e6 | ||
|
|
749d039896 | ||
|
|
651243cd9f | ||
|
|
b5ae79e1d3 | ||
|
|
5d81b56189 | ||
|
|
c7c600b47d | ||
|
|
8907a9cecf | ||
|
|
529927bc8b | ||
|
|
f27f7b3fa6 | ||
|
|
a755a0ae83 | ||
|
|
0d1a7f1717 | ||
|
|
ebf036c241 | ||
|
|
3fd83f9f2d | ||
|
|
67d64264bc | ||
|
|
69e187f574 | ||
|
|
83e27aa41a | ||
|
|
37b6aba1d4 | ||
|
|
33d4b4d43d | ||
|
|
4e230fb76a | ||
|
|
04ac922cfe | ||
|
|
59c22820c0 | ||
|
|
f463f99cbe | ||
|
|
1e27da0024 | ||
|
|
bc9e331ac5 | ||
|
|
f7f1aa88b1 | ||
|
|
da3541cafe | ||
|
|
a6dac34b24 | ||
|
|
7bd433922f | ||
|
|
deaacc3b05 | ||
|
|
2e4808db63 | ||
|
|
b033869345 | ||
|
|
b56de26a2f | ||
|
|
6bc9c4d861 | ||
|
|
78622d368e | ||
|
|
491bf0f3a9 | ||
|
|
ea1435cd87 | ||
|
|
f25f834809 | ||
|
|
7d66b5c895 | ||
|
|
0dc473909e | ||
|
|
d54230745b | ||
|
|
c4cbd870d1 | ||
|
|
8229d28c41 | ||
|
|
861f726079 | ||
|
|
0065311f33 | ||
|
|
de064fd883 | ||
|
|
f93d66dc44 | ||
|
|
24ed90f3a6 | ||
|
|
727a4f41f1 | ||
|
|
b1e8bbfb56 | ||
|
|
702b8683c0 | ||
|
|
3ee96372fd | ||
|
|
c405cfe574 | ||
|
|
4906d21c84 | ||
|
|
a650f7689d | ||
|
|
6410fcbaa2 | ||
|
|
aa31922681 | ||
|
|
1cb0012a5a | ||
|
|
9a7a2f25f2 | ||
|
|
a201e0fb7f | ||
|
|
0913ef74c2 | ||
|
|
96e887fa25 | ||
|
|
36b95e68ce | ||
|
|
3d2905b63c | ||
|
|
375011bbea | ||
|
|
56bd321f03 | ||
|
|
b07fd98fc6 | ||
|
|
6744ef49c9 | ||
|
|
25672a0147 | ||
|
|
4c49767a0f | ||
|
|
bb8ad4747c | ||
|
|
80f26676d7 | ||
|
|
70b4f4e1e6 | ||
|
|
dce89f0c01 | ||
|
|
5b5e561c3c | ||
|
|
31aff205e0 | ||
|
|
1136d7d2cb | ||
|
|
74a2245c29 | ||
|
|
0e1a41fdd1 | ||
|
|
7a51b62e43 | ||
|
|
75ecf3eba5 | ||
|
|
f18146063f | ||
|
|
0af60d06c2 | ||
|
|
1f00b3828b | ||
|
|
9e96738487 | ||
|
|
d2fb93f7e9 | ||
|
|
7834f2fecb | ||
|
|
9cd25d541f | ||
|
|
95707d527f | ||
|
|
b64bcdb817 | ||
|
|
4cc113697c | ||
|
|
65115cf6dc | ||
|
|
1af888934e | ||
|
|
7281f6d3a1 | ||
|
|
804b69d5a6 | ||
|
|
4cb18f7129 | ||
|
|
7558a24242 | ||
|
|
e17f594101 | ||
|
|
ed6000262d | ||
|
|
f2900ac859 | ||
|
|
e9c5aa13de | ||
|
|
ede5a53b7f | ||
|
|
11fa395b76 | ||
|
|
63bc0c971e | ||
|
|
6712219d59 | ||
|
|
dbfd92b643 | ||
|
|
c30f2ec4ca | ||
|
|
ff620cebf1 | ||
|
|
73c30cc3b5 | ||
|
|
6eb8d6a93d | ||
|
|
5786b8b895 | ||
|
|
1015005086 | ||
|
|
51db779007 | ||
|
|
eb06eaf292 | ||
|
|
46d34040af | ||
|
|
e567d6b6b6 | ||
|
|
70ffe63e59 | ||
|
|
39a94190cf | ||
|
|
a8dfdcdac0 | ||
|
|
5dcfd555cb | ||
|
|
583494f27a | ||
|
|
af43b62e2f | ||
|
|
dfb1e25877 | ||
|
|
5765d48bba | ||
|
|
15f1d0ecd2 | ||
|
|
2da13e3cd4 | ||
|
|
32b139a436 | ||
|
|
8b6f174c51 | ||
|
|
33b0aefd8a | ||
|
|
d8bd19d997 | ||
|
|
6cfd08bb85 | ||
|
|
deaf49ce8b | ||
|
|
4cafb8decd | ||
|
|
a4cc538388 | ||
|
|
828c52d90a | ||
|
|
52bf9718ca | ||
|
|
48bd6e8436 | ||
|
|
5e9d2d8439 | ||
|
|
08dbd59f1b | ||
|
|
b1706e79be | ||
|
|
62c914c57e | ||
|
|
d55e328c90 | ||
|
|
f80e7c4f25 | ||
|
|
0d38cbae8e | ||
|
|
6e5f15b6ec | ||
|
|
6f6f06ed38 | ||
|
|
7a930d2173 | ||
|
|
d71e316b5d | ||
|
|
63f8e1e5b1 | ||
|
|
c542ca1d0c | ||
|
|
3f3f315e19 | ||
|
|
9f632c58fc | ||
|
|
7e0ed2b8a7 | ||
|
|
22a2649b6e | ||
|
|
2ea780435a | ||
|
|
7174b0ab24 | ||
|
|
112d1e77b9 | ||
|
|
f89cccf209 | ||
|
|
41b1589347 | ||
|
|
4896cc9457 | ||
|
|
b9d523f0c4 | ||
|
|
d1a8523630 | ||
|
|
46b2fc029d | ||
|
|
f2f199124f | ||
|
|
8d6f3b82f3 | ||
|
|
b0f29709c2 | ||
|
|
bf8c10bb61 | ||
|
|
dc19ce4d38 | ||
|
|
3b1c9a69a4 | ||
|
|
5c25279439 | ||
|
|
19bf7a0e5a | ||
|
|
9a3eb5a2b3 | ||
|
|
58f4cf6edd | ||
|
|
63d4c6bdf8 | ||
|
|
369031a5e1 | ||
|
|
3bf59245a6 | ||
|
|
ef04ae8abe | ||
|
|
64c0e9909d | ||
|
|
2e6a146cb6 | ||
|
|
a605b64d18 | ||
|
|
747cc147cb | ||
|
|
3986634e0d | ||
|
|
022dff6b99 | ||
|
|
828d1a5a3a | ||
|
|
1b629aed4f | ||
|
|
77eaf00c06 | ||
|
|
247d46bbbc | ||
|
|
7f8782732d | ||
|
|
ffae7e1058 | ||
|
|
6414b7c61d | ||
|
|
a0b6a90042 | ||
|
|
b6141c7235 | ||
|
|
719f6c8a3a | ||
|
|
6d22e1b283 | ||
|
|
64025ddb1b | ||
|
|
338a9da697 | ||
|
|
af9dc9311c | ||
|
|
b63977a129 | ||
|
|
8058736918 | ||
|
|
e805ed2e88 | ||
|
|
3ebc302f02 | ||
|
|
61cb50e12a | ||
|
|
56c1627c7e | ||
|
|
d41abd7126 | ||
|
|
781dc4b02c | ||
|
|
fa78735f12 | ||
|
|
a6dc7db96e | ||
|
|
ab8e4e21a1 | ||
|
|
ae124e49b3 | ||
|
|
e4c7a90d14 | ||
|
|
db6b5bb175 | ||
|
|
a96e875944 | ||
|
|
b0ae89c4ba | ||
|
|
3802b54593 | ||
|
|
f2fdd77f96 | ||
|
|
75ae5a9cf1 | ||
|
|
715ceed97b | ||
|
|
1db38e5ca2 | ||
|
|
70ea5ad60d | ||
|
|
12736cc003 | ||
|
|
5611baa0b8 | ||
|
|
f8c382c480 | ||
|
|
ba19f77b8f | ||
|
|
167ecb42de | ||
|
|
15bf55952b | ||
|
|
0f8f5e15a3 | ||
|
|
33e3603d26 | ||
|
|
63a56225bb | ||
|
|
952c72a3a5 | ||
|
|
552f2c4a98 | ||
|
|
ec165b8c74 | ||
|
|
cf05a85ad6 | ||
|
|
69d828ec8e | ||
|
|
b6072200a2 | ||
|
|
fab975062d | ||
|
|
5f01196b21 | ||
|
|
2faaaf5a9c | ||
|
|
8d91aeaf9d | ||
|
|
2609694dd7 | ||
|
|
9c5521ba35 | ||
|
|
6ae351b2ba | ||
|
|
7116b093cb | ||
|
|
c5aa89e533 | ||
|
|
69b660b829 | ||
|
|
ceca1d8ae7 | ||
|
|
1369a356a8 | ||
|
|
a6014d3d06 | ||
|
|
5de0f4f61e | ||
|
|
1371767481 | ||
|
|
8534fcfa58 | ||
|
|
0bc8d74694 | ||
|
|
11b2bd6db1 | ||
|
|
3b943cabed | ||
|
|
5a14917aa7 | ||
|
|
7583b3dfd1 | ||
|
|
ec61e2dd23 | ||
|
|
5bda68d51d | ||
|
|
c75e3cdf40 | ||
|
|
2029df1ed0 | ||
|
|
eb475e8655 | ||
|
|
bfada0f5f3 | ||
|
|
6e33e62540 | ||
|
|
b6ff3da1f0 | ||
|
|
ae14158f35 | ||
|
|
149e653e59 | ||
|
|
05a90e83ef | ||
|
|
e7430af074 | ||
|
|
0752ffce90 | ||
|
|
2451fae52a | ||
|
|
fa45d09568 | ||
|
|
5806ac91b0 | ||
|
|
92114046dd | ||
|
|
4fee35d05a | ||
|
|
2685f92229 | ||
|
|
bb1f9f162a | ||
|
|
687dda0665 | ||
|
|
23a06ec87e | ||
|
|
3002dd2531 | ||
|
|
068150b603 | ||
|
|
e97af12f69 | ||
|
|
93566320db | ||
|
|
9c4d1cf108 | ||
|
|
daa7ef2a3d | ||
|
|
09d44da087 | ||
|
|
9d10de9949 | ||
|
|
a0ffb46a6f | ||
|
|
3e8a8c649b | ||
|
|
0c8131f27e | ||
|
|
cd2c24d47b | ||
|
|
b77909a360 | ||
|
|
3fa72e48cc | ||
|
|
9aba70d214 | ||
|
|
302bff865c | ||
|
|
7cb5bcd468 | ||
|
|
804d9f66de | ||
|
|
489cfb5f10 | ||
|
|
45ee37c86d | ||
|
|
5221ed06ed | ||
|
|
206e5034c5 | ||
|
|
62e294a715 | ||
|
|
f7aa4f13c8 | ||
|
|
e9c7118e53 | ||
|
|
43ee714fb0 | ||
|
|
a4b5cb490c | ||
|
|
f3eefd917c | ||
|
|
d2d2041dd1 | ||
|
|
962c345083 | ||
|
|
34bea0c076 | ||
|
|
32d803c54b | ||
|
|
e884707bfc | ||
|
|
00b0265350 | ||
|
|
c987df8f81 | ||
|
|
94b2c9c822 | ||
|
|
ee4b0ca450 | ||
|
|
70ab398432 | ||
|
|
4b752bb63a | ||
|
|
7a18ec05f1 | ||
|
|
1666034f1f | ||
|
|
d935cb35bf | ||
|
|
f5d1ae2c4e | ||
|
|
0482e86cd1 | ||
|
|
67608ef79f | ||
|
|
59520e4a69 | ||
|
|
1ae33d6925 | ||
|
|
aecf77c0ef | ||
|
|
ea8514fc19 | ||
|
|
e338328c23 | ||
|
|
8138dd832d | ||
|
|
1a63587ceb | ||
|
|
e5490fd5e8 | ||
|
|
16ecd7b426 | ||
|
|
9053ef53f3 | ||
|
|
0071cadfac | ||
|
|
791e9fd95a | ||
|
|
f1ad45a010 | ||
|
|
e4a4c64c2b | ||
|
|
c3dce716ee | ||
|
|
ec12139da2 | ||
|
|
e957a03334 | ||
|
|
e64a4108b2 | ||
|
|
31ec795c61 | ||
|
|
992516cebd | ||
|
|
2f4d4e52be | ||
|
|
1f0d1bc393 | ||
|
|
d3c0ad2190 | ||
|
|
523909f63b | ||
|
|
fbf20d5b8e | ||
|
|
9bbb28dbc2 | ||
|
|
8aeff333d8 | ||
|
|
e4e822a1e2 | ||
|
|
5ec8a1204d | ||
|
|
f6484bb23c | ||
|
|
0996cba02e | ||
|
|
291baa97b7 | ||
|
|
cc7b5350ac | ||
|
|
8e41853d58 | ||
|
|
eb08d989ad | ||
|
|
c142991a21 | ||
|
|
6d403511ce | ||
|
|
40d6afcec2 | ||
|
|
634e169d0d | ||
|
|
25d7fb8930 | ||
|
|
04ff059379 | ||
|
|
8d347d8b26 | ||
|
|
61aac831cb | ||
|
|
6bdad76366 | ||
|
|
36f48cf863 | ||
|
|
771f5493fd | ||
|
|
84cca259a6 | ||
|
|
5a3f141f9d | ||
|
|
f5855514fa | ||
|
|
76ff3d142c | ||
|
|
b5ec54b319 | ||
|
|
4545b785f0 | ||
|
|
f66a4e4a42 | ||
|
|
1590029aec | ||
|
|
cf8efb38f7 | ||
|
|
9058613b97 | ||
|
|
fcecdd3c4a | ||
|
|
7fbac755bc | ||
|
|
99a55c85bb | ||
|
|
19c56de8b0 | ||
|
|
59c7bcb392 | ||
|
|
556cb0f039 | ||
|
|
9054561212 | ||
|
|
d2c565da27 | ||
|
|
7e05adc02a | ||
|
|
ac61dc5d0c | ||
|
|
e9ebf67cda | ||
|
|
4d50ca21dc | ||
|
|
4a051bdaed | ||
|
|
846181eaeb | ||
|
|
6de158897c | ||
|
|
3f1fdc2426 | ||
|
|
970842cee2 | ||
|
|
4203d2d45c | ||
|
|
51c386e9b3 | ||
|
|
e39734e101 | ||
|
|
29a7336b74 | ||
|
|
4863bf9249 | ||
|
|
f7ffb87e7c | ||
|
|
5b9a478a0f | ||
|
|
28acc9207c | ||
|
|
5aa82ae928 | ||
|
|
7aa3220e50 | ||
|
|
de47fc6e7f | ||
|
|
8658d24d15 | ||
|
|
9dfc9f261b | ||
|
|
bd229a7f8f | ||
|
|
bb2b2de97e | ||
|
|
b94a4834c1 | ||
|
|
078b1cbfd6 | ||
|
|
70aab41ffc | ||
|
|
8ebc7937c1 | ||
|
|
f28ce55e42 | ||
|
|
d7be22c7c8 | ||
|
|
f1e7b2b92f | ||
|
|
05ca31ecb6 | ||
|
|
c379f3592e | ||
|
|
c43cec32d0 | ||
|
|
c48d10adcb | ||
|
|
28026a7fa1 | ||
|
|
16daf4e97c | ||
|
|
374e0c215e | ||
|
|
2c84b378ef | ||
|
|
2b21d50ce2 | ||
|
|
3572b53ad6 | ||
|
|
fc39c1b45a | ||
|
|
259cb955d0 | ||
|
|
420aa896d7 | ||
|
|
6586af17a3 | ||
|
|
454d8d03c2 | ||
|
|
1560bb7762 | ||
|
|
e23dc8f277 | ||
|
|
115bb432ff | ||
|
|
f4fa098f6b | ||
|
|
92ed6dc1cb | ||
|
|
e265a7c645 | ||
|
|
aa9b682f5f | ||
|
|
d2c1226d74 | ||
|
|
c749c02ff5 | ||
|
|
a6c6b6f4c7 | ||
|
|
7022ae9be2 | ||
|
|
e4e6bbab93 | ||
|
|
2d1aed4252 | ||
|
|
0adf5e69e0 | ||
|
|
f410dd302b | ||
|
|
89e3857773 | ||
|
|
376a665591 | ||
|
|
f230260633 | ||
|
|
d223687e07 | ||
|
|
a8c2e6500b | ||
|
|
5f3a657eba | ||
|
|
f76d3509ce | ||
|
|
f313be4e41 | ||
|
|
38235a05fb | ||
|
|
b49d9ca409 | ||
|
|
80432b88b1 | ||
|
|
54ad99d83f | ||
|
|
687f992b56 | ||
|
|
b880b3496b | ||
|
|
9879b3e272 | ||
|
|
308d1e16c6 | ||
|
|
a898be0bd7 | ||
|
|
095acc098e | ||
|
|
feaf1ed503 | ||
|
|
ab03d4b1ec | ||
|
|
8633db187f | ||
|
|
9952123468 | ||
|
|
d1fc7a0e07 | ||
|
|
b03a0103e8 | ||
|
|
d0f5d0bbb0 | ||
|
|
972a9ab395 | ||
|
|
b9f144f576 | ||
|
|
b98131cdac | ||
|
|
b404337e1f | ||
|
|
7ff8ba7c6a | ||
|
|
027b85997b | ||
|
|
b5c1b54168 | ||
|
|
d6201a670b | ||
|
|
f412b988b6 | ||
|
|
b9f468bcd9 | ||
|
|
8386dc2774 | ||
|
|
492e8fa5fd | ||
|
|
3b0cd4c3d6 | ||
|
|
8571209026 | ||
|
|
0a2dd3f740 | ||
|
|
b957f57dc5 | ||
|
|
460c67be77 | ||
|
|
04cccfdd60 | ||
|
|
179512672a | ||
|
|
60fa4205d3 | ||
|
|
dfa9e3b8fa | ||
|
|
6e581913ea | ||
|
|
77ac06993b | ||
|
|
08ac9fe7c9 | ||
|
|
6ceaf3686c | ||
|
|
82c54f197d | ||
|
|
597a8d8b9a | ||
|
|
2aeb3f4c89 | ||
|
|
29f3217abb | ||
|
|
7f83623ded | ||
|
|
2843ae3f79 | ||
|
|
ba1b075cb8 | ||
|
|
f063e20dab | ||
|
|
176b8fe6a9 | ||
|
|
d71893903e | ||
|
|
84d82309b0 | ||
|
|
d7f6113fd9 | ||
|
|
cacdd2348a | ||
|
|
f091f8a6ad | ||
|
|
5636537998 | ||
|
|
d49c3dfa06 | ||
|
|
d612c0073b | ||
|
|
36e63e9736 | ||
|
|
328fd8b6b6 | ||
|
|
5ef4638d88 | ||
|
|
2251b0cb3e | ||
|
|
d97e729e41 | ||
|
|
b6e8952d82 | ||
|
|
3d18618fc1 | ||
|
|
cc4bf9d221 | ||
|
|
96e9a5cc72 | ||
|
|
a8bb116ea1 | ||
|
|
7f8b66f72d | ||
|
|
44fbc31dd6 | ||
|
|
449d170430 | ||
|
|
e34fd362d2 | ||
|
|
e4392fc821 | ||
|
|
4dc4ba9b2c | ||
|
|
9b33d1acf1 | ||
|
|
160352d436 | ||
|
|
b3e9bb6cc2 | ||
|
|
ad1a3f8395 | ||
|
|
b4af77d3c4 | ||
|
|
95f1c31e9c | ||
|
|
3b2f7561be | ||
|
|
2deae19940 | ||
|
|
4e4e366e4e | ||
|
|
de6e777312 | ||
|
|
bd467ab01f | ||
|
|
376ab9a6f3 | ||
|
|
48f9bf4f7e | ||
|
|
23fd4a5a73 | ||
|
|
5a7e97222c | ||
|
|
7844991617 | ||
|
|
ae4a2e3cf6 | ||
|
|
aeac95db48 | ||
|
|
1e60553904 | ||
|
|
276edb2069 | ||
|
|
43b5263f41 | ||
|
|
d75505acc8 | ||
|
|
2d8af6eaf6 | ||
|
|
9f4ac4e41e | ||
|
|
ca396ce96b | ||
|
|
9c0bd8b07a | ||
|
|
885058dd41 | ||
|
|
c6b6b4d71b | ||
|
|
8f953c0d16 | ||
|
|
d1f83c0359 | ||
|
|
eb9721334d | ||
|
|
2279dd37f0 | ||
|
|
10d9b2d831 | ||
|
|
1cda437120 | ||
|
|
5640798fe4 | ||
|
|
1439b6cc9c | ||
|
|
2e892ac906 | ||
|
|
a2fe1eef7a | ||
|
|
b04ed36adb | ||
|
|
d734343b31 | ||
|
|
8ad0c9c171 | ||
|
|
b9edea5286 | ||
|
|
27baf17e08 | ||
|
|
2a4c449b77 | ||
|
|
04d9ceed1a | ||
|
|
b32d610532 | ||
|
|
1b6e5c4a8d | ||
|
|
33492bda3a | ||
|
|
714e0a4517 | ||
|
|
041fae1fb3 | ||
|
|
0936ba2b6b | ||
|
|
1d78881a5f | ||
|
|
60463721b8 | ||
|
|
68f755710e | ||
|
|
84d12b0b21 | ||
|
|
0598b8bcf5 | ||
|
|
ebca1050c4 | ||
|
|
cc92890dca | ||
|
|
768db388cb | ||
|
|
03276eced4 | ||
|
|
2e34ab9f1e | ||
|
|
c997b2c87c | ||
|
|
ef1be0bb3f | ||
|
|
92f5bdf659 | ||
|
|
4ba88229ae | ||
|
|
5dde0ae1fa | ||
|
|
8f4d64913c | ||
|
|
ae060903a0 | ||
|
|
81cf03fa87 | ||
|
|
d9aa1dfdbf | ||
|
|
7e01545e14 | ||
|
|
5f21c20a59 | ||
|
|
e552524d99 | ||
|
|
794902cbd5 | ||
|
|
58695dbe75 | ||
|
|
514d827ff4 | ||
|
|
25f7064286 | ||
|
|
112f376aa8 | ||
|
|
4fd107ab45 | ||
|
|
197d8acbe8 | ||
|
|
0d8f6545dd | ||
|
|
f83dd71682 | ||
|
|
a25f136628 | ||
|
|
958428db29 | ||
|
|
297c253c33 | ||
|
|
3021190959 | ||
|
|
3a8e9ece9b | ||
|
|
8678c67d97 | ||
|
|
2a7ca65907 | ||
|
|
edcd7508c9 | ||
|
|
3e691ab446 | ||
|
|
dc85100e32 | ||
|
|
3161c459b8 | ||
|
|
940ce359bf | ||
|
|
bc2695323c | ||
|
|
751777a4ad | ||
|
|
34b8689da7 | ||
|
|
58b7f8f79a | ||
|
|
93515578c0 | ||
|
|
009aae7a38 | ||
|
|
15c8c5552c | ||
|
|
ec7d2cf309 | ||
|
|
3ecc6fbae9 | ||
|
|
3f60fff12d | ||
|
|
f8e2e4bf79 | ||
|
|
62026cfe9c | ||
|
|
3f8553ce7f | ||
|
|
39e30e87d7 | ||
|
|
9925865385 | ||
|
|
904b0d3d62 | ||
|
|
3841642178 | ||
|
|
d6c68415d1 | ||
|
|
1184b5a2b9 | ||
|
|
b506558754 | ||
|
|
4a08aee090 | ||
|
|
c4a7ac9dc6 | ||
|
|
283a52f843 | ||
|
|
bb2083b2ec | ||
|
|
444ef3f48b | ||
|
|
853e741bfa | ||
|
|
cf55092ba6 | ||
|
|
6488e786e1 | ||
|
|
2260d250d6 | ||
|
|
dcdc93cf06 | ||
|
|
ce5b8c1c91 | ||
|
|
80c93a4e83 | ||
|
|
634077b5b6 | ||
|
|
e4212074fe | ||
|
|
af9bca282d | ||
|
|
4b4b871181 | ||
|
|
3065d95765 | ||
|
|
fe3f7ffdf3 | ||
|
|
2319a6ffb7 | ||
|
|
d2c123e031 | ||
|
|
91d359d5e6 | ||
|
|
4abdce068e | ||
|
|
98b4682bfe | ||
|
|
af2cf43639 | ||
|
|
c29c92dafb | ||
|
|
079f8d13b5 | ||
|
|
8df11acbe8 | ||
|
|
af00e44550 | ||
|
|
19918ef68b | ||
|
|
211c694e4e | ||
|
|
35499cffbc | ||
|
|
9f265c4381 | ||
|
|
2807575283 | ||
|
|
315bda6ba1 | ||
|
|
c5b044d196 | ||
|
|
dbfa14cb51 | ||
|
|
622255d2ec | ||
|
|
f00e26f7ab | ||
|
|
fb7f32589b | ||
|
|
3423bbc0ee | ||
|
|
3d1b18f660 | ||
|
|
d353166b59 | ||
|
|
3d19d65cb6 | ||
|
|
a8d130d5cb | ||
|
|
626d636aae | ||
|
|
0f6a4c624c | ||
|
|
543573fbdb | ||
|
|
211c723f04 | ||
|
|
f3708189ef | ||
|
|
91b828e97c | ||
|
|
a6320bc794 | ||
|
|
f3a7c1164b | ||
|
|
fd93df77aa | ||
|
|
452d36c158 | ||
|
|
26cff34634 | ||
|
|
1021e562d8 | ||
|
|
9d2df38391 | ||
|
|
f3176a25ad | ||
|
|
f92c5aa1e3 | ||
|
|
e0a6a88ba1 | ||
|
|
ae1d7e0866 | ||
|
|
8cc044544e | ||
|
|
368032c931 | ||
|
|
03ba36c593 | ||
|
|
9a6a580953 | ||
|
|
1582ba9438 | ||
|
|
a6a9180aa0 | ||
|
|
8d41834c2a | ||
|
|
28335ca3af | ||
|
|
1e7a2cbbc4 | ||
|
|
250b1a3c53 | ||
|
|
3f25df954f | ||
|
|
7afe62df2a | ||
|
|
b437ccde2f | ||
|
|
abcea88d0a | ||
|
|
3ee6650e6d | ||
|
|
106eec8cdb | ||
|
|
4a97fce841 | ||
|
|
f1d6a990ac | ||
|
|
fce680d981 | ||
|
|
dcb3dccdc8 | ||
|
|
7c8638467e | ||
|
|
1622069063 | ||
|
|
6f750dd83c | ||
|
|
cd5162e39c | ||
|
|
c5b6dcc1e0 | ||
|
|
3e01fc12e4 | ||
|
|
1fb7be7457 | ||
|
|
0d6ccb036e | ||
|
|
7af36eb106 | ||
|
|
1d80955649 | ||
|
|
a50e939123 | ||
|
|
6b2930ab8d | ||
|
|
347761fcad | ||
|
|
2fabaa700b | ||
|
|
68b6192d8c | ||
|
|
0101e8ccb9 | ||
|
|
2da66b504b | ||
|
|
b882065d5e | ||
|
|
0be0fa71d3 | ||
|
|
fe647fe67a | ||
|
|
ee5fa003ee | ||
|
|
19bcf40d31 | ||
|
|
d06d6f7e44 | ||
|
|
b5c4e36a53 | ||
|
|
4382bab64b | ||
|
|
678819d065 | ||
|
|
1dea651d8b | ||
|
|
c29e351afc | ||
|
|
2493e608e8 | ||
|
|
bfb326bd73 | ||
|
|
fabb65995c | ||
|
|
1ca12714e0 | ||
|
|
36717ede61 | ||
|
|
7fc313cc73 | ||
|
|
6794fa1429 | ||
|
|
1097a46669 | ||
|
|
193582c8ae | ||
|
|
aacc2fae9d | ||
|
|
ac99f65188 | ||
|
|
1f9ee368c6 | ||
|
|
4c4da54d99 | ||
|
|
7d51a9b10c | ||
|
|
e9722e8946 | ||
|
|
e03c891703 | ||
|
|
10cfe20e8a | ||
|
|
fd74618b8f | ||
|
|
b72d894a30 | ||
|
|
7ca6f36125 | ||
|
|
877a091fc0 | ||
|
|
6584a3194f | ||
|
|
8fa1831b31 | ||
|
|
a01713c6e6 | ||
|
|
637f745ee7 | ||
|
|
8e89f39979 | ||
|
|
2b0cddb05f | ||
|
|
f780deca62 | ||
|
|
a19304e7e7 | ||
|
|
3d0cc6aeeb | ||
|
|
7588dd03db | ||
|
|
b934fc429d | ||
|
|
07c0c0faf4 | ||
|
|
350e27c32b | ||
|
|
ea50a851f3 | ||
|
|
27958c9f69 | ||
|
|
3383b553d5 | ||
|
|
4245f1070a | ||
|
|
c92d1caf80 | ||
|
|
91e0ec2f83 | ||
|
|
774ca4b3b2 | ||
|
|
bcd9289849 | ||
|
|
0e9ca01c18 | ||
|
|
614ce65871 | ||
|
|
b085a1a2d1 | ||
|
|
715f3d9d27 | ||
|
|
a1fedf98e5 | ||
|
|
249dfa7a92 | ||
|
|
bb09d85d80 | ||
|
|
4f386bb2af | ||
|
|
d98607072c | ||
|
|
93440ae8d1 | ||
|
|
0f5deba5e3 | ||
|
|
e398e4acc5 | ||
|
|
0447bb0413 | ||
|
|
577f8fecfd | ||
|
|
9523f72c97 | ||
|
|
7bcd405f77 | ||
|
|
3ab5862bf1 | ||
|
|
a00ef03ce5 | ||
|
|
95ecc55467 | ||
|
|
db7fdd2a4f | ||
|
|
a2a6cd150f | ||
|
|
26d17e9a3a | ||
|
|
46b988eeea | ||
|
|
4682b5a9a2 | ||
|
|
e2c8b2000f | ||
|
|
ff7ee31497 | ||
|
|
f66dc86e24 | ||
|
|
a2204a3de9 | ||
|
|
4cf8302d4f | ||
|
|
63247f3a9f | ||
|
|
51a1562ea9 | ||
|
|
ece83fd531 | ||
|
|
86cb124894 | ||
|
|
4c55eee55b | ||
|
|
3061654eeb | ||
|
|
bcdbcb2cb7 | ||
|
|
7367bd4a1f | ||
|
|
fd0d644474 | ||
|
|
a054747285 | ||
|
|
2c62f180a9 | ||
|
|
dd4ee44302 | ||
|
|
3a29262256 | ||
|
|
5b3d1cc6e0 | ||
|
|
a55fe939cb | ||
|
|
c1a68a79ee | ||
|
|
8f0cd7e088 | ||
|
|
f656c2b46d | ||
|
|
f05ac3247d | ||
|
|
7e54b80d73 | ||
|
|
d4fd923be5 | ||
|
|
c79d45f91e | ||
|
|
0eab4e7943 | ||
|
|
28e39e46ae | ||
|
|
caa1b94fd6 | ||
|
|
967fd6817a | ||
|
|
f3b5d73533 | ||
|
|
18cf4e7d5d | ||
|
|
56644ac487 | ||
|
|
e6d95e29ee | ||
|
|
8673548c88 | ||
|
|
bd5c10e907 | ||
|
|
2bbe5b04c7 | ||
|
|
498089a8fa | ||
|
|
0a5eb1ae75 | ||
|
|
6dfddf739e | ||
|
|
febb4cc6d5 | ||
|
|
7dfa7412ef | ||
|
|
665ff66217 | ||
|
|
37d36750de | ||
|
|
5850a48ec9 | ||
|
|
1f85da934f | ||
|
|
4948485c50 | ||
|
|
fc668aa9d0 | ||
|
|
f28284fa77 | ||
|
|
cd14dbde58 | ||
|
|
5ee9f46a5a | ||
|
|
73db271c87 | ||
|
|
864470b53c | ||
|
|
1b984abd91 | ||
|
|
b960813ed9 | ||
|
|
d6363d4636 | ||
|
|
42681d8884 | ||
|
|
7da1fd3a41 | ||
|
|
1de449f925 | ||
|
|
e4a3570a77 | ||
|
|
0e83953ac7 | ||
|
|
8e548fb249 | ||
|
|
c3168df04b | ||
|
|
4b915467f2 | ||
|
|
4f53c1e4e4 | ||
|
|
f3f946a649 | ||
|
|
d633f70c45 | ||
|
|
c893a6e829 | ||
|
|
ae55441f44 | ||
|
|
d59dce8a36 | ||
|
|
fa3a438d30 | ||
|
|
c9a69c0c77 | ||
|
|
07cb004ecb | ||
|
|
678ddf9c11 | ||
|
|
618b006350 | ||
|
|
60c423f7cf | ||
|
|
bccef494d7 | ||
|
|
4539ef7bb0 | ||
|
|
abb9a6f66f | ||
|
|
98e5ceb93a | ||
|
|
fa5b4f9ebe | ||
|
|
06b24907b9 | ||
|
|
2f9bec8544 | ||
|
|
43a3a71f72 | ||
|
|
8261a504e4 | ||
|
|
a0c29cdd05 | ||
|
|
4c6cf7da18 | ||
|
|
8cf783bf43 | ||
|
|
55732ccac6 | ||
|
|
33bd39301e | ||
|
|
200706d612 | ||
|
|
891f770d1e | ||
|
|
7b8c84df5a | ||
|
|
f29b137a9e | ||
|
|
e97bdb9ec4 | ||
|
|
1291707e2f | ||
|
|
cdd7b2d44b | ||
|
|
3bc750bfe7 | ||
|
|
a5b041eb6f | ||
|
|
f3dad538f3 | ||
|
|
f61d8fb924 | ||
|
|
e3fd1dfc49 | ||
|
|
d00a6efc41 | ||
|
|
73b5175294 | ||
|
|
94540f828b | ||
|
|
940bb01c12 | ||
|
|
5d2d81d0dd | ||
|
|
48f2d4348d | ||
|
|
16cf1cba98 | ||
|
|
982f594040 | ||
|
|
ea025cedf0 | ||
|
|
70519a53a5 | ||
|
|
551b53e143 | ||
|
|
9f75009f42 | ||
|
|
148710dfd8 | ||
|
|
319042ea19 | ||
|
|
a9a7a7d6b1 | ||
|
|
0bd639cad8 | ||
|
|
febc8eaf73 | ||
|
|
268cdcab19 | ||
|
|
1caf6126c8 | ||
|
|
82ae597a23 | ||
|
|
be82a83f4d | ||
|
|
1e00867697 | ||
|
|
db030f2e72 | ||
|
|
03ed353762 | ||
|
|
d63d62885b | ||
|
|
b23ba74cce | ||
|
|
4150158b8d | ||
|
|
fde331a2c2 | ||
|
|
e40e995f66 | ||
|
|
f706e4eccd | ||
|
|
e5d42a65c7 | ||
|
|
9a5d9f241a | ||
|
|
b3ecf152f0 | ||
|
|
715d3abdb5 | ||
|
|
36eaaafd88 | ||
|
|
c8eccc71a4 | ||
|
|
abc4735b8f | ||
|
|
2fe14dbd9a | ||
|
|
1b9e0dbf41 | ||
|
|
edbfb857f1 | ||
|
|
a94fe86fb9 | ||
|
|
4f5d6ed099 | ||
|
|
e964dd5f74 | ||
|
|
40c18f2a46 | ||
|
|
defae64b65 | ||
|
|
7a7b695c6b | ||
|
|
31178f2212 | ||
|
|
2b8a120a9b | ||
|
|
3742fee9c0 | ||
|
|
a8f48920a4 | ||
|
|
79a4130e1a | ||
|
|
477d48e6c7 | ||
|
|
fcf3499098 | ||
|
|
b3d4397961 | ||
|
|
a6e3d28cc3 | ||
|
|
c1c9e70372 | ||
|
|
b027772787 | ||
|
|
99c6e6c43e | ||
|
|
1d48cf4fdc | ||
|
|
81d4c86368 | ||
|
|
4f6afc72fc | ||
|
|
269e70a086 | ||
|
|
675aaba5d4 | ||
|
|
30dc155526 | ||
|
|
c7a60f5645 | ||
|
|
e439c3e5da | ||
|
|
3a57f9f685 | ||
|
|
4b4537f532 | ||
|
|
80fe8ef62e | ||
|
|
99d859dc08 | ||
|
|
49b4997245 | ||
|
|
2d9cf1e06a | ||
|
|
ff2177fa5e | ||
|
|
18a597617d | ||
|
|
5443d17bf3 | ||
|
|
d31129ee03 | ||
|
|
cf7c68261f | ||
|
|
a59e8e6efd | ||
|
|
f1a33f10ed | ||
|
|
cead87dcd0 | ||
|
|
cb7abb62b8 | ||
|
|
7e005e51cc | ||
|
|
1ed1ce4001 | ||
|
|
8a92d92b22 |
2
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
2
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
@@ -1,7 +1,7 @@
|
||||
name: Bug report
|
||||
description: Create a report to help us improve
|
||||
title: "[Bug] "
|
||||
labels: ["bug"]
|
||||
labels: ["bug, unconfirmed"]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
|
||||
12
.github/workflows/docker-publish.yml
vendored
12
.github/workflows/docker-publish.yml
vendored
@@ -35,7 +35,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
|
||||
# Install the cosign tool except on PR
|
||||
# https://github.com/sigstore/cosign-installer
|
||||
@@ -48,11 +48,11 @@ jobs:
|
||||
# Setup QEMU
|
||||
# https://github.com/marketplace/actions/docker-setup-buildx#with-qemu
|
||||
- name: Setup QEMU
|
||||
uses: docker/setup-qemu-action@v2
|
||||
uses: docker/setup-qemu-action@v3
|
||||
|
||||
# Workaround: https://github.com/docker/build-push-action/issues/461
|
||||
- name: Setup Docker buildx
|
||||
uses: docker/setup-buildx-action@v2
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
# This step is being disabled because the runner is on a self-hosted machine
|
||||
# where the cache will stick between runs.
|
||||
@@ -68,7 +68,7 @@ jobs:
|
||||
# https://github.com/docker/login-action
|
||||
- name: Log into registry ${{ env.REGISTRY }}
|
||||
if: github.event_name != 'pull_request'
|
||||
uses: docker/login-action@v2
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ${{ env.REGISTRY }}
|
||||
username: ${{ github.actor }}
|
||||
@@ -78,7 +78,7 @@ jobs:
|
||||
# https://github.com/docker/metadata-action
|
||||
- name: Extract Docker metadata
|
||||
id: meta
|
||||
uses: docker/metadata-action@v4
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
|
||||
flavor: |
|
||||
@@ -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@v4
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: .
|
||||
push: ${{ github.event_name != 'pull_request' }}
|
||||
|
||||
2
.vscode/launch.json
vendored
2
.vscode/launch.json
vendored
@@ -16,4 +16,4 @@
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -85,6 +85,8 @@ services:
|
||||
volumes:
|
||||
- /path/to/config:/app/config # Make sure your local config directory exists
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro # (optional) For docker integrations
|
||||
# user: 1000:1000 optional, not compatibile with direct socket see https://gethomepage.dev/en/configs/docker/#using-socket-directly
|
||||
restart: unless-stopped
|
||||
```
|
||||
|
||||
or docker run:
|
||||
@@ -141,7 +143,7 @@ pnpm dev
|
||||
|
||||
Open [http://localhost:3000](http://localhost:3000) to start.
|
||||
|
||||
This is a [Next.js](https://nextjs.org/) application, see their doucmentation for more information:
|
||||
This is a [Next.js](https://nextjs.org/) application, see their documentation for more information:
|
||||
|
||||
## Contributors
|
||||
|
||||
|
||||
955
package-lock.json
generated
955
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -16,6 +16,7 @@
|
||||
"compare-versions": "^5.0.1",
|
||||
"dockerode": "^3.3.4",
|
||||
"follow-redirects": "^1.15.2",
|
||||
"gamedig": "^4.1.0",
|
||||
"i18next": "^21.9.2",
|
||||
"js-yaml": "^4.1.0",
|
||||
"json-rpc-2.0": "^1.4.1",
|
||||
@@ -29,10 +30,12 @@
|
||||
"react-dom": "^18.2.0",
|
||||
"react-i18next": "^11.18.6",
|
||||
"react-icons": "^4.4.0",
|
||||
"recharts": "^2.7.2",
|
||||
"shvl": "^3.0.0",
|
||||
"swr": "^1.3.0",
|
||||
"systeminformation": "^5.17.12",
|
||||
"tough-cookie": "^4.1.2",
|
||||
"urbackup-server-api": "^0.8.9",
|
||||
"winston": "^3.8.2",
|
||||
"xml-js": "^1.6.11"
|
||||
},
|
||||
|
||||
668
pnpm-lock.yaml
generated
668
pnpm-lock.yaml
generated
File diff suppressed because it is too large
Load Diff
@@ -23,7 +23,7 @@
|
||||
"free": "متاح",
|
||||
"used": "مستخدم",
|
||||
"load": "الضغط",
|
||||
"mem": "MEM",
|
||||
"mem": "الذاكرة",
|
||||
"temp": "TEMP",
|
||||
"max": "Max",
|
||||
"uptime": "UP",
|
||||
@@ -134,14 +134,15 @@
|
||||
"episodes": "Episodes"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Total Observed",
|
||||
"totalObserved": "مجموع الملاحظات",
|
||||
"diffsDetected": "Diffs Detected"
|
||||
},
|
||||
"tautulli": {
|
||||
"playing": "يشتغل",
|
||||
"transcoding": "التحويل",
|
||||
"bitrate": "معدل البت",
|
||||
"no_active": "No Active Streams"
|
||||
"no_active": "No Active Streams",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"nzbget": {
|
||||
"rate": "معدل",
|
||||
@@ -179,18 +180,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "مطلوب",
|
||||
"queued": "في الإنتظار",
|
||||
"series": "سلسلة"
|
||||
"series": "سلسلة",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "مطلوب",
|
||||
"missing": "مفقود",
|
||||
"queued": "في الإنتظار",
|
||||
"movies": "أفلام"
|
||||
"movies": "أفلام",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "مطلوب",
|
||||
"queued": "في الإنتظار",
|
||||
"albums": "ألبومات"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "مطلوب",
|
||||
@@ -296,12 +301,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "معالج",
|
||||
"mem": "الذاكرة",
|
||||
"wait": "الرجاء الإنتظار",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"quicklaunch": {
|
||||
"bookmark": "مفضلة",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"calibreweb": {
|
||||
"categories": "Categories",
|
||||
"series": "Series",
|
||||
"books": "Books",
|
||||
"authors": "Authors"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"seemsdown": "Seems Down",
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
"missing_type": "Липсваща приставка: {{type}}",
|
||||
"api_error": "API Грешка",
|
||||
"status": "Статус",
|
||||
"information": "Information",
|
||||
"information": "Информация",
|
||||
"url": "URL",
|
||||
"raw_error": "Raw Error",
|
||||
"response_data": "Response Data"
|
||||
@@ -28,7 +28,7 @@
|
||||
"placeholder": "Търсене…"
|
||||
},
|
||||
"resources": {
|
||||
"cpu": "CPU",
|
||||
"cpu": "Процесор",
|
||||
"total": "Общо",
|
||||
"free": "Свободни",
|
||||
"used": "Заети",
|
||||
@@ -54,9 +54,9 @@
|
||||
"wait": "Моля изчакайте",
|
||||
"lan": "LAN",
|
||||
"wlan": "WLAN",
|
||||
"devices": "Devices",
|
||||
"lan_devices": "LAN Devices",
|
||||
"wlan_devices": "WLAN Devices",
|
||||
"devices": "Устройства",
|
||||
"lan_devices": "LAN Устройства",
|
||||
"wlan_devices": "WLAN Устройства",
|
||||
"empty_data": "Subsystem status unknown"
|
||||
},
|
||||
"docker": {
|
||||
@@ -64,8 +64,8 @@
|
||||
"rx": "RX",
|
||||
"tx": "TX",
|
||||
"mem": "MEM",
|
||||
"cpu": "CPU",
|
||||
"error": "Error",
|
||||
"cpu": "Процесор",
|
||||
"error": "Грешка",
|
||||
"unknown": "Unknown",
|
||||
"partial": "Partial",
|
||||
"running": "Running",
|
||||
@@ -89,7 +89,8 @@
|
||||
"playing": "Възпроизвежда",
|
||||
"transcoding": "Конвертира",
|
||||
"bitrate": "Честота",
|
||||
"no_active": "Няма активни потоци"
|
||||
"no_active": "Няма активни потоци",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"nzbget": {
|
||||
"rate": "Rate",
|
||||
@@ -117,54 +118,58 @@
|
||||
"sonarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"series": "Series"
|
||||
"series": "Series",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"movies": "Movies",
|
||||
"missing": "Missing"
|
||||
"movies": "Филми",
|
||||
"missing": "Missing",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"albums": "Albums"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"books": "Books"
|
||||
"books": "Книги"
|
||||
},
|
||||
"bazarr": {
|
||||
"missingEpisodes": "Missing Episodes",
|
||||
"missingMovies": "Missing Movies"
|
||||
"missingEpisodes": "Липсващи Епизоди",
|
||||
"missingMovies": "Липсващи Филми"
|
||||
},
|
||||
"ombi": {
|
||||
"pending": "Pending",
|
||||
"approved": "Approved",
|
||||
"available": "Available"
|
||||
"approved": "Одобрен",
|
||||
"available": "Наличен"
|
||||
},
|
||||
"jellyseerr": {
|
||||
"pending": "Pending",
|
||||
"approved": "Approved",
|
||||
"available": "Available"
|
||||
"approved": "Одобрен",
|
||||
"available": "Наличен"
|
||||
},
|
||||
"overseerr": {
|
||||
"pending": "Pending",
|
||||
"approved": "Approved",
|
||||
"available": "Available",
|
||||
"approved": "Одобрен",
|
||||
"available": "Наличен",
|
||||
"processing": "Processing"
|
||||
},
|
||||
"pihole": {
|
||||
"queries": "Queries",
|
||||
"blocked": "Blocked",
|
||||
"queries": "Заявки",
|
||||
"blocked": "Блокирани",
|
||||
"gravity": "Gravity",
|
||||
"blocked_percent": "Blocked %"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "Queries",
|
||||
"blocked": "Blocked",
|
||||
"filtered": "Filtered",
|
||||
"blocked": "Блокирани",
|
||||
"filtered": "Филтрирани",
|
||||
"latency": "Latency"
|
||||
},
|
||||
"speedtest": {
|
||||
@@ -174,7 +179,7 @@
|
||||
},
|
||||
"portainer": {
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"stopped": "Спрян",
|
||||
"total": "Total"
|
||||
},
|
||||
"traefik": {
|
||||
@@ -183,15 +188,15 @@
|
||||
"middleware": "Middleware"
|
||||
},
|
||||
"npm": {
|
||||
"enabled": "Enabled",
|
||||
"disabled": "Disabled",
|
||||
"enabled": "Активирано",
|
||||
"disabled": "Деактивирано",
|
||||
"total": "Total"
|
||||
},
|
||||
"coinmarketcap": {
|
||||
"configure": "Configure one or more crypto currencies to track",
|
||||
"1hour": "1 Hour",
|
||||
"1day": "1 Day",
|
||||
"7days": "7 Days",
|
||||
"1hour": "1 Час",
|
||||
"1day": "1 Ден",
|
||||
"7days": "7 Дена",
|
||||
"30days": "30 Days"
|
||||
},
|
||||
"gotify": {
|
||||
@@ -234,27 +239,38 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Please wait",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Total Observed",
|
||||
"diffsDetected": "Diffs Detected"
|
||||
},
|
||||
"wmo": {
|
||||
"0-day": "Sunny",
|
||||
"0-day": "Слънчево",
|
||||
"57-day": "Freezing Drizzle",
|
||||
"57-night": "Freezing Drizzle",
|
||||
"96-day": "Thunderstorm With Hail",
|
||||
"96-night": "Thunderstorm With Hail",
|
||||
"0-night": "Clear",
|
||||
"1-day": "Mainly Sunny",
|
||||
"1-night": "Mainly Clear",
|
||||
"2-day": "Partly Cloudy",
|
||||
"0-night": "Ясно",
|
||||
"1-day": "Предимно Слънчево",
|
||||
"1-night": "Предимно Ясно",
|
||||
"2-day": "Частична Облачност",
|
||||
"2-night": "Partly Cloudy",
|
||||
"3-day": "Cloudy",
|
||||
"3-night": "Cloudy",
|
||||
@@ -347,7 +363,7 @@
|
||||
},
|
||||
"navidrome": {
|
||||
"nothing_streaming": "No Active Streams",
|
||||
"please_wait": "Please Wait"
|
||||
"please_wait": "Моля Изчакайте"
|
||||
},
|
||||
"pyload": {
|
||||
"speed": "Speed",
|
||||
@@ -366,7 +382,7 @@
|
||||
},
|
||||
"ping": {
|
||||
"ping": "Ping",
|
||||
"error": "Error"
|
||||
"error": "Грешка"
|
||||
},
|
||||
"scrutiny": {
|
||||
"passed": "Passed",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -628,5 +646,92 @@
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,7 +26,9 @@
|
||||
"sonarr": {
|
||||
"wanted": "Volgut",
|
||||
"queued": "En cua",
|
||||
"series": "Sèries"
|
||||
"series": "Sèries",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"speedtest": {
|
||||
"ping": "Ping",
|
||||
@@ -78,7 +80,8 @@
|
||||
"playing": "Reproduint",
|
||||
"transcoding": "Transcodificant",
|
||||
"bitrate": "Taxa de bits",
|
||||
"no_active": "Sense transmissions actives"
|
||||
"no_active": "Sense transmissions actives",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"nzbget": {
|
||||
"rate": "Taxa",
|
||||
@@ -99,7 +102,9 @@
|
||||
"wanted": "Volgut",
|
||||
"queued": "En cua",
|
||||
"movies": "Pel·lícules",
|
||||
"missing": "Faltant"
|
||||
"missing": "Faltant",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Volgut",
|
||||
@@ -173,7 +178,7 @@
|
||||
"lidarr": {
|
||||
"wanted": "Volgut",
|
||||
"queued": "En cua",
|
||||
"albums": "Àlbums"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "Consultes",
|
||||
@@ -234,12 +239,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "Processador",
|
||||
"mem": "Memòria",
|
||||
"wait": "Si us plau, espereu",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Total d'observats",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"totalUsed": "Used Storage",
|
||||
"noRecent": "Out of Date"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -46,8 +46,8 @@
|
||||
},
|
||||
"unifi": {
|
||||
"users": "Uživatelé",
|
||||
"uptime": "Doba provozu systému",
|
||||
"days": "Dnů",
|
||||
"uptime": "Doba provozu",
|
||||
"days": "dní",
|
||||
"wan": "WAN",
|
||||
"lan": "LAN",
|
||||
"wlan": "WLAN",
|
||||
@@ -56,8 +56,8 @@
|
||||
"wlan_devices": "Zařízení WLAN",
|
||||
"lan_users": "Uživatelé LAN",
|
||||
"wlan_users": "Uživatelé WLAN",
|
||||
"up": "BĚŽÍ",
|
||||
"down": "NEBĚŽÍ",
|
||||
"up": "FUNKČNÍ",
|
||||
"down": "NEFUNKČNÍ",
|
||||
"wait": "Počkejte prosím",
|
||||
"empty_data": "Stav podsystému neznámý"
|
||||
},
|
||||
@@ -95,7 +95,8 @@
|
||||
"playing": "Přehrává",
|
||||
"transcoding": "Překódovávání",
|
||||
"bitrate": "Přenosová rychlost",
|
||||
"no_active": "Žádný aktivní stream"
|
||||
"no_active": "Žádný aktivní stream",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"nzbget": {
|
||||
"rate": "Rychlost",
|
||||
@@ -133,18 +134,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "Hledané",
|
||||
"queued": "Ve frontě",
|
||||
"series": "Seriály"
|
||||
"series": "Seriály",
|
||||
"unknown": "Unknown",
|
||||
"queue": "Queue"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Hledané",
|
||||
"missing": "Chybějící",
|
||||
"queued": "Ve frontě",
|
||||
"movies": "Filmy"
|
||||
"movies": "Filmy",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Hledané",
|
||||
"queued": "Ve frontě",
|
||||
"albums": "Alba"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Hledané",
|
||||
@@ -308,12 +313,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "RAM",
|
||||
"wait": "Prosím počkejte",
|
||||
"temp": "TEPLOTA",
|
||||
"uptime": "BĚŽÍ",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"quicklaunch": {
|
||||
"bookmark": "Záložka",
|
||||
@@ -325,7 +341,7 @@
|
||||
},
|
||||
"homebridge": {
|
||||
"update_available": "Dostupná",
|
||||
"up_to_date": "Všechno aktuální",
|
||||
"up_to_date": "Žádné",
|
||||
"available_update": "Systém",
|
||||
"updates": "Aktualizace",
|
||||
"child_bridges": "Podřízené můstky",
|
||||
@@ -604,7 +620,9 @@
|
||||
"memUsage": "Využití paměti",
|
||||
"systemTempC": "Teplota systému",
|
||||
"poolUsage": "Využití fondu",
|
||||
"cpuUsage": "Využití procesoru"
|
||||
"cpuUsage": "Využití procesoru",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Prům. zatížení",
|
||||
@@ -628,5 +646,92 @@
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"name": "Name",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,12 +9,14 @@
|
||||
"queued": "I Kø",
|
||||
"movies": "Film",
|
||||
"wanted": "Ønskede",
|
||||
"missing": "Mangler"
|
||||
"missing": "Mangler",
|
||||
"queue": "Kø",
|
||||
"unknown": "Ukendt"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Ønsket",
|
||||
"queued": "I Kø",
|
||||
"albums": "Albums"
|
||||
"artists": "Artister"
|
||||
},
|
||||
"jellyseerr": {
|
||||
"available": "Tilgængelig",
|
||||
@@ -25,13 +27,13 @@
|
||||
"pending": "Afventer",
|
||||
"approved": "Godkendt",
|
||||
"available": "Tilgængelig",
|
||||
"processing": "Processing"
|
||||
"processing": "Behandler"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "Forespørgsler",
|
||||
"blocked": "Blokerede",
|
||||
"filtered": "Filtreret",
|
||||
"latency": "Latency"
|
||||
"latency": "Latenstid"
|
||||
},
|
||||
"speedtest": {
|
||||
"upload": "Upload",
|
||||
@@ -46,7 +48,7 @@
|
||||
"coinmarketcap": {
|
||||
"30days": "30 Dage",
|
||||
"1day": "1 Dag",
|
||||
"configure": "Konfigurer en eller flere crypto valutaer til tracking",
|
||||
"configure": "Konfigurer en eller flere crypto valutaer til tracking",
|
||||
"7days": "7 Dage",
|
||||
"1hour": "1 time"
|
||||
},
|
||||
@@ -68,60 +70,71 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "RAM",
|
||||
"wait": "Vent venligst",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h",
|
||||
"temp": "TEMP"
|
||||
"hours": "t",
|
||||
"temp": "TEMP",
|
||||
"load": "Load",
|
||||
"warn": "Advar",
|
||||
"total": "Total",
|
||||
"free": "Ledig",
|
||||
"used": "Brugt",
|
||||
"crit": "Crit",
|
||||
"read": "Læs",
|
||||
"write": "Skriv",
|
||||
"gpu": "GPU",
|
||||
"mem": "Ram",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"wmo": {
|
||||
"1-day": "Hovedsageligt solrigt",
|
||||
"1-day": "Overvejende Solrigt",
|
||||
"48-day": "Tåget",
|
||||
"48-night": "Tåget",
|
||||
"51-day": "Let støvregn",
|
||||
"51-night": "Let støvregn",
|
||||
"66-night": "Frysende regn",
|
||||
"67-day": "Frysende regn",
|
||||
"67-night": "Frysende regn",
|
||||
"51-day": "Let Støvregn",
|
||||
"51-night": "Let Støvregn",
|
||||
"66-night": "Frysende Regn",
|
||||
"67-day": "Frysende Regn",
|
||||
"67-night": "Frysende Regn",
|
||||
"71-day": "Let Sne",
|
||||
"75-night": "Kraftig Sne",
|
||||
"86-day": "Snebyger",
|
||||
"86-night": "Snebyger",
|
||||
"95-day": "Tordenvejr",
|
||||
"99-day": "Tordenvejr med hagl",
|
||||
"99-night": "Tordenvejr med hagl",
|
||||
"99-day": "Tordenvejr Med Hagl",
|
||||
"99-night": "Tordenvejr Med Hagl",
|
||||
"0-day": "Solrig",
|
||||
"0-night": "Klart",
|
||||
"1-night": "Hovedsageligt klart",
|
||||
"2-day": "Delvist skyet",
|
||||
"2-night": "Delvist skyet",
|
||||
"1-night": "Overvejende Skyfrit",
|
||||
"2-day": "Delvist Overskyet",
|
||||
"2-night": "Delvist Overskyet",
|
||||
"3-day": "Skyet",
|
||||
"3-night": "Skyet",
|
||||
"45-day": "Tåget",
|
||||
"65-day": "Kraftig regn",
|
||||
"65-night": "Kraftig regn",
|
||||
"65-day": "Kraftig Regn",
|
||||
"65-night": "Kraftig Regn",
|
||||
"45-night": "Tåget",
|
||||
"53-day": "Støvregn",
|
||||
"53-night": "Støvregn",
|
||||
"55-day": "Kraftig støvregn",
|
||||
"55-night": "Kraftig støvregn",
|
||||
"56-day": "Let frysende støvregn",
|
||||
"56-night": "Let frysende støvregn",
|
||||
"57-day": "Frysende støvregn",
|
||||
"57-night": "Frysende støvregn",
|
||||
"55-day": "Kraftig Støvregn",
|
||||
"55-night": "Kraftig Støvregn",
|
||||
"56-day": "Let Frysende Støvregn",
|
||||
"56-night": "Let Frysende Støvregn",
|
||||
"57-day": "Frysende Støvregn",
|
||||
"57-night": "Frysende Støvregn",
|
||||
"61-day": "Let Regn",
|
||||
"61-night": "Let Regn",
|
||||
"63-day": "Regn",
|
||||
"63-night": "Regn",
|
||||
"66-day": "Frysende regn",
|
||||
"66-day": "Frysende Regn",
|
||||
"71-night": "Let Sne",
|
||||
"73-day": "Sne",
|
||||
"73-night": "Sne",
|
||||
"75-day": "Kraftig Sne",
|
||||
"77-day": "Snekorn",
|
||||
"80-day": "Lette byger",
|
||||
"80-night": "Lette byger",
|
||||
"80-day": "Lette Byger",
|
||||
"80-night": "Lette Byger",
|
||||
"81-day": "Byger",
|
||||
"77-night": "Snekorn",
|
||||
"81-night": "Byger",
|
||||
@@ -130,19 +143,19 @@
|
||||
"85-day": "Snebyger",
|
||||
"85-night": "Snebyger",
|
||||
"95-night": "Tordenvejr",
|
||||
"96-day": "Tordenvejr med hagl",
|
||||
"96-night": "Tordenvejr med hagl"
|
||||
"96-day": "Tordenvejr Med Hagl",
|
||||
"96-night": "Tordenvejr Med Hagl"
|
||||
},
|
||||
"homebridge": {
|
||||
"available_update": "System",
|
||||
"updates": "Opdateringer",
|
||||
"update_available": "Opdateringer tilgængelige",
|
||||
"update_available": "Opdateringer Tilgængelige",
|
||||
"up_to_date": "Opdateret",
|
||||
"child_bridges": "Child Bridges",
|
||||
"child_bridges_status": "{{ok}}/{{total}}",
|
||||
"up": "Up",
|
||||
"pending": "Pending",
|
||||
"down": "Down"
|
||||
"up": "Oppe",
|
||||
"pending": "Afventer",
|
||||
"down": "Nede"
|
||||
},
|
||||
"widget": {
|
||||
"missing_type": "Manglende Widget Type: {{type}}",
|
||||
@@ -150,8 +163,8 @@
|
||||
"status": "Status",
|
||||
"information": "Information",
|
||||
"url": "URL",
|
||||
"raw_error": "Raw Error",
|
||||
"response_data": "Response Data"
|
||||
"raw_error": "Rå Fejl",
|
||||
"response_data": "Svardata"
|
||||
},
|
||||
"weather": {
|
||||
"current": "Nuværende lokation",
|
||||
@@ -168,13 +181,13 @@
|
||||
"free": "Fri",
|
||||
"used": "Brugt",
|
||||
"load": "Belastning",
|
||||
"mem": "MEM",
|
||||
"hours": "h",
|
||||
"mem": "RAM",
|
||||
"hours": "t",
|
||||
"minutes": "m",
|
||||
"temp": "TEMP",
|
||||
"max": "Max",
|
||||
"uptime": "UP",
|
||||
"months": "mo",
|
||||
"months": "mdr",
|
||||
"days": "d"
|
||||
},
|
||||
"unifi": {
|
||||
@@ -192,7 +205,7 @@
|
||||
"up": "Oppe",
|
||||
"down": "NED",
|
||||
"wait": "Vent venligst",
|
||||
"empty_data": "Subsystem status unknown"
|
||||
"empty_data": "Subsystem status ukendt"
|
||||
},
|
||||
"docker": {
|
||||
"cpu": "CPU",
|
||||
@@ -201,24 +214,24 @@
|
||||
"mem": "RAM",
|
||||
"offline": "Offline",
|
||||
"error": "Error",
|
||||
"unknown": "Unknown",
|
||||
"running": "Running",
|
||||
"starting": "Starting",
|
||||
"unhealthy": "Unhealthy",
|
||||
"not_found": "Not Found",
|
||||
"exited": "Exited",
|
||||
"partial": "Partial",
|
||||
"healthy": "Healthy"
|
||||
"unknown": "Ukendt",
|
||||
"running": "Kører",
|
||||
"starting": "Starter",
|
||||
"unhealthy": "Usund",
|
||||
"not_found": "Ikke Fundet",
|
||||
"exited": "Forladt",
|
||||
"partial": "Delvis",
|
||||
"healthy": "Sund"
|
||||
},
|
||||
"emby": {
|
||||
"playing": "Afspiller",
|
||||
"transcoding": "Transcoder",
|
||||
"bitrate": "Bitrate",
|
||||
"no_active": "Ingen Aktive Streams",
|
||||
"movies": "Movies",
|
||||
"series": "Series",
|
||||
"episodes": "Episodes",
|
||||
"songs": "Songs"
|
||||
"movies": "Film",
|
||||
"series": "Serier",
|
||||
"episodes": "Episoder",
|
||||
"songs": "Sange"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Total Observeret",
|
||||
@@ -228,7 +241,8 @@
|
||||
"playing": "Afspiller",
|
||||
"transcoding": "Transcoder",
|
||||
"bitrate": "Bitrate",
|
||||
"no_active": "Ingen Aktive Streams"
|
||||
"no_active": "Ingen Aktive Streams",
|
||||
"plex_connection_error": "Tjek Plex-forbindelse"
|
||||
},
|
||||
"nzbget": {
|
||||
"rate": "Rate",
|
||||
@@ -260,7 +274,9 @@
|
||||
"sonarr": {
|
||||
"wanted": "Ønsket",
|
||||
"queued": "I Kø",
|
||||
"series": "Serier"
|
||||
"series": "Serier",
|
||||
"queue": "Kø",
|
||||
"unknown": "Ukendt"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Ønskede",
|
||||
@@ -280,7 +296,7 @@
|
||||
"blocked": "Blokerede",
|
||||
"gravity": "Gravity",
|
||||
"queries": "Forespørgsler",
|
||||
"blocked_percent": "Blocked %"
|
||||
"blocked_percent": "Blokeret %"
|
||||
},
|
||||
"portainer": {
|
||||
"running": "Kørende",
|
||||
@@ -301,8 +317,8 @@
|
||||
"enableIndexers": "Indeksører",
|
||||
"numberOfGrabs": "Grabs",
|
||||
"numberOfQueries": "Forespørgsler",
|
||||
"numberOfFailGrabs": "Fail Grabs",
|
||||
"numberOfFailQueries": "Fejl forespørgsler"
|
||||
"numberOfFailGrabs": "Fejl Grabs",
|
||||
"numberOfFailQueries": "Fejl Forespørgsler"
|
||||
},
|
||||
"jackett": {
|
||||
"configured": "Konfigureret",
|
||||
@@ -317,9 +333,9 @@
|
||||
"quicklaunch": {
|
||||
"bookmark": "Bogmærker",
|
||||
"service": "Service",
|
||||
"search": "Search",
|
||||
"custom": "Custom",
|
||||
"visit": "Visit",
|
||||
"search": "Søg",
|
||||
"custom": "Brugerdefinerede",
|
||||
"visit": "Besøg",
|
||||
"url": "URL"
|
||||
},
|
||||
"watchtower": {
|
||||
@@ -356,25 +372,25 @@
|
||||
"total": "Total"
|
||||
},
|
||||
"gluetun": {
|
||||
"public_ip": "Public IP",
|
||||
"public_ip": "Offentlig IP",
|
||||
"region": "Region",
|
||||
"country": "Country"
|
||||
"country": "Land"
|
||||
},
|
||||
"hdhomerun": {
|
||||
"channels": "Channels",
|
||||
"channels": "Kanaler",
|
||||
"hd": "HD"
|
||||
},
|
||||
"ping": {
|
||||
"error": "Error",
|
||||
"error": "Fejl",
|
||||
"ping": "Ping"
|
||||
},
|
||||
"scrutiny": {
|
||||
"passed": "Passed",
|
||||
"failed": "Failed",
|
||||
"unknown": "Unknown"
|
||||
"passed": "Bestået",
|
||||
"failed": "Mislykket",
|
||||
"unknown": "Ukendt"
|
||||
},
|
||||
"paperlessngx": {
|
||||
"inbox": "Inbox",
|
||||
"inbox": "Indbakke",
|
||||
"total": "Total"
|
||||
},
|
||||
"deluge": {
|
||||
@@ -390,29 +406,29 @@
|
||||
"seed": "Seed"
|
||||
},
|
||||
"tdarr": {
|
||||
"queue": "Queue",
|
||||
"processed": "Processed",
|
||||
"errored": "Errored",
|
||||
"saved": "Saved"
|
||||
"queue": "Kø",
|
||||
"processed": "Behandlet",
|
||||
"errored": "Fejlet",
|
||||
"saved": "Gemt"
|
||||
},
|
||||
"miniflux": {
|
||||
"read": "Read",
|
||||
"unread": "Unread"
|
||||
"read": "Læst",
|
||||
"unread": "Ulæst"
|
||||
},
|
||||
"nextdns": {
|
||||
"wait": "Please Wait",
|
||||
"no_devices": "No Device Data Received"
|
||||
"wait": "Vent Venligst",
|
||||
"no_devices": "Ingen Enhedsdata Modtaget"
|
||||
},
|
||||
"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": "Forbundne APs",
|
||||
"activeUser": "Aktive enheder",
|
||||
"alerts": "Advarsler",
|
||||
"connectedGateway": "Forbundne gateways",
|
||||
"connectedSwitches": "Forbundne switches"
|
||||
},
|
||||
"downloadstation": {
|
||||
"download": "Download",
|
||||
@@ -421,212 +437,301 @@
|
||||
"seed": "Seed"
|
||||
},
|
||||
"mikrotik": {
|
||||
"cpuLoad": "CPU Load",
|
||||
"memoryUsed": "Memory Used",
|
||||
"uptime": "Uptime",
|
||||
"cpuLoad": "CPU Belastning",
|
||||
"memoryUsed": "Hukommelse Brugt",
|
||||
"uptime": "Oppetid",
|
||||
"numberOfLeases": "Leases"
|
||||
},
|
||||
"xteve": {
|
||||
"streams_all": "All Streams",
|
||||
"streams_active": "Active Streams",
|
||||
"streams_xepg": "XEPG Channels"
|
||||
"streams_all": "Alle Streams",
|
||||
"streams_active": "Aktive Streams",
|
||||
"streams_xepg": "XEPG Kanaler"
|
||||
},
|
||||
"opnsense": {
|
||||
"cpu": "CPU Load",
|
||||
"memory": "Active Memory",
|
||||
"cpu": "CPU Belastning",
|
||||
"memory": "Aktiv Hukommelse",
|
||||
"wanUpload": "WAN Upload",
|
||||
"wanDownload": "WAN Download"
|
||||
},
|
||||
"moonraker": {
|
||||
"printer_state": "Printer State",
|
||||
"printer_state": "Printer Tilstand",
|
||||
"print_status": "Print Status",
|
||||
"print_progress": "Progress",
|
||||
"layers": "Layers"
|
||||
"print_progress": "Fremskridt",
|
||||
"layers": "Lag"
|
||||
},
|
||||
"medusa": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"series": "Series"
|
||||
"wanted": "Ønskede",
|
||||
"queued": "I Kø",
|
||||
"series": "Serier"
|
||||
},
|
||||
"octoprint": {
|
||||
"printer_state": "Status",
|
||||
"temp_tool": "Tool temp",
|
||||
"temp_bed": "Bed temp",
|
||||
"job_completion": "Completion"
|
||||
"job_completion": "Færdiggørelse"
|
||||
},
|
||||
"cloudflared": {
|
||||
"origin_ip": "Origin IP",
|
||||
"origin_ip": "Oprindelses-IP",
|
||||
"status": "Status"
|
||||
},
|
||||
"proxmoxbackupserver": {
|
||||
"datastore_usage": "Datastore",
|
||||
"failed_tasks_24h": "Failed Tasks 24h",
|
||||
"datastore_usage": "Datalager",
|
||||
"failed_tasks_24h": "Mislykkede Opgaver 24t",
|
||||
"cpu_usage": "CPU",
|
||||
"memory_usage": "Memory"
|
||||
"memory_usage": "Hukommelse"
|
||||
},
|
||||
"immich": {
|
||||
"users": "Users",
|
||||
"photos": "Photos",
|
||||
"videos": "Videos",
|
||||
"storage": "Storage"
|
||||
"users": "Brugere",
|
||||
"photos": "Billeder",
|
||||
"videos": "Videoer",
|
||||
"storage": "Lager"
|
||||
},
|
||||
"uptimekuma": {
|
||||
"up": "Sites Up",
|
||||
"down": "Sites Down",
|
||||
"uptime": "Uptime",
|
||||
"incident": "Incident",
|
||||
"up": "Sider Oppe",
|
||||
"down": "Sider Nede",
|
||||
"uptime": "Oppetid",
|
||||
"incident": "Hændelse",
|
||||
"m": "m"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
"books": "Books"
|
||||
"libraries": "Biblioteker",
|
||||
"series": "Serier",
|
||||
"books": "Bøger"
|
||||
},
|
||||
"mylar": {
|
||||
"series": "Series",
|
||||
"issues": "Issues",
|
||||
"wanted": "Wanted"
|
||||
"series": "Serier",
|
||||
"issues": "Problemer",
|
||||
"wanted": "Ønskede"
|
||||
},
|
||||
"photoprism": {
|
||||
"albums": "Albums",
|
||||
"photos": "Photos",
|
||||
"videos": "Videos",
|
||||
"people": "People"
|
||||
"photos": "Billeder",
|
||||
"videos": "Videoer",
|
||||
"people": "Mennesker"
|
||||
},
|
||||
"diskstation": {
|
||||
"days": "Days",
|
||||
"uptime": "Uptime",
|
||||
"volumeAvailable": "Available"
|
||||
"days": "Dage",
|
||||
"uptime": "Oppetid",
|
||||
"volumeAvailable": "Tilgængelig"
|
||||
},
|
||||
"fileflows": {
|
||||
"queue": "Queue",
|
||||
"processing": "Processing",
|
||||
"processed": "Processed",
|
||||
"time": "Time"
|
||||
"queue": "Kø",
|
||||
"processing": "Behandler",
|
||||
"processed": "Behandlet",
|
||||
"time": "Tid"
|
||||
},
|
||||
"grafana": {
|
||||
"totalalerts": "Total Alerts",
|
||||
"totalalerts": "Totale Advarsler",
|
||||
"dashboards": "Dashboards",
|
||||
"datasources": "Data Sources",
|
||||
"alertstriggered": "Alerts Triggered"
|
||||
"datasources": "Data Kilder",
|
||||
"alertstriggered": "Advarsler Udløst"
|
||||
},
|
||||
"nextcloud": {
|
||||
"memoryusage": "Memory Usage",
|
||||
"cpuload": "Cpu Load",
|
||||
"freespace": "Free Space",
|
||||
"activeusers": "Active Users",
|
||||
"numfiles": "Files",
|
||||
"numshares": "Shared Items"
|
||||
"memoryusage": "Hukommelse Forbrug",
|
||||
"cpuload": "Cpu Belastning",
|
||||
"freespace": "Ledig Plads",
|
||||
"activeusers": "Aktive Brugere",
|
||||
"numfiles": "Filer",
|
||||
"numshares": "Delte Genstande"
|
||||
},
|
||||
"kopia": {
|
||||
"status": "Status",
|
||||
"size": "Size",
|
||||
"lastrun": "Last Run",
|
||||
"nextrun": "Next Run",
|
||||
"failed": "Failed"
|
||||
"size": "Størrelse",
|
||||
"lastrun": "Sidst Kørt",
|
||||
"nextrun": "Næste Kørsel",
|
||||
"failed": "Mislykket"
|
||||
},
|
||||
"unmanic": {
|
||||
"active_workers": "Active Workers",
|
||||
"total_workers": "Total Workers",
|
||||
"records_total": "Queue Length"
|
||||
"active_workers": "Aktive Arbejdere",
|
||||
"total_workers": "Totale Arbejdere",
|
||||
"records_total": "Kø Længde"
|
||||
},
|
||||
"healthchecks": {
|
||||
"new": "New",
|
||||
"new": "Ny",
|
||||
"up": "Online",
|
||||
"grace": "In Grace Period",
|
||||
"down": "Offline",
|
||||
"paused": "Paused",
|
||||
"paused": "Pause",
|
||||
"status": "Status",
|
||||
"last_ping": "Last Ping",
|
||||
"never": "No pings yet"
|
||||
"last_ping": "Sidste Ping",
|
||||
"never": "Ingen Pings Endnu"
|
||||
},
|
||||
"pterodactyl": {
|
||||
"servers": "Servers",
|
||||
"nodes": "Nodes"
|
||||
"servers": "Servere",
|
||||
"nodes": "Noder"
|
||||
},
|
||||
"prometheus": {
|
||||
"targets_up": "Targets Up",
|
||||
"targets_down": "Targets Down",
|
||||
"targets_total": "Total Targets"
|
||||
"targets_up": "Mål Oppe",
|
||||
"targets_down": "Mål Nede",
|
||||
"targets_total": "Totale Mål"
|
||||
},
|
||||
"minecraft": {
|
||||
"players": "Players",
|
||||
"players": "Afspillere",
|
||||
"version": "Version",
|
||||
"status": "Status",
|
||||
"up": "Online",
|
||||
"down": "Offline"
|
||||
},
|
||||
"ghostfolio": {
|
||||
"gross_percent_today": "Today",
|
||||
"gross_percent_1y": "One year",
|
||||
"gross_percent_max": "All time"
|
||||
"gross_percent_today": "I Dag",
|
||||
"gross_percent_1y": "Et År",
|
||||
"gross_percent_max": "Altid"
|
||||
},
|
||||
"audiobookshelf": {
|
||||
"booksDuration": "Duration",
|
||||
"booksDuration": "Varighed",
|
||||
"podcasts": "Podcasts",
|
||||
"books": "Books",
|
||||
"podcastsDuration": "Duration"
|
||||
"books": "Bøger",
|
||||
"podcastsDuration": "Varighed"
|
||||
},
|
||||
"homeassistant": {
|
||||
"people_home": "People Home",
|
||||
"lights_on": "Lights On",
|
||||
"switches_on": "Switches On"
|
||||
"people_home": "Personer Hjemme",
|
||||
"lights_on": "Lys Tændt",
|
||||
"switches_on": "Kontakter Tændt"
|
||||
},
|
||||
"freshrss": {
|
||||
"subscriptions": "Subscriptions",
|
||||
"unread": "Unread"
|
||||
"subscriptions": "Abonnementer",
|
||||
"unread": "Ulæst"
|
||||
},
|
||||
"channelsdvrserver": {
|
||||
"shows": "Shows",
|
||||
"recordings": "Recordings",
|
||||
"scheduled": "Scheduled",
|
||||
"recordings": "Optagelser",
|
||||
"scheduled": "Planlagt",
|
||||
"passes": "Passes"
|
||||
},
|
||||
"whatsupdocker": {
|
||||
"monitoring": "Monitoring",
|
||||
"updates": "Updates"
|
||||
"monitoring": "Overvåger",
|
||||
"updates": "Opdateringer"
|
||||
},
|
||||
"tailscale": {
|
||||
"address": "Address",
|
||||
"expires": "Expires",
|
||||
"now": "Now",
|
||||
"address": "Adresse",
|
||||
"expires": "Udløber",
|
||||
"now": "Nu",
|
||||
"years": "{{number}}y",
|
||||
"weeks": "{{number}}w",
|
||||
"days": "{{number}}d",
|
||||
"hours": "{{number}}h",
|
||||
"minutes": "{{number}}m",
|
||||
"seconds": "{{number}}s",
|
||||
"never": "Never",
|
||||
"last_seen": "Last Seen",
|
||||
"ago": "{{value}} Ago"
|
||||
"never": "Aldrig",
|
||||
"last_seen": "Sidst Set",
|
||||
"ago": "{{value}} Siden"
|
||||
},
|
||||
"qnap": {
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"cpuUsage": "CPU Forbrug",
|
||||
"memUsage": "MEM Forbrug",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Forbrug",
|
||||
"volumeUsage": "Volume Forbrug",
|
||||
"invalid": "Ugyldig"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
"memory": "Mem Usage",
|
||||
"load": "Belastning Gns",
|
||||
"memory": "Hukommelse Forbrug",
|
||||
"wanStatus": "WAN Status",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"up": "Op",
|
||||
"down": "Ned",
|
||||
"temp": "Temp",
|
||||
"disk": "Disk Usage",
|
||||
"disk": "Disk Forbrug",
|
||||
"wanIP": "WAN IP"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Upstreams",
|
||||
"requests": "Current requests",
|
||||
"requests_failed": "Failed requests"
|
||||
"requests": "Aktuelle anmodninger",
|
||||
"requests_failed": "Mislykkede anmodninger"
|
||||
},
|
||||
"evcc": {
|
||||
"pv_power": "Production",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"pv_power": "Produktion",
|
||||
"battery_soc": "Batteri",
|
||||
"grid_power": "Gitter",
|
||||
"home_power": "Forbrug",
|
||||
"charge_power": "Oplader",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Forbundet",
|
||||
"new_devices": "Nye Enheder",
|
||||
"down_alerts": "Nedadvarsler"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadSpeed": "Hastighed",
|
||||
"downloadCount": "Kø",
|
||||
"downloadBytesRemaining": "Tilbage",
|
||||
"downloadTotalBytes": "Størrelse"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Serier",
|
||||
"totalFiles": "Filer"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Navn",
|
||||
"map": "Kort",
|
||||
"currentPlayers": "Nuværende Spillere",
|
||||
"players": "Spillere",
|
||||
"maxPlayers": "Maks spillere",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Resultat",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Lykkedes",
|
||||
"notStarted": "Ikke Startet",
|
||||
"failed": "Mislykket",
|
||||
"canceled": "Annulleret",
|
||||
"inProgress": "I Gang",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "Mine PRs",
|
||||
"approved": "Godkendt"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Fejl",
|
||||
"noRecent": "Uddateret",
|
||||
"totalUsed": "Brugt Lager"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloader",
|
||||
"total": "Total",
|
||||
"running": "Kører",
|
||||
"stopped": "Stoppet",
|
||||
"passed": "Gennemført",
|
||||
"failed": "Mislykket"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Opskrifter",
|
||||
"users": "Brugere",
|
||||
"categories": "Kategorier",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Serier",
|
||||
"archives": "Arkiver",
|
||||
"chapters": "Kapitler",
|
||||
"categories": "Kategorier"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Bøger",
|
||||
"authors": "Forfattere",
|
||||
"categories": "Kategorier",
|
||||
"series": "Serier"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
"offline": "Offline",
|
||||
"error": "Fehler",
|
||||
"unknown": "Unbekannt",
|
||||
"running": "Laufend",
|
||||
"running": "Wird ausgeführt",
|
||||
"starting": "Startet",
|
||||
"unhealthy": "Unhealthy",
|
||||
"not_found": "Nicht gefunden",
|
||||
@@ -48,7 +48,7 @@
|
||||
"bitrate": "Bitrate",
|
||||
"no_active": "Keine aktiven Streams",
|
||||
"movies": "Filme",
|
||||
"series": "Serien",
|
||||
"series": "Serie",
|
||||
"episodes": "Folgen",
|
||||
"songs": "Songs"
|
||||
},
|
||||
@@ -56,7 +56,8 @@
|
||||
"playing": "Spielen",
|
||||
"transcoding": "Transcodierung",
|
||||
"bitrate": "Bitrate",
|
||||
"no_active": "Keine aktiven Streams"
|
||||
"no_active": "Keine aktiven Streams",
|
||||
"plex_connection_error": "Plex-Verbindung prüfen"
|
||||
},
|
||||
"rutorrent": {
|
||||
"active": "Aktiv",
|
||||
@@ -66,13 +67,17 @@
|
||||
"sonarr": {
|
||||
"wanted": "Gesucht",
|
||||
"queued": "In Warteschlange",
|
||||
"series": "Serien"
|
||||
"series": "Serie",
|
||||
"queue": "Warteschlange",
|
||||
"unknown": "Unbekannt"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Gesucht",
|
||||
"queued": "In Warteschlange",
|
||||
"movies": "Filme",
|
||||
"missing": "Fehlt"
|
||||
"missing": "Fehlt",
|
||||
"queue": "Warteschlange",
|
||||
"unknown": "Unbekannt"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Gesucht",
|
||||
@@ -101,7 +106,7 @@
|
||||
"ping": "Ping"
|
||||
},
|
||||
"portainer": {
|
||||
"running": "Betrieb",
|
||||
"running": "Wird ausgeführt",
|
||||
"stopped": "Gestoppt",
|
||||
"total": "Gesamt"
|
||||
},
|
||||
@@ -173,7 +178,7 @@
|
||||
"lidarr": {
|
||||
"wanted": "Gesucht",
|
||||
"queued": "In Warteschlange",
|
||||
"albums": "Alben"
|
||||
"artists": "Künstler"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "Anfragen",
|
||||
@@ -234,12 +239,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "Prozessor",
|
||||
"mem": "RAM",
|
||||
"wait": "Bitte warten",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "T",
|
||||
"hours": "S"
|
||||
"hours": "S",
|
||||
"load": "Auslastung",
|
||||
"warn": "Warnung",
|
||||
"total": "Gesamt",
|
||||
"free": "Frei",
|
||||
"used": "Verwendet",
|
||||
"write": "Schreiben",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Auslagerung",
|
||||
"crit": "Krit",
|
||||
"read": "Lesen",
|
||||
"_temp": "Temperatur"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Gesamt beobachtet",
|
||||
@@ -423,7 +439,7 @@
|
||||
"mikrotik": {
|
||||
"cpuLoad": "CPU Auslastung",
|
||||
"memoryUsed": "RAM Verbrauch",
|
||||
"uptime": "Laufzeit",
|
||||
"uptime": "Betriebszeit",
|
||||
"numberOfLeases": "Leases"
|
||||
},
|
||||
"xteve": {
|
||||
@@ -473,7 +489,7 @@
|
||||
"uptimekuma": {
|
||||
"up": "Seiten verfügbar",
|
||||
"down": "Seiten nicht verfügbar",
|
||||
"uptime": "Laufzeit",
|
||||
"uptime": "Betriebszeit",
|
||||
"incident": "Vorfall",
|
||||
"m": "m"
|
||||
},
|
||||
@@ -495,7 +511,7 @@
|
||||
},
|
||||
"diskstation": {
|
||||
"days": "Tage",
|
||||
"uptime": "Laufzeit",
|
||||
"uptime": "Betriebszeit",
|
||||
"volumeAvailable": "Verfügbar"
|
||||
},
|
||||
"fileflows": {
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Nutzung",
|
||||
"memUsage": "MEM Nutzung",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Nutzung"
|
||||
"poolUsage": "Pool Nutzung",
|
||||
"volumeUsage": "Speicher benutzung",
|
||||
"invalid": "Ungültig"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Durchschnittliche Last",
|
||||
@@ -623,10 +641,97 @@
|
||||
},
|
||||
"evcc": {
|
||||
"watt_hour": "Wh",
|
||||
"pv_power": "Production",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger"
|
||||
"pv_power": "Produktion",
|
||||
"battery_soc": "Batterie",
|
||||
"grid_power": "Raster",
|
||||
"home_power": "Verbrauch",
|
||||
"charge_power": "Ladegerät"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Gesamt",
|
||||
"connected": "Verbunden",
|
||||
"new_devices": "Neue Geräte",
|
||||
"down_alerts": "Down Alarme"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Warteschlange",
|
||||
"downloadSpeed": "Geschwindigkeit",
|
||||
"downloadBytesRemaining": "Verbleibend",
|
||||
"downloadTotalBytes": "Größe"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Serie",
|
||||
"totalFiles": "Dateien"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Karte",
|
||||
"currentPlayers": "Aktuelle Spieler",
|
||||
"players": "Spieler",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"maxPlayers": "Max. Spieler",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Ergebnis",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Erfolgreich",
|
||||
"notStarted": "Nicht gestartet",
|
||||
"failed": "Fehlgeschlagen",
|
||||
"canceled": "Abgebrochen",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Genehmigt",
|
||||
"inProgress": "In Bearbeitung"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Fehler",
|
||||
"noRecent": "Nicht mehr aktuell",
|
||||
"totalUsed": "Belegter Speicherplatz"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Wird heruntergeladen",
|
||||
"total": "Gesamt",
|
||||
"running": "Wird ausgeführt",
|
||||
"stopped": "Gestoppt",
|
||||
"passed": "Bestanden",
|
||||
"failed": "Fehlgeschlagen"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Benutzer",
|
||||
"categories": "Kategorien",
|
||||
"tags": "Schlagwörter"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Serie",
|
||||
"archives": "Archive",
|
||||
"chapters": "Kapitel",
|
||||
"categories": "Kategorien"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Bücher",
|
||||
"authors": "Autoren",
|
||||
"categories": "Kategorien",
|
||||
"series": "Serie"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Betriebszeit",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Seiten verfügbar",
|
||||
"sitesDown": "Seiten nicht verfügbar",
|
||||
"paused": "Pausiert",
|
||||
"notyetchecked": "Noch nicht geprüft",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unbekannt"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -150,30 +150,31 @@
|
||||
},
|
||||
"flood": {
|
||||
"download": "Λήξη",
|
||||
"upload": "Φόρτωση",
|
||||
"leech": "Αφαίμαξη",
|
||||
"seed": "Σπείρε"
|
||||
"upload": "Μεταφόρτωση",
|
||||
"leech": "Leech",
|
||||
"seed": "Seed"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Συνολικά παρατηρηθείσα",
|
||||
"diffsDetected": "Εντοπίστηκαν διαφορές"
|
||||
},
|
||||
"tautulli": {
|
||||
"playing": "Παίζει",
|
||||
"transcoding": "Διακωδικοποίηση",
|
||||
"playing": "Αναπαράγει",
|
||||
"transcoding": "Μετακωδικοποίηση",
|
||||
"bitrate": "Ρυθμός bit",
|
||||
"no_active": "Δεν υπάρχουν ενεργές ροές"
|
||||
"no_active": "Δεν υπάρχουν ενεργές ροές",
|
||||
"plex_connection_error": "Έλεγχος Σύνδεσης με Plex"
|
||||
},
|
||||
"nzbget": {
|
||||
"rate": "βαθμός",
|
||||
"rate": "Ρυθμός",
|
||||
"remaining": "Υπόλοιπο",
|
||||
"downloaded": "Κατεβασμένο"
|
||||
},
|
||||
"plex": {
|
||||
"streams": "Ενεργά Streams",
|
||||
"streams": "Ενεργές Ροές",
|
||||
"movies": "Ταινίες",
|
||||
"tv": "Σειρές",
|
||||
"albums": "Δίσκοι"
|
||||
"tv": "Τηλεοπτικές εκπομπές",
|
||||
"albums": "Άλμπουμ"
|
||||
},
|
||||
"sabnzbd": {
|
||||
"rate": "Βαθμός",
|
||||
@@ -199,18 +200,20 @@
|
||||
},
|
||||
"deluge": {
|
||||
"download": "Κατέβασμα",
|
||||
"upload": "Φόρτωση",
|
||||
"upload": "Ανέβασμα",
|
||||
"leech": "Leech",
|
||||
"seed": "Seed"
|
||||
},
|
||||
"sonarr": {
|
||||
"series": "Σειρές",
|
||||
"wanted": "Επιθυμούντε",
|
||||
"queued": "Σε σειρά"
|
||||
"queued": "Σε σειρά",
|
||||
"queue": "Ούρα",
|
||||
"unknown": "Άγνωστο"
|
||||
},
|
||||
"downloadstation": {
|
||||
"download": "Μεταφόρτωση",
|
||||
"upload": "Φόρτωση",
|
||||
"download": "Λήψη",
|
||||
"upload": "Μεταφόρτωση",
|
||||
"leech": "Leech",
|
||||
"seed": "Seed"
|
||||
},
|
||||
@@ -218,12 +221,14 @@
|
||||
"wanted": "Επιθυμούντε",
|
||||
"missing": "Απουσιάζει",
|
||||
"queued": "Σε σειρά",
|
||||
"movies": "Ταινίες"
|
||||
"movies": "Ταινίες",
|
||||
"queue": "Ουρά",
|
||||
"unknown": "Άγνωστο"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Θέλετε",
|
||||
"queued": "Στη σειρά",
|
||||
"albums": "Δίσκοι"
|
||||
"artists": "Καλλιτέχνες"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Θέλετε",
|
||||
@@ -232,17 +237,17 @@
|
||||
},
|
||||
"bazarr": {
|
||||
"missingEpisodes": "Επεισόδια που λείπουν",
|
||||
"missingMovies": "Missing Movies"
|
||||
"missingMovies": "Ταινίες που Λείπουν"
|
||||
},
|
||||
"ombi": {
|
||||
"pending": "Pending",
|
||||
"approved": "Approved",
|
||||
"available": "Available"
|
||||
"pending": "Σε εκκρεμότητα",
|
||||
"approved": "Εγκρίθηκε",
|
||||
"available": "Διαθέσιμο"
|
||||
},
|
||||
"jellyseerr": {
|
||||
"pending": "Pending",
|
||||
"approved": "Approved",
|
||||
"available": "Available"
|
||||
"pending": "Σε εκκρεμότητα",
|
||||
"approved": "Εγκρίθηκε",
|
||||
"available": "Διαθέσιμο"
|
||||
},
|
||||
"overseerr": {
|
||||
"pending": "Pending",
|
||||
@@ -252,25 +257,25 @@
|
||||
},
|
||||
"pihole": {
|
||||
"queries": "Queries",
|
||||
"blocked": "Blocked",
|
||||
"blocked": "Αποκλεισμένο",
|
||||
"gravity": "Gravity",
|
||||
"blocked_percent": "Blocked %"
|
||||
"blocked_percent": "Αποκλεισμένο %"
|
||||
},
|
||||
"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"
|
||||
"stopped": "Σταματημένο",
|
||||
"total": "Σύνολο"
|
||||
},
|
||||
"tdarr": {
|
||||
"queue": "Queue",
|
||||
@@ -355,12 +360,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Please wait",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"load": "Load",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"quicklaunch": {
|
||||
"bookmark": "Bookmark",
|
||||
@@ -416,7 +432,7 @@
|
||||
},
|
||||
"pyload": {
|
||||
"speed": "Speed",
|
||||
"active": "Active",
|
||||
"active": "Ενεργό",
|
||||
"queue": "Queue",
|
||||
"total": "Total"
|
||||
},
|
||||
@@ -548,7 +564,7 @@
|
||||
"records_total": "Queue Length"
|
||||
},
|
||||
"pterodactyl": {
|
||||
"servers": "Servers",
|
||||
"servers": "Διακομιστές",
|
||||
"nodes": "Nodes"
|
||||
},
|
||||
"prometheus": {
|
||||
@@ -574,28 +590,28 @@
|
||||
},
|
||||
"freshrss": {
|
||||
"subscriptions": "Συνδρομές",
|
||||
"unread": "Αδιάβαστο"
|
||||
"unread": "Μη Διαβασμένο"
|
||||
},
|
||||
"channelsdvrserver": {
|
||||
"shows": "Εκπομπές",
|
||||
"recordings": "Εγγραφές",
|
||||
"scheduled": "Προγραμματισμένα",
|
||||
"passes": "Passes"
|
||||
"passes": "Περάσματα"
|
||||
},
|
||||
"whatsupdocker": {
|
||||
"monitoring": "Monitoring",
|
||||
"updates": "Updates"
|
||||
},
|
||||
"tailscale": {
|
||||
"address": "Address",
|
||||
"never": "Never",
|
||||
"address": "Διεύθυνση",
|
||||
"never": "Ποτέ",
|
||||
"years": "{{number}}y",
|
||||
"weeks": "{{number}}w",
|
||||
"days": "{{number}}d",
|
||||
"hours": "{{number}}h",
|
||||
"expires": "Expires",
|
||||
"expires": "Λήγει",
|
||||
"last_seen": "Last Seen",
|
||||
"now": "Now",
|
||||
"now": "Τώρα",
|
||||
"minutes": "{{number}}m",
|
||||
"seconds": "{{number}}s",
|
||||
"ago": "{{value}} Ago"
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "Χρήση επεξεργαστή",
|
||||
"memUsage": "Χρήση μνήμης",
|
||||
"systemTempC": "Θερμοκρασία συστήματος",
|
||||
"poolUsage": "Χρήση πλειάδας"
|
||||
"poolUsage": "Χρήση πισίνας",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Μη έγκυρο"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -618,8 +636,8 @@
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Upstreams",
|
||||
"requests": "Current requests",
|
||||
"requests_failed": "Failed requests"
|
||||
"requests": "Τρέχοντα αιτήματα",
|
||||
"requests_failed": "Αποτυχημένα αιτήματα"
|
||||
},
|
||||
"evcc": {
|
||||
"watt_hour": "Wh",
|
||||
@@ -627,6 +645,93 @@
|
||||
"battery_soc": "Μπαταρία",
|
||||
"grid_power": "Πλέγμα",
|
||||
"home_power": "Κατανάλωση",
|
||||
"charge_power": "Charger"
|
||||
"charge_power": "Φορτιστής"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved",
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"up": "Up",
|
||||
"unknown": "Unknown",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down"
|
||||
}
|
||||
}
|
||||
|
||||
121
public/locales/en/common.json
Executable file → Normal file
121
public/locales/en/common.json
Executable file → Normal file
@@ -92,7 +92,7 @@
|
||||
"episodes": "Episodes",
|
||||
"songs": "Songs"
|
||||
},
|
||||
"evcc": {
|
||||
"evcc": {
|
||||
"pv_power": "Production",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
@@ -129,7 +129,8 @@
|
||||
"playing": "Playing",
|
||||
"transcoding": "Transcoding",
|
||||
"bitrate": "Bitrate",
|
||||
"no_active": "No Active Streams"
|
||||
"no_active": "No Active Streams",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"omada": {
|
||||
"connectedAp": "Connected APs",
|
||||
@@ -175,7 +176,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"deluge": {
|
||||
"download": "Download",
|
||||
@@ -192,18 +195,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"series": "Series"
|
||||
"series": "Series",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Wanted",
|
||||
"missing": "Missing",
|
||||
"queued": "Queued",
|
||||
"movies": "Movies"
|
||||
"movies": "Movies",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"albums": "Albums"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Wanted",
|
||||
@@ -230,6 +237,12 @@
|
||||
"approved": "Approved",
|
||||
"available": "Available"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"pihole": {
|
||||
"queries": "Queries",
|
||||
"blocked": "Blocked",
|
||||
@@ -349,12 +362,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"load": "Load",
|
||||
"wait": "Please wait",
|
||||
"temp": "TEMP",
|
||||
"_temp": "Temp",
|
||||
"warn": "Warn",
|
||||
"uptime": "UP",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap"
|
||||
},
|
||||
"quicklaunch": {
|
||||
"bookmark": "Bookmark",
|
||||
@@ -556,6 +580,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
@@ -637,5 +667,80 @@
|
||||
"whatsupdocker": {
|
||||
"monitoring": "Monitoring",
|
||||
"updates": "Updates"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size",
|
||||
"downloadSpeed": "Speed"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"gamedig": {
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline",
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok" : "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -87,7 +87,8 @@
|
||||
"playing": "Playing",
|
||||
"transcoding": "Transcoding",
|
||||
"bitrate": "Bitrate",
|
||||
"no_active": "No Active Streams"
|
||||
"no_active": "No Active Streams",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"nzbget": {
|
||||
"rate": "Rate",
|
||||
@@ -131,18 +132,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"series": "Serio"
|
||||
"series": "Serio",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Wanted",
|
||||
"missing": "Missing",
|
||||
"queued": "Queued",
|
||||
"movies": "Filmoj"
|
||||
"movies": "Filmoj",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"albums": "Albumoj"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Wanted",
|
||||
@@ -252,12 +257,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "Ĉefprocesoro",
|
||||
"mem": "Memoro",
|
||||
"wait": "Bonvolu atendi",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"quicklaunch": {
|
||||
"bookmark": "Bookmark",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"categories": "Categories",
|
||||
"authors": "Authors",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"downDuration": "Downtime Duration",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
"bitrate": "Tasa de bits",
|
||||
"no_active": "Sin transmisiones activas",
|
||||
"movies": "Películas",
|
||||
"series": "Serie",
|
||||
"series": "Series",
|
||||
"episodes": "Episodios",
|
||||
"songs": "Canciones"
|
||||
},
|
||||
@@ -56,7 +56,8 @@
|
||||
"playing": "Reproduciendo",
|
||||
"transcoding": "Transcodificando",
|
||||
"bitrate": "Tasa de bits",
|
||||
"no_active": "Sin transmisiones activas"
|
||||
"no_active": "Sin transmisiones activas",
|
||||
"plex_connection_error": "Comprueba la conexión a Plex"
|
||||
},
|
||||
"rutorrent": {
|
||||
"active": "Activo",
|
||||
@@ -66,13 +67,17 @@
|
||||
"sonarr": {
|
||||
"wanted": "Buscando",
|
||||
"queued": "En cola",
|
||||
"series": "Series"
|
||||
"series": "Series",
|
||||
"queue": "Poner a la cola",
|
||||
"unknown": "Desconocido"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Buscando",
|
||||
"queued": "En cola",
|
||||
"movies": "Películas",
|
||||
"missing": "Faltan"
|
||||
"missing": "Faltan",
|
||||
"queue": "Poner a la cola",
|
||||
"unknown": "Desconocido"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Buscando",
|
||||
@@ -173,7 +178,7 @@
|
||||
"lidarr": {
|
||||
"queued": "En cola",
|
||||
"wanted": "Buscando",
|
||||
"albums": "Álbumes"
|
||||
"artists": "Artistas"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "Consultas",
|
||||
@@ -229,17 +234,28 @@
|
||||
"plex": {
|
||||
"streams": "Transmisiones activas",
|
||||
"movies": "Películas",
|
||||
"tv": "Series",
|
||||
"tv": "Programas de televisión",
|
||||
"albums": "Álbumes"
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "Procesador",
|
||||
"mem": "Memoria",
|
||||
"wait": "Espera por favor",
|
||||
"temp": "TEMPORAL",
|
||||
"uptime": "ARRIBA",
|
||||
"days": "Días",
|
||||
"hours": "Horas"
|
||||
"hours": "Horas",
|
||||
"load": "Cargar",
|
||||
"warn": "Advertir",
|
||||
"total": "Total",
|
||||
"free": "Libre",
|
||||
"used": "Utilizado",
|
||||
"crit": "Crít.",
|
||||
"read": "Leer",
|
||||
"write": "Escribir",
|
||||
"gpu": "GPU",
|
||||
"mem": "Memoria",
|
||||
"swap": "Intercambiar",
|
||||
"_temp": "Temperatura"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Total Observados",
|
||||
@@ -446,7 +462,7 @@
|
||||
"medusa": {
|
||||
"wanted": "Querido",
|
||||
"queued": "A la espera",
|
||||
"series": "Serie"
|
||||
"series": "Series"
|
||||
},
|
||||
"octoprint": {
|
||||
"temp_bed": "Temperatura de la plataforma",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "Uso de la Cpu",
|
||||
"memUsage": "Uso de la memoria",
|
||||
"systemTempC": "Temperatura del sistema",
|
||||
"poolUsage": "Comprobación del uso del grupo de memoria"
|
||||
"poolUsage": "Comprobación del uso del grupo de memoria",
|
||||
"volumeUsage": "Volumen utilizado",
|
||||
"invalid": "No válido"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Promedio de carga",
|
||||
@@ -622,11 +640,98 @@
|
||||
"requests_failed": "Peticiones fallidas"
|
||||
},
|
||||
"evcc": {
|
||||
"pv_power": "Production",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
"pv_power": "Producción",
|
||||
"battery_soc": "Batería",
|
||||
"grid_power": "Red",
|
||||
"home_power": "Consumo",
|
||||
"charge_power": "Cargador",
|
||||
"watt_hour": "vatio-hora (Wh)"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Conectado",
|
||||
"new_devices": "Nuevos dispositivos",
|
||||
"down_alerts": "Alertas"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Cola",
|
||||
"downloadSpeed": "Velocidad",
|
||||
"downloadBytesRemaining": "Restante",
|
||||
"downloadTotalBytes": "Tamaño"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Archivos"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Nombre",
|
||||
"map": "Mapa",
|
||||
"currentPlayers": "Jugadores actuales",
|
||||
"players": "Jugadores",
|
||||
"maxPlayers": "Jugadores máximos",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Estado",
|
||||
"online": "En línea",
|
||||
"offline": "Sin conexión"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Resultado",
|
||||
"status": "Estado",
|
||||
"buildId": "Identificador de la construcción",
|
||||
"succeeded": "Exitoso",
|
||||
"notStarted": "Sin empezar",
|
||||
"failed": "Fallido",
|
||||
"canceled": "Cancelado",
|
||||
"inProgress": "En curso",
|
||||
"totalPrs": "RP totales",
|
||||
"myPrs": "Mis logros",
|
||||
"approved": "Aprobados"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "De acuerdo",
|
||||
"errored": "Errores",
|
||||
"noRecent": "Caducado",
|
||||
"totalUsed": "Almacenamiento usado"
|
||||
},
|
||||
"openmediavault": {
|
||||
"running": "Ejecutando",
|
||||
"downloading": "Descargando",
|
||||
"total": "Total",
|
||||
"stopped": "Detenido",
|
||||
"passed": "Aprobado",
|
||||
"failed": "Fallido"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recetas",
|
||||
"users": "Usuarios",
|
||||
"categories": "Categorías",
|
||||
"tags": "Etiquetas"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archivos",
|
||||
"chapters": "Capítulos",
|
||||
"categories": "Categorías"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Libros",
|
||||
"authors": "Autores",
|
||||
"categories": "Categorías",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Estado",
|
||||
"uptime": "Tiempo de actividad",
|
||||
"lastDown": "Último periodo de inactividad",
|
||||
"downDuration": "Tiempo de inactividad",
|
||||
"sitesUp": "Páginas web con conexión",
|
||||
"sitesDown": "Páginas web caídas",
|
||||
"paused": "Pausado",
|
||||
"notyetchecked": "Aún no verificado",
|
||||
"up": "Arriba",
|
||||
"seemsdown": "Parece caída",
|
||||
"down": "Abajo",
|
||||
"unknown": "Desconocido"
|
||||
}
|
||||
}
|
||||
|
||||
737
public/locales/eu/common.json
Normal file
737
public/locales/eu/common.json
Normal file
@@ -0,0 +1,737 @@
|
||||
{
|
||||
"wmo": {
|
||||
"95-night": "Thunderstorm",
|
||||
"96-day": "Thunderstorm With Hail",
|
||||
"96-night": "Thunderstorm With Hail",
|
||||
"99-day": "Thunderstorm With Hail",
|
||||
"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",
|
||||
"99-night": "Thunderstorm With Hail"
|
||||
},
|
||||
"homebridge": {
|
||||
"updates": "Updates",
|
||||
"available_update": "System",
|
||||
"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"
|
||||
},
|
||||
"common": {
|
||||
"bibyterate": "{{value, rate(bits: false; binary: true)}}",
|
||||
"bibitrate": "{{value, rate(bits: true; binary: true)}}"
|
||||
},
|
||||
"widget": {
|
||||
"missing_type": "Missing Widget Type: {{type}}",
|
||||
"api_error": "API Error",
|
||||
"information": "Informazioa",
|
||||
"status": "Status",
|
||||
"url": "URL",
|
||||
"raw_error": "Raw Error",
|
||||
"response_data": "Response Data"
|
||||
},
|
||||
"weather": {
|
||||
"current": "Current Location",
|
||||
"allow": "Click to allow",
|
||||
"updating": "Eguneratzen",
|
||||
"wait": "Itxaron mesedez"
|
||||
},
|
||||
"search": {
|
||||
"placeholder": "Bilatu…"
|
||||
},
|
||||
"resources": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"total": "Guztira",
|
||||
"free": "Free",
|
||||
"used": "Erabilita",
|
||||
"load": "Load",
|
||||
"temp": "TEMP",
|
||||
"max": "Max",
|
||||
"uptime": "UP",
|
||||
"months": "mo",
|
||||
"days": "d",
|
||||
"hours": "h",
|
||||
"minutes": "m"
|
||||
},
|
||||
"unifi": {
|
||||
"users": "Users",
|
||||
"uptime": "System Uptime",
|
||||
"days": "Egun",
|
||||
"wan": "WAN",
|
||||
"lan": "LAN",
|
||||
"wlan": "WLAN",
|
||||
"devices": "Gailuak",
|
||||
"lan_devices": "LAN Gailuak",
|
||||
"wlan_devices": "WLAN Gailuak",
|
||||
"lan_users": "LAN Erabiltzaileak",
|
||||
"wlan_users": "WLAN Erabiltzaileak",
|
||||
"up": "UP",
|
||||
"down": "DOWN",
|
||||
"wait": "Itxaron mesedez",
|
||||
"empty_data": "Subsystem status unknown"
|
||||
},
|
||||
"docker": {
|
||||
"rx": "RX",
|
||||
"tx": "TX",
|
||||
"mem": "MEM",
|
||||
"cpu": "CPU",
|
||||
"running": "Running",
|
||||
"offline": "Offline",
|
||||
"error": "Error",
|
||||
"unknown": "Ezezaguna",
|
||||
"healthy": "Osasuntsu",
|
||||
"starting": "Abiarazten",
|
||||
"unhealthy": "Unhealthy",
|
||||
"not_found": "Not Found",
|
||||
"exited": "Exited",
|
||||
"partial": "Partial"
|
||||
},
|
||||
"ping": {
|
||||
"error": "Errorea",
|
||||
"ping": "Ping"
|
||||
},
|
||||
"emby": {
|
||||
"playing": "Playing",
|
||||
"transcoding": "Transcoding",
|
||||
"bitrate": "Bit-tasa",
|
||||
"no_active": "No Active Streams",
|
||||
"movies": "Movies",
|
||||
"series": "Series",
|
||||
"episodes": "Episodes",
|
||||
"songs": "Abestiak"
|
||||
},
|
||||
"evcc": {
|
||||
"pv_power": "Production",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"flood": {
|
||||
"download": "Download",
|
||||
"upload": "Upload",
|
||||
"leech": "Leech",
|
||||
"seed": "Seed"
|
||||
},
|
||||
"freshrss": {
|
||||
"subscriptions": "Subscriptions",
|
||||
"unread": "Unread"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Upstreams",
|
||||
"requests": "Current requests",
|
||||
"requests_failed": "Failed requests"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Total Observed",
|
||||
"diffsDetected": "Diffs Detected"
|
||||
},
|
||||
"channelsdvrserver": {
|
||||
"shows": "Shows",
|
||||
"recordings": "Recordings",
|
||||
"scheduled": "Scheduled",
|
||||
"passes": "Passes"
|
||||
},
|
||||
"tautulli": {
|
||||
"playing": "Playing",
|
||||
"transcoding": "Transcoding",
|
||||
"bitrate": "Bitrate",
|
||||
"no_active": "No Active Streams",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"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",
|
||||
"albums": "Albums",
|
||||
"movies": "Movies",
|
||||
"tv": "TV Shows"
|
||||
},
|
||||
"sabnzbd": {
|
||||
"rate": "Rate",
|
||||
"queue": "Queue",
|
||||
"timeleft": "Time Left"
|
||||
},
|
||||
"rutorrent": {
|
||||
"active": "Active",
|
||||
"upload": "Kargatu",
|
||||
"download": "Deskargatu"
|
||||
},
|
||||
"transmission": {
|
||||
"download": "Download",
|
||||
"upload": "Upload",
|
||||
"leech": "Leech",
|
||||
"seed": "Seed"
|
||||
},
|
||||
"qbittorrent": {
|
||||
"download": "Download",
|
||||
"upload": "Upload",
|
||||
"leech": "Leech",
|
||||
"seed": "Seed"
|
||||
},
|
||||
"qnap": {
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"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",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Wanted",
|
||||
"missing": "Missing",
|
||||
"queued": "Queued",
|
||||
"movies": "Movies",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"artists": "Artists"
|
||||
},
|
||||
"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"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"pihole": {
|
||||
"queries": "Queries",
|
||||
"blocked": "Blocked",
|
||||
"blocked_percent": "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"
|
||||
},
|
||||
"tailscale": {
|
||||
"address": "Address",
|
||||
"expires": "Expires",
|
||||
"never": "Never",
|
||||
"last_seen": "Last Seen",
|
||||
"now": "Now",
|
||||
"years": "{{number}}y",
|
||||
"weeks": "{{number}}w",
|
||||
"days": "{{number}}d",
|
||||
"hours": "{{number}}h",
|
||||
"minutes": "{{number}}m",
|
||||
"seconds": "{{number}}s",
|
||||
"ago": "{{value}} Ago"
|
||||
},
|
||||
"tdarr": {
|
||||
"queue": "Queue",
|
||||
"processed": "Processed",
|
||||
"errored": "Errored",
|
||||
"saved": "Saved"
|
||||
},
|
||||
"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"
|
||||
},
|
||||
"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": "Jokalariak",
|
||||
"version": "Version",
|
||||
"status": "Status",
|
||||
"up": "Online",
|
||||
"down": "Offline"
|
||||
},
|
||||
"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",
|
||||
"load": "Load",
|
||||
"wait": "Please wait",
|
||||
"temp": "TEMP",
|
||||
"warn": "Warn",
|
||||
"uptime": "UP",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"days": "d",
|
||||
"hours": "h",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"quicklaunch": {
|
||||
"bookmark": "Bookmark",
|
||||
"service": "Service",
|
||||
"search": "Search",
|
||||
"custom": "Custom",
|
||||
"visit": "Visit",
|
||||
"url": "URL"
|
||||
},
|
||||
"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"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
"memory": "Mem Usage",
|
||||
"wanStatus": "WAN Status",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"temp": "Temp",
|
||||
"disk": "Disk Usage",
|
||||
"wanIP": "WAN IP"
|
||||
},
|
||||
"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",
|
||||
"numfiles": "Files",
|
||||
"numshares": "Shared Items"
|
||||
},
|
||||
"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"
|
||||
},
|
||||
"homeassistant": {
|
||||
"people_home": "People Home",
|
||||
"lights_on": "Lights On",
|
||||
"switches_on": "Switches On"
|
||||
},
|
||||
"whatsupdocker": {
|
||||
"monitoring": "Monitoring",
|
||||
"updates": "Updates"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size",
|
||||
"downloadSpeed": "Speed"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"currentPlayers": "Current players",
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"notStarted": "Not Started",
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"uptime": "Uptime",
|
||||
"status": "Status",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
@@ -62,7 +62,8 @@
|
||||
"playing": "Toistaa",
|
||||
"transcoding": "Transkoodaa",
|
||||
"bitrate": "Bittinopeus",
|
||||
"no_active": "Ei aktiivisia striimejä"
|
||||
"no_active": "Ei aktiivisia striimejä",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"nzbget": {
|
||||
"rate": "Nopeus",
|
||||
@@ -94,18 +95,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "Haluttu",
|
||||
"queued": "Jonossa",
|
||||
"series": "Sarja"
|
||||
"series": "Sarja",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Haluttu",
|
||||
"queued": "Jonossa",
|
||||
"movies": "Elokuvia",
|
||||
"missing": "Missing"
|
||||
"missing": "Missing",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Haluttu",
|
||||
"queued": "Jonossa",
|
||||
"albums": "Albumeja"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Haluttu",
|
||||
@@ -235,11 +240,22 @@
|
||||
"glances": {
|
||||
"wait": "Please wait",
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Total Observed",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -628,5 +646,92 @@
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
"status": "Statut",
|
||||
"information": "Information",
|
||||
"url": "URL",
|
||||
"raw_error": "Raw Error",
|
||||
"response_data": "Response Data"
|
||||
"raw_error": "Erreur brute",
|
||||
"response_data": "Données de réponse"
|
||||
},
|
||||
"search": {
|
||||
"placeholder": "Recherche…"
|
||||
@@ -56,7 +56,8 @@
|
||||
"playing": "En lecture",
|
||||
"transcoding": "Transcodage",
|
||||
"bitrate": "Débit",
|
||||
"no_active": "Aucun flux actif"
|
||||
"no_active": "Aucun flux actif",
|
||||
"plex_connection_error": "Vérifier la connexion à Plex"
|
||||
},
|
||||
"rutorrent": {
|
||||
"active": "Actif",
|
||||
@@ -66,13 +67,17 @@
|
||||
"sonarr": {
|
||||
"wanted": "Demande",
|
||||
"queued": "Attente",
|
||||
"series": "Séries"
|
||||
"series": "Séries",
|
||||
"queue": "Attente",
|
||||
"unknown": "Inconnu"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Demande",
|
||||
"queued": "Attente",
|
||||
"movies": "Films",
|
||||
"missing": "Manquant"
|
||||
"missing": "Manquant",
|
||||
"queue": "Attente",
|
||||
"unknown": "Inconnu"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Demande",
|
||||
@@ -173,7 +178,7 @@
|
||||
"lidarr": {
|
||||
"wanted": "Demandé",
|
||||
"queued": "En queue",
|
||||
"albums": "Albums"
|
||||
"artists": "Artistes"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "Requêtes",
|
||||
@@ -234,12 +239,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "Cpu",
|
||||
"mem": "Mém",
|
||||
"wait": "Merci de patienter",
|
||||
"temp": "Temp",
|
||||
"uptime": "Up",
|
||||
"days": "j",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Charge",
|
||||
"warn": "Alerte",
|
||||
"total": "Total",
|
||||
"free": "Libre",
|
||||
"used": "Utilisé",
|
||||
"crit": "Crit.",
|
||||
"read": "Lect.",
|
||||
"write": "Écrit.",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mém.",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Total Observé",
|
||||
@@ -393,7 +409,7 @@
|
||||
"queue": "À traiter",
|
||||
"processed": "Traité",
|
||||
"errored": "En erreur",
|
||||
"saved": "Economisé"
|
||||
"saved": "Libéré"
|
||||
},
|
||||
"miniflux": {
|
||||
"read": "Lu",
|
||||
@@ -570,7 +586,7 @@
|
||||
"homeassistant": {
|
||||
"people_home": "People Home",
|
||||
"lights_on": "Lumières allumées",
|
||||
"switches_on": "Switches On"
|
||||
"switches_on": "Commutateur On"
|
||||
},
|
||||
"freshrss": {
|
||||
"unread": "Non lu",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "Cpu",
|
||||
"memUsage": "Mém",
|
||||
"systemTempC": "Temp",
|
||||
"poolUsage": "Pool"
|
||||
"poolUsage": "Pool",
|
||||
"volumeUsage": "Volume",
|
||||
"invalid": "Invalide"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Charge moy.",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consommation",
|
||||
"charge_power": "Chargeur",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connecté",
|
||||
"new_devices": "Nouvel Appareil",
|
||||
"down_alerts": "Alertes"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Total en attente",
|
||||
"downloadSpeed": "Vitesse de téléchargement",
|
||||
"downloadBytesRemaining": "Restant",
|
||||
"downloadTotalBytes": "Taille"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Séries",
|
||||
"totalFiles": "Fichiers"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Nom",
|
||||
"map": "Carte",
|
||||
"currentPlayers": "Joueurs actuels",
|
||||
"players": "Joueurs",
|
||||
"maxPlayers": "Joueurs max",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Statut",
|
||||
"online": "En ligne",
|
||||
"offline": "Hors ligne"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Résultat",
|
||||
"status": "Statut",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Réussi",
|
||||
"notStarted": "Arrêté",
|
||||
"failed": "Échoué",
|
||||
"canceled": "Annulé",
|
||||
"inProgress": "En cours",
|
||||
"totalPrs": "PRs Total",
|
||||
"myPrs": "Mes PRs",
|
||||
"approved": "Approuvé"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Erreur",
|
||||
"noRecent": "Obsolète",
|
||||
"totalUsed": "Esp. Utilisé"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Téléchargement",
|
||||
"total": "Total",
|
||||
"running": "Démarré",
|
||||
"stopped": "Arrêté",
|
||||
"passed": "Réussi",
|
||||
"failed": "Échoué"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recettes",
|
||||
"users": "Utilisateurs",
|
||||
"categories": "Catégories",
|
||||
"tags": "Étiquettes"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Séries",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapitres",
|
||||
"categories": "Catégories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"series": "Séries",
|
||||
"books": "Ebooks",
|
||||
"authors": "Auteurs",
|
||||
"categories": "Catégories"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Statut",
|
||||
"uptime": "Disponibilité",
|
||||
"lastDown": "Dernière interruption",
|
||||
"downDuration": "Durée d'interruption",
|
||||
"sitesUp": "Sites en ligne",
|
||||
"sitesDown": "Sites hors ligne",
|
||||
"paused": "En pause",
|
||||
"notyetchecked": "Non vérifié",
|
||||
"up": "En ligne",
|
||||
"seemsdown": "Semble hors ligne",
|
||||
"down": "Hors ligne",
|
||||
"unknown": "Inconnu"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -62,7 +62,8 @@
|
||||
"playing": "מנגן",
|
||||
"transcoding": "מקודד",
|
||||
"bitrate": "סיביות",
|
||||
"no_active": "אין הזרמות פעילות"
|
||||
"no_active": "אין הזרמות פעילות",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"nzbget": {
|
||||
"rate": "יחס",
|
||||
@@ -94,18 +95,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "מבוקש",
|
||||
"queued": "בתור",
|
||||
"series": "סדרות"
|
||||
"series": "סדרות",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "מבוקש",
|
||||
"queued": "בתור",
|
||||
"movies": "סרטים",
|
||||
"missing": "Missing"
|
||||
"missing": "Missing",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "מבוקש",
|
||||
"queued": "בתור",
|
||||
"albums": "אלבומים"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "מבוקש",
|
||||
@@ -234,12 +239,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Please wait",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"warn": "Warn",
|
||||
"load": "Load",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Total Observed",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"myPrs": "My PRs",
|
||||
"totalPrs": "Total PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -117,7 +117,8 @@
|
||||
"playing": "Playing",
|
||||
"transcoding": "Transcoding",
|
||||
"bitrate": "Bitrate",
|
||||
"no_active": "No Active Streams"
|
||||
"no_active": "No Active Streams",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"nzbget": {
|
||||
"rate": "Rate",
|
||||
@@ -155,18 +156,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"series": "Series"
|
||||
"series": "Series",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Wanted",
|
||||
"missing": "Missing",
|
||||
"queued": "Queued",
|
||||
"movies": "Movies"
|
||||
"movies": "Movies",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"albums": "Albums"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"overseerr": {
|
||||
"pending": "Pending",
|
||||
@@ -242,12 +247,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Please wait",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"quicklaunch": {
|
||||
"bookmark": "Bookmark",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"myPrs": "My PRs",
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories",
|
||||
"series": "Series",
|
||||
"archives": "Archives"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -104,7 +104,8 @@
|
||||
"playing": "Reprodukcija",
|
||||
"transcoding": "Prekodiranje",
|
||||
"bitrate": "Stopa bitova",
|
||||
"no_active": "Nema aktivnih prijenosa"
|
||||
"no_active": "Nema aktivnih prijenosa",
|
||||
"plex_connection_error": "Provjeri Plex vezu"
|
||||
},
|
||||
"nzbget": {
|
||||
"rate": "Stopa",
|
||||
@@ -125,18 +126,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "Zatraženo",
|
||||
"queued": "U redu čekanja",
|
||||
"series": "Serije"
|
||||
"series": "Serije",
|
||||
"unknown": "Nepoznato",
|
||||
"queue": "Red čekanja"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Zatraženo",
|
||||
"queued": "U redu čekanja",
|
||||
"movies": "Filmovi",
|
||||
"missing": "Nedostaje"
|
||||
"missing": "Nedostaje",
|
||||
"queue": "Red čekanja",
|
||||
"unknown": "Nepoznato"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Zatraženo",
|
||||
"queued": "U redu čekanja",
|
||||
"albums": "Albumi"
|
||||
"artists": "Umjetnici"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Zatraženo",
|
||||
@@ -234,12 +239,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Pričekaj",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"used": "Korišteno",
|
||||
"load": "Opterećenje",
|
||||
"warn": "Upozori",
|
||||
"total": "Ukupno",
|
||||
"free": "Slobodno",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Ukupno promatrano",
|
||||
@@ -474,7 +490,7 @@
|
||||
"up": "Aktivne stranice",
|
||||
"down": "Neaktivne stranice",
|
||||
"uptime": "Radno vrijeme",
|
||||
"incident": "Incident",
|
||||
"incident": "Slučaj",
|
||||
"m": "min"
|
||||
},
|
||||
"komga": {
|
||||
@@ -604,29 +620,118 @@
|
||||
"systemTempC": "Temperatura sustava",
|
||||
"poolUsage": "Korištenje memorijskog skupa",
|
||||
"cpuUsage": "Korištenje procesora",
|
||||
"memUsage": "Korištenje memorije"
|
||||
"memUsage": "Korištenje memorije",
|
||||
"volumeUsage": "Korištenje jedinice memorije",
|
||||
"invalid": "Neispravno"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
"memory": "Mem Usage",
|
||||
"wanStatus": "WAN Status",
|
||||
"load": "Prosječno opterećenje",
|
||||
"memory": "Korištenje memorije",
|
||||
"wanStatus": "Stanje WAN-a",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"temp": "Temp",
|
||||
"disk": "Disk Usage",
|
||||
"temp": "Temperatura",
|
||||
"disk": "Korištenje diska",
|
||||
"wanIP": "WAN IP"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Upstreams",
|
||||
"requests": "Current requests",
|
||||
"requests_failed": "Failed requests"
|
||||
"upstreams": "Glavne grane",
|
||||
"requests": "Aktualni zahtjevi",
|
||||
"requests_failed": "Neuspjeli zahtjevi"
|
||||
},
|
||||
"evcc": {
|
||||
"pv_power": "Production",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"pv_power": "Proizvodnja",
|
||||
"battery_soc": "Baterija",
|
||||
"grid_power": "Raspored",
|
||||
"home_power": "Potrošnja",
|
||||
"charge_power": "Punjač",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Ukupno",
|
||||
"connected": "Povezano",
|
||||
"new_devices": "Novi uređaji",
|
||||
"down_alerts": "Obavijest o rušenju"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Red čekanja",
|
||||
"downloadSpeed": "Brzina",
|
||||
"downloadBytesRemaining": "Preostalo",
|
||||
"downloadTotalBytes": "Veličina"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Serije",
|
||||
"totalFiles": "Datoteke"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage",
|
||||
"ok": "Ok",
|
||||
"errored": "Errors"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"categories": "Categories",
|
||||
"series": "Series",
|
||||
"authors": "Authors"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,15 +4,15 @@
|
||||
"free": "Szabad",
|
||||
"used": "Használt",
|
||||
"load": "Terhelés",
|
||||
"cpu": "CPU",
|
||||
"cpu": "Processzor",
|
||||
"mem": "MEM",
|
||||
"temp": "TEMP",
|
||||
"max": "Max",
|
||||
"uptime": "UP",
|
||||
"months": "mo",
|
||||
"days": "d",
|
||||
"hours": "h",
|
||||
"minutes": "m"
|
||||
"uptime": "FUT",
|
||||
"months": "hó",
|
||||
"days": "n",
|
||||
"hours": "ó",
|
||||
"minutes": "p"
|
||||
},
|
||||
"docker": {
|
||||
"rx": "RX",
|
||||
@@ -20,20 +20,20 @@
|
||||
"mem": "MEM",
|
||||
"cpu": "CPU",
|
||||
"offline": "Offline",
|
||||
"error": "Error",
|
||||
"unknown": "Unknown",
|
||||
"unhealthy": "Unhealthy",
|
||||
"running": "Running",
|
||||
"starting": "Starting",
|
||||
"not_found": "Not Found",
|
||||
"exited": "Exited",
|
||||
"partial": "Partial",
|
||||
"healthy": "Healthy"
|
||||
"error": "Hiba",
|
||||
"unknown": "Ismeretlen",
|
||||
"unhealthy": "Egészségtelen",
|
||||
"running": "Futó",
|
||||
"starting": "Indul",
|
||||
"not_found": "Nem található",
|
||||
"exited": "Kilépett",
|
||||
"partial": "Részleges",
|
||||
"healthy": "Egészséges"
|
||||
},
|
||||
"lidarr": {
|
||||
"albums": "Albumok",
|
||||
"wanted": "Keresett",
|
||||
"queued": "Sorban áll"
|
||||
"queued": "Sorban áll",
|
||||
"artists": "Előadók"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Keresett",
|
||||
@@ -48,16 +48,16 @@
|
||||
"missing_type": "Hiányzó Widget Típus: {{type}}",
|
||||
"api_error": "API Hiba",
|
||||
"status": "Státusz",
|
||||
"information": "Information",
|
||||
"information": "Információ",
|
||||
"url": "URL",
|
||||
"raw_error": "Raw Error",
|
||||
"response_data": "Response Data"
|
||||
"raw_error": "Nyers hiba",
|
||||
"response_data": "Válaszadatok"
|
||||
},
|
||||
"weather": {
|
||||
"current": "Aktuális hely",
|
||||
"allow": "Kattints az engedélyezéshez",
|
||||
"updating": "Frissítés",
|
||||
"wait": "Kérlek várj"
|
||||
"wait": "Kérjük várjon"
|
||||
},
|
||||
"search": {
|
||||
"placeholder": "Keresés…"
|
||||
@@ -67,16 +67,17 @@
|
||||
"transcoding": "Átkódolás",
|
||||
"bitrate": "Bitráta",
|
||||
"no_active": "Nincs aktív lejátszás",
|
||||
"movies": "Movies",
|
||||
"series": "Series",
|
||||
"episodes": "Episodes",
|
||||
"songs": "Songs"
|
||||
"movies": "Film",
|
||||
"series": "Sorozat",
|
||||
"episodes": "Epizód",
|
||||
"songs": "Zeneszám"
|
||||
},
|
||||
"tautulli": {
|
||||
"playing": "Lejátszás folyamatban",
|
||||
"transcoding": "Átkódolás",
|
||||
"bitrate": "Bitráta",
|
||||
"no_active": "Nincs aktív lejátszás"
|
||||
"no_active": "Nincs aktív lejátszás",
|
||||
"plex_connection_error": "Plex kapcsolat ellenőrzése"
|
||||
},
|
||||
"nzbget": {
|
||||
"rate": "Ráta",
|
||||
@@ -108,13 +109,17 @@
|
||||
"sonarr": {
|
||||
"wanted": "Keresett",
|
||||
"queued": "Sorban áll",
|
||||
"series": "Sorozat"
|
||||
"series": "Sorozat",
|
||||
"queue": "Várólista",
|
||||
"unknown": "Ismeretlen"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Keresett",
|
||||
"queued": "Sorban áll",
|
||||
"movies": "Filmek",
|
||||
"missing": "Missing"
|
||||
"missing": "Hiányzik",
|
||||
"queue": "Várólista",
|
||||
"unknown": "Ismeretlen"
|
||||
},
|
||||
"ombi": {
|
||||
"pending": "Függőben",
|
||||
@@ -130,13 +135,13 @@
|
||||
"pending": "Függőben",
|
||||
"approved": "Engedélyezett",
|
||||
"available": "Elérhető",
|
||||
"processing": "Processing"
|
||||
"processing": "Feldolgozás"
|
||||
},
|
||||
"pihole": {
|
||||
"queries": "Lekérdezések",
|
||||
"blocked": "Blokkolt",
|
||||
"gravity": "Gravitáció",
|
||||
"blocked_percent": "Blocked %"
|
||||
"blocked_percent": "Blokkolt %"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "Lekérdezések",
|
||||
@@ -188,445 +193,545 @@
|
||||
"errored": "Hibás"
|
||||
},
|
||||
"mastodon": {
|
||||
"user_count": "Users",
|
||||
"status_count": "Posts",
|
||||
"domain_count": "Domains"
|
||||
"user_count": "Felhasználók",
|
||||
"status_count": "Posztok",
|
||||
"domain_count": "Domainek"
|
||||
},
|
||||
"strelaysrv": {
|
||||
"numActiveSessions": "Sessions",
|
||||
"numConnections": "Connections",
|
||||
"dataRelayed": "Relayed",
|
||||
"transferRate": "Rate"
|
||||
"numActiveSessions": "Munkamenetek",
|
||||
"numConnections": "Csatlakozások",
|
||||
"dataRelayed": "Átirányított",
|
||||
"transferRate": "Ráta"
|
||||
},
|
||||
"authentik": {
|
||||
"users": "Users",
|
||||
"loginsLast24H": "Logins (24h)",
|
||||
"failedLoginsLast24H": "Failed Logins (24h)"
|
||||
"users": "Felhasználók",
|
||||
"loginsLast24H": "Bejelentkezések (24 óra)",
|
||||
"failedLoginsLast24H": "Sikertelen bejelentkezések (24h)"
|
||||
},
|
||||
"proxmox": {
|
||||
"mem": "MEM",
|
||||
"cpu": "CPU",
|
||||
"mem": "RAM",
|
||||
"cpu": "Processzor",
|
||||
"lxc": "LXC",
|
||||
"vms": "VMs"
|
||||
"vms": "VM-ek"
|
||||
},
|
||||
"unifi": {
|
||||
"users": "Users",
|
||||
"uptime": "System Uptime",
|
||||
"days": "Days",
|
||||
"users": "Felhasználók",
|
||||
"uptime": "Rendszer üzemidő",
|
||||
"days": "Napok",
|
||||
"wan": "WAN",
|
||||
"lan_users": "LAN Users",
|
||||
"wlan_users": "WLAN Users",
|
||||
"up": "UP",
|
||||
"down": "DOWN",
|
||||
"wait": "Please wait",
|
||||
"lan_users": "LAN Felhasználók",
|
||||
"wlan_users": "WLAN Felhasználók",
|
||||
"up": "FUT",
|
||||
"down": "ÁLL",
|
||||
"wait": "Kérjük várjon",
|
||||
"lan": "LAN",
|
||||
"wlan": "WLAN",
|
||||
"devices": "Devices",
|
||||
"lan_devices": "LAN Devices",
|
||||
"wlan_devices": "WLAN Devices",
|
||||
"empty_data": "Subsystem status unknown"
|
||||
"devices": "Eszközök",
|
||||
"lan_devices": "LAN Eszközök",
|
||||
"wlan_devices": "WLAN Eszközök",
|
||||
"empty_data": "Az alrendszer állapota ismeretlen"
|
||||
},
|
||||
"plex": {
|
||||
"streams": "Active Streams",
|
||||
"movies": "Movies",
|
||||
"tv": "TV Shows",
|
||||
"albums": "Albums"
|
||||
"streams": "Aktív Stream-ek",
|
||||
"movies": "Filmek",
|
||||
"tv": "TV műsorok",
|
||||
"albums": "Albumok"
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Please wait",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"cpu": "Processzor",
|
||||
"wait": "Kérjük várjon",
|
||||
"temp": "HŐMÉRSÉKLET",
|
||||
"uptime": "FUT",
|
||||
"days": "n",
|
||||
"hours": "ó",
|
||||
"load": "Kapacitáskihasználás",
|
||||
"warn": "Figyelmeztet",
|
||||
"total": "Összes",
|
||||
"free": "Szabad",
|
||||
"used": "Felhasznált",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Total Observed",
|
||||
"diffsDetected": "Diffs Detected"
|
||||
"totalObserved": "Összes Megfigyelt",
|
||||
"diffsDetected": "Észlelt különbségek"
|
||||
},
|
||||
"wmo": {
|
||||
"0-day": "Sunny",
|
||||
"0-night": "Clear",
|
||||
"3-day": "Cloudy",
|
||||
"3-night": "Cloudy",
|
||||
"45-day": "Foggy",
|
||||
"53-day": "Drizzle",
|
||||
"56-night": "Light Freezing Drizzle",
|
||||
"57-day": "Freezing Drizzle",
|
||||
"1-day": "Mainly Sunny",
|
||||
"1-night": "Mainly Clear",
|
||||
"2-day": "Partly Cloudy",
|
||||
"2-night": "Partly Cloudy",
|
||||
"45-night": "Foggy",
|
||||
"48-day": "Foggy",
|
||||
"48-night": "Foggy",
|
||||
"51-day": "Light Drizzle",
|
||||
"51-night": "Light Drizzle",
|
||||
"57-night": "Freezing Drizzle",
|
||||
"61-day": "Light Rain",
|
||||
"61-night": "Light Rain",
|
||||
"53-night": "Drizzle",
|
||||
"55-day": "Heavy Drizzle",
|
||||
"55-night": "Heavy Drizzle",
|
||||
"56-day": "Light Freezing Drizzle",
|
||||
"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"
|
||||
"0-day": "Napos",
|
||||
"0-night": "Derült",
|
||||
"3-day": "Felhős",
|
||||
"3-night": "Felhős",
|
||||
"45-day": "Ködös",
|
||||
"53-day": "Szitálás",
|
||||
"56-night": "Enyhe fagyos szitálás",
|
||||
"57-day": "Fagyos szitálás",
|
||||
"1-day": "Többnyire napos",
|
||||
"1-night": "Többnyire derült",
|
||||
"2-day": "Részben felhős",
|
||||
"2-night": "Részben felhős",
|
||||
"45-night": "Ködös",
|
||||
"48-day": "Ködös",
|
||||
"48-night": "Ködös",
|
||||
"51-day": "Enyhe szitálás",
|
||||
"51-night": "Enyhe szitálás",
|
||||
"57-night": "Fagyos szitálás",
|
||||
"61-day": "Enyhe eső",
|
||||
"61-night": "Enyhe eső",
|
||||
"53-night": "Szitálás",
|
||||
"55-day": "Erős szitálás",
|
||||
"55-night": "Erős szitálás",
|
||||
"56-day": "Enyhe fagyos szitálás",
|
||||
"63-day": "Eső",
|
||||
"63-night": "Eső",
|
||||
"65-day": "Heves eső",
|
||||
"65-night": "Heves eső",
|
||||
"66-day": "Ónos eső",
|
||||
"66-night": "Ónos eső",
|
||||
"67-day": "Ónos eső",
|
||||
"67-night": "Ónos eső",
|
||||
"71-day": "Enyhe havazás",
|
||||
"71-night": "Enyhe havazás",
|
||||
"73-day": "Hó",
|
||||
"73-night": "Hó",
|
||||
"75-day": "Erős havazás",
|
||||
"75-night": "Erős havazás",
|
||||
"77-day": "Hódara",
|
||||
"77-night": "Hódara",
|
||||
"80-day": "Enyhe záporok",
|
||||
"80-night": "Enyhe záporok",
|
||||
"81-day": "Záporok",
|
||||
"81-night": "Záporok",
|
||||
"82-day": "Heves záporok",
|
||||
"82-night": "Heves záporok",
|
||||
"85-day": "Hózáporok",
|
||||
"85-night": "Hózáporok",
|
||||
"86-day": "Hózáporok",
|
||||
"86-night": "Hózáporok",
|
||||
"95-day": "Zivatar",
|
||||
"95-night": "Zivatar",
|
||||
"96-day": "Zivatar jégesővel",
|
||||
"96-night": "Zivatar jégesővel",
|
||||
"99-day": "Zivatar jégesővel",
|
||||
"99-night": "Zivatar jégesővel"
|
||||
},
|
||||
"quicklaunch": {
|
||||
"bookmark": "Bookmark",
|
||||
"service": "Service",
|
||||
"search": "Search",
|
||||
"custom": "Custom",
|
||||
"visit": "Visit",
|
||||
"bookmark": "Könyvjelző",
|
||||
"service": "Szolgáltatás",
|
||||
"search": "Keresés",
|
||||
"custom": "Egyedi",
|
||||
"visit": "Megnéz",
|
||||
"url": "URL"
|
||||
},
|
||||
"homebridge": {
|
||||
"available_update": "System",
|
||||
"updates": "Updates",
|
||||
"update_available": "Update Available",
|
||||
"up_to_date": "Up to Date",
|
||||
"child_bridges": "Child Bridges",
|
||||
"available_update": "Rendszer",
|
||||
"updates": "Frissítések",
|
||||
"update_available": "Elérhető Frissítés",
|
||||
"up_to_date": "Naprakész",
|
||||
"child_bridges": "Gyerek Hidak",
|
||||
"child_bridges_status": "{{ok}}/{{total}}",
|
||||
"up": "Up",
|
||||
"pending": "Pending",
|
||||
"down": "Down"
|
||||
"up": "Fut",
|
||||
"pending": "Függőben",
|
||||
"down": "Áll"
|
||||
},
|
||||
"autobrr": {
|
||||
"approvedPushes": "Approved",
|
||||
"rejectedPushes": "Rejected",
|
||||
"filters": "Filters",
|
||||
"indexers": "Indexers"
|
||||
"approvedPushes": "Jóváhagyott",
|
||||
"rejectedPushes": "Elutasított",
|
||||
"filters": "Szűrők",
|
||||
"indexers": "Indexelők"
|
||||
},
|
||||
"watchtower": {
|
||||
"containers_scanned": "Scanned",
|
||||
"containers_updated": "Updated",
|
||||
"containers_failed": "Failed"
|
||||
"containers_scanned": "Beolvasott",
|
||||
"containers_updated": "Frissített",
|
||||
"containers_failed": "Sikertelen"
|
||||
},
|
||||
"tubearchivist": {
|
||||
"downloads": "Queue",
|
||||
"videos": "Videos",
|
||||
"channels": "Channels",
|
||||
"playlists": "Playlists"
|
||||
"downloads": "Várólista",
|
||||
"videos": "Videók",
|
||||
"channels": "Csatornák",
|
||||
"playlists": "Lejátszási listák"
|
||||
},
|
||||
"truenas": {
|
||||
"load": "System Load",
|
||||
"uptime": "Uptime",
|
||||
"alerts": "Alerts",
|
||||
"load": "Rendszerterheltség",
|
||||
"uptime": "Üzemidő",
|
||||
"alerts": "Riasztások",
|
||||
"time": "{{value, number(style: unit; unitDisplay: long;)}}"
|
||||
},
|
||||
"navidrome": {
|
||||
"nothing_streaming": "No Active Streams",
|
||||
"please_wait": "Please Wait"
|
||||
"nothing_streaming": "Nincsenek Aktív Stream-ek",
|
||||
"please_wait": "Kérjük Várjon"
|
||||
},
|
||||
"pyload": {
|
||||
"speed": "Speed",
|
||||
"active": "Active",
|
||||
"queue": "Queue",
|
||||
"total": "Total"
|
||||
"speed": "Sebesség",
|
||||
"active": "Aktív",
|
||||
"queue": "Várólista",
|
||||
"total": "Összes"
|
||||
},
|
||||
"gluetun": {
|
||||
"public_ip": "Public IP",
|
||||
"region": "Region",
|
||||
"country": "Country"
|
||||
"public_ip": "Nyilvános IP-cím",
|
||||
"region": "Régió",
|
||||
"country": "Ország"
|
||||
},
|
||||
"hdhomerun": {
|
||||
"channels": "Channels",
|
||||
"channels": "Csatornák",
|
||||
"hd": "HD"
|
||||
},
|
||||
"ping": {
|
||||
"error": "Error",
|
||||
"error": "Hiba",
|
||||
"ping": "Ping"
|
||||
},
|
||||
"scrutiny": {
|
||||
"passed": "Passed",
|
||||
"failed": "Failed",
|
||||
"unknown": "Unknown"
|
||||
"passed": "Megfelelt",
|
||||
"failed": "Sikertelen",
|
||||
"unknown": "Ismeretlen"
|
||||
},
|
||||
"paperlessngx": {
|
||||
"inbox": "Inbox",
|
||||
"total": "Total"
|
||||
"inbox": "Beérkezett",
|
||||
"total": "Összes"
|
||||
},
|
||||
"deluge": {
|
||||
"download": "Download",
|
||||
"download": "Letöltés",
|
||||
"seed": "Seed",
|
||||
"upload": "Upload",
|
||||
"upload": "Feltöltés",
|
||||
"leech": "Leech"
|
||||
},
|
||||
"flood": {
|
||||
"download": "Download",
|
||||
"upload": "Upload",
|
||||
"download": "Letöltés",
|
||||
"upload": "Feltöltés",
|
||||
"leech": "Leech",
|
||||
"seed": "Seed"
|
||||
},
|
||||
"tdarr": {
|
||||
"queue": "Queue",
|
||||
"processed": "Processed",
|
||||
"errored": "Errored",
|
||||
"saved": "Saved"
|
||||
"queue": "Várólista",
|
||||
"processed": "Feldolgozott",
|
||||
"errored": "Hibás",
|
||||
"saved": "Mentett"
|
||||
},
|
||||
"miniflux": {
|
||||
"read": "Read",
|
||||
"unread": "Unread"
|
||||
"read": "Olvasott",
|
||||
"unread": "Olvasatlan"
|
||||
},
|
||||
"nextdns": {
|
||||
"wait": "Please Wait",
|
||||
"no_devices": "No Device Data Received"
|
||||
"wait": "Kérjük Várjon",
|
||||
"no_devices": "Nincs fogadott eszközadat"
|
||||
},
|
||||
"common": {
|
||||
"bibyterate": "{{value, rate(bits: false; binary: true)}}",
|
||||
"bibitrate": "{{value, rate(bits: true; binary: true)}}"
|
||||
},
|
||||
"omada": {
|
||||
"activeUser": "Active devices",
|
||||
"alerts": "Alerts",
|
||||
"connectedAp": "Connected APs",
|
||||
"connectedGateway": "Connected gateways",
|
||||
"connectedSwitches": "Connected switches"
|
||||
"activeUser": "Aktív eszközök",
|
||||
"alerts": "Riasztások",
|
||||
"connectedAp": "Csatlakoztatott AP-k",
|
||||
"connectedGateway": "Csatlakoztatott gateway-ek",
|
||||
"connectedSwitches": "Csatlakoztatott switch-ek"
|
||||
},
|
||||
"downloadstation": {
|
||||
"download": "Download",
|
||||
"upload": "Upload",
|
||||
"download": "Letöltés",
|
||||
"upload": "Feltöltés",
|
||||
"leech": "Leech",
|
||||
"seed": "Seed"
|
||||
},
|
||||
"mikrotik": {
|
||||
"cpuLoad": "CPU Load",
|
||||
"memoryUsed": "Memory Used",
|
||||
"uptime": "Uptime",
|
||||
"numberOfLeases": "Leases"
|
||||
"cpuLoad": "Processzor Terhelés",
|
||||
"memoryUsed": "Felhasznált Memória",
|
||||
"uptime": "Üzemidő",
|
||||
"numberOfLeases": "Bérletek"
|
||||
},
|
||||
"xteve": {
|
||||
"streams_all": "All Streams",
|
||||
"streams_active": "Active Streams",
|
||||
"streams_xepg": "XEPG Channels"
|
||||
"streams_all": "Minden Stream",
|
||||
"streams_active": "Aktív Stream-ek",
|
||||
"streams_xepg": "XEPG Csatornák"
|
||||
},
|
||||
"opnsense": {
|
||||
"cpu": "CPU Load",
|
||||
"memory": "Active Memory",
|
||||
"wanUpload": "WAN Upload",
|
||||
"wanDownload": "WAN Download"
|
||||
"cpu": "Processzor Terhelés",
|
||||
"memory": "Aktív Memória",
|
||||
"wanUpload": "WAN Feltöltés",
|
||||
"wanDownload": "WAN Letöltés"
|
||||
},
|
||||
"moonraker": {
|
||||
"layers": "Layers",
|
||||
"printer_state": "Printer State",
|
||||
"print_status": "Print Status",
|
||||
"print_progress": "Progress"
|
||||
"layers": "Rétegek",
|
||||
"printer_state": "Nyomtató Állapota",
|
||||
"print_status": "Nyomtatás Állapota",
|
||||
"print_progress": "Folyamat"
|
||||
},
|
||||
"medusa": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"series": "Series"
|
||||
"wanted": "Keresett",
|
||||
"queued": "Sorba állítva",
|
||||
"series": "Sorozatok"
|
||||
},
|
||||
"octoprint": {
|
||||
"printer_state": "Status",
|
||||
"temp_tool": "Tool temp",
|
||||
"temp_bed": "Bed temp",
|
||||
"job_completion": "Completion"
|
||||
"printer_state": "Állapot",
|
||||
"temp_tool": "Szerszám hőmérséklet",
|
||||
"temp_bed": "Ágy Hőmérséklet",
|
||||
"job_completion": "Teljesítés"
|
||||
},
|
||||
"cloudflared": {
|
||||
"origin_ip": "Origin IP",
|
||||
"status": "Status"
|
||||
"origin_ip": "Eredeti IP",
|
||||
"status": "Állapot"
|
||||
},
|
||||
"proxmoxbackupserver": {
|
||||
"datastore_usage": "Datastore",
|
||||
"failed_tasks_24h": "Failed Tasks 24h",
|
||||
"cpu_usage": "CPU",
|
||||
"memory_usage": "Memory"
|
||||
"datastore_usage": "Adattár",
|
||||
"failed_tasks_24h": "Sikertelen feladatok 24h",
|
||||
"cpu_usage": "Processzor",
|
||||
"memory_usage": "Memória"
|
||||
},
|
||||
"immich": {
|
||||
"users": "Users",
|
||||
"photos": "Photos",
|
||||
"videos": "Videos",
|
||||
"storage": "Storage"
|
||||
"users": "Felhasználók",
|
||||
"photos": "Fényképek",
|
||||
"videos": "Videók",
|
||||
"storage": "Tárhely"
|
||||
},
|
||||
"uptimekuma": {
|
||||
"up": "Sites Up",
|
||||
"down": "Sites Down",
|
||||
"uptime": "Uptime",
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
"up": "Futó Webhelyek",
|
||||
"down": "Nem Elérhető Webhelyek",
|
||||
"uptime": "Üzemidő",
|
||||
"incident": "Incidens",
|
||||
"m": "perc"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
"books": "Books"
|
||||
"libraries": "Könyvtárak",
|
||||
"series": "Sorozatok",
|
||||
"books": "Könyvek"
|
||||
},
|
||||
"mylar": {
|
||||
"series": "Series",
|
||||
"issues": "Issues",
|
||||
"wanted": "Wanted"
|
||||
"series": "Sorozatok",
|
||||
"issues": "Problémák",
|
||||
"wanted": "Keresett"
|
||||
},
|
||||
"photoprism": {
|
||||
"albums": "Albums",
|
||||
"photos": "Photos",
|
||||
"videos": "Videos",
|
||||
"people": "People"
|
||||
"albums": "Albumok",
|
||||
"photos": "Fényképek",
|
||||
"videos": "Videók",
|
||||
"people": "Emberek"
|
||||
},
|
||||
"diskstation": {
|
||||
"days": "Days",
|
||||
"uptime": "Uptime",
|
||||
"volumeAvailable": "Available"
|
||||
"days": "Napok",
|
||||
"uptime": "Üzemidő",
|
||||
"volumeAvailable": "Elérhető"
|
||||
},
|
||||
"fileflows": {
|
||||
"queue": "Queue",
|
||||
"processing": "Processing",
|
||||
"processed": "Processed",
|
||||
"time": "Time"
|
||||
"queue": "Várólista",
|
||||
"processing": "Feldolgozás",
|
||||
"processed": "Feldolgozott",
|
||||
"time": "Idő"
|
||||
},
|
||||
"grafana": {
|
||||
"dashboards": "Dashboards",
|
||||
"datasources": "Data Sources",
|
||||
"totalalerts": "Total Alerts",
|
||||
"alertstriggered": "Alerts Triggered"
|
||||
"dashboards": "Műszerfalak",
|
||||
"datasources": "Adatforrások",
|
||||
"totalalerts": "Összes Riasztás",
|
||||
"alertstriggered": "Aktivált riasztások"
|
||||
},
|
||||
"nextcloud": {
|
||||
"cpuload": "Cpu Load",
|
||||
"memoryusage": "Memory Usage",
|
||||
"freespace": "Free Space",
|
||||
"activeusers": "Active Users",
|
||||
"numfiles": "Files",
|
||||
"numshares": "Shared Items"
|
||||
"cpuload": "Processzor Terhelés",
|
||||
"memoryusage": "Memória Használat",
|
||||
"freespace": "Szabad hely",
|
||||
"activeusers": "Aktív Felhasználók",
|
||||
"numfiles": "Fájlok",
|
||||
"numshares": "Megosztott Elemek"
|
||||
},
|
||||
"kopia": {
|
||||
"status": "Status",
|
||||
"size": "Size",
|
||||
"lastrun": "Last Run",
|
||||
"nextrun": "Next Run",
|
||||
"failed": "Failed"
|
||||
"status": "Állapot",
|
||||
"size": "Méret",
|
||||
"lastrun": "Legutóbbi futtatás",
|
||||
"nextrun": "Következő Futtatás",
|
||||
"failed": "Sikertelen"
|
||||
},
|
||||
"unmanic": {
|
||||
"active_workers": "Active Workers",
|
||||
"total_workers": "Total Workers",
|
||||
"records_total": "Queue Length"
|
||||
"active_workers": "Aktív Dolgozók",
|
||||
"total_workers": "Összes Dolgozó",
|
||||
"records_total": "Várólista Hossza"
|
||||
},
|
||||
"healthchecks": {
|
||||
"new": "New",
|
||||
"new": "Új",
|
||||
"up": "Online",
|
||||
"grace": "In Grace Period",
|
||||
"grace": "Türelmi idő alatt",
|
||||
"down": "Offline",
|
||||
"paused": "Paused",
|
||||
"status": "Status",
|
||||
"last_ping": "Last Ping",
|
||||
"never": "No pings yet"
|
||||
"paused": "Szünetel",
|
||||
"status": "Állapot",
|
||||
"last_ping": "Legutóbbi Ping",
|
||||
"never": "Még nincsenek ping-ek"
|
||||
},
|
||||
"pterodactyl": {
|
||||
"servers": "Servers",
|
||||
"nodes": "Nodes"
|
||||
"servers": "Szerverek",
|
||||
"nodes": "Node-ok"
|
||||
},
|
||||
"prometheus": {
|
||||
"targets_up": "Targets Up",
|
||||
"targets_down": "Targets Down",
|
||||
"targets_total": "Total Targets"
|
||||
"targets_up": "Célpontok Futnak",
|
||||
"targets_down": "Célpontok Állnak",
|
||||
"targets_total": "Összes Célpont"
|
||||
},
|
||||
"minecraft": {
|
||||
"players": "Players",
|
||||
"version": "Version",
|
||||
"status": "Status",
|
||||
"players": "Lejátszók",
|
||||
"version": "Verzió",
|
||||
"status": "Állapot",
|
||||
"up": "Online",
|
||||
"down": "Offline"
|
||||
},
|
||||
"ghostfolio": {
|
||||
"gross_percent_today": "Today",
|
||||
"gross_percent_1y": "One year",
|
||||
"gross_percent_max": "All time"
|
||||
"gross_percent_today": "Ma",
|
||||
"gross_percent_1y": "Egy év",
|
||||
"gross_percent_max": "Mindig"
|
||||
},
|
||||
"audiobookshelf": {
|
||||
"podcasts": "Podcasts",
|
||||
"books": "Books",
|
||||
"podcastsDuration": "Duration",
|
||||
"booksDuration": "Duration"
|
||||
"podcasts": "Podcast",
|
||||
"books": "Könyv",
|
||||
"podcastsDuration": "Időtartam",
|
||||
"booksDuration": "Időtartam"
|
||||
},
|
||||
"homeassistant": {
|
||||
"people_home": "People Home",
|
||||
"lights_on": "Lights On",
|
||||
"switches_on": "Switches On"
|
||||
"people_home": "Emberek otthon",
|
||||
"lights_on": "Fények bekapcsolva",
|
||||
"switches_on": "Kapcsolók felkapcsolva"
|
||||
},
|
||||
"freshrss": {
|
||||
"subscriptions": "Subscriptions",
|
||||
"unread": "Unread"
|
||||
"subscriptions": "Előfizetések",
|
||||
"unread": "Olvasatlan"
|
||||
},
|
||||
"channelsdvrserver": {
|
||||
"shows": "Shows",
|
||||
"recordings": "Recordings",
|
||||
"scheduled": "Scheduled",
|
||||
"passes": "Passes"
|
||||
"shows": "Műsorok",
|
||||
"recordings": "Felvételek",
|
||||
"scheduled": "Ütemezett",
|
||||
"passes": "Engedélyek"
|
||||
},
|
||||
"whatsupdocker": {
|
||||
"monitoring": "Monitoring",
|
||||
"updates": "Updates"
|
||||
"monitoring": "Nyomonkövetés",
|
||||
"updates": "Frissítések"
|
||||
},
|
||||
"tailscale": {
|
||||
"address": "Address",
|
||||
"expires": "Expires",
|
||||
"never": "Never",
|
||||
"last_seen": "Last Seen",
|
||||
"now": "Now",
|
||||
"address": "Cím",
|
||||
"expires": "Lejár",
|
||||
"never": "Soha",
|
||||
"last_seen": "Utoljára látott",
|
||||
"now": "Most",
|
||||
"years": "{{number}}y",
|
||||
"weeks": "{{number}}w",
|
||||
"days": "{{number}}d",
|
||||
"minutes": "{{number}}m",
|
||||
"seconds": "{{number}}s",
|
||||
"ago": "{{value}} Ago",
|
||||
"ago": "{{value}} Ezelőtt",
|
||||
"hours": "{{number}}h"
|
||||
},
|
||||
"qnap": {
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"cpuUsage": "Processzor Használat",
|
||||
"memUsage": "Memória Használat",
|
||||
"systemTempC": "Rendszerhőmérséklet",
|
||||
"poolUsage": "Pool Használat",
|
||||
"volumeUsage": "Kötet Használat",
|
||||
"invalid": "Érvénytelen"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
"memory": "Mem Usage",
|
||||
"wanStatus": "WAN Status",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"temp": "Temp",
|
||||
"disk": "Disk Usage",
|
||||
"load": "Átlagos terhelés",
|
||||
"memory": "RAM Használat",
|
||||
"wanStatus": "WAN Állapot",
|
||||
"up": "Fut",
|
||||
"down": "Áll",
|
||||
"temp": "Hőmérséklet",
|
||||
"disk": "Lemezhasználat",
|
||||
"wanIP": "WAN IP"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Upstreams",
|
||||
"requests": "Current requests",
|
||||
"requests_failed": "Failed requests"
|
||||
"upstreams": "Upstreamek",
|
||||
"requests": "Jelenlegi kérelmek",
|
||||
"requests_failed": "Sikertelen kérelmek"
|
||||
},
|
||||
"evcc": {
|
||||
"pv_power": "Production",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"pv_power": "Termelés",
|
||||
"battery_soc": "Akkumulátor",
|
||||
"grid_power": "Rács",
|
||||
"home_power": "Fogyasztás",
|
||||
"charge_power": "Töltő",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Összes",
|
||||
"connected": "Csatlakoztatott",
|
||||
"new_devices": "Új Eszközök",
|
||||
"down_alerts": "Leállási Figyelmeztetések"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadSpeed": "Sebesség",
|
||||
"downloadCount": "Összes függőben lévő",
|
||||
"downloadTotalBytes": "Méret",
|
||||
"downloadBytesRemaining": "Fennmaradó"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Sorozatok",
|
||||
"totalFiles": "Fájlok"
|
||||
},
|
||||
"gamedig": {
|
||||
"ping": "Ping",
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"status": "Status",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved",
|
||||
"result": "Result",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"series": "Series",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
737
public/locales/id/common.json
Normal file
737
public/locales/id/common.json
Normal file
@@ -0,0 +1,737 @@
|
||||
{
|
||||
"nzbget": {
|
||||
"downloaded": "Downloaded",
|
||||
"rate": "Rate",
|
||||
"remaining": "Remaining"
|
||||
},
|
||||
"plex": {
|
||||
"streams": "Active Streams",
|
||||
"albums": "Albums",
|
||||
"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"
|
||||
},
|
||||
"qnap": {
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"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",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Wanted",
|
||||
"missing": "Missing",
|
||||
"queued": "Queued",
|
||||
"movies": "Movies",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"artists": "Artists"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"books": "Books"
|
||||
},
|
||||
"bazarr": {
|
||||
"missingEpisodes": "Missing Episodes",
|
||||
"missingMovies": "Missing Movies"
|
||||
},
|
||||
"ombi": {
|
||||
"pending": "Pending",
|
||||
"approved": "Approved",
|
||||
"available": "Available"
|
||||
},
|
||||
"jellyseerr": {
|
||||
"approved": "Approved",
|
||||
"pending": "Pending",
|
||||
"available": "Available"
|
||||
},
|
||||
"overseerr": {
|
||||
"approved": "Approved",
|
||||
"available": "Available",
|
||||
"pending": "Pending",
|
||||
"processing": "Processing"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"pihole": {
|
||||
"queries": "Queries",
|
||||
"blocked": "Blocked",
|
||||
"blocked_percent": "Blocked %",
|
||||
"gravity": "Gravity"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "Queries",
|
||||
"blocked": "Blocked",
|
||||
"filtered": "Filtered",
|
||||
"latency": "Latency"
|
||||
},
|
||||
"speedtest": {
|
||||
"upload": "Upload",
|
||||
"download": "Download",
|
||||
"ping": "Ping"
|
||||
},
|
||||
"tailscale": {
|
||||
"address": "Address",
|
||||
"expires": "Expires",
|
||||
"never": "Never",
|
||||
"last_seen": "Last Seen",
|
||||
"now": "Now",
|
||||
"years": "{{number}}y",
|
||||
"weeks": "{{number}}w",
|
||||
"days": "{{number}}d",
|
||||
"hours": "{{number}}h",
|
||||
"minutes": "{{number}}m",
|
||||
"seconds": "{{number}}s",
|
||||
"ago": "{{value}} Ago"
|
||||
},
|
||||
"tdarr": {
|
||||
"queue": "Queue",
|
||||
"processed": "Processed",
|
||||
"errored": "Errored",
|
||||
"saved": "Saved"
|
||||
},
|
||||
"traefik": {
|
||||
"routers": "Routers",
|
||||
"services": "Services",
|
||||
"middleware": "Middleware"
|
||||
},
|
||||
"npm": {
|
||||
"disabled": "Disabled",
|
||||
"enabled": "Enabled",
|
||||
"total": "Total"
|
||||
},
|
||||
"navidrome": {
|
||||
"nothing_streaming": "No Active Streams",
|
||||
"please_wait": "Please Wait"
|
||||
},
|
||||
"coinmarketcap": {
|
||||
"configure": "Configure one or more crypto currencies to track",
|
||||
"1hour": "1 Hour",
|
||||
"1day": "1 Day",
|
||||
"7days": "7 Days",
|
||||
"30days": "30 Days"
|
||||
},
|
||||
"prowlarr": {
|
||||
"numberOfGrabs": "Grabs",
|
||||
"numberOfQueries": "Queries",
|
||||
"enableIndexers": "Indexers",
|
||||
"numberOfFailGrabs": "Fail Grabs",
|
||||
"numberOfFailQueries": "Fail Queries"
|
||||
},
|
||||
"gotify": {
|
||||
"apps": "Applications",
|
||||
"clients": "Clients",
|
||||
"messages": "Messages"
|
||||
},
|
||||
"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"
|
||||
},
|
||||
"authentik": {
|
||||
"loginsLast24H": "Logins (24h)",
|
||||
"failedLoginsLast24H": "Failed Logins (24h)",
|
||||
"users": "Users"
|
||||
},
|
||||
"proxmox": {
|
||||
"cpu": "CPU",
|
||||
"lxc": "LXC",
|
||||
"vms": "VMs",
|
||||
"mem": "MEM"
|
||||
},
|
||||
"glances": {
|
||||
"temp": "TEMP",
|
||||
"warn": "Warn",
|
||||
"uptime": "UP",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"cpu": "CPU",
|
||||
"load": "Load",
|
||||
"wait": "Please wait",
|
||||
"used": "Used",
|
||||
"days": "d",
|
||||
"hours": "h",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"quicklaunch": {
|
||||
"bookmark": "Bookmark",
|
||||
"service": "Service",
|
||||
"search": "Search",
|
||||
"custom": "Custom",
|
||||
"visit": "Visit",
|
||||
"url": "URL"
|
||||
},
|
||||
"wmo": {
|
||||
"0-night": "Clear",
|
||||
"0-day": "Sunny",
|
||||
"1-day": "Mainly Sunny",
|
||||
"1-night": "Mainly Clear",
|
||||
"2-day": "Partly Cloudy",
|
||||
"2-night": "Partly Cloudy",
|
||||
"56-day": "Light Freezing Drizzle",
|
||||
"56-night": "Light Freezing Drizzle",
|
||||
"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",
|
||||
"57-day": "Freezing Drizzle",
|
||||
"57-night": "Freezing Drizzle",
|
||||
"61-day": "Light Rain",
|
||||
"61-night": "Light Rain",
|
||||
"63-day": "Rain",
|
||||
"63-night": "Rain",
|
||||
"71-day": "Light Snow",
|
||||
"71-night": "Light Snow",
|
||||
"73-day": "Snow",
|
||||
"73-night": "Snow",
|
||||
"65-day": "Heavy Rain",
|
||||
"65-night": "Heavy Rain",
|
||||
"66-day": "Freezing Rain",
|
||||
"66-night": "Freezing Rain",
|
||||
"67-day": "Freezing Rain",
|
||||
"67-night": "Freezing Rain",
|
||||
"75-day": "Heavy Snow",
|
||||
"75-night": "Heavy Snow",
|
||||
"77-day": "Snow Grains",
|
||||
"77-night": "Snow Grains",
|
||||
"80-day": "Light 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",
|
||||
"99-day": "Thunderstorm With Hail",
|
||||
"99-night": "Thunderstorm With Hail",
|
||||
"80-night": "Light Showers",
|
||||
"81-day": "Showers",
|
||||
"81-night": "Showers",
|
||||
"95-day": "Thunderstorm",
|
||||
"95-night": "Thunderstorm",
|
||||
"96-day": "Thunderstorm With Hail",
|
||||
"96-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": {
|
||||
"grace": "In Grace Period",
|
||||
"down": "Offline",
|
||||
"paused": "Paused",
|
||||
"status": "Status",
|
||||
"last_ping": "Last Ping",
|
||||
"never": "No pings yet",
|
||||
"new": "New",
|
||||
"up": "Online"
|
||||
},
|
||||
"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"
|
||||
},
|
||||
"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": {
|
||||
"print_status": "Print Status",
|
||||
"printer_state": "Printer State",
|
||||
"print_progress": "Progress",
|
||||
"layers": "Layers"
|
||||
},
|
||||
"octoprint": {
|
||||
"printer_state": "Status",
|
||||
"temp_bed": "Bed temp",
|
||||
"job_completion": "Completion",
|
||||
"temp_tool": "Tool temp"
|
||||
},
|
||||
"cloudflared": {
|
||||
"origin_ip": "Origin IP",
|
||||
"status": "Status"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
"memory": "Mem Usage",
|
||||
"wanStatus": "WAN Status",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"temp": "Temp",
|
||||
"disk": "Disk Usage",
|
||||
"wanIP": "WAN IP"
|
||||
},
|
||||
"proxmoxbackupserver": {
|
||||
"datastore_usage": "Datastore",
|
||||
"failed_tasks_24h": "Failed Tasks 24h",
|
||||
"cpu_usage": "CPU",
|
||||
"memory_usage": "Memory"
|
||||
},
|
||||
"immich": {
|
||||
"videos": "Videos",
|
||||
"storage": "Storage",
|
||||
"users": "Users",
|
||||
"photos": "Photos"
|
||||
},
|
||||
"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": {
|
||||
"people": "People",
|
||||
"albums": "Albums",
|
||||
"photos": "Photos",
|
||||
"videos": "Videos"
|
||||
},
|
||||
"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",
|
||||
"numfiles": "Files",
|
||||
"numshares": "Shared Items"
|
||||
},
|
||||
"kopia": {
|
||||
"status": "Status",
|
||||
"nextrun": "Next Run",
|
||||
"size": "Size",
|
||||
"failed": "Failed",
|
||||
"lastrun": "Last Run"
|
||||
},
|
||||
"unmanic": {
|
||||
"active_workers": "Active Workers",
|
||||
"total_workers": "Total Workers",
|
||||
"records_total": "Queue Length"
|
||||
},
|
||||
"ghostfolio": {
|
||||
"gross_percent_max": "All time",
|
||||
"gross_percent_today": "Today",
|
||||
"gross_percent_1y": "One year"
|
||||
},
|
||||
"audiobookshelf": {
|
||||
"podcasts": "Podcasts",
|
||||
"podcastsDuration": "Duration",
|
||||
"books": "Books",
|
||||
"booksDuration": "Duration"
|
||||
},
|
||||
"homeassistant": {
|
||||
"people_home": "People Home",
|
||||
"lights_on": "Lights On",
|
||||
"switches_on": "Switches On"
|
||||
},
|
||||
"whatsupdocker": {
|
||||
"monitoring": "Monitoring",
|
||||
"updates": "Updates"
|
||||
},
|
||||
"weather": {
|
||||
"wait": "Harap tunggu",
|
||||
"current": "Lokasi Saat Ini",
|
||||
"allow": "Klik untuk mengizinkan",
|
||||
"updating": "Memperbarui"
|
||||
},
|
||||
"search": {
|
||||
"placeholder": "Telusuri…"
|
||||
},
|
||||
"unifi": {
|
||||
"lan_devices": "LAN Devices",
|
||||
"wlan_devices": "WLAN Devices",
|
||||
"lan_users": "LAN Users",
|
||||
"users": "Users",
|
||||
"uptime": "System Uptime",
|
||||
"days": "Days",
|
||||
"wan": "WAN",
|
||||
"lan": "LAN",
|
||||
"wlan": "WLAN",
|
||||
"devices": "Devices",
|
||||
"wlan_users": "WLAN Users",
|
||||
"up": "UP",
|
||||
"down": "DOWN",
|
||||
"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",
|
||||
"healthy": "Healthy",
|
||||
"starting": "Starting",
|
||||
"unhealthy": "Unhealthy",
|
||||
"not_found": "Not Found",
|
||||
"exited": "Exited",
|
||||
"partial": "Partial"
|
||||
},
|
||||
"freshrss": {
|
||||
"unread": "Unread",
|
||||
"subscriptions": "Subscriptions"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Upstreams",
|
||||
"requests": "Current requests",
|
||||
"requests_failed": "Failed requests"
|
||||
},
|
||||
"omada": {
|
||||
"connectedAp": "Connected APs",
|
||||
"activeUser": "Active devices",
|
||||
"alerts": "Alerts",
|
||||
"connectedGateway": "Connected gateways",
|
||||
"connectedSwitches": "Connected switches"
|
||||
},
|
||||
"portainer": {
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"total": "Total"
|
||||
},
|
||||
"miniflux": {
|
||||
"read": "Read",
|
||||
"unread": "Unread"
|
||||
},
|
||||
"scrutiny": {
|
||||
"passed": "Passed",
|
||||
"failed": "Failed",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"pterodactyl": {
|
||||
"servers": "Servers",
|
||||
"nodes": "Nodes"
|
||||
},
|
||||
"prometheus": {
|
||||
"targets_up": "Targets Up",
|
||||
"targets_down": "Targets Down",
|
||||
"targets_total": "Total Targets"
|
||||
},
|
||||
"common": {
|
||||
"bibyterate": "{{value, rate(bits: false; binary: true)}}",
|
||||
"bibitrate": "{{value, rate(bits: true; binary: true)}}"
|
||||
},
|
||||
"widget": {
|
||||
"missing_type": "Missing Widget Type: {{type}}",
|
||||
"api_error": "API Error",
|
||||
"information": "Informasi",
|
||||
"status": "Status",
|
||||
"url": "URL",
|
||||
"raw_error": "Raw Error",
|
||||
"response_data": "Response Data"
|
||||
},
|
||||
"resources": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"total": "Total",
|
||||
"free": "Luang",
|
||||
"used": "Digunakan",
|
||||
"load": "Load",
|
||||
"temp": "TEMP",
|
||||
"max": "Maks",
|
||||
"uptime": "UP",
|
||||
"months": "mo",
|
||||
"hours": "h",
|
||||
"days": "d",
|
||||
"minutes": "m"
|
||||
},
|
||||
"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"
|
||||
},
|
||||
"evcc": {
|
||||
"pv_power": "Production",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"flood": {
|
||||
"download": "Download",
|
||||
"upload": "Upload",
|
||||
"leech": "Leech",
|
||||
"seed": "Seed"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Total Observed",
|
||||
"diffsDetected": "Diffs Detected"
|
||||
},
|
||||
"channelsdvrserver": {
|
||||
"shows": "Shows",
|
||||
"recordings": "Recordings",
|
||||
"scheduled": "Scheduled",
|
||||
"passes": "Passes"
|
||||
},
|
||||
"tautulli": {
|
||||
"playing": "Playing",
|
||||
"transcoding": "Transcoding",
|
||||
"bitrate": "Bitrate",
|
||||
"no_active": "No Active Streams",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
@@ -7,29 +7,30 @@
|
||||
"rx": "RX",
|
||||
"error": "Errore",
|
||||
"unknown": "Sconosciuto",
|
||||
"running": "Running",
|
||||
"starting": "Starting",
|
||||
"unhealthy": "Unhealthy",
|
||||
"not_found": "Not Found",
|
||||
"exited": "Exited",
|
||||
"partial": "Partial",
|
||||
"healthy": "Healthy"
|
||||
"running": "In esecuzione",
|
||||
"starting": "In avvio",
|
||||
"unhealthy": "Non sano",
|
||||
"not_found": "Non trovato",
|
||||
"exited": "Uscito",
|
||||
"partial": "Parziale",
|
||||
"healthy": "Sano"
|
||||
},
|
||||
"emby": {
|
||||
"playing": "In riproduzione",
|
||||
"transcoding": "Transcodifica",
|
||||
"bitrate": "Bitrate",
|
||||
"no_active": "Nessuno Stream Attivo",
|
||||
"movies": "Movies",
|
||||
"series": "Series",
|
||||
"episodes": "Episodes",
|
||||
"songs": "Songs"
|
||||
"movies": "Film",
|
||||
"series": "Serie",
|
||||
"episodes": "Episodi",
|
||||
"songs": "Canzoni"
|
||||
},
|
||||
"tautulli": {
|
||||
"playing": "In riproduzione",
|
||||
"transcoding": "Transcodifica",
|
||||
"bitrate": "Bitrate",
|
||||
"no_active": "Nessuno Stream Attivo"
|
||||
"no_active": "Nessuno Stream Attivo",
|
||||
"plex_connection_error": "Controllo Connessione a Plex"
|
||||
},
|
||||
"speedtest": {
|
||||
"upload": "Upload",
|
||||
@@ -52,7 +53,7 @@
|
||||
"status": "Stato",
|
||||
"url": "URL",
|
||||
"information": "Informazione",
|
||||
"raw_error": "Raw Error",
|
||||
"raw_error": "Errore non processato",
|
||||
"response_data": "Dati risposta"
|
||||
},
|
||||
"search": {
|
||||
@@ -81,13 +82,17 @@
|
||||
"sonarr": {
|
||||
"series": "Serie",
|
||||
"wanted": "Richiesti",
|
||||
"queued": "In coda"
|
||||
"queued": "In coda",
|
||||
"queue": "Coda",
|
||||
"unknown": "Sconosciuto"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Richiesti",
|
||||
"queued": "In coda",
|
||||
"movies": "Film",
|
||||
"missing": "Mancanti"
|
||||
"missing": "Mancanti",
|
||||
"queue": "Coda",
|
||||
"unknown": "Sconosciuto"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Richiesti",
|
||||
@@ -108,10 +113,10 @@
|
||||
"queries": "Richieste",
|
||||
"blocked": "Bloccati",
|
||||
"gravity": "Severità",
|
||||
"blocked_percent": "Blocked %"
|
||||
"blocked_percent": "Bloccato %"
|
||||
},
|
||||
"npm": {
|
||||
"enabled": "Attivi",
|
||||
"enabled": "Abilitato",
|
||||
"disabled": "Disabilitati",
|
||||
"total": "Totali"
|
||||
},
|
||||
@@ -151,7 +156,7 @@
|
||||
},
|
||||
"prowlarr": {
|
||||
"enableIndexers": "Indicizzatori",
|
||||
"numberOfGrabs": "Grabs",
|
||||
"numberOfGrabs": "Grab",
|
||||
"numberOfQueries": "Interrogazioni",
|
||||
"numberOfFailGrabs": "Grabs Falliti",
|
||||
"numberOfFailQueries": "Queries Fallite"
|
||||
@@ -159,21 +164,21 @@
|
||||
"transmission": {
|
||||
"download": "Download",
|
||||
"upload": "Upload",
|
||||
"leech": "Leech",
|
||||
"leech": "In scaricamento",
|
||||
"seed": "Seed"
|
||||
},
|
||||
"jackett": {
|
||||
"configured": "Configurato",
|
||||
"errored": "Errore"
|
||||
"errored": "In errore"
|
||||
},
|
||||
"bazarr": {
|
||||
"missingEpisodes": "Episodi Mancanti",
|
||||
"missingMovies": "Film Mancanti"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Mancanti",
|
||||
"wanted": "Richiesto",
|
||||
"queued": "In coda",
|
||||
"albums": "Album"
|
||||
"artists": "Artisti"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "Interrogazioni",
|
||||
@@ -183,7 +188,7 @@
|
||||
},
|
||||
"qbittorrent": {
|
||||
"download": "Download",
|
||||
"leech": "Leech",
|
||||
"leech": "In scaricamento",
|
||||
"upload": "Upload",
|
||||
"seed": "Seed"
|
||||
},
|
||||
@@ -224,22 +229,33 @@
|
||||
"devices": "Dispositivi",
|
||||
"lan_devices": "Dispositivi LAN",
|
||||
"wlan_devices": "Dispositivi WLAN",
|
||||
"empty_data": "Subsystem status unknown"
|
||||
"empty_data": "Stato del sottosistema sconosciuto"
|
||||
},
|
||||
"plex": {
|
||||
"streams": "Trasmissioni attive",
|
||||
"movies": "Film",
|
||||
"tv": "Programma televisivo",
|
||||
"albums": "Albums"
|
||||
"albums": "Album"
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Attendere prego",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"days": "g",
|
||||
"hours": "o",
|
||||
"load": "Carico",
|
||||
"warn": "Avviso",
|
||||
"total": "Totale",
|
||||
"free": "Libero",
|
||||
"used": "Usato",
|
||||
"crit": "Critico",
|
||||
"read": "Lettura",
|
||||
"write": "Scrittura",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem.",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp."
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Totale Osservato",
|
||||
@@ -306,9 +322,9 @@
|
||||
"quicklaunch": {
|
||||
"bookmark": "Segnalibro",
|
||||
"service": "Servizio",
|
||||
"search": "Search",
|
||||
"custom": "Custom",
|
||||
"visit": "Visit",
|
||||
"search": "Cerca",
|
||||
"custom": "Personalizzato",
|
||||
"visit": "Visita",
|
||||
"url": "URL"
|
||||
},
|
||||
"homebridge": {
|
||||
@@ -316,10 +332,10 @@
|
||||
"updates": "Aggiornamenti",
|
||||
"update_available": "Aggiornamento Disponibile",
|
||||
"up_to_date": "Aggiornato",
|
||||
"child_bridges": "Child Bridges",
|
||||
"child_bridges": "Bridge Figli",
|
||||
"child_bridges_status": "{{ok}}/{{total}}",
|
||||
"up": "Up",
|
||||
"pending": "Pending",
|
||||
"pending": "In attesa",
|
||||
"down": "Down"
|
||||
},
|
||||
"autobrr": {
|
||||
@@ -358,7 +374,7 @@
|
||||
"gluetun": {
|
||||
"public_ip": "IP pubblico",
|
||||
"region": "Località",
|
||||
"country": "Stato"
|
||||
"country": "Paese"
|
||||
},
|
||||
"hdhomerun": {
|
||||
"channels": "Canali",
|
||||
@@ -380,19 +396,19 @@
|
||||
"deluge": {
|
||||
"download": "Download",
|
||||
"upload": "Upload",
|
||||
"leech": "Leech",
|
||||
"leech": "In scaricamento",
|
||||
"seed": "Seed"
|
||||
},
|
||||
"flood": {
|
||||
"download": "Download",
|
||||
"upload": "Upload",
|
||||
"leech": "Leech",
|
||||
"leech": "In scaricamento",
|
||||
"seed": "Seed"
|
||||
},
|
||||
"tdarr": {
|
||||
"queue": "In coda",
|
||||
"processed": "Elaborati",
|
||||
"errored": "Errori",
|
||||
"errored": "In errore",
|
||||
"saved": "Salvati"
|
||||
},
|
||||
"miniflux": {
|
||||
@@ -417,14 +433,14 @@
|
||||
"downloadstation": {
|
||||
"download": "Download",
|
||||
"upload": "Upload",
|
||||
"leech": "Leech",
|
||||
"leech": "In scaricamento",
|
||||
"seed": "Seed"
|
||||
},
|
||||
"mikrotik": {
|
||||
"cpuLoad": "Carico della CPU",
|
||||
"memoryUsed": "Memoria Utilizzata",
|
||||
"uptime": "Tempo di attività",
|
||||
"numberOfLeases": "Lease"
|
||||
"numberOfLeases": "Rilasci"
|
||||
},
|
||||
"xteve": {
|
||||
"streams_all": "Tutti gli stream",
|
||||
@@ -432,201 +448,290 @@
|
||||
"streams_xepg": "Canali XEPG"
|
||||
},
|
||||
"opnsense": {
|
||||
"cpu": "Carico CPU",
|
||||
"cpu": "Carico della CPU",
|
||||
"memory": "Memoria in uso",
|
||||
"wanUpload": "WAN Upload",
|
||||
"wanDownload": "WAN Download"
|
||||
},
|
||||
"moonraker": {
|
||||
"printer_state": "Printer State",
|
||||
"print_status": "Print Status",
|
||||
"print_progress": "Progress",
|
||||
"layers": "Layers"
|
||||
"printer_state": "Stato stampante",
|
||||
"print_status": "Stato Stampante",
|
||||
"print_progress": "Avanzamento",
|
||||
"layers": "Livelli"
|
||||
},
|
||||
"medusa": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"series": "Series"
|
||||
"wanted": "Richiesto",
|
||||
"queued": "In coda",
|
||||
"series": "Serie"
|
||||
},
|
||||
"octoprint": {
|
||||
"printer_state": "Status",
|
||||
"temp_tool": "Tool temp",
|
||||
"temp_bed": "Bed temp",
|
||||
"job_completion": "Completion"
|
||||
"printer_state": "Stato",
|
||||
"temp_tool": "Temp. utensile",
|
||||
"temp_bed": "Temp. letto",
|
||||
"job_completion": "Completamento"
|
||||
},
|
||||
"cloudflared": {
|
||||
"origin_ip": "Origin IP",
|
||||
"status": "Status"
|
||||
"origin_ip": "IP sorgente",
|
||||
"status": "Stato"
|
||||
},
|
||||
"proxmoxbackupserver": {
|
||||
"datastore_usage": "Datastore",
|
||||
"failed_tasks_24h": "Failed Tasks 24h",
|
||||
"datastore_usage": "Archivio dati",
|
||||
"failed_tasks_24h": "Attività Non Riuscite 24h",
|
||||
"cpu_usage": "CPU",
|
||||
"memory_usage": "Memory"
|
||||
"memory_usage": "Memoria"
|
||||
},
|
||||
"immich": {
|
||||
"users": "Users",
|
||||
"photos": "Photos",
|
||||
"videos": "Videos",
|
||||
"storage": "Storage"
|
||||
"users": "Utenti",
|
||||
"photos": "Foto",
|
||||
"videos": "Video",
|
||||
"storage": "Archiviazione"
|
||||
},
|
||||
"uptimekuma": {
|
||||
"up": "Sites Up",
|
||||
"down": "Sites Down",
|
||||
"uptime": "Uptime",
|
||||
"incident": "Incident",
|
||||
"up": "Siti On",
|
||||
"down": "Siti Down",
|
||||
"uptime": "Operatività",
|
||||
"incident": "Incidente",
|
||||
"m": "m"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
"books": "Books"
|
||||
"libraries": "Librerie",
|
||||
"series": "Serie",
|
||||
"books": "Libri"
|
||||
},
|
||||
"mylar": {
|
||||
"series": "Series",
|
||||
"issues": "Issues",
|
||||
"wanted": "Wanted"
|
||||
"series": "Serie",
|
||||
"issues": "Problemi",
|
||||
"wanted": "Richiesto"
|
||||
},
|
||||
"photoprism": {
|
||||
"albums": "Albums",
|
||||
"photos": "Photos",
|
||||
"videos": "Videos",
|
||||
"people": "People"
|
||||
"albums": "Album",
|
||||
"photos": "Foto",
|
||||
"videos": "Video",
|
||||
"people": "Persone"
|
||||
},
|
||||
"diskstation": {
|
||||
"days": "Days",
|
||||
"uptime": "Uptime",
|
||||
"volumeAvailable": "Available"
|
||||
"days": "Giorni",
|
||||
"uptime": "Periodo Attività",
|
||||
"volumeAvailable": "Disponibile"
|
||||
},
|
||||
"fileflows": {
|
||||
"queue": "Queue",
|
||||
"processing": "Processing",
|
||||
"processed": "Processed",
|
||||
"time": "Time"
|
||||
"queue": "Coda",
|
||||
"processing": "In Lavorazione",
|
||||
"processed": "Elaborato",
|
||||
"time": "Tempo"
|
||||
},
|
||||
"grafana": {
|
||||
"dashboards": "Dashboards",
|
||||
"datasources": "Data Sources",
|
||||
"totalalerts": "Total Alerts",
|
||||
"alertstriggered": "Alerts Triggered"
|
||||
"dashboards": "Dashboard",
|
||||
"datasources": "Origine dei Dati",
|
||||
"totalalerts": "Avvisi Totali",
|
||||
"alertstriggered": "Avvisi Attivati"
|
||||
},
|
||||
"nextcloud": {
|
||||
"memoryusage": "Memory Usage",
|
||||
"cpuload": "Cpu Load",
|
||||
"freespace": "Free Space",
|
||||
"activeusers": "Active Users",
|
||||
"numfiles": "Files",
|
||||
"numshares": "Shared Items"
|
||||
"memoryusage": "Uso della Memoria",
|
||||
"cpuload": "Carico della CPU",
|
||||
"freespace": "Spazio Libero",
|
||||
"activeusers": "Utenti Attivi",
|
||||
"numfiles": "File",
|
||||
"numshares": "Oggetti Condivisi"
|
||||
},
|
||||
"kopia": {
|
||||
"status": "Status",
|
||||
"size": "Size",
|
||||
"lastrun": "Last Run",
|
||||
"nextrun": "Next Run",
|
||||
"failed": "Failed"
|
||||
"status": "Stato",
|
||||
"size": "Dimensione",
|
||||
"lastrun": "Ultima esecuzione",
|
||||
"nextrun": "Prossima esecuzione",
|
||||
"failed": "Fallito"
|
||||
},
|
||||
"unmanic": {
|
||||
"active_workers": "Active Workers",
|
||||
"total_workers": "Total Workers",
|
||||
"records_total": "Queue Length"
|
||||
"active_workers": "Lavoratori Attivi",
|
||||
"total_workers": "Lavoratori Totali",
|
||||
"records_total": "Lunghezza della Coda"
|
||||
},
|
||||
"healthchecks": {
|
||||
"new": "New",
|
||||
"new": "Nuovo",
|
||||
"up": "Online",
|
||||
"grace": "In Grace Period",
|
||||
"grace": "Periodo di Tolleranza",
|
||||
"down": "Offline",
|
||||
"paused": "Paused",
|
||||
"status": "Status",
|
||||
"last_ping": "Last Ping",
|
||||
"never": "No pings yet"
|
||||
"paused": "In Pausa",
|
||||
"status": "Stato",
|
||||
"last_ping": "Ultimo Ping",
|
||||
"never": "Ancora nessun ping"
|
||||
},
|
||||
"pterodactyl": {
|
||||
"servers": "Servers",
|
||||
"nodes": "Nodes"
|
||||
"servers": "Server",
|
||||
"nodes": "Nodi"
|
||||
},
|
||||
"prometheus": {
|
||||
"targets_up": "Targets Up",
|
||||
"targets_down": "Targets Down",
|
||||
"targets_total": "Total Targets"
|
||||
"targets_up": "Target Attivi",
|
||||
"targets_down": "Target Non Attivi",
|
||||
"targets_total": "Targets Totali"
|
||||
},
|
||||
"minecraft": {
|
||||
"players": "Players",
|
||||
"version": "Version",
|
||||
"status": "Status",
|
||||
"players": "Giocatori",
|
||||
"version": "Versione",
|
||||
"status": "Stato",
|
||||
"up": "Online",
|
||||
"down": "Offline"
|
||||
},
|
||||
"ghostfolio": {
|
||||
"gross_percent_today": "Today",
|
||||
"gross_percent_1y": "One year",
|
||||
"gross_percent_max": "All time"
|
||||
"gross_percent_today": "Oggi",
|
||||
"gross_percent_1y": "Un anno",
|
||||
"gross_percent_max": "Sempre"
|
||||
},
|
||||
"audiobookshelf": {
|
||||
"podcasts": "Podcasts",
|
||||
"books": "Books",
|
||||
"podcastsDuration": "Duration",
|
||||
"booksDuration": "Duration"
|
||||
"podcasts": "Podcast",
|
||||
"books": "Libri",
|
||||
"podcastsDuration": "Durata",
|
||||
"booksDuration": "Durata"
|
||||
},
|
||||
"homeassistant": {
|
||||
"people_home": "People Home",
|
||||
"lights_on": "Lights On",
|
||||
"switches_on": "Switches On"
|
||||
"people_home": "Persone a Casa",
|
||||
"lights_on": "Luci Accese",
|
||||
"switches_on": "Switch Accesi"
|
||||
},
|
||||
"freshrss": {
|
||||
"subscriptions": "Subscriptions",
|
||||
"unread": "Unread"
|
||||
"subscriptions": "Iscrizioni",
|
||||
"unread": "Non letto"
|
||||
},
|
||||
"channelsdvrserver": {
|
||||
"shows": "Shows",
|
||||
"recordings": "Recordings",
|
||||
"scheduled": "Scheduled",
|
||||
"passes": "Passes"
|
||||
"shows": "Spettacoli",
|
||||
"recordings": "Registrazioni",
|
||||
"scheduled": "Programmati",
|
||||
"passes": "Tessere"
|
||||
},
|
||||
"whatsupdocker": {
|
||||
"monitoring": "Monitoring",
|
||||
"updates": "Updates"
|
||||
"monitoring": "Monitoraggio",
|
||||
"updates": "Aggiornamenti"
|
||||
},
|
||||
"tailscale": {
|
||||
"never": "Never",
|
||||
"address": "Address",
|
||||
"expires": "Expires",
|
||||
"last_seen": "Last Seen",
|
||||
"now": "Now",
|
||||
"never": "Mai",
|
||||
"address": "Indirizzo",
|
||||
"expires": "Scade",
|
||||
"last_seen": "Ultima visualizzazione",
|
||||
"now": "Adesso",
|
||||
"years": "{{number}}y",
|
||||
"weeks": "{{number}}w",
|
||||
"hours": "{{number}}h",
|
||||
"minutes": "{{number}}m",
|
||||
"seconds": "{{number}}s",
|
||||
"ago": "{{value}} Ago",
|
||||
"ago": "{{value}} Fa",
|
||||
"days": "{{number}}d"
|
||||
},
|
||||
"qnap": {
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"cpuUsage": "Utilizzo CPU",
|
||||
"memUsage": "Utilizzo MEM",
|
||||
"systemTempC": "Temp sistema",
|
||||
"poolUsage": "Utilizzo Pool",
|
||||
"volumeUsage": "Utilizzo Volume",
|
||||
"invalid": "Invalido"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
"memory": "Mem Usage",
|
||||
"wanStatus": "WAN Status",
|
||||
"load": "Carico Medio",
|
||||
"memory": "Uso Memoria",
|
||||
"wanStatus": "Stato WAN",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"temp": "Temp",
|
||||
"disk": "Disk Usage",
|
||||
"wanIP": "WAN IP"
|
||||
"temp": "Temperatura",
|
||||
"disk": "Uso Disco",
|
||||
"wanIP": "IP WAN"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Upstreams",
|
||||
"requests": "Current requests",
|
||||
"requests_failed": "Failed requests"
|
||||
"upstreams": "Upstream",
|
||||
"requests": "Richieste correnti",
|
||||
"requests_failed": "Richieste fallite"
|
||||
},
|
||||
"evcc": {
|
||||
"pv_power": "Production",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"pv_power": "Produzione",
|
||||
"battery_soc": "Batteria",
|
||||
"grid_power": "Griglia",
|
||||
"home_power": "Consumo",
|
||||
"charge_power": "Caricatore",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Totali",
|
||||
"connected": "Connesso",
|
||||
"new_devices": "Nuovi Dispositivi",
|
||||
"down_alerts": "Avvisi di Disservizio"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Coda",
|
||||
"downloadSpeed": "Velocità Download",
|
||||
"downloadBytesRemaining": "Residuo",
|
||||
"downloadTotalBytes": "Dimensione"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Serie",
|
||||
"totalFiles": "File"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Nome",
|
||||
"map": "Mappa",
|
||||
"currentPlayers": "Giocatori attuali",
|
||||
"players": "Giocatori",
|
||||
"maxPlayers": "Giocatori max",
|
||||
"bots": "Bot",
|
||||
"ping": "Ping",
|
||||
"status": "Stato",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Risultato",
|
||||
"myPrs": "Miei PR",
|
||||
"approved": "Approvato",
|
||||
"status": "Stato",
|
||||
"buildId": "ID Build",
|
||||
"succeeded": "Riuscito",
|
||||
"notStarted": "Non Avviato",
|
||||
"failed": "Fallito",
|
||||
"canceled": "Cancellato",
|
||||
"inProgress": "In corso",
|
||||
"totalPrs": "PR Totali"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errori",
|
||||
"noRecent": "Obsoleto",
|
||||
"totalUsed": "Spazio usato"
|
||||
},
|
||||
"openmediavault": {
|
||||
"total": "Totale",
|
||||
"running": "In funzione",
|
||||
"downloading": "Download in corso",
|
||||
"stopped": "Fermati",
|
||||
"passed": "Riusciti",
|
||||
"failed": "Falliti"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Ricette",
|
||||
"users": "Utenti",
|
||||
"categories": "Categorie",
|
||||
"tags": "Tag"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Serie",
|
||||
"archives": "Archivi",
|
||||
"chapters": "Capitoli",
|
||||
"categories": "Categorie"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Libri",
|
||||
"authors": "Autori",
|
||||
"categories": "Categorie",
|
||||
"series": "Serie"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Stato",
|
||||
"uptime": "Tempo di attività",
|
||||
"lastDown": "Ultimo periodo di inattività",
|
||||
"downDuration": "Durata inattività",
|
||||
"sitesUp": "Siti attivi",
|
||||
"sitesDown": "Siti non attivi",
|
||||
"paused": "In pausa",
|
||||
"notyetchecked": "Non ancora controllati",
|
||||
"up": "Attivi",
|
||||
"seemsdown": "Sembrano non attivi",
|
||||
"down": "Non attivi",
|
||||
"unknown": "Sconosciuto"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,17 +11,28 @@
|
||||
"strelaysrv": {
|
||||
"numActiveSessions": "セッション",
|
||||
"numConnections": "コネクション",
|
||||
"dataRelayed": "Relayed",
|
||||
"dataRelayed": "中継",
|
||||
"transferRate": "レート"
|
||||
},
|
||||
"glances": {
|
||||
"mem": "MEM",
|
||||
"cpu": "CPU",
|
||||
"wait": "お待ちください",
|
||||
"temp": "温度",
|
||||
"uptime": "UP",
|
||||
"days": "日",
|
||||
"hours": "時間"
|
||||
"hours": "時間",
|
||||
"load": "ロード",
|
||||
"warn": "警告",
|
||||
"total": "トータル",
|
||||
"free": "空き",
|
||||
"used": "使用中",
|
||||
"crit": "Crit",
|
||||
"read": "読み込み",
|
||||
"write": "書き込み",
|
||||
"gpu": "GPU",
|
||||
"mem": "メモリ",
|
||||
"swap": "スワップ",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"autobrr": {
|
||||
"filters": "フィルター",
|
||||
@@ -59,7 +70,7 @@
|
||||
"resources": {
|
||||
"cpu": "CPU",
|
||||
"total": "合計",
|
||||
"free": "フリー",
|
||||
"free": "Free",
|
||||
"used": "使用",
|
||||
"load": "ロード",
|
||||
"mem": "MEM",
|
||||
@@ -121,7 +132,7 @@
|
||||
"flood": {
|
||||
"download": "ダウンロード",
|
||||
"upload": "アップロード",
|
||||
"leech": "Leech",
|
||||
"leech": "リーチ",
|
||||
"seed": "Seed"
|
||||
},
|
||||
"changedetectionio": {
|
||||
@@ -132,7 +143,8 @@
|
||||
"playing": "再生中",
|
||||
"transcoding": "変換中",
|
||||
"bitrate": "ビットレート",
|
||||
"no_active": "アクティブストリームなし"
|
||||
"no_active": "アクティブストリームなし",
|
||||
"plex_connection_error": "Plex接続の確認"
|
||||
},
|
||||
"omada": {
|
||||
"connectedAp": "接続されたAP",
|
||||
@@ -165,7 +177,7 @@
|
||||
"transmission": {
|
||||
"download": "ダウンロード",
|
||||
"upload": "アップロード",
|
||||
"leech": "Leech",
|
||||
"leech": "リーチ",
|
||||
"seed": "Seed"
|
||||
},
|
||||
"qbittorrent": {
|
||||
@@ -189,18 +201,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "募集中",
|
||||
"queued": "待機中",
|
||||
"series": "シリーズ"
|
||||
"series": "シリーズ",
|
||||
"queue": "キュー",
|
||||
"unknown": "不明"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "募集中",
|
||||
"missing": "不明",
|
||||
"queued": "キュー",
|
||||
"movies": "映画"
|
||||
"movies": "映画",
|
||||
"queue": "キュー",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "募集中",
|
||||
"queued": "キュー",
|
||||
"albums": "アルバム"
|
||||
"artists": "アーティスト"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "募集中",
|
||||
@@ -209,7 +225,7 @@
|
||||
},
|
||||
"bazarr": {
|
||||
"missingEpisodes": "欠番エピソード",
|
||||
"missingMovies": "不明・映画"
|
||||
"missingMovies": "行方不明の映画"
|
||||
},
|
||||
"ombi": {
|
||||
"pending": "保留中",
|
||||
@@ -231,7 +247,7 @@
|
||||
"queries": "クエリ",
|
||||
"blocked": "ブロック中",
|
||||
"gravity": "グラビティ",
|
||||
"blocked_percent": "Blocked %"
|
||||
"blocked_percent": "ブロック %"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "クエリ",
|
||||
@@ -277,7 +293,7 @@
|
||||
"numberOfGrabs": "Grabs",
|
||||
"numberOfQueries": "クエリ",
|
||||
"numberOfFailGrabs": "Fail Grabs",
|
||||
"numberOfFailQueries": "Fail Queries"
|
||||
"numberOfFailQueries": "失敗クエリー"
|
||||
},
|
||||
"jackett": {
|
||||
"configured": "設定済",
|
||||
@@ -289,8 +305,8 @@
|
||||
"domain_count": "ドメイン"
|
||||
},
|
||||
"miniflux": {
|
||||
"read": "Read",
|
||||
"unread": "Unread"
|
||||
"read": "既読",
|
||||
"unread": "未読"
|
||||
},
|
||||
"authentik": {
|
||||
"users": "ユーザー",
|
||||
@@ -446,7 +462,7 @@
|
||||
"medusa": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"series": "Series"
|
||||
"series": "シリーズ"
|
||||
},
|
||||
"octoprint": {
|
||||
"temp_bed": "ベッド温度",
|
||||
@@ -459,7 +475,7 @@
|
||||
"status": "状態"
|
||||
},
|
||||
"proxmoxbackupserver": {
|
||||
"datastore_usage": "Datastore",
|
||||
"datastore_usage": "データストア",
|
||||
"failed_tasks_24h": "失敗タスク(24h)",
|
||||
"cpu_usage": "CPU",
|
||||
"memory_usage": "メモリ"
|
||||
@@ -484,7 +500,7 @@
|
||||
},
|
||||
"mylar": {
|
||||
"series": "シリーズ",
|
||||
"issues": "Issues",
|
||||
"issues": "課題",
|
||||
"wanted": "Wanted"
|
||||
},
|
||||
"photoprism": {
|
||||
@@ -531,7 +547,7 @@
|
||||
"records_total": "キューの長さ"
|
||||
},
|
||||
"healthchecks": {
|
||||
"never": "まだPingはありません",
|
||||
"never": "Pingしていません",
|
||||
"new": "New",
|
||||
"up": "オンライン",
|
||||
"grace": "猶予期間中",
|
||||
@@ -580,10 +596,10 @@
|
||||
"shows": "ショー",
|
||||
"recordings": "レコーディング",
|
||||
"scheduled": "予定済",
|
||||
"passes": "Passes"
|
||||
"passes": "パス"
|
||||
},
|
||||
"whatsupdocker": {
|
||||
"monitoring": "Monitoring",
|
||||
"monitoring": "モニタリング",
|
||||
"updates": "アップデート"
|
||||
},
|
||||
"tailscale": {
|
||||
@@ -601,32 +617,121 @@
|
||||
"ago": "{{value}} 前"
|
||||
},
|
||||
"qnap": {
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"cpuUsage": "CPU使用量",
|
||||
"memUsage": "MEM使用量",
|
||||
"systemTempC": "システム温度",
|
||||
"poolUsage": "プール使用量",
|
||||
"volumeUsage": "ボリューム使用量",
|
||||
"invalid": "無効"
|
||||
},
|
||||
"pfsense": {
|
||||
"up": "Up",
|
||||
"load": "Load Avg",
|
||||
"memory": "Mem Usage",
|
||||
"wanStatus": "WAN Status",
|
||||
"down": "Down",
|
||||
"temp": "Temp",
|
||||
"disk": "Disk Usage",
|
||||
"up": "アップ",
|
||||
"load": "読み込み平均",
|
||||
"memory": "メモリ使用量",
|
||||
"wanStatus": "WANステータス",
|
||||
"down": "ダウン",
|
||||
"temp": "温度",
|
||||
"disk": "ディスク使用量",
|
||||
"wanIP": "WAN IP"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Upstreams",
|
||||
"requests": "Current requests",
|
||||
"requests_failed": "Failed requests"
|
||||
"upstreams": "アップストリーム",
|
||||
"requests": "現在のリクエスト",
|
||||
"requests_failed": "失敗したリクエスト"
|
||||
},
|
||||
"evcc": {
|
||||
"watt_hour": "Wh",
|
||||
"pv_power": "Production",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger"
|
||||
"pv_power": "発電量",
|
||||
"battery_soc": "バッテリー",
|
||||
"grid_power": "グリッド",
|
||||
"home_power": "消費",
|
||||
"charge_power": "チャージャー"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "トータル",
|
||||
"connected": "接続済み",
|
||||
"new_devices": "新しいデバイス",
|
||||
"down_alerts": "ダウンアラート"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "キュー",
|
||||
"downloadSpeed": "スピード",
|
||||
"downloadBytesRemaining": "残り",
|
||||
"downloadTotalBytes": "サイズ"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "シリーズ",
|
||||
"totalFiles": "ファイル"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "名前",
|
||||
"map": "マップ",
|
||||
"currentPlayers": "現在のプレーヤー",
|
||||
"players": "プレーヤー",
|
||||
"maxPlayers": "最大プレーヤー",
|
||||
"bots": "ボット",
|
||||
"ping": "Ping",
|
||||
"status": "ステータス",
|
||||
"online": "オンライン",
|
||||
"offline": "オフライン"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "結果",
|
||||
"status": "ステータス",
|
||||
"buildId": "ビルドID",
|
||||
"succeeded": "成功",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "失敗",
|
||||
"canceled": "キャンセル",
|
||||
"inProgress": "進行中",
|
||||
"totalPrs": "合計PR数",
|
||||
"myPrs": "私のPR",
|
||||
"approved": "承認"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "エラー",
|
||||
"noRecent": "期限切れ",
|
||||
"totalUsed": "使用済みストレージ"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "ダウンロード中",
|
||||
"total": "トータル",
|
||||
"running": "実行中",
|
||||
"stopped": "停止中",
|
||||
"passed": "合格",
|
||||
"failed": "不合格"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "レシピ",
|
||||
"users": "ユーザー",
|
||||
"categories": "カテゴリー",
|
||||
"tags": "タグ"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "シリーズ",
|
||||
"archives": "アーカイブ",
|
||||
"chapters": "チャプター",
|
||||
"categories": "カテゴリー"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "書籍",
|
||||
"authors": "著者",
|
||||
"categories": "カテゴリー",
|
||||
"series": "シリーズ"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -111,7 +111,8 @@
|
||||
"playing": "재생 중",
|
||||
"transcoding": "트랜스코딩",
|
||||
"bitrate": "비트레이트",
|
||||
"no_active": "활성 스트림 없음"
|
||||
"no_active": "활성 스트림 없음",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"omada": {
|
||||
"connectedAp": "연결된 AP",
|
||||
@@ -163,18 +164,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "요청",
|
||||
"queued": "대기 중",
|
||||
"series": "시리즈"
|
||||
"series": "시리즈",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "요청",
|
||||
"missing": "빠짐",
|
||||
"queued": "대기 중",
|
||||
"movies": "영화"
|
||||
"movies": "영화",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "요청",
|
||||
"queued": "대기 중",
|
||||
"albums": "앨범"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "요청",
|
||||
@@ -301,12 +306,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Please wait",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"quicklaunch": {
|
||||
"bookmark": "Bookmark",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"temp": "Temp",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"down_alerts": "Down Alerts",
|
||||
"new_devices": "New Devices"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"ping": "Ping",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories",
|
||||
"series": "Series",
|
||||
"archives": "Archives"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -97,7 +97,8 @@
|
||||
"playing": "Atskaņo",
|
||||
"transcoding": "Pārkodē",
|
||||
"bitrate": "Bitrate",
|
||||
"no_active": "Nav aktīvu straumju"
|
||||
"no_active": "Nav aktīvu straumju",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"omada": {
|
||||
"connectedAp": "Savienotie piekļuves punkti",
|
||||
@@ -154,18 +155,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"series": "Series"
|
||||
"series": "Series",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Wanted",
|
||||
"missing": "Missing",
|
||||
"queued": "Queued",
|
||||
"movies": "Filmas"
|
||||
"movies": "Filmas",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"albums": "Albumi"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Wanted",
|
||||
@@ -290,12 +295,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Please wait",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h",
|
||||
"temp": "TEMP"
|
||||
"temp": "TEMP",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"quicklaunch": {
|
||||
"bookmark": "Bookmark",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"online": "Online",
|
||||
"status": "Status",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"chapters": "Chapters",
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"unknown": "Unknown",
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"sitesDown": "Sites Down",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,8 +33,8 @@
|
||||
},
|
||||
"lidarr": {
|
||||
"queued": "Dibaris Gilir",
|
||||
"albums": "Album",
|
||||
"wanted": "Mahu"
|
||||
"wanted": "Mahu",
|
||||
"artists": "Artists"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Mahu",
|
||||
@@ -66,12 +66,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Sila tunggu",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"quicklaunch": {
|
||||
"bookmark": "Tandabuku",
|
||||
@@ -196,7 +207,8 @@
|
||||
"playing": "Sedang Dimainkan",
|
||||
"transcoding": "Transkoding",
|
||||
"bitrate": "Kadar bit",
|
||||
"no_active": "Tiada Strim Aktif"
|
||||
"no_active": "Tiada Strim Aktif",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"plex": {
|
||||
"streams": "Strim Aktif",
|
||||
@@ -229,13 +241,17 @@
|
||||
"sonarr": {
|
||||
"wanted": "Mahu",
|
||||
"queued": "Dibaris Gilir",
|
||||
"series": "Bersiri"
|
||||
"series": "Bersiri",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Mahu",
|
||||
"missing": "Hilang",
|
||||
"queued": "Dibaris Gilir",
|
||||
"movies": "Filem"
|
||||
"movies": "Filem",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"bazarr": {
|
||||
"missingEpisodes": "Episod Yang Hilang",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -56,7 +56,8 @@
|
||||
"playing": "Spiller",
|
||||
"transcoding": "Transkoding",
|
||||
"bitrate": "Bitrate",
|
||||
"no_active": "Ingen aktive strømmer"
|
||||
"no_active": "Ingen aktive strømmer",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"rutorrent": {
|
||||
"active": "Aktiv",
|
||||
@@ -66,13 +67,17 @@
|
||||
"sonarr": {
|
||||
"wanted": "Ønsket",
|
||||
"queued": "I kø",
|
||||
"series": "Serie"
|
||||
"series": "Serie",
|
||||
"unknown": "Unknown",
|
||||
"queue": "Queue"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Ønsket",
|
||||
"queued": "I kø",
|
||||
"movies": "Filmer",
|
||||
"missing": "Missing"
|
||||
"missing": "Missing",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Wanted",
|
||||
@@ -173,7 +178,7 @@
|
||||
"lidarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"albums": "Albums"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "Queries",
|
||||
@@ -234,12 +239,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Please wait",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Total Observed",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Filer"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"uptime": "Uptime",
|
||||
"status": "Status",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -72,7 +72,8 @@
|
||||
"playing": "Afspelen",
|
||||
"transcoding": "Transcodering",
|
||||
"bitrate": "Bitsnelheid",
|
||||
"no_active": "Geen Actieve Streams"
|
||||
"no_active": "Geen Actieve Streams",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"rutorrent": {
|
||||
"active": "Actief",
|
||||
@@ -82,13 +83,17 @@
|
||||
"sonarr": {
|
||||
"wanted": "Gezocht",
|
||||
"queued": "In de wachtrij",
|
||||
"series": "Series"
|
||||
"series": "Series",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"movies": "Films",
|
||||
"wanted": "Gezocht",
|
||||
"queued": "In de wachtrij",
|
||||
"missing": "Missend"
|
||||
"missing": "Missend",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Gezocht",
|
||||
@@ -173,7 +178,7 @@
|
||||
"lidarr": {
|
||||
"wanted": "Gezocht",
|
||||
"queued": "In de wachtrij",
|
||||
"albums": "Albums"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "Queries",
|
||||
@@ -224,7 +229,7 @@
|
||||
"devices": "Apparaten",
|
||||
"lan_devices": "LAN Apparaten",
|
||||
"wlan_devices": "WLAN Apparaten",
|
||||
"empty_data": "Subsystem status unknown"
|
||||
"empty_data": "Subsystem status onbekend"
|
||||
},
|
||||
"plex": {
|
||||
"streams": "Actieve Streams",
|
||||
@@ -234,12 +239,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Please wait",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Totaal waargenomen",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"online": "Online",
|
||||
"status": "Status",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"uptime": "Uptime",
|
||||
"status": "Status",
|
||||
"up": "Up",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,7 +37,8 @@
|
||||
"playing": "Odtwarzanie",
|
||||
"transcoding": "Transkodowanie",
|
||||
"bitrate": "Bitrate",
|
||||
"no_active": "Brak aktywnych strumieni"
|
||||
"no_active": "Brak aktywnych strumieni",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"speedtest": {
|
||||
"download": "Pobieranie",
|
||||
@@ -110,18 +111,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "Poszukiwane",
|
||||
"queued": "W kolejce",
|
||||
"series": "Seriale"
|
||||
"series": "Seriale",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Poszukiwane",
|
||||
"queued": "W kolejce",
|
||||
"movies": "Filmy",
|
||||
"missing": "Brakujące"
|
||||
"missing": "Brakujące",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Poszukiwane",
|
||||
"queued": "W kolejce",
|
||||
"albums": "Albumy"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Poszukiwane",
|
||||
@@ -234,12 +239,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "Procesor",
|
||||
"mem": "Pamięć",
|
||||
"wait": "Proszę czekać",
|
||||
"temp": "TEMP",
|
||||
"uptime": "CZAS",
|
||||
"days": "dni",
|
||||
"hours": "godz"
|
||||
"hours": "godz",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"diffsDetected": "Wykryto różnic",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved",
|
||||
"result": "Result",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -90,7 +90,8 @@
|
||||
"playing": "Reproduzindo",
|
||||
"transcoding": "Transcodificando",
|
||||
"bitrate": "Taxa de bits",
|
||||
"no_active": "Sem transmissões ativas"
|
||||
"no_active": "Sem transmissões ativas",
|
||||
"plex_connection_error": "Verifique a conexão do Plex"
|
||||
},
|
||||
"nzbget": {
|
||||
"rate": "Taxa",
|
||||
@@ -112,18 +113,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "Desejado",
|
||||
"queued": "Na fila",
|
||||
"series": "Séries"
|
||||
"series": "Séries",
|
||||
"queue": "Fila",
|
||||
"unknown": "Desconhecido"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Desejado",
|
||||
"queued": "Na fila",
|
||||
"movies": "Filmes",
|
||||
"missing": "Faltando"
|
||||
"missing": "Faltando",
|
||||
"queue": "Fila",
|
||||
"unknown": "Desconhecido"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Desejado",
|
||||
"queued": "Na fila",
|
||||
"albums": "Álbuns"
|
||||
"artists": "Artistas"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Desejado",
|
||||
@@ -154,7 +159,7 @@
|
||||
"queries": "Consultas",
|
||||
"blocked": "Bloqueados",
|
||||
"gravity": "Gravidade",
|
||||
"blocked_percent": "Blocked %"
|
||||
"blocked_percent": "Bloqueado %"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "Consultas",
|
||||
@@ -234,12 +239,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Por favor aguarde",
|
||||
"temp": "TEMP",
|
||||
"uptime": "LIGADO",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Carga",
|
||||
"warn": "Aviso",
|
||||
"total": "Total",
|
||||
"free": "Livre",
|
||||
"used": "Usado",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Observados",
|
||||
@@ -515,8 +531,8 @@
|
||||
"memoryusage": "Memória Utilizada",
|
||||
"freespace": "Espaço Livre",
|
||||
"activeusers": "Usuários Ativos",
|
||||
"numfiles": "Files",
|
||||
"numshares": "Shared Items"
|
||||
"numfiles": "Arquivos",
|
||||
"numshares": "Itens Compartilhados"
|
||||
},
|
||||
"kopia": {
|
||||
"status": "Status",
|
||||
@@ -573,60 +589,149 @@
|
||||
"switches_on": "Interruptores Ligados"
|
||||
},
|
||||
"freshrss": {
|
||||
"subscriptions": "Subscriptions",
|
||||
"unread": "Unread"
|
||||
"subscriptions": "Assinaturas",
|
||||
"unread": "Não lida"
|
||||
},
|
||||
"channelsdvrserver": {
|
||||
"shows": "Shows",
|
||||
"recordings": "Recordings",
|
||||
"scheduled": "Scheduled",
|
||||
"recordings": "Gravações",
|
||||
"scheduled": "Agendado",
|
||||
"passes": "Passes"
|
||||
},
|
||||
"whatsupdocker": {
|
||||
"monitoring": "Monitoring",
|
||||
"updates": "Updates"
|
||||
"monitoring": "Monitorando",
|
||||
"updates": "Atualizações"
|
||||
},
|
||||
"tailscale": {
|
||||
"address": "Address",
|
||||
"expires": "Expires",
|
||||
"never": "Never",
|
||||
"last_seen": "Last Seen",
|
||||
"now": "Now",
|
||||
"years": "{{number}}y",
|
||||
"weeks": "{{number}}w",
|
||||
"address": "Endereço",
|
||||
"expires": "Expira",
|
||||
"never": "Nunca",
|
||||
"last_seen": "Visto pela última vez",
|
||||
"now": "Agora",
|
||||
"years": "{{number}}a",
|
||||
"weeks": "{{number}}s",
|
||||
"hours": "{{number}}h",
|
||||
"days": "{{number}}d",
|
||||
"minutes": "{{number}}m",
|
||||
"seconds": "{{number}}s",
|
||||
"ago": "{{value}} Ago"
|
||||
"ago": "{{value}} Atrás"
|
||||
},
|
||||
"qnap": {
|
||||
"systemTempC": "System Temp",
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"poolUsage": "Pool Usage"
|
||||
"systemTempC": "Temp Sistema",
|
||||
"cpuUsage": "Uso CPU",
|
||||
"memUsage": "Uso MEM",
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Uso Volume",
|
||||
"invalid": "Invalido"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
"memory": "Mem Usage",
|
||||
"load": "Média de carga",
|
||||
"memory": "Uso Mem",
|
||||
"wanStatus": "WAN Status",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"temp": "Temp",
|
||||
"disk": "Disk Usage",
|
||||
"disk": "Uso de disco",
|
||||
"wanIP": "WAN IP"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Upstreams",
|
||||
"requests": "Current requests",
|
||||
"requests_failed": "Failed requests"
|
||||
"requests": "Solicitações atuais",
|
||||
"requests_failed": "Solicitações com falha"
|
||||
},
|
||||
"evcc": {
|
||||
"pv_power": "Production",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"pv_power": "Produção",
|
||||
"battery_soc": "Bateria",
|
||||
"grid_power": "Grade",
|
||||
"home_power": "Consumo",
|
||||
"charge_power": "Carregador",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Conectado",
|
||||
"new_devices": "Novos dispositivos",
|
||||
"down_alerts": "Alertas de Quedas"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Fila",
|
||||
"downloadSpeed": "Velocidade de download",
|
||||
"downloadBytesRemaining": "Restante",
|
||||
"downloadTotalBytes": "Tamanho"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Arquivos"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Nome",
|
||||
"map": "Mapa",
|
||||
"currentPlayers": "Jogadores atuais",
|
||||
"players": "Jogadores",
|
||||
"maxPlayers": "Jogadores Max",
|
||||
"bots": "Robos",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -56,7 +56,8 @@
|
||||
"playing": "Reproduzindo",
|
||||
"transcoding": "Transcodificação",
|
||||
"bitrate": "Taxa de bits",
|
||||
"no_active": "Sem streams ativas"
|
||||
"no_active": "Sem streams ativas",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"rutorrent": {
|
||||
"active": "Ativo",
|
||||
@@ -66,13 +67,17 @@
|
||||
"sonarr": {
|
||||
"wanted": "Desejada",
|
||||
"queued": "Em fila",
|
||||
"series": "Séries"
|
||||
"series": "Séries",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Desejado",
|
||||
"queued": "Fila",
|
||||
"movies": "Filmes",
|
||||
"missing": "Faltando"
|
||||
"missing": "Faltando",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Desejados",
|
||||
@@ -186,7 +191,7 @@
|
||||
"lidarr": {
|
||||
"queued": "Enfileirado",
|
||||
"wanted": "Desejado",
|
||||
"albums": "Álbuns"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "Consultas",
|
||||
@@ -247,12 +252,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Por favor, aguarde",
|
||||
"temp": "TEMP",
|
||||
"uptime": "Cima",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Total Observado",
|
||||
@@ -582,12 +598,12 @@
|
||||
"switches_on": "Interruptores Ligados"
|
||||
},
|
||||
"freshrss": {
|
||||
"subscriptions": "Subscriptions",
|
||||
"unread": "Unread"
|
||||
"subscriptions": "Assinaturas",
|
||||
"unread": "Não lida"
|
||||
},
|
||||
"channelsdvrserver": {
|
||||
"shows": "Shows",
|
||||
"recordings": "Recordings",
|
||||
"recordings": "Gravações",
|
||||
"scheduled": "Scheduled",
|
||||
"passes": "Passes"
|
||||
},
|
||||
@@ -613,7 +629,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -627,15 +645,102 @@
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Upstreams",
|
||||
"requests": "Current requests",
|
||||
"requests_failed": "Failed requests"
|
||||
"requests": "Solicitações atuais",
|
||||
"requests_failed": "Solicitações com falha"
|
||||
},
|
||||
"evcc": {
|
||||
"pv_power": "Production",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
"pv_power": "Produção",
|
||||
"battery_soc": "Bateria",
|
||||
"grid_power": "Grade",
|
||||
"home_power": "Consumo",
|
||||
"charge_power": "Carregador",
|
||||
"watt_hour": "Kw"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"approved": "Approved",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown",
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,12 +20,12 @@
|
||||
"mem": "MEM",
|
||||
"cpu": "CPU",
|
||||
"offline": "Offline",
|
||||
"error": "Error",
|
||||
"unknown": "Unknown",
|
||||
"running": "Running",
|
||||
"starting": "Starting",
|
||||
"error": "Eroare",
|
||||
"unknown": "Necunoscut",
|
||||
"running": "Rulează",
|
||||
"starting": "Începe",
|
||||
"unhealthy": "Unhealthy",
|
||||
"not_found": "Not Found",
|
||||
"not_found": "Negăsit",
|
||||
"exited": "Exited",
|
||||
"partial": "Partial",
|
||||
"healthy": "Healthy"
|
||||
@@ -92,7 +92,8 @@
|
||||
"no_active": "Niciun stream activ",
|
||||
"playing": "Activ",
|
||||
"transcoding": "Transcodare",
|
||||
"bitrate": "Bitrate"
|
||||
"bitrate": "Bitrate",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"nzbget": {
|
||||
"rate": "Rată",
|
||||
@@ -134,18 +135,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "Dorite",
|
||||
"queued": "În coadă",
|
||||
"series": "Seriale"
|
||||
"series": "Seriale",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"queued": "În coadă",
|
||||
"wanted": "Dorite",
|
||||
"movies": "Filme",
|
||||
"missing": "Missing"
|
||||
"missing": "Missing",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Dorite",
|
||||
"queued": "În coadă",
|
||||
"albums": "Albume"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Dorite",
|
||||
@@ -234,12 +239,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "Procesor",
|
||||
"mem": "Memorie",
|
||||
"wait": "Te rugam sa astepti",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Total Observed",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts",
|
||||
"total": "Total",
|
||||
"connected": "Connected"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved",
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,11 +16,11 @@
|
||||
"free": "Свободно",
|
||||
"used": "Использовано",
|
||||
"load": "Загрузка",
|
||||
"cpu": "Процессор",
|
||||
"mem": "Память",
|
||||
"cpu": "ЦП",
|
||||
"mem": "ОЗУ",
|
||||
"temp": "Температура",
|
||||
"max": "Макс.",
|
||||
"uptime": "UP",
|
||||
"uptime": "Работает",
|
||||
"months": "мес",
|
||||
"days": "д",
|
||||
"hours": "ч",
|
||||
@@ -56,7 +56,8 @@
|
||||
"playing": "Воспроизведение",
|
||||
"transcoding": "Транскодирование",
|
||||
"bitrate": "Битрейт",
|
||||
"no_active": "Нет активных трансляций"
|
||||
"no_active": "Нет активных трансляций",
|
||||
"plex_connection_error": "Проверьте соединение с Plex"
|
||||
},
|
||||
"rutorrent": {
|
||||
"active": "Активный",
|
||||
@@ -64,18 +65,22 @@
|
||||
"download": "Загрузка"
|
||||
},
|
||||
"sonarr": {
|
||||
"wanted": "Хотел",
|
||||
"wanted": "Желаемое",
|
||||
"queued": "В очереди",
|
||||
"series": "Серии"
|
||||
"series": "Серии",
|
||||
"queue": "Очередь",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Хотел",
|
||||
"wanted": "Желаемое",
|
||||
"queued": "В очереди",
|
||||
"movies": "Фильмы",
|
||||
"missing": "Пропущено"
|
||||
"missing": "Пропущено",
|
||||
"queue": "Очередь",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Хотел",
|
||||
"wanted": "Желаемое",
|
||||
"queued": "В очереди",
|
||||
"books": "Книги"
|
||||
},
|
||||
@@ -171,9 +176,9 @@
|
||||
"missingMovies": "Отсутствующие фильмы"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Хотел",
|
||||
"wanted": "Желаемое",
|
||||
"queued": "В очереди",
|
||||
"albums": "Альбомы"
|
||||
"artists": "Артисты"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "Запросы",
|
||||
@@ -234,12 +239,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "Процессор",
|
||||
"mem": "Память",
|
||||
"wait": "Пожалуйста, подождите",
|
||||
"temp": "Температура",
|
||||
"uptime": "Работает",
|
||||
"days": "д",
|
||||
"hours": "ч"
|
||||
"hours": "ч",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Всего наблюдаемых",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Использование пула",
|
||||
"volumeUsage": "Использование тома",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"disk": "Disk Usage",
|
||||
@@ -617,16 +635,103 @@
|
||||
"temp": "Temp"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Upstreams",
|
||||
"requests": "Current requests",
|
||||
"requests_failed": "Failed requests"
|
||||
"upstreams": "Апстримы",
|
||||
"requests": "Текущие запросы",
|
||||
"requests_failed": "Неудачные запросы"
|
||||
},
|
||||
"evcc": {
|
||||
"home_power": "Consumption",
|
||||
"home_power": "Потребление",
|
||||
"pv_power": "Production",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"charge_power": "Charger",
|
||||
"charge_power": "Зарядка",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "Новые устройства",
|
||||
"down_alerts": "Оповещения о сбоях"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Серии",
|
||||
"archives": "Архивы",
|
||||
"chapters": "Главы",
|
||||
"categories": "Категории"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -221,7 +221,8 @@
|
||||
"playing": "Playing",
|
||||
"transcoding": "Transcoding",
|
||||
"bitrate": "Bitrate",
|
||||
"no_active": "No Active Streams"
|
||||
"no_active": "No Active Streams",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"omada": {
|
||||
"connectedAp": "Connected APs",
|
||||
@@ -273,18 +274,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"series": "Series"
|
||||
"series": "Series",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Wanted",
|
||||
"missing": "Missing",
|
||||
"queued": "Queued",
|
||||
"movies": "Movies"
|
||||
"movies": "Movies",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"albums": "Albums"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Wanted",
|
||||
@@ -398,12 +403,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Please wait",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"quicklaunch": {
|
||||
"bookmark": "Bookmark",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"inProgress": "In Progress",
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"total": "Total",
|
||||
"downloading": "Downloading",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -168,7 +168,8 @@
|
||||
"transcoding": "Transkodira",
|
||||
"bitrate": "Pasovna širina",
|
||||
"playing": "Predvaja",
|
||||
"no_active": "Ni aktivne vsebine"
|
||||
"no_active": "Ni aktivne vsebine",
|
||||
"plex_connection_error": "Preveri Plex povezavo"
|
||||
},
|
||||
"flood": {
|
||||
"download": "Prenos",
|
||||
@@ -235,18 +236,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "Iskano",
|
||||
"queued": "V vrsti",
|
||||
"series": "Serije"
|
||||
"series": "Serije",
|
||||
"queue": "Vrsta",
|
||||
"unknown": "Neznano"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Iskano",
|
||||
"missing": "Manjka",
|
||||
"queued": "V vrsti",
|
||||
"movies": "Filmi"
|
||||
"movies": "Filmi",
|
||||
"queue": "Vrsta",
|
||||
"unknown": "Neznano"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Iskano",
|
||||
"queued": "V vrsti",
|
||||
"albums": "Albumi"
|
||||
"artists": "Avtorji"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Iskano",
|
||||
@@ -350,12 +355,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Prosim počakajte",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "u"
|
||||
"hours": "u",
|
||||
"free": "Prosto",
|
||||
"load": "Obremenitev",
|
||||
"warn": "Opoz.",
|
||||
"total": "Skupaj",
|
||||
"used": "V uporabi",
|
||||
"crit": "Krit.",
|
||||
"read": "Prebrano",
|
||||
"write": "Zapisano",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"authentik": {
|
||||
"users": "Uporabniki",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU",
|
||||
"memUsage": "MEM",
|
||||
"systemTempC": "Temperatura",
|
||||
"poolUsage": "Prostor"
|
||||
"poolUsage": "Prostor",
|
||||
"volumeUsage": "Prostora",
|
||||
"invalid": "Neveljavno"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Povp. obremenitev",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Poraba",
|
||||
"charge_power": "Polnilec",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Skupaj",
|
||||
"connected": "Povezanih",
|
||||
"new_devices": "Nove naprave",
|
||||
"down_alerts": "Izključeno"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Vrsta",
|
||||
"downloadSpeed": "Hitrost prenosa",
|
||||
"downloadBytesRemaining": "Še ostane",
|
||||
"downloadTotalBytes": "Velikost"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Serije",
|
||||
"totalFiles": "Datoteke"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Naziv",
|
||||
"map": "Zemljevid",
|
||||
"currentPlayers": "Igralcev",
|
||||
"players": "Igralci",
|
||||
"maxPlayers": "Maks igralcev",
|
||||
"bots": "Boti",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Na spletu",
|
||||
"offline": "Nepovezano"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Rezultati",
|
||||
"status": "Status",
|
||||
"buildId": "ID gradnje",
|
||||
"succeeded": "Uspešnih",
|
||||
"notStarted": "Ni zagnano",
|
||||
"failed": "Neuspešno",
|
||||
"canceled": "Preklicano",
|
||||
"inProgress": "V delu",
|
||||
"totalPrs": "Skupaj PR",
|
||||
"myPrs": "Moji PR",
|
||||
"approved": "Odobreno"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "V redu",
|
||||
"errored": "Napake",
|
||||
"noRecent": "Zastarano",
|
||||
"totalUsed": "Shramba v uporabi"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Prenašanje",
|
||||
"total": "Skupaj",
|
||||
"running": "V teku",
|
||||
"stopped": "Ustavljeno",
|
||||
"passed": "Opravljeno",
|
||||
"failed": "Neuspešno"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recepti",
|
||||
"users": "Uporabniki",
|
||||
"categories": "Kategorije",
|
||||
"tags": "Značke"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Serije",
|
||||
"archives": "Arhivi",
|
||||
"chapters": "Poglavja",
|
||||
"categories": "Kategorije"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Knjige",
|
||||
"authors": "Avtorji",
|
||||
"categories": "Kategorije",
|
||||
"series": "Serije"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"unknown": "Unknown",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -79,7 +79,8 @@
|
||||
"playing": "Playing",
|
||||
"transcoding": "Transcoding",
|
||||
"bitrate": "Bitrate",
|
||||
"no_active": "No Active Streams"
|
||||
"no_active": "No Active Streams",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"nzbget": {
|
||||
"rate": "Rate",
|
||||
@@ -117,18 +118,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"series": "Series"
|
||||
"series": "Series",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"movies": "Movies",
|
||||
"missing": "Missing"
|
||||
"missing": "Missing",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"albums": "Albums"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Wanted",
|
||||
@@ -234,12 +239,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Please wait",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Total Observed",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"memory": "Mem Usage",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed",
|
||||
"downloading": "Downloading"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -62,7 +62,8 @@
|
||||
"playing": "Spelar",
|
||||
"transcoding": "Omkodning",
|
||||
"bitrate": "Bitrate",
|
||||
"no_active": "Inga aktiva strömmar"
|
||||
"no_active": "Inga aktiva strömmar",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"nzbget": {
|
||||
"rate": "Hastighet",
|
||||
@@ -88,18 +89,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "Eftersöker",
|
||||
"queued": "I kö",
|
||||
"series": "Serier"
|
||||
"series": "Serier",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Eftersöker",
|
||||
"queued": "I kö",
|
||||
"movies": "Filmer",
|
||||
"missing": "Missing"
|
||||
"missing": "Missing",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Eftersöker",
|
||||
"queued": "I kö",
|
||||
"albums": "Album"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Eftersökt",
|
||||
@@ -234,12 +239,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Vänligen vänta",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Total Observed",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"totalFiles": "Files",
|
||||
"seriesCount": "Series"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"approved": "Approved",
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"paused": "Paused",
|
||||
"sitesDown": "Sites Down",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -79,7 +79,8 @@
|
||||
"playing": "ఆడుతున్నారు",
|
||||
"transcoding": "ట్రాన్స్కోడింగ్",
|
||||
"bitrate": "బిట్రేట్",
|
||||
"no_active": "యాక్టివ్ స్ట్రీమ్లు లేవు"
|
||||
"no_active": "యాక్టివ్ స్ట్రీమ్లు లేవు",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"nzbget": {
|
||||
"rate": "రేట్",
|
||||
@@ -111,18 +112,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "కావలెను",
|
||||
"queued": "క్యూయూఎడ్",
|
||||
"series": "సిరీస్"
|
||||
"series": "సిరీస్",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "కావలెను",
|
||||
"queued": "క్యూయూఎడ్",
|
||||
"movies": "సినిమాలు",
|
||||
"missing": "మిస్సింగ్"
|
||||
"missing": "మిస్సింగ్",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "కావలెను",
|
||||
"queued": "క్యూయూఎడ్",
|
||||
"albums": "ఆల్బములు"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"bazarr": {
|
||||
"missingEpisodes": "ఎపిసోడ్లు లేవు",
|
||||
@@ -234,12 +239,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "సీపియూ",
|
||||
"mem": "MEM",
|
||||
"wait": "దయచేసి వేచి ఉండండి",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "మొత్తం గమనించబడింది",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"totalFiles": "Files",
|
||||
"seriesCount": "Series"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"failed": "Failed",
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -139,7 +139,8 @@
|
||||
"playing": "Playing",
|
||||
"transcoding": "Transcoding",
|
||||
"bitrate": "Bitrate",
|
||||
"no_active": "No Active Streams"
|
||||
"no_active": "No Active Streams",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"omada": {
|
||||
"connectedAp": "Connected APs",
|
||||
@@ -190,7 +191,9 @@
|
||||
"sonarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"series": "Series"
|
||||
"series": "Series",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"readarr": {
|
||||
"queued": "Queued",
|
||||
@@ -216,12 +219,14 @@
|
||||
"wanted": "Wanted",
|
||||
"missing": "Missing",
|
||||
"queued": "Queued",
|
||||
"movies": "Movies"
|
||||
"movies": "Movies",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"albums": "Albums"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"ombi": {
|
||||
"pending": "Pending",
|
||||
@@ -310,12 +315,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Please wait",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"quicklaunch": {
|
||||
"bookmark": "Bookmark",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,13 +24,13 @@
|
||||
"used": "Kullanımda",
|
||||
"load": "Yük",
|
||||
"mem": "MEM",
|
||||
"temp": "TEMP",
|
||||
"max": "Max",
|
||||
"uptime": "UP",
|
||||
"months": "mo",
|
||||
"days": "d",
|
||||
"hours": "h",
|
||||
"minutes": "m"
|
||||
"temp": "Geçici",
|
||||
"max": "En Yüksek",
|
||||
"uptime": "Çalışma Süresi",
|
||||
"months": "Ay",
|
||||
"days": "Gün",
|
||||
"hours": "Saat",
|
||||
"minutes": "Dakika"
|
||||
},
|
||||
"unifi": {
|
||||
"users": "Kullanıcılar",
|
||||
@@ -57,29 +57,30 @@
|
||||
"offline": "Çevrimdışı",
|
||||
"error": "Hata",
|
||||
"unknown": "Bilinmiyor",
|
||||
"running": "Running",
|
||||
"starting": "Starting",
|
||||
"unhealthy": "Unhealthy",
|
||||
"not_found": "Not Found",
|
||||
"exited": "Exited",
|
||||
"partial": "Partial",
|
||||
"healthy": "Healthy"
|
||||
"running": "Çalışan",
|
||||
"starting": "Başlatılıyor",
|
||||
"unhealthy": "Sağlıksız",
|
||||
"not_found": "Bulunamadı",
|
||||
"exited": "Durduruldu",
|
||||
"partial": "Parçalı",
|
||||
"healthy": "Sağlık"
|
||||
},
|
||||
"emby": {
|
||||
"playing": "Oynatılıyor",
|
||||
"transcoding": "Dönüştürülüyor",
|
||||
"bitrate": "Bit Oranı",
|
||||
"no_active": "Aktif akış yok",
|
||||
"movies": "Movies",
|
||||
"series": "Series",
|
||||
"episodes": "Episodes",
|
||||
"songs": "Songs"
|
||||
"movies": "Filmler",
|
||||
"series": "Diziler",
|
||||
"episodes": "Bölümler",
|
||||
"songs": "Şarkılar"
|
||||
},
|
||||
"tautulli": {
|
||||
"playing": "Oynatılıyor",
|
||||
"transcoding": "Dönüştürülüyor",
|
||||
"bitrate": "Bit Oranı",
|
||||
"no_active": "Aktif akış yok"
|
||||
"no_active": "Aktif akış yok",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"nzbget": {
|
||||
"rate": "Oran",
|
||||
@@ -90,7 +91,7 @@
|
||||
"streams": "Aktif Akış",
|
||||
"movies": "Filmler",
|
||||
"tv": "TV Showları",
|
||||
"albums": "Albums"
|
||||
"albums": "Albümler"
|
||||
},
|
||||
"sabnzbd": {
|
||||
"rate": "Oran",
|
||||
@@ -117,18 +118,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "Aranan",
|
||||
"queued": "Kuyrukta",
|
||||
"series": "Seriler"
|
||||
"series": "Seriler",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Aranan",
|
||||
"queued": "Kuyrukta",
|
||||
"movies": "Filmler",
|
||||
"missing": "Kayıp"
|
||||
"missing": "Kayıp",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Aranan",
|
||||
"queued": "Kuyrukta",
|
||||
"albums": "Albümler"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Aranan",
|
||||
@@ -159,7 +164,7 @@
|
||||
"queries": "Sorgular",
|
||||
"blocked": "Engellenen",
|
||||
"gravity": "Yer Çekimi",
|
||||
"blocked_percent": "Blocked %"
|
||||
"blocked_percent": "Engellenen %"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "Sorgular",
|
||||
@@ -234,12 +239,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "İşlemci",
|
||||
"mem": "Bellek",
|
||||
"wait": "Lütfen bekleyiniz",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"temp": "Sıcaklık",
|
||||
"uptime": "Çalışma Süresi",
|
||||
"days": "Gün",
|
||||
"hours": "Saat",
|
||||
"load": "Yük",
|
||||
"warn": "Uyarı",
|
||||
"total": "Toplam",
|
||||
"free": "Boş",
|
||||
"used": "Kullanım",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Toplam Gözlenen",
|
||||
@@ -307,9 +323,9 @@
|
||||
"bookmark": "Yer İmi",
|
||||
"service": "Hizmet",
|
||||
"search": "Ara",
|
||||
"custom": "Custom",
|
||||
"visit": "Visit",
|
||||
"url": "URL"
|
||||
"custom": "Özel",
|
||||
"visit": "Ziyaret",
|
||||
"url": "Link"
|
||||
},
|
||||
"homebridge": {
|
||||
"available_update": "Sistem",
|
||||
@@ -380,14 +396,14 @@
|
||||
"deluge": {
|
||||
"download": "İndir",
|
||||
"upload": "Yükle",
|
||||
"leech": "Leech",
|
||||
"leech": "Tüketici",
|
||||
"seed": "Tohum"
|
||||
},
|
||||
"flood": {
|
||||
"download": "İndir",
|
||||
"upload": "Yükle",
|
||||
"leech": "Leech",
|
||||
"seed": "Tohum"
|
||||
"leech": "Tüketici",
|
||||
"seed": "Sağlayıcı"
|
||||
},
|
||||
"tdarr": {
|
||||
"queue": "Sıra",
|
||||
@@ -417,7 +433,7 @@
|
||||
"downloadstation": {
|
||||
"download": "İndir",
|
||||
"upload": "Yükle",
|
||||
"leech": "Leech",
|
||||
"leech": "Tüketici",
|
||||
"seed": "Tohum"
|
||||
},
|
||||
"mikrotik": {
|
||||
@@ -444,7 +460,7 @@
|
||||
"layers": "Katmanlar"
|
||||
},
|
||||
"medusa": {
|
||||
"wanted": "Wanted",
|
||||
"wanted": "Aranan",
|
||||
"queued": "Kuyrukta",
|
||||
"series": "Seri"
|
||||
},
|
||||
@@ -550,11 +566,11 @@
|
||||
"targets_total": "Total Targets"
|
||||
},
|
||||
"minecraft": {
|
||||
"players": "Players",
|
||||
"version": "Version",
|
||||
"status": "Status",
|
||||
"up": "Online",
|
||||
"down": "Offline"
|
||||
"players": "Oyuncular",
|
||||
"version": "Versiyon",
|
||||
"status": "Durum",
|
||||
"up": "Çevrimiçi",
|
||||
"down": "Çevrimdışı"
|
||||
},
|
||||
"ghostfolio": {
|
||||
"gross_percent_today": "Today",
|
||||
@@ -573,38 +589,40 @@
|
||||
"switches_on": "Switches On"
|
||||
},
|
||||
"freshrss": {
|
||||
"subscriptions": "Subscriptions",
|
||||
"unread": "Unread"
|
||||
"subscriptions": "Abonelikler",
|
||||
"unread": "Okunmamış"
|
||||
},
|
||||
"channelsdvrserver": {
|
||||
"shows": "Shows",
|
||||
"recordings": "Recordings",
|
||||
"scheduled": "Scheduled",
|
||||
"passes": "Passes"
|
||||
"shows": "Diziler",
|
||||
"recordings": "Kayıtlar",
|
||||
"scheduled": "Planlanmış",
|
||||
"passes": "Geçilenler"
|
||||
},
|
||||
"whatsupdocker": {
|
||||
"monitoring": "Monitoring",
|
||||
"updates": "Updates"
|
||||
},
|
||||
"tailscale": {
|
||||
"never": "Never",
|
||||
"last_seen": "Last Seen",
|
||||
"now": "Now",
|
||||
"years": "{{number}}y",
|
||||
"weeks": "{{number}}w",
|
||||
"days": "{{number}}d",
|
||||
"hours": "{{number}}h",
|
||||
"minutes": "{{number}}m",
|
||||
"seconds": "{{number}}s",
|
||||
"ago": "{{value}} Ago",
|
||||
"address": "Address",
|
||||
"expires": "Expires"
|
||||
"never": "Asla",
|
||||
"last_seen": "Son Görülme",
|
||||
"now": "Şimdi",
|
||||
"years": "{{number}} Yıl",
|
||||
"weeks": "{{number}} Hafta",
|
||||
"days": "{{number}} Gün",
|
||||
"hours": "{{number}} Saat",
|
||||
"minutes": "{{number}} Dakika",
|
||||
"seconds": "{{number}} Saniye",
|
||||
"ago": "{{value}} Önce",
|
||||
"address": "Adres",
|
||||
"expires": "Geciken"
|
||||
},
|
||||
"qnap": {
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"cpuUsage": "İşlemci Kullanımı",
|
||||
"memUsage": "Bellek Kullanımı",
|
||||
"systemTempC": "Sistem Sıcaklığı",
|
||||
"poolUsage": "Havuz Kullanımı",
|
||||
"volumeUsage": "Alan Kullanımı",
|
||||
"invalid": "Geçersiz"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -617,16 +635,103 @@
|
||||
"wanIP": "WAN IP"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Upstreams",
|
||||
"requests": "Current requests",
|
||||
"requests_failed": "Failed requests"
|
||||
"upstreams": "Akış",
|
||||
"requests": "Anlık İstekler",
|
||||
"requests_failed": "Başarısız İstekler"
|
||||
},
|
||||
"evcc": {
|
||||
"pv_power": "Production",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
"pv_power": "Üretim",
|
||||
"battery_soc": "Batarya",
|
||||
"grid_power": "Güç",
|
||||
"home_power": "Tüketim",
|
||||
"charge_power": "Şarj",
|
||||
"watt_hour": "Watt/Saat"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Toplam",
|
||||
"connected": "Bağlandı",
|
||||
"new_devices": "Yeni Cihazlar",
|
||||
"down_alerts": "Düşme Uyarıları"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -127,7 +127,7 @@
|
||||
"total": "Всього",
|
||||
"free": "Вільно",
|
||||
"used": "Використано",
|
||||
"load": "Навантаження",
|
||||
"load": "Завантаження",
|
||||
"mem": "Пам'ять",
|
||||
"temp": "TEMP",
|
||||
"max": "Max",
|
||||
@@ -198,7 +198,8 @@
|
||||
"playing": "Відтворення",
|
||||
"transcoding": "Перекодування",
|
||||
"bitrate": "Бітрейт",
|
||||
"no_active": "Немає активних потоків"
|
||||
"no_active": "Немає активних потоків",
|
||||
"plex_connection_error": "Перевірте з'єднання Plex"
|
||||
},
|
||||
"nzbget": {
|
||||
"rate": "Швидкість",
|
||||
@@ -232,18 +233,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "Розшукується",
|
||||
"queued": "У черзі",
|
||||
"series": "Серії"
|
||||
"series": "Серії",
|
||||
"queue": "Черга",
|
||||
"unknown": "Невідомо"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Розшукується",
|
||||
"missing": "Відсутній",
|
||||
"queued": "У черзі",
|
||||
"movies": "Фільми"
|
||||
"movies": "Фільми",
|
||||
"queue": "Черга",
|
||||
"unknown": "Невідомо"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "Розшукується",
|
||||
"queued": "У черзі",
|
||||
"albums": "Альбоми"
|
||||
"artists": "Виконавці"
|
||||
},
|
||||
"traefik": {
|
||||
"middleware": "Проміжне програмне забезпечення",
|
||||
@@ -358,12 +363,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "Пам'ять",
|
||||
"wait": "Будь ласка, зачекайте",
|
||||
"temp": "TEMP",
|
||||
"uptime": "Відправка",
|
||||
"days": "д",
|
||||
"hours": "г"
|
||||
"hours": "г",
|
||||
"load": "Завантаження",
|
||||
"warn": "Увага",
|
||||
"total": "Всього",
|
||||
"free": "Вільний",
|
||||
"used": "Використовується",
|
||||
"crit": "Crit",
|
||||
"read": "Прочитати",
|
||||
"write": "Написати",
|
||||
"gpu": "GPU",
|
||||
"mem": "Пам'ять",
|
||||
"swap": "Обмін",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"quicklaunch": {
|
||||
"bookmark": "Закладка",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "Використання CPU",
|
||||
"memUsage": "Використання пам'яті",
|
||||
"systemTempC": "Температура системи",
|
||||
"poolUsage": "Використання пулу"
|
||||
"poolUsage": "Використання пулу",
|
||||
"volumeUsage": "Гучність",
|
||||
"invalid": "Недійсний"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Середнє завантаження",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Споживання",
|
||||
"charge_power": "Зарядний пристрій",
|
||||
"watt_hour": "Вт/год"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Всього",
|
||||
"connected": "Підключено",
|
||||
"new_devices": "Нові пристрої",
|
||||
"down_alerts": "Сповіщення про збій"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Черга",
|
||||
"downloadSpeed": "Швидкість",
|
||||
"downloadBytesRemaining": "Залишилося",
|
||||
"downloadTotalBytes": "Розмір"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Серій",
|
||||
"totalFiles": "Файлів"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Назва",
|
||||
"map": "Мапа",
|
||||
"currentPlayers": "Поточні гравці",
|
||||
"players": "Гравці",
|
||||
"maxPlayers": "Максимум гравців",
|
||||
"bots": "Ботів",
|
||||
"ping": "Пінг",
|
||||
"status": "Статус",
|
||||
"online": "В мережі",
|
||||
"offline": "Не в мережі"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Результат",
|
||||
"status": "Статус",
|
||||
"buildId": "ID збірки",
|
||||
"succeeded": "Успішно",
|
||||
"notStarted": "Не розпочато",
|
||||
"failed": "Невдача",
|
||||
"canceled": "Скасовано",
|
||||
"inProgress": "В процесі",
|
||||
"totalPrs": "Всього PR",
|
||||
"myPrs": "Мій PR",
|
||||
"approved": "Затверджено"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Добре",
|
||||
"errored": "Помилки",
|
||||
"noRecent": "Застарілий",
|
||||
"totalUsed": "Використовувана пам'ять"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Серії",
|
||||
"archives": "Архіви",
|
||||
"chapters": "Глави",
|
||||
"categories": "Категорії"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -56,7 +56,8 @@
|
||||
"playing": "Đang chơi",
|
||||
"transcoding": "Chuyển định dạng",
|
||||
"bitrate": "Bitrate",
|
||||
"no_active": "No Active Streams"
|
||||
"no_active": "No Active Streams",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"rutorrent": {
|
||||
"active": "Hoạt động",
|
||||
@@ -66,13 +67,17 @@
|
||||
"sonarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"series": "Series"
|
||||
"series": "Series",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"movies": "Phim",
|
||||
"missing": "Missing"
|
||||
"missing": "Missing",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "Đang tìm",
|
||||
@@ -173,7 +178,7 @@
|
||||
"lidarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"albums": "Albums"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "Queries",
|
||||
@@ -234,12 +239,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Please wait",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Total Observed",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"poolUsage": "Pool Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"up": "Up",
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -13,7 +13,8 @@
|
||||
"playing": "播放緊",
|
||||
"no_active": "無任何活動",
|
||||
"transcoding": "轉碼緊",
|
||||
"bitrate": "比特率"
|
||||
"bitrate": "比特率",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"transmission": {
|
||||
"download": "下載速度",
|
||||
@@ -94,18 +95,22 @@
|
||||
"sonarr": {
|
||||
"wanted": "想睇",
|
||||
"queued": "排緊隊",
|
||||
"series": "電視劇"
|
||||
"series": "電視劇",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "想睇",
|
||||
"queued": "排緊隊",
|
||||
"movies": "電影",
|
||||
"missing": "Missing"
|
||||
"missing": "Missing",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"lidarr": {
|
||||
"wanted": "想睇",
|
||||
"queued": "排緊隊",
|
||||
"albums": "專輯"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "想睇",
|
||||
@@ -234,12 +239,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "MEM",
|
||||
"wait": "Please wait",
|
||||
"temp": "TEMP",
|
||||
"uptime": "UP",
|
||||
"days": "d",
|
||||
"hours": "h"
|
||||
"hours": "h",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "Total Observed",
|
||||
@@ -604,7 +620,9 @@
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage",
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage"
|
||||
"memUsage": "MEM Usage",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
@@ -628,5 +646,92 @@
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -56,7 +56,8 @@
|
||||
"playing": "播放中",
|
||||
"transcoding": "转码",
|
||||
"bitrate": "比特率",
|
||||
"no_active": "暂无播放"
|
||||
"no_active": "暂无播放",
|
||||
"plex_connection_error": "Check Plex Connection"
|
||||
},
|
||||
"rutorrent": {
|
||||
"active": "活动中",
|
||||
@@ -66,13 +67,17 @@
|
||||
"sonarr": {
|
||||
"wanted": "想看",
|
||||
"queued": "排队",
|
||||
"series": "系列"
|
||||
"series": "系列",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"radarr": {
|
||||
"wanted": "想看",
|
||||
"queued": "队列",
|
||||
"movies": "电影",
|
||||
"missing": "丢失"
|
||||
"missing": "丢失",
|
||||
"queue": "Queue",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "订阅",
|
||||
@@ -173,7 +178,7 @@
|
||||
"lidarr": {
|
||||
"wanted": "订阅",
|
||||
"queued": "队列",
|
||||
"albums": "相册"
|
||||
"artists": "Artists"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "查询",
|
||||
@@ -234,12 +239,23 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "处理器",
|
||||
"mem": "内存",
|
||||
"wait": "请稍等",
|
||||
"temp": "温度",
|
||||
"uptime": "运行时间",
|
||||
"days": "天",
|
||||
"hours": "时"
|
||||
"hours": "时",
|
||||
"load": "Load",
|
||||
"warn": "Warn",
|
||||
"total": "Total",
|
||||
"free": "Free",
|
||||
"used": "Used",
|
||||
"crit": "Crit",
|
||||
"read": "Read",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "观察到的总数",
|
||||
@@ -550,7 +566,7 @@
|
||||
"targets_total": "总目标"
|
||||
},
|
||||
"minecraft": {
|
||||
"players": "播放中",
|
||||
"players": "玩家",
|
||||
"version": "版本",
|
||||
"status": "状态",
|
||||
"up": "在线的",
|
||||
@@ -604,7 +620,9 @@
|
||||
"cpuUsage": "处理器",
|
||||
"memUsage": "内存",
|
||||
"systemTempC": "系统温度",
|
||||
"poolUsage": "存储池"
|
||||
"poolUsage": "存储池",
|
||||
"volumeUsage": "Volume Usage",
|
||||
"invalid": "Invalid"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "平均负载",
|
||||
@@ -622,11 +640,98 @@
|
||||
"requests_failed": "失败请求"
|
||||
},
|
||||
"evcc": {
|
||||
"pv_power": "Production",
|
||||
"pv_power": "正式环境",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"watt_hour": "Wh"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "Total",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue Count",
|
||||
"downloadSpeed": "Download Speed",
|
||||
"downloadBytesRemaining": "Remaining",
|
||||
"downloadTotalBytes": "Size"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "系列",
|
||||
"totalFiles": "文件"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Players",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"result": "Result",
|
||||
"status": "Status",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"failed": "Failed",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "书籍",
|
||||
"authors": "作者",
|
||||
"categories": "分类",
|
||||
"series": "丛书"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
"information": "資訊",
|
||||
"url": "網址",
|
||||
"raw_error": "原始錯誤",
|
||||
"response_data": "回復數據"
|
||||
"response_data": "回應資料"
|
||||
},
|
||||
"weather": {
|
||||
"current": "目前位置",
|
||||
@@ -21,14 +21,14 @@
|
||||
"mem": "記憶體",
|
||||
"cpu": "處理器",
|
||||
"error": "錯誤",
|
||||
"unknown": "未知的",
|
||||
"unknown": "未知",
|
||||
"running": "執行中",
|
||||
"starting": "啟動中",
|
||||
"unhealthy": "不健康的",
|
||||
"not_found": "未找到",
|
||||
"exited": "已退出",
|
||||
"partial": "部分",
|
||||
"healthy": "健康的"
|
||||
"healthy": "健康"
|
||||
},
|
||||
"emby": {
|
||||
"playing": "正在播放",
|
||||
@@ -44,7 +44,8 @@
|
||||
"playing": "正在播放",
|
||||
"transcoding": "轉碼",
|
||||
"bitrate": "位元率",
|
||||
"no_active": "無播放活動"
|
||||
"no_active": "無播放活動",
|
||||
"plex_connection_error": "檢查Plex的連接狀態"
|
||||
},
|
||||
"jellyseerr": {
|
||||
"pending": "待下載",
|
||||
@@ -63,9 +64,9 @@
|
||||
"mem": "記憶體",
|
||||
"temp": "溫度",
|
||||
"max": "最大",
|
||||
"uptime": "運行時間",
|
||||
"uptime": "運作時間",
|
||||
"months": "月",
|
||||
"days": "天",
|
||||
"days": "日",
|
||||
"hours": "時",
|
||||
"minutes": "分"
|
||||
},
|
||||
@@ -88,12 +89,16 @@
|
||||
"movies": "電影",
|
||||
"wanted": "關注中",
|
||||
"queued": "已加入佇列",
|
||||
"missing": "缺少"
|
||||
"missing": "缺少",
|
||||
"queue": "佇列",
|
||||
"unknown": "未知的"
|
||||
},
|
||||
"sonarr": {
|
||||
"wanted": "關注中",
|
||||
"queued": "已加入佇列",
|
||||
"series": "影集"
|
||||
"series": "影集",
|
||||
"queue": "佇列",
|
||||
"unknown": "未知的"
|
||||
},
|
||||
"readarr": {
|
||||
"wanted": "關注中",
|
||||
@@ -115,7 +120,7 @@
|
||||
"queries": "查詢",
|
||||
"blocked": "已阻擋",
|
||||
"gravity": "阻擋清單",
|
||||
"blocked_percent": "Blocked %"
|
||||
"blocked_percent": "已封鎖 %"
|
||||
},
|
||||
"speedtest": {
|
||||
"upload": "上行速率",
|
||||
@@ -123,8 +128,8 @@
|
||||
"ping": "Ping"
|
||||
},
|
||||
"portainer": {
|
||||
"running": "運行中",
|
||||
"stopped": "未運行",
|
||||
"running": "運作中",
|
||||
"stopped": "已停止",
|
||||
"total": "全部"
|
||||
},
|
||||
"traefik": {
|
||||
@@ -163,7 +168,7 @@
|
||||
"seed": "已完成下載"
|
||||
},
|
||||
"jackett": {
|
||||
"configured": "已配置",
|
||||
"configured": "已設置",
|
||||
"errored": "發生錯誤"
|
||||
},
|
||||
"bazarr": {
|
||||
@@ -173,7 +178,7 @@
|
||||
"lidarr": {
|
||||
"wanted": "關注中",
|
||||
"queued": "已加入佇列",
|
||||
"albums": "專輯"
|
||||
"artists": "創作者"
|
||||
},
|
||||
"adguard": {
|
||||
"queries": "查詢",
|
||||
@@ -200,8 +205,8 @@
|
||||
},
|
||||
"authentik": {
|
||||
"users": "使用者",
|
||||
"loginsLast24H": "登錄(24h)",
|
||||
"failedLoginsLast24H": "登錄失敗(24h)"
|
||||
"loginsLast24H": "登入 (過去 24 小時)",
|
||||
"failedLoginsLast24H": "登入失敗 (過去 24 小時)"
|
||||
},
|
||||
"proxmox": {
|
||||
"mem": "記憶體",
|
||||
@@ -211,19 +216,19 @@
|
||||
},
|
||||
"unifi": {
|
||||
"users": "使用者",
|
||||
"uptime": "系統運行時間",
|
||||
"uptime": "系統運作時間",
|
||||
"days": "天",
|
||||
"wan": "WAN",
|
||||
"lan_users": "LAN使用者",
|
||||
"wlan_users": "WLAN使用者",
|
||||
"lan_users": "有線使用者",
|
||||
"wlan_users": "無線使用者",
|
||||
"up": "上線",
|
||||
"down": "離線",
|
||||
"wait": "請稍後",
|
||||
"lan": "LAN",
|
||||
"wlan": "WLAN",
|
||||
"devices": "設備",
|
||||
"lan_devices": "LAN設備",
|
||||
"wlan_devices": "WLAN設備",
|
||||
"lan_devices": "有線設備",
|
||||
"wlan_devices": "無線設備",
|
||||
"empty_data": "子系統狀態未知"
|
||||
},
|
||||
"plex": {
|
||||
@@ -234,19 +239,30 @@
|
||||
},
|
||||
"glances": {
|
||||
"cpu": "CPU",
|
||||
"mem": "記憶體",
|
||||
"wait": "請稍後",
|
||||
"temp": "溫度",
|
||||
"uptime": "運行時間",
|
||||
"days": "天",
|
||||
"hours": "時"
|
||||
"hours": "時",
|
||||
"free": "未使用",
|
||||
"used": "已使用",
|
||||
"load": "負載量",
|
||||
"warn": "警告",
|
||||
"total": "總共",
|
||||
"crit": "Crit",
|
||||
"read": "讀取",
|
||||
"write": "寫入",
|
||||
"gpu": "GPU",
|
||||
"mem": "記憶體",
|
||||
"swap": "Swap",
|
||||
"_temp": "Temp"
|
||||
},
|
||||
"changedetectionio": {
|
||||
"totalObserved": "總監測數",
|
||||
"diffsDetected": "偵測到的變更"
|
||||
},
|
||||
"wmo": {
|
||||
"0-day": "晴",
|
||||
"0-day": "晴天",
|
||||
"0-night": "晴朗",
|
||||
"71-day": "小雪",
|
||||
"71-night": "小雪",
|
||||
@@ -308,7 +324,7 @@
|
||||
"service": "服務",
|
||||
"search": "搜尋",
|
||||
"custom": "自訂",
|
||||
"visit": "訪問",
|
||||
"visit": "造訪",
|
||||
"url": "網址"
|
||||
},
|
||||
"homebridge": {
|
||||
@@ -351,7 +367,7 @@
|
||||
},
|
||||
"pyload": {
|
||||
"speed": "速度",
|
||||
"active": "運行中",
|
||||
"active": "執行中",
|
||||
"queue": "佇列",
|
||||
"total": "全部"
|
||||
},
|
||||
@@ -515,14 +531,14 @@
|
||||
"memoryusage": "記憶體用量",
|
||||
"freespace": "可用空間",
|
||||
"activeusers": "活躍用戶",
|
||||
"numfiles": "Files",
|
||||
"numshares": "Shared Items"
|
||||
"numfiles": "檔案",
|
||||
"numshares": "已分享"
|
||||
},
|
||||
"kopia": {
|
||||
"status": "狀態",
|
||||
"size": "檔案大小",
|
||||
"lastrun": "上次運行",
|
||||
"nextrun": "下次運行",
|
||||
"lastrun": "上次執行",
|
||||
"nextrun": "下次執行",
|
||||
"failed": "失敗"
|
||||
},
|
||||
"unmanic": {
|
||||
@@ -587,46 +603,135 @@
|
||||
"updates": "可更新"
|
||||
},
|
||||
"tailscale": {
|
||||
"address": "Address",
|
||||
"expires": "Expires",
|
||||
"never": "Never",
|
||||
"last_seen": "Last Seen",
|
||||
"now": "Now",
|
||||
"years": "{{number}}y",
|
||||
"hours": "{{number}}h",
|
||||
"minutes": "{{number}}m",
|
||||
"seconds": "{{number}}s",
|
||||
"ago": "{{value}} Ago",
|
||||
"weeks": "{{number}}w",
|
||||
"days": "{{number}}d"
|
||||
"address": "位址",
|
||||
"expires": "已失效",
|
||||
"never": "未曾",
|
||||
"last_seen": "上次連線",
|
||||
"now": "現在",
|
||||
"years": "{{number}} 年",
|
||||
"hours": "{{number}} 小時",
|
||||
"minutes": "{{number}} 分鐘",
|
||||
"seconds": "{{number}} 秒",
|
||||
"ago": "{{value}} 前",
|
||||
"weeks": "{{number}} 週",
|
||||
"days": "{{number}} 天"
|
||||
},
|
||||
"qnap": {
|
||||
"cpuUsage": "CPU Usage",
|
||||
"memUsage": "MEM Usage",
|
||||
"systemTempC": "System Temp",
|
||||
"poolUsage": "Pool Usage"
|
||||
"cpuUsage": "CPU 使用率",
|
||||
"memUsage": "記憶體使用率",
|
||||
"systemTempC": "系統溫度",
|
||||
"poolUsage": "儲存池使用率",
|
||||
"volumeUsage": "儲存區用量",
|
||||
"invalid": "無效的"
|
||||
},
|
||||
"pfsense": {
|
||||
"load": "Load Avg",
|
||||
"memory": "Mem Usage",
|
||||
"wanStatus": "WAN Status",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"temp": "Temp",
|
||||
"disk": "Disk Usage",
|
||||
"wanIP": "WAN IP"
|
||||
"load": "平均負載量",
|
||||
"memory": "記憶體使用率",
|
||||
"wanStatus": "網際網路狀態",
|
||||
"up": "已連線",
|
||||
"down": "已離線",
|
||||
"temp": "溫度",
|
||||
"disk": "硬碟使用率",
|
||||
"wanIP": "網際網路 IP"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Upstreams",
|
||||
"requests": "Current requests",
|
||||
"requests_failed": "Failed requests"
|
||||
"upstreams": "上行",
|
||||
"requests": "目前請求數",
|
||||
"requests_failed": "失敗請求"
|
||||
},
|
||||
"evcc": {
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"pv_power": "Production",
|
||||
"battery_soc": "Battery",
|
||||
"watt_hour": "Wh"
|
||||
"grid_power": "電網",
|
||||
"home_power": "電源使用率",
|
||||
"charge_power": "充電",
|
||||
"pv_power": "正式環境",
|
||||
"battery_soc": "電池",
|
||||
"watt_hour": "瓦時 (Wh)"
|
||||
},
|
||||
"pialert": {
|
||||
"total": "全部",
|
||||
"connected": "已連線",
|
||||
"new_devices": "新裝置",
|
||||
"down_alerts": "離線警告"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "下載佇列",
|
||||
"downloadSpeed": "下載速率",
|
||||
"downloadBytesRemaining": "剩餘",
|
||||
"downloadTotalBytes": "總下載量"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "叢刊",
|
||||
"totalFiles": "檔案"
|
||||
},
|
||||
"gamedig": {
|
||||
"name": "名稱",
|
||||
"map": "地圖",
|
||||
"currentPlayers": "當前玩家數",
|
||||
"players": "玩家",
|
||||
"maxPlayers": "玩家數上限",
|
||||
"bots": "機器人",
|
||||
"ping": "Ping",
|
||||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "結果",
|
||||
"status": "狀態",
|
||||
"buildId": "組建編號",
|
||||
"succeeded": "成功",
|
||||
"notStarted": "尚未啟用",
|
||||
"failed": "失敗",
|
||||
"canceled": "取消",
|
||||
"inProgress": "執行中",
|
||||
"totalPrs": "總提取要求",
|
||||
"myPrs": "我的提取要求",
|
||||
"approved": "已核准"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "錯誤",
|
||||
"noRecent": "已過時",
|
||||
"totalUsed": "已使用空間"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"total": "Total",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
"passed": "Passed",
|
||||
"failed": "Failed"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"calibreweb": {
|
||||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Status",
|
||||
"uptime": "Uptime",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,13 +1,69 @@
|
||||
import { useRef } from "react";
|
||||
import classNames from "classnames";
|
||||
import { Disclosure, Transition } from '@headlessui/react';
|
||||
import { MdKeyboardArrowDown } from "react-icons/md";
|
||||
|
||||
import ErrorBoundary from "components/errorboundry";
|
||||
import List from "components/bookmarks/list";
|
||||
import ResolvedIcon from "components/resolvedicon";
|
||||
|
||||
export default function BookmarksGroup({ group }) {
|
||||
export default function BookmarksGroup({ bookmarks, layout, disableCollapse }) {
|
||||
const panel = useRef();
|
||||
return (
|
||||
<div key={group.name} className="flex-1">
|
||||
<h2 className="text-theme-800 dark:text-theme-300 text-xl font-medium">{group.name}</h2>
|
||||
<ErrorBoundary>
|
||||
<List bookmarks={group.bookmarks} />
|
||||
</ErrorBoundary>
|
||||
<div
|
||||
key={bookmarks.name}
|
||||
className={classNames(
|
||||
"bookmark-group",
|
||||
layout?.style === "row" ? "basis-full" : "basis-full md:basis-1/4 lg:basis-1/5 xl:basis-1/6",
|
||||
layout?.header === false ? "flex-1 px-1 -my-1" : "flex-1 p-1"
|
||||
)}
|
||||
>
|
||||
<Disclosure defaultOpen>
|
||||
{({ open }) => (
|
||||
<>
|
||||
{layout?.header !== false && (
|
||||
<Disclosure.Button disabled={disableCollapse} className="flex w-full select-none items-center group">
|
||||
{layout?.icon && (
|
||||
<div className="flex-shrink-0 mr-2 w-7 h-7 bookmark-group-icon">
|
||||
<ResolvedIcon icon={layout.icon} />
|
||||
</div>
|
||||
)}
|
||||
<h2 className="text-theme-800 dark:text-theme-300 text-xl font-medium bookmark-group-name">{bookmarks.name}</h2>
|
||||
<MdKeyboardArrowDown
|
||||
className={classNames(
|
||||
disableCollapse ? "hidden" : "",
|
||||
"transition-all opacity-0 group-hover:opacity-100 ml-auto text-theme-800 dark:text-theme-300 text-xl",
|
||||
open ? "" : "rotate-180"
|
||||
)}
|
||||
/>
|
||||
</Disclosure.Button>
|
||||
)}
|
||||
<Transition
|
||||
// Otherwise the transition group does display: none and cancels animation
|
||||
className="!block"
|
||||
unmount={false}
|
||||
beforeLeave={() => {
|
||||
panel.current.style.height = `${panel.current.scrollHeight}px`;
|
||||
setTimeout(() => {
|
||||
panel.current.style.height = `0`;
|
||||
}, 1);
|
||||
}}
|
||||
beforeEnter={() => {
|
||||
panel.current.style.height = `0px`;
|
||||
setTimeout(() => {
|
||||
panel.current.style.height = `${panel.current.scrollHeight}px`;
|
||||
}, 1);
|
||||
}}
|
||||
>
|
||||
<Disclosure.Panel className="transition-all overflow-hidden duration-300 ease-out" ref={panel} static>
|
||||
<ErrorBoundary>
|
||||
<List bookmarks={bookmarks.bookmarks} layout={layout} />
|
||||
</ErrorBoundary>
|
||||
</Disclosure.Panel>
|
||||
</Transition>
|
||||
</>
|
||||
)}
|
||||
</Disclosure>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { useContext } from "react";
|
||||
import classNames from "classnames";
|
||||
|
||||
import { SettingsContext } from "utils/contexts/settings";
|
||||
import ResolvedIcon from "components/resolvedicon";
|
||||
@@ -8,15 +9,18 @@ export default function Item({ bookmark }) {
|
||||
const { settings } = useContext(SettingsContext);
|
||||
|
||||
return (
|
||||
<li key={bookmark.name}>
|
||||
<li key={bookmark.name} id={bookmark.id} className="bookmark" data-name={bookmark.name}>
|
||||
<a
|
||||
href={bookmark.href}
|
||||
title={bookmark.name}
|
||||
target={bookmark.target ?? settings.target ?? "_blank"}
|
||||
className="block w-full text-left cursor-pointer transition-all h-15 mb-3 rounded-md font-medium text-theme-700 dark:text-theme-200 dark:hover:text-theme-300 shadow-md shadow-theme-900/10 dark:shadow-theme-900/20 bg-theme-100/20 hover:bg-theme-300/20 dark:bg-white/5 dark:hover:bg-white/10"
|
||||
className={classNames(
|
||||
settings.cardBlur !== undefined && `backdrop-blur${settings.cardBlur.length ? '-' : ""}${settings.cardBlur}`,
|
||||
"block w-full text-left cursor-pointer transition-all h-15 mb-3 rounded-md font-medium text-theme-700 dark:text-theme-200 dark:hover:text-theme-300 shadow-md shadow-theme-900/10 dark:shadow-theme-900/20 bg-theme-100/20 hover:bg-theme-300/20 dark:bg-white/5 dark:hover:bg-white/10"
|
||||
)}
|
||||
>
|
||||
<div className="flex">
|
||||
<div className="flex-shrink-0 flex items-center justify-center w-11 bg-theme-500/10 dark:bg-theme-900/50 text-theme-700 hover:text-theme-700 dark:text-theme-200 text-sm font-medium rounded-l-md">
|
||||
<div className="flex-shrink-0 flex items-center justify-center w-11 bg-theme-500/10 dark:bg-theme-900/50 text-theme-700 hover:text-theme-700 dark:text-theme-200 text-sm font-medium rounded-l-md bookmark-icon">
|
||||
{bookmark.icon &&
|
||||
<div className="flex-shrink-0 w-5 h-5">
|
||||
<ResolvedIcon icon={bookmark.icon} alt={bookmark.abbr} />
|
||||
@@ -24,9 +28,9 @@ export default function Item({ bookmark }) {
|
||||
}
|
||||
{!bookmark.icon && bookmark.abbr}
|
||||
</div>
|
||||
<div className="flex-1 flex items-center justify-between rounded-r-md ">
|
||||
<div className="flex-1 grow pl-3 py-2 text-xs">{bookmark.name}</div>
|
||||
<div className="px-2 py-2 truncate text-theme-500 dark:text-theme-300 text-xs">{hostname}</div>
|
||||
<div className="flex-1 flex items-center justify-between rounded-r-md bookmark-text">
|
||||
<div className="flex-1 grow pl-3 py-2 text-xs bookmark-name">{bookmark.name}</div>
|
||||
<div className="px-2 py-2 truncate text-theme-500 dark:text-theme-300 text-xs bookmark-hostname">{hostname}</div>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
|
||||
@@ -1,8 +1,17 @@
|
||||
import classNames from "classnames";
|
||||
|
||||
import { columnMap } from "../../utils/layout/columns";
|
||||
|
||||
import Item from "components/bookmarks/item";
|
||||
|
||||
export default function List({ bookmarks }) {
|
||||
export default function List({ bookmarks, layout }) {
|
||||
return (
|
||||
<ul className="mt-3 flex flex-col">
|
||||
<ul
|
||||
className={classNames(
|
||||
layout?.style === "row" ? `grid ${columnMap[layout?.columns]} gap-x-2` : "flex flex-col",
|
||||
"mt-3 bookmark-list"
|
||||
)}
|
||||
>
|
||||
{bookmarks.map((bookmark) => (
|
||||
<Item key={`${bookmark.name}-${bookmark.href}`} bookmark={bookmark} />
|
||||
))}
|
||||
|
||||
10
src/components/filecontent.jsx
Normal file
10
src/components/filecontent.jsx
Normal file
@@ -0,0 +1,10 @@
|
||||
import useSWR from "swr"
|
||||
|
||||
export default function FileContent({ path, loadingValue, errorValue, emptyValue = '' }) {
|
||||
const fetcher = (url) => fetch(url).then((res) => res.text())
|
||||
const { data, error, isLoading } = useSWR(`/api/config/${ path }`, fetcher)
|
||||
|
||||
if (error) return (errorValue)
|
||||
if (isLoading) return (loadingValue)
|
||||
return (data || emptyValue)
|
||||
}
|
||||
@@ -61,7 +61,6 @@ export default function QuickLaunch({servicesAndBookmarks, searchString, setSear
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function handleItemHover(event) {
|
||||
setCurrentItemIndex(parseInt(event.target?.dataset?.index, 10));
|
||||
}
|
||||
@@ -71,6 +70,16 @@ export default function QuickLaunch({servicesAndBookmarks, searchString, setSear
|
||||
openCurrentItem(event.metaKey);
|
||||
}
|
||||
|
||||
function handleItemKeyDown(event) {
|
||||
if (!isOpen) return;
|
||||
|
||||
// native button handles other keys
|
||||
if (event.key === "Escape") {
|
||||
closeAndReset();
|
||||
event.preventDefault();
|
||||
}
|
||||
}
|
||||
|
||||
useEffect(() => {
|
||||
if (searchString.length === 0) setResults([]);
|
||||
else {
|
||||
@@ -145,7 +154,7 @@ export default function QuickLaunch({servicesAndBookmarks, searchString, setSear
|
||||
|
||||
return (
|
||||
<div className={classNames(
|
||||
"relative z-20 ease-in-out duration-300 transition-opacity",
|
||||
"relative z-40 ease-in-out duration-300 transition-opacity",
|
||||
hidden && !isOpen && "hidden",
|
||||
!hidden && isOpen && "opacity-100",
|
||||
!isOpen && "opacity-0",
|
||||
@@ -162,10 +171,10 @@ export default function QuickLaunch({servicesAndBookmarks, searchString, setSear
|
||||
{results.length > 0 && <ul className="max-h-[60vh] overflow-y-auto m-2">
|
||||
{results.map((r, i) => (
|
||||
<li key={r.container ?? r.app ?? `${r.name}-${r.href}`}>
|
||||
<button type="button" data-index={i} onMouseEnter={handleItemHover} className={classNames(
|
||||
<button type="button" data-index={i} onMouseEnter={handleItemHover} onClick={handleItemClick} onKeyDown={handleItemKeyDown} className={classNames(
|
||||
"flex flex-row w-full items-center justify-between rounded-md text-sm md:text-xl py-2 px-4 cursor-pointer text-theme-700 dark:text-theme-200",
|
||||
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">
|
||||
{(r.icon || r.abbr) && <div className="w-5 text-xs mr-4">
|
||||
{r.icon && <ResolvedIcon icon={r.icon} />}
|
||||
|
||||
@@ -33,11 +33,22 @@ export default function ResolvedIcon({ icon, width = 32, height = 32, alt = "log
|
||||
}
|
||||
|
||||
// check mdi- or si- prefixed icons
|
||||
const prefix = icon.split("-")[0]
|
||||
const prefix = icon.split("-")[0];
|
||||
|
||||
if (prefix in iconSetURLs) {
|
||||
// get icon source
|
||||
const iconName = icon.replace(`${prefix}-`, "").replace(".svg", "");
|
||||
// default to theme setting
|
||||
let iconName = icon.replace(`${prefix}-`, "").replace(".svg", "");
|
||||
let iconColor = settings.iconStyle === "theme" ?
|
||||
`rgb(var(--color-${ theme === "dark" ? 300 : 900 }) / var(--tw-text-opacity, 1))` :
|
||||
"linear-gradient(180deg, rgb(var(--color-logo-start)), rgb(var(--color-logo-stop)))";
|
||||
|
||||
// use custom hex color if provided
|
||||
const colorMatches = icon.match(/[#][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9]$/i)
|
||||
if (colorMatches?.length) {
|
||||
iconName = icon.replace(`${prefix}-`, "").replace(".svg", "").replace(`-${colorMatches[0]}`, "");
|
||||
iconColor = `${colorMatches[0]}`;
|
||||
}
|
||||
|
||||
const iconSource = `${iconSetURLs[prefix]}${iconName}.svg`;
|
||||
|
||||
return (
|
||||
@@ -47,16 +58,13 @@ export default function ResolvedIcon({ icon, width = 32, height = 32, alt = "log
|
||||
height,
|
||||
maxWidth: '100%',
|
||||
maxHeight: '100%',
|
||||
background: settings.iconStyle === "theme" ?
|
||||
`rgb(var(--color-${ theme === "dark" ? 300 : 900 }) / var(--tw-text-opacity, 1))` :
|
||||
"linear-gradient(180deg, rgb(var(--color-logo-start)), rgb(var(--color-logo-stop)))",
|
||||
background: `${iconColor}`,
|
||||
mask: `url(${iconSource}) no-repeat center / contain`,
|
||||
WebkitMask: `url(${iconSource}) no-repeat center / contain`,
|
||||
}}
|
||||
/>
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
// fallback to dashboard-icons
|
||||
if (icon.endsWith(".svg")) {
|
||||
|
||||
@@ -1,27 +1,63 @@
|
||||
import { useRef } from "react";
|
||||
import classNames from "classnames";
|
||||
import { Disclosure, Transition } from '@headlessui/react';
|
||||
import { MdKeyboardArrowDown } from "react-icons/md";
|
||||
|
||||
import List from "components/services/list";
|
||||
import ResolvedIcon from "components/resolvedicon";
|
||||
|
||||
export default function ServicesGroup({ services, layout, fiveColumns }) {
|
||||
export default function ServicesGroup({ group, services, layout, fiveColumns, disableCollapse }) {
|
||||
|
||||
const panel = useRef();
|
||||
|
||||
return (
|
||||
<div
|
||||
key={services.name}
|
||||
className={classNames(
|
||||
"services-group",
|
||||
layout?.style === "row" ? "basis-full" : "basis-full md:basis-1/2 lg:basis-1/3 xl:basis-1/4",
|
||||
layout?.style !== "row" && fiveColumns ? "3xl:basis-1/5" : "",
|
||||
"flex-1 p-1"
|
||||
layout?.header === false ? "flex-1 px-1 -my-1" : "flex-1 p-1",
|
||||
)}
|
||||
>
|
||||
<div className="flex select-none items-center">
|
||||
{layout?.icon &&
|
||||
<div className="flex-shrink-0 mr-2 w-7 h-7">
|
||||
<ResolvedIcon icon={layout.icon} />
|
||||
</div>
|
||||
}
|
||||
<h2 className="text-theme-800 dark:text-theme-300 text-xl font-medium">{services.name}</h2>
|
||||
</div>
|
||||
<List services={services.services} layout={layout} />
|
||||
<Disclosure defaultOpen>
|
||||
{({ open }) => (
|
||||
<>
|
||||
{ layout?.header !== false &&
|
||||
<Disclosure.Button disabled={disableCollapse} className="flex w-full select-none items-center group">
|
||||
{layout?.icon &&
|
||||
<div className="flex-shrink-0 mr-2 w-7 h-7 service-group-icon">
|
||||
<ResolvedIcon icon={layout.icon} />
|
||||
</div>
|
||||
}
|
||||
<h2 className="flex text-theme-800 dark:text-theme-300 text-xl font-medium service-group-name">{services.name}</h2>
|
||||
<MdKeyboardArrowDown className={classNames(
|
||||
disableCollapse ? 'hidden' : '',
|
||||
'transition-all opacity-0 group-hover:opacity-100 ml-auto text-theme-800 dark:text-theme-300 text-xl',
|
||||
open ? '' : 'rotate-180'
|
||||
)} />
|
||||
</Disclosure.Button>
|
||||
}
|
||||
<Transition
|
||||
// Otherwise the transition group does display: none and cancels animation
|
||||
className="!block"
|
||||
unmount={false}
|
||||
beforeLeave={() => {
|
||||
panel.current.style.height = `${panel.current.scrollHeight}px`;
|
||||
setTimeout(() => {panel.current.style.height = `0`}, 1);
|
||||
}}
|
||||
beforeEnter={() => {
|
||||
panel.current.style.height = `0px`;
|
||||
setTimeout(() => {panel.current.style.height = `${panel.current.scrollHeight}px`}, 1);
|
||||
}}
|
||||
>
|
||||
<Disclosure.Panel className="transition-all overflow-hidden duration-300 ease-out" ref={panel} static>
|
||||
<List group={group} services={services.services} layout={layout} />
|
||||
</Disclosure.Panel>
|
||||
</Transition>
|
||||
</>
|
||||
)}
|
||||
</Disclosure>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ import Kubernetes from "widgets/kubernetes/component";
|
||||
import { SettingsContext } from "utils/contexts/settings";
|
||||
import ResolvedIcon from "components/resolvedicon";
|
||||
|
||||
export default function Item({ service }) {
|
||||
export default function Item({ service, group }) {
|
||||
const hasLink = service.href && service.href !== "#";
|
||||
const { settings } = useContext(SettingsContext);
|
||||
const showStats = (service.showStats === false) ? false : settings.showStats;
|
||||
@@ -29,26 +29,30 @@ export default function Item({ service }) {
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
return (
|
||||
<li key={service.name}>
|
||||
<li key={service.name} id={service.id} className="service" data-name={service.name || ""}>
|
||||
<div
|
||||
className={`${
|
||||
hasLink ? "cursor-pointer " : " "
|
||||
}transition-all h-15 mb-2 p-1 rounded-md font-medium text-theme-700 dark:text-theme-200 dark:hover:text-theme-300 shadow-md shadow-theme-900/10 dark:shadow-theme-900/20 bg-theme-100/20 hover:bg-theme-300/20 dark:bg-white/5 dark:hover:bg-white/10 relative`}
|
||||
className={classNames(
|
||||
settings.cardBlur !== undefined && `backdrop-blur${settings.cardBlur.length ? '-' : ""}${settings.cardBlur}`,
|
||||
hasLink && "cursor-pointer",
|
||||
"transition-all h-15 mb-2 p-1 rounded-md font-medium text-theme-700 dark:text-theme-200 dark:hover:text-theme-300 shadow-md shadow-theme-900/10 dark:shadow-theme-900/20 bg-theme-100/20 hover:bg-theme-300/20 dark:bg-white/5 dark:hover:bg-white/10 relative overflow-clip service-card"
|
||||
)}
|
||||
>
|
||||
<div className="flex select-none">
|
||||
<div className="flex select-none z-0 service-title">
|
||||
{service.icon &&
|
||||
(hasLink ? (
|
||||
<a
|
||||
href={service.href}
|
||||
target={service.target ?? settings.target ?? "_blank"}
|
||||
rel="noreferrer"
|
||||
className="flex-shrink-0 flex items-center justify-center w-12 "
|
||||
className="flex-shrink-0 flex items-center justify-center w-12 service-icon"
|
||||
>
|
||||
<ResolvedIcon icon={service.icon} />
|
||||
</a>
|
||||
) : (
|
||||
<div className="flex-shrink-0 flex items-center justify-center w-12 ">
|
||||
<div className="flex-shrink-0 flex items-center justify-center w-12 service-icon">
|
||||
<ResolvedIcon icon={service.icon} />
|
||||
</div>
|
||||
))}
|
||||
@@ -58,26 +62,26 @@ export default function Item({ service }) {
|
||||
href={service.href}
|
||||
target={service.target ?? settings.target ?? "_blank"}
|
||||
rel="noreferrer"
|
||||
className="flex-1 flex items-center justify-between rounded-r-md "
|
||||
className="flex-1 flex items-center justify-between rounded-r-md service-title-text"
|
||||
>
|
||||
<div className="flex-1 px-2 py-2 text-sm text-left">
|
||||
<div className="flex-1 px-2 py-2 text-sm text-left z-10 service-name">
|
||||
{service.name}
|
||||
<p className="text-theme-500 dark:text-theme-300 text-xs font-light">{service.description}</p>
|
||||
<p className="text-theme-500 dark:text-theme-300 text-xs font-light service-description">{service.description}</p>
|
||||
</div>
|
||||
</a>
|
||||
) : (
|
||||
<div className="flex-1 flex items-center justify-between rounded-r-md ">
|
||||
<div className="flex-1 px-2 py-2 text-sm text-left">
|
||||
<div className="flex-1 flex items-center justify-between rounded-r-md service-title-text">
|
||||
<div className="flex-1 px-2 py-2 text-sm text-left z-10 service-name">
|
||||
{service.name}
|
||||
<p className="text-theme-500 dark:text-theme-300 text-xs font-light">{service.description}</p>
|
||||
<p className="text-theme-500 dark:text-theme-300 text-xs font-light service-description">{service.description}</p>
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
|
||||
<div className="absolute top-0 right-0 w-1/2 flex flex-row justify-end gap-2 mr-2">
|
||||
<div className="absolute top-0 right-0 flex flex-row justify-end gap-2 mr-2 z-30 service-tags">
|
||||
{service.ping && (
|
||||
<div className="flex-shrink-0 flex items-center justify-center cursor-pointer">
|
||||
<Ping service={service} />
|
||||
<div className="flex-shrink-0 flex items-center justify-center service-tag service-ping">
|
||||
<Ping group={group} service={service.name} />
|
||||
<span className="sr-only">Ping status</span>
|
||||
</div>
|
||||
)}
|
||||
@@ -86,7 +90,7 @@ export default function Item({ service }) {
|
||||
<button
|
||||
type="button"
|
||||
onClick={() => (statsOpen ? closeStats() : setStatsOpen(true))}
|
||||
className="flex-shrink-0 flex items-center justify-center cursor-pointer"
|
||||
className="flex-shrink-0 flex items-center justify-center cursor-pointer service-tag service-container-stats"
|
||||
>
|
||||
<Status service={service} />
|
||||
<span className="sr-only">View container stats</span>
|
||||
@@ -96,7 +100,7 @@ export default function Item({ service }) {
|
||||
<button
|
||||
type="button"
|
||||
onClick={() => (statsOpen ? closeStats() : setStatsOpen(true))}
|
||||
className="flex-shrink-0 flex items-center justify-center cursor-pointer"
|
||||
className="flex-shrink-0 flex items-center justify-center cursor-pointer service-tag service-app"
|
||||
>
|
||||
<KubernetesStatus service={service} />
|
||||
<span className="sr-only">View container stats</span>
|
||||
@@ -109,7 +113,7 @@ export default function Item({ service }) {
|
||||
<div
|
||||
className={classNames(
|
||||
showStats || (statsOpen && !statsClosing) ? "max-h-[110px] opacity-100" : " max-h-[0] opacity-0",
|
||||
"w-full overflow-hidden transition-all duration-300 ease-in-out"
|
||||
"w-full overflow-hidden transition-all duration-300 ease-in-out service-stats"
|
||||
)}
|
||||
>
|
||||
{(showStats || statsOpen) && <Docker service={{ widget: { container: service.container, server: service.server } }} />}
|
||||
@@ -119,7 +123,7 @@ export default function Item({ service }) {
|
||||
<div
|
||||
className={classNames(
|
||||
showStats || (statsOpen && !statsClosing) ? "max-h-[55px] opacity-100" : " max-h-[0] opacity-0",
|
||||
"w-full overflow-hidden transition-all duration-300 ease-in-out"
|
||||
"w-full overflow-hidden transition-all duration-300 ease-in-out service-stats"
|
||||
)}
|
||||
>
|
||||
{(showStats || statsOpen) && <Kubernetes service={{ widget: { namespace: service.namespace, app: service.app, podSelector: service.podSelector } }} />}
|
||||
|
||||
@@ -6,14 +6,14 @@ 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={t("docker.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 k8s-status-error" 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") {
|
||||
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="w-auto px-1.5 py-0.5 text-center bg-theme-500/10 dark:bg-theme-900/50 rounded-b-[3px] overflow-hidden k8s-status" title={data.health ?? data.status}>
|
||||
<div className="text-[8px] font-bold text-emerald-500/80 uppercase">{data.health ?? data.status}</div>
|
||||
</div>
|
||||
);
|
||||
@@ -21,14 +21,14 @@ export default function KubernetesStatus({ service }) {
|
||||
|
||||
if (data && (data.status === "not found" || data.status === "down" || data.status === "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.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 k8s-status-warning" title={data.status}>
|
||||
<div className="text-[8px] font-bold text-orange-400/50 dark:text-orange-400/80 uppercase">{data.status}</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">
|
||||
<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 k8s-status-unknown">
|
||||
<div className="text-[8px] font-bold text-black/20 dark:text-white/40 uppercase">{t("docker.unknown")}</div>
|
||||
</div>
|
||||
);
|
||||
|
||||
@@ -1,29 +1,19 @@
|
||||
import classNames from "classnames";
|
||||
|
||||
import { columnMap } from "../../utils/layout/columns";
|
||||
|
||||
import Item from "components/services/item";
|
||||
|
||||
const columnMap = [
|
||||
"grid-cols-1 md:grid-cols-1 lg:grid-cols-1",
|
||||
"grid-cols-1 md:grid-cols-1 lg:grid-cols-1",
|
||||
"grid-cols-1 md:grid-cols-2 lg:grid-cols-2",
|
||||
"grid-cols-1 md:grid-cols-2 lg:grid-cols-3",
|
||||
"grid-cols-1 md:grid-cols-2 lg:grid-cols-4",
|
||||
"grid-cols-1 md:grid-cols-2 lg:grid-cols-5",
|
||||
"grid-cols-1 md:grid-cols-2 lg:grid-cols-6",
|
||||
"grid-cols-1 md:grid-cols-2 lg:grid-cols-7",
|
||||
"grid-cols-1 md:grid-cols-2 lg:grid-cols-8",
|
||||
];
|
||||
|
||||
export default function List({ services, layout }) {
|
||||
export default function List({ group, services, layout }) {
|
||||
return (
|
||||
<ul
|
||||
className={classNames(
|
||||
layout?.style === "row" ? `grid ${columnMap[layout?.columns]} gap-x-2` : "flex flex-col",
|
||||
"mt-3"
|
||||
"mt-3 services-list"
|
||||
)}
|
||||
>
|
||||
{services.map((service) => (
|
||||
<Item key={service.container ?? service.app ?? service.name} service={service} />
|
||||
<Item key={service.container ?? service.app ?? service.name} service={service} group={group} />
|
||||
))}
|
||||
</ul>
|
||||
);
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
import { useTranslation } from "react-i18next";
|
||||
import useSWR from "swr";
|
||||
|
||||
export default function Ping({ service }) {
|
||||
export default function Ping({ group, service }) {
|
||||
const { t } = useTranslation();
|
||||
const { data, error } = useSWR(`/api/ping?${new URLSearchParams({ping: service.ping}).toString()}`, {
|
||||
const { data, error } = useSWR(`/api/ping?${new URLSearchParams({ group, service }).toString()}`, {
|
||||
refreshInterval: 30000
|
||||
});
|
||||
|
||||
if (error) {
|
||||
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">
|
||||
<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 ping-error">
|
||||
<div className="text-[8px] font-bold text-rose-500 uppercase">{t("ping.error")}</div>
|
||||
</div>
|
||||
);
|
||||
@@ -17,24 +17,24 @@ export default function Ping({ service }) {
|
||||
|
||||
if (!data) {
|
||||
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">
|
||||
<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 ping-ping">
|
||||
<div className="text-[8px] font-bold text-black/20 dark:text-white/40 uppercase">{t("ping.ping")}</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
const statusText = `${service.ping}: HTTP status ${data.status}`;
|
||||
const statusText = `${service}: HTTP status ${data.status}`;
|
||||
|
||||
if (data.status > 403) {
|
||||
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={statusText}>
|
||||
<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 ping-status-invalid" title={statusText}>
|
||||
<div className="text-[8px] font-bold text-rose-500/80">{data.status}</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={statusText}>
|
||||
<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 ping-status-valid" title={statusText}>
|
||||
<div className="text-[8px] font-bold text-emerald-500/80">{t("common.ms", { value: data.latency, style: "unit", unit: "millisecond", maximumFractionDigits: 0 })}</div>
|
||||
</div>
|
||||
);
|
||||
|
||||
@@ -7,7 +7,7 @@ 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={t("docker.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 docker-error" title={t("docker.error")}>
|
||||
<div className="text-[8px] font-bold text-rose-500/80 uppercase">{t("docker.error")}</div>
|
||||
</div>
|
||||
}
|
||||
@@ -18,7 +18,7 @@ export default function Status({ service }) {
|
||||
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="w-auto px-1.5 py-0.5 text-center bg-theme-500/10 dark:bg-theme-900/50 rounded-b-[3px] overflow-hidden docker-starting" title={t("docker.starting")}>
|
||||
<div className="text-[8px] font-bold text-blue-500/80 uppercase">{t("docker.starting")}</div>
|
||||
</div>
|
||||
);
|
||||
@@ -26,7 +26,7 @@ export default function Status({ service }) {
|
||||
|
||||
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="w-auto px-1.5 py-0.5 text-center bg-theme-500/10 dark:bg-theme-900/50 rounded-b-[3px] overflow-hidden docker-unhealthy" 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>
|
||||
);
|
||||
@@ -39,7 +39,7 @@ export default function Status({ service }) {
|
||||
}
|
||||
|
||||
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={statusLabel}>
|
||||
<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 docker-status" title={statusLabel}>
|
||||
<div className="text-[8px] font-bold text-emerald-500/80 uppercase">{statusLabel}</div>
|
||||
</div>
|
||||
);
|
||||
@@ -50,7 +50,7 @@ export default function Status({ service }) {
|
||||
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={statusLabel}>
|
||||
<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 docker-status-warning" title={statusLabel}>
|
||||
<div className="text-[8px] font-bold text-orange-400/50 dark:text-orange-400/80 uppercase">{statusLabel}</div>
|
||||
</div>
|
||||
);
|
||||
@@ -58,7 +58,7 @@ export default function Status({ service }) {
|
||||
}
|
||||
|
||||
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">
|
||||
<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 docker-status-unknown">
|
||||
<div className="text-[8px] font-bold text-black/20 dark:text-white/40 uppercase">{t("docker.unknown")}</div>
|
||||
</div>
|
||||
);
|
||||
|
||||
@@ -17,7 +17,7 @@ export default function Widget({ service }) {
|
||||
}
|
||||
|
||||
return (
|
||||
<div className="bg-theme-200/50 dark:bg-theme-900/20 rounded m-1 flex-1 flex flex-col items-center justify-center p-1">
|
||||
<div className="bg-theme-200/50 dark:bg-theme-900/20 rounded m-1 flex-1 flex flex-col items-center justify-center p-1 service-missing">
|
||||
<div className="font-thin text-sm">{t("widget.missing_type", { type: service.widget.type })}</div>
|
||||
</div>
|
||||
);
|
||||
|
||||
@@ -8,7 +8,8 @@ export default function Block({ value, label }) {
|
||||
<div
|
||||
className={classNames(
|
||||
"bg-theme-200/50 dark:bg-theme-900/20 rounded m-1 flex-1 flex flex-col items-center justify-center text-center p-1",
|
||||
value === undefined ? "animate-pulse" : ""
|
||||
value === undefined ? "animate-pulse" : "",
|
||||
"service-block"
|
||||
)}
|
||||
>
|
||||
<div className="font-thin text-sm">{value === undefined || value === null ? "-" : value}</div>
|
||||
|
||||
@@ -15,8 +15,11 @@ export default function Container({ error = false, children, service }) {
|
||||
return <Error service={service} error={error} />
|
||||
}
|
||||
|
||||
let visibleChildren = children;
|
||||
const fields = service?.widget?.fields;
|
||||
const childrenArray = Array.isArray(children) ? children : [children];
|
||||
|
||||
let visibleChildren = childrenArray;
|
||||
let fields = service?.widget?.fields;
|
||||
if (typeof fields === 'string') fields = JSON.parse(service.widget.fields);
|
||||
const type = service?.widget?.type;
|
||||
if (fields && type) {
|
||||
// if the field contains a "." then it most likely contains a common loc value
|
||||
@@ -24,7 +27,7 @@ export default function Container({ error = false, children, service }) {
|
||||
// fields: [ "resources.cpu", "resources.mem", "field"]
|
||||
// or even
|
||||
// fields: [ "resources.cpu", "widget_type.field" ]
|
||||
visibleChildren = children?.filter(child => fields.some(field => {
|
||||
visibleChildren = childrenArray?.filter(child => fields.some(field => {
|
||||
let fullField = field;
|
||||
if (!field.includes(".")) {
|
||||
fullField = `${type}.${field}`;
|
||||
@@ -33,5 +36,5 @@ export default function Container({ error = false, children, service }) {
|
||||
}));
|
||||
}
|
||||
|
||||
return <div className="relative flex flex-row w-full">{visibleChildren}</div>;
|
||||
return <div className="relative flex flex-row w-full service-container">{visibleChildren}</div>;
|
||||
}
|
||||
|
||||
@@ -9,10 +9,12 @@ function displayData(data) {
|
||||
return (data.type === 'Buffer') ? Buffer.from(data).toString() : JSON.stringify(data, 4);
|
||||
}
|
||||
|
||||
export default function Error({ error: err }) {
|
||||
export default function Error({ error }) {
|
||||
const { t } = useTranslation();
|
||||
|
||||
const { error } = err?.data ?? { error: err };
|
||||
if (error?.data?.error) {
|
||||
error = error.data.error; // eslint-disable-line no-param-reassign
|
||||
}
|
||||
|
||||
return (
|
||||
<details className="px-1 pb-1">
|
||||
|
||||
31
src/components/tab.jsx
Normal file
31
src/components/tab.jsx
Normal file
@@ -0,0 +1,31 @@
|
||||
import { useContext } from "react";
|
||||
import classNames from "classnames";
|
||||
|
||||
import { TabContext } from "utils/contexts/tab";
|
||||
|
||||
export function slugify(tabName) {
|
||||
return tabName ? encodeURIComponent(tabName.replace(/\s+/g, '-').toLowerCase()) : ''
|
||||
}
|
||||
|
||||
export default function Tab({ tab }) {
|
||||
const { activeTab, setActiveTab } = useContext(TabContext);
|
||||
|
||||
return (
|
||||
<li key={tab} role="presentation"
|
||||
className={classNames(
|
||||
"text-theme-700 dark:text-theme-200 relative h-8 w-full rounded-md flex m-1",
|
||||
)}>
|
||||
<button id={`${tab}-tab`} type="button" role="tab"
|
||||
aria-controls={`#${tab}`} aria-selected={activeTab === slugify(tab) ? "true" : "false"}
|
||||
className={classNames(
|
||||
"h-full w-full rounded-md",
|
||||
activeTab === slugify(tab) ? "bg-theme-300/20 dark:bg-white/10" : "hover:bg-theme-100/20 dark:hover:bg-white/5",
|
||||
)}
|
||||
onClick={() => {
|
||||
setActiveTab(slugify(tab));
|
||||
window.location.hash = `#${slugify(tab)}`;
|
||||
}}
|
||||
>{tab}</button>
|
||||
</li>
|
||||
);
|
||||
}
|
||||
@@ -38,7 +38,7 @@ export default function ColorToggle() {
|
||||
}
|
||||
|
||||
return (
|
||||
<div className="w-full self-center">
|
||||
<div id="color" className="w-full self-center">
|
||||
<Popover className="relative flex items-center">
|
||||
<Popover.Button className="outline-none">
|
||||
<IoColorPalette
|
||||
|
||||
@@ -10,7 +10,7 @@ export default function Revalidate() {
|
||||
};
|
||||
|
||||
return (
|
||||
<div className="rounded-full flex align-middle self-center mr-3">
|
||||
<div id="revalidate" className="rounded-full flex align-middle self-center mr-3">
|
||||
<MdRefresh onClick={() => revalidate()} className="text-theme-800 dark:text-theme-200 w-6 h-6 cursor-pointer" />
|
||||
</div>
|
||||
);
|
||||
|
||||
@@ -11,7 +11,7 @@ export default function ThemeToggle() {
|
||||
}
|
||||
|
||||
return (
|
||||
<div className="rounded-full flex self-end">
|
||||
<div id="theme" className="rounded-full flex self-end">
|
||||
<MdLightMode className="text-theme-800 dark:text-theme-200 w-5 h-5 m-1.5" />
|
||||
{theme === "dark" ? (
|
||||
<MdToggleOn
|
||||
|
||||
@@ -25,7 +25,7 @@ export default function Version() {
|
||||
const latestRelease = releaseData?.[0];
|
||||
|
||||
return (
|
||||
<div className="flex flex-row items-center">
|
||||
<div id="version" className="flex flex-row items-center">
|
||||
<span className="text-xs text-theme-500 dark:text-theme-400">
|
||||
{version === "main" || version === "dev" || version === "nightly" ? (
|
||||
<>
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
import { useState, useEffect } from "react";
|
||||
import { useTranslation } from "next-i18next";
|
||||
|
||||
import Container from "../widget/container";
|
||||
import Raw from "../widget/raw";
|
||||
|
||||
const textSizes = {
|
||||
"4xl": "text-4xl",
|
||||
"3xl": "text-3xl",
|
||||
@@ -17,7 +20,7 @@ export default function DateTime({ options }) {
|
||||
const { i18n } = useTranslation();
|
||||
const [date, setDate] = useState("");
|
||||
const dateLocale = locale ?? i18n.language;
|
||||
|
||||
|
||||
useEffect(() => {
|
||||
const dateFormat = new Intl.DateTimeFormat(dateLocale, { ...format });
|
||||
const interval = setInterval(() => {
|
||||
@@ -27,12 +30,14 @@ export default function DateTime({ options }) {
|
||||
}, [date, setDate, dateLocale, format]);
|
||||
|
||||
return (
|
||||
<div className="flex flex-col justify-center first:ml-0 ml-4">
|
||||
<div className="flex flex-row items-center grow justify-end">
|
||||
<span className={`text-theme-800 dark:text-theme-200 tabular-nums ${textSizes[textSize || "lg"]}`}>
|
||||
{date}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<Container options={options} additionalClassNames="information-widget-datetime">
|
||||
<Raw>
|
||||
<div className="flex flex-row items-center grow justify-end">
|
||||
<span className={`text-theme-800 dark:text-theme-200 tabular-nums ${textSizes[textSize || "lg"]}`}>
|
||||
{date}
|
||||
</span>
|
||||
</div>
|
||||
</Raw>
|
||||
</Container>
|
||||
);
|
||||
}
|
||||
|
||||
@@ -1,10 +1,16 @@
|
||||
import useSWR from "swr";
|
||||
import { BiError } from "react-icons/bi";
|
||||
import { useContext } from "react";
|
||||
import { FaMemory, FaRegClock, FaThermometerHalf } from "react-icons/fa";
|
||||
import { FiCpu } from "react-icons/fi";
|
||||
import { FiCpu, FiHardDrive } from "react-icons/fi";
|
||||
import { useTranslation } from "next-i18next";
|
||||
import classNames from "classnames";
|
||||
|
||||
import UsageBar from "../resources/usage-bar";
|
||||
import Error from "../widget/error";
|
||||
import Resource from "../widget/resource";
|
||||
import Resources from "../widget/resources";
|
||||
import WidgetLabel from "../widget/widget_label";
|
||||
|
||||
import { SettingsContext } from "utils/contexts/settings";
|
||||
|
||||
const cpuSensorLabels = ["cpu_thermal", "Core", "Tctl"];
|
||||
|
||||
@@ -14,6 +20,7 @@ function convertToFahrenheit(t) {
|
||||
|
||||
export default function Widget({ options }) {
|
||||
const { t, i18n } = useTranslation();
|
||||
const { settings } = useContext(SettingsContext);
|
||||
|
||||
const { data, error } = useSWR(
|
||||
`/api/widgets/glances?${new URLSearchParams({ lang: i18n.language, ...options }).toString()}`, {
|
||||
@@ -22,52 +29,19 @@ export default function Widget({ options }) {
|
||||
);
|
||||
|
||||
if (error || data?.error) {
|
||||
return (
|
||||
<div className="flex flex-col justify-center first:ml-0 ml-4">
|
||||
<div className="flex flex-row items-center justify-end">
|
||||
<div className="flex flex-row items-center">
|
||||
<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>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
return <Error options={options} />
|
||||
}
|
||||
|
||||
if (!data) {
|
||||
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">
|
||||
<div className="flex-none flex flex-row items-center mr-3 py-1.5">
|
||||
<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 text-xs">
|
||||
{t("glances.wait")}
|
||||
</div>
|
||||
</div>
|
||||
<UsageBar percent="0" />
|
||||
</div>
|
||||
</div>
|
||||
<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]">
|
||||
<div className="text-theme-800 dark:text-theme-200 text-xs flex flex-row justify-between">
|
||||
<div className="pl-0.5 text-xs">
|
||||
{t("glances.wait")}
|
||||
</div>
|
||||
</div>
|
||||
<UsageBar percent="0" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{options.label && (
|
||||
<div className="ml-6 pt-1 text-center text-theme-800 dark:text-theme-200 text-xs">{options.label}</div>
|
||||
)}
|
||||
</div>
|
||||
);
|
||||
return <Resources options={options} additionalClassNames="information-widget-glances">
|
||||
{ options.cpu !== false && <Resource icon={FiCpu} label={t("glances.wait")} percentage="0" /> }
|
||||
{ options.mem !== false && <Resource icon={FaMemory} label={t("glances.wait")} percentage="0" /> }
|
||||
{ options.cputemp && <Resource icon={FaThermometerHalf} label={t("glances.wait")} percentage="0" /> }
|
||||
{ options.disk && !Array.isArray(options.disk) && <Resource key={options.disk} icon={FiHardDrive} label={t("glances.wait")} percentage="0" /> }
|
||||
{ options.disk && Array.isArray(options.disk) && options.disk.map((disk) => <Resource key={`disk_${disk}`} icon={FiHardDrive} label={t("glances.wait")} percentage="0" /> ) }
|
||||
{ options.uptime && <Resource icon={FaRegClock} label={t("glances.wait")} percentage="0" /> }
|
||||
{ options.label && <WidgetLabel label={options.label} /> }
|
||||
</Resources>;
|
||||
}
|
||||
|
||||
const unit = options.units === "imperial" ? "fahrenheit" : "celsius";
|
||||
@@ -77,7 +51,7 @@ export default function Widget({ options }) {
|
||||
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);
|
||||
maxTemp = Math.max(cpuSensors.reduce((acc, s) => acc + (s.warning > 0 ? s.warning : 0), 0) / cpuSensors.length, maxTemp);
|
||||
if (unit === "fahrenheit") {
|
||||
mainTemp = convertToFahrenheit(mainTemp);
|
||||
maxTemp = convertToFahrenheit(maxTemp);
|
||||
@@ -88,78 +62,95 @@ export default function Widget({ options }) {
|
||||
}
|
||||
const tempPercent = Math.round((mainTemp / maxTemp) * 100);
|
||||
|
||||
let disks = [];
|
||||
|
||||
if (options.disk) {
|
||||
disks = Array.isArray(options.disk)
|
||||
? options.disk.map((disk) => data.fs.find((d) => d.mnt_point === disk)).filter((d) => d)
|
||||
: [data.fs.find((d) => d.mnt_point === options.disk)].filter((d) => d);
|
||||
}
|
||||
|
||||
const addedClasses = classNames('information-widget-glances', { 'expanded': options.expanded })
|
||||
|
||||
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">
|
||||
<div className="flex-none flex flex-row items-center mr-3 py-1.5">
|
||||
<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">
|
||||
{t("common.number", {
|
||||
value: data.quicklook.cpu,
|
||||
style: "unit",
|
||||
unit: "percent",
|
||||
maximumFractionDigits: 0,
|
||||
})}
|
||||
</div>
|
||||
<div className="pr-1">{t("glances.cpu")}</div>
|
||||
</div>
|
||||
<UsageBar percent={data.quicklook.cpu} />
|
||||
</div>
|
||||
</div>
|
||||
<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]">
|
||||
<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.quicklook.mem,
|
||||
style: "unit",
|
||||
unit: "percent",
|
||||
maximumFractionDigits: 0,
|
||||
})}
|
||||
</div>
|
||||
<div className="pr-1">{t("glances.mem")}</div>
|
||||
</div>
|
||||
<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>
|
||||
)}
|
||||
</div>
|
||||
<Resources options={options} target={settings.target ?? "_blank"} additionalClassNames={addedClasses}>
|
||||
{options.cpu !== false && <Resource
|
||||
icon={FiCpu}
|
||||
value={t("common.number", {
|
||||
value: data.cpu.total,
|
||||
style: "unit",
|
||||
unit: "percent",
|
||||
maximumFractionDigits: 0,
|
||||
})}
|
||||
label={t("glances.cpu")}
|
||||
expandedValue={t("common.number", {
|
||||
value: data.load.min15,
|
||||
style: "unit",
|
||||
unit: "percent",
|
||||
maximumFractionDigits: 0
|
||||
})}
|
||||
expandedLabel={t("glances.load")}
|
||||
percentage={data.cpu.total}
|
||||
expanded={options.expanded}
|
||||
/>}
|
||||
{options.mem !== false && <Resource
|
||||
icon={FaMemory}
|
||||
value={t("common.bytes", {
|
||||
value: data.mem.free,
|
||||
maximumFractionDigits: 1,
|
||||
binary: true,
|
||||
})}
|
||||
label={t("glances.free")}
|
||||
expandedValue={t("common.bytes", {
|
||||
value: data.mem.total,
|
||||
maximumFractionDigits: 1,
|
||||
binary: true,
|
||||
})}
|
||||
expandedLabel={t("glances.total")}
|
||||
percentage={data.mem.percent}
|
||||
expanded={options.expanded}
|
||||
/>}
|
||||
{disks.map((disk) => (
|
||||
<Resource key={`disk_${disk.mnt_point ?? disk.device_name}`}
|
||||
icon={FiHardDrive}
|
||||
value={t("common.bytes", { value: disk.free })}
|
||||
label={t("glances.free")}
|
||||
expandedValue={t("common.bytes", { value: disk.size })}
|
||||
expandedLabel={t("glances.total")}
|
||||
percentage={disk.percent}
|
||||
expanded={options.expanded}
|
||||
/>
|
||||
))}
|
||||
{options.cputemp && mainTemp > 0 &&
|
||||
<Resource
|
||||
icon={FaThermometerHalf}
|
||||
value={t("common.number", {
|
||||
value: mainTemp,
|
||||
maximumFractionDigits: 1,
|
||||
style: "unit",
|
||||
unit
|
||||
})}
|
||||
label={t("glances.temp")}
|
||||
expandedValue={t("common.number", {
|
||||
value: maxTemp,
|
||||
maximumFractionDigits: 1,
|
||||
style: "unit",
|
||||
unit
|
||||
})}
|
||||
expandedLabel={t("glances.warn")}
|
||||
percentage={tempPercent}
|
||||
expanded={options.expanded}
|
||||
/>
|
||||
}
|
||||
{options.uptime && data.uptime &&
|
||||
<Resource
|
||||
icon={FaRegClock}
|
||||
value={data.uptime.replace(" days,", t("glances.days")).replace(/:\d\d:\d\d$/g, t("glances.hours"))}
|
||||
label={t("glances.uptime")}
|
||||
percentage={Math.round((new Date().getSeconds() / 60) * 100).toString()}
|
||||
/>
|
||||
}
|
||||
{options.label && <WidgetLabel label={options.label} />}
|
||||
</Resources>
|
||||
);
|
||||
}
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
import Container from "../widget/container";
|
||||
import Raw from "../widget/raw";
|
||||
|
||||
const textSizes = {
|
||||
"4xl": "text-4xl",
|
||||
"3xl": "text-3xl",
|
||||
@@ -11,12 +14,12 @@ const textSizes = {
|
||||
|
||||
export default function Greeting({ options }) {
|
||||
if (options.text) {
|
||||
return (
|
||||
<div className="flex flex-row items-center justify-start">
|
||||
<span className={`text-theme-800 dark:text-theme-200 ${textSizes[options.text_size || "xl"]}`}>
|
||||
return <Container options={options} additionalClassNames="information-widget-greeting">
|
||||
<Raw>
|
||||
<span className={`text-theme-800 dark:text-theme-200 mr-3 ${textSizes[options.text_size || "xl"]}`}>
|
||||
{options.text}
|
||||
</span>
|
||||
</div>
|
||||
);
|
||||
</Raw>
|
||||
</Container>;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,12 +1,15 @@
|
||||
import useSWR from "swr";
|
||||
import { BiError } from "react-icons/bi";
|
||||
import { useTranslation } from "next-i18next";
|
||||
|
||||
import Error from "../widget/error";
|
||||
import Container from "../widget/container";
|
||||
import Raw from "../widget/raw";
|
||||
|
||||
import Node from "./node";
|
||||
|
||||
export default function Widget({ options }) {
|
||||
const { cluster, nodes } = options;
|
||||
const { t, i18n } = useTranslation();
|
||||
const { i18n } = useTranslation();
|
||||
|
||||
const defaultData = {
|
||||
cpu: {
|
||||
@@ -18,7 +21,7 @@ export default function Widget({ options }) {
|
||||
used: 0,
|
||||
total: 0,
|
||||
free: 0,
|
||||
precent: 0
|
||||
percent: 0
|
||||
}
|
||||
};
|
||||
|
||||
@@ -29,23 +32,12 @@ export default function Widget({ options }) {
|
||||
);
|
||||
|
||||
if (error || data?.error) {
|
||||
return (
|
||||
<div className="flex flex-col justify-center first:ml-0 ml-4">
|
||||
<div className="flex flex-row items-center justify-end">
|
||||
<div className="flex flex-row items-center">
|
||||
<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>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
return <Error options={options} />
|
||||
}
|
||||
|
||||
if (!data) {
|
||||
return (
|
||||
<div className="flex flex-col max-w:full sm:basis-auto self-center grow-0 flex-wrap">
|
||||
return <Container options={options} additionalClassNames="information-widget-kubernetes">
|
||||
<Raw>
|
||||
<div className="flex flex-row self-center flex-wrap justify-between">
|
||||
{cluster.show &&
|
||||
<Node type="cluster" key="cluster" options={options.cluster} data={defaultData} />
|
||||
@@ -54,12 +46,12 @@ export default function Widget({ options }) {
|
||||
<Node type="node" key="nodes" options={options.nodes} data={defaultData} />
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
</Raw>
|
||||
</Container>;
|
||||
}
|
||||
|
||||
return (
|
||||
<div className="flex flex-col max-w:full sm:basis-auto self-center grow-0 flex-wrap">
|
||||
return <Container options={options} additionalClassNames="information-widget-kubernetes">
|
||||
<Raw>
|
||||
<div className="flex flex-row self-center flex-wrap justify-between">
|
||||
{cluster.show &&
|
||||
<Node key="cluster" type="cluster" options={options.cluster} data={data.cluster} />
|
||||
@@ -69,6 +61,6 @@ export default function Widget({ options }) {
|
||||
<Node key={node.name} type="node" options={options.nodes} data={node} />)
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
</Raw>
|
||||
</Container>;
|
||||
}
|
||||
|
||||
@@ -3,8 +3,7 @@ import { FiAlertTriangle, FiCpu, FiServer } from "react-icons/fi";
|
||||
import { SiKubernetes } from "react-icons/si";
|
||||
import { useTranslation } from "next-i18next";
|
||||
|
||||
import UsageBar from "./usage-bar";
|
||||
|
||||
import UsageBar from "../resources/usage-bar";
|
||||
|
||||
export default function Node({ type, options, data }) {
|
||||
const { t } = useTranslation();
|
||||
@@ -29,7 +28,7 @@ export default function Node({ type, options, data }) {
|
||||
<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.percent,
|
||||
value: data?.cpu?.percent ?? 0,
|
||||
style: "unit",
|
||||
unit: "percent",
|
||||
maximumFractionDigits: 0
|
||||
@@ -37,18 +36,18 @@ export default function Node({ type, options, data }) {
|
||||
</div>
|
||||
<FiCpu className="text-theme-800 dark:text-theme-200 w-3 h-3" />
|
||||
</div>
|
||||
<UsageBar percent={data.cpu.percent} />
|
||||
<UsageBar percent={data?.cpu?.percent ?? 0} />
|
||||
<div 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.free,
|
||||
value: data?.memory?.free ?? 0,
|
||||
maximumFractionDigits: 0,
|
||||
binary: true
|
||||
})}
|
||||
</div>
|
||||
<FaMemory className="text-theme-800 dark:text-theme-200 w-3 h-3" />
|
||||
</div>
|
||||
<UsageBar percent={data.memory.percent} />
|
||||
<UsageBar percent={data?.memory?.percent} />
|
||||
{options.showLabel && (
|
||||
<div className="pt-1 text-center text-theme-800 dark:text-theme-200 text-xs">{type === "cluster" ? options.label : data.name}</div>
|
||||
)}
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
export default function UsageBar({ percent }) {
|
||||
return (
|
||||
<div className="mt-0.5 w-full bg-theme-800/30 rounded-full h-1 dark:bg-theme-200/20">
|
||||
<div
|
||||
className="bg-theme-800/70 h-1 rounded-full dark:bg-theme-200/50 transition-all duration-1000"
|
||||
style={{
|
||||
width: `${percent}%`,
|
||||
}}
|
||||
/>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
@@ -1,62 +1,71 @@
|
||||
import Container from "../widget/container";
|
||||
import Raw from "../widget/raw";
|
||||
|
||||
import ResolvedIcon from "components/resolvedicon"
|
||||
|
||||
export default function Logo({ options }) {
|
||||
return (
|
||||
<div className="w-12 h-12 flex flex-row items-center align-middle mr-3 self-center">
|
||||
{options.icon ?
|
||||
<ResolvedIcon icon={options.icon} width={48} height={48} /> :
|
||||
<Container options={options} additionalClassNames={`information-widget-logo ${ options.icon ? 'resolved' : 'fallback'}`}>
|
||||
<Raw>
|
||||
{options.icon ?
|
||||
<div className="resolved mr-3">
|
||||
<ResolvedIcon icon={options.icon} width={48} height={48} />
|
||||
</div> :
|
||||
// fallback to homepage logo
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
viewBox="0 0 1024 1024"
|
||||
style={{
|
||||
enableBackground: "new 0 0 1024 1024",
|
||||
}}
|
||||
xmlSpace="preserve"
|
||||
className="w-full h-full"
|
||||
>
|
||||
<style>
|
||||
{
|
||||
".st0{display:none}.st3{stroke-linecap:square}.st3,.st4{fill:none;stroke:#fff;stroke-miterlimit:10}.st6{display:inline;fill:#333}.st7{fill:#fff}"
|
||||
}
|
||||
</style>
|
||||
<g id="Icon">
|
||||
<path
|
||||
d="M771.9 191c27.7 0 50.1 26.5 50.1 59.3v186.4l-100.2.3V250.3c0-32.8 22.4-59.3 50.1-59.3z"
|
||||
style={{
|
||||
fill: "rgba(var(--color-logo-start))",
|
||||
}}
|
||||
/>
|
||||
<linearGradient
|
||||
id="homepage_logo_gradient"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
x1={200.746}
|
||||
y1={225.015}
|
||||
x2={764.986}
|
||||
y2={789.255}
|
||||
>
|
||||
<stop
|
||||
offset={0}
|
||||
<div className="fallback w-12 h-12">
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
viewBox="0 0 1024 1024"
|
||||
style={{
|
||||
enableBackground: "new 0 0 1024 1024",
|
||||
}}
|
||||
xmlSpace="preserve"
|
||||
className="w-full h-full"
|
||||
>
|
||||
<style>
|
||||
{
|
||||
".st0{display:none}.st3{stroke-linecap:square}.st3,.st4{fill:none;stroke:#fff;stroke-miterlimit:10}.st6{display:inline;fill:#333}.st7{fill:#fff}"
|
||||
}
|
||||
</style>
|
||||
<g id="Icon">
|
||||
<path
|
||||
d="M771.9 191c27.7 0 50.1 26.5 50.1 59.3v186.4l-100.2.3V250.3c0-32.8 22.4-59.3 50.1-59.3z"
|
||||
style={{
|
||||
stopColor: "rgba(var(--color-logo-start))",
|
||||
fill: "rgba(var(--color-logo-start))",
|
||||
}}
|
||||
/>
|
||||
<stop
|
||||
offset={1}
|
||||
<linearGradient
|
||||
id="homepage_logo_gradient"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
x1={200.746}
|
||||
y1={225.015}
|
||||
x2={764.986}
|
||||
y2={789.255}
|
||||
>
|
||||
<stop
|
||||
offset={0}
|
||||
style={{
|
||||
stopColor: "rgba(var(--color-logo-start))",
|
||||
}}
|
||||
/>
|
||||
<stop
|
||||
offset={1}
|
||||
style={{
|
||||
stopColor: "rgba(var(--color-logo-stop))",
|
||||
}}
|
||||
/>
|
||||
</linearGradient>
|
||||
<path
|
||||
d="M721.8 250.3c0-32.7 22.4-59.3 50.1-59.3H253.1c-27.7 0-50.1 26.5-50.1 59.3v582.2l90.2-75.7-.1-130.3H375v61.8l88-73.8 258.8 217.9V250.6"
|
||||
style={{
|
||||
stopColor: "rgba(var(--color-logo-stop))",
|
||||
fill: "url(#homepage_logo_gradient)",
|
||||
}}
|
||||
/>
|
||||
</linearGradient>
|
||||
<path
|
||||
d="M721.8 250.3c0-32.7 22.4-59.3 50.1-59.3H253.1c-27.7 0-50.1 26.5-50.1 59.3v582.2l90.2-75.7-.1-130.3H375v61.8l88-73.8 258.8 217.9V250.6"
|
||||
style={{
|
||||
fill: "url(#homepage_logo_gradient)",
|
||||
}}
|
||||
/>
|
||||
</g>
|
||||
</svg>
|
||||
</g>
|
||||
</svg>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
</Raw>
|
||||
</Container>
|
||||
)
|
||||
}
|
||||
|
||||
@@ -1,37 +1,31 @@
|
||||
import useSWR from "swr";
|
||||
import { BiError } from "react-icons/bi";
|
||||
import { useTranslation } from "next-i18next";
|
||||
|
||||
import Error from "../widget/error";
|
||||
import Container from "../widget/container";
|
||||
import Raw from "../widget/raw";
|
||||
|
||||
import Node from "./node";
|
||||
|
||||
export default function Longhorn({ options }) {
|
||||
const { expanded, total, labels, include, nodes } = options;
|
||||
const { t } = useTranslation();
|
||||
const { data, error } = useSWR(`/api/widgets/longhorn`, {
|
||||
refreshInterval: 1500
|
||||
});
|
||||
|
||||
if (error || data?.error) {
|
||||
return (
|
||||
<div className="flex flex-col max-w:full sm:basis-auto self-center grow-0 flex-wrap">
|
||||
<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>
|
||||
);
|
||||
return <Error options={options} />
|
||||
}
|
||||
|
||||
if (!data) {
|
||||
return (
|
||||
<div className="flex flex-col max-w:full sm:basis-auto self-center grow-0 flex-wrap">
|
||||
return <Container options={options} additionalClassNames="infomation-widget-longhorn">
|
||||
<Raw>
|
||||
<div className="flex flex-row self-center flex-wrap justify-between" />
|
||||
</div>
|
||||
);
|
||||
</Raw>
|
||||
</Container>;
|
||||
}
|
||||
|
||||
return (
|
||||
<div className="flex flex-col max-w:full sm:basis-auto self-center grow-0 flex-wrap">
|
||||
return <Container options={options} additionalClassNames="infomation-widget-longhorn">
|
||||
<Raw>
|
||||
<div className="flex flex-row self-center flex-wrap justify-between">
|
||||
{data.nodes
|
||||
.filter((node) => {
|
||||
@@ -52,6 +46,6 @@ export default function Longhorn({ options }) {
|
||||
</div>
|
||||
)}
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
</Raw>
|
||||
</Container>;
|
||||
}
|
||||
|
||||
@@ -1,32 +1,21 @@
|
||||
import { FiHardDrive } from "react-icons/fi";
|
||||
import { useTranslation } from "next-i18next";
|
||||
import { FaThermometerHalf } from "react-icons/fa";
|
||||
|
||||
import UsageBar from "../resources/usage-bar";
|
||||
import Resource from "../widget/resource";
|
||||
import WidgetLabel from "../widget/widget_label";
|
||||
|
||||
export default function Node({ data, expanded, labels }) {
|
||||
const { t } = useTranslation();
|
||||
|
||||
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.node.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.node.maximum })}</div>
|
||||
<div className="pr-1">{t("resources.total")}</div>
|
||||
</span>
|
||||
)}
|
||||
<UsageBar percent={Math.round(((data.node.maximum - data.node.available) / data.node.maximum) * 100)} />
|
||||
</div>
|
||||
</div>
|
||||
{labels && (
|
||||
<div className="ml-6 pt-1 text-center text-theme-800 dark:text-theme-200 text-xs">{data.node.id}</div>
|
||||
)}
|
||||
</>
|
||||
);
|
||||
return <Resource
|
||||
additionalClassNames="information-widget-longhorn-node"
|
||||
icon={FaThermometerHalf}
|
||||
value={t("common.bytes", { value: data.node.available })}
|
||||
label={t("resources.free")}
|
||||
expandedValue={t("common.bytes", { value: data.node.maximum })}
|
||||
expandedLabel={t("resources.total")}
|
||||
percentage={Math.round(((data.node.maximum - data.node.available) / data.node.maximum) * 100)}
|
||||
expanded={expanded}
|
||||
>{ labels && <WidgetLabel label={data.node.id} /> }
|
||||
</Resource>
|
||||
}
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
import mapIcon from "utils/weather/openmeteo-condition-map";
|
||||
|
||||
export default function Icon({ condition, timeOfDay }) {
|
||||
const IconComponent = mapIcon(condition, timeOfDay);
|
||||
|
||||
return <IconComponent className="w-10 h-10 text-theme-800 dark:text-theme-200" />;
|
||||
}
|
||||
@@ -1,11 +1,16 @@
|
||||
import useSWR from "swr";
|
||||
import { useState } from "react";
|
||||
import { BiError } from "react-icons/bi";
|
||||
import { WiCloudDown } from "react-icons/wi";
|
||||
import { MdLocationDisabled, MdLocationSearching } from "react-icons/md";
|
||||
import { useTranslation } from "next-i18next";
|
||||
|
||||
import Icon from "./icon";
|
||||
import Error from "../widget/error";
|
||||
import Container from "../widget/container";
|
||||
import ContainerButton from "../widget/container_button";
|
||||
import WidgetIcon from "../widget/widget_icon";
|
||||
import PrimaryText from "../widget/primary_text";
|
||||
import SecondaryText from "../widget/secondary_text";
|
||||
import mapIcon from "../../../utils/weather/openmeteo-condition-map";
|
||||
|
||||
function Widget({ options }) {
|
||||
const { t } = useTranslation();
|
||||
@@ -15,60 +20,33 @@ function Widget({ options }) {
|
||||
);
|
||||
|
||||
if (error || data?.error) {
|
||||
return (
|
||||
<div className="flex flex-col justify-center first:ml-0 ml-4 mr-2">
|
||||
<div className="flex flex-row items-center justify-end">
|
||||
<div className="flex flex-col items-center">
|
||||
<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>
|
||||
</div>
|
||||
);
|
||||
return <Error options={options} />
|
||||
}
|
||||
|
||||
if (!data) {
|
||||
return (
|
||||
<div className="flex flex-col justify-center first:ml-0 ml-4 mr-2">
|
||||
<div className="flex flex-row items-center justify-end">
|
||||
<div className="flex flex-col items-center">
|
||||
<WiCloudDown className="w-8 h-8 text-theme-800 dark:text-theme-200" />
|
||||
</div>
|
||||
<div className="flex flex-col ml-3 text-left">
|
||||
<span className="text-theme-800 dark:text-theme-200 text-sm">{t("weather.updating")}</span>
|
||||
<span className="text-theme-800 dark:text-theme-200 text-xs">{t("weather.wait")}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
return <Container options={options} additionalClassNames="information-widget-openmeteo">
|
||||
<PrimaryText>{t("weather.updating")}</PrimaryText>
|
||||
<SecondaryText>{t("weather.wait")}</SecondaryText>
|
||||
<WidgetIcon icon={WiCloudDown} size="l" />
|
||||
</Container>;
|
||||
}
|
||||
|
||||
const unit = options.units === "metric" ? "celsius" : "fahrenheit";
|
||||
const condition = data.current_weather.weathercode;
|
||||
const timeOfDay = data.current_weather.time > data.daily.sunrise[0] && data.current_weather.time < data.daily.sunset[0] ? "day" : "night";
|
||||
|
||||
return (
|
||||
<div className="flex flex-col justify-center first:ml-0 ml-4 mr-2">
|
||||
<div className="flex flex-row items-center justify-end">
|
||||
<div className="flex flex-col items-center">
|
||||
<Icon condition={data.current_weather.weathercode} timeOfDay={timeOfDay} />
|
||||
</div>
|
||||
<div className="flex flex-col ml-3 text-left">
|
||||
<span className="text-theme-800 dark:text-theme-200 text-sm">
|
||||
{options.label && `${options.label}, `}
|
||||
{t("common.number", {
|
||||
value: data.current_weather.temperature,
|
||||
style: "unit",
|
||||
unit,
|
||||
})}
|
||||
</span>
|
||||
<span className="text-theme-800 dark:text-theme-200 text-xs">{t(`wmo.${data.current_weather.weathercode}-${timeOfDay}`)}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
return <Container options={options} additionalClassNames="information-widget-openmeteo">
|
||||
<PrimaryText>
|
||||
{options.label && `${options.label}, `}
|
||||
{t("common.number", {
|
||||
value: data.current_weather.temperature,
|
||||
style: "unit",
|
||||
unit,
|
||||
})}
|
||||
</PrimaryText>
|
||||
<SecondaryText>{t(`wmo.${data.current_weather.weathercode}-${timeOfDay}`)}</SecondaryText>
|
||||
<WidgetIcon icon={mapIcon(condition, timeOfDay)} size="xl" />
|
||||
</Container>;
|
||||
}
|
||||
|
||||
export default function OpenMeteo({ options }) {
|
||||
@@ -103,27 +81,11 @@ export default function OpenMeteo({ options }) {
|
||||
// if (!requesting && !location) requestLocation();
|
||||
|
||||
if (!location) {
|
||||
return (
|
||||
<button
|
||||
type="button"
|
||||
onClick={() => requestLocation()}
|
||||
className="flex flex-col justify-center first:ml-0 ml-4 mr-2"
|
||||
>
|
||||
<div className="flex flex-row items-center justify-end">
|
||||
<div className="flex flex-col items-center">
|
||||
{requesting ? (
|
||||
<MdLocationSearching className="w-6 h-6 text-theme-800 dark:text-theme-200 animate-pulse" />
|
||||
) : (
|
||||
<MdLocationDisabled className="w-6 h-6 text-theme-800 dark:text-theme-200" />
|
||||
)}
|
||||
</div>
|
||||
<div className="flex flex-col ml-3 text-left">
|
||||
<span className="text-theme-800 dark:text-theme-200 text-sm">{t("weather.current")}</span>
|
||||
<span className="text-theme-800 dark:text-theme-200 text-xs">{t("weather.allow")}</span>
|
||||
</div>
|
||||
</div>
|
||||
</button>
|
||||
);
|
||||
return <ContainerButton options={options} callback={requestLocation} additionalClassNames="information-widget-openmeteo-location-button">
|
||||
<PrimaryText>{t("weather.current")}</PrimaryText>
|
||||
<SecondaryText>{t("weather.allow")}</SecondaryText>
|
||||
<WidgetIcon icon={ requesting ? MdLocationSearching : MdLocationDisabled} size="m" pulse />
|
||||
</ContainerButton>;
|
||||
}
|
||||
|
||||
return <Widget options={{ ...location, ...options }} />;
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
import mapIcon from "utils/weather/owm-condition-map";
|
||||
|
||||
export default function Icon({ condition, timeOfDay }) {
|
||||
const IconComponent = mapIcon(condition, timeOfDay);
|
||||
|
||||
return <IconComponent className="w-10 h-10 text-theme-800 dark:text-theme-200" />;
|
||||
}
|
||||
@@ -1,11 +1,16 @@
|
||||
import useSWR from "swr";
|
||||
import { useState } from "react";
|
||||
import { BiError } from "react-icons/bi";
|
||||
import { WiCloudDown } from "react-icons/wi";
|
||||
import { MdLocationDisabled, MdLocationSearching } from "react-icons/md";
|
||||
import { useTranslation } from "next-i18next";
|
||||
|
||||
import Icon from "./icon";
|
||||
import Error from "../widget/error";
|
||||
import Container from "../widget/container";
|
||||
import ContainerButton from "../widget/container_button";
|
||||
import PrimaryText from "../widget/primary_text";
|
||||
import SecondaryText from "../widget/secondary_text";
|
||||
import WidgetIcon from "../widget/widget_icon";
|
||||
import mapIcon from "../../../utils/weather/owm-condition-map";
|
||||
|
||||
function Widget({ options }) {
|
||||
const { t, i18n } = useTranslation();
|
||||
@@ -15,58 +20,27 @@ function Widget({ options }) {
|
||||
);
|
||||
|
||||
if (error || data?.cod === 401 || data?.error) {
|
||||
return (
|
||||
<div className="flex flex-col justify-center first:ml-auto ml-4 mr-2">
|
||||
<div className="flex flex-row items-center justify-end">
|
||||
<div className="hidden sm:flex flex-col items-center">
|
||||
<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>
|
||||
</div>
|
||||
);
|
||||
return <Error options={options} />
|
||||
}
|
||||
|
||||
if (!data) {
|
||||
return (
|
||||
<div className="flex flex-col justify-center first:ml-auto ml-4 mr-2">
|
||||
<div className="flex flex-row items-center justify-end">
|
||||
<div className="hidden sm:flex flex-col items-center">
|
||||
<WiCloudDown className="w-8 h-8 text-theme-800 dark:text-theme-200" />
|
||||
</div>
|
||||
<div className="flex flex-col ml-3 text-left">
|
||||
<span className="text-theme-800 dark:text-theme-200 text-sm">{t("weather.updating")}</span>
|
||||
<span className="text-theme-800 dark:text-theme-200 text-xs">{t("weather.wait")}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
return <Container options={options} additionalClassNames="information-widget-openweathermap">
|
||||
<PrimaryText>{t("weather.updating")}</PrimaryText>
|
||||
<SecondaryText>{t("weather.wait")}</SecondaryText>
|
||||
<WidgetIcon icon={WiCloudDown} size="l" />
|
||||
</Container>;
|
||||
}
|
||||
|
||||
const unit = options.units === "metric" ? "celsius" : "fahrenheit";
|
||||
|
||||
return (
|
||||
<div className="flex flex-col justify-center first:ml-auto ml-2 mr-2">
|
||||
<div className="flex flex-row items-center justify-end">
|
||||
<div className="hidden sm:flex flex-col items-center">
|
||||
<Icon
|
||||
condition={data.weather[0].id}
|
||||
timeOfDay={data.dt > data.sys.sunrise && data.dt < data.sys.sunset ? "day" : "night"}
|
||||
/>
|
||||
</div>
|
||||
<div className="flex flex-col ml-3 text-left">
|
||||
<span className="text-theme-800 dark:text-theme-200 text-sm">
|
||||
{options.label && `${options.label}, `}
|
||||
{t("common.number", { value: data.main.temp, style: "unit", unit })}
|
||||
</span>
|
||||
<span className="text-theme-800 dark:text-theme-200 text-xs">{data.weather[0].description}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
const condition = data.weather[0].id;
|
||||
const timeOfDay = data.dt > data.sys.sunrise && data.dt < data.sys.sunset ? "day" : "night";
|
||||
|
||||
return <Container options={options} additionalClassNames="information-widget-openweathermap">
|
||||
<PrimaryText>{options.label && `${options.label}, ` }{t("common.number", { value: data.main.temp, style: "unit", unit })}</PrimaryText>
|
||||
<SecondaryText>{data.weather[0].description}</SecondaryText>
|
||||
<WidgetIcon icon={mapIcon(condition, timeOfDay)} size="xl" />
|
||||
</Container>;
|
||||
}
|
||||
|
||||
export default function OpenWeatherMap({ options }) {
|
||||
@@ -98,30 +72,12 @@ export default function OpenWeatherMap({ options }) {
|
||||
}
|
||||
};
|
||||
|
||||
// if (!requesting && !location) requestLocation();
|
||||
|
||||
if (!location) {
|
||||
return (
|
||||
<button
|
||||
type="button"
|
||||
onClick={() => requestLocation()}
|
||||
className="flex flex-col justify-center first:ml-auto ml-4 mr-2"
|
||||
>
|
||||
<div className="flex flex-row items-center justify-end">
|
||||
<div className="hidden sm:flex flex-col items-center">
|
||||
{requesting ? (
|
||||
<MdLocationSearching className="w-6 h-6 text-theme-800 dark:text-theme-200 animate-pulse" />
|
||||
) : (
|
||||
<MdLocationDisabled className="w-6 h-6 text-theme-800 dark:text-theme-200" />
|
||||
)}
|
||||
</div>
|
||||
<div className="flex flex-col ml-3 text-left">
|
||||
<span className="text-theme-800 dark:text-theme-200 text-sm">{t("weather.current")}</span>
|
||||
<span className="text-theme-800 dark:text-theme-200 text-xs">{t("weather.allow")}</span>
|
||||
</div>
|
||||
</div>
|
||||
</button>
|
||||
);
|
||||
return <ContainerButton options={options} callback={requestLocation} >
|
||||
<PrimaryText>{t("weather.current")}</PrimaryText>
|
||||
<SecondaryText>{t("weather.allow")}</SecondaryText>
|
||||
<WidgetIcon icon={requesting ? MdLocationSearching : MdLocationDisabled} size="m" pulse />
|
||||
</ContainerButton>;
|
||||
}
|
||||
|
||||
return <Widget options={{ ...location, ...options }} />;
|
||||
|
||||
18
src/components/widgets/queue/queueEntry.jsx
Normal file
18
src/components/widgets/queue/queueEntry.jsx
Normal file
@@ -0,0 +1,18 @@
|
||||
export default function QueueEntry({ title, activity, timeLeft, progress}) {
|
||||
return (
|
||||
<div className="text-theme-700 dark:text-theme-200 relative h-5 rounded-md bg-theme-200/50 dark:bg-theme-900/20 m-1 px-1 flex">
|
||||
<div
|
||||
className="absolute h-5 rounded-md bg-theme-200 dark:bg-theme-900/40 z-0 -ml-1"
|
||||
style={{
|
||||
width: `${progress}%`,
|
||||
}}
|
||||
/>
|
||||
<div className="text-xs z-10 self-center ml-2 relative h-4 grow mr-2">
|
||||
<div className="absolute w-full whitespace-nowrap text-ellipsis overflow-hidden text-left">{title}</div>
|
||||
</div>
|
||||
<div className="self-center text-xs flex justify-end mr-1.5 pl-1 z-10 text-ellipsis overflow-hidden whitespace-nowrap">
|
||||
{timeLeft ? `${activity} - ${timeLeft}` : activity}
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
@@ -1,79 +1,41 @@
|
||||
import useSWR from "swr";
|
||||
import { FiCpu } from "react-icons/fi";
|
||||
import { BiError } from "react-icons/bi";
|
||||
import { useTranslation } from "next-i18next";
|
||||
|
||||
import UsageBar from "./usage-bar";
|
||||
import Resource from "../widget/resource";
|
||||
import Error from "../widget/error";
|
||||
|
||||
export default function Cpu({ expanded }) {
|
||||
export default function Cpu({ expanded, refresh = 1500 }) {
|
||||
const { t } = useTranslation();
|
||||
|
||||
const { data, error } = useSWR(`/api/widgets/resources?type=cpu`, {
|
||||
refreshInterval: 1500,
|
||||
refreshInterval: refresh,
|
||||
});
|
||||
|
||||
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>
|
||||
);
|
||||
return <Error />
|
||||
}
|
||||
|
||||
if (!data) {
|
||||
return (
|
||||
<div className="flex-none flex flex-row items-center mr-3 py-1.5 animate-pulse">
|
||||
<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 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 pr-1">-</div>
|
||||
<div className="pr-1">{t("resources.load")}</div>
|
||||
</div>
|
||||
)}
|
||||
<UsageBar percent={0} />
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
return <Resource icon={FiCpu} value="-" label={t("resources.cpu")} expandedValue="-"
|
||||
expandedLabel={t("resources.load")} percentage="0" expanded={expanded} />
|
||||
}
|
||||
|
||||
const percent = data.cpu.usage;
|
||||
|
||||
return (
|
||||
<div className="flex-none flex flex-row items-center mr-3 py-1.5">
|
||||
<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 pr-1">
|
||||
{t("common.number", {
|
||||
value: data.cpu.usage,
|
||||
style: "unit",
|
||||
unit: "percent",
|
||||
maximumFractionDigits: 0,
|
||||
})}
|
||||
</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 pr-1">
|
||||
{t("common.number", {
|
||||
value: data.cpu.load,
|
||||
maximumFractionDigits: 2,
|
||||
})}
|
||||
</div>
|
||||
<div className="pr-1">{t("resources.load")}</div>
|
||||
</div>
|
||||
)}
|
||||
<UsageBar percent={percent} />
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
return <Resource
|
||||
icon={FiCpu}
|
||||
value={t("common.number", {
|
||||
value: data.cpu.usage,
|
||||
style: "unit",
|
||||
unit: "percent",
|
||||
maximumFractionDigits: 0,
|
||||
})}
|
||||
label={t("resources.cpu")}
|
||||
expandedValue={t("common.number", {
|
||||
value: data.cpu.load,
|
||||
maximumFractionDigits: 2,
|
||||
})}
|
||||
expandedLabel={t("resources.load")}
|
||||
percentage={data.cpu.usage}
|
||||
expanded={expanded}
|
||||
/>
|
||||
}
|
||||
|
||||
@@ -1,50 +1,34 @@
|
||||
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";
|
||||
import Resource from "../widget/resource";
|
||||
import Error from "../widget/error";
|
||||
|
||||
function convertToFahrenheit(t) {
|
||||
return t * 9/5 + 32
|
||||
}
|
||||
|
||||
export default function CpuTemp({ expanded, units }) {
|
||||
export default function CpuTemp({ expanded, units, refresh = 1500 }) {
|
||||
const { t } = useTranslation();
|
||||
|
||||
const { data, error } = useSWR(`/api/widgets/resources?type=cputemp`, {
|
||||
refreshInterval: 1500,
|
||||
refreshInterval: refresh,
|
||||
});
|
||||
|
||||
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>
|
||||
);
|
||||
return <Error />
|
||||
}
|
||||
|
||||
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>
|
||||
);
|
||||
return <Resource
|
||||
icon={FaThermometerHalf}
|
||||
value="-"
|
||||
label={t("resources.temp")}
|
||||
expandedValue="-"
|
||||
expandedLabel={t("resources.max")}
|
||||
expanded={expanded}
|
||||
/>;
|
||||
}
|
||||
|
||||
let mainTemp = data.cputemp.main;
|
||||
@@ -54,38 +38,24 @@ export default function CpuTemp({ expanded, units }) {
|
||||
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 / maxTemp) * 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>
|
||||
);
|
||||
return <Resource
|
||||
icon={FaThermometerHalf}
|
||||
value={t("common.number", {
|
||||
value: mainTemp,
|
||||
maximumFractionDigits: 1,
|
||||
style: "unit",
|
||||
unit
|
||||
})}
|
||||
label={t("resources.temp")}
|
||||
expandedValue={t("common.number", {
|
||||
value: maxTemp,
|
||||
maximumFractionDigits: 1,
|
||||
style: "unit",
|
||||
unit
|
||||
})}
|
||||
expandedLabel={t("resources.max")}
|
||||
percentage={Math.round((mainTemp / maxTemp) * 100)}
|
||||
expanded={expanded}
|
||||
/>;
|
||||
}
|
||||
|
||||
@@ -1,68 +1,43 @@
|
||||
import useSWR from "swr";
|
||||
import { FiHardDrive } from "react-icons/fi";
|
||||
import { BiError } from "react-icons/bi";
|
||||
import { useTranslation } from "next-i18next";
|
||||
|
||||
import UsageBar from "./usage-bar";
|
||||
import Resource from "../widget/resource";
|
||||
import Error from "../widget/error";
|
||||
|
||||
export default function Disk({ options, expanded }) {
|
||||
export default function Disk({ options, expanded, refresh = 1500 }) {
|
||||
const { t } = useTranslation();
|
||||
|
||||
const { data, error } = useSWR(`/api/widgets/resources?type=disk&target=${options.disk}`, {
|
||||
refreshInterval: 1500,
|
||||
refreshInterval: refresh,
|
||||
});
|
||||
|
||||
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>
|
||||
);
|
||||
return <Error options={options} />
|
||||
}
|
||||
|
||||
if (!data) {
|
||||
return (
|
||||
<div className="flex-none flex flex-row items-center mr-3 py-1.5 animate-pulse">
|
||||
<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 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 pr-1">-</div>
|
||||
<div className="pr-1">{t("resources.total")}</div>
|
||||
</span>
|
||||
)}
|
||||
<UsageBar percent={0} />
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
return <Resource
|
||||
icon={FiHardDrive}
|
||||
value="-"
|
||||
label={t("resources.free")}
|
||||
expandedValue="-"
|
||||
expandedLabel={t("resources.total")}
|
||||
expanded={expanded}
|
||||
percentage="0"
|
||||
/>;
|
||||
}
|
||||
|
||||
// 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 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 pr-1">{t("common.bytes", { value: data.drive.size })}</div>
|
||||
<div className="pr-1">{t("resources.total")}</div>
|
||||
</span>
|
||||
)}
|
||||
<UsageBar percent={percent} />
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
return <Resource
|
||||
icon={FiHardDrive}
|
||||
value={t("common.bytes", { value: data.drive.available })}
|
||||
label={t("resources.free")}
|
||||
expandedValue={t("common.bytes", { value: data.drive.size })}
|
||||
expandedLabel={t("resources.total")}
|
||||
percentage={percent}
|
||||
expanded={expanded}
|
||||
/>;
|
||||
}
|
||||
|
||||
@@ -1,75 +1,42 @@
|
||||
import useSWR from "swr";
|
||||
import { FaMemory } from "react-icons/fa";
|
||||
import { BiError } from "react-icons/bi";
|
||||
import { useTranslation } from "next-i18next";
|
||||
|
||||
import UsageBar from "./usage-bar";
|
||||
import Resource from "../widget/resource";
|
||||
import Error from "../widget/error";
|
||||
|
||||
export default function Memory({ expanded }) {
|
||||
export default function Memory({ expanded, refresh = 1500 }) {
|
||||
const { t } = useTranslation();
|
||||
|
||||
const { data, error } = useSWR(`/api/widgets/resources?type=memory`, {
|
||||
refreshInterval: 1500,
|
||||
refreshInterval: refresh,
|
||||
});
|
||||
|
||||
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>
|
||||
);
|
||||
return <Error />
|
||||
}
|
||||
|
||||
if (!data) {
|
||||
return (
|
||||
<div className="flex-none flex flex-row items-center mr-3 py-1.5 animate-pulse">
|
||||
<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 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 pr-1">-</div>
|
||||
<div className="pr-1">{t("resources.total")}</div>
|
||||
</span>
|
||||
)}
|
||||
<UsageBar percent={0} />
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
return <Resource
|
||||
icon={FaMemory}
|
||||
value="-"
|
||||
label={t("resources.free")}
|
||||
expandedValue="-"
|
||||
expandedLabel={t("resources.total")}
|
||||
expanded={expanded}
|
||||
percentage="0"
|
||||
/>;
|
||||
}
|
||||
|
||||
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 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 pr-1">
|
||||
{t("common.bytes", {
|
||||
value: data.memory.total,
|
||||
maximumFractionDigits: 1,
|
||||
binary: true,
|
||||
})}
|
||||
</div>
|
||||
<div className="pr-1">{t("resources.total")}</div>
|
||||
</span>
|
||||
)}
|
||||
<UsageBar percent={percent} />
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
return <Resource
|
||||
icon={FaMemory}
|
||||
value={t("common.bytes", { value: data.memory.available, maximumFractionDigits: 1, binary: true })}
|
||||
label={t("resources.free")}
|
||||
expandedValue={t("common.bytes", { value: data.memory.total, maximumFractionDigits: 1, binary: true })}
|
||||
expandedLabel={t("resources.total")}
|
||||
percentage={percent}
|
||||
expanded={expanded}
|
||||
/>;
|
||||
}
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
import Container from "../widget/container";
|
||||
import Raw from "../widget/raw";
|
||||
|
||||
import Disk from "./disk";
|
||||
import Cpu from "./cpu";
|
||||
import Memory from "./memory";
|
||||
@@ -6,20 +9,23 @@ import Uptime from "./uptime";
|
||||
|
||||
export default function Resources({ options }) {
|
||||
const { expanded, units } = options;
|
||||
return (
|
||||
<div className="flex flex-col max-w:full sm:basis-auto self-center grow-0 flex-wrap">
|
||||
let { refresh } = options;
|
||||
if (!refresh) refresh = 1500;
|
||||
refresh = Math.max(refresh, 1000);
|
||||
return <Container options={options}>
|
||||
<Raw>
|
||||
<div className="flex flex-row self-center flex-wrap justify-between">
|
||||
{options.cpu && <Cpu expanded={expanded} />}
|
||||
{options.memory && <Memory expanded={expanded} />}
|
||||
{options.cpu && <Cpu expanded={expanded} refresh={refresh} />}
|
||||
{options.memory && <Memory expanded={expanded} refresh={refresh} />}
|
||||
{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 />}
|
||||
? options.disk.map((disk) => <Disk key={disk} options={{ disk }} expanded={expanded} refresh={refresh} />)
|
||||
: options.disk && <Disk options={options} expanded={expanded} refresh={refresh} />}
|
||||
{options.cputemp && <CpuTemp expanded={expanded} units={units} refresh={refresh} />}
|
||||
{options.uptime && <Uptime refresh={refresh} />}
|
||||
</div>
|
||||
{options.label && (
|
||||
<div className="ml-6 pt-1 text-center text-theme-800 dark:text-theme-200 text-xs">{options.label}</div>
|
||||
)}
|
||||
</div>
|
||||
);
|
||||
</Raw>
|
||||
</Container>;
|
||||
}
|
||||
|
||||
@@ -1,66 +1,36 @@
|
||||
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";
|
||||
import Resource from "../widget/resource";
|
||||
import Error from "../widget/error";
|
||||
|
||||
export default function Uptime() {
|
||||
export default function Uptime({ refresh = 1500 }) {
|
||||
const { t } = useTranslation();
|
||||
|
||||
const { data, error } = useSWR(`/api/widgets/resources?type=uptime`, {
|
||||
refreshInterval: 1500,
|
||||
refreshInterval: refresh,
|
||||
});
|
||||
|
||||
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>
|
||||
);
|
||||
return <Error />
|
||||
}
|
||||
|
||||
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>
|
||||
);
|
||||
return <Resource icon={FaRegClock} value="-" label={t("resources.uptime")} percentage="0" />;
|
||||
}
|
||||
|
||||
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);
|
||||
const percent = Math.round((new Date().getSeconds() / 60) * 100).toString();
|
||||
|
||||
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>
|
||||
);
|
||||
return <Resource icon={FaRegClock} value={uptime} label={t("resources.uptime")} percentage={percent} />;
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
export default function UsageBar({ percent }) {
|
||||
export default function UsageBar({ percent, additionalClassNames='' }) {
|
||||
return (
|
||||
<div className="mt-0.5 w-full bg-theme-800/30 rounded-full h-1 dark:bg-theme-200/20">
|
||||
<div className={`mt-0.5 w-full bg-theme-800/30 rounded-full h-1 dark:bg-theme-200/20 ${additionalClassNames}`}>
|
||||
<div
|
||||
className="bg-theme-800/70 h-1 rounded-full dark:bg-theme-200/50 transition-all duration-1000"
|
||||
style={{
|
||||
|
||||
@@ -1,10 +1,13 @@
|
||||
import { useState, useEffect, Fragment } from "react";
|
||||
import { useState, useEffect, useCallback, 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";
|
||||
|
||||
import ContainerForm from "../widget/container_form";
|
||||
import Raw from "../widget/raw";
|
||||
|
||||
export const searchProviders = {
|
||||
google: {
|
||||
name: "Google",
|
||||
@@ -76,14 +79,9 @@ export default function Search({ options }) {
|
||||
setSelectedProvider(storedProvider);
|
||||
}
|
||||
}, [availableProviderIds]);
|
||||
|
||||
if (!availableProviderIds) {
|
||||
return null;
|
||||
}
|
||||
|
||||
function handleSubmit(event) {
|
||||
const submitCallback = useCallback(event => {
|
||||
const q = encodeURIComponent(query);
|
||||
|
||||
const { url } = selectedProvider;
|
||||
if (url) {
|
||||
window.open(`${url}${q}`, options.target || "_blank");
|
||||
@@ -94,6 +92,10 @@ export default function Search({ options }) {
|
||||
event.preventDefault();
|
||||
event.target.reset();
|
||||
setQuery("");
|
||||
}, [options.target, options.url, query, selectedProvider]);
|
||||
|
||||
if (!availableProviderIds) {
|
||||
return null;
|
||||
}
|
||||
|
||||
const onChangeProvider = (provider) => {
|
||||
@@ -101,77 +103,79 @@ export default function Search({ options }) {
|
||||
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" />
|
||||
<input
|
||||
type="text"
|
||||
className="
|
||||
overflow-hidden w-full h-full rounded-md
|
||||
text-xs text-theme-900 dark:text-white
|
||||
placeholder-theme-900 dark:placeholder-white/80
|
||||
bg-white/50 dark:bg-white/10
|
||||
focus:ring-theme-500 dark:focus:ring-white/50
|
||||
focus:border-theme-500 dark:focus:border-white/50
|
||||
border border-theme-300 dark:border-theme-200/50"
|
||||
placeholder={t("search.placeholder")}
|
||||
onChange={(s) => setQuery(s.currentTarget.value)}
|
||||
required
|
||||
autoCapitalize="off"
|
||||
autoCorrect="off"
|
||||
autoComplete="off"
|
||||
// eslint-disable-next-line jsx-a11y/no-autofocus
|
||||
autoFocus={options.focus}
|
||||
/>
|
||||
<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"
|
||||
return <ContainerForm options={options} callback={submitCallback} additionalClassNames="grow information-widget-search" >
|
||||
<Raw>
|
||||
<div className="flex-col relative h-8 my-4 min-w-fit">
|
||||
<div className="flex absolute inset-y-0 left-0 items-center pl-3 pointer-events-none w-full text-theme-800 dark:text-white" />
|
||||
<input
|
||||
type="text"
|
||||
className="
|
||||
overflow-hidden w-full h-full rounded-md
|
||||
text-xs text-theme-900 dark:text-white
|
||||
placeholder-theme-900 dark:placeholder-white/80
|
||||
bg-white/50 dark:bg-white/10
|
||||
focus:ring-theme-500 dark:focus:ring-white/50
|
||||
focus:border-theme-500 dark:focus:border-white/50
|
||||
border border-theme-300 dark:border-theme-200/50"
|
||||
placeholder={t("search.placeholder")}
|
||||
onChange={(s) => setQuery(s.currentTarget.value)}
|
||||
required
|
||||
autoCapitalize="off"
|
||||
autoCorrect="off"
|
||||
autoComplete="off"
|
||||
// eslint-disable-next-line jsx-a11y/no-autofocus
|
||||
autoFocus={options.focus}
|
||||
/>
|
||||
<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"
|
||||
>
|
||||
<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"
|
||||
>
|
||||
<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>
|
||||
);
|
||||
<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>
|
||||
</div>
|
||||
</Raw>
|
||||
</ContainerForm>;
|
||||
}
|
||||
|
||||
@@ -3,6 +3,12 @@ import { MdSettingsEthernet } from "react-icons/md";
|
||||
import { useTranslation } from "next-i18next";
|
||||
import { SiUbiquiti } from "react-icons/si";
|
||||
|
||||
import Error from "../widget/error";
|
||||
import Container from "../widget/container";
|
||||
import Raw from "../widget/raw";
|
||||
import WidgetIcon from "../widget/widget_icon";
|
||||
import PrimaryText from "../widget/primary_text";
|
||||
|
||||
import useWidgetAPI from "utils/proxy/use-widget-api";
|
||||
|
||||
export default function Widget({ options }) {
|
||||
@@ -13,35 +19,16 @@ export default function Widget({ options }) {
|
||||
const { data: statsData, error: statsError } = useWidgetAPI(options, "stat/sites", { index: options.index });
|
||||
|
||||
if (statsError) {
|
||||
return (
|
||||
<div className="flex flex-col justify-center first:ml-0 ml-4">
|
||||
<div className="flex flex-row items-center justify-end">
|
||||
<div className="flex flex-col items-center">
|
||||
<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>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
return <Error options={options} />
|
||||
}
|
||||
|
||||
const defaultSite = options.site ? statsData?.data.find(s => s.desc === options.site) : statsData?.data?.find(s => s.name === "default");
|
||||
|
||||
if (!defaultSite) {
|
||||
return (
|
||||
<div className="flex flex-col justify-center first:ml-0 ml-4">
|
||||
<div className="flex flex-row items-center justify-end">
|
||||
<div className="flex flex-col items-center">
|
||||
<SiUbiquiti className="w-5 h-5 text-theme-800 dark:text-theme-200" />
|
||||
</div>
|
||||
<div className="flex flex-col ml-3 text-left">
|
||||
<span className="text-theme-800 dark:text-theme-200 text-xs">{t("unifi.wait")}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
return <Container options={options} additionalClassNames="information-widget-unifi-console">
|
||||
<PrimaryText>{t("unifi.wait")}</PrimaryText>
|
||||
<WidgetIcon icon={SiUbiquiti} />
|
||||
</Container>;
|
||||
}
|
||||
|
||||
const wan = defaultSite.health.find(h => h.subsystem === "wan");
|
||||
@@ -56,8 +43,9 @@ export default function Widget({ options }) {
|
||||
|
||||
const dataEmpty = !(wan.show || lan.show || wlan.show || uptime);
|
||||
|
||||
return (
|
||||
<div className="flex-none flex flex-row items-center mr-3 py-1.5">
|
||||
return <Container options={options} additionalClassNames="information-widget-unifi-console">
|
||||
<Raw>
|
||||
<div className="flex-none flex flex-row items-center mr-3 py-1.5">
|
||||
<div className="flex flex-col">
|
||||
<div className="flex flex-row ml-3 mb-0.5">
|
||||
<SiUbiquiti className="text-theme-800 dark:text-theme-200 w-3 h-3 mr-1" />
|
||||
@@ -141,6 +129,7 @@ export default function Widget({ options }) {
|
||||
</div>
|
||||
</div>}
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
</div>
|
||||
</Raw>
|
||||
</Container>
|
||||
}
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
import mapIcon from "utils/weather/condition-map";
|
||||
|
||||
export default function Icon({ condition, timeOfDay }) {
|
||||
const IconComponent = mapIcon(condition, timeOfDay);
|
||||
|
||||
return <IconComponent className="w-10 h-10 text-theme-800 dark:text-theme-200" />;
|
||||
}
|
||||
@@ -1,11 +1,16 @@
|
||||
import useSWR from "swr";
|
||||
import { useState } from "react";
|
||||
import { BiError } from "react-icons/bi";
|
||||
import { WiCloudDown } from "react-icons/wi";
|
||||
import { MdLocationDisabled, MdLocationSearching } from "react-icons/md";
|
||||
import { useTranslation } from "next-i18next";
|
||||
|
||||
import Icon from "./icon";
|
||||
import Error from "../widget/error";
|
||||
import Container from "../widget/container";
|
||||
import PrimaryText from "../widget/primary_text";
|
||||
import SecondaryText from "../widget/secondary_text";
|
||||
import WidgetIcon from "../widget/widget_icon";
|
||||
import ContainerButton from "../widget/container_button";
|
||||
import mapIcon from "../../../utils/weather/condition-map";
|
||||
|
||||
function Widget({ options }) {
|
||||
const { t, i18n } = useTranslation();
|
||||
@@ -15,59 +20,33 @@ function Widget({ options }) {
|
||||
);
|
||||
|
||||
if (error || data?.error) {
|
||||
return (
|
||||
<div className="flex flex-col justify-center first:ml-0 ml-4 mr-2">
|
||||
<div className="flex flex-row items-center justify-end">
|
||||
<div className="flex flex-col items-center">
|
||||
<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>
|
||||
</div>
|
||||
);
|
||||
return <Error options={options} />
|
||||
}
|
||||
|
||||
if (!data) {
|
||||
return (
|
||||
<div className="flex flex-col justify-center first:ml-0 ml-4 mr-2">
|
||||
<div className="flex flex-row items-center justify-end">
|
||||
<div className="flex flex-col items-center">
|
||||
<WiCloudDown className="w-8 h-8 text-theme-800 dark:text-theme-200" />
|
||||
</div>
|
||||
<div className="flex flex-col ml-3 text-left">
|
||||
<span className="text-theme-800 dark:text-theme-200 text-sm">{t("weather.updating")}</span>
|
||||
<span className="text-theme-800 dark:text-theme-200 text-xs">{t("weather.wait")}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
return <Container options={options} additionalClassNames="information-widget-weather">
|
||||
<PrimaryText>{t("weather.updating")}</PrimaryText>
|
||||
<SecondaryText>{t("weather.wait")}</SecondaryText>
|
||||
<WidgetIcon icon={WiCloudDown} size="l" />
|
||||
</Container>;
|
||||
}
|
||||
|
||||
const unit = options.units === "metric" ? "celsius" : "fahrenheit";
|
||||
const condition = data.current.condition.code;
|
||||
const timeOfDay = data.current.is_day ? "day" : "night";
|
||||
|
||||
return (
|
||||
<div className="flex flex-col justify-center first:ml-0 ml-4 mr-2">
|
||||
<div className="flex flex-row items-center justify-end">
|
||||
<div className="flex flex-col items-center">
|
||||
<Icon condition={data.current.condition.code} timeOfDay={data.current.is_day ? "day" : "night"} />
|
||||
</div>
|
||||
<div className="flex flex-col ml-3 text-left">
|
||||
<span className="text-theme-800 dark:text-theme-200 text-sm">
|
||||
{options.label && `${options.label}, `}
|
||||
{t("common.number", {
|
||||
value: options.units === "metric" ? data.current.temp_c : data.current.temp_f,
|
||||
style: "unit",
|
||||
unit,
|
||||
})}
|
||||
</span>
|
||||
<span className="text-theme-800 dark:text-theme-200 text-xs">{data.current.condition.text}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
return <Container options={options} additionalClassNames="information-widget-weather">
|
||||
<PrimaryText>
|
||||
{options.label && `${options.label}, `}
|
||||
{t("common.number", {
|
||||
value: options.units === "metric" ? data.current.temp_c : data.current.temp_f,
|
||||
style: "unit",
|
||||
unit,
|
||||
})}
|
||||
</PrimaryText>
|
||||
<SecondaryText>{data.current.condition.text}</SecondaryText>
|
||||
<WidgetIcon icon={mapIcon(condition, timeOfDay)} size="xl" />
|
||||
</Container>;
|
||||
}
|
||||
|
||||
export default function WeatherApi({ options }) {
|
||||
@@ -99,30 +78,12 @@ export default function WeatherApi({ options }) {
|
||||
}
|
||||
};
|
||||
|
||||
// if (!requesting && !location) requestLocation();
|
||||
|
||||
if (!location) {
|
||||
return (
|
||||
<button
|
||||
type="button"
|
||||
onClick={() => requestLocation()}
|
||||
className="flex flex-col justify-center first:ml-0 ml-4 mr-2"
|
||||
>
|
||||
<div className="flex flex-row items-center justify-end">
|
||||
<div className="flex flex-col items-center">
|
||||
{requesting ? (
|
||||
<MdLocationSearching className="w-6 h-6 text-theme-800 dark:text-theme-200 animate-pulse" />
|
||||
) : (
|
||||
<MdLocationDisabled className="w-6 h-6 text-theme-800 dark:text-theme-200" />
|
||||
)}
|
||||
</div>
|
||||
<div className="flex flex-col ml-3 text-left">
|
||||
<span className="text-theme-800 dark:text-theme-200 text-sm">{t("weather.current")}</span>
|
||||
<span className="text-theme-800 dark:text-theme-200 text-xs">{t("weather.allow")}</span>
|
||||
</div>
|
||||
</div>
|
||||
</button>
|
||||
);
|
||||
return <ContainerButton options={options} callback={requestLocation} >
|
||||
<PrimaryText>{t("weather.current")}</PrimaryText>
|
||||
<SecondaryText>{t("weather.allow")}</SecondaryText>
|
||||
<WidgetIcon icon={requesting ? MdLocationSearching : MdLocationDisabled} size="m" pulse />
|
||||
</ContainerButton>;
|
||||
}
|
||||
|
||||
return <Widget options={{ ...location, ...options }} />;
|
||||
|
||||
@@ -17,13 +17,13 @@ const widgetMappings = {
|
||||
kubernetes: dynamic(() => import("components/widgets/kubernetes/kubernetes")),
|
||||
};
|
||||
|
||||
export default function Widget({ widget }) {
|
||||
export default function Widget({ widget, style }) {
|
||||
const InfoWidget = widgetMappings[widget.type];
|
||||
|
||||
if (InfoWidget) {
|
||||
return (
|
||||
<ErrorBoundary>
|
||||
<InfoWidget options={widget.options} />
|
||||
<InfoWidget options={{ ...widget.options, style }} />
|
||||
</ErrorBoundary>
|
||||
);
|
||||
}
|
||||
|
||||
62
src/components/widgets/widget/container.jsx
Normal file
62
src/components/widgets/widget/container.jsx
Normal file
@@ -0,0 +1,62 @@
|
||||
import classNames from "classnames";
|
||||
|
||||
import WidgetIcon from "./widget_icon";
|
||||
import PrimaryText from "./primary_text";
|
||||
import SecondaryText from "./secondary_text";
|
||||
import Raw from "./raw";
|
||||
|
||||
export function getAllClasses(options, additionalClassNames = '') {
|
||||
if (options?.style?.header === "boxedWidgets") {
|
||||
if (options?.style?.cardBlur !== undefined) {
|
||||
// eslint-disable-next-line no-param-reassign
|
||||
additionalClassNames = [
|
||||
additionalClassNames,
|
||||
`backdrop-blur${options.style.cardBlur.length ? '-' : ""}${options.style.cardBlur}`
|
||||
].join(' ')
|
||||
}
|
||||
|
||||
return classNames(
|
||||
"flex flex-col justify-center ml-2 mr-2",
|
||||
"mt-2 m:mb-0 rounded-md shadow-md shadow-theme-900/10 dark:shadow-theme-900/20 bg-theme-100/20 dark:bg-white/5 p-2 pl-3 pr-3",
|
||||
additionalClassNames
|
||||
);
|
||||
}
|
||||
|
||||
let widgetAlignedClasses = "flex flex-col max-w:full sm:basis-auto self-center grow-0 flex-wrap";
|
||||
if (options?.style?.isRightAligned) {
|
||||
widgetAlignedClasses = "flex flex-col justify-center first:ml-auto ml-2 mr-2 ";
|
||||
}
|
||||
|
||||
return classNames(
|
||||
widgetAlignedClasses,
|
||||
additionalClassNames
|
||||
);
|
||||
}
|
||||
|
||||
export function getInnerBlock(children) {
|
||||
// children won't be an array if it's Raw component
|
||||
return Array.isArray(children) && <div className="flex flex-row items-center justify-end widget-inner">
|
||||
<div className="flex flex-col items-center widget-inner-icon">{children.find(child => child.type === WidgetIcon)}</div>
|
||||
<div className="flex flex-col ml-3 text-left widget-inner-text">
|
||||
{children.find(child => child.type === PrimaryText)}
|
||||
{children.find(child => child.type === SecondaryText)}
|
||||
</div>
|
||||
</div>;
|
||||
}
|
||||
|
||||
export function getBottomBlock(children) {
|
||||
if (children.type !== Raw) {
|
||||
return children.find(child => child.type === Raw) || [];
|
||||
}
|
||||
|
||||
return [children];
|
||||
}
|
||||
|
||||
export default function Container({ children = [], options, additionalClassNames = '' }) {
|
||||
return (
|
||||
<div className={getAllClasses(options, `${ additionalClassNames } widget-container`)}>
|
||||
{getInnerBlock(children)}
|
||||
{getBottomBlock(children)}
|
||||
</div>
|
||||
);
|
||||
}
|
||||
10
src/components/widgets/widget/container_button.jsx
Normal file
10
src/components/widgets/widget/container_button.jsx
Normal file
@@ -0,0 +1,10 @@
|
||||
import { getAllClasses, getInnerBlock, getBottomBlock } from "./container";
|
||||
|
||||
export default function ContainerButton ({ children = [], options, additionalClassNames = '', callback }) {
|
||||
return (
|
||||
<button type="button" onClick={callback} className={`${ getAllClasses(options, additionalClassNames) } information-widget-container-button`}>
|
||||
{getInnerBlock(children)}
|
||||
{getBottomBlock(children)}
|
||||
</button>
|
||||
);
|
||||
}
|
||||
10
src/components/widgets/widget/container_form.jsx
Normal file
10
src/components/widgets/widget/container_form.jsx
Normal file
@@ -0,0 +1,10 @@
|
||||
import { getAllClasses, getInnerBlock, getBottomBlock } from "./container";
|
||||
|
||||
export default function ContainerForm ({ children = [], options, additionalClassNames = '', callback }) {
|
||||
return (
|
||||
<form type="button" onSubmit={callback} className={`${ getAllClasses(options, additionalClassNames) } information-widget-form`}>
|
||||
{getInnerBlock(children)}
|
||||
{getBottomBlock(children)}
|
||||
</form>
|
||||
);
|
||||
}
|
||||
10
src/components/widgets/widget/container_link.jsx
Normal file
10
src/components/widgets/widget/container_link.jsx
Normal file
@@ -0,0 +1,10 @@
|
||||
import { getAllClasses, getInnerBlock, getBottomBlock } from "./container";
|
||||
|
||||
export default function ContainerLink ({ children = [], options, additionalClassNames = '', target }) {
|
||||
return (
|
||||
<a href={options.url} target={target} className={`${ getAllClasses(options, additionalClassNames) } information-widget-link`}>
|
||||
{getInnerBlock(children)}
|
||||
{getBottomBlock(children)}
|
||||
</a>
|
||||
);
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user