@tracearr/translations 2.3.0-beta.5 → 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 (309) hide show
  1. package/dist/config.d.ts +2 -0
  2. package/dist/config.d.ts.map +1 -1
  3. package/dist/config.mobile.d.ts +2 -0
  4. package/dist/config.mobile.d.ts.map +1 -1
  5. package/dist/locales/af-ZA/common.json +282 -282
  6. package/dist/locales/af-ZA/nav.json +21 -21
  7. package/dist/locales/af-ZA/notifications.json +243 -243
  8. package/dist/locales/af-ZA/pages.json +1766 -1766
  9. package/dist/locales/af-ZA/settings.json +881 -880
  10. package/dist/locales/ar-SA/common.json +282 -282
  11. package/dist/locales/ar-SA/nav.json +21 -21
  12. package/dist/locales/ar-SA/notifications.json +246 -246
  13. package/dist/locales/ar-SA/pages.json +1772 -1772
  14. package/dist/locales/ar-SA/settings.json +883 -882
  15. package/dist/locales/ca-ES/common.json +282 -282
  16. package/dist/locales/ca-ES/nav.json +21 -21
  17. package/dist/locales/ca-ES/notifications.json +243 -243
  18. package/dist/locales/ca-ES/pages.json +1770 -1770
  19. package/dist/locales/ca-ES/settings.json +882 -881
  20. package/dist/locales/cs-CZ/common.json +282 -282
  21. package/dist/locales/cs-CZ/nav.json +21 -21
  22. package/dist/locales/cs-CZ/notifications.json +246 -246
  23. package/dist/locales/cs-CZ/pages.json +1772 -1772
  24. package/dist/locales/cs-CZ/settings.json +883 -882
  25. package/dist/locales/da-DK/common.json +282 -282
  26. package/dist/locales/da-DK/nav.json +21 -21
  27. package/dist/locales/da-DK/notifications.json +246 -246
  28. package/dist/locales/da-DK/pages.json +1772 -1772
  29. package/dist/locales/da-DK/settings.json +883 -882
  30. package/dist/locales/de-DE/common.json +282 -282
  31. package/dist/locales/de-DE/nav.json +21 -21
  32. package/dist/locales/de-DE/notifications.json +246 -246
  33. package/dist/locales/de-DE/pages.json +1777 -1777
  34. package/dist/locales/de-DE/settings.json +882 -881
  35. package/dist/locales/el-GR/common.json +282 -282
  36. package/dist/locales/el-GR/nav.json +21 -21
  37. package/dist/locales/el-GR/notifications.json +246 -246
  38. package/dist/locales/el-GR/pages.json +1772 -1772
  39. package/dist/locales/el-GR/settings.json +883 -882
  40. package/dist/locales/en/settings.json +2 -1
  41. package/dist/locales/es-ES/common.json +282 -282
  42. package/dist/locales/es-ES/nav.json +21 -21
  43. package/dist/locales/es-ES/notifications.json +246 -246
  44. package/dist/locales/es-ES/pages.json +1776 -1776
  45. package/dist/locales/es-ES/settings.json +883 -882
  46. package/dist/locales/fi-FI/common.json +282 -282
  47. package/dist/locales/fi-FI/nav.json +21 -21
  48. package/dist/locales/fi-FI/notifications.json +246 -246
  49. package/dist/locales/fi-FI/pages.json +1773 -1773
  50. package/dist/locales/fi-FI/settings.json +883 -882
  51. package/dist/locales/fr-FR/common.json +282 -282
  52. package/dist/locales/fr-FR/nav.json +21 -21
  53. package/dist/locales/fr-FR/notifications.json +246 -246
  54. package/dist/locales/fr-FR/pages.json +1802 -1802
  55. package/dist/locales/fr-FR/settings.json +886 -885
  56. package/dist/locales/he-IL/common.json +282 -282
  57. package/dist/locales/he-IL/nav.json +21 -21
  58. package/dist/locales/he-IL/notifications.json +243 -243
  59. package/dist/locales/he-IL/pages.json +1766 -1766
  60. package/dist/locales/he-IL/settings.json +881 -880
  61. package/dist/locales/hu-HU/common.json +282 -282
  62. package/dist/locales/hu-HU/nav.json +21 -21
  63. package/dist/locales/hu-HU/notifications.json +243 -243
  64. package/dist/locales/hu-HU/pages.json +1766 -1766
  65. package/dist/locales/hu-HU/settings.json +881 -880
  66. package/dist/locales/it-IT/common.json +282 -282
  67. package/dist/locales/it-IT/nav.json +21 -21
  68. package/dist/locales/it-IT/notifications.json +246 -246
  69. package/dist/locales/it-IT/pages.json +1773 -1773
  70. package/dist/locales/it-IT/settings.json +882 -881
  71. package/dist/locales/ja-JP/common.json +282 -282
  72. package/dist/locales/ja-JP/nav.json +21 -21
  73. package/dist/locales/ja-JP/notifications.json +246 -246
  74. package/dist/locales/ja-JP/pages.json +1772 -1772
  75. package/dist/locales/ja-JP/settings.json +883 -882
  76. package/dist/locales/ko-KR/common.json +282 -282
  77. package/dist/locales/ko-KR/nav.json +21 -21
  78. package/dist/locales/ko-KR/notifications.json +246 -246
  79. package/dist/locales/ko-KR/pages.json +1815 -1815
  80. package/dist/locales/ko-KR/settings.json +886 -885
  81. package/dist/locales/nl-NL/common.json +282 -282
  82. package/dist/locales/nl-NL/nav.json +21 -21
  83. package/dist/locales/nl-NL/notifications.json +246 -246
  84. package/dist/locales/nl-NL/pages.json +1803 -1803
  85. package/dist/locales/nl-NL/settings.json +885 -884
  86. package/dist/locales/no-NO/common.json +282 -282
  87. package/dist/locales/no-NO/nav.json +21 -21
  88. package/dist/locales/no-NO/notifications.json +246 -246
  89. package/dist/locales/no-NO/pages.json +1772 -1772
  90. package/dist/locales/no-NO/settings.json +883 -882
  91. package/dist/locales/pl-PL/common.json +282 -282
  92. package/dist/locales/pl-PL/nav.json +21 -21
  93. package/dist/locales/pl-PL/notifications.json +246 -246
  94. package/dist/locales/pl-PL/pages.json +1772 -1772
  95. package/dist/locales/pl-PL/settings.json +883 -882
  96. package/dist/locales/pt-BR/common.json +282 -282
  97. package/dist/locales/pt-BR/nav.json +21 -21
  98. package/dist/locales/pt-BR/notifications.json +246 -246
  99. package/dist/locales/pt-BR/pages.json +1774 -1774
  100. package/dist/locales/pt-BR/settings.json +883 -882
  101. package/dist/locales/pt-PT/common.json +282 -282
  102. package/dist/locales/pt-PT/nav.json +21 -21
  103. package/dist/locales/pt-PT/notifications.json +246 -246
  104. package/dist/locales/pt-PT/pages.json +1773 -1773
  105. package/dist/locales/pt-PT/settings.json +883 -882
  106. package/dist/locales/ro-RO/common.json +282 -282
  107. package/dist/locales/ro-RO/nav.json +21 -21
  108. package/dist/locales/ro-RO/notifications.json +246 -246
  109. package/dist/locales/ro-RO/pages.json +1773 -1773
  110. package/dist/locales/ro-RO/settings.json +883 -882
  111. package/dist/locales/ru-RU/common.json +282 -282
  112. package/dist/locales/ru-RU/nav.json +21 -21
  113. package/dist/locales/ru-RU/notifications.json +246 -246
  114. package/dist/locales/ru-RU/pages.json +1772 -1772
  115. package/dist/locales/ru-RU/settings.json +883 -882
  116. package/dist/locales/sr-SP/common.json +282 -282
  117. package/dist/locales/sr-SP/nav.json +21 -21
  118. package/dist/locales/sr-SP/notifications.json +243 -243
  119. package/dist/locales/sr-SP/pages.json +1766 -1766
  120. package/dist/locales/sr-SP/settings.json +881 -880
  121. package/dist/locales/sv-SE/common.json +282 -282
  122. package/dist/locales/sv-SE/nav.json +21 -21
  123. package/dist/locales/sv-SE/notifications.json +246 -246
  124. package/dist/locales/sv-SE/pages.json +1773 -1773
  125. package/dist/locales/sv-SE/settings.json +883 -882
  126. package/dist/locales/tr-TR/common.json +282 -282
  127. package/dist/locales/tr-TR/nav.json +21 -21
  128. package/dist/locales/tr-TR/notifications.json +243 -243
  129. package/dist/locales/tr-TR/pages.json +1766 -1766
  130. package/dist/locales/tr-TR/settings.json +881 -880
  131. package/dist/locales/uk-UA/common.json +282 -282
  132. package/dist/locales/uk-UA/nav.json +21 -21
  133. package/dist/locales/uk-UA/notifications.json +246 -246
  134. package/dist/locales/uk-UA/pages.json +1776 -1776
  135. package/dist/locales/uk-UA/settings.json +886 -885
  136. package/dist/locales/vi-VN/common.json +282 -282
  137. package/dist/locales/vi-VN/nav.json +21 -21
  138. package/dist/locales/vi-VN/notifications.json +243 -243
  139. package/dist/locales/vi-VN/pages.json +1766 -1766
  140. package/dist/locales/vi-VN/settings.json +881 -880
  141. package/dist/locales/zh-CN/common.json +282 -282
  142. package/dist/locales/zh-CN/nav.json +21 -21
  143. package/dist/locales/zh-CN/notifications.json +246 -246
  144. package/dist/locales/zh-CN/pages.json +1802 -1802
  145. package/dist/locales/zh-CN/settings.json +886 -885
  146. package/dist/locales/zh-TW/common.json +282 -282
  147. package/dist/locales/zh-TW/nav.json +21 -21
  148. package/dist/locales/zh-TW/notifications.json +246 -246
  149. package/dist/locales/zh-TW/pages.json +1769 -1769
  150. package/dist/locales/zh-TW/settings.json +884 -883
  151. package/package.json +2 -2
  152. package/src/locales/af-ZA/common.json +282 -282
  153. package/src/locales/af-ZA/nav.json +21 -21
  154. package/src/locales/af-ZA/notifications.json +243 -243
  155. package/src/locales/af-ZA/pages.json +1766 -1766
  156. package/src/locales/af-ZA/settings.json +881 -880
  157. package/src/locales/ar-SA/common.json +282 -282
  158. package/src/locales/ar-SA/nav.json +21 -21
  159. package/src/locales/ar-SA/notifications.json +246 -246
  160. package/src/locales/ar-SA/pages.json +1772 -1772
  161. package/src/locales/ar-SA/settings.json +883 -882
  162. package/src/locales/ca-ES/common.json +282 -282
  163. package/src/locales/ca-ES/nav.json +21 -21
  164. package/src/locales/ca-ES/notifications.json +243 -243
  165. package/src/locales/ca-ES/pages.json +1770 -1770
  166. package/src/locales/ca-ES/settings.json +882 -881
  167. package/src/locales/cs-CZ/common.json +282 -282
  168. package/src/locales/cs-CZ/nav.json +21 -21
  169. package/src/locales/cs-CZ/notifications.json +246 -246
  170. package/src/locales/cs-CZ/pages.json +1772 -1772
  171. package/src/locales/cs-CZ/settings.json +883 -882
  172. package/src/locales/da-DK/common.json +282 -282
  173. package/src/locales/da-DK/nav.json +21 -21
  174. package/src/locales/da-DK/notifications.json +246 -246
  175. package/src/locales/da-DK/pages.json +1772 -1772
  176. package/src/locales/da-DK/settings.json +883 -882
  177. package/src/locales/de-DE/common.json +282 -282
  178. package/src/locales/de-DE/nav.json +21 -21
  179. package/src/locales/de-DE/notifications.json +246 -246
  180. package/src/locales/de-DE/pages.json +1777 -1777
  181. package/src/locales/de-DE/settings.json +882 -881
  182. package/src/locales/el-GR/common.json +282 -282
  183. package/src/locales/el-GR/nav.json +21 -21
  184. package/src/locales/el-GR/notifications.json +246 -246
  185. package/src/locales/el-GR/pages.json +1772 -1772
  186. package/src/locales/el-GR/settings.json +883 -882
  187. package/src/locales/en/settings.json +2 -1
  188. package/src/locales/es-ES/common.json +282 -282
  189. package/src/locales/es-ES/nav.json +21 -21
  190. package/src/locales/es-ES/notifications.json +246 -246
  191. package/src/locales/es-ES/pages.json +1776 -1776
  192. package/src/locales/es-ES/settings.json +883 -882
  193. package/src/locales/fi-FI/common.json +282 -282
  194. package/src/locales/fi-FI/nav.json +21 -21
  195. package/src/locales/fi-FI/notifications.json +246 -246
  196. package/src/locales/fi-FI/pages.json +1773 -1773
  197. package/src/locales/fi-FI/settings.json +883 -882
  198. package/src/locales/fr-FR/common.json +282 -282
  199. package/src/locales/fr-FR/nav.json +21 -21
  200. package/src/locales/fr-FR/notifications.json +246 -246
  201. package/src/locales/fr-FR/pages.json +1802 -1802
  202. package/src/locales/fr-FR/settings.json +886 -885
  203. package/src/locales/he-IL/common.json +282 -282
  204. package/src/locales/he-IL/nav.json +21 -21
  205. package/src/locales/he-IL/notifications.json +243 -243
  206. package/src/locales/he-IL/pages.json +1766 -1766
  207. package/src/locales/he-IL/settings.json +881 -880
  208. package/src/locales/hu-HU/common.json +282 -282
  209. package/src/locales/hu-HU/nav.json +21 -21
  210. package/src/locales/hu-HU/notifications.json +243 -243
  211. package/src/locales/hu-HU/pages.json +1766 -1766
  212. package/src/locales/hu-HU/settings.json +881 -880
  213. package/src/locales/it-IT/common.json +282 -282
  214. package/src/locales/it-IT/nav.json +21 -21
  215. package/src/locales/it-IT/notifications.json +246 -246
  216. package/src/locales/it-IT/pages.json +1773 -1773
  217. package/src/locales/it-IT/settings.json +882 -881
  218. package/src/locales/ja-JP/common.json +282 -282
  219. package/src/locales/ja-JP/nav.json +21 -21
  220. package/src/locales/ja-JP/notifications.json +246 -246
  221. package/src/locales/ja-JP/pages.json +1772 -1772
  222. package/src/locales/ja-JP/settings.json +883 -882
  223. package/src/locales/ko-KR/common.json +282 -282
  224. package/src/locales/ko-KR/nav.json +21 -21
  225. package/src/locales/ko-KR/notifications.json +246 -246
  226. package/src/locales/ko-KR/pages.json +1815 -1815
  227. package/src/locales/ko-KR/settings.json +886 -885
  228. package/src/locales/nl-NL/common.json +282 -282
  229. package/src/locales/nl-NL/nav.json +21 -21
  230. package/src/locales/nl-NL/notifications.json +246 -246
  231. package/src/locales/nl-NL/pages.json +1803 -1803
  232. package/src/locales/nl-NL/settings.json +885 -884
  233. package/src/locales/no-NO/common.json +282 -282
  234. package/src/locales/no-NO/nav.json +21 -21
  235. package/src/locales/no-NO/notifications.json +246 -246
  236. package/src/locales/no-NO/pages.json +1772 -1772
  237. package/src/locales/no-NO/settings.json +883 -882
  238. package/src/locales/pl-PL/common.json +282 -282
  239. package/src/locales/pl-PL/nav.json +21 -21
  240. package/src/locales/pl-PL/notifications.json +246 -246
  241. package/src/locales/pl-PL/pages.json +1772 -1772
  242. package/src/locales/pl-PL/settings.json +883 -882
  243. package/src/locales/pt-BR/common.json +282 -282
  244. package/src/locales/pt-BR/nav.json +21 -21
  245. package/src/locales/pt-BR/notifications.json +246 -246
  246. package/src/locales/pt-BR/pages.json +1774 -1774
  247. package/src/locales/pt-BR/settings.json +883 -882
  248. package/src/locales/pt-PT/common.json +282 -282
  249. package/src/locales/pt-PT/nav.json +21 -21
  250. package/src/locales/pt-PT/notifications.json +246 -246
  251. package/src/locales/pt-PT/pages.json +1773 -1773
  252. package/src/locales/pt-PT/settings.json +883 -882
  253. package/src/locales/ro-RO/common.json +282 -282
  254. package/src/locales/ro-RO/nav.json +21 -21
  255. package/src/locales/ro-RO/notifications.json +246 -246
  256. package/src/locales/ro-RO/pages.json +1773 -1773
  257. package/src/locales/ro-RO/settings.json +883 -882
  258. package/src/locales/ru-RU/common.json +282 -282
  259. package/src/locales/ru-RU/nav.json +21 -21
  260. package/src/locales/ru-RU/notifications.json +246 -246
  261. package/src/locales/ru-RU/pages.json +1772 -1772
  262. package/src/locales/ru-RU/settings.json +883 -882
  263. package/src/locales/sr-SP/common.json +282 -282
  264. package/src/locales/sr-SP/nav.json +21 -21
  265. package/src/locales/sr-SP/notifications.json +243 -243
  266. package/src/locales/sr-SP/pages.json +1766 -1766
  267. package/src/locales/sr-SP/settings.json +881 -880
  268. package/src/locales/sv-SE/common.json +282 -282
  269. package/src/locales/sv-SE/nav.json +21 -21
  270. package/src/locales/sv-SE/notifications.json +246 -246
  271. package/src/locales/sv-SE/pages.json +1773 -1773
  272. package/src/locales/sv-SE/settings.json +883 -882
  273. package/src/locales/tr-TR/common.json +282 -282
  274. package/src/locales/tr-TR/nav.json +21 -21
  275. package/src/locales/tr-TR/notifications.json +243 -243
  276. package/src/locales/tr-TR/pages.json +1766 -1766
  277. package/src/locales/tr-TR/settings.json +881 -880
  278. package/src/locales/uk-UA/common.json +282 -282
  279. package/src/locales/uk-UA/nav.json +21 -21
  280. package/src/locales/uk-UA/notifications.json +246 -246
  281. package/src/locales/uk-UA/pages.json +1776 -1776
  282. package/src/locales/uk-UA/settings.json +886 -885
  283. package/src/locales/vi-VN/common.json +282 -282
  284. package/src/locales/vi-VN/nav.json +21 -21
  285. package/src/locales/vi-VN/notifications.json +243 -243
  286. package/src/locales/vi-VN/pages.json +1766 -1766
  287. package/src/locales/vi-VN/settings.json +881 -880
  288. package/src/locales/zh-CN/common.json +282 -282
  289. package/src/locales/zh-CN/nav.json +21 -21
  290. package/src/locales/zh-CN/notifications.json +246 -246
  291. package/src/locales/zh-CN/pages.json +1802 -1802
  292. package/src/locales/zh-CN/settings.json +886 -885
  293. package/src/locales/zh-TW/common.json +282 -282
  294. package/src/locales/zh-TW/nav.json +21 -21
  295. package/src/locales/zh-TW/notifications.json +246 -246
  296. package/src/locales/zh-TW/pages.json +1769 -1769
  297. package/src/locales/zh-TW/settings.json +884 -883
  298. package/dist/locales/en-US/common.json +0 -342
  299. package/dist/locales/en-US/mobile.json +0 -178
  300. package/dist/locales/en-US/nav.json +0 -33
  301. package/dist/locales/en-US/notifications.json +0 -303
  302. package/dist/locales/en-US/pages.json +0 -2297
  303. package/dist/locales/en-US/settings.json +0 -1022
  304. package/src/locales/en-US/common.json +0 -342
  305. package/src/locales/en-US/mobile.json +0 -178
  306. package/src/locales/en-US/nav.json +0 -33
  307. package/src/locales/en-US/notifications.json +0 -303
  308. package/src/locales/en-US/pages.json +0 -2297
  309. package/src/locales/en-US/settings.json +0 -1022
@@ -1,825 +1,984 @@
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",
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.",
397
+ "pleaseEnterDetails": "Por favor ingrese la URL de Tautulli y la clave API",
398
+ "testingConnection": "Probando conexión...",
399
+ "pleaseSelectJsonFile": "Por favor, seleccione un archivo JSON",
400
+ "uploadingBackup": "Subiendo copia de seguridad...",
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}}.",
274
415
  "playbackReporting": "",
275
416
  "playbackReportingDesc": "",
276
- "pleaseEnterDetails": "Por favor ingrese la URL de Tautulli y la clave API",
277
- "pleaseSelectJsonFile": "Por favor, seleccione un archivo JSON",
278
- "plex": "",
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..."
428
+ "skipDuplicatePlugin": ""
312
429
  },
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."
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"
316
435
  },
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"
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"
341
444
  },
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."
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"
385
454
  },
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": ""
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}}."
404
528
  },
405
- "groups": {
406
- "access": "",
407
- "data": "",
408
- "general": "",
409
- "notifications": "",
410
- "servers": ""
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
+ }
541
+ },
542
+ "newsletters": {
543
+ "ownerOnly": "",
544
+ "new": "",
545
+ "empty": "",
546
+ "emptyDescription": "",
547
+ "noDestinationTitle": "",
548
+ "noDestinationDescription": "",
549
+ "noDestinationHint": "",
550
+ "addEmailDestination": "",
551
+ "enabled": "",
552
+ "rowActions": "",
553
+ "duplicate": "",
554
+ "sendNow": "",
555
+ "deleteTitle": "",
556
+ "deleteDescription": "",
557
+ "schedule": {
558
+ "daily": "",
559
+ "weekly": "",
560
+ "monthly": "",
561
+ "cron": "",
562
+ "inZone": ""
411
563
  },
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": ""
564
+ "nextRun": "",
565
+ "noNextRun": "",
566
+ "neverSent": "",
567
+ "lastSend": "",
568
+ "outcome": {
569
+ "rendering": "",
570
+ "sending": "",
571
+ "sent": "",
572
+ "partial": "",
573
+ "failed": "",
574
+ "skipped_empty": ""
431
575
  },
432
- "selectLabel": ""
433
- },
434
- "newsletters": {
435
- "addEmailDestination": "",
436
- "copyOf": "",
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": ""
458
- },
459
- "allLibraries": "",
460
- "allServers": "",
597
+ "newTitle": "",
598
+ "headerSummary": "",
599
+ "notFound": "",
461
600
  "basics": "",
462
- "clear": "",
463
- "content": "",
464
- "cron": "",
465
- "cronHint": "",
466
- "dayOfMonth": "",
467
- "dayOfMonthHelp": "",
468
- "dayOfWeek": "",
469
- "days": "",
470
- "delivery": {
471
- "destination": "",
472
- "destinationHelp": "",
473
- "hostedNeedsUrl": "",
474
- "imageMode": "",
475
- "modeHelp": {
476
- "hosted": "",
477
- "inline": "",
478
- "none": ""
479
- },
480
- "modePreviewHint": "",
481
- "modes": {
482
- "hosted": "",
483
- "inline": "",
484
- "none": ""
485
- },
486
- "noDestination": "",
487
- "pickDestination": "",
488
- "skipWhenEmpty": "",
489
- "skipWhenEmptyHelp": "",
490
- "title": ""
601
+ "tabs": {
602
+ "edit": "",
603
+ "history": ""
491
604
  },
492
- "dstNote": "",
493
- "enabledHelp": "",
494
- "fixFirst": "",
495
- "headerSummary": "",
496
605
  "historyNeedsSave": "",
497
- "intro": "",
498
- "introPlaceholder": "",
606
+ "name": "",
607
+ "nameHelp": "",
608
+ "turnOnNow": "",
609
+ "enabledHelp": "",
610
+ "schedule": "",
611
+ "scheduleKind": "",
499
612
  "kinds": {
500
- "cron": "",
501
613
  "daily": "",
614
+ "weekly": "",
502
615
  "monthly": "",
503
- "weekly": ""
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": ""
504
645
  },
646
+ "windowMax": "",
647
+ "days": "",
648
+ "servers": "",
649
+ "allServers": "",
650
+ "searchServers": "",
651
+ "noServers": "",
652
+ "serversSelected": "",
653
+ "variantsNote": "",
654
+ "serversHelp": "",
505
655
  "libraries": "",
506
- "librariesHelp": "",
656
+ "allLibraries": "",
657
+ "searchLibraries": "",
658
+ "noLibraries": "",
507
659
  "librariesSelected": "",
508
- "links": {
509
- "tracearr": "",
510
- "tracearrNote": ""
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": ""
511
689
  },
512
690
  "message": "",
513
- "name": "",
514
- "nameHelp": "",
515
- "newTitle": "",
516
- "nextRun": "",
517
- "nextRunPending": "",
518
- "noLibraries": "",
519
- "noServers": "",
520
- "notFound": "",
521
- "outro": "",
522
- "outroPlaceholder": "",
691
+ "senderName": "",
692
+ "senderNameHelp": "",
693
+ "senderNameRequiredMulti": "",
694
+ "previewVariant_one": "",
695
+ "previewVariant_other": "",
696
+ "variantHeading": "",
697
+ "subject": "",
698
+ "subjectHelp": "",
523
699
  "placeholders": {
524
- "end_date": "",
525
- "item_count": "",
526
700
  "server_name": "",
527
- "start_date": ""
701
+ "start_date": "",
702
+ "end_date": "",
703
+ "item_count": ""
528
704
  },
529
- "preview": {
530
- "countsListed": {
531
- "albums": "",
532
- "movies": "",
533
- "shows": ""
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": ""
534
745
  },
535
- "draft": "",
536
- "images": "",
537
- "imagesBlocked": "",
538
- "imagesBlockedNote": "",
539
- "imagesOn": "",
540
- "linksNote": "",
541
- "recipients": "",
542
- "subjectLabel": "",
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": ""
779
+ },
780
+ "delivery": {
543
781
  "title": "",
544
- "variantTab": "",
545
- "variants": "",
546
- "width": "",
547
- "widths": {
548
- "desktop": "",
549
- "phone": ""
782
+ "destination": "",
783
+ "destinationHelp": "",
784
+ "pickDestination": "",
785
+ "noDestination": "",
786
+ "imageMode": "",
787
+ "modes": {
788
+ "hosted": "",
789
+ "inline": "",
790
+ "none": ""
550
791
  },
551
- "window": "",
552
- "windowSince": ""
792
+ "modeHelp": {
793
+ "hosted": "",
794
+ "inline": "",
795
+ "none": ""
796
+ },
797
+ "modePreviewHint": "",
798
+ "hostedNeedsUrl": "",
799
+ "skipWhenEmpty": "",
800
+ "skipWhenEmptyHelp": ""
801
+ },
802
+ "links": {
803
+ "tracearr": "",
804
+ "tracearrNote": ""
553
805
  },
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
- "recipientsChecking": "",
577
- "recipientsFail": "",
578
- "recipientsLoadFailed": "",
579
827
  "recipients_one": "",
580
828
  "recipients_other": "",
581
- "serverSettingsLink": "",
582
- "title": "",
583
- "variantsLoadFailed": ""
829
+ "recipientsFail": "",
830
+ "recipientsChecking": "",
831
+ "recipientsLoadFailed": "",
832
+ "dns": "",
833
+ "dnsLink": ""
584
834
  },
585
- "recipients": {
586
- "account": "",
587
- "addressLabel": "",
588
- "allServers": "",
589
- "badAddress": "",
590
- "contactEmailFor": "",
591
- "emptyDescription": "",
592
- "emptyTitle": "",
593
- "exclude": "",
594
- "excludeAction": "",
595
- "excludeSelected": "",
596
- "excludedAfterSave": "",
597
- "excludedCount": "",
598
- "excludedHelp": "",
599
- "extraAddress": "",
600
- "extraHelp": "",
601
- "extraTrigger": "",
602
- "fromUsername": "",
603
- "groupsNote": "",
604
- "include": "",
605
- "includeAction": "",
606
- "includeSelected": "",
607
- "includedAfterSave": "",
608
- "joinedSinceLastSend": "",
609
- "loadFailed": "",
610
- "manage": "",
611
- "manageHelp": "",
612
- "members": "",
613
- "membersHelp": "",
614
- "nameLabel": "",
615
- "namePlaceholder": "",
616
- "newSinceLastSend": "",
617
- "noAddress": "",
618
- "noAddressHelp": "",
619
- "noMatches": "",
620
- "notIncludable": "",
621
- "notIncludableHelp": "",
622
- "openUserPage": "",
623
- "ownerNote": "",
624
- "pasteAddresses": "",
625
- "reasons": {
626
- "banned": "",
627
- "excluded": "",
628
- "noServer": "",
629
- "pending": ""
630
- },
631
- "removeAddress": "",
632
- "saveEmail": "",
633
- "searchPlaceholder": "",
634
- "selectAll": "",
635
- "selectPerson": "",
636
- "selectedCount": "",
637
- "serverFilter": "",
638
- "suppressed": "",
639
- "suppressedCount": "",
640
- "suppressedHelp": "",
641
- "tabs": {
642
- "excluded": "",
643
- "noAddress": "",
644
- "receiving": "",
645
- "suppressed": ""
646
- },
647
- "title": "",
648
- "unknownMember": "",
649
- "willReceive": ""
835
+ "actions": {
836
+ "preview": "",
837
+ "test": "",
838
+ "send": "",
839
+ "more": "",
840
+ "testHint": "",
841
+ "sendHint": ""
650
842
  },
651
- "removeLibrary": "",
652
- "save": "",
653
- "saving": "",
654
- "schedule": "",
655
- "scheduleKind": "",
656
- "searchLibraries": "",
657
- "searchServers": "",
658
- "sections": {
659
- "description": "",
660
- "labels": {
661
- "mostWatched": "",
843
+ "preview": {
844
+ "variants": "",
845
+ "variantTab": "",
846
+ "title": "",
847
+ "draft": "",
848
+ "subjectLabel": "",
849
+ "window": "",
850
+ "windowSince": "",
851
+ "countsListed": {
662
852
  "movies": "",
663
- "music": "",
664
- "seasons": "",
665
- "shows": ""
853
+ "shows": "",
854
+ "albums": ""
666
855
  },
667
- "legend": "",
668
- "mostWatched": "",
669
- "mostWatchedHelp": "",
670
- "movies": "",
671
- "music": "",
672
- "musicHelp": "",
673
- "shows": "",
674
- "the": "",
675
- "units": {
676
- "albums": "",
677
- "mostPlayed": "",
678
- "movies": "",
679
- "seasonsEach": "",
680
- "shows": ""
856
+ "recipients": "",
857
+ "width": "",
858
+ "widths": {
859
+ "desktop": "",
860
+ "phone": ""
681
861
  },
682
- "upTo": ""
862
+ "images": "",
863
+ "imagesOn": "",
864
+ "imagesBlocked": "",
865
+ "imagesBlockedNote": "",
866
+ "linksNote": ""
867
+ },
868
+ "test": {
869
+ "title": "",
870
+ "description": "",
871
+ "variant": "",
872
+ "address": "",
873
+ "send": ""
683
874
  },
684
875
  "send": {
685
- "confirm": "",
686
- "nobody": "",
876
+ "title": "",
687
877
  "previewing": "",
688
- "sending": "",
689
878
  "summary": "",
690
- "title": "",
879
+ "nobody": "",
691
880
  "trimmed_one": "",
692
- "trimmed_other": ""
693
- },
694
- "sendNeedsSave": "",
695
- "senderName": "",
696
- "senderNameHelp": "",
697
- "senderNameRequiredMulti": "",
698
- "servers": "",
699
- "serversHelp": "",
700
- "serversSelected": "",
701
- "subject": "",
702
- "subjectHelp": "",
703
- "tabs": {
704
- "edit": "",
705
- "history": ""
706
- },
707
- "test": {
708
- "address": "",
709
- "description": "",
710
- "send": "",
711
- "title": "",
712
- "variant": ""
713
- },
714
- "time": "",
715
- "timezone": "",
716
- "timezoneHelp": "",
717
- "turnOnNow": "",
718
- "unknownLibrary": "",
719
- "unsaved": "",
720
- "variantHeading": "",
721
- "variantsNote": "",
722
- "windowHelp": {
723
- "fixed": "",
724
- "since_last_send": ""
725
- },
726
- "windowKind": "",
727
- "windowMax": "",
728
- "windowSentence": {
729
- "fallback": "",
730
- "fallbackLabel": "",
731
- "fixed": "",
732
- "fixedAfter": "",
733
- "fixedLabel": ""
734
- },
735
- "windows": {
736
- "fixed": "",
737
- "since_last_send": ""
881
+ "trimmed_other": "",
882
+ "confirm": "",
883
+ "sending": ""
738
884
  }
739
885
  },
740
- "empty": "",
741
- "emptyDescription": "",
742
- "enabled": "",
743
886
  "history": {
744
- "attempts": "",
745
887
  "empty": "",
746
888
  "emptyDescription": "",
747
- "finished": "",
748
889
  "loadFailed": "",
749
- "open": "",
750
- "openSnapshot": "",
751
- "openVariantSnapshot": "",
752
- "page": "",
753
- "pruned": "",
890
+ "trigger": {
891
+ "schedule": "",
892
+ "manual": "",
893
+ "test": ""
894
+ },
895
+ "window": "",
754
896
  "recipients": "",
755
897
  "recipientsEmpty": "",
756
- "retryFailed": "",
898
+ "finished": "",
899
+ "open": "",
900
+ "page": "",
757
901
  "sendTitle": "",
758
- "snapshotTitle": "",
759
902
  "status": {
760
- "failed": "",
761
903
  "queued": "",
762
904
  "sent": "",
905
+ "failed": "",
763
906
  "suppressed": "",
764
907
  "unknown": ""
765
- },
766
- "trigger": {
767
- "manual": "",
768
- "schedule": "",
769
- "test": ""
770
- },
771
- "unknownHelp": "",
772
- "variant": "",
773
- "variantEmpty": "",
774
- "window": ""
775
- },
776
- "lastSend": "",
777
- "neverSent": "",
778
- "new": "",
779
- "nextRun": "",
780
- "noDestinationDescription": "",
781
- "noDestinationHint": "",
782
- "noDestinationTitle": "",
783
- "noNextRun": "",
784
- "outcome": {
785
- "failed": "",
786
- "partial": "",
787
- "rendering": "",
788
- "sending": "",
789
- "sent": "",
790
- "skipped_empty": ""
791
- },
908
+ },
909
+ "attempts": "",
910
+ "unknownHelp": "",
911
+ "openSnapshot": "",
912
+ "variant": "",
913
+ "variantEmpty": "",
914
+ "openVariantSnapshot": "",
915
+ "snapshotTitle": "",
916
+ "pruned": "",
917
+ "retryFailed": ""
918
+ }
919
+ },
920
+ "email": {
792
921
  "ownerOnly": "",
793
- "richText": {
794
- "bold": "",
795
- "bulletList": "",
796
- "counter": "",
797
- "italic": "",
798
- "link": "",
799
- "linkApply": "",
800
- "linkHref": ""
801
- },
802
- "rowActions": "",
803
- "schedule": {
804
- "cron": "",
805
- "daily": "",
806
- "inZone": "",
807
- "monthly": "",
808
- "weekly": ""
922
+ "branding": {
923
+ "title": "",
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": ""
809
942
  },
810
- "sendNow": ""
943
+ "suppressions": {
944
+ "title": "",
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": ""
961
+ }
811
962
  },
812
- "plex": {
813
- "chooseServer": "Elige qué Plex Media Server quieres monitorizar",
814
- "selectServer": "Seleccionar Servidor",
815
- "signInWithPlex": "Inicia sesión con Plex",
816
- "signUpWithPlex": "Registrarse con Plex"
963
+ "shared": {
964
+ "timezone": {
965
+ "placeholder": "",
966
+ "search": "",
967
+ "empty": "",
968
+ "other": ""
969
+ }
817
970
  },
818
971
  "requests": {
819
- "confirmUnlink": {
820
- "body": "",
821
- "title": ""
822
- },
972
+ "label": "",
973
+ "link": "",
974
+ "unlink": "",
975
+ "syncNow": "",
976
+ "enable": "",
977
+ "disable": "",
978
+ "paused": "",
979
+ "menuLabel": "",
980
+ "syncedAgo": "",
981
+ "neverSynced": "",
823
982
  "counts": {
824
983
  "requests_one": "",
825
984
  "requests_other": "",
@@ -828,195 +987,37 @@
828
987
  "unmatchedUsers_one": "",
829
988
  "unmatchedUsers_other": ""
830
989
  },
990
+ "needsKey": "",
991
+ "lastError": "",
992
+ "lastErrorNoTime": "",
831
993
  "dialog": {
994
+ "titleLink": "",
995
+ "titleEdit": "",
996
+ "description": "",
997
+ "url": "",
832
998
  "apiKey": "",
833
999
  "apiKeyHint": "",
834
1000
  "apiKeyKeep": "",
835
- "description": "",
1001
+ "showKey": "",
836
1002
  "hideKey": "",
1003
+ "test": "",
1004
+ "testing": "",
1005
+ "save": "",
1006
+ "saveHint": "",
837
1007
  "match": "",
838
1008
  "mismatch": "",
839
1009
  "mismatchIds": "",
840
- "mismatchOther": "",
841
- "save": "",
842
- "saveHint": "",
843
- "showKey": "",
844
- "test": "",
845
- "testing": "",
846
- "titleEdit": "",
847
- "titleLink": "",
848
- "url": ""
849
- },
850
- "disable": "",
851
- "enable": "",
852
- "label": "",
853
- "lastError": "",
854
- "lastErrorNoTime": "",
855
- "link": "",
856
- "menuLabel": "",
857
- "needsKey": "",
858
- "neverSynced": "",
859
- "paused": "",
860
- "syncNow": "",
861
- "syncedAgo": "",
862
- "toast": {
863
- "failed": "",
864
- "removed": "",
865
- "saved": "",
866
- "syncStarted": ""
867
- },
868
- "unlink": ""
869
- },
870
- "serverHealth": {
871
- "multipleUnreachable": "{{count}} servidores sin conexión: {{serverNames}}",
872
- "unreachable": "{{serverName}} no está disponible"
873
- },
874
- "servers": {
875
- "addServer": "Añadir servidor",
876
- "addServerDialogDescOther": "Conecte un servidor Jellyfin o Emby.",
877
- "addServerDialogDescPlex": "Seleccione un servidor Plex de su cuenta vinculada.",
878
- "added": "Añadido {{date}}",
879
- "allFieldsRequired": "Todos los campos son obligatorios",
880
- "allServersConnected": "Todos los servidores conectados",
881
- "allServersConnectedDesc": "Todos los servidores de esta cuenta ya están conectados.",
882
- "apiKeyHelp": "Encontrado en el panel de control de su servidor de medios bajo claves API o ajustes avanzados.",
883
- "apiKeyHelpEmby": "Encontrar esto en Emby Server → API Keys",
884
- "apiKeyHelpJellyfin": "Encontrar esto en Jellyfin Dashboard → API Keys",
885
- "apiKeyPlaceholder": "Introduzca su clave API",
886
- "checkingConnection": "",
887
- "chooseAccount": "Seleccione una cuenta...",
888
- "connectServer": "Conectar servidor",
889
- "connecting": "Conectando...",
890
- "connectionFailed": "Error de conexión",
891
- "connectionSuccess": "Conexión establecida",
892
- "description": "Administra tus servidores de Plex, Jellyfin, y Emby conectados",
893
- "discoveringConnections": "Descubriendo conexiones...",
894
- "discoveringServers": "Descubriendo servidores Plex disponibles...",
895
- "editServer": "Editar servidor",
896
- "editServerDesc": "Actualizar el nombre del servidor o la URL de conexión.",
897
- "loadingAccounts": "Cargando cuentas enlazadas de Plex...",
898
- "noPlexAccountsLinked": "No hay cuentas Plex vinculadas",
899
- "noPlexAccountsLinkedHint": "Vincula una cuenta de Plex de arriba, luego vuelve a añadir un servidor.",
900
- "noServersConnected": "Sin servidores conectados",
901
- "noServersConnectedHint": "Haga clic en \"Añadir servidor\" para conectar un servidor Jellyfin o Emby",
902
- "plexAccount": "Cuenta de Plex",
903
- "plexServerPlaceholder": "Mi servidor Plex",
904
- "plexServerUrlPlaceholder": "",
905
- "pluginUpdateAvailable": "",
906
- "pluginVersion": "",
907
- "pollingMode": "",
908
- "posterSource": {
909
- "automatic": "",
910
- "description": "",
911
- "emptyHint": "",
912
- "label": "",
913
- "ownerOnly": "",
914
- "title": "",
915
- "titleDesc": ""
1010
+ "mismatchOther": ""
916
1011
  },
917
- "publicUrl": "",
918
- "publicUrlHint": "",
919
- "realtimeActive": "",
920
- "realtimeDialog": {
921
- "autoDetectNote": "",
922
- "close": "",
923
- "copyUrl": "",
924
- "embyDescription": "",
925
- "embyReleasesUrl": "",
926
- "embyUpdateDescription": "",
927
- "issueBlocked": "",
928
- "issueMalfunctioned": "",
929
- "issueRestartRequired": "",
930
- "jellyfinDescription": "",
931
- "jellyfinRepoUrl": "",
932
- "jellyfinUpdateDescription": "",
933
- "openReleases": "",
934
- "repositoryUrl": "",
1012
+ "confirmUnlink": {
935
1013
  "title": "",
936
- "updateTitle": ""
1014
+ "body": ""
937
1015
  },
938
- "realtimeError": "",
939
- "removeServer": "Eliminar servidor",
940
- "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.",
941
- "reorder": "",
942
- "selectAccountHelp": "Seleccione desde qué cuenta de Plex descubrir los servidores.",
943
- "selectPlexAccount": "Seleccionar cuenta de Plex",
944
- "serverColor": "Color del servidor",
945
- "serverColorDesc": "Utilizado para la atribución visual en la vista multi-servidor",
946
- "serverName": "Nombre del servidor",
947
- "serverNamePlaceholder": "Mi servidor multimedia",
948
- "serverType": "Tipo de servidor",
949
- "serverUrl": "URL del servidor",
950
- "serverUrlHelp": "Directa la URL a tu servidor Jellyfin o Emby. Usa IP:port para mayor fiabilidad.",
951
- "serverUrlHelpEmby": "La URL donde tu servidor Emby es accesible",
952
- "serverUrlHelpJellyfin": "La URL donde tu servidor Jellyfin es accesible",
953
- "serverUrlPlaceholder": "",
954
- "setupRealtime": "",
955
- "syncInterval": "Intervalo de sincronización",
956
- "testConnection": "Probar conexión",
957
- "title": "Servidores conectados",
958
- "updateHint": "O haga clic en Actualizar abajo para guardar sólo el cambio de nombre.",
959
- "updating": "Actualizando...",
960
- "version": {
961
- "installed": "",
962
- "upToDate": "",
963
- "updateAvailable": ""
964
- }
965
- },
966
- "shared": {
967
- "timezone": {
968
- "empty": "",
969
- "other": "",
970
- "placeholder": "",
971
- "search": ""
972
- }
973
- },
974
- "tailscale": {
975
- "authorize": "Autorizar en Tailscale",
976
- "awaitingAuth": "Esperando autorización...",
977
- "connected": "Tailscale conectado. Tu instancia de Tracearr está disponible en la tailnet.",
978
- "description": "",
979
- "disable": "Desactivar Tailscale",
980
- "disableConfirmDescription": "Esto desconectará Tracearr de tu tailnet. Puedes volver a activarlo sin necesidad de re-autorizar.",
981
- "disableConfirmTitle": "¿Desactivar Tailscale?",
982
- "disabledDescription": "Activa Tailscale para añadir Tracearr a tu tailnet privada. Sin necesidad de abrir puertos ni configurar proxy inverso.",
983
- "dnsName": "Nombre DNS",
984
- "enable": "Activar Tailscale",
985
- "exitNodeNone": "Ninguno",
986
- "exitNodeOffline": "(sin conexión)",
987
- "hideLogs": "Ocultar registros",
988
- "hostname": "Nombre de host",
989
- "hostnameHint": "Nombre personalizado opcional para este dispositivo en tu tailnet. Solo letras, números y guiones.",
990
- "hostnameLabel": "Nombre de host del dispositivo",
991
- "noLogs": "No hay registros disponibles.",
992
- "notAvailable": "Binario de Tailscale no encontrado. Esta función solo está disponible con la imagen Docker oficial.",
993
- "resetConfirmDescription": "Esto desconectará Tracearr de tu tailnet y eliminará la identidad del dispositivo. Tendrás que reautorizar si vuelves a activarlo.",
994
- "resetConfirmTitle": "¿Restablecer Tailscale?",
995
- "showLogs": "Mostrar registros",
996
- "starting": "Iniciando Tailscale...",
997
- "stopping": "Deteniendo Tailscale...",
998
- "tailnetUrl": "",
999
- "title": "",
1000
1016
  "toast": {
1001
- "disableFailed": "Error al desactivar Tailscale",
1002
- "disabled": "Tailscale desactivado.",
1003
- "enableFailed": "Error al activar Tailscale",
1004
- "exitNodeFailed": "Error al configurar el nodo de salida",
1005
- "exitNodeSet": "Nodo de salida actualizado.",
1006
- "reset": "Tailscale restablecido.",
1007
- "resetFailed": "Error al restablecer Tailscale"
1008
- },
1009
- "unknownError": "Se ha producido un error desconocido."
1010
- },
1011
- "title": "Ajustes",
1012
- "update": {
1013
- "betaUpdate": "Actualización beta",
1014
- "newVersion": "Nueva versión",
1015
- "pullInstructions": "Entendido.",
1016
- "releaseNotes": "Notas de la versión",
1017
- "stableRelease": "Versión Estable",
1018
- "title": "Actualización disponible",
1019
- "updateCommand": "Comando de actualización",
1020
- "versionAvailable": "{{version}} disponible"
1017
+ "saved": "",
1018
+ "removed": "",
1019
+ "syncStarted": "",
1020
+ "failed": ""
1021
+ }
1021
1022
  }
1022
1023
  }