@tracearr/translations 2.3.0-beta.5 → 2.3.0-beta.7

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 (321) hide show
  1. package/dist/config.d.ts +54 -0
  2. package/dist/config.d.ts.map +1 -1
  3. package/dist/config.mobile.d.ts +54 -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 +907 -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 +1776 -1776
  14. package/dist/locales/ar-SA/settings.json +911 -884
  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 +909 -882
  20. package/dist/locales/cs-CZ/common.json +282 -282
  21. package/dist/locales/cs-CZ/mobile.json +1 -1
  22. package/dist/locales/cs-CZ/nav.json +21 -21
  23. package/dist/locales/cs-CZ/notifications.json +246 -246
  24. package/dist/locales/cs-CZ/pages.json +1783 -1783
  25. package/dist/locales/cs-CZ/settings.json +911 -884
  26. package/dist/locales/da-DK/common.json +282 -282
  27. package/dist/locales/da-DK/mobile.json +1 -1
  28. package/dist/locales/da-DK/nav.json +21 -21
  29. package/dist/locales/da-DK/notifications.json +246 -246
  30. package/dist/locales/da-DK/pages.json +1776 -1776
  31. package/dist/locales/da-DK/settings.json +911 -884
  32. package/dist/locales/de-DE/common.json +282 -282
  33. package/dist/locales/de-DE/mobile.json +1 -1
  34. package/dist/locales/de-DE/nav.json +21 -21
  35. package/dist/locales/de-DE/notifications.json +246 -246
  36. package/dist/locales/de-DE/pages.json +1785 -1785
  37. package/dist/locales/de-DE/settings.json +909 -882
  38. package/dist/locales/el-GR/common.json +282 -282
  39. package/dist/locales/el-GR/nav.json +21 -21
  40. package/dist/locales/el-GR/notifications.json +246 -246
  41. package/dist/locales/el-GR/pages.json +1776 -1776
  42. package/dist/locales/el-GR/settings.json +911 -884
  43. package/dist/locales/en/settings.json +29 -2
  44. package/dist/locales/es-ES/common.json +282 -282
  45. package/dist/locales/es-ES/nav.json +21 -21
  46. package/dist/locales/es-ES/notifications.json +246 -246
  47. package/dist/locales/es-ES/pages.json +1781 -1781
  48. package/dist/locales/es-ES/settings.json +919 -892
  49. package/dist/locales/fi-FI/common.json +282 -282
  50. package/dist/locales/fi-FI/nav.json +21 -21
  51. package/dist/locales/fi-FI/notifications.json +246 -246
  52. package/dist/locales/fi-FI/pages.json +1775 -1775
  53. package/dist/locales/fi-FI/settings.json +919 -892
  54. package/dist/locales/fr-FR/common.json +283 -283
  55. package/dist/locales/fr-FR/mobile.json +8 -8
  56. package/dist/locales/fr-FR/nav.json +23 -23
  57. package/dist/locales/fr-FR/notifications.json +246 -246
  58. package/dist/locales/fr-FR/pages.json +1904 -1904
  59. package/dist/locales/fr-FR/settings.json +907 -880
  60. package/dist/locales/he-IL/common.json +282 -282
  61. package/dist/locales/he-IL/nav.json +21 -21
  62. package/dist/locales/he-IL/notifications.json +243 -243
  63. package/dist/locales/he-IL/pages.json +1766 -1766
  64. package/dist/locales/he-IL/settings.json +907 -880
  65. package/dist/locales/hu-HU/common.json +282 -282
  66. package/dist/locales/hu-HU/nav.json +21 -21
  67. package/dist/locales/hu-HU/notifications.json +243 -243
  68. package/dist/locales/hu-HU/pages.json +1766 -1766
  69. package/dist/locales/hu-HU/settings.json +907 -880
  70. package/dist/locales/it-IT/common.json +282 -282
  71. package/dist/locales/it-IT/nav.json +21 -21
  72. package/dist/locales/it-IT/notifications.json +246 -246
  73. package/dist/locales/it-IT/pages.json +1777 -1777
  74. package/dist/locales/it-IT/settings.json +910 -883
  75. package/dist/locales/ja-JP/common.json +282 -282
  76. package/dist/locales/ja-JP/nav.json +21 -21
  77. package/dist/locales/ja-JP/notifications.json +246 -246
  78. package/dist/locales/ja-JP/pages.json +1776 -1776
  79. package/dist/locales/ja-JP/settings.json +911 -884
  80. package/dist/locales/ko-KR/common.json +283 -283
  81. package/dist/locales/ko-KR/mobile.json +6 -6
  82. package/dist/locales/ko-KR/nav.json +21 -21
  83. package/dist/locales/ko-KR/notifications.json +246 -246
  84. package/dist/locales/ko-KR/pages.json +1834 -1834
  85. package/dist/locales/ko-KR/settings.json +927 -900
  86. package/dist/locales/nl-NL/common.json +282 -282
  87. package/dist/locales/nl-NL/nav.json +21 -21
  88. package/dist/locales/nl-NL/notifications.json +246 -246
  89. package/dist/locales/nl-NL/pages.json +1809 -1809
  90. package/dist/locales/nl-NL/settings.json +912 -885
  91. package/dist/locales/no-NO/common.json +282 -282
  92. package/dist/locales/no-NO/nav.json +21 -21
  93. package/dist/locales/no-NO/notifications.json +246 -246
  94. package/dist/locales/no-NO/pages.json +1777 -1777
  95. package/dist/locales/no-NO/settings.json +911 -884
  96. package/dist/locales/pl-PL/common.json +282 -282
  97. package/dist/locales/pl-PL/nav.json +21 -21
  98. package/dist/locales/pl-PL/notifications.json +246 -246
  99. package/dist/locales/pl-PL/pages.json +1777 -1777
  100. package/dist/locales/pl-PL/settings.json +911 -884
  101. package/dist/locales/pt-BR/common.json +282 -282
  102. package/dist/locales/pt-BR/nav.json +21 -21
  103. package/dist/locales/pt-BR/notifications.json +246 -246
  104. package/dist/locales/pt-BR/pages.json +1777 -1777
  105. package/dist/locales/pt-BR/settings.json +919 -892
  106. package/dist/locales/pt-PT/common.json +282 -282
  107. package/dist/locales/pt-PT/nav.json +21 -21
  108. package/dist/locales/pt-PT/notifications.json +246 -246
  109. package/dist/locales/pt-PT/pages.json +1777 -1777
  110. package/dist/locales/pt-PT/settings.json +919 -892
  111. package/dist/locales/ro-RO/common.json +282 -282
  112. package/dist/locales/ro-RO/nav.json +21 -21
  113. package/dist/locales/ro-RO/notifications.json +246 -246
  114. package/dist/locales/ro-RO/pages.json +1777 -1777
  115. package/dist/locales/ro-RO/settings.json +911 -884
  116. package/dist/locales/ru-RU/common.json +282 -282
  117. package/dist/locales/ru-RU/nav.json +21 -21
  118. package/dist/locales/ru-RU/notifications.json +246 -246
  119. package/dist/locales/ru-RU/pages.json +1776 -1776
  120. package/dist/locales/ru-RU/settings.json +911 -884
  121. package/dist/locales/sr-SP/common.json +282 -282
  122. package/dist/locales/sr-SP/nav.json +21 -21
  123. package/dist/locales/sr-SP/notifications.json +243 -243
  124. package/dist/locales/sr-SP/pages.json +1766 -1766
  125. package/dist/locales/sr-SP/settings.json +907 -880
  126. package/dist/locales/sv-SE/common.json +282 -282
  127. package/dist/locales/sv-SE/nav.json +21 -21
  128. package/dist/locales/sv-SE/notifications.json +246 -246
  129. package/dist/locales/sv-SE/pages.json +1778 -1778
  130. package/dist/locales/sv-SE/settings.json +911 -884
  131. package/dist/locales/tr-TR/common.json +282 -282
  132. package/dist/locales/tr-TR/nav.json +21 -21
  133. package/dist/locales/tr-TR/notifications.json +243 -243
  134. package/dist/locales/tr-TR/pages.json +1766 -1766
  135. package/dist/locales/tr-TR/settings.json +907 -880
  136. package/dist/locales/uk-UA/common.json +282 -282
  137. package/dist/locales/uk-UA/nav.json +21 -21
  138. package/dist/locales/uk-UA/notifications.json +246 -246
  139. package/dist/locales/uk-UA/pages.json +1776 -1776
  140. package/dist/locales/uk-UA/settings.json +913 -886
  141. package/dist/locales/vi-VN/common.json +282 -282
  142. package/dist/locales/vi-VN/nav.json +21 -21
  143. package/dist/locales/vi-VN/notifications.json +243 -243
  144. package/dist/locales/vi-VN/pages.json +1766 -1766
  145. package/dist/locales/vi-VN/settings.json +907 -880
  146. package/dist/locales/zh-CN/common.json +283 -283
  147. package/dist/locales/zh-CN/mobile.json +5 -5
  148. package/dist/locales/zh-CN/nav.json +21 -21
  149. package/dist/locales/zh-CN/notifications.json +250 -250
  150. package/dist/locales/zh-CN/pages.json +1803 -1803
  151. package/dist/locales/zh-CN/settings.json +914 -887
  152. package/dist/locales/zh-TW/common.json +282 -282
  153. package/dist/locales/zh-TW/nav.json +21 -21
  154. package/dist/locales/zh-TW/notifications.json +246 -246
  155. package/dist/locales/zh-TW/pages.json +1769 -1769
  156. package/dist/locales/zh-TW/settings.json +910 -883
  157. package/package.json +2 -2
  158. package/src/locales/af-ZA/common.json +282 -282
  159. package/src/locales/af-ZA/nav.json +21 -21
  160. package/src/locales/af-ZA/notifications.json +243 -243
  161. package/src/locales/af-ZA/pages.json +1766 -1766
  162. package/src/locales/af-ZA/settings.json +907 -880
  163. package/src/locales/ar-SA/common.json +282 -282
  164. package/src/locales/ar-SA/nav.json +21 -21
  165. package/src/locales/ar-SA/notifications.json +246 -246
  166. package/src/locales/ar-SA/pages.json +1776 -1776
  167. package/src/locales/ar-SA/settings.json +911 -884
  168. package/src/locales/ca-ES/common.json +282 -282
  169. package/src/locales/ca-ES/nav.json +21 -21
  170. package/src/locales/ca-ES/notifications.json +243 -243
  171. package/src/locales/ca-ES/pages.json +1770 -1770
  172. package/src/locales/ca-ES/settings.json +909 -882
  173. package/src/locales/cs-CZ/common.json +282 -282
  174. package/src/locales/cs-CZ/mobile.json +1 -1
  175. package/src/locales/cs-CZ/nav.json +21 -21
  176. package/src/locales/cs-CZ/notifications.json +246 -246
  177. package/src/locales/cs-CZ/pages.json +1783 -1783
  178. package/src/locales/cs-CZ/settings.json +911 -884
  179. package/src/locales/da-DK/common.json +282 -282
  180. package/src/locales/da-DK/mobile.json +1 -1
  181. package/src/locales/da-DK/nav.json +21 -21
  182. package/src/locales/da-DK/notifications.json +246 -246
  183. package/src/locales/da-DK/pages.json +1776 -1776
  184. package/src/locales/da-DK/settings.json +911 -884
  185. package/src/locales/de-DE/common.json +282 -282
  186. package/src/locales/de-DE/mobile.json +1 -1
  187. package/src/locales/de-DE/nav.json +21 -21
  188. package/src/locales/de-DE/notifications.json +246 -246
  189. package/src/locales/de-DE/pages.json +1785 -1785
  190. package/src/locales/de-DE/settings.json +909 -882
  191. package/src/locales/el-GR/common.json +282 -282
  192. package/src/locales/el-GR/nav.json +21 -21
  193. package/src/locales/el-GR/notifications.json +246 -246
  194. package/src/locales/el-GR/pages.json +1776 -1776
  195. package/src/locales/el-GR/settings.json +911 -884
  196. package/src/locales/en/settings.json +29 -2
  197. package/src/locales/es-ES/common.json +282 -282
  198. package/src/locales/es-ES/nav.json +21 -21
  199. package/src/locales/es-ES/notifications.json +246 -246
  200. package/src/locales/es-ES/pages.json +1781 -1781
  201. package/src/locales/es-ES/settings.json +919 -892
  202. package/src/locales/fi-FI/common.json +282 -282
  203. package/src/locales/fi-FI/nav.json +21 -21
  204. package/src/locales/fi-FI/notifications.json +246 -246
  205. package/src/locales/fi-FI/pages.json +1775 -1775
  206. package/src/locales/fi-FI/settings.json +919 -892
  207. package/src/locales/fr-FR/common.json +283 -283
  208. package/src/locales/fr-FR/mobile.json +8 -8
  209. package/src/locales/fr-FR/nav.json +23 -23
  210. package/src/locales/fr-FR/notifications.json +246 -246
  211. package/src/locales/fr-FR/pages.json +1904 -1904
  212. package/src/locales/fr-FR/settings.json +907 -880
  213. package/src/locales/he-IL/common.json +282 -282
  214. package/src/locales/he-IL/nav.json +21 -21
  215. package/src/locales/he-IL/notifications.json +243 -243
  216. package/src/locales/he-IL/pages.json +1766 -1766
  217. package/src/locales/he-IL/settings.json +907 -880
  218. package/src/locales/hu-HU/common.json +282 -282
  219. package/src/locales/hu-HU/nav.json +21 -21
  220. package/src/locales/hu-HU/notifications.json +243 -243
  221. package/src/locales/hu-HU/pages.json +1766 -1766
  222. package/src/locales/hu-HU/settings.json +907 -880
  223. package/src/locales/it-IT/common.json +282 -282
  224. package/src/locales/it-IT/nav.json +21 -21
  225. package/src/locales/it-IT/notifications.json +246 -246
  226. package/src/locales/it-IT/pages.json +1777 -1777
  227. package/src/locales/it-IT/settings.json +910 -883
  228. package/src/locales/ja-JP/common.json +282 -282
  229. package/src/locales/ja-JP/nav.json +21 -21
  230. package/src/locales/ja-JP/notifications.json +246 -246
  231. package/src/locales/ja-JP/pages.json +1776 -1776
  232. package/src/locales/ja-JP/settings.json +911 -884
  233. package/src/locales/ko-KR/common.json +283 -283
  234. package/src/locales/ko-KR/mobile.json +6 -6
  235. package/src/locales/ko-KR/nav.json +21 -21
  236. package/src/locales/ko-KR/notifications.json +246 -246
  237. package/src/locales/ko-KR/pages.json +1834 -1834
  238. package/src/locales/ko-KR/settings.json +927 -900
  239. package/src/locales/nl-NL/common.json +282 -282
  240. package/src/locales/nl-NL/nav.json +21 -21
  241. package/src/locales/nl-NL/notifications.json +246 -246
  242. package/src/locales/nl-NL/pages.json +1809 -1809
  243. package/src/locales/nl-NL/settings.json +912 -885
  244. package/src/locales/no-NO/common.json +282 -282
  245. package/src/locales/no-NO/nav.json +21 -21
  246. package/src/locales/no-NO/notifications.json +246 -246
  247. package/src/locales/no-NO/pages.json +1777 -1777
  248. package/src/locales/no-NO/settings.json +911 -884
  249. package/src/locales/pl-PL/common.json +282 -282
  250. package/src/locales/pl-PL/nav.json +21 -21
  251. package/src/locales/pl-PL/notifications.json +246 -246
  252. package/src/locales/pl-PL/pages.json +1777 -1777
  253. package/src/locales/pl-PL/settings.json +911 -884
  254. package/src/locales/pt-BR/common.json +282 -282
  255. package/src/locales/pt-BR/nav.json +21 -21
  256. package/src/locales/pt-BR/notifications.json +246 -246
  257. package/src/locales/pt-BR/pages.json +1777 -1777
  258. package/src/locales/pt-BR/settings.json +919 -892
  259. package/src/locales/pt-PT/common.json +282 -282
  260. package/src/locales/pt-PT/nav.json +21 -21
  261. package/src/locales/pt-PT/notifications.json +246 -246
  262. package/src/locales/pt-PT/pages.json +1777 -1777
  263. package/src/locales/pt-PT/settings.json +919 -892
  264. package/src/locales/ro-RO/common.json +282 -282
  265. package/src/locales/ro-RO/nav.json +21 -21
  266. package/src/locales/ro-RO/notifications.json +246 -246
  267. package/src/locales/ro-RO/pages.json +1777 -1777
  268. package/src/locales/ro-RO/settings.json +911 -884
  269. package/src/locales/ru-RU/common.json +282 -282
  270. package/src/locales/ru-RU/nav.json +21 -21
  271. package/src/locales/ru-RU/notifications.json +246 -246
  272. package/src/locales/ru-RU/pages.json +1776 -1776
  273. package/src/locales/ru-RU/settings.json +911 -884
  274. package/src/locales/sr-SP/common.json +282 -282
  275. package/src/locales/sr-SP/nav.json +21 -21
  276. package/src/locales/sr-SP/notifications.json +243 -243
  277. package/src/locales/sr-SP/pages.json +1766 -1766
  278. package/src/locales/sr-SP/settings.json +907 -880
  279. package/src/locales/sv-SE/common.json +282 -282
  280. package/src/locales/sv-SE/nav.json +21 -21
  281. package/src/locales/sv-SE/notifications.json +246 -246
  282. package/src/locales/sv-SE/pages.json +1778 -1778
  283. package/src/locales/sv-SE/settings.json +911 -884
  284. package/src/locales/tr-TR/common.json +282 -282
  285. package/src/locales/tr-TR/nav.json +21 -21
  286. package/src/locales/tr-TR/notifications.json +243 -243
  287. package/src/locales/tr-TR/pages.json +1766 -1766
  288. package/src/locales/tr-TR/settings.json +907 -880
  289. package/src/locales/uk-UA/common.json +282 -282
  290. package/src/locales/uk-UA/nav.json +21 -21
  291. package/src/locales/uk-UA/notifications.json +246 -246
  292. package/src/locales/uk-UA/pages.json +1776 -1776
  293. package/src/locales/uk-UA/settings.json +913 -886
  294. package/src/locales/vi-VN/common.json +282 -282
  295. package/src/locales/vi-VN/nav.json +21 -21
  296. package/src/locales/vi-VN/notifications.json +243 -243
  297. package/src/locales/vi-VN/pages.json +1766 -1766
  298. package/src/locales/vi-VN/settings.json +907 -880
  299. package/src/locales/zh-CN/common.json +283 -283
  300. package/src/locales/zh-CN/mobile.json +5 -5
  301. package/src/locales/zh-CN/nav.json +21 -21
  302. package/src/locales/zh-CN/notifications.json +250 -250
  303. package/src/locales/zh-CN/pages.json +1803 -1803
  304. package/src/locales/zh-CN/settings.json +914 -887
  305. package/src/locales/zh-TW/common.json +282 -282
  306. package/src/locales/zh-TW/nav.json +21 -21
  307. package/src/locales/zh-TW/notifications.json +246 -246
  308. package/src/locales/zh-TW/pages.json +1769 -1769
  309. package/src/locales/zh-TW/settings.json +910 -883
  310. package/dist/locales/en-US/common.json +0 -342
  311. package/dist/locales/en-US/mobile.json +0 -178
  312. package/dist/locales/en-US/nav.json +0 -33
  313. package/dist/locales/en-US/notifications.json +0 -303
  314. package/dist/locales/en-US/pages.json +0 -2297
  315. package/dist/locales/en-US/settings.json +0 -1022
  316. package/src/locales/en-US/common.json +0 -342
  317. package/src/locales/en-US/mobile.json +0 -178
  318. package/src/locales/en-US/nav.json +0 -33
  319. package/src/locales/en-US/notifications.json +0 -303
  320. package/src/locales/en-US/pages.json +0 -2297
  321. package/src/locales/en-US/settings.json +0 -1022
@@ -1,825 +1,1010 @@
1
1
  {
2
- "accessControl": {
3
- "allowGuestAccess": "Разрешить гостевой доступ",
4
- "allowGuestAccessDesc": "",
5
- "description": "Настройте кто может получить доступ к Tracearr",
6
- "singleOwnerNote": "Примечание: Если гостевой доступ отключен, авторизоваться могут только владелец сервера. Все другие пользователи увидят сообщение \"Отказано в доступе\".",
7
- "title": "Контроль доступа"
8
- },
9
- "account": {
10
- "createAccount": "Создать Аккаунт",
11
- "createYourAccount": "Создайте свой аккаунт, чтобы начать",
12
- "displayName": "Показать имя",
13
- "email": "Почта",
14
- "password": "Пароль",
15
- "signInToAccount": "Войдите в свою учетную запись",
16
- "useLocalAccount": "Использовать локальную учетную запись"
17
- },
18
- "advanced": {
19
- "connectionScenarios": "Сценарии подключения",
20
- "externalUrl": "Внешний URL",
21
- "reverseProxy": "Обратный прокси",
22
- "title": "Расширенные настройки",
23
- "trustProxy": "Доверять заголовкам прокси"
24
- },
25
- "backup": {
26
- "actions": "Действия",
27
- "backToBackups": "Вернуться к резервным копиям",
28
- "backupHistory": "История резервных копий",
29
- "createBackup": "Создать резервную копию",
30
- "creating": "Создание резервной копии...",
31
- "databaseSize": "Текущий размер базы данных: {{size}}",
32
- "date": "Дата",
33
- "dayFri": "Пятница",
34
- "dayMon": "Понедельник",
35
- "daySat": "Суббота",
36
- "daySun": "Воскресенье",
37
- "dayThu": "Четверг",
38
- "dayTue": "Вторник",
39
- "dayWed": "Среда",
40
- "deleteConfirmDescription": "Вы уверены, что хотите удалить эту резервную копию? Это действие нельзя отменить.",
41
- "deleteConfirmTitle": "Удалить резервную копию",
42
- "description": "Резервное копирование и восстановление данных Tracearr",
43
- "download": "",
44
- "freeSpace": "Каталог резервных копий свободного места: {{size}}",
45
- "lowDiskSpace": "Низкое место на диске — резервные копии и восстановления требуют по крайней мере в два раза больше размера базы данных в свободное пространство.",
46
- "noBackups": "Резервных копий пока нет. Создайте первую резервную копию выше.",
47
- "restore": {
48
- "automations": "",
49
- "cannotRestore": "Для восстановления требуются права суперпользователя PostgreSQL. Пожалуйста, убедитесь, что пользователь базы данных имеет права суперпользователя и повторите попытку.",
50
- "complete": "Восстановление успешно завершено. Страница будет обновлена в ближайшее время.",
51
- "confirm": "Начать восстановление",
52
- "confirmLabel": "Я понимаю, что это заменит все данные",
53
- "databaseSize": "Размер базы данных",
54
- "failed": "Не удалось восстановить",
55
- "libraryItems": "Элементы библиотеки",
56
- "pgVersionMismatch": "Резервная копия была создана на PostgreSQL {{backupVersion}} , но этот сервер запускает PostgreSQL {{serverVersion}}. Восстановление дампа с новой версии PostgreSQL не поддерживается.",
57
- "selectedBackup": "Выбранная резервная копия",
58
- "servers": "Серверы",
59
- "sessions": "Сессии",
60
- "tables": "Таблицы",
61
- "title": "Восстановить резервную копию",
62
- "tsVersionMismatch": "Резервная копия была создана с TimescaleDB {{backupVersion}} , но этот сервер поддерживает только до TimescaleDB {{serverVersion}}.",
63
- "users": "Пользователи",
64
- "warning": "Восстановление заменит все существующие данные. Вам нужно будет заново войти в систему после завершения восстановления."
65
- },
66
- "restoreAction": "Восстановить",
67
- "retentionCount": "Сохранить последний",
68
- "retentionSuffix": "запланированные резервные копии",
69
- "rowActions": "",
70
- "schedule": "Запланированные резервные копии",
71
- "scheduleDaily": "Ежедневно",
72
- "scheduleDayOfMonth": "День месяца",
73
- "scheduleDayOfMonthHint": "В месяцах с меньшим количеством дней, резервная копия работает в последний день.",
74
- "scheduleDayOfWeek": "День недели",
75
- "scheduleDisabled": "Отключено",
76
- "scheduleHour": "",
77
- "scheduleMinute": "",
78
- "scheduleMonthly": "Ежемесячно",
79
- "scheduleTime": "Время ({{timezone}})",
80
- "scheduleType": "График",
81
- "scheduleWeekly": "Еженедельно",
82
- "size": "Размер",
83
- "title": "Резервное копирование",
84
- "toast": {
85
- "backupCreateFailed": "Не удалось создать резервную копию",
86
- "backupCreated": "Резервная копия успешно создана",
87
- "backupDeleteFailed": "Не удалось удалить резервную копию",
88
- "backupDeleted": "Резервная копия удалена",
89
- "backupUploadFailed": "Не удалось загрузить резервную копию",
90
- "backupUploaded": "Резервная копия успешно загружена",
91
- "restoreStartFailed": "Не удалось начать восстановление",
92
- "restoreStarted": "Восстановление начато",
93
- "scheduleError": "Не удалось сохранить резервную копию расписания",
94
- "scheduleSaved": "Расписание резервного копирования сохранено"
2
+ "title": "Настройки",
3
+ "nav": {
4
+ "label": "",
5
+ "selectLabel": "",
6
+ "itemLabel": "",
7
+ "groups": {
8
+ "general": "",
9
+ "servers": "",
10
+ "notifications": "",
11
+ "access": "",
12
+ "data": ""
95
13
  },
96
- "type": "Тип",
97
- "typeManual": "Ручной",
98
- "typeScheduled": "Запланированный",
99
- "typeUploaded": "Загружено",
100
- "uploadBackup": "Загрузить резервную копию",
101
- "uploading": "Загрузка...",
102
- "version": "Версии"
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": "Общие настройки",
53
+ "unitSystem": "Система модулей",
54
+ "metric": "Метрика (км, км/ч)",
55
+ "imperial": "Имперская (mi, mph)",
56
+ "timezone": "",
57
+ "primaryAuth": "Метод первичной аутентификации",
58
+ "localAccount": "Локальный счет",
59
+ "plexAccount": "Аккаунт Plex",
60
+ "language": "Язык",
61
+ "languageDescription": "Выберите предпочитаемый язык отображения.",
62
+ "helpTranslate": "Помогите перевести Tracearr",
63
+ "timeFormat": "Формат времени",
64
+ "timeFormatDescription": "Выберите, как время отображается.",
65
+ "timeFormat12h": "12 часов (1:30 PM)",
66
+ "timeFormat24h": "24-часовой (13:30)",
67
+ "theme": "Тема",
148
68
  "accentColor": "Цвет акцента",
149
- "apiDocs": "",
150
- "apiKeyDesc": "Получите доступ к Tracearr API для сторонних интеграций, таких как Homarr, Home Assistant, и т.д.",
151
- "apiKeyReadAccess": "Ваш ключ API предоставляет полный доступ к чтению данных Tracearr.",
152
- "apiRateLimit": "",
153
- "apiRateLimitDesc": "",
154
- "apiRateLimitSuffix": "",
69
+ "default": "(по умолчанию)",
70
+ "cyanDefault": "* Бирюзовый цвет по умолчанию",
71
+ "themeLight": "Светлая",
72
+ "themeDark": "Тёмная",
73
+ "themeSystem": "Система",
155
74
  "application": "Приложение",
156
75
  "applicationDesc": "Настройка базовых параметров приложения",
157
- "copyToClipboard": "Копировать в буфер обмена",
158
- "cyanDefault": "* Бирюзовый цвет по умолчанию",
159
- "default": "(по умолчанию)",
160
- "detect": "Обнаружить",
76
+ "unitSystemDesc": "Выберите, как отображаются расстояния и скорости",
77
+ "sessionSync": "Синхронизация сессий",
78
+ "sessionSyncDesc": "Включить отслеживание сессий для ваших медиа серверов",
79
+ "syncInterval": "Интервал синхронизации",
80
+ "syncIntervalDesc": "Частота опроса для Jellyfin/Emby (5-300 секунд)",
81
+ "syncIntervalSuffix": "сек",
82
+ "plexSseNote": "Plex использует Server-Sent Events (SSE) для быстрых обновлений — опрос не требуется.",
83
+ "jellyfinPollingNote": "Jellyfin/Emby опрошены с интервалом выше.",
161
84
  "enhancedGeoIP": "Расширенный поиск GeoIP",
162
85
  "enhancedGeoIPDesc": "Используйте сервис GeoIP Plex для получения более точных данных о местоположении. Когда включено, IP адреса отправляются в plex. v для поиска. Локальная база данных MaxMind используется как резервная копия.",
163
86
  "externalAccess": "Внешний доступ",
164
87
  "externalAccessDesc": "Настройте как внешние устройства (например, мобильные приложения) подключаться к вашему серверу",
165
88
  "externalUrl": "Внешний URL",
166
- "externalUrlDesc": "URL-адрес, который внешние устройства должны использовать для доступа к этому серверу. Используется для подключения QR-кодов и мобильных приложений.",
167
89
  "externalUrlPlaceholder": "",
90
+ "externalUrlDesc": "URL-адрес, который внешние устройства должны использовать для доступа к этому серверу. Используется для подключения QR-кодов и мобильных приложений.",
91
+ "detect": "Обнаружить",
92
+ "localhostWarning": "URL-адреса локальных хостов не будут работать для внешних устройств. Используйте локальный IP адрес или имя домена.",
93
+ "iosHttpWarning": "iOS требует HTTPS для внешних подключений. Настройте обратный прокси с помощью SSL.",
94
+ "apiKeyDesc": "Получите доступ к Tracearr API для сторонних интеграций, таких как Homarr, Home Assistant, и т.д.",
95
+ "apiDocs": "",
96
+ "noApiKeyGenerated": "Ключ API не создан",
97
+ "copyToClipboard": "Копировать в буфер обмена",
98
+ "apiKeyReadAccess": "Ваш ключ API предоставляет полный доступ к чтению данных Tracearr.",
168
99
  "generateApiKeyPrompt": "Создайте API ключ для включения внешней интеграции.",
100
+ "regenerate": "Восстановить",
169
101
  "generateKey": "Сгенерировать ключ",
170
- "helpTranslate": "Помогите перевести Tracearr",
102
+ "regenerateApiKey": "Пересоздать ключ API?",
103
+ "regenerateApiKeyDesc": "Это аннулирует ваш текущий ключ API. Любые интеграции, использующие старый ключ, перестанут работать.",
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": "Имперская (mi, mph)",
188
- "iosHttpWarning": "iOS требует HTTPS для внешних подключений. Настройте обратный прокси с помощью SSL.",
189
- "jellyfinPollingNote": "Jellyfin/Emby опрошены с интервалом выше.",
190
- "language": "Язык",
191
- "languageDescription": "Выберите предпочитаемый язык отображения.",
192
- "localAccount": "Локальный счет",
193
- "localhostWarning": "URL-адреса локальных хостов не будут работать для внешних устройств. Используйте локальный IP адрес или имя домена.",
194
- "metric": "Метрика (км, км/ч)",
195
- "noApiKeyGenerated": "Ключ API не создан",
196
- "plexAccount": "Аккаунт Plex",
197
- "plexSseNote": "Plex использует Server-Sent Events (SSE) для быстрых обновлений — опрос не требуется.",
198
- "primaryAuth": "Метод первичной аутентификации",
199
- "publicApiSettings": "",
200
- "publicApiSettingsDesc": "",
201
- "regenerate": "Восстановить",
202
- "regenerateApiKey": "Пересоздать ключ API?",
203
- "regenerateApiKeyDesc": "Это аннулирует ваш текущий ключ API. Любые интеграции, использующие старый ключ, перестанут работать.",
204
- "sessionSync": "Синхронизация сессий",
205
- "sessionSyncDesc": "",
137
+ "diskLimited": "",
138
+ "loadError": ""
139
+ }
140
+ },
141
+ "servers": {
142
+ "title": "Подключенные серверы",
143
+ "addServer": "Добавить сервер",
144
+ "serverName": "Имя сервера",
145
+ "serverUrl": "URL сервера",
206
146
  "syncInterval": "Интервал синхронизации",
207
- "syncIntervalDesc": "",
208
- "syncIntervalSuffix": "сек",
209
- "theme": "Тема",
210
- "themeDark": "Тёмная",
211
- "themeLight": "Светлая",
212
- "themeSystem": "Система",
213
- "timeFormat": "Формат времени",
214
- "timeFormat12h": "12 часов (1:30 PM)",
215
- "timeFormat24h": "24-часовой (13:30)",
216
- "timeFormatDescription": "Выберите, как время отображается.",
217
- "timezone": "",
218
- "title": "Общие настройки",
219
- "unitSystem": "Система модулей",
220
- "unitSystemDesc": "",
221
- "updateChecks": {
147
+ "testConnection": "Проверить соединение",
148
+ "connectionSuccess": "Успешное подключение",
149
+ "connectionFailed": "Не удалось подключиться",
150
+ "noServersConnected": "Нет подключенных серверов",
151
+ "noServersConnectedHint": "Нажмите \"Add Server\", чтобы подключить сервер Jellyfin или Emby",
152
+ "serverType": "Тип сервера",
153
+ "loadingAccounts": "Загрузка связанных аккаунтов...",
154
+ "noPlexAccountsLinked": "Нет привязанных аккаунтов Plex",
155
+ "noPlexAccountsLinkedHint": "Привяжите аккаунт Plex выше, а затем вернитесь, чтобы добавить сервер.",
156
+ "selectPlexAccount": "Выберите аккаунт Plex",
157
+ "chooseAccount": "Выберите аккаунт...",
158
+ "selectAccountHelp": "Выберите, с какой учетной записи Plex обнаружить серверы.",
159
+ "allServersConnected": "Все серверы подключены",
160
+ "allServersConnectedDesc": "Все серверы этой учетной записи уже подключены.",
161
+ "serverUrlPlaceholder": "",
162
+ "serverUrlHelp": "Прямой URL-адрес вашего Jellyfin или Emby сервера. Используйте IP:порт для лучшей надежности.",
163
+ "serverNamePlaceholder": "Мой медиа сервер",
164
+ "apiKeyPlaceholder": "Введите ваш API ключ",
165
+ "apiKeyHelp": "Найдена в панели управления вашего медиа-сервера под API Keys или Расширенные настройки.",
166
+ "connecting": "Подключение...",
167
+ "connectServer": "Подключить сервер",
168
+ "removeServer": "Удалить сервер",
169
+ "removeServerConfirm": "Вы уверены, что хотите удалить этот сервер? Все соответствующие данные сессии будут сохранены, но вы не сможете контролировать новые сеансы с этого сервера.",
170
+ "editServer": "Изменить сервер",
171
+ "editServerDesc": "Обновить имя сервера или URL-адрес подключения.",
172
+ "serverColor": "Цвет сервера",
173
+ "serverColorDesc": "Используется для визуального атрибута в многосерверном режиме",
174
+ "updating": "Обновление...",
175
+ "allFieldsRequired": "Все поля обязательны",
176
+ "addServerDialogDescPlex": "Выберите Plex сервер из связанного аккаунта.",
177
+ "addServerDialogDescOther": "Подключите сервер Jellyfin или Emby.",
178
+ "description": "Управление подключенными приложениями Plex, Jellyfin, и Emby серверами",
179
+ "discoveringServers": "Поиск доступных серверов Plex...",
180
+ "discoveringConnections": "Поиск соединений...",
181
+ "plexAccount": "Аккаунт Plex",
182
+ "serverUrlHelpJellyfin": "URL-адрес, на котором доступен ваш сервер Jellyfin",
183
+ "serverUrlHelpEmby": "URL-адрес, на котором доступен сервер Emby",
184
+ "publicUrl": "",
185
+ "publicUrlHint": "",
186
+ "apiKeyHelpJellyfin": "Найти это в панели управления Jellyfin → API Keys",
187
+ "apiKeyHelpEmby": "Найти это в Emby Server → API Keys",
188
+ "apiKeyKeepCurrent": "",
189
+ "plexServerPlaceholder": "Мой Plex Сервер",
190
+ "plexServerUrlPlaceholder": "",
191
+ "updateHint": "Или нажмите кнопку Обновить ниже, чтобы сохранить только изменение имени.",
192
+ "reorder": "",
193
+ "added": "Добавлено {{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": "Мобильное приложение",
236
+ "pairDevice": "Соединить устройство",
237
+ "generateToken": "Сгенерировать токен пары",
238
+ "scanQrCode": "",
239
+ "tokenExpires": "Токен истекает в {{time}}",
240
+ "lastSeen": "",
241
+ "connectedOn": "",
242
+ "noDevices": "Устройства не подключены",
243
+ "noDevicesDesc": "",
244
+ "revokeAll": "Отозвать все сессии",
245
+ "getOnGooglePlay": "Получить на Google Play",
246
+ "downloadOnAppStore": "Скачать на App Store",
247
+ "externalUrlRequired": "Внешний URL-адрес должен быть настроен в Общие настройки для подключения мобильных устройств.",
248
+ "mobileAccessDisabled": "Мобильный доступ отключен",
249
+ "mobileAccessDisabledDesc": "Разрешить мобильный доступ к приложению Tracearr подключаться к серверу.",
250
+ "enableMobileAccess": "Включить мобильный доступ",
251
+ "enabling": "Включение...",
252
+ "devicesConnected": "{{current}} устройств {{max}} подключено",
253
+ "pendingTokens": "{{count}} в ожидании парных токенов",
254
+ "addDevice": "Добавить устройство",
255
+ "disableMobileAccess": "Отключить мобильный доступ",
256
+ "revokeAllSessions": "Отозвать все",
257
+ "pairNewDevice": "Соединить новое устройство",
258
+ "pairNewDeviceDesc": "Сканируйте QR-код с помощью мобильного приложения Tracearr или введите токен вручную.",
259
+ "expiresIn": "Истекает через {{time}}",
260
+ "oneTimePairToken": "Одноразовый токен пары",
261
+ "copyToken": "Копировать токен",
262
+ "tokenExpiryNote": "Этот токен истекает через 5 минут и может быть использован только один раз.",
263
+ "done": "Готово",
264
+ "disableMobileAccessConfirm": "Это отключит все мобильные устройства и отменит все сеансы. Вы можете снова включить мобильный доступ позже.",
265
+ "disable": "Отключено",
266
+ "revokeAllConfirm": "Это отключит все мобильные устройства. Для повторного подключения им потребуется подключить снова.",
267
+ "renameDevice": "Переименовать устройство",
268
+ "renameDeviceDesc": "Введите имя для идентификации этого устройства в списке.",
269
+ "deviceName": "Имя устройства",
270
+ "deviceNamePlaceholder": "напр. iPhone 15",
271
+ "removeDevice": "Удалить устройство",
272
+ "failedToGenerateToken": "Не удалось сгенерировать токен",
273
+ "removeDeviceConfirm": "Вы уверены, что хотите удалить {{deviceName}}? Это устройство будет необходимо снова подключиться, чтобы восстановить.",
274
+ "externalUrlBanner": "Использование обратного прокси или удаленный доступ к нему? Установить",
275
+ "externalUrlBannerLink": "Внешний URL",
276
+ "externalUrlBannerSuffix": "чтобы мобильное приложение могло подключиться к серверу."
277
+ },
278
+ "tailscale": {
279
+ "title": "VPN-чешуя",
280
+ "description": "Безопасный доступ к Tracearr в сети Tailscale без перенаправления портов.",
281
+ "notAvailable": "Бинарный файл Tailscale не найден. Эта функция доступна только при запуске официального образа Docker.",
282
+ "disabledDescription": "Включите Tailscale для того, чтобы Tracearr использовал ваш частный адаптер. Пересылка портов или обратный прокси не требуется.",
283
+ "hostnameLabel": "Имя устройства",
284
+ "hostnameHint": "Необязательное настраиваемое имя для этого устройства только на ваш хвост. Только буквы, цифры и дефисы.",
285
+ "enable": "Включить масштаб хвоста",
286
+ "disable": "Отключить хвостовую шкалу",
287
+ "starting": "Запуск тайл...",
288
+ "stopping": "Остановка хвостовой шкалы...",
289
+ "awaitingAuth": "Ожидание подтверждения...",
290
+ "authorize": "Авторизоваться в хвостовой шкале",
291
+ "connected": "Tailscale подключен. Ваш экземпляр Tracearr доступен в портсете.",
292
+ "hostname": "",
293
+ "dnsName": "DNS Имя",
294
+ "tailnetUrl": "",
295
+ "showLogs": "Показать логи",
296
+ "hideLogs": "Скрыть журналы",
297
+ "noLogs": "Нет доступных журналов.",
298
+ "exitNodeNone": "Нет",
299
+ "exitNodeOffline": "(оффлайн)",
300
+ "unknownError": "Произошла неизвестная ошибка.",
301
+ "disableConfirmTitle": "Отключить Tailscale?",
302
+ "disableConfirmDescription": "Это отключит Tracearr от вашего портсета. Вы можете снова включить без повторной авторизации.",
303
+ "resetConfirmTitle": "",
304
+ "resetConfirmDescription": "Это отключит Tracearr от вашей сети и удалит идентификацию устройства. Вам нужно будет повторно авторизоваться, если вы включите его снова.",
305
+ "toast": {
306
+ "disabled": "Шкала хвостовых тканей отключена.",
307
+ "enableFailed": "Не удалось включить Tailscale",
308
+ "disableFailed": "Не удалось отключить Tailscale",
309
+ "reset": "Хвостовая чешуя была сброшена.",
310
+ "resetFailed": "Не удалось сбросить Tailscale",
311
+ "exitNodeSet": "Узел выхода обновлен.",
312
+ "exitNodeFailed": "Не удалось установить узел"
313
+ }
314
+ },
315
+ "jobs": {
316
+ "title": "Задания по обслуживанию",
317
+ "description": "Управление фоновыми задачами, которые сохраняют ваши данные точными и оптимизированными.",
318
+ "normalization": "Нормализация",
319
+ "backfill": "Заполнение",
320
+ "cleanup": "Очистить",
321
+ "running": "запущен",
322
+ "queued": "в очереди",
323
+ "delayed": "задержка",
324
+ "waiting": "Ожидание",
325
+ "runningState": "Выполняется",
326
+ "runJob": "Запустить работу",
327
+ "processed": "обработано",
328
+ "updated": "обновлено",
329
+ "unchanged": "без изменений",
330
+ "errors": "ошибки",
331
+ "lastJobCompleted": "Последняя работа успешно завершена",
332
+ "lastJobFailed": "Последняя работа не удалась",
333
+ "jobHistory": "История заданий",
334
+ "jobHistoryDesc": "Последнее выполнение задания по обслуживанию",
335
+ "runConfirm": "Запустить {{name}}?",
336
+ "mayTakeAWhile": "Это может занять некоторое время",
337
+ "mayTakeAWhileDesc": "Завершение этой работы может занять несколько минут в зависимости от размера вашей библиотеки.",
338
+ "startJob": "Начать работу"
339
+ },
340
+ "advanced": {
341
+ "title": "Расширенные настройки",
342
+ "externalUrl": "Внешний URL",
343
+ "trustProxy": "Доверять заголовкам прокси",
344
+ "reverseProxy": "Обратный прокси",
345
+ "connectionScenarios": "Сценарии подключения"
346
+ },
347
+ "accessControl": {
348
+ "title": "Контроль доступа",
349
+ "description": "Настройте кто может получить доступ к Tracearr",
350
+ "allowGuestAccess": "Разрешить гостевой доступ",
351
+ "allowGuestAccessDesc": "Когда отключено, только владелец сервера может войти в Tracearr",
352
+ "singleOwnerNote": "Примечание: Если гостевой доступ отключен, авторизоваться могут только владелец сервера. Все другие пользователи увидят сообщение \"Отказано в доступе\"."
236
353
  },
237
354
  "import": {
238
- "apiKeyHelp": "Найдено в настройках Tautulli → Web Интерфейс → API ключ.",
239
- "apiKeyPlaceholder": "Ваш ключ Tautulli API",
240
- "checkPlugin": "",
241
- "checkingPlugin": "",
242
- "connectToTautulli": "Подключиться к Tautulli",
243
- "connectedFound": "Подключено! Найдено {{users}} пользователей и записей истории {{records}}.",
244
- "duplicates": "",
245
- "enrichMetadata": "Дополнить метаданными медиа (рекомендуется)",
246
- "enrichMetadataHelp": "Извлекает дополнительные метаданные из вашего медиа-сервера для импортированных сессий.",
247
- "enriched": "Богатый",
248
- "errors": "Ошибки",
249
- "exportBackupHelp": "В Jellystat, перейдите в Настройки → Резервное копирование → Резервное копирование действий для экспорта данных.",
250
- "exportBackupHint": "Экспорт резервного копирования действий из Jellystat",
251
- "howItWorks": "Как работает импорт",
252
- "howItWorksDesc": "Tracearr импортирует все исторические данные из вашего источника. Это может занять некоторое время в зависимости от размера вашей библиотеки.",
355
+ "title": "Импорт данных",
356
+ "jellystat": "Импорт из Jellystat",
357
+ "tautulli": "Импорт из Tautulli",
358
+ "importProgress": "Прогресс импорта",
253
359
  "importComplete": "Импорт завершен",
254
360
  "importFailed": "Не удалось импортировать",
255
- "importFullRange": "",
256
- "importFullRangeHelp": "",
257
- "importHistory": "История импорта",
258
- "importInProgressGeneric": "Идёт импорт...",
259
- "importInProgressPercent": "Импорт в процессе ({{percent}}% завершено)...",
260
- "importOptions": "Параметры импорта",
261
- "importProgress": "Прогресс импорта",
361
+ "processed": "Обработано",
362
+ "page": "Страница",
262
363
  "imported": "Импортировано",
263
- "importing": "Импортируем...",
264
- "includeStreamDetails": "Включать подробные данные потока (кодеки, битрейт, разрешение)",
265
- "includeStreamDetailsHelp": "Импорт дополнительной информации о потоке. Может значительно увеличить время импорта.",
266
- "jellyfinEmby": "",
267
- "jellystat": "Импорт из Jellystat",
364
+ "skipped": "Пропущено",
365
+ "enriched": "Богатый",
366
+ "errors": "Ошибки",
268
367
  "noServers": "Серверы не подключены",
269
368
  "noServersHint": "Для импорта данных необходим по крайней мере один подключенный сервер.",
270
- "overlapSkipped": "",
369
+ "tautulliUrl": "URL Tautulli",
370
+ "tautulliUrlPlaceholder": "",
371
+ "tautulliUrlHelp": "URL вашего экземпляра Tautulli.",
372
+ "apiKeyHelp": "Найдено в настройках Tautulli → Web Интерфейс → API ключ.",
373
+ "testing": "Тестирование...",
374
+ "connectToTautulli": "Подключиться к Tautulli",
375
+ "importHistory": "История импорта",
376
+ "targetServer": "",
377
+ "selectPlexServer": "Выберите Plex сервер",
271
378
  "overwriteFriendlyNames": "Перезаписать существующие дружественные имена с названиями Tautulli",
272
379
  "overwriteFriendlyNamesHelp": "Существующие идентификационные имена в Tracearr будут заменены на дружественные имена от Tautulli.",
273
- "page": "Страница",
380
+ "includeStreamDetails": "Включать подробные данные потока (кодеки, битрейт, разрешение)",
381
+ "includeStreamDetailsHelp": "Импорт дополнительной информации о потоке. Может значительно увеличить время импорта.",
382
+ "importing": "Импортируем...",
383
+ "startImport": "Начать импорт",
384
+ "howItWorks": "Как работает импорт",
385
+ "howItWorksDesc": "Tracearr импортирует все исторические данные из вашего источника. Это может занять некоторое время в зависимости от размера вашей библиотеки.",
386
+ "recordsMayBeSkipped": "Записи могут быть пропущены, если:",
387
+ "selectTargetServer": "Выберите целевой сервер",
388
+ "selectJellyfinServer": "Выберите сервер Jellyfin или Emby",
389
+ "uploadJellystatBackup": "Загрузить резервную копию Jellystat",
390
+ "exportBackupHint": "Экспорт резервного копирования действий из Jellystat",
391
+ "exportBackupHelp": "В Jellystat, перейдите в Настройки → Резервное копирование → Резервное копирование действий для экспорта данных.",
392
+ "importOptions": "Параметры импорта",
393
+ "enrichMetadata": "Дополнить метаданными медиа (рекомендуется)",
394
+ "enrichMetadataHelp": "Извлекает дополнительные метаданные из вашего медиа-сервера для импортированных сессий.",
395
+ "updateExistingRecords": "Обновить существующие записи с подробностями потока",
396
+ "updateExistingRecordsHelp": "Раньше импортированные записи будут обновляться с данными качества потока.",
397
+ "pleaseEnterDetails": "Пожалуйста, введите Tautulli URL и API ключ",
398
+ "testingConnection": "Проверка соединения...",
399
+ "pleaseSelectJsonFile": "Пожалуйста, выберите файл JSON",
400
+ "uploadingBackup": "Загрузка файла резервной копии...",
401
+ "plex": "Plex (Таулли)",
402
+ "jellyfinEmby": "",
403
+ "step1": "",
404
+ "step2": "",
405
+ "apiKeyPlaceholder": "Ваш ключ Tautulli API",
406
+ "skipUserNotFoundPlex": "Пользователь не найден — Plex пользователь не существует в Tracearr. Синхронизируйте ваш сервер, чтобы добавить всех пользователей.",
407
+ "skipDuplicate": "Повторяющиеся сессии— сессия уже была импортирована ранее.",
408
+ "skipInProgress": "Сессия In-progress — Пропущены активные или незавершенные сеансы без идентификатора ссылки.",
409
+ "skipUserNotFoundJellyfin": "Пользователь не найден — Пользователь Jellyfin/Emby не существует в Tracearr. Синхронизируйте ваш сервер, чтобы добавить всех пользователей.",
410
+ "skipSyncHint": "Если пропущено много записей, убедитесь, что вы недавно синхронизировали ваш сервер в Настройках → Серверах.",
411
+ "importInProgressPercent": "Импорт в процессе ({{percent}}% завершено)...",
412
+ "importInProgressGeneric": "Идёт импорт...",
413
+ "startingImport": "Запуск импорта...",
414
+ "connectedFound": "Подключено! Найдено {{users}} пользователей и записей истории {{records}}.",
274
415
  "playbackReporting": "",
275
416
  "playbackReportingDesc": "",
276
- "pleaseEnterDetails": "Пожалуйста, введите Tautulli URL и API ключ",
277
- "pleaseSelectJsonFile": "Пожалуйста, выберите файл JSON",
278
- "plex": "Plex (Таулли)",
417
+ "checkPlugin": "",
418
+ "checkingPlugin": "",
279
419
  "pluginFound": "",
280
420
  "pluginNotInstalled": "",
281
- "processed": "Обработано",
282
- "recordsMayBeSkipped": "Записи могут быть пропущены, если:",
283
- "selectJellyfinServer": "Выберите сервер Jellyfin или Emby",
284
- "selectPlexServer": "Выберите Plex сервер",
285
- "selectTargetServer": "Выберите целевой сервер",
286
421
  "serverTimezone": "",
287
422
  "serverTimezoneHelp": "",
288
- "skipDuplicate": "Повторяющиеся сессии— сессия уже была импортирована ранее.",
289
- "skipDuplicatePlugin": "",
290
- "skipInProgress": "Сессия In-progress — Пропущены активные или незавершенные сеансы без идентификатора ссылки.",
423
+ "importFullRange": "",
424
+ "importFullRangeHelp": "",
425
+ "overlapSkipped": "",
426
+ "duplicates": "",
291
427
  "skipOverlap": "",
292
- "skipSyncHint": "Если пропущено много записей, убедитесь, что вы недавно синхронизировали ваш сервер в Настройках → Серверах.",
293
- "skipUserNotFoundJellyfin": "Пользователь не найден — Пользователь Jellyfin/Emby не существует в Tracearr. Синхронизируйте ваш сервер, чтобы добавить всех пользователей.",
294
- "skipUserNotFoundPlex": "Пользователь не найден — Plex пользователь не существует в Tracearr. Синхронизируйте ваш сервер, чтобы добавить всех пользователей.",
295
- "skipped": "Пропущено",
296
- "startImport": "Начать импорт",
297
- "startingImport": "Запуск импорта...",
298
- "step1": "",
299
- "step2": "",
300
- "targetServer": "",
301
- "tautulli": "Импорт из Tautulli",
302
- "tautulliUrl": "URL Tautulli",
303
- "tautulliUrlHelp": "URL вашего экземпляра Tautulli.",
304
- "tautulliUrlPlaceholder": "",
305
- "testing": "Тестирование...",
306
- "testingConnection": "Проверка соединения...",
307
- "title": "Импорт данных",
308
- "updateExistingRecords": "Обновить существующие записи с подробностями потока",
309
- "updateExistingRecordsHelp": "Раньше импортированные записи будут обновляться с данными качества потока.",
310
- "uploadJellystatBackup": "Загрузить резервную копию Jellystat",
311
- "uploadingBackup": "Загрузка файла резервной копии..."
428
+ "skipDuplicatePlugin": ""
312
429
  },
313
- "ipWarning": {
314
- "acknowledge": "Понятно",
315
- "message": "Кажется, все пользователи используют один и тот же IP адрес или локальный сетевой IP-адрес. Это может повлиять на логику, основанную на правилах для определения местоположения или IP-адресов."
430
+ "plex": {
431
+ "signInWithPlex": "Войти через Plex",
432
+ "signUpWithPlex": "Зарегистрироваться через Plex",
433
+ "selectServer": "Выбрать сервер",
434
+ "chooseServer": "Выберите Plex Media Server для мониторинга"
316
435
  },
317
- "jobs": {
318
- "backfill": "Заполнение",
319
- "cleanup": "Очистить",
320
- "delayed": "задержка",
321
- "description": "",
322
- "errors": "ошибки",
323
- "jobHistory": "История заданий",
324
- "jobHistoryDesc": "Последнее выполнение задания по обслуживанию",
325
- "lastJobCompleted": "Последняя работа успешно завершена",
326
- "lastJobFailed": "Последняя работа не удалась",
327
- "mayTakeAWhile": "Это может занять некоторое время",
328
- "mayTakeAWhileDesc": "Завершение этой работы может занять несколько минут в зависимости от размера вашей библиотеки.",
329
- "normalization": "Нормализация",
330
- "processed": "обработано",
331
- "queued": "в очереди",
332
- "runConfirm": "Запустить {{name}}?",
333
- "runJob": "Запустить работу",
334
- "running": "запущен",
335
- "runningState": "Выполняется",
336
- "startJob": "Начать работу",
337
- "title": "Задания по обслуживанию",
338
- "unchanged": "без изменений",
339
- "updated": "обновлено",
340
- "waiting": "Ожидание"
436
+ "account": {
437
+ "createAccount": "Создать Аккаунт",
438
+ "email": "Почта",
439
+ "password": "Пароль",
440
+ "displayName": "Показать имя",
441
+ "createYourAccount": "Создайте свой аккаунт, чтобы начать",
442
+ "signInToAccount": "Войдите в свою учетную запись",
443
+ "useLocalAccount": "Использовать локальную учетную запись"
341
444
  },
342
- "mobile": {
343
- "addDevice": "Добавить устройство",
344
- "connectedOn": "",
345
- "copyToken": "Копировать токен",
346
- "deviceName": "Имя устройства",
347
- "deviceNamePlaceholder": "напр. iPhone 15",
348
- "devicesConnected": "{{current}} устройств {{max}} подключено",
349
- "disable": "Отключено",
350
- "disableMobileAccess": "Отключить мобильный доступ",
351
- "disableMobileAccessConfirm": "Это отключит все мобильные устройства и отменит все сеансы. Вы можете снова включить мобильный доступ позже.",
352
- "done": "Готово",
353
- "downloadOnAppStore": "Скачать на App Store",
354
- "enableMobileAccess": "Включить мобильный доступ",
355
- "enabling": "Включение...",
356
- "expiresIn": "Истекает через {{time}}",
357
- "externalUrlBanner": "Использование обратного прокси или удаленный доступ к нему? Установить",
358
- "externalUrlBannerLink": "Внешний URL",
359
- "externalUrlBannerSuffix": "чтобы мобильное приложение могло подключиться к серверу.",
360
- "externalUrlRequired": "Внешний URL-адрес должен быть настроен в Общие настройки для подключения мобильных устройств.",
361
- "failedToGenerateToken": "Не удалось сгенерировать токен",
362
- "generateToken": "Сгенерировать токен пары",
363
- "getOnGooglePlay": "Получить на Google Play",
364
- "lastSeen": "",
365
- "mobileAccessDisabled": "Мобильный доступ отключен",
366
- "mobileAccessDisabledDesc": "Разрешить мобильный доступ к приложению Tracearr подключаться к серверу.",
367
- "noDevices": "Устройства не подключены",
368
- "noDevicesDesc": "",
369
- "oneTimePairToken": "Одноразовый токен пары",
370
- "pairDevice": "Соединить устройство",
371
- "pairNewDevice": "Соединить новое устройство",
372
- "pairNewDeviceDesc": "Сканируйте QR-код с помощью мобильного приложения Tracearr или введите токен вручную.",
373
- "pendingTokens": "{{count}} в ожидании парных токенов",
374
- "removeDevice": "Удалить устройство",
375
- "removeDeviceConfirm": "Вы уверены, что хотите удалить {{deviceName}}? Это устройство будет необходимо снова подключиться, чтобы восстановить.",
376
- "renameDevice": "Переименовать устройство",
377
- "renameDeviceDesc": "Введите имя для идентификации этого устройства в списке.",
378
- "revokeAll": "Отозвать все сессии",
379
- "revokeAllConfirm": "Это отключит все мобильные устройства. Для повторного подключения им потребуется подключить снова.",
380
- "revokeAllSessions": "Отозвать все",
381
- "scanQrCode": "",
382
- "title": "Мобильное приложение",
383
- "tokenExpires": "Токен истекает в {{time}}",
384
- "tokenExpiryNote": "Этот токен истекает через 5 минут и может быть использован только один раз."
445
+ "update": {
446
+ "title": "Доступно обновление",
447
+ "releaseNotes": "Примечания к выпуску",
448
+ "updateCommand": "Обновить команду",
449
+ "pullInstructions": "После загрузки перезагрузите контейнер, чтобы применить обновление.",
450
+ "stableRelease": "Стабильный выпуск",
451
+ "betaUpdate": "Бета обновление",
452
+ "newVersion": "Новая версия",
453
+ "versionAvailable": "Доступно {{version}}",
454
+ "beforeUpdating": ""
385
455
  },
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": ""
456
+ "whatsNew": {
457
+ "title": "",
458
+ "installed": "",
459
+ "installedSince": "",
460
+ "reopenDescription": "",
461
+ "openNotes": "",
462
+ "gotIt": "",
463
+ "allReleases": "",
464
+ "since": "",
465
+ "earlier": "",
466
+ "installedBadge": "",
467
+ "latestBadge": "",
468
+ "changeCount_one": "",
469
+ "changeCount_other": "",
470
+ "series": "",
471
+ "docs": "",
472
+ "empty": "",
473
+ "types": {
474
+ "new": "",
475
+ "improved": "",
476
+ "fix": "",
477
+ "security": "",
478
+ "note": ""
479
+ }
480
+ },
481
+ "serverHealth": {
482
+ "unreachable": "{{serverName}} недоступен",
483
+ "multipleUnreachable": "Сервер {{count}} недоступен: {{serverNames}}"
484
+ },
485
+ "ipWarning": {
486
+ "message": "Кажется, все пользователи используют один и тот же IP адрес или локальный сетевой IP-адрес. Это может повлиять на логику, основанную на правилах для определения местоположения или IP-адресов.",
487
+ "acknowledge": "Понятно"
488
+ },
489
+ "backup": {
490
+ "title": "Резервное копирование",
491
+ "backToBackups": "Вернуться к резервным копиям",
492
+ "description": "Резервное копирование и восстановление данных Tracearr",
493
+ "createBackup": "Создать резервную копию",
494
+ "creating": "Создание резервной копии...",
495
+ "uploadBackup": "Загрузить резервную копию",
496
+ "uploading": "Загрузка...",
497
+ "databaseSize": "Текущий размер базы данных: {{size}}",
498
+ "freeSpace": "Каталог резервных копий свободного места: {{size}}",
499
+ "lowDiskSpace": "Низкое место на диске — резервные копии и восстановления требуют по крайней мере в два раза больше размера базы данных в свободное пространство.",
500
+ "backupHistory": "История резервных копий",
501
+ "noBackups": "Резервных копий пока нет. Создайте первую резервную копию выше.",
502
+ "size": "Размер",
503
+ "date": "Дата",
504
+ "type": "Тип",
505
+ "version": "Версии",
506
+ "actions": "Действия",
507
+ "rowActions": "",
508
+ "download": "",
509
+ "typeManual": "Ручной",
510
+ "typeScheduled": "Запланированный",
511
+ "typeUploaded": "Загружено",
512
+ "restoreAction": "Восстановить",
513
+ "deleteConfirmTitle": "Удалить резервную копию",
514
+ "deleteConfirmDescription": "Вы уверены, что хотите удалить эту резервную копию? Это действие нельзя отменить.",
515
+ "schedule": "Запланированные резервные копии",
516
+ "scheduleType": "График",
517
+ "scheduleDisabled": "Отключено",
518
+ "scheduleDaily": "Ежедневно",
519
+ "scheduleWeekly": "Еженедельно",
520
+ "scheduleMonthly": "Ежемесячно",
521
+ "scheduleTime": "Время ({{timezone}})",
522
+ "scheduleHour": "",
523
+ "scheduleMinute": "",
524
+ "scheduleDayOfWeek": "День недели",
525
+ "scheduleDayOfMonth": "День месяца",
526
+ "scheduleDayOfMonthHint": "В месяцах с меньшим количеством дней, резервная копия работает в последний день.",
527
+ "retentionCount": "Сохранить последний",
528
+ "retentionSuffix": "запланированные резервные копии",
529
+ "daySun": "Воскресенье",
530
+ "dayMon": "Понедельник",
531
+ "dayTue": "Вторник",
532
+ "dayWed": "Среда",
533
+ "dayThu": "Четверг",
534
+ "dayFri": "Пятница",
535
+ "daySat": "Суббота",
536
+ "restore": {
537
+ "title": "Восстановить резервную копию",
538
+ "selectedBackup": "Выбранная резервная копия",
539
+ "databaseSize": "Размер базы данных",
540
+ "sessions": "Сессии",
541
+ "users": "Пользователи",
542
+ "servers": "Серверы",
543
+ "automations": "",
544
+ "libraryItems": "Элементы библиотеки",
545
+ "tables": "Таблицы",
546
+ "warning": "Восстановление заменит все существующие данные. Вам нужно будет заново войти в систему после завершения восстановления.",
547
+ "confirmLabel": "Я понимаю, что это заменит все данные",
548
+ "confirm": "Начать восстановление",
549
+ "complete": "Восстановление успешно завершено. Страница будет обновлена в ближайшее время.",
550
+ "failed": "Не удалось восстановить",
551
+ "cannotRestore": "Для восстановления требуются права суперпользователя PostgreSQL. Пожалуйста, убедитесь, что пользователь базы данных имеет права суперпользователя и повторите попытку.",
552
+ "pgVersionMismatch": "Резервная копия была создана на PostgreSQL {{backupVersion}} , но этот сервер запускает PostgreSQL {{serverVersion}}. Восстановление дампа с новой версии PostgreSQL не поддерживается.",
553
+ "tsVersionMismatch": "Резервная копия была создана с TimescaleDB {{backupVersion}} , но этот сервер поддерживает только до TimescaleDB {{serverVersion}}."
404
554
  },
405
- "groups": {
406
- "access": "",
407
- "data": "",
408
- "general": "",
409
- "notifications": "",
410
- "servers": ""
555
+ "toast": {
556
+ "backupCreated": "Резервная копия успешно создана",
557
+ "backupCreateFailed": "Не удалось создать резервную копию",
558
+ "backupUploaded": "Резервная копия успешно загружена",
559
+ "backupUploadFailed": "Не удалось загрузить резервную копию",
560
+ "backupDeleted": "Резервная копия удалена",
561
+ "backupDeleteFailed": "Не удалось удалить резервную копию",
562
+ "restoreStarted": "Восстановление начато",
563
+ "restoreStartFailed": "Не удалось начать восстановление",
564
+ "scheduleSaved": "Расписание резервного копирования сохранено",
565
+ "scheduleError": "Не удалось сохранить резервную копию расписания"
566
+ }
567
+ },
568
+ "newsletters": {
569
+ "ownerOnly": "",
570
+ "new": "",
571
+ "empty": "",
572
+ "emptyDescription": "",
573
+ "noDestinationTitle": "",
574
+ "noDestinationDescription": "",
575
+ "noDestinationHint": "",
576
+ "addEmailDestination": "",
577
+ "enabled": "",
578
+ "rowActions": "",
579
+ "duplicate": "",
580
+ "sendNow": "",
581
+ "deleteTitle": "",
582
+ "deleteDescription": "",
583
+ "schedule": {
584
+ "daily": "",
585
+ "weekly": "",
586
+ "monthly": "",
587
+ "cron": "",
588
+ "inZone": ""
411
589
  },
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": ""
590
+ "nextRun": "",
591
+ "noNextRun": "",
592
+ "neverSent": "",
593
+ "lastSend": "",
594
+ "outcome": {
595
+ "rendering": "",
596
+ "sending": "",
597
+ "sent": "",
598
+ "partial": "",
599
+ "failed": "",
600
+ "skipped_empty": ""
431
601
  },
432
- "selectLabel": ""
433
- },
434
- "newsletters": {
435
- "addEmailDestination": "",
436
- "copyOf": "",
437
602
  "counts": {
438
- "albums_one": "",
439
- "albums_other": "",
440
603
  "movies_one": "",
441
604
  "movies_other": "",
442
605
  "shows_one": "",
443
606
  "shows_other": "",
607
+ "albums_one": "",
608
+ "albums_other": "",
444
609
  "watched_one": "",
445
610
  "watched_other": ""
446
611
  },
447
- "deleteDescription": "",
448
- "deleteTitle": "",
449
- "duplicate": "",
612
+ "copyOf": "",
613
+ "richText": {
614
+ "bold": "",
615
+ "italic": "",
616
+ "link": "",
617
+ "bulletList": "",
618
+ "linkHref": "",
619
+ "linkApply": "",
620
+ "counter": ""
621
+ },
450
622
  "editor": {
451
- "actions": {
452
- "more": "",
453
- "preview": "",
454
- "send": "",
455
- "sendHint": "",
456
- "test": "",
457
- "testHint": ""
458
- },
459
- "allLibraries": "",
460
- "allServers": "",
623
+ "newTitle": "",
624
+ "headerSummary": "",
625
+ "notFound": "",
461
626
  "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": ""
627
+ "tabs": {
628
+ "edit": "",
629
+ "history": ""
491
630
  },
492
- "dstNote": "",
493
- "enabledHelp": "",
494
- "fixFirst": "",
495
- "headerSummary": "",
496
631
  "historyNeedsSave": "",
497
- "intro": "",
498
- "introPlaceholder": "",
632
+ "name": "",
633
+ "nameHelp": "",
634
+ "turnOnNow": "",
635
+ "enabledHelp": "",
636
+ "schedule": "",
637
+ "scheduleKind": "",
499
638
  "kinds": {
500
- "cron": "",
501
639
  "daily": "",
640
+ "weekly": "",
502
641
  "monthly": "",
503
- "weekly": ""
642
+ "cron": ""
643
+ },
644
+ "dayOfWeek": "",
645
+ "dayOfMonth": "",
646
+ "dayOfMonthHelp": "",
647
+ "time": "",
648
+ "timezone": "",
649
+ "timezoneHelp": "",
650
+ "cron": "",
651
+ "cronHint": "",
652
+ "dstNote": "",
653
+ "nextRun": "",
654
+ "nextRunPending": "",
655
+ "content": "",
656
+ "windowKind": "",
657
+ "windows": {
658
+ "since_last_send": "",
659
+ "fixed": ""
504
660
  },
661
+ "windowHelp": {
662
+ "since_last_send": "",
663
+ "fixed": ""
664
+ },
665
+ "windowSentence": {
666
+ "fallback": "",
667
+ "fallbackLabel": "",
668
+ "fixed": "",
669
+ "fixedAfter": "",
670
+ "fixedLabel": ""
671
+ },
672
+ "windowMax": "",
673
+ "days": "",
674
+ "servers": "",
675
+ "allServers": "",
676
+ "searchServers": "",
677
+ "noServers": "",
678
+ "serversSelected": "",
679
+ "variantsNote": "",
680
+ "serversHelp": "",
505
681
  "libraries": "",
506
- "librariesHelp": "",
682
+ "allLibraries": "",
683
+ "searchLibraries": "",
684
+ "noLibraries": "",
507
685
  "librariesSelected": "",
508
- "links": {
509
- "tracearr": "",
510
- "tracearrNote": ""
686
+ "librariesHelp": "",
687
+ "clear": "",
688
+ "unknownLibrary": "",
689
+ "removeLibrary": "",
690
+ "sections": {
691
+ "movies": "",
692
+ "shows": "",
693
+ "music": "",
694
+ "mostWatched": "",
695
+ "legend": "",
696
+ "description": "",
697
+ "upTo": "",
698
+ "the": "",
699
+ "units": {
700
+ "movies": "",
701
+ "shows": "",
702
+ "seasonsEach": "",
703
+ "albums": "",
704
+ "mostPlayed": ""
705
+ },
706
+ "labels": {
707
+ "movies": "",
708
+ "shows": "",
709
+ "seasons": "",
710
+ "music": "",
711
+ "mostWatched": ""
712
+ },
713
+ "musicHelp": "",
714
+ "mostWatchedHelp": ""
511
715
  },
512
716
  "message": "",
513
- "name": "",
514
- "nameHelp": "",
515
- "newTitle": "",
516
- "nextRun": "",
517
- "nextRunPending": "",
518
- "noLibraries": "",
519
- "noServers": "",
520
- "notFound": "",
521
- "outro": "",
522
- "outroPlaceholder": "",
717
+ "senderName": "",
718
+ "senderNameHelp": "",
719
+ "senderNameRequiredMulti": "",
720
+ "previewVariant_one": "",
721
+ "previewVariant_other": "",
722
+ "variantHeading": "",
723
+ "subject": "",
724
+ "subjectHelp": "",
523
725
  "placeholders": {
524
- "end_date": "",
525
- "item_count": "",
526
726
  "server_name": "",
527
- "start_date": ""
727
+ "start_date": "",
728
+ "end_date": "",
729
+ "item_count": ""
528
730
  },
529
- "preview": {
530
- "countsListed": {
531
- "albums": "",
532
- "movies": "",
533
- "shows": ""
731
+ "intro": "",
732
+ "introPlaceholder": "",
733
+ "outro": "",
734
+ "outroPlaceholder": "",
735
+ "save": "",
736
+ "saving": "",
737
+ "unsaved": "",
738
+ "fixFirst": "",
739
+ "sendNeedsSave": "",
740
+ "recipients": {
741
+ "title": "",
742
+ "members": "",
743
+ "membersHelp": "",
744
+ "ownerNote": "",
745
+ "extraTrigger": "",
746
+ "extraHelp": "",
747
+ "pasteAddresses": "",
748
+ "addressLabel": "",
749
+ "nameLabel": "",
750
+ "namePlaceholder": "",
751
+ "removeAddress": "",
752
+ "badAddress": "",
753
+ "loadFailed": "",
754
+ "willReceive": "",
755
+ "excludedCount": "",
756
+ "notIncludable": "",
757
+ "noAddress": "",
758
+ "suppressedCount": "",
759
+ "joinedSinceLastSend": "",
760
+ "newSinceLastSend": "",
761
+ "manage": "",
762
+ "manageHelp": "",
763
+ "searchPlaceholder": "",
764
+ "serverFilter": "",
765
+ "allServers": "",
766
+ "tabs": {
767
+ "receiving": "",
768
+ "excluded": "",
769
+ "noAddress": "",
770
+ "suppressed": ""
534
771
  },
535
- "draft": "",
536
- "images": "",
537
- "imagesBlocked": "",
538
- "imagesBlockedNote": "",
539
- "imagesOn": "",
540
- "linksNote": "",
541
- "recipients": "",
542
- "subjectLabel": "",
772
+ "selectAll": "",
773
+ "selectPerson": "",
774
+ "selectedCount": "",
775
+ "excludeSelected": "",
776
+ "includeSelected": "",
777
+ "noMatches": "",
778
+ "groupsNote": "",
779
+ "noAddressHelp": "",
780
+ "contactEmailFor": "",
781
+ "saveEmail": "",
782
+ "openUserPage": "",
783
+ "unknownMember": "",
784
+ "account": "",
785
+ "fromUsername": "",
786
+ "extraAddress": "",
787
+ "suppressed": "",
788
+ "suppressedHelp": "",
789
+ "exclude": "",
790
+ "excludeAction": "",
791
+ "include": "",
792
+ "includeAction": "",
793
+ "excludedHelp": "",
794
+ "notIncludableHelp": "",
795
+ "excludedAfterSave": "",
796
+ "includedAfterSave": "",
797
+ "reasons": {
798
+ "excluded": "",
799
+ "banned": "",
800
+ "pending": "",
801
+ "noServer": ""
802
+ },
803
+ "emptyTitle": "",
804
+ "emptyDescription": ""
805
+ },
806
+ "delivery": {
543
807
  "title": "",
544
- "variantTab": "",
545
- "variants": "",
546
- "width": "",
547
- "widths": {
548
- "desktop": "",
549
- "phone": ""
808
+ "destination": "",
809
+ "destinationHelp": "",
810
+ "pickDestination": "",
811
+ "noDestination": "",
812
+ "imageMode": "",
813
+ "modes": {
814
+ "hosted": "",
815
+ "inline": "",
816
+ "none": ""
550
817
  },
551
- "window": "",
552
- "windowSince": ""
818
+ "modeHelp": {
819
+ "hosted": "",
820
+ "inline": "",
821
+ "none": ""
822
+ },
823
+ "modePreviewHint": "",
824
+ "hostedNeedsUrl": "",
825
+ "skipWhenEmpty": "",
826
+ "skipWhenEmptyHelp": ""
827
+ },
828
+ "links": {
829
+ "tracearr": "",
830
+ "tracearrNote": ""
553
831
  },
554
- "previewVariant_one": "",
555
- "previewVariant_other": "",
556
832
  "readiness": {
833
+ "title": "",
834
+ "intro": "",
557
835
  "destination": "",
558
- "destinationError": "",
559
836
  "destinationFail": "",
560
837
  "destinationUnknown": "",
561
- "dns": "",
562
- "dnsLink": "",
563
- "emptyVariant": "",
838
+ "destinationError": "",
839
+ "fixDestination": "",
840
+ "fixRecipients": "",
841
+ "fixExternalUrl": "",
564
842
  "externalUrl": "",
565
843
  "externalUrlFail": "",
566
844
  "externalUrlNotHttps": "",
567
- "fixDestination": "",
568
- "fixExternalUrl": "",
569
- "fixRecipients": "",
845
+ "noPublicUrl": "",
846
+ "privatePublicUrl": "",
847
+ "emptyVariant": "",
848
+ "variantsLoadFailed": "",
849
+ "serverSettingsLink": "",
570
850
  "fromDomain": "",
571
851
  "fromDomainFail": "",
572
852
  "fromDomainUnknown": "",
573
- "intro": "",
574
- "noPublicUrl": "",
575
- "privatePublicUrl": "",
576
- "recipientsChecking": "",
577
- "recipientsFail": "",
578
- "recipientsLoadFailed": "",
579
853
  "recipients_one": "",
580
854
  "recipients_other": "",
581
- "serverSettingsLink": "",
582
- "title": "",
583
- "variantsLoadFailed": ""
855
+ "recipientsFail": "",
856
+ "recipientsChecking": "",
857
+ "recipientsLoadFailed": "",
858
+ "dns": "",
859
+ "dnsLink": ""
584
860
  },
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": ""
861
+ "actions": {
862
+ "preview": "",
863
+ "test": "",
864
+ "send": "",
865
+ "more": "",
866
+ "testHint": "",
867
+ "sendHint": ""
650
868
  },
651
- "removeLibrary": "",
652
- "save": "",
653
- "saving": "",
654
- "schedule": "",
655
- "scheduleKind": "",
656
- "searchLibraries": "",
657
- "searchServers": "",
658
- "sections": {
659
- "description": "",
660
- "labels": {
661
- "mostWatched": "",
869
+ "preview": {
870
+ "variants": "",
871
+ "variantTab": "",
872
+ "title": "",
873
+ "draft": "",
874
+ "subjectLabel": "",
875
+ "window": "",
876
+ "windowSince": "",
877
+ "countsListed": {
662
878
  "movies": "",
663
- "music": "",
664
- "seasons": "",
665
- "shows": ""
879
+ "shows": "",
880
+ "albums": ""
666
881
  },
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": ""
882
+ "recipients": "",
883
+ "width": "",
884
+ "widths": {
885
+ "desktop": "",
886
+ "phone": ""
681
887
  },
682
- "upTo": ""
888
+ "images": "",
889
+ "imagesOn": "",
890
+ "imagesBlocked": "",
891
+ "imagesBlockedNote": "",
892
+ "linksNote": ""
893
+ },
894
+ "test": {
895
+ "title": "",
896
+ "description": "",
897
+ "variant": "",
898
+ "address": "",
899
+ "send": ""
683
900
  },
684
901
  "send": {
685
- "confirm": "",
686
- "nobody": "",
902
+ "title": "",
687
903
  "previewing": "",
688
- "sending": "",
689
904
  "summary": "",
690
- "title": "",
905
+ "nobody": "",
691
906
  "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": ""
907
+ "trimmed_other": "",
908
+ "confirm": "",
909
+ "sending": ""
738
910
  }
739
911
  },
740
- "empty": "",
741
- "emptyDescription": "",
742
- "enabled": "",
743
912
  "history": {
744
- "attempts": "",
745
913
  "empty": "",
746
914
  "emptyDescription": "",
747
- "finished": "",
748
915
  "loadFailed": "",
749
- "open": "",
750
- "openSnapshot": "",
751
- "openVariantSnapshot": "",
752
- "page": "",
753
- "pruned": "",
916
+ "trigger": {
917
+ "schedule": "",
918
+ "manual": "",
919
+ "test": ""
920
+ },
921
+ "window": "",
754
922
  "recipients": "",
755
923
  "recipientsEmpty": "",
756
- "retryFailed": "",
924
+ "finished": "",
925
+ "open": "",
926
+ "page": "",
757
927
  "sendTitle": "",
758
- "snapshotTitle": "",
759
928
  "status": {
760
- "failed": "",
761
929
  "queued": "",
762
930
  "sent": "",
763
- "suppressed": "",
764
- "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
- },
931
+ "failed": "",
932
+ "suppressed": "",
933
+ "unknown": ""
934
+ },
935
+ "attempts": "",
936
+ "unknownHelp": "",
937
+ "openSnapshot": "",
938
+ "variant": "",
939
+ "variantEmpty": "",
940
+ "openVariantSnapshot": "",
941
+ "snapshotTitle": "",
942
+ "pruned": "",
943
+ "retryFailed": ""
944
+ }
945
+ },
946
+ "email": {
792
947
  "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": ""
948
+ "branding": {
949
+ "title": "",
950
+ "description": "",
951
+ "logo": {
952
+ "label": "",
953
+ "tracearr": "",
954
+ "none": "",
955
+ "url": ""
956
+ },
957
+ "logoUrl": "",
958
+ "accent": "",
959
+ "accentPicker": "",
960
+ "footerText": "",
961
+ "footerTextHelp": "",
962
+ "postalAddress": "",
963
+ "postalAddressHelp": "",
964
+ "mailto": "",
965
+ "mailtoHelp": "",
966
+ "save": "",
967
+ "saving": ""
809
968
  },
810
- "sendNow": ""
969
+ "suppressions": {
970
+ "title": "",
971
+ "globalNote": "",
972
+ "empty": "",
973
+ "emptyDescription": "",
974
+ "add": "",
975
+ "addTitle": "",
976
+ "addDescription": "",
977
+ "address": "",
978
+ "addConfirm": "",
979
+ "reason": {
980
+ "unsubscribed": "",
981
+ "manual": ""
982
+ },
983
+ "openSource": "",
984
+ "remove": "",
985
+ "removeTitle": "",
986
+ "removeDescription": ""
987
+ }
811
988
  },
812
- "plex": {
813
- "chooseServer": "Выберите Plex Media Server для мониторинга",
814
- "selectServer": "Выбрать сервер",
815
- "signInWithPlex": "Войти через Plex",
816
- "signUpWithPlex": "Зарегистрироваться через Plex"
989
+ "shared": {
990
+ "timezone": {
991
+ "placeholder": "",
992
+ "search": "",
993
+ "empty": "",
994
+ "other": ""
995
+ }
817
996
  },
818
997
  "requests": {
819
- "confirmUnlink": {
820
- "body": "",
821
- "title": ""
822
- },
998
+ "label": "",
999
+ "link": "",
1000
+ "unlink": "",
1001
+ "syncNow": "",
1002
+ "enable": "",
1003
+ "disable": "",
1004
+ "paused": "",
1005
+ "menuLabel": "",
1006
+ "syncedAgo": "",
1007
+ "neverSynced": "",
823
1008
  "counts": {
824
1009
  "requests_one": "",
825
1010
  "requests_other": "",
@@ -828,195 +1013,37 @@
828
1013
  "unmatchedUsers_one": "",
829
1014
  "unmatchedUsers_other": ""
830
1015
  },
1016
+ "needsKey": "",
1017
+ "lastError": "",
1018
+ "lastErrorNoTime": "",
831
1019
  "dialog": {
1020
+ "titleLink": "",
1021
+ "titleEdit": "",
1022
+ "description": "",
1023
+ "url": "",
832
1024
  "apiKey": "",
833
1025
  "apiKeyHint": "",
834
1026
  "apiKeyKeep": "",
835
- "description": "",
1027
+ "showKey": "",
836
1028
  "hideKey": "",
1029
+ "test": "",
1030
+ "testing": "",
1031
+ "save": "",
1032
+ "saveHint": "",
837
1033
  "match": "",
838
1034
  "mismatch": "",
839
1035
  "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}} недоступен: {{serverNames}}",
872
- "unreachable": "{{serverName}} недоступен"
873
- },
874
- "servers": {
875
- "addServer": "Добавить сервер",
876
- "addServerDialogDescOther": "Подключите сервер Jellyfin или Emby.",
877
- "addServerDialogDescPlex": "Выберите Plex сервер из связанного аккаунта.",
878
- "added": "Добавлено {{date}}",
879
- "allFieldsRequired": "Все поля обязательны",
880
- "allServersConnected": "Все серверы подключены",
881
- "allServersConnectedDesc": "Все серверы этой учетной записи уже подключены.",
882
- "apiKeyHelp": "Найдена в панели управления вашего медиа-сервера под API Keys или Расширенные настройки.",
883
- "apiKeyHelpEmby": "Найти это в Emby Server → API Keys",
884
- "apiKeyHelpJellyfin": "Найти это в панели управления Jellyfin → API Keys",
885
- "apiKeyPlaceholder": "Введите ваш API ключ",
886
- "checkingConnection": "",
887
- "chooseAccount": "Выберите аккаунт...",
888
- "connectServer": "Подключить сервер",
889
- "connecting": "Подключение...",
890
- "connectionFailed": "Не удалось подключиться",
891
- "connectionSuccess": "Успешное подключение",
892
- "description": "Управление подключенными приложениями Plex, Jellyfin, и Emby серверами",
893
- "discoveringConnections": "Поиск соединений...",
894
- "discoveringServers": "Поиск доступных серверов Plex...",
895
- "editServer": "Изменить сервер",
896
- "editServerDesc": "Обновить имя сервера или URL-адрес подключения.",
897
- "loadingAccounts": "Загрузка связанных аккаунтов...",
898
- "noPlexAccountsLinked": "Нет привязанных аккаунтов Plex",
899
- "noPlexAccountsLinkedHint": "Привяжите аккаунт Plex выше, а затем вернитесь, чтобы добавить сервер.",
900
- "noServersConnected": "Нет подключенных серверов",
901
- "noServersConnectedHint": "Нажмите \"Add Server\", чтобы подключить сервер Jellyfin или Emby",
902
- "plexAccount": "Аккаунт Plex",
903
- "plexServerPlaceholder": "Мой 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": ""
1036
+ "mismatchOther": ""
916
1037
  },
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": "",
1038
+ "confirmUnlink": {
935
1039
  "title": "",
936
- "updateTitle": ""
1040
+ "body": ""
937
1041
  },
938
- "realtimeError": "",
939
- "removeServer": "Удалить сервер",
940
- "removeServerConfirm": "Вы уверены, что хотите удалить этот сервер? Все соответствующие данные сессии будут сохранены, но вы не сможете контролировать новые сеансы с этого сервера.",
941
- "reorder": "",
942
- "selectAccountHelp": "Выберите, с какой учетной записи Plex обнаружить серверы.",
943
- "selectPlexAccount": "Выберите аккаунт Plex",
944
- "serverColor": "Цвет сервера",
945
- "serverColorDesc": "Используется для визуального атрибута в многосерверном режиме",
946
- "serverName": "Имя сервера",
947
- "serverNamePlaceholder": "Мой медиа сервер",
948
- "serverType": "Тип сервера",
949
- "serverUrl": "URL сервера",
950
- "serverUrlHelp": "Прямой URL-адрес вашего Jellyfin или Emby сервера. Используйте IP:порт для лучшей надежности.",
951
- "serverUrlHelpEmby": "URL-адрес, на котором доступен сервер Emby",
952
- "serverUrlHelpJellyfin": "URL-адрес, на котором доступен ваш сервер Jellyfin",
953
- "serverUrlPlaceholder": "",
954
- "setupRealtime": "",
955
- "syncInterval": "Интервал синхронизации",
956
- "testConnection": "Проверить соединение",
957
- "title": "Подключенные серверы",
958
- "updateHint": "Или нажмите кнопку Обновить ниже, чтобы сохранить только изменение имени.",
959
- "updating": "Обновление...",
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": "Авторизоваться в хвостовой шкале",
976
- "awaitingAuth": "Ожидание подтверждения...",
977
- "connected": "Tailscale подключен. Ваш экземпляр Tracearr доступен в портсете.",
978
- "description": "",
979
- "disable": "Отключить хвостовую шкалу",
980
- "disableConfirmDescription": "Это отключит Tracearr от вашего портсета. Вы можете снова включить без повторной авторизации.",
981
- "disableConfirmTitle": "Отключить Tailscale?",
982
- "disabledDescription": "Включите Tailscale для того, чтобы Tracearr использовал ваш частный адаптер. Пересылка портов или обратный прокси не требуется.",
983
- "dnsName": "DNS Имя",
984
- "enable": "Включить масштаб хвоста",
985
- "exitNodeNone": "Нет",
986
- "exitNodeOffline": "(оффлайн)",
987
- "hideLogs": "Скрыть журналы",
988
- "hostname": "",
989
- "hostnameHint": "Необязательное настраиваемое имя для этого устройства только на ваш хвост. Только буквы, цифры и дефисы.",
990
- "hostnameLabel": "Имя устройства",
991
- "noLogs": "Нет доступных журналов.",
992
- "notAvailable": "Бинарный файл Tailscale не найден. Эта функция доступна только при запуске официального образа Docker.",
993
- "resetConfirmDescription": "Это отключит Tracearr от вашей сети и удалит идентификацию устройства. Вам нужно будет повторно авторизоваться, если вы включите его снова.",
994
- "resetConfirmTitle": "",
995
- "showLogs": "Показать логи",
996
- "starting": "Запуск тайл...",
997
- "stopping": "Остановка хвостовой шкалы...",
998
- "tailnetUrl": "",
999
- "title": "VPN-чешуя",
1000
1042
  "toast": {
1001
- "disableFailed": "Не удалось отключить Tailscale",
1002
- "disabled": "Шкала хвостовых тканей отключена.",
1003
- "enableFailed": "Не удалось включить Tailscale",
1004
- "exitNodeFailed": "Не удалось установить узел",
1005
- "exitNodeSet": "Узел выхода обновлен.",
1006
- "reset": "Хвостовая чешуя была сброшена.",
1007
- "resetFailed": "Не удалось сбросить Tailscale"
1008
- },
1009
- "unknownError": "Произошла неизвестная ошибка."
1010
- },
1011
- "title": "Настройки",
1012
- "update": {
1013
- "betaUpdate": "Бета обновление",
1014
- "newVersion": "Новая версия",
1015
- "pullInstructions": "После загрузки перезагрузите контейнер, чтобы применить обновление.",
1016
- "releaseNotes": "Примечания к выпуску",
1017
- "stableRelease": "Стабильный выпуск",
1018
- "title": "Доступно обновление",
1019
- "updateCommand": "Обновить команду",
1020
- "versionAvailable": "Доступно {{version}}"
1043
+ "saved": "",
1044
+ "removed": "",
1045
+ "syncStarted": "",
1046
+ "failed": ""
1047
+ }
1021
1048
  }
1022
1049
  }