@tracearr/translations 2.3.0-beta.4 → 2.3.0-beta.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (324) hide show
  1. package/README.md +1 -2
  2. package/dist/config.d.ts +288 -54
  3. package/dist/config.d.ts.map +1 -1
  4. package/dist/config.mobile.d.ts +288 -54
  5. package/dist/config.mobile.d.ts.map +1 -1
  6. package/dist/locales/af-ZA/common.json +282 -281
  7. package/dist/locales/af-ZA/nav.json +21 -20
  8. package/dist/locales/af-ZA/notifications.json +243 -239
  9. package/dist/locales/af-ZA/pages.json +1836 -1687
  10. package/dist/locales/af-ZA/settings.json +894 -823
  11. package/dist/locales/ar-SA/common.json +282 -281
  12. package/dist/locales/ar-SA/nav.json +21 -20
  13. package/dist/locales/ar-SA/notifications.json +246 -242
  14. package/dist/locales/ar-SA/pages.json +1855 -1706
  15. package/dist/locales/ar-SA/settings.json +896 -825
  16. package/dist/locales/ca-ES/common.json +282 -281
  17. package/dist/locales/ca-ES/nav.json +21 -20
  18. package/dist/locales/ca-ES/notifications.json +243 -239
  19. package/dist/locales/ca-ES/pages.json +1822 -1673
  20. package/dist/locales/ca-ES/settings.json +896 -825
  21. package/dist/locales/cs-CZ/common.json +282 -281
  22. package/dist/locales/cs-CZ/nav.json +21 -20
  23. package/dist/locales/cs-CZ/notifications.json +246 -242
  24. package/dist/locales/cs-CZ/pages.json +1856 -1707
  25. package/dist/locales/cs-CZ/settings.json +896 -825
  26. package/dist/locales/da-DK/common.json +282 -281
  27. package/dist/locales/da-DK/nav.json +21 -20
  28. package/dist/locales/da-DK/notifications.json +246 -242
  29. package/dist/locales/da-DK/pages.json +1855 -1706
  30. package/dist/locales/da-DK/settings.json +896 -825
  31. package/dist/locales/de-DE/common.json +282 -281
  32. package/dist/locales/de-DE/mobile.json +1 -1
  33. package/dist/locales/de-DE/nav.json +21 -20
  34. package/dist/locales/de-DE/notifications.json +246 -242
  35. package/dist/locales/de-DE/pages.json +1835 -1686
  36. package/dist/locales/de-DE/settings.json +896 -825
  37. package/dist/locales/el-GR/common.json +282 -281
  38. package/dist/locales/el-GR/nav.json +21 -20
  39. package/dist/locales/el-GR/notifications.json +246 -242
  40. package/dist/locales/el-GR/pages.json +1855 -1706
  41. package/dist/locales/el-GR/settings.json +896 -825
  42. package/dist/locales/en/common.json +2 -1
  43. package/dist/locales/en/nav.json +1 -0
  44. package/dist/locales/en/notifications.json +4 -0
  45. package/dist/locales/en/pages.json +110 -18
  46. package/dist/locales/en/settings.json +43 -24
  47. package/dist/locales/es-ES/common.json +282 -281
  48. package/dist/locales/es-ES/nav.json +21 -20
  49. package/dist/locales/es-ES/notifications.json +246 -242
  50. package/dist/locales/es-ES/pages.json +1835 -1686
  51. package/dist/locales/es-ES/settings.json +896 -825
  52. package/dist/locales/fi-FI/common.json +282 -281
  53. package/dist/locales/fi-FI/nav.json +21 -20
  54. package/dist/locales/fi-FI/notifications.json +246 -242
  55. package/dist/locales/fi-FI/pages.json +1855 -1706
  56. package/dist/locales/fi-FI/settings.json +896 -825
  57. package/dist/locales/fr-FR/common.json +17 -16
  58. package/dist/locales/fr-FR/mobile.json +8 -8
  59. package/dist/locales/fr-FR/nav.json +6 -5
  60. package/dist/locales/fr-FR/notifications.json +246 -242
  61. package/dist/locales/fr-FR/pages.json +1856 -1707
  62. package/dist/locales/fr-FR/settings.json +902 -831
  63. package/dist/locales/he-IL/common.json +282 -281
  64. package/dist/locales/he-IL/nav.json +21 -20
  65. package/dist/locales/he-IL/notifications.json +243 -239
  66. package/dist/locales/he-IL/pages.json +1836 -1687
  67. package/dist/locales/he-IL/settings.json +894 -823
  68. package/dist/locales/hu-HU/common.json +282 -281
  69. package/dist/locales/hu-HU/nav.json +21 -20
  70. package/dist/locales/hu-HU/notifications.json +243 -239
  71. package/dist/locales/hu-HU/pages.json +1836 -1687
  72. package/dist/locales/hu-HU/settings.json +894 -823
  73. package/dist/locales/it-IT/common.json +282 -281
  74. package/dist/locales/it-IT/nav.json +21 -20
  75. package/dist/locales/it-IT/notifications.json +246 -242
  76. package/dist/locales/it-IT/pages.json +1831 -1682
  77. package/dist/locales/it-IT/settings.json +896 -825
  78. package/dist/locales/ja-JP/common.json +282 -281
  79. package/dist/locales/ja-JP/nav.json +21 -20
  80. package/dist/locales/ja-JP/notifications.json +246 -242
  81. package/dist/locales/ja-JP/pages.json +1855 -1706
  82. package/dist/locales/ja-JP/settings.json +896 -825
  83. package/dist/locales/ko-KR/common.json +283 -282
  84. package/dist/locales/ko-KR/mobile.json +6 -6
  85. package/dist/locales/ko-KR/nav.json +1 -0
  86. package/dist/locales/ko-KR/notifications.json +246 -242
  87. package/dist/locales/ko-KR/pages.json +1856 -1707
  88. package/dist/locales/ko-KR/settings.json +900 -829
  89. package/dist/locales/nl-NL/common.json +282 -281
  90. package/dist/locales/nl-NL/nav.json +21 -20
  91. package/dist/locales/nl-NL/notifications.json +246 -242
  92. package/dist/locales/nl-NL/pages.json +1849 -1700
  93. package/dist/locales/nl-NL/settings.json +898 -827
  94. package/dist/locales/no-NO/common.json +282 -281
  95. package/dist/locales/no-NO/nav.json +21 -20
  96. package/dist/locales/no-NO/notifications.json +246 -242
  97. package/dist/locales/no-NO/pages.json +1830 -1681
  98. package/dist/locales/no-NO/settings.json +896 -825
  99. package/dist/locales/pl-PL/common.json +282 -281
  100. package/dist/locales/pl-PL/nav.json +21 -20
  101. package/dist/locales/pl-PL/notifications.json +246 -242
  102. package/dist/locales/pl-PL/pages.json +1831 -1682
  103. package/dist/locales/pl-PL/settings.json +896 -825
  104. package/dist/locales/pt-BR/common.json +282 -281
  105. package/dist/locales/pt-BR/nav.json +21 -20
  106. package/dist/locales/pt-BR/notifications.json +246 -242
  107. package/dist/locales/pt-BR/pages.json +1845 -1696
  108. package/dist/locales/pt-BR/settings.json +896 -825
  109. package/dist/locales/pt-PT/common.json +282 -281
  110. package/dist/locales/pt-PT/nav.json +21 -20
  111. package/dist/locales/pt-PT/notifications.json +246 -242
  112. package/dist/locales/pt-PT/pages.json +1824 -1675
  113. package/dist/locales/pt-PT/settings.json +896 -825
  114. package/dist/locales/ro-RO/common.json +282 -281
  115. package/dist/locales/ro-RO/nav.json +21 -20
  116. package/dist/locales/ro-RO/notifications.json +246 -242
  117. package/dist/locales/ro-RO/pages.json +1831 -1682
  118. package/dist/locales/ro-RO/settings.json +896 -825
  119. package/dist/locales/ru-RU/common.json +282 -281
  120. package/dist/locales/ru-RU/nav.json +21 -20
  121. package/dist/locales/ru-RU/notifications.json +246 -242
  122. package/dist/locales/ru-RU/pages.json +1855 -1706
  123. package/dist/locales/ru-RU/settings.json +896 -825
  124. package/dist/locales/sr-SP/common.json +282 -281
  125. package/dist/locales/sr-SP/nav.json +21 -20
  126. package/dist/locales/sr-SP/notifications.json +243 -239
  127. package/dist/locales/sr-SP/pages.json +1836 -1687
  128. package/dist/locales/sr-SP/settings.json +894 -823
  129. package/dist/locales/sv-SE/common.json +282 -281
  130. package/dist/locales/sv-SE/nav.json +21 -20
  131. package/dist/locales/sv-SE/notifications.json +246 -242
  132. package/dist/locales/sv-SE/pages.json +1831 -1682
  133. package/dist/locales/sv-SE/settings.json +896 -825
  134. package/dist/locales/tr-TR/common.json +282 -281
  135. package/dist/locales/tr-TR/nav.json +21 -20
  136. package/dist/locales/tr-TR/notifications.json +243 -239
  137. package/dist/locales/tr-TR/pages.json +1837 -1688
  138. package/dist/locales/tr-TR/settings.json +894 -823
  139. package/dist/locales/uk-UA/common.json +5 -4
  140. package/dist/locales/uk-UA/nav.json +8 -1
  141. package/dist/locales/uk-UA/notifications.json +246 -242
  142. package/dist/locales/uk-UA/pages.json +166 -17
  143. package/dist/locales/uk-UA/settings.json +898 -827
  144. package/dist/locales/vi-VN/common.json +282 -281
  145. package/dist/locales/vi-VN/nav.json +21 -20
  146. package/dist/locales/vi-VN/notifications.json +243 -239
  147. package/dist/locales/vi-VN/pages.json +1836 -1687
  148. package/dist/locales/vi-VN/settings.json +894 -823
  149. package/dist/locales/zh-CN/common.json +282 -281
  150. package/dist/locales/zh-CN/nav.json +21 -20
  151. package/dist/locales/zh-CN/notifications.json +246 -242
  152. package/dist/locales/zh-CN/pages.json +1842 -1693
  153. package/dist/locales/zh-CN/settings.json +899 -828
  154. package/dist/locales/zh-TW/common.json +282 -281
  155. package/dist/locales/zh-TW/nav.json +21 -20
  156. package/dist/locales/zh-TW/notifications.json +246 -242
  157. package/dist/locales/zh-TW/pages.json +1848 -1699
  158. package/dist/locales/zh-TW/settings.json +897 -826
  159. package/package.json +2 -4
  160. package/src/locales/af-ZA/common.json +282 -281
  161. package/src/locales/af-ZA/nav.json +21 -20
  162. package/src/locales/af-ZA/notifications.json +243 -239
  163. package/src/locales/af-ZA/pages.json +1836 -1687
  164. package/src/locales/af-ZA/settings.json +894 -823
  165. package/src/locales/ar-SA/common.json +282 -281
  166. package/src/locales/ar-SA/nav.json +21 -20
  167. package/src/locales/ar-SA/notifications.json +246 -242
  168. package/src/locales/ar-SA/pages.json +1855 -1706
  169. package/src/locales/ar-SA/settings.json +896 -825
  170. package/src/locales/ca-ES/common.json +282 -281
  171. package/src/locales/ca-ES/nav.json +21 -20
  172. package/src/locales/ca-ES/notifications.json +243 -239
  173. package/src/locales/ca-ES/pages.json +1822 -1673
  174. package/src/locales/ca-ES/settings.json +896 -825
  175. package/src/locales/cs-CZ/common.json +282 -281
  176. package/src/locales/cs-CZ/nav.json +21 -20
  177. package/src/locales/cs-CZ/notifications.json +246 -242
  178. package/src/locales/cs-CZ/pages.json +1856 -1707
  179. package/src/locales/cs-CZ/settings.json +896 -825
  180. package/src/locales/da-DK/common.json +282 -281
  181. package/src/locales/da-DK/nav.json +21 -20
  182. package/src/locales/da-DK/notifications.json +246 -242
  183. package/src/locales/da-DK/pages.json +1855 -1706
  184. package/src/locales/da-DK/settings.json +896 -825
  185. package/src/locales/de-DE/common.json +282 -281
  186. package/src/locales/de-DE/mobile.json +1 -1
  187. package/src/locales/de-DE/nav.json +21 -20
  188. package/src/locales/de-DE/notifications.json +246 -242
  189. package/src/locales/de-DE/pages.json +1835 -1686
  190. package/src/locales/de-DE/settings.json +896 -825
  191. package/src/locales/el-GR/common.json +282 -281
  192. package/src/locales/el-GR/nav.json +21 -20
  193. package/src/locales/el-GR/notifications.json +246 -242
  194. package/src/locales/el-GR/pages.json +1855 -1706
  195. package/src/locales/el-GR/settings.json +896 -825
  196. package/src/locales/en/common.json +2 -1
  197. package/src/locales/en/nav.json +1 -0
  198. package/src/locales/en/notifications.json +4 -0
  199. package/src/locales/en/pages.json +110 -18
  200. package/src/locales/en/settings.json +43 -24
  201. package/src/locales/es-ES/common.json +282 -281
  202. package/src/locales/es-ES/nav.json +21 -20
  203. package/src/locales/es-ES/notifications.json +246 -242
  204. package/src/locales/es-ES/pages.json +1835 -1686
  205. package/src/locales/es-ES/settings.json +896 -825
  206. package/src/locales/fi-FI/common.json +282 -281
  207. package/src/locales/fi-FI/nav.json +21 -20
  208. package/src/locales/fi-FI/notifications.json +246 -242
  209. package/src/locales/fi-FI/pages.json +1855 -1706
  210. package/src/locales/fi-FI/settings.json +896 -825
  211. package/src/locales/fr-FR/common.json +17 -16
  212. package/src/locales/fr-FR/mobile.json +8 -8
  213. package/src/locales/fr-FR/nav.json +6 -5
  214. package/src/locales/fr-FR/notifications.json +246 -242
  215. package/src/locales/fr-FR/pages.json +1856 -1707
  216. package/src/locales/fr-FR/settings.json +902 -831
  217. package/src/locales/he-IL/common.json +282 -281
  218. package/src/locales/he-IL/nav.json +21 -20
  219. package/src/locales/he-IL/notifications.json +243 -239
  220. package/src/locales/he-IL/pages.json +1836 -1687
  221. package/src/locales/he-IL/settings.json +894 -823
  222. package/src/locales/hu-HU/common.json +282 -281
  223. package/src/locales/hu-HU/nav.json +21 -20
  224. package/src/locales/hu-HU/notifications.json +243 -239
  225. package/src/locales/hu-HU/pages.json +1836 -1687
  226. package/src/locales/hu-HU/settings.json +894 -823
  227. package/src/locales/it-IT/common.json +282 -281
  228. package/src/locales/it-IT/nav.json +21 -20
  229. package/src/locales/it-IT/notifications.json +246 -242
  230. package/src/locales/it-IT/pages.json +1831 -1682
  231. package/src/locales/it-IT/settings.json +896 -825
  232. package/src/locales/ja-JP/common.json +282 -281
  233. package/src/locales/ja-JP/nav.json +21 -20
  234. package/src/locales/ja-JP/notifications.json +246 -242
  235. package/src/locales/ja-JP/pages.json +1855 -1706
  236. package/src/locales/ja-JP/settings.json +896 -825
  237. package/src/locales/ko-KR/common.json +283 -282
  238. package/src/locales/ko-KR/mobile.json +6 -6
  239. package/src/locales/ko-KR/nav.json +1 -0
  240. package/src/locales/ko-KR/notifications.json +246 -242
  241. package/src/locales/ko-KR/pages.json +1856 -1707
  242. package/src/locales/ko-KR/settings.json +900 -829
  243. package/src/locales/nl-NL/common.json +282 -281
  244. package/src/locales/nl-NL/nav.json +21 -20
  245. package/src/locales/nl-NL/notifications.json +246 -242
  246. package/src/locales/nl-NL/pages.json +1849 -1700
  247. package/src/locales/nl-NL/settings.json +898 -827
  248. package/src/locales/no-NO/common.json +282 -281
  249. package/src/locales/no-NO/nav.json +21 -20
  250. package/src/locales/no-NO/notifications.json +246 -242
  251. package/src/locales/no-NO/pages.json +1830 -1681
  252. package/src/locales/no-NO/settings.json +896 -825
  253. package/src/locales/pl-PL/common.json +282 -281
  254. package/src/locales/pl-PL/nav.json +21 -20
  255. package/src/locales/pl-PL/notifications.json +246 -242
  256. package/src/locales/pl-PL/pages.json +1831 -1682
  257. package/src/locales/pl-PL/settings.json +896 -825
  258. package/src/locales/pt-BR/common.json +282 -281
  259. package/src/locales/pt-BR/nav.json +21 -20
  260. package/src/locales/pt-BR/notifications.json +246 -242
  261. package/src/locales/pt-BR/pages.json +1845 -1696
  262. package/src/locales/pt-BR/settings.json +896 -825
  263. package/src/locales/pt-PT/common.json +282 -281
  264. package/src/locales/pt-PT/nav.json +21 -20
  265. package/src/locales/pt-PT/notifications.json +246 -242
  266. package/src/locales/pt-PT/pages.json +1824 -1675
  267. package/src/locales/pt-PT/settings.json +896 -825
  268. package/src/locales/ro-RO/common.json +282 -281
  269. package/src/locales/ro-RO/nav.json +21 -20
  270. package/src/locales/ro-RO/notifications.json +246 -242
  271. package/src/locales/ro-RO/pages.json +1831 -1682
  272. package/src/locales/ro-RO/settings.json +896 -825
  273. package/src/locales/ru-RU/common.json +282 -281
  274. package/src/locales/ru-RU/nav.json +21 -20
  275. package/src/locales/ru-RU/notifications.json +246 -242
  276. package/src/locales/ru-RU/pages.json +1855 -1706
  277. package/src/locales/ru-RU/settings.json +896 -825
  278. package/src/locales/sr-SP/common.json +282 -281
  279. package/src/locales/sr-SP/nav.json +21 -20
  280. package/src/locales/sr-SP/notifications.json +243 -239
  281. package/src/locales/sr-SP/pages.json +1836 -1687
  282. package/src/locales/sr-SP/settings.json +894 -823
  283. package/src/locales/sv-SE/common.json +282 -281
  284. package/src/locales/sv-SE/nav.json +21 -20
  285. package/src/locales/sv-SE/notifications.json +246 -242
  286. package/src/locales/sv-SE/pages.json +1831 -1682
  287. package/src/locales/sv-SE/settings.json +896 -825
  288. package/src/locales/tr-TR/common.json +282 -281
  289. package/src/locales/tr-TR/nav.json +21 -20
  290. package/src/locales/tr-TR/notifications.json +243 -239
  291. package/src/locales/tr-TR/pages.json +1837 -1688
  292. package/src/locales/tr-TR/settings.json +894 -823
  293. package/src/locales/uk-UA/common.json +5 -4
  294. package/src/locales/uk-UA/nav.json +8 -1
  295. package/src/locales/uk-UA/notifications.json +246 -242
  296. package/src/locales/uk-UA/pages.json +166 -17
  297. package/src/locales/uk-UA/settings.json +898 -827
  298. package/src/locales/vi-VN/common.json +282 -281
  299. package/src/locales/vi-VN/nav.json +21 -20
  300. package/src/locales/vi-VN/notifications.json +243 -239
  301. package/src/locales/vi-VN/pages.json +1836 -1687
  302. package/src/locales/vi-VN/settings.json +894 -823
  303. package/src/locales/zh-CN/common.json +282 -281
  304. package/src/locales/zh-CN/nav.json +21 -20
  305. package/src/locales/zh-CN/notifications.json +246 -242
  306. package/src/locales/zh-CN/pages.json +1842 -1693
  307. package/src/locales/zh-CN/settings.json +899 -828
  308. package/src/locales/zh-TW/common.json +282 -281
  309. package/src/locales/zh-TW/nav.json +21 -20
  310. package/src/locales/zh-TW/notifications.json +246 -242
  311. package/src/locales/zh-TW/pages.json +1848 -1699
  312. package/src/locales/zh-TW/settings.json +897 -826
  313. package/dist/locales/en-US/common.json +0 -341
  314. package/dist/locales/en-US/mobile.json +0 -178
  315. package/dist/locales/en-US/nav.json +0 -32
  316. package/dist/locales/en-US/notifications.json +0 -299
  317. package/dist/locales/en-US/pages.json +0 -2148
  318. package/dist/locales/en-US/settings.json +0 -952
  319. package/src/locales/en-US/common.json +0 -341
  320. package/src/locales/en-US/mobile.json +0 -178
  321. package/src/locales/en-US/nav.json +0 -32
  322. package/src/locales/en-US/notifications.json +0 -299
  323. package/src/locales/en-US/pages.json +0 -2148
  324. package/src/locales/en-US/settings.json +0 -952
@@ -1,952 +1,1023 @@
1
1
  {
2
- "accessControl": {
3
- "allowGuestAccess": "Permitir acceso al invitado",
4
- "allowGuestAccessDesc": "",
5
- "description": "Configurar quién puede acceder a Tracearr",
6
- "singleOwnerNote": "Nota: Cuando el acceso invitado está deshabilitado, sólo el propietario del servidor puede iniciar sesión. Todos los demás usuarios verán un mensaje \"Acceso denegado\".",
7
- "title": "Control de acceso"
8
- },
9
- "account": {
10
- "createAccount": "Crear cuenta",
11
- "createYourAccount": "Crea tu cuenta para empezar",
12
- "displayName": "Nombre visible",
13
- "email": "Correo electrónico",
14
- "password": "Contraseña",
15
- "signInToAccount": "Inicia sesión en tu cuenta",
16
- "useLocalAccount": "Usar cuenta local"
17
- },
18
- "advanced": {
19
- "connectionScenarios": "Escenarios de conexión",
20
- "externalUrl": "URL externa",
21
- "reverseProxy": "Proxy Inverso",
22
- "title": "Ajustes avanzados",
23
- "trustProxy": "Confiar en cabeceras de proxy"
24
- },
25
- "backup": {
26
- "actions": "Acciones",
27
- "backToBackups": "Volver a Copias de Seguridad",
28
- "backupHistory": "Historial de copia de seguridad",
29
- "createBackup": "Crear copia de seguridad",
30
- "creating": "Creando copia de seguridad...",
31
- "databaseSize": "Tamaño actual de la base de datos: {{size}}",
32
- "date": "Fecha",
33
- "dayFri": "Viernes",
34
- "dayMon": "Lunes",
35
- "daySat": "Sábado",
36
- "daySun": "Domingo",
37
- "dayThu": "Jueves",
38
- "dayTue": "Martes",
39
- "dayWed": "Miércoles",
40
- "deleteConfirmDescription": "¿Está seguro que desea eliminar esta copia de seguridad? Esta acción no se puede deshacer.",
41
- "deleteConfirmTitle": "Eliminar copia de seguridad",
42
- "description": "Copia de seguridad y restaura tus datos de Tracearr",
43
- "download": "",
44
- "freeSpace": "Espacio libre del directorio de copia de seguridad: {{size}}",
45
- "lowDiskSpace": "Espacio en disco bajo: las copias de seguridad y las restauraciones requieren al menos el doble del tamaño de la base de datos en espacio libre.",
46
- "noBackups": "Aún no hay copias de seguridad. Crea tu primera copia de seguridad.",
47
- "restore": {
48
- "automations": "",
49
- "cannotRestore": "La restauración requiere privilegios de superusuario de PostgreSQL. Por favor, asegúrese de que el usuario de la base de datos tiene privilegios de superusuario e inténtelo de nuevo.",
50
- "complete": "Restauración completada con éxito. La página se actualizará pronto.",
51
- "confirm": "Iniciar restauración",
52
- "confirmLabel": "Entiendo que esto reemplazará a todos los datos",
53
- "databaseSize": "Tamaño de la Base de Datos",
54
- "failed": "Restauración fallida",
55
- "libraryItems": "Elemento de biblioteca",
56
- "pgVersionMismatch": "La copia de seguridad fue creada en PostgreSQL {{backupVersion}}, pero este servidor ejecuta PostgreSQL {{serverVersion}}. Restaurar un volcado desde una versión más reciente de PostgreSQL no es compatible.",
57
- "selectedBackup": "Backup seleccionado",
58
- "servers": "Servidores",
59
- "sessions": "Sesiones",
60
- "tables": "Tablas",
61
- "title": "Restaurar copia de seguridad",
62
- "tsVersionMismatch": "La copia de seguridad se creó con TimescaleDB {{backupVersion}}, pero este servidor sólo soporta TimescaleDB {{serverVersion}}.",
63
- "users": "Usuarios",
64
- "warning": "Restaurar reemplazará todos los datos existentes. Necesitará volver a iniciar sesión después de que la restauración se complete."
65
- },
66
- "restoreAction": "Restaurar",
67
- "retentionCount": "Mantener Última",
68
- "retentionSuffix": "copia de seguridad planificadas",
69
- "rowActions": "",
70
- "schedule": "Copias de seguridad programadas",
71
- "scheduleDaily": "Diario",
72
- "scheduleDayOfMonth": "Día del mes",
73
- "scheduleDayOfMonthHint": "En meses con menos días, la copia de seguridad se ejecuta el último día.",
74
- "scheduleDayOfWeek": "Día de la semana",
75
- "scheduleDisabled": "Deshabilitado",
76
- "scheduleHour": "",
77
- "scheduleMinute": "",
78
- "scheduleMonthly": "Mensual",
79
- "scheduleTime": "Hora ({{timezone}})",
80
- "scheduleType": "Planificado",
81
- "scheduleWeekly": "Semanal",
82
- "size": "Tamaño",
83
- "title": "Copia de seguridad",
84
- "toast": {
85
- "backupCreateFailed": "Error al crear copia de seguridad",
86
- "backupCreated": "Copia de seguridad creada con éxito",
87
- "backupDeleteFailed": "Error al eliminar copia de seguridad",
88
- "backupDeleted": "Copia de seguridad eliminada",
89
- "backupUploadFailed": "Error al subir la copia de seguridad",
90
- "backupUploaded": "Copia de seguridad creada con éxito",
91
- "restoreStartFailed": "Error al iniciar la restauración",
92
- "restoreStarted": "Iniciando restauración",
93
- "scheduleError": "Error al guardar el programa de copia de seguridad",
94
- "scheduleSaved": "Programa de copia de seguridad guardado"
2
+ "title": "Ajustes",
3
+ "nav": {
4
+ "label": "",
5
+ "selectLabel": "",
6
+ "itemLabel": "",
7
+ "groups": {
8
+ "general": "",
9
+ "servers": "",
10
+ "notifications": "",
11
+ "access": "",
12
+ "data": ""
95
13
  },
96
- "type": "Tipo",
97
- "typeManual": "",
98
- "typeScheduled": "Planificado",
99
- "typeUploaded": "Cargado",
100
- "uploadBackup": "Subir copia de seguridad",
101
- "uploading": "Subiendo...",
102
- "version": "Versión"
103
- },
104
- "email": {
105
- "branding": {
106
- "accent": "",
107
- "accentPicker": "",
108
- "description": "",
109
- "footerText": "",
110
- "footerTextHelp": "",
111
- "logo": {
112
- "label": "",
113
- "none": "",
114
- "tracearr": "",
115
- "url": ""
116
- },
117
- "logoUrl": "",
118
- "mailto": "",
119
- "mailtoHelp": "",
120
- "postalAddress": "",
121
- "postalAddressHelp": "",
122
- "save": "",
123
- "saving": "",
124
- "title": ""
14
+ "sections": {
15
+ "appearance": "",
16
+ "locale": "",
17
+ "behavior": "",
18
+ "connections": "",
19
+ "posters": "",
20
+ "plexAccounts": "",
21
+ "destinations": "",
22
+ "newsletters": "",
23
+ "email": "",
24
+ "guest": "",
25
+ "mobile": "",
26
+ "remote": "",
27
+ "import": "",
28
+ "backup": "",
29
+ "jobs": "",
30
+ "api": ""
125
31
  },
126
- "ownerOnly": "",
127
- "suppressions": {
128
- "add": "",
129
- "addConfirm": "",
130
- "addDescription": "",
131
- "addTitle": "",
132
- "address": "",
133
- "empty": "",
134
- "emptyDescription": "",
135
- "globalNote": "",
136
- "openSource": "",
137
- "reason": {
138
- "manual": "",
139
- "unsubscribed": ""
140
- },
141
- "remove": "",
142
- "removeDescription": "",
143
- "removeTitle": "",
144
- "title": ""
32
+ "descriptions": {
33
+ "appearance": "",
34
+ "locale": "",
35
+ "behavior": "",
36
+ "connections": "",
37
+ "posters": "",
38
+ "plexAccounts": "",
39
+ "destinations": "",
40
+ "guest": "",
41
+ "mobile": "",
42
+ "remote": "",
43
+ "import": "",
44
+ "backup": "",
45
+ "jobs": "",
46
+ "api": "",
47
+ "newsletters": "",
48
+ "email": ""
145
49
  }
146
50
  },
147
51
  "general": {
52
+ "title": "Ajustes Generales",
53
+ "unitSystem": "Sistema de unidades",
54
+ "metric": "Métrico (km, km/h)",
55
+ "imperial": "",
56
+ "timezone": "Zona horaria",
57
+ "primaryAuth": "Método de autenticación principal",
58
+ "localAccount": "Cuenta Local",
59
+ "plexAccount": "Cuenta de Plex",
60
+ "language": "Idioma",
61
+ "languageDescription": "Elige tu idioma de visualización preferido.",
62
+ "helpTranslate": "Ayuda a traducir Tracearr",
63
+ "timeFormat": "Formato de hora",
64
+ "timeFormatDescription": "Elige cómo se muestran las horas.",
65
+ "timeFormat12h": "12 horas (1:30 PM)",
66
+ "timeFormat24h": "24 horas(13:30)",
67
+ "theme": "Tema",
148
68
  "accentColor": "Color de acento",
149
- "apiDocs": "",
150
- "apiKeyDesc": "Acceda a la API de Tracearr para integraciones de terceros como Homarr, Home Assistant, etc.",
151
- "apiKeyReadAccess": "Su clave API otorga acceso completo de lectura a sus datos de Tracearr.",
152
- "apiRateLimit": "",
153
- "apiRateLimitDesc": "",
154
- "apiRateLimitSuffix": "",
69
+ "default": "(por defecto)",
70
+ "cyanDefault": "* Cian es el color de acento predeterminado",
71
+ "themeLight": "Claro",
72
+ "themeDark": "Oscuro",
73
+ "themeSystem": "Sistema",
155
74
  "application": "Aplicación",
156
75
  "applicationDesc": "Configurar los ajustes básicos de la aplicación",
157
- "copyToClipboard": "Copiar al portapapeles",
158
- "cyanDefault": "* Cian es el color de acento predeterminado",
159
- "default": "(por defecto)",
160
- "detect": "Detectar",
76
+ "unitSystemDesc": "",
77
+ "sessionSync": "Sincronización de sesión",
78
+ "sessionSyncDesc": "",
79
+ "syncInterval": "Intervalo de sincronización",
80
+ "syncIntervalDesc": "",
81
+ "syncIntervalSuffix": "seg",
82
+ "plexSseNote": "Plex utiliza Eventos Server-Sent (SSE) para actualizaciones casi instantáneas — no se necesitan encuestas.",
83
+ "jellyfinPollingNote": "Jellyfin/Emby son encuestas en el intervalo de arriba.",
161
84
  "enhancedGeoIP": "Búsqueda de GeoIP mejorada",
162
85
  "enhancedGeoIPDesc": "Utilice el servicio GeoIP de Plex para obtener datos de ubicación más precisos. Cuando está habilitado, las direcciones IP se envían a plex. v para búsqueda. Base de datos local MaxMind se utiliza como respaldo.",
163
86
  "externalAccess": "Acceso externo",
164
87
  "externalAccessDesc": "Configura cómo los dispositivos externos (como las aplicaciones móviles) se conectan a tu servidor",
165
88
  "externalUrl": "URL externa",
166
- "externalUrlDesc": "La URL que deben usar los dispositivos externos para llegar a este servidor. Utilizado para códigos QR y emparejamiento de aplicaciones móviles.",
167
89
  "externalUrlPlaceholder": "",
90
+ "externalUrlDesc": "La URL que deben usar los dispositivos externos para llegar a este servidor. Utilizado para códigos QR y emparejamiento de aplicaciones móviles.",
91
+ "detect": "Detectar",
92
+ "localhostWarning": "Las URL de localhost no funcionarán para dispositivos externos. Utilice su IP LAN o un nombre de dominio.",
93
+ "iosHttpWarning": "iOS requiere HTTPS para conexiones externas. Configure un proxy inverso con SSL.",
94
+ "apiKeyDesc": "Acceda a la API de Tracearr para integraciones de terceros como Homarr, Home Assistant, etc.",
95
+ "apiDocs": "",
96
+ "noApiKeyGenerated": "Ninguna clave API generada",
97
+ "copyToClipboard": "Copiar al portapapeles",
98
+ "apiKeyReadAccess": "Su clave API otorga acceso completo de lectura a sus datos de Tracearr.",
168
99
  "generateApiKeyPrompt": "Generar una clave API para habilitar integraciones externas.",
100
+ "regenerate": "Regenerar",
169
101
  "generateKey": "Generar clave",
170
- "helpTranslate": "Ayuda a traducir Tracearr",
102
+ "regenerateApiKey": "¿Regenerar clave API?",
103
+ "regenerateApiKeyDesc": "Esto invalidará tu clave API actual. Cualquier integración usando la clave antigua dejará de funcionar.",
104
+ "publicApiSettings": "",
105
+ "publicApiSettingsDesc": "",
106
+ "watchedThresholdMovie": "",
107
+ "watchedThresholdMovieDesc": "",
108
+ "watchedThresholdTv": "",
109
+ "watchedThresholdTvDesc": "",
110
+ "watchedThresholdMusic": "",
111
+ "watchedThresholdMusicDesc": "",
112
+ "watchedThresholdSuffix": "",
113
+ "apiRateLimit": "",
114
+ "apiRateLimitDesc": "",
115
+ "apiRateLimitSuffix": "",
116
+ "updateChecks": {
117
+ "title": "",
118
+ "description": "",
119
+ "plugin": "",
120
+ "pluginDesc": "",
121
+ "server": "",
122
+ "serverDesc": ""
123
+ },
171
124
  "imageCache": {
172
- "ceiling": "",
125
+ "title": "",
173
126
  "description": "",
174
- "diskLimited": "",
127
+ "size": "",
175
128
  "files": "",
176
- "floor": "",
129
+ "need": "",
130
+ "needHint": "",
177
131
  "free": "",
178
132
  "freeOf": "",
133
+ "floor": "",
134
+ "ceiling": "",
179
135
  "lastSweep": "",
180
- "loadError": "",
181
- "need": "",
182
- "needHint": "",
183
136
  "never": "",
184
- "size": "",
185
- "title": ""
186
- },
187
- "imperial": "",
188
- "iosHttpWarning": "iOS requiere HTTPS para conexiones externas. Configure un proxy inverso con SSL.",
189
- "jellyfinPollingNote": "Jellyfin/Emby son encuestas en el intervalo de arriba.",
190
- "language": "Idioma",
191
- "languageDescription": "Elige tu idioma de visualización preferido.",
192
- "localAccount": "Cuenta Local",
193
- "localhostWarning": "Las URL de localhost no funcionarán para dispositivos externos. Utilice su IP LAN o un nombre de dominio.",
194
- "metric": "Métrico (km, km/h)",
195
- "noApiKeyGenerated": "Ninguna clave API generada",
196
- "plexAccount": "Cuenta de Plex",
197
- "plexSseNote": "Plex utiliza Eventos Server-Sent (SSE) para actualizaciones casi instantáneas — no se necesitan encuestas.",
198
- "primaryAuth": "Método de autenticación principal",
199
- "publicApiSettings": "",
200
- "publicApiSettingsDesc": "",
201
- "regenerate": "Regenerar",
202
- "regenerateApiKey": "¿Regenerar clave API?",
203
- "regenerateApiKeyDesc": "Esto invalidará tu clave API actual. Cualquier integración usando la clave antigua dejará de funcionar.",
204
- "sessionSync": "Sincronización de sesión",
205
- "sessionSyncDesc": "",
137
+ "diskLimited": "",
138
+ "loadError": ""
139
+ }
140
+ },
141
+ "servers": {
142
+ "title": "Servidores conectados",
143
+ "addServer": "Añadir servidor",
144
+ "serverName": "Nombre del servidor",
145
+ "serverUrl": "URL del servidor",
206
146
  "syncInterval": "Intervalo de sincronización",
207
- "syncIntervalDesc": "",
208
- "syncIntervalSuffix": "seg",
209
- "theme": "Tema",
210
- "themeDark": "Oscuro",
211
- "themeLight": "Claro",
212
- "themeSystem": "Sistema",
213
- "timeFormat": "Formato de hora",
214
- "timeFormat12h": "12 horas (1:30 PM)",
215
- "timeFormat24h": "24 horas(13:30)",
216
- "timeFormatDescription": "Elige cómo se muestran las horas.",
217
- "timezone": "Zona horaria",
218
- "title": "Ajustes Generales",
219
- "unitSystem": "Sistema de unidades",
220
- "unitSystemDesc": "",
221
- "updateChecks": {
147
+ "testConnection": "Probar conexión",
148
+ "connectionSuccess": "Conexión establecida",
149
+ "connectionFailed": "Error de conexión",
150
+ "noServersConnected": "Sin servidores conectados",
151
+ "noServersConnectedHint": "Haga clic en \"Añadir servidor\" para conectar un servidor Jellyfin o Emby",
152
+ "serverType": "Tipo de servidor",
153
+ "loadingAccounts": "Cargando cuentas enlazadas de Plex...",
154
+ "noPlexAccountsLinked": "No hay cuentas Plex vinculadas",
155
+ "noPlexAccountsLinkedHint": "Vincula una cuenta de Plex de arriba, luego vuelve a añadir un servidor.",
156
+ "selectPlexAccount": "Seleccionar cuenta de Plex",
157
+ "chooseAccount": "Seleccione una cuenta...",
158
+ "selectAccountHelp": "Seleccione desde qué cuenta de Plex descubrir los servidores.",
159
+ "allServersConnected": "Todos los servidores conectados",
160
+ "allServersConnectedDesc": "Todos los servidores de esta cuenta ya están conectados.",
161
+ "serverUrlPlaceholder": "",
162
+ "serverUrlHelp": "Directa la URL a tu servidor Jellyfin o Emby. Usa IP:port para mayor fiabilidad.",
163
+ "serverNamePlaceholder": "Mi servidor multimedia",
164
+ "apiKeyPlaceholder": "Introduzca su clave API",
165
+ "apiKeyHelp": "Encontrado en el panel de control de su servidor de medios bajo claves API o ajustes avanzados.",
166
+ "connecting": "Conectando...",
167
+ "connectServer": "Conectar servidor",
168
+ "removeServer": "Eliminar servidor",
169
+ "removeServerConfirm": "¿Está seguro que desea eliminar este servidor? Se conservarán todos los datos de sesión asociados, pero no podrás supervisar las nuevas sesiones desde este servidor.",
170
+ "editServer": "Editar servidor",
171
+ "editServerDesc": "Actualizar el nombre del servidor o la URL de conexión.",
172
+ "serverColor": "Color del servidor",
173
+ "serverColorDesc": "Utilizado para la atribución visual en la vista multi-servidor",
174
+ "updating": "Actualizando...",
175
+ "allFieldsRequired": "Todos los campos son obligatorios",
176
+ "addServerDialogDescPlex": "Seleccione un servidor Plex de su cuenta vinculada.",
177
+ "addServerDialogDescOther": "Conecte un servidor Jellyfin o Emby.",
178
+ "description": "Administra tus servidores de Plex, Jellyfin, y Emby conectados",
179
+ "discoveringServers": "Descubriendo servidores Plex disponibles...",
180
+ "discoveringConnections": "Descubriendo conexiones...",
181
+ "plexAccount": "Cuenta de Plex",
182
+ "serverUrlHelpJellyfin": "La URL donde tu servidor Jellyfin es accesible",
183
+ "serverUrlHelpEmby": "La URL donde tu servidor Emby es accesible",
184
+ "publicUrl": "",
185
+ "publicUrlHint": "",
186
+ "apiKeyHelpJellyfin": "Encontrar esto en Jellyfin Dashboard → API Keys",
187
+ "apiKeyHelpEmby": "Encontrar esto en Emby Server → API Keys",
188
+ "apiKeyKeepCurrent": "",
189
+ "plexServerPlaceholder": "Mi servidor Plex",
190
+ "plexServerUrlPlaceholder": "",
191
+ "updateHint": "O haga clic en Actualizar abajo para guardar sólo el cambio de nombre.",
192
+ "reorder": "",
193
+ "added": "Añadido {{date}}",
194
+ "realtimeActive": "",
195
+ "pollingMode": "",
196
+ "setupRealtime": "",
197
+ "realtimeError": "",
198
+ "checkingConnection": "",
199
+ "pluginVersion": "",
200
+ "pluginUpdateAvailable": "",
201
+ "realtimeDialog": {
202
+ "title": "",
203
+ "updateTitle": "",
204
+ "jellyfinDescription": "",
205
+ "embyDescription": "",
206
+ "jellyfinUpdateDescription": "",
207
+ "embyUpdateDescription": "",
208
+ "repositoryUrl": "",
209
+ "copyUrl": "",
210
+ "jellyfinRepoUrl": "",
211
+ "embyReleasesUrl": "",
212
+ "openReleases": "",
213
+ "autoDetectNote": "",
214
+ "close": "",
215
+ "issueBlocked": "",
216
+ "issueRestartRequired": "",
217
+ "issueMalfunctioned": ""
218
+ },
219
+ "posterSource": {
220
+ "title": "",
221
+ "titleDesc": "",
222
+ "label": "",
222
223
  "description": "",
223
- "plugin": "",
224
- "pluginDesc": "",
225
- "server": "",
226
- "serverDesc": "",
227
- "title": ""
224
+ "automatic": "",
225
+ "emptyHint": "",
226
+ "ownerOnly": ""
228
227
  },
229
- "watchedThresholdMovie": "",
230
- "watchedThresholdMovieDesc": "",
231
- "watchedThresholdMusic": "",
232
- "watchedThresholdMusicDesc": "",
233
- "watchedThresholdSuffix": "",
234
- "watchedThresholdTv": "",
235
- "watchedThresholdTvDesc": ""
228
+ "version": {
229
+ "installed": "",
230
+ "upToDate": "",
231
+ "updateAvailable": ""
232
+ }
233
+ },
234
+ "mobile": {
235
+ "title": "App Móvil",
236
+ "pairDevice": "Vincular dispositivo",
237
+ "generateToken": "Generar Token",
238
+ "scanQrCode": "Escanear código QR",
239
+ "tokenExpires": "El token expira en {{time}}",
240
+ "lastSeen": "",
241
+ "connectedOn": "",
242
+ "noDevices": "No hay dispositivos vinculados",
243
+ "noDevicesDesc": "",
244
+ "revokeAll": "Cerrar todas las sesiones",
245
+ "getOnGooglePlay": "Consíguelo en Google Play",
246
+ "downloadOnAppStore": "Descargar en la App Store",
247
+ "externalUrlRequired": "Una URL externa debe configurarse en la Configuración General para que funcione.",
248
+ "mobileAccessDisabled": "Acceso móvil deshabilitado",
249
+ "mobileAccessDisabledDesc": "Activa el acceso móvil para permitir que la aplicación móvil Tracearr se conecte a tu servidor.",
250
+ "enableMobileAccess": "Activar acceso móvil",
251
+ "enabling": "Activando...",
252
+ "devicesConnected": "{{current}} de {{max}} dispositivos conectados",
253
+ "pendingTokens": "{{count}} tokens de par pendientes",
254
+ "addDevice": "Añadir dispositivo",
255
+ "disableMobileAccess": "Desactivar acceso móvil",
256
+ "revokeAllSessions": "Revocar todo",
257
+ "pairNewDevice": "Emparejar dispositivo nuevo",
258
+ "pairNewDeviceDesc": "Escanea el código QR con la aplicación móvil Tracearr o introduce el token manualmente.",
259
+ "expiresIn": "Caduca en {{time}}",
260
+ "oneTimePairToken": "Token de un par de tiempo",
261
+ "copyToken": "Copiar token",
262
+ "tokenExpiryNote": "Este token expira en 5 minutos y solo puede ser usado una vez.",
263
+ "done": "Hecho",
264
+ "disableMobileAccessConfirm": "Esto desconectará todos los dispositivos móviles y revocará todas las sesiones. Puede rehabilitar el acceso móvil más tarde.",
265
+ "disable": "Deshabilitar",
266
+ "revokeAllConfirm": "Esto desconectará todos los dispositivos móviles. Tendrán que emparejar de nuevo para volver a conectar.",
267
+ "renameDevice": "Renombrar dispositivo",
268
+ "renameDeviceDesc": "Introduzca un nombre para identificar este dispositivo en la lista.",
269
+ "deviceName": "Nombre del dispositivo",
270
+ "deviceNamePlaceholder": "ej. iPhone 15",
271
+ "removeDevice": "Eliminar dispositivo",
272
+ "failedToGenerateToken": "Error al generar el token",
273
+ "removeDeviceConfirm": "¿Estás seguro de que quieres eliminar {{deviceName}}? Este dispositivo tendrá que emparejarse de nuevo para volver a conectar.",
274
+ "externalUrlBanner": "¿Utilizar un proxy inverso o acceder de forma remota? Establezca su",
275
+ "externalUrlBannerLink": "URL externa",
276
+ "externalUrlBannerSuffix": "para que la aplicación móvil pueda conectarse a tu servidor."
277
+ },
278
+ "tailscale": {
279
+ "title": "",
280
+ "description": "",
281
+ "notAvailable": "Binario de Tailscale no encontrado. Esta función solo está disponible con la imagen Docker oficial.",
282
+ "disabledDescription": "Activa Tailscale para añadir Tracearr a tu tailnet privada. Sin necesidad de abrir puertos ni configurar proxy inverso.",
283
+ "hostnameLabel": "Nombre de host del dispositivo",
284
+ "hostnameHint": "Nombre personalizado opcional para este dispositivo en tu tailnet. Solo letras, números y guiones.",
285
+ "enable": "Activar Tailscale",
286
+ "disable": "Desactivar Tailscale",
287
+ "starting": "Iniciando Tailscale...",
288
+ "stopping": "Deteniendo Tailscale...",
289
+ "awaitingAuth": "Esperando autorización...",
290
+ "authorize": "Autorizar en Tailscale",
291
+ "connected": "Tailscale conectado. Tu instancia de Tracearr está disponible en la tailnet.",
292
+ "hostname": "Nombre de host",
293
+ "dnsName": "Nombre DNS",
294
+ "tailnetUrl": "",
295
+ "showLogs": "Mostrar registros",
296
+ "hideLogs": "Ocultar registros",
297
+ "noLogs": "No hay registros disponibles.",
298
+ "exitNodeNone": "Ninguno",
299
+ "exitNodeOffline": "(sin conexión)",
300
+ "unknownError": "Se ha producido un error desconocido.",
301
+ "disableConfirmTitle": "¿Desactivar Tailscale?",
302
+ "disableConfirmDescription": "Esto desconectará Tracearr de tu tailnet. Puedes volver a activarlo sin necesidad de re-autorizar.",
303
+ "resetConfirmTitle": "¿Restablecer Tailscale?",
304
+ "resetConfirmDescription": "Esto desconectará Tracearr de tu tailnet y eliminará la identidad del dispositivo. Tendrás que reautorizar si vuelves a activarlo.",
305
+ "toast": {
306
+ "disabled": "Tailscale desactivado.",
307
+ "enableFailed": "Error al activar Tailscale",
308
+ "disableFailed": "Error al desactivar Tailscale",
309
+ "reset": "Tailscale restablecido.",
310
+ "resetFailed": "Error al restablecer Tailscale",
311
+ "exitNodeSet": "Nodo de salida actualizado.",
312
+ "exitNodeFailed": "Error al configurar el nodo de salida"
313
+ }
314
+ },
315
+ "jobs": {
316
+ "title": "Trabajos de Mantenimiento",
317
+ "description": "",
318
+ "normalization": "Normalización",
319
+ "backfill": "Retroceso",
320
+ "cleanup": "Limpieza",
321
+ "running": "corriendo",
322
+ "queued": "en cola",
323
+ "delayed": "retrasado",
324
+ "waiting": "Esperando",
325
+ "runningState": "Ejecutando",
326
+ "runJob": "Ejecutar Job",
327
+ "processed": "procesados",
328
+ "updated": "actualizado",
329
+ "unchanged": "sin cambios",
330
+ "errors": "errores",
331
+ "lastJobCompleted": "Último trabajo completado con éxito",
332
+ "lastJobFailed": "Último trabajo fallido",
333
+ "jobHistory": "Historial de tareas",
334
+ "jobHistoryDesc": "Ejecuciones de tareas de mantenimiento recientes",
335
+ "runConfirm": "¿Ejecutar {{name}}?",
336
+ "mayTakeAWhile": "Esto puede tardar un poco",
337
+ "mayTakeAWhileDesc": "Este trabajo puede tardar varios minutos en completarse dependiendo del tamaño de su biblioteca.",
338
+ "startJob": "Iniciar trabajo"
339
+ },
340
+ "advanced": {
341
+ "title": "Ajustes avanzados",
342
+ "externalUrl": "URL externa",
343
+ "trustProxy": "Confiar en cabeceras de proxy",
344
+ "reverseProxy": "Proxy Inverso",
345
+ "connectionScenarios": "Escenarios de conexión"
346
+ },
347
+ "accessControl": {
348
+ "title": "Control de acceso",
349
+ "description": "Configurar quién puede acceder a Tracearr",
350
+ "allowGuestAccess": "Permitir acceso al invitado",
351
+ "allowGuestAccessDesc": "",
352
+ "singleOwnerNote": "Nota: Cuando el acceso invitado está deshabilitado, sólo el propietario del servidor puede iniciar sesión. Todos los demás usuarios verán un mensaje \"Acceso denegado\"."
236
353
  },
237
354
  "import": {
238
- "apiKeyHelp": "Encontrado en Configuración Tautulli → Interfaz Web → Clave API.",
239
- "apiKeyPlaceholder": "Tu clave API de Tautulli",
240
- "checkPlugin": "",
241
- "checkingPlugin": "",
242
- "connectToTautulli": "Conectar a Tautulli",
243
- "connectedFound": "¡Conectado! Encontrados usuarios {{users}} y registros de historial de {{records}}.",
244
- "duplicates": "",
245
- "enrichMetadata": "Enriquecer con metadatos de medios (recomendado)",
246
- "enrichMetadataHelp": "Obtiene metadatos adicionales de su servidor de medios para sesiones importadas.",
247
- "enriched": "Enriquecido",
248
- "errors": "Errores",
249
- "exportBackupHelp": "En Jellystat, vaya a Configuración → Copia de seguridad → Copia de seguridad de actividades para exportar sus datos.",
250
- "exportBackupHint": "Exportar una copia de seguridad de la actividad de Jellystat",
251
- "howItWorks": "Cómo funciona la importación",
252
- "howItWorksDesc": "Tracearr importará todos los datos de reloj históricos de su fuente. Esto puede tomar un tiempo dependiendo del tamaño de su biblioteca.",
355
+ "title": "Importar datos",
356
+ "jellystat": "Importar desde Jellystat",
357
+ "tautulli": "Importar desde Tautulli",
358
+ "importProgress": "Progreso de la importación",
253
359
  "importComplete": "Importación completada",
254
360
  "importFailed": "Error al importar",
255
- "importFullRange": "",
256
- "importFullRangeHelp": "",
257
- "importHistory": "Importar Historial",
258
- "importInProgressGeneric": "Importación en progreso...",
259
- "importInProgressPercent": "Importación en progreso ({{percent}}% completado)...",
260
- "importOptions": "Importar opciones",
261
- "importProgress": "Progreso de la importación",
361
+ "processed": "Procesados",
362
+ "page": "Página",
262
363
  "imported": "Importados",
263
- "importing": "Importando...",
264
- "includeStreamDetails": "Incluye datos detallados de flujo (códecs, tasa de bits, resolución)",
265
- "includeStreamDetailsHelp": "Importa información adicional de flujos. Puede aumentar significativamente el tiempo de importación.",
266
- "jellyfinEmby": "",
267
- "jellystat": "Importar desde Jellystat",
364
+ "skipped": "Omitidos",
365
+ "enriched": "Enriquecido",
366
+ "errors": "Errores",
268
367
  "noServers": "No hay servidores conectados",
269
368
  "noServersHint": "Necesita al menos un servidor conectado para importar datos.",
270
- "overlapSkipped": "",
369
+ "tautulliUrl": "URL de Tautulli",
370
+ "tautulliUrlPlaceholder": "",
371
+ "tautulliUrlHelp": "La URL de su instancia de Tautulli.",
372
+ "apiKeyHelp": "Encontrado en Configuración Tautulli → Interfaz Web → Clave API.",
373
+ "testing": "Comprobando...",
374
+ "connectToTautulli": "Conectar a Tautulli",
375
+ "importHistory": "Importar Historial",
376
+ "targetServer": "",
377
+ "selectPlexServer": "Seleccione un servidor Plex",
271
378
  "overwriteFriendlyNames": "Sobrescribir nombres amigos existentes con nombres de Tautulli",
272
379
  "overwriteFriendlyNamesHelp": "Los nombres de identidad existentes en Tracearr serán reemplazados por los nombres amistosos de Tautulli.",
273
- "page": "Página",
274
- "playbackReporting": "",
275
- "playbackReportingDesc": "",
380
+ "includeStreamDetails": "Incluye datos detallados de flujo (códecs, tasa de bits, resolución)",
381
+ "includeStreamDetailsHelp": "Importa información adicional de flujos. Puede aumentar significativamente el tiempo de importación.",
382
+ "importing": "Importando...",
383
+ "startImport": "Iniciar importación",
384
+ "howItWorks": "Cómo funciona la importación",
385
+ "howItWorksDesc": "Tracearr importará todos los datos de reloj históricos de su fuente. Esto puede tomar un tiempo dependiendo del tamaño de su biblioteca.",
386
+ "recordsMayBeSkipped": "Los registros se pueden omitir si:",
387
+ "selectTargetServer": "Seleccionar servidor de destino",
388
+ "selectJellyfinServer": "Seleccione un servidor Jellyfin o Emby",
389
+ "uploadJellystatBackup": "Subir Jellystat Backup",
390
+ "exportBackupHint": "Exportar una copia de seguridad de la actividad de Jellystat",
391
+ "exportBackupHelp": "En Jellystat, vaya a Configuración → Copia de seguridad → Copia de seguridad de actividades para exportar sus datos.",
392
+ "importOptions": "Importar opciones",
393
+ "enrichMetadata": "Enriquecer con metadatos de medios (recomendado)",
394
+ "enrichMetadataHelp": "Obtiene metadatos adicionales de su servidor de medios para sesiones importadas.",
395
+ "updateExistingRecords": "Actualizar registros existentes con detalles de flujo",
396
+ "updateExistingRecordsHelp": "Los registros previamente importados se actualizarán con datos de calidad de las secuencias.",
276
397
  "pleaseEnterDetails": "Por favor ingrese la URL de Tautulli y la clave API",
398
+ "testingConnection": "Probando conexión...",
277
399
  "pleaseSelectJsonFile": "Por favor, seleccione un archivo JSON",
400
+ "uploadingBackup": "Subiendo copia de seguridad...",
278
401
  "plex": "",
402
+ "jellyfinEmby": "",
403
+ "step1": "",
404
+ "step2": "",
405
+ "apiKeyPlaceholder": "Tu clave API de Tautulli",
406
+ "skipUserNotFoundPlex": "Usuario no encontrado. El usuario de Plex no existe en Tracearr. Sincroniza tu servidor primero para añadir todos los usuarios.",
407
+ "skipDuplicate": "Sesión duplicada — La sesión ya se importó previamente.",
408
+ "skipInProgress": "Sesión en curso — Sesiones activas/incompletas sin un ID de referencia son omitidas.",
409
+ "skipUserNotFoundJellyfin": "Usuario no encontrado: El usuario Jellyfin/Emby no existe en Tracearr. Sincroniza tu servidor primero para añadir todos los usuarios.",
410
+ "skipSyncHint": "Si se omiten muchos registros, asegúrese de haber sincronizado su servidor recientemente en Ajustes → Servidores.",
411
+ "importInProgressPercent": "Importación en progreso ({{percent}}% completado)...",
412
+ "importInProgressGeneric": "Importación en progreso...",
413
+ "startingImport": "Iniciando importación...",
414
+ "connectedFound": "¡Conectado! Encontrados usuarios {{users}} y registros de historial de {{records}}.",
415
+ "playbackReporting": "",
416
+ "playbackReportingDesc": "",
417
+ "checkPlugin": "",
418
+ "checkingPlugin": "",
279
419
  "pluginFound": "",
280
420
  "pluginNotInstalled": "",
281
- "processed": "Procesados",
282
- "recordsMayBeSkipped": "Los registros se pueden omitir si:",
283
- "selectJellyfinServer": "Seleccione un servidor Jellyfin o Emby",
284
- "selectPlexServer": "Seleccione un servidor Plex",
285
- "selectTargetServer": "Seleccionar servidor de destino",
286
421
  "serverTimezone": "",
287
422
  "serverTimezoneHelp": "",
288
- "skipDuplicate": "Sesión duplicada — La sesión ya se importó previamente.",
289
- "skipDuplicatePlugin": "",
290
- "skipInProgress": "Sesión en curso — Sesiones activas/incompletas sin un ID de referencia son omitidas.",
423
+ "importFullRange": "",
424
+ "importFullRangeHelp": "",
425
+ "overlapSkipped": "",
426
+ "duplicates": "",
291
427
  "skipOverlap": "",
292
- "skipSyncHint": "Si se omiten muchos registros, asegúrese de haber sincronizado su servidor recientemente en Ajustes → Servidores.",
293
- "skipUserNotFoundJellyfin": "Usuario no encontrado: El usuario Jellyfin/Emby no existe en Tracearr. Sincroniza tu servidor primero para añadir todos los usuarios.",
294
- "skipUserNotFoundPlex": "Usuario no encontrado. El usuario de Plex no existe en Tracearr. Sincroniza tu servidor primero para añadir todos los usuarios.",
295
- "skipped": "Omitidos",
296
- "startImport": "Iniciar importación",
297
- "startingImport": "Iniciando importación...",
298
- "step1": "",
299
- "step2": "",
300
- "targetServer": "",
301
- "tautulli": "Importar desde Tautulli",
302
- "tautulliUrl": "URL de Tautulli",
303
- "tautulliUrlHelp": "La URL de su instancia de Tautulli.",
304
- "tautulliUrlPlaceholder": "",
305
- "testing": "Comprobando...",
306
- "testingConnection": "Probando conexión...",
307
- "title": "Importar datos",
308
- "updateExistingRecords": "Actualizar registros existentes con detalles de flujo",
309
- "updateExistingRecordsHelp": "Los registros previamente importados se actualizarán con datos de calidad de las secuencias.",
310
- "uploadJellystatBackup": "Subir Jellystat Backup",
311
- "uploadingBackup": "Subiendo copia de seguridad..."
312
- },
313
- "ipWarning": {
314
- "acknowledge": "Entendido",
315
- "message": "Todos los usuarios parecen estar usando la misma dirección IP o IPs de red local. Esto puede afectar a las reglas basadas en ubicación o dirección IP."
316
- },
317
- "jobs": {
318
- "backfill": "Retroceso",
319
- "cleanup": "Limpieza",
320
- "delayed": "retrasado",
321
- "description": "",
322
- "errors": "errores",
323
- "jobHistory": "Historial de tareas",
324
- "jobHistoryDesc": "Ejecuciones de tareas de mantenimiento recientes",
325
- "lastJobCompleted": "Último trabajo completado con éxito",
326
- "lastJobFailed": "Último trabajo fallido",
327
- "mayTakeAWhile": "Esto puede tardar un poco",
328
- "mayTakeAWhileDesc": "Este trabajo puede tardar varios minutos en completarse dependiendo del tamaño de su biblioteca.",
329
- "normalization": "Normalización",
330
- "processed": "procesados",
331
- "queued": "en cola",
332
- "runConfirm": "¿Ejecutar {{name}}?",
333
- "runJob": "Ejecutar Job",
334
- "running": "corriendo",
335
- "runningState": "Ejecutando",
336
- "startJob": "Iniciar trabajo",
337
- "title": "Trabajos de Mantenimiento",
338
- "unchanged": "sin cambios",
339
- "updated": "actualizado",
340
- "waiting": "Esperando"
341
- },
342
- "mobile": {
343
- "addDevice": "Añadir dispositivo",
344
- "connectedOn": "",
345
- "copyToken": "Copiar token",
346
- "deviceName": "Nombre del dispositivo",
347
- "deviceNamePlaceholder": "ej. iPhone 15",
348
- "devicesConnected": "{{current}} de {{max}} dispositivos conectados",
349
- "disable": "Deshabilitar",
350
- "disableMobileAccess": "Desactivar acceso móvil",
351
- "disableMobileAccessConfirm": "Esto desconectará todos los dispositivos móviles y revocará todas las sesiones. Puede rehabilitar el acceso móvil más tarde.",
352
- "done": "Hecho",
353
- "downloadOnAppStore": "Descargar en la App Store",
354
- "enableMobileAccess": "Activar acceso móvil",
355
- "enabling": "Activando...",
356
- "expiresIn": "Caduca en {{time}}",
357
- "externalUrlBanner": "¿Utilizar un proxy inverso o acceder de forma remota? Establezca su",
358
- "externalUrlBannerLink": "URL externa",
359
- "externalUrlBannerSuffix": "para que la aplicación móvil pueda conectarse a tu servidor.",
360
- "externalUrlRequired": "Una URL externa debe configurarse en la Configuración General para que funcione.",
361
- "failedToGenerateToken": "Error al generar el token",
362
- "generateToken": "Generar Token",
363
- "getOnGooglePlay": "Consíguelo en Google Play",
364
- "lastSeen": "",
365
- "mobileAccessDisabled": "Acceso móvil deshabilitado",
366
- "mobileAccessDisabledDesc": "Activa el acceso móvil para permitir que la aplicación móvil Tracearr se conecte a tu servidor.",
367
- "noDevices": "No hay dispositivos vinculados",
368
- "noDevicesDesc": "",
369
- "oneTimePairToken": "Token de un par de tiempo",
370
- "pairDevice": "Vincular dispositivo",
371
- "pairNewDevice": "Emparejar dispositivo nuevo",
372
- "pairNewDeviceDesc": "Escanea el código QR con la aplicación móvil Tracearr o introduce el token manualmente.",
373
- "pendingTokens": "{{count}} tokens de par pendientes",
374
- "removeDevice": "Eliminar dispositivo",
375
- "removeDeviceConfirm": "¿Estás seguro de que quieres eliminar {{deviceName}}? Este dispositivo tendrá que emparejarse de nuevo para volver a conectar.",
376
- "renameDevice": "Renombrar dispositivo",
377
- "renameDeviceDesc": "Introduzca un nombre para identificar este dispositivo en la lista.",
378
- "revokeAll": "Cerrar todas las sesiones",
379
- "revokeAllConfirm": "Esto desconectará todos los dispositivos móviles. Tendrán que emparejar de nuevo para volver a conectar.",
380
- "revokeAllSessions": "Revocar todo",
381
- "scanQrCode": "Escanear código QR",
382
- "title": "App Móvil",
383
- "tokenExpires": "El token expira en {{time}}",
384
- "tokenExpiryNote": "Este token expira en 5 minutos y solo puede ser usado una vez."
428
+ "skipDuplicatePlugin": ""
385
429
  },
386
- "nav": {
387
- "descriptions": {
388
- "api": "",
389
- "appearance": "",
390
- "backup": "",
391
- "behavior": "",
392
- "connections": "",
393
- "destinations": "",
394
- "email": "",
395
- "guest": "",
396
- "import": "",
397
- "jobs": "",
398
- "locale": "",
399
- "mobile": "",
400
- "newsletters": "",
401
- "plexAccounts": "",
402
- "posters": "",
403
- "remote": ""
404
- },
405
- "groups": {
406
- "access": "",
407
- "data": "",
408
- "general": "",
409
- "notifications": "",
410
- "servers": ""
411
- },
412
- "itemLabel": "",
413
- "label": "",
414
- "sections": {
415
- "api": "",
416
- "appearance": "",
417
- "backup": "",
418
- "behavior": "",
419
- "connections": "",
420
- "destinations": "",
421
- "email": "",
422
- "guest": "",
423
- "import": "",
424
- "jobs": "",
425
- "locale": "",
426
- "mobile": "",
427
- "newsletters": "",
428
- "plexAccounts": "",
429
- "posters": "",
430
- "remote": ""
430
+ "plex": {
431
+ "signInWithPlex": "Inicia sesión con Plex",
432
+ "signUpWithPlex": "Registrarse con Plex",
433
+ "selectServer": "Seleccionar Servidor",
434
+ "chooseServer": "Elige qué Plex Media Server quieres monitorizar"
435
+ },
436
+ "account": {
437
+ "createAccount": "Crear cuenta",
438
+ "email": "Correo electrónico",
439
+ "password": "Contraseña",
440
+ "displayName": "Nombre visible",
441
+ "createYourAccount": "Crea tu cuenta para empezar",
442
+ "signInToAccount": "Inicia sesión en tu cuenta",
443
+ "useLocalAccount": "Usar cuenta local"
444
+ },
445
+ "update": {
446
+ "title": "Actualización disponible",
447
+ "releaseNotes": "Notas de la versión",
448
+ "updateCommand": "Comando de actualización",
449
+ "pullInstructions": "Entendido.",
450
+ "stableRelease": "Versión Estable",
451
+ "betaUpdate": "Actualización beta",
452
+ "newVersion": "Nueva versión",
453
+ "versionAvailable": "{{version}} disponible"
454
+ },
455
+ "serverHealth": {
456
+ "unreachable": "{{serverName}} no está disponible",
457
+ "multipleUnreachable": "{{count}} servidores sin conexión: {{serverNames}}"
458
+ },
459
+ "ipWarning": {
460
+ "message": "Todos los usuarios parecen estar usando la misma dirección IP o IPs de red local. Esto puede afectar a las reglas basadas en ubicación o dirección IP.",
461
+ "acknowledge": "Entendido"
462
+ },
463
+ "backup": {
464
+ "title": "Copia de seguridad",
465
+ "backToBackups": "Volver a Copias de Seguridad",
466
+ "description": "Copia de seguridad y restaura tus datos de Tracearr",
467
+ "createBackup": "Crear copia de seguridad",
468
+ "creating": "Creando copia de seguridad...",
469
+ "uploadBackup": "Subir copia de seguridad",
470
+ "uploading": "Subiendo...",
471
+ "databaseSize": "Tamaño actual de la base de datos: {{size}}",
472
+ "freeSpace": "Espacio libre del directorio de copia de seguridad: {{size}}",
473
+ "lowDiskSpace": "Espacio en disco bajo: las copias de seguridad y las restauraciones requieren al menos el doble del tamaño de la base de datos en espacio libre.",
474
+ "backupHistory": "Historial de copia de seguridad",
475
+ "noBackups": "Aún no hay copias de seguridad. Crea tu primera copia de seguridad.",
476
+ "size": "Tamaño",
477
+ "date": "Fecha",
478
+ "type": "Tipo",
479
+ "version": "Versión",
480
+ "actions": "Acciones",
481
+ "rowActions": "",
482
+ "download": "",
483
+ "typeManual": "",
484
+ "typeScheduled": "Planificado",
485
+ "typeUploaded": "Cargado",
486
+ "restoreAction": "Restaurar",
487
+ "deleteConfirmTitle": "Eliminar copia de seguridad",
488
+ "deleteConfirmDescription": "¿Está seguro que desea eliminar esta copia de seguridad? Esta acción no se puede deshacer.",
489
+ "schedule": "Copias de seguridad programadas",
490
+ "scheduleType": "Planificado",
491
+ "scheduleDisabled": "Deshabilitado",
492
+ "scheduleDaily": "Diario",
493
+ "scheduleWeekly": "Semanal",
494
+ "scheduleMonthly": "Mensual",
495
+ "scheduleTime": "Hora ({{timezone}})",
496
+ "scheduleHour": "",
497
+ "scheduleMinute": "",
498
+ "scheduleDayOfWeek": "Día de la semana",
499
+ "scheduleDayOfMonth": "Día del mes",
500
+ "scheduleDayOfMonthHint": "En meses con menos días, la copia de seguridad se ejecuta el último día.",
501
+ "retentionCount": "Mantener Última",
502
+ "retentionSuffix": "copia de seguridad planificadas",
503
+ "daySun": "Domingo",
504
+ "dayMon": "Lunes",
505
+ "dayTue": "Martes",
506
+ "dayWed": "Miércoles",
507
+ "dayThu": "Jueves",
508
+ "dayFri": "Viernes",
509
+ "daySat": "Sábado",
510
+ "restore": {
511
+ "title": "Restaurar copia de seguridad",
512
+ "selectedBackup": "Backup seleccionado",
513
+ "databaseSize": "Tamaño de la Base de Datos",
514
+ "sessions": "Sesiones",
515
+ "users": "Usuarios",
516
+ "servers": "Servidores",
517
+ "automations": "",
518
+ "libraryItems": "Elemento de biblioteca",
519
+ "tables": "Tablas",
520
+ "warning": "Restaurar reemplazará todos los datos existentes. Necesitará volver a iniciar sesión después de que la restauración se complete.",
521
+ "confirmLabel": "Entiendo que esto reemplazará a todos los datos",
522
+ "confirm": "Iniciar restauración",
523
+ "complete": "Restauración completada con éxito. La página se actualizará pronto.",
524
+ "failed": "Restauración fallida",
525
+ "cannotRestore": "La restauración requiere privilegios de superusuario de PostgreSQL. Por favor, asegúrese de que el usuario de la base de datos tiene privilegios de superusuario e inténtelo de nuevo.",
526
+ "pgVersionMismatch": "La copia de seguridad fue creada en PostgreSQL {{backupVersion}}, pero este servidor ejecuta PostgreSQL {{serverVersion}}. Restaurar un volcado desde una versión más reciente de PostgreSQL no es compatible.",
527
+ "tsVersionMismatch": "La copia de seguridad se creó con TimescaleDB {{backupVersion}}, pero este servidor sólo soporta TimescaleDB {{serverVersion}}."
431
528
  },
432
- "selectLabel": ""
529
+ "toast": {
530
+ "backupCreated": "Copia de seguridad creada con éxito",
531
+ "backupCreateFailed": "Error al crear copia de seguridad",
532
+ "backupUploaded": "Copia de seguridad creada con éxito",
533
+ "backupUploadFailed": "Error al subir la copia de seguridad",
534
+ "backupDeleted": "Copia de seguridad eliminada",
535
+ "backupDeleteFailed": "Error al eliminar copia de seguridad",
536
+ "restoreStarted": "Iniciando restauración",
537
+ "restoreStartFailed": "Error al iniciar la restauración",
538
+ "scheduleSaved": "Programa de copia de seguridad guardado",
539
+ "scheduleError": "Error al guardar el programa de copia de seguridad"
540
+ }
433
541
  },
434
542
  "newsletters": {
543
+ "ownerOnly": "",
544
+ "new": "",
545
+ "empty": "",
546
+ "emptyDescription": "",
547
+ "noDestinationTitle": "",
548
+ "noDestinationDescription": "",
549
+ "noDestinationHint": "",
435
550
  "addEmailDestination": "",
436
- "copyOf": "",
551
+ "enabled": "",
552
+ "rowActions": "",
553
+ "duplicate": "",
554
+ "sendNow": "",
555
+ "deleteTitle": "",
556
+ "deleteDescription": "",
557
+ "schedule": {
558
+ "daily": "",
559
+ "weekly": "",
560
+ "monthly": "",
561
+ "cron": "",
562
+ "inZone": ""
563
+ },
564
+ "nextRun": "",
565
+ "noNextRun": "",
566
+ "neverSent": "",
567
+ "lastSend": "",
568
+ "outcome": {
569
+ "rendering": "",
570
+ "sending": "",
571
+ "sent": "",
572
+ "partial": "",
573
+ "failed": "",
574
+ "skipped_empty": ""
575
+ },
437
576
  "counts": {
438
- "albums_one": "",
439
- "albums_other": "",
440
577
  "movies_one": "",
441
578
  "movies_other": "",
442
579
  "shows_one": "",
443
580
  "shows_other": "",
581
+ "albums_one": "",
582
+ "albums_other": "",
444
583
  "watched_one": "",
445
584
  "watched_other": ""
446
585
  },
447
- "deleteDescription": "",
448
- "deleteTitle": "",
449
- "duplicate": "",
586
+ "copyOf": "",
587
+ "richText": {
588
+ "bold": "",
589
+ "italic": "",
590
+ "link": "",
591
+ "bulletList": "",
592
+ "linkHref": "",
593
+ "linkApply": "",
594
+ "counter": ""
595
+ },
450
596
  "editor": {
451
- "actions": {
452
- "more": "",
453
- "preview": "",
454
- "send": "",
455
- "sendHint": "",
456
- "test": "",
457
- "testHint": ""
597
+ "newTitle": "",
598
+ "headerSummary": "",
599
+ "notFound": "",
600
+ "basics": "",
601
+ "tabs": {
602
+ "edit": "",
603
+ "history": ""
604
+ },
605
+ "historyNeedsSave": "",
606
+ "name": "",
607
+ "nameHelp": "",
608
+ "turnOnNow": "",
609
+ "enabledHelp": "",
610
+ "schedule": "",
611
+ "scheduleKind": "",
612
+ "kinds": {
613
+ "daily": "",
614
+ "weekly": "",
615
+ "monthly": "",
616
+ "cron": ""
617
+ },
618
+ "dayOfWeek": "",
619
+ "dayOfMonth": "",
620
+ "dayOfMonthHelp": "",
621
+ "time": "",
622
+ "timezone": "",
623
+ "timezoneHelp": "",
624
+ "cron": "",
625
+ "cronHint": "",
626
+ "dstNote": "",
627
+ "nextRun": "",
628
+ "nextRunPending": "",
629
+ "content": "",
630
+ "windowKind": "",
631
+ "windows": {
632
+ "since_last_send": "",
633
+ "fixed": ""
634
+ },
635
+ "windowHelp": {
636
+ "since_last_send": "",
637
+ "fixed": ""
638
+ },
639
+ "windowSentence": {
640
+ "fallback": "",
641
+ "fallbackLabel": "",
642
+ "fixed": "",
643
+ "fixedAfter": "",
644
+ "fixedLabel": ""
645
+ },
646
+ "windowMax": "",
647
+ "days": "",
648
+ "servers": "",
649
+ "allServers": "",
650
+ "searchServers": "",
651
+ "noServers": "",
652
+ "serversSelected": "",
653
+ "variantsNote": "",
654
+ "serversHelp": "",
655
+ "libraries": "",
656
+ "allLibraries": "",
657
+ "searchLibraries": "",
658
+ "noLibraries": "",
659
+ "librariesSelected": "",
660
+ "librariesHelp": "",
661
+ "clear": "",
662
+ "unknownLibrary": "",
663
+ "removeLibrary": "",
664
+ "sections": {
665
+ "movies": "",
666
+ "shows": "",
667
+ "music": "",
668
+ "mostWatched": "",
669
+ "legend": "",
670
+ "description": "",
671
+ "upTo": "",
672
+ "the": "",
673
+ "units": {
674
+ "movies": "",
675
+ "shows": "",
676
+ "seasonsEach": "",
677
+ "albums": "",
678
+ "mostPlayed": ""
679
+ },
680
+ "labels": {
681
+ "movies": "",
682
+ "shows": "",
683
+ "seasons": "",
684
+ "music": "",
685
+ "mostWatched": ""
686
+ },
687
+ "musicHelp": "",
688
+ "mostWatchedHelp": ""
689
+ },
690
+ "message": "",
691
+ "senderName": "",
692
+ "senderNameHelp": "",
693
+ "senderNameRequiredMulti": "",
694
+ "previewVariant_one": "",
695
+ "previewVariant_other": "",
696
+ "variantHeading": "",
697
+ "subject": "",
698
+ "subjectHelp": "",
699
+ "placeholders": {
700
+ "server_name": "",
701
+ "start_date": "",
702
+ "end_date": "",
703
+ "item_count": ""
704
+ },
705
+ "intro": "",
706
+ "introPlaceholder": "",
707
+ "outro": "",
708
+ "outroPlaceholder": "",
709
+ "save": "",
710
+ "saving": "",
711
+ "unsaved": "",
712
+ "fixFirst": "",
713
+ "sendNeedsSave": "",
714
+ "recipients": {
715
+ "title": "",
716
+ "members": "",
717
+ "membersHelp": "",
718
+ "ownerNote": "",
719
+ "extraTrigger": "",
720
+ "extraHelp": "",
721
+ "pasteAddresses": "",
722
+ "addressLabel": "",
723
+ "nameLabel": "",
724
+ "namePlaceholder": "",
725
+ "removeAddress": "",
726
+ "badAddress": "",
727
+ "loadFailed": "",
728
+ "willReceive": "",
729
+ "excludedCount": "",
730
+ "notIncludable": "",
731
+ "noAddress": "",
732
+ "suppressedCount": "",
733
+ "joinedSinceLastSend": "",
734
+ "newSinceLastSend": "",
735
+ "manage": "",
736
+ "manageHelp": "",
737
+ "searchPlaceholder": "",
738
+ "serverFilter": "",
739
+ "allServers": "",
740
+ "tabs": {
741
+ "receiving": "",
742
+ "excluded": "",
743
+ "noAddress": "",
744
+ "suppressed": ""
745
+ },
746
+ "selectAll": "",
747
+ "selectPerson": "",
748
+ "selectedCount": "",
749
+ "excludeSelected": "",
750
+ "includeSelected": "",
751
+ "noMatches": "",
752
+ "groupsNote": "",
753
+ "noAddressHelp": "",
754
+ "contactEmailFor": "",
755
+ "saveEmail": "",
756
+ "openUserPage": "",
757
+ "unknownMember": "",
758
+ "account": "",
759
+ "fromUsername": "",
760
+ "extraAddress": "",
761
+ "suppressed": "",
762
+ "suppressedHelp": "",
763
+ "exclude": "",
764
+ "excludeAction": "",
765
+ "include": "",
766
+ "includeAction": "",
767
+ "excludedHelp": "",
768
+ "notIncludableHelp": "",
769
+ "excludedAfterSave": "",
770
+ "includedAfterSave": "",
771
+ "reasons": {
772
+ "excluded": "",
773
+ "banned": "",
774
+ "pending": "",
775
+ "noServer": ""
776
+ },
777
+ "emptyTitle": "",
778
+ "emptyDescription": ""
458
779
  },
459
- "allLibraries": "",
460
- "allServers": "",
461
- "basics": "",
462
- "clear": "",
463
- "content": "",
464
- "cron": "",
465
- "cronHint": "",
466
- "dayOfMonth": "",
467
- "dayOfMonthHelp": "",
468
- "dayOfWeek": "",
469
- "days": "",
470
780
  "delivery": {
781
+ "title": "",
471
782
  "destination": "",
472
783
  "destinationHelp": "",
473
- "hostedNeedsUrl": "",
784
+ "pickDestination": "",
785
+ "noDestination": "",
474
786
  "imageMode": "",
475
- "modeHelp": {
787
+ "modes": {
476
788
  "hosted": "",
477
789
  "inline": "",
478
790
  "none": ""
479
791
  },
480
- "modePreviewHint": "",
481
- "modes": {
792
+ "modeHelp": {
482
793
  "hosted": "",
483
794
  "inline": "",
484
795
  "none": ""
485
796
  },
486
- "noDestination": "",
487
- "pickDestination": "",
797
+ "modePreviewHint": "",
798
+ "hostedNeedsUrl": "",
488
799
  "skipWhenEmpty": "",
489
- "skipWhenEmptyHelp": "",
490
- "title": ""
491
- },
492
- "dstNote": "",
493
- "enabledHelp": "",
494
- "fixFirst": "",
495
- "headerSummary": "",
496
- "historyNeedsSave": "",
497
- "intro": "",
498
- "introPlaceholder": "",
499
- "kinds": {
500
- "cron": "",
501
- "daily": "",
502
- "monthly": "",
503
- "weekly": ""
800
+ "skipWhenEmptyHelp": ""
504
801
  },
505
- "libraries": "",
506
- "librariesHelp": "",
507
- "librariesSelected": "",
508
802
  "links": {
509
803
  "tracearr": "",
510
804
  "tracearrNote": ""
511
805
  },
512
- "message": "",
513
- "name": "",
514
- "nameHelp": "",
515
- "newTitle": "",
516
- "nextRun": "",
517
- "nextRunPending": "",
518
- "noLibraries": "",
519
- "noServers": "",
520
- "notFound": "",
521
- "outro": "",
522
- "outroPlaceholder": "",
523
- "placeholders": {
524
- "end_date": "",
525
- "item_count": "",
526
- "server_name": "",
527
- "start_date": ""
528
- },
529
- "preview": {
530
- "countsListed": {
531
- "albums": "",
532
- "movies": "",
533
- "shows": ""
534
- },
535
- "draft": "",
536
- "images": "",
537
- "imagesBlocked": "",
538
- "imagesBlockedNote": "",
539
- "imagesOn": "",
540
- "linksNote": "",
541
- "recipients": "",
542
- "subjectLabel": "",
543
- "title": "",
544
- "variantTab": "",
545
- "variants": "",
546
- "width": "",
547
- "widths": {
548
- "desktop": "",
549
- "phone": ""
550
- },
551
- "window": "",
552
- "windowSince": ""
553
- },
554
- "previewVariant_one": "",
555
- "previewVariant_other": "",
556
806
  "readiness": {
807
+ "title": "",
808
+ "intro": "",
557
809
  "destination": "",
558
- "destinationError": "",
559
810
  "destinationFail": "",
560
811
  "destinationUnknown": "",
561
- "dns": "",
562
- "dnsLink": "",
563
- "emptyVariant": "",
812
+ "destinationError": "",
813
+ "fixDestination": "",
814
+ "fixRecipients": "",
815
+ "fixExternalUrl": "",
564
816
  "externalUrl": "",
565
817
  "externalUrlFail": "",
566
818
  "externalUrlNotHttps": "",
567
- "fixDestination": "",
568
- "fixExternalUrl": "",
569
- "fixRecipients": "",
819
+ "noPublicUrl": "",
820
+ "privatePublicUrl": "",
821
+ "emptyVariant": "",
822
+ "variantsLoadFailed": "",
823
+ "serverSettingsLink": "",
570
824
  "fromDomain": "",
571
825
  "fromDomainFail": "",
572
826
  "fromDomainUnknown": "",
573
- "intro": "",
574
- "noPublicUrl": "",
575
- "privatePublicUrl": "",
576
- "recipientsFail": "",
577
- "recipientsLoadFailed": "",
578
- "recipientsUnknown": "",
579
827
  "recipients_one": "",
580
828
  "recipients_other": "",
581
- "serverSettingsLink": "",
582
- "staleScope": "",
583
- "title": "",
584
- "variantsLoadFailed": ""
829
+ "recipientsFail": "",
830
+ "recipientsChecking": "",
831
+ "recipientsLoadFailed": "",
832
+ "dns": "",
833
+ "dnsLink": ""
585
834
  },
586
- "recipients": {
587
- "account": "",
588
- "addAddress": "",
589
- "addressLabel": "",
590
- "badAddress": "",
591
- "contactEmailFor": "",
592
- "emptyDescription": "",
593
- "emptyTitle": "",
594
- "exclude": "",
595
- "excludeAction": "",
596
- "excludedAfterSave": "",
597
- "excludedCount": "",
598
- "excludedHelp": "",
599
- "extraAddress": "",
600
- "extraAddresses": "",
601
- "extraAddressesHelp": "",
602
- "groupsNote": "",
603
- "include": "",
604
- "includeAction": "",
605
- "includedAfterSave": "",
606
- "loadFailed": "",
607
- "members": "",
608
- "membersHelp": "",
609
- "membersOff": "",
610
- "membersOffSuppressed": "",
611
- "nameLabel": "",
612
- "namePlaceholder": "",
613
- "noAddress": "",
614
- "noAddressHelp": "",
615
- "openUserPage": "",
616
- "ownerNote": "",
617
- "reasons": {
618
- "banned": "",
619
- "pending": ""
620
- },
621
- "removeAddress": "",
622
- "saveEmail": "",
623
- "saveFirst": "",
624
- "saveFirstHelp": "",
625
- "staleScope": "",
626
- "suppressed": "",
627
- "suppressedHeading": "",
628
- "suppressedHelp": "",
629
- "title": "",
630
- "unknownMember": "",
631
- "willReceive": ""
835
+ "actions": {
836
+ "preview": "",
837
+ "test": "",
838
+ "send": "",
839
+ "more": "",
840
+ "testHint": "",
841
+ "sendHint": ""
632
842
  },
633
- "removeLibrary": "",
634
- "save": "",
635
- "saving": "",
636
- "schedule": "",
637
- "scheduleKind": "",
638
- "searchLibraries": "",
639
- "searchServers": "",
640
- "sections": {
641
- "description": "",
642
- "labels": {
643
- "mostWatched": "",
843
+ "preview": {
844
+ "variants": "",
845
+ "variantTab": "",
846
+ "title": "",
847
+ "draft": "",
848
+ "subjectLabel": "",
849
+ "window": "",
850
+ "windowSince": "",
851
+ "countsListed": {
644
852
  "movies": "",
645
- "music": "",
646
- "seasons": "",
647
- "shows": ""
853
+ "shows": "",
854
+ "albums": ""
648
855
  },
649
- "legend": "",
650
- "mostWatched": "",
651
- "mostWatchedHelp": "",
652
- "movies": "",
653
- "music": "",
654
- "musicHelp": "",
655
- "shows": "",
656
- "the": "",
657
- "units": {
658
- "albums": "",
659
- "mostPlayed": "",
660
- "movies": "",
661
- "seasonsEach": "",
662
- "shows": ""
856
+ "recipients": "",
857
+ "width": "",
858
+ "widths": {
859
+ "desktop": "",
860
+ "phone": ""
663
861
  },
664
- "upTo": ""
665
- },
666
- "send": {
667
- "confirm": "",
668
- "nobody": "",
669
- "previewing": "",
670
- "sending": "",
671
- "summary": "",
672
- "title": "",
673
- "trimmed_one": "",
674
- "trimmed_other": ""
675
- },
676
- "sendNeedsSave": "",
677
- "senderName": "",
678
- "senderNameHelp": "",
679
- "senderNameRequiredMulti": "",
680
- "servers": "",
681
- "serversHelp": "",
682
- "serversSelected": "",
683
- "subject": "",
684
- "subjectHelp": "",
685
- "tabs": {
686
- "edit": "",
687
- "history": ""
688
- },
689
- "test": {
690
- "address": "",
691
- "description": "",
692
- "send": "",
693
- "title": "",
694
- "variant": ""
695
- },
696
- "time": "",
697
- "timezone": "",
698
- "timezoneHelp": "",
699
- "turnOnNow": "",
700
- "unknownLibrary": "",
701
- "unsaved": "",
702
- "variantHeading": "",
703
- "variantsNote": "",
704
- "windowHelp": {
705
- "fixed": "",
706
- "since_last_send": ""
707
- },
708
- "windowKind": "",
709
- "windowMax": "",
710
- "windowSentence": {
711
- "fallback": "",
712
- "fallbackLabel": "",
713
- "fixed": "",
714
- "fixedAfter": "",
715
- "fixedLabel": ""
862
+ "images": "",
863
+ "imagesOn": "",
864
+ "imagesBlocked": "",
865
+ "imagesBlockedNote": "",
866
+ "linksNote": ""
716
867
  },
717
- "windows": {
718
- "fixed": "",
719
- "since_last_send": ""
868
+ "test": {
869
+ "title": "",
870
+ "description": "",
871
+ "variant": "",
872
+ "address": "",
873
+ "send": ""
874
+ },
875
+ "send": {
876
+ "title": "",
877
+ "previewing": "",
878
+ "summary": "",
879
+ "nobody": "",
880
+ "trimmed_one": "",
881
+ "trimmed_other": "",
882
+ "confirm": "",
883
+ "sending": ""
720
884
  }
721
885
  },
722
- "empty": "",
723
- "emptyDescription": "",
724
- "enabled": "",
725
886
  "history": {
726
- "attempts": "",
727
887
  "empty": "",
728
888
  "emptyDescription": "",
729
- "finished": "",
730
889
  "loadFailed": "",
731
- "open": "",
732
- "openSnapshot": "",
733
- "openVariantSnapshot": "",
734
- "page": "",
735
- "pruned": "",
890
+ "trigger": {
891
+ "schedule": "",
892
+ "manual": "",
893
+ "test": ""
894
+ },
895
+ "window": "",
736
896
  "recipients": "",
737
897
  "recipientsEmpty": "",
738
- "retryFailed": "",
898
+ "finished": "",
899
+ "open": "",
900
+ "page": "",
739
901
  "sendTitle": "",
740
- "snapshotTitle": "",
741
902
  "status": {
742
- "failed": "",
743
903
  "queued": "",
744
904
  "sent": "",
905
+ "failed": "",
745
906
  "suppressed": "",
746
907
  "unknown": ""
747
908
  },
748
- "trigger": {
749
- "manual": "",
750
- "schedule": "",
751
- "test": ""
752
- },
909
+ "attempts": "",
753
910
  "unknownHelp": "",
911
+ "openSnapshot": "",
754
912
  "variant": "",
755
913
  "variantEmpty": "",
756
- "window": ""
757
- },
758
- "lastSend": "",
759
- "neverSent": "",
760
- "new": "",
761
- "nextRun": "",
762
- "noDestinationDescription": "",
763
- "noDestinationHint": "",
764
- "noDestinationTitle": "",
765
- "noNextRun": "",
766
- "outcome": {
767
- "failed": "",
768
- "partial": "",
769
- "rendering": "",
770
- "sending": "",
771
- "sent": "",
772
- "skipped_empty": ""
773
- },
774
- "ownerOnly": "",
775
- "richText": {
776
- "bold": "",
777
- "bulletList": "",
778
- "counter": "",
779
- "italic": "",
780
- "link": "",
781
- "linkApply": "",
782
- "linkHref": ""
783
- },
784
- "rowActions": "",
785
- "schedule": {
786
- "cron": "",
787
- "daily": "",
788
- "inZone": "",
789
- "monthly": "",
790
- "weekly": ""
791
- },
792
- "sendNow": ""
793
- },
794
- "plex": {
795
- "chooseServer": "Elige qué Plex Media Server quieres monitorizar",
796
- "selectServer": "Seleccionar Servidor",
797
- "signInWithPlex": "Inicia sesión con Plex",
798
- "signUpWithPlex": "Registrarse con Plex"
799
- },
800
- "serverHealth": {
801
- "multipleUnreachable": "{{count}} servidores sin conexión: {{serverNames}}",
802
- "unreachable": "{{serverName}} no está disponible"
914
+ "openVariantSnapshot": "",
915
+ "snapshotTitle": "",
916
+ "pruned": "",
917
+ "retryFailed": ""
918
+ }
803
919
  },
804
- "servers": {
805
- "addServer": "Añadir servidor",
806
- "addServerDialogDescOther": "Conecte un servidor Jellyfin o Emby.",
807
- "addServerDialogDescPlex": "Seleccione un servidor Plex de su cuenta vinculada.",
808
- "added": "Añadido {{date}}",
809
- "allFieldsRequired": "Todos los campos son obligatorios",
810
- "allServersConnected": "Todos los servidores conectados",
811
- "allServersConnectedDesc": "Todos los servidores de esta cuenta ya están conectados.",
812
- "apiKeyHelp": "Encontrado en el panel de control de su servidor de medios bajo claves API o ajustes avanzados.",
813
- "apiKeyHelpEmby": "Encontrar esto en Emby Server → API Keys",
814
- "apiKeyHelpJellyfin": "Encontrar esto en Jellyfin Dashboard → API Keys",
815
- "apiKeyPlaceholder": "Introduzca su clave API",
816
- "checkingConnection": "",
817
- "chooseAccount": "Seleccione una cuenta...",
818
- "connectServer": "Conectar servidor",
819
- "connecting": "Conectando...",
820
- "connectionFailed": "Error de conexión",
821
- "connectionSuccess": "Conexión establecida",
822
- "description": "Administra tus servidores de Plex, Jellyfin, y Emby conectados",
823
- "discoveringConnections": "Descubriendo conexiones...",
824
- "discoveringServers": "Descubriendo servidores Plex disponibles...",
825
- "editServer": "Editar servidor",
826
- "editServerDesc": "Actualizar el nombre del servidor o la URL de conexión.",
827
- "loadingAccounts": "Cargando cuentas enlazadas de Plex...",
828
- "noPlexAccountsLinked": "No hay cuentas Plex vinculadas",
829
- "noPlexAccountsLinkedHint": "Vincula una cuenta de Plex de arriba, luego vuelve a añadir un servidor.",
830
- "noServersConnected": "Sin servidores conectados",
831
- "noServersConnectedHint": "Haga clic en \"Añadir servidor\" para conectar un servidor Jellyfin o Emby",
832
- "plexAccount": "Cuenta de Plex",
833
- "plexServerPlaceholder": "Mi servidor Plex",
834
- "plexServerUrlPlaceholder": "",
835
- "pluginUpdateAvailable": "",
836
- "pluginVersion": "",
837
- "pollingMode": "",
838
- "posterSource": {
839
- "automatic": "",
840
- "description": "",
841
- "emptyHint": "",
842
- "label": "",
843
- "ownerOnly": "",
920
+ "email": {
921
+ "ownerOnly": "",
922
+ "branding": {
844
923
  "title": "",
845
- "titleDesc": ""
924
+ "description": "",
925
+ "logo": {
926
+ "label": "",
927
+ "tracearr": "",
928
+ "none": "",
929
+ "url": ""
930
+ },
931
+ "logoUrl": "",
932
+ "accent": "",
933
+ "accentPicker": "",
934
+ "footerText": "",
935
+ "footerTextHelp": "",
936
+ "postalAddress": "",
937
+ "postalAddressHelp": "",
938
+ "mailto": "",
939
+ "mailtoHelp": "",
940
+ "save": "",
941
+ "saving": ""
846
942
  },
847
- "publicUrl": "",
848
- "publicUrlHint": "",
849
- "realtimeActive": "",
850
- "realtimeDialog": {
851
- "autoDetectNote": "",
852
- "close": "",
853
- "copyUrl": "",
854
- "embyDescription": "",
855
- "embyReleasesUrl": "",
856
- "embyUpdateDescription": "",
857
- "issueBlocked": "",
858
- "issueMalfunctioned": "",
859
- "issueRestartRequired": "",
860
- "jellyfinDescription": "",
861
- "jellyfinRepoUrl": "",
862
- "jellyfinUpdateDescription": "",
863
- "openReleases": "",
864
- "repositoryUrl": "",
943
+ "suppressions": {
865
944
  "title": "",
866
- "updateTitle": ""
867
- },
868
- "realtimeError": "",
869
- "removeServer": "Eliminar servidor",
870
- "removeServerConfirm": "¿Está seguro que desea eliminar este servidor? Se conservarán todos los datos de sesión asociados, pero no podrás supervisar las nuevas sesiones desde este servidor.",
871
- "reorder": "",
872
- "selectAccountHelp": "Seleccione desde qué cuenta de Plex descubrir los servidores.",
873
- "selectPlexAccount": "Seleccionar cuenta de Plex",
874
- "serverColor": "Color del servidor",
875
- "serverColorDesc": "Utilizado para la atribución visual en la vista multi-servidor",
876
- "serverName": "Nombre del servidor",
877
- "serverNamePlaceholder": "Mi servidor multimedia",
878
- "serverType": "Tipo de servidor",
879
- "serverUrl": "URL del servidor",
880
- "serverUrlHelp": "Directa la URL a tu servidor Jellyfin o Emby. Usa IP:port para mayor fiabilidad.",
881
- "serverUrlHelpEmby": "La URL donde tu servidor Emby es accesible",
882
- "serverUrlHelpJellyfin": "La URL donde tu servidor Jellyfin es accesible",
883
- "serverUrlPlaceholder": "",
884
- "setupRealtime": "",
885
- "syncInterval": "Intervalo de sincronización",
886
- "testConnection": "Probar conexión",
887
- "title": "Servidores conectados",
888
- "updateHint": "O haga clic en Actualizar abajo para guardar sólo el cambio de nombre.",
889
- "updating": "Actualizando...",
890
- "version": {
891
- "installed": "",
892
- "upToDate": "",
893
- "updateAvailable": ""
945
+ "globalNote": "",
946
+ "empty": "",
947
+ "emptyDescription": "",
948
+ "add": "",
949
+ "addTitle": "",
950
+ "addDescription": "",
951
+ "address": "",
952
+ "addConfirm": "",
953
+ "reason": {
954
+ "unsubscribed": "",
955
+ "manual": ""
956
+ },
957
+ "openSource": "",
958
+ "remove": "",
959
+ "removeTitle": "",
960
+ "removeDescription": ""
894
961
  }
895
962
  },
896
963
  "shared": {
897
964
  "timezone": {
898
- "empty": "",
899
- "other": "",
900
965
  "placeholder": "",
901
- "search": ""
966
+ "search": "",
967
+ "empty": "",
968
+ "other": ""
902
969
  }
903
970
  },
904
- "tailscale": {
905
- "authorize": "Autorizar en Tailscale",
906
- "awaitingAuth": "Esperando autorización...",
907
- "connected": "Tailscale conectado. Tu instancia de Tracearr está disponible en la tailnet.",
908
- "description": "",
909
- "disable": "Desactivar Tailscale",
910
- "disableConfirmDescription": "Esto desconectará Tracearr de tu tailnet. Puedes volver a activarlo sin necesidad de re-autorizar.",
911
- "disableConfirmTitle": "¿Desactivar Tailscale?",
912
- "disabledDescription": "Activa Tailscale para añadir Tracearr a tu tailnet privada. Sin necesidad de abrir puertos ni configurar proxy inverso.",
913
- "dnsName": "Nombre DNS",
914
- "enable": "Activar Tailscale",
915
- "exitNodeNone": "Ninguno",
916
- "exitNodeOffline": "(sin conexión)",
917
- "hideLogs": "Ocultar registros",
918
- "hostname": "Nombre de host",
919
- "hostnameHint": "Nombre personalizado opcional para este dispositivo en tu tailnet. Solo letras, números y guiones.",
920
- "hostnameLabel": "Nombre de host del dispositivo",
921
- "noLogs": "No hay registros disponibles.",
922
- "notAvailable": "Binario de Tailscale no encontrado. Esta función solo está disponible con la imagen Docker oficial.",
923
- "resetConfirmDescription": "Esto desconectará Tracearr de tu tailnet y eliminará la identidad del dispositivo. Tendrás que reautorizar si vuelves a activarlo.",
924
- "resetConfirmTitle": "¿Restablecer Tailscale?",
925
- "showLogs": "Mostrar registros",
926
- "starting": "Iniciando Tailscale...",
927
- "stopping": "Deteniendo Tailscale...",
928
- "tailnetUrl": "",
929
- "title": "",
930
- "toast": {
931
- "disableFailed": "Error al desactivar Tailscale",
932
- "disabled": "Tailscale desactivado.",
933
- "enableFailed": "Error al activar Tailscale",
934
- "exitNodeFailed": "Error al configurar el nodo de salida",
935
- "exitNodeSet": "Nodo de salida actualizado.",
936
- "reset": "Tailscale restablecido.",
937
- "resetFailed": "Error al restablecer Tailscale"
971
+ "requests": {
972
+ "label": "",
973
+ "link": "",
974
+ "unlink": "",
975
+ "syncNow": "",
976
+ "enable": "",
977
+ "disable": "",
978
+ "paused": "",
979
+ "menuLabel": "",
980
+ "syncedAgo": "",
981
+ "neverSynced": "",
982
+ "counts": {
983
+ "requests_one": "",
984
+ "requests_other": "",
985
+ "unmatchedMedia_one": "",
986
+ "unmatchedMedia_other": "",
987
+ "unmatchedUsers_one": "",
988
+ "unmatchedUsers_other": ""
938
989
  },
939
- "unknownError": "Se ha producido un error desconocido."
940
- },
941
- "title": "Ajustes",
942
- "update": {
943
- "betaUpdate": "Actualización beta",
944
- "newVersion": "Nueva versión",
945
- "pullInstructions": "Entendido.",
946
- "releaseNotes": "Notas de la versión",
947
- "stableRelease": "Versión Estable",
948
- "title": "Actualización disponible",
949
- "updateCommand": "Comando de actualización",
950
- "versionAvailable": "{{version}} disponible"
990
+ "needsKey": "",
991
+ "lastError": "",
992
+ "lastErrorNoTime": "",
993
+ "dialog": {
994
+ "titleLink": "",
995
+ "titleEdit": "",
996
+ "description": "",
997
+ "url": "",
998
+ "apiKey": "",
999
+ "apiKeyHint": "",
1000
+ "apiKeyKeep": "",
1001
+ "showKey": "",
1002
+ "hideKey": "",
1003
+ "test": "",
1004
+ "testing": "",
1005
+ "save": "",
1006
+ "saveHint": "",
1007
+ "match": "",
1008
+ "mismatch": "",
1009
+ "mismatchIds": "",
1010
+ "mismatchOther": ""
1011
+ },
1012
+ "confirmUnlink": {
1013
+ "title": "",
1014
+ "body": ""
1015
+ },
1016
+ "toast": {
1017
+ "saved": "",
1018
+ "removed": "",
1019
+ "syncStarted": "",
1020
+ "failed": ""
1021
+ }
951
1022
  }
952
1023
  }