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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (324) hide show
  1. package/README.md +1 -2
  2. package/dist/config.d.ts +288 -54
  3. package/dist/config.d.ts.map +1 -1
  4. package/dist/config.mobile.d.ts +288 -54
  5. package/dist/config.mobile.d.ts.map +1 -1
  6. package/dist/locales/af-ZA/common.json +282 -281
  7. package/dist/locales/af-ZA/nav.json +21 -20
  8. package/dist/locales/af-ZA/notifications.json +243 -239
  9. package/dist/locales/af-ZA/pages.json +1836 -1687
  10. package/dist/locales/af-ZA/settings.json +894 -823
  11. package/dist/locales/ar-SA/common.json +282 -281
  12. package/dist/locales/ar-SA/nav.json +21 -20
  13. package/dist/locales/ar-SA/notifications.json +246 -242
  14. package/dist/locales/ar-SA/pages.json +1855 -1706
  15. package/dist/locales/ar-SA/settings.json +896 -825
  16. package/dist/locales/ca-ES/common.json +282 -281
  17. package/dist/locales/ca-ES/nav.json +21 -20
  18. package/dist/locales/ca-ES/notifications.json +243 -239
  19. package/dist/locales/ca-ES/pages.json +1822 -1673
  20. package/dist/locales/ca-ES/settings.json +896 -825
  21. package/dist/locales/cs-CZ/common.json +282 -281
  22. package/dist/locales/cs-CZ/nav.json +21 -20
  23. package/dist/locales/cs-CZ/notifications.json +246 -242
  24. package/dist/locales/cs-CZ/pages.json +1856 -1707
  25. package/dist/locales/cs-CZ/settings.json +896 -825
  26. package/dist/locales/da-DK/common.json +282 -281
  27. package/dist/locales/da-DK/nav.json +21 -20
  28. package/dist/locales/da-DK/notifications.json +246 -242
  29. package/dist/locales/da-DK/pages.json +1855 -1706
  30. package/dist/locales/da-DK/settings.json +896 -825
  31. package/dist/locales/de-DE/common.json +282 -281
  32. package/dist/locales/de-DE/mobile.json +1 -1
  33. package/dist/locales/de-DE/nav.json +21 -20
  34. package/dist/locales/de-DE/notifications.json +246 -242
  35. package/dist/locales/de-DE/pages.json +1835 -1686
  36. package/dist/locales/de-DE/settings.json +896 -825
  37. package/dist/locales/el-GR/common.json +282 -281
  38. package/dist/locales/el-GR/nav.json +21 -20
  39. package/dist/locales/el-GR/notifications.json +246 -242
  40. package/dist/locales/el-GR/pages.json +1855 -1706
  41. package/dist/locales/el-GR/settings.json +896 -825
  42. package/dist/locales/en/common.json +2 -1
  43. package/dist/locales/en/nav.json +1 -0
  44. package/dist/locales/en/notifications.json +4 -0
  45. package/dist/locales/en/pages.json +110 -18
  46. package/dist/locales/en/settings.json +43 -24
  47. package/dist/locales/es-ES/common.json +282 -281
  48. package/dist/locales/es-ES/nav.json +21 -20
  49. package/dist/locales/es-ES/notifications.json +246 -242
  50. package/dist/locales/es-ES/pages.json +1835 -1686
  51. package/dist/locales/es-ES/settings.json +896 -825
  52. package/dist/locales/fi-FI/common.json +282 -281
  53. package/dist/locales/fi-FI/nav.json +21 -20
  54. package/dist/locales/fi-FI/notifications.json +246 -242
  55. package/dist/locales/fi-FI/pages.json +1855 -1706
  56. package/dist/locales/fi-FI/settings.json +896 -825
  57. package/dist/locales/fr-FR/common.json +17 -16
  58. package/dist/locales/fr-FR/mobile.json +8 -8
  59. package/dist/locales/fr-FR/nav.json +6 -5
  60. package/dist/locales/fr-FR/notifications.json +246 -242
  61. package/dist/locales/fr-FR/pages.json +1856 -1707
  62. package/dist/locales/fr-FR/settings.json +902 -831
  63. package/dist/locales/he-IL/common.json +282 -281
  64. package/dist/locales/he-IL/nav.json +21 -20
  65. package/dist/locales/he-IL/notifications.json +243 -239
  66. package/dist/locales/he-IL/pages.json +1836 -1687
  67. package/dist/locales/he-IL/settings.json +894 -823
  68. package/dist/locales/hu-HU/common.json +282 -281
  69. package/dist/locales/hu-HU/nav.json +21 -20
  70. package/dist/locales/hu-HU/notifications.json +243 -239
  71. package/dist/locales/hu-HU/pages.json +1836 -1687
  72. package/dist/locales/hu-HU/settings.json +894 -823
  73. package/dist/locales/it-IT/common.json +282 -281
  74. package/dist/locales/it-IT/nav.json +21 -20
  75. package/dist/locales/it-IT/notifications.json +246 -242
  76. package/dist/locales/it-IT/pages.json +1831 -1682
  77. package/dist/locales/it-IT/settings.json +896 -825
  78. package/dist/locales/ja-JP/common.json +282 -281
  79. package/dist/locales/ja-JP/nav.json +21 -20
  80. package/dist/locales/ja-JP/notifications.json +246 -242
  81. package/dist/locales/ja-JP/pages.json +1855 -1706
  82. package/dist/locales/ja-JP/settings.json +896 -825
  83. package/dist/locales/ko-KR/common.json +283 -282
  84. package/dist/locales/ko-KR/mobile.json +6 -6
  85. package/dist/locales/ko-KR/nav.json +1 -0
  86. package/dist/locales/ko-KR/notifications.json +246 -242
  87. package/dist/locales/ko-KR/pages.json +1856 -1707
  88. package/dist/locales/ko-KR/settings.json +900 -829
  89. package/dist/locales/nl-NL/common.json +282 -281
  90. package/dist/locales/nl-NL/nav.json +21 -20
  91. package/dist/locales/nl-NL/notifications.json +246 -242
  92. package/dist/locales/nl-NL/pages.json +1849 -1700
  93. package/dist/locales/nl-NL/settings.json +898 -827
  94. package/dist/locales/no-NO/common.json +282 -281
  95. package/dist/locales/no-NO/nav.json +21 -20
  96. package/dist/locales/no-NO/notifications.json +246 -242
  97. package/dist/locales/no-NO/pages.json +1830 -1681
  98. package/dist/locales/no-NO/settings.json +896 -825
  99. package/dist/locales/pl-PL/common.json +282 -281
  100. package/dist/locales/pl-PL/nav.json +21 -20
  101. package/dist/locales/pl-PL/notifications.json +246 -242
  102. package/dist/locales/pl-PL/pages.json +1831 -1682
  103. package/dist/locales/pl-PL/settings.json +896 -825
  104. package/dist/locales/pt-BR/common.json +282 -281
  105. package/dist/locales/pt-BR/nav.json +21 -20
  106. package/dist/locales/pt-BR/notifications.json +246 -242
  107. package/dist/locales/pt-BR/pages.json +1845 -1696
  108. package/dist/locales/pt-BR/settings.json +896 -825
  109. package/dist/locales/pt-PT/common.json +282 -281
  110. package/dist/locales/pt-PT/nav.json +21 -20
  111. package/dist/locales/pt-PT/notifications.json +246 -242
  112. package/dist/locales/pt-PT/pages.json +1824 -1675
  113. package/dist/locales/pt-PT/settings.json +896 -825
  114. package/dist/locales/ro-RO/common.json +282 -281
  115. package/dist/locales/ro-RO/nav.json +21 -20
  116. package/dist/locales/ro-RO/notifications.json +246 -242
  117. package/dist/locales/ro-RO/pages.json +1831 -1682
  118. package/dist/locales/ro-RO/settings.json +896 -825
  119. package/dist/locales/ru-RU/common.json +282 -281
  120. package/dist/locales/ru-RU/nav.json +21 -20
  121. package/dist/locales/ru-RU/notifications.json +246 -242
  122. package/dist/locales/ru-RU/pages.json +1855 -1706
  123. package/dist/locales/ru-RU/settings.json +896 -825
  124. package/dist/locales/sr-SP/common.json +282 -281
  125. package/dist/locales/sr-SP/nav.json +21 -20
  126. package/dist/locales/sr-SP/notifications.json +243 -239
  127. package/dist/locales/sr-SP/pages.json +1836 -1687
  128. package/dist/locales/sr-SP/settings.json +894 -823
  129. package/dist/locales/sv-SE/common.json +282 -281
  130. package/dist/locales/sv-SE/nav.json +21 -20
  131. package/dist/locales/sv-SE/notifications.json +246 -242
  132. package/dist/locales/sv-SE/pages.json +1831 -1682
  133. package/dist/locales/sv-SE/settings.json +896 -825
  134. package/dist/locales/tr-TR/common.json +282 -281
  135. package/dist/locales/tr-TR/nav.json +21 -20
  136. package/dist/locales/tr-TR/notifications.json +243 -239
  137. package/dist/locales/tr-TR/pages.json +1837 -1688
  138. package/dist/locales/tr-TR/settings.json +894 -823
  139. package/dist/locales/uk-UA/common.json +5 -4
  140. package/dist/locales/uk-UA/nav.json +8 -1
  141. package/dist/locales/uk-UA/notifications.json +246 -242
  142. package/dist/locales/uk-UA/pages.json +166 -17
  143. package/dist/locales/uk-UA/settings.json +898 -827
  144. package/dist/locales/vi-VN/common.json +282 -281
  145. package/dist/locales/vi-VN/nav.json +21 -20
  146. package/dist/locales/vi-VN/notifications.json +243 -239
  147. package/dist/locales/vi-VN/pages.json +1836 -1687
  148. package/dist/locales/vi-VN/settings.json +894 -823
  149. package/dist/locales/zh-CN/common.json +282 -281
  150. package/dist/locales/zh-CN/nav.json +21 -20
  151. package/dist/locales/zh-CN/notifications.json +246 -242
  152. package/dist/locales/zh-CN/pages.json +1842 -1693
  153. package/dist/locales/zh-CN/settings.json +899 -828
  154. package/dist/locales/zh-TW/common.json +282 -281
  155. package/dist/locales/zh-TW/nav.json +21 -20
  156. package/dist/locales/zh-TW/notifications.json +246 -242
  157. package/dist/locales/zh-TW/pages.json +1848 -1699
  158. package/dist/locales/zh-TW/settings.json +897 -826
  159. package/package.json +2 -4
  160. package/src/locales/af-ZA/common.json +282 -281
  161. package/src/locales/af-ZA/nav.json +21 -20
  162. package/src/locales/af-ZA/notifications.json +243 -239
  163. package/src/locales/af-ZA/pages.json +1836 -1687
  164. package/src/locales/af-ZA/settings.json +894 -823
  165. package/src/locales/ar-SA/common.json +282 -281
  166. package/src/locales/ar-SA/nav.json +21 -20
  167. package/src/locales/ar-SA/notifications.json +246 -242
  168. package/src/locales/ar-SA/pages.json +1855 -1706
  169. package/src/locales/ar-SA/settings.json +896 -825
  170. package/src/locales/ca-ES/common.json +282 -281
  171. package/src/locales/ca-ES/nav.json +21 -20
  172. package/src/locales/ca-ES/notifications.json +243 -239
  173. package/src/locales/ca-ES/pages.json +1822 -1673
  174. package/src/locales/ca-ES/settings.json +896 -825
  175. package/src/locales/cs-CZ/common.json +282 -281
  176. package/src/locales/cs-CZ/nav.json +21 -20
  177. package/src/locales/cs-CZ/notifications.json +246 -242
  178. package/src/locales/cs-CZ/pages.json +1856 -1707
  179. package/src/locales/cs-CZ/settings.json +896 -825
  180. package/src/locales/da-DK/common.json +282 -281
  181. package/src/locales/da-DK/nav.json +21 -20
  182. package/src/locales/da-DK/notifications.json +246 -242
  183. package/src/locales/da-DK/pages.json +1855 -1706
  184. package/src/locales/da-DK/settings.json +896 -825
  185. package/src/locales/de-DE/common.json +282 -281
  186. package/src/locales/de-DE/mobile.json +1 -1
  187. package/src/locales/de-DE/nav.json +21 -20
  188. package/src/locales/de-DE/notifications.json +246 -242
  189. package/src/locales/de-DE/pages.json +1835 -1686
  190. package/src/locales/de-DE/settings.json +896 -825
  191. package/src/locales/el-GR/common.json +282 -281
  192. package/src/locales/el-GR/nav.json +21 -20
  193. package/src/locales/el-GR/notifications.json +246 -242
  194. package/src/locales/el-GR/pages.json +1855 -1706
  195. package/src/locales/el-GR/settings.json +896 -825
  196. package/src/locales/en/common.json +2 -1
  197. package/src/locales/en/nav.json +1 -0
  198. package/src/locales/en/notifications.json +4 -0
  199. package/src/locales/en/pages.json +110 -18
  200. package/src/locales/en/settings.json +43 -24
  201. package/src/locales/es-ES/common.json +282 -281
  202. package/src/locales/es-ES/nav.json +21 -20
  203. package/src/locales/es-ES/notifications.json +246 -242
  204. package/src/locales/es-ES/pages.json +1835 -1686
  205. package/src/locales/es-ES/settings.json +896 -825
  206. package/src/locales/fi-FI/common.json +282 -281
  207. package/src/locales/fi-FI/nav.json +21 -20
  208. package/src/locales/fi-FI/notifications.json +246 -242
  209. package/src/locales/fi-FI/pages.json +1855 -1706
  210. package/src/locales/fi-FI/settings.json +896 -825
  211. package/src/locales/fr-FR/common.json +17 -16
  212. package/src/locales/fr-FR/mobile.json +8 -8
  213. package/src/locales/fr-FR/nav.json +6 -5
  214. package/src/locales/fr-FR/notifications.json +246 -242
  215. package/src/locales/fr-FR/pages.json +1856 -1707
  216. package/src/locales/fr-FR/settings.json +902 -831
  217. package/src/locales/he-IL/common.json +282 -281
  218. package/src/locales/he-IL/nav.json +21 -20
  219. package/src/locales/he-IL/notifications.json +243 -239
  220. package/src/locales/he-IL/pages.json +1836 -1687
  221. package/src/locales/he-IL/settings.json +894 -823
  222. package/src/locales/hu-HU/common.json +282 -281
  223. package/src/locales/hu-HU/nav.json +21 -20
  224. package/src/locales/hu-HU/notifications.json +243 -239
  225. package/src/locales/hu-HU/pages.json +1836 -1687
  226. package/src/locales/hu-HU/settings.json +894 -823
  227. package/src/locales/it-IT/common.json +282 -281
  228. package/src/locales/it-IT/nav.json +21 -20
  229. package/src/locales/it-IT/notifications.json +246 -242
  230. package/src/locales/it-IT/pages.json +1831 -1682
  231. package/src/locales/it-IT/settings.json +896 -825
  232. package/src/locales/ja-JP/common.json +282 -281
  233. package/src/locales/ja-JP/nav.json +21 -20
  234. package/src/locales/ja-JP/notifications.json +246 -242
  235. package/src/locales/ja-JP/pages.json +1855 -1706
  236. package/src/locales/ja-JP/settings.json +896 -825
  237. package/src/locales/ko-KR/common.json +283 -282
  238. package/src/locales/ko-KR/mobile.json +6 -6
  239. package/src/locales/ko-KR/nav.json +1 -0
  240. package/src/locales/ko-KR/notifications.json +246 -242
  241. package/src/locales/ko-KR/pages.json +1856 -1707
  242. package/src/locales/ko-KR/settings.json +900 -829
  243. package/src/locales/nl-NL/common.json +282 -281
  244. package/src/locales/nl-NL/nav.json +21 -20
  245. package/src/locales/nl-NL/notifications.json +246 -242
  246. package/src/locales/nl-NL/pages.json +1849 -1700
  247. package/src/locales/nl-NL/settings.json +898 -827
  248. package/src/locales/no-NO/common.json +282 -281
  249. package/src/locales/no-NO/nav.json +21 -20
  250. package/src/locales/no-NO/notifications.json +246 -242
  251. package/src/locales/no-NO/pages.json +1830 -1681
  252. package/src/locales/no-NO/settings.json +896 -825
  253. package/src/locales/pl-PL/common.json +282 -281
  254. package/src/locales/pl-PL/nav.json +21 -20
  255. package/src/locales/pl-PL/notifications.json +246 -242
  256. package/src/locales/pl-PL/pages.json +1831 -1682
  257. package/src/locales/pl-PL/settings.json +896 -825
  258. package/src/locales/pt-BR/common.json +282 -281
  259. package/src/locales/pt-BR/nav.json +21 -20
  260. package/src/locales/pt-BR/notifications.json +246 -242
  261. package/src/locales/pt-BR/pages.json +1845 -1696
  262. package/src/locales/pt-BR/settings.json +896 -825
  263. package/src/locales/pt-PT/common.json +282 -281
  264. package/src/locales/pt-PT/nav.json +21 -20
  265. package/src/locales/pt-PT/notifications.json +246 -242
  266. package/src/locales/pt-PT/pages.json +1824 -1675
  267. package/src/locales/pt-PT/settings.json +896 -825
  268. package/src/locales/ro-RO/common.json +282 -281
  269. package/src/locales/ro-RO/nav.json +21 -20
  270. package/src/locales/ro-RO/notifications.json +246 -242
  271. package/src/locales/ro-RO/pages.json +1831 -1682
  272. package/src/locales/ro-RO/settings.json +896 -825
  273. package/src/locales/ru-RU/common.json +282 -281
  274. package/src/locales/ru-RU/nav.json +21 -20
  275. package/src/locales/ru-RU/notifications.json +246 -242
  276. package/src/locales/ru-RU/pages.json +1855 -1706
  277. package/src/locales/ru-RU/settings.json +896 -825
  278. package/src/locales/sr-SP/common.json +282 -281
  279. package/src/locales/sr-SP/nav.json +21 -20
  280. package/src/locales/sr-SP/notifications.json +243 -239
  281. package/src/locales/sr-SP/pages.json +1836 -1687
  282. package/src/locales/sr-SP/settings.json +894 -823
  283. package/src/locales/sv-SE/common.json +282 -281
  284. package/src/locales/sv-SE/nav.json +21 -20
  285. package/src/locales/sv-SE/notifications.json +246 -242
  286. package/src/locales/sv-SE/pages.json +1831 -1682
  287. package/src/locales/sv-SE/settings.json +896 -825
  288. package/src/locales/tr-TR/common.json +282 -281
  289. package/src/locales/tr-TR/nav.json +21 -20
  290. package/src/locales/tr-TR/notifications.json +243 -239
  291. package/src/locales/tr-TR/pages.json +1837 -1688
  292. package/src/locales/tr-TR/settings.json +894 -823
  293. package/src/locales/uk-UA/common.json +5 -4
  294. package/src/locales/uk-UA/nav.json +8 -1
  295. package/src/locales/uk-UA/notifications.json +246 -242
  296. package/src/locales/uk-UA/pages.json +166 -17
  297. package/src/locales/uk-UA/settings.json +898 -827
  298. package/src/locales/vi-VN/common.json +282 -281
  299. package/src/locales/vi-VN/nav.json +21 -20
  300. package/src/locales/vi-VN/notifications.json +243 -239
  301. package/src/locales/vi-VN/pages.json +1836 -1687
  302. package/src/locales/vi-VN/settings.json +894 -823
  303. package/src/locales/zh-CN/common.json +282 -281
  304. package/src/locales/zh-CN/nav.json +21 -20
  305. package/src/locales/zh-CN/notifications.json +246 -242
  306. package/src/locales/zh-CN/pages.json +1842 -1693
  307. package/src/locales/zh-CN/settings.json +899 -828
  308. package/src/locales/zh-TW/common.json +282 -281
  309. package/src/locales/zh-TW/nav.json +21 -20
  310. package/src/locales/zh-TW/notifications.json +246 -242
  311. package/src/locales/zh-TW/pages.json +1848 -1699
  312. package/src/locales/zh-TW/settings.json +897 -826
  313. package/dist/locales/en-US/common.json +0 -341
  314. package/dist/locales/en-US/mobile.json +0 -178
  315. package/dist/locales/en-US/nav.json +0 -32
  316. package/dist/locales/en-US/notifications.json +0 -299
  317. package/dist/locales/en-US/pages.json +0 -2148
  318. package/dist/locales/en-US/settings.json +0 -952
  319. package/src/locales/en-US/common.json +0 -341
  320. package/src/locales/en-US/mobile.json +0 -178
  321. package/src/locales/en-US/nav.json +0 -32
  322. package/src/locales/en-US/notifications.json +0 -299
  323. package/src/locales/en-US/pages.json +0 -2148
  324. package/src/locales/en-US/settings.json +0 -952
@@ -1,952 +1,1023 @@
1
1
  {
2
- "accessControl": {
3
- "allowGuestAccess": "Разрешить гостевой доступ",
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": "",
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": "",
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": "",
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": "Страница",
274
- "playbackReporting": "",
275
- "playbackReportingDesc": "",
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": "Раньше импортированные записи будут обновляться с данными качества потока.",
276
397
  "pleaseEnterDetails": "Пожалуйста, введите Tautulli URL и API ключ",
398
+ "testingConnection": "Проверка соединения...",
277
399
  "pleaseSelectJsonFile": "Пожалуйста, выберите файл JSON",
400
+ "uploadingBackup": "Загрузка файла резервной копии...",
278
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}}.",
415
+ "playbackReporting": "",
416
+ "playbackReportingDesc": "",
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": "Загрузка файла резервной копии..."
312
- },
313
- "ipWarning": {
314
- "acknowledge": "Понятно",
315
- "message": "Кажется, все пользователи используют один и тот же IP адрес или локальный сетевой IP-адрес. Это может повлиять на логику, основанную на правилах для определения местоположения или IP-адресов."
316
- },
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": "Ожидание"
341
- },
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 минут и может быть использован только один раз."
428
+ "skipDuplicatePlugin": ""
385
429
  },
386
- "nav": {
387
- "descriptions": {
388
- "api": "",
389
- "appearance": "",
390
- "backup": "",
391
- "behavior": "",
392
- "connections": "",
393
- "destinations": "",
394
- "email": "",
395
- "guest": "",
396
- "import": "",
397
- "jobs": "",
398
- "locale": "",
399
- "mobile": "",
400
- "newsletters": "",
401
- "plexAccounts": "",
402
- "posters": "",
403
- "remote": ""
404
- },
405
- "groups": {
406
- "access": "",
407
- "data": "",
408
- "general": "",
409
- "notifications": "",
410
- "servers": ""
411
- },
412
- "itemLabel": "",
413
- "label": "",
414
- "sections": {
415
- "api": "",
416
- "appearance": "",
417
- "backup": "",
418
- "behavior": "",
419
- "connections": "",
420
- "destinations": "",
421
- "email": "",
422
- "guest": "",
423
- "import": "",
424
- "jobs": "",
425
- "locale": "",
426
- "mobile": "",
427
- "newsletters": "",
428
- "plexAccounts": "",
429
- "posters": "",
430
- "remote": ""
430
+ "plex": {
431
+ "signInWithPlex": "Войти через Plex",
432
+ "signUpWithPlex": "Зарегистрироваться через Plex",
433
+ "selectServer": "Выбрать сервер",
434
+ "chooseServer": "Выберите Plex Media Server для мониторинга"
435
+ },
436
+ "account": {
437
+ "createAccount": "Создать Аккаунт",
438
+ "email": "Почта",
439
+ "password": "Пароль",
440
+ "displayName": "Показать имя",
441
+ "createYourAccount": "Создайте свой аккаунт, чтобы начать",
442
+ "signInToAccount": "Войдите в свою учетную запись",
443
+ "useLocalAccount": "Использовать локальную учетную запись"
444
+ },
445
+ "update": {
446
+ "title": "Доступно обновление",
447
+ "releaseNotes": "Примечания к выпуску",
448
+ "updateCommand": "Обновить команду",
449
+ "pullInstructions": "После загрузки перезагрузите контейнер, чтобы применить обновление.",
450
+ "stableRelease": "Стабильный выпуск",
451
+ "betaUpdate": "Бета обновление",
452
+ "newVersion": "Новая версия",
453
+ "versionAvailable": "Доступно {{version}}"
454
+ },
455
+ "serverHealth": {
456
+ "unreachable": "{{serverName}} недоступен",
457
+ "multipleUnreachable": "Сервер {{count}} недоступен: {{serverNames}}"
458
+ },
459
+ "ipWarning": {
460
+ "message": "Кажется, все пользователи используют один и тот же IP адрес или локальный сетевой IP-адрес. Это может повлиять на логику, основанную на правилах для определения местоположения или IP-адресов.",
461
+ "acknowledge": "Понятно"
462
+ },
463
+ "backup": {
464
+ "title": "Резервное копирование",
465
+ "backToBackups": "Вернуться к резервным копиям",
466
+ "description": "Резервное копирование и восстановление данных Tracearr",
467
+ "createBackup": "Создать резервную копию",
468
+ "creating": "Создание резервной копии...",
469
+ "uploadBackup": "Загрузить резервную копию",
470
+ "uploading": "Загрузка...",
471
+ "databaseSize": "Текущий размер базы данных: {{size}}",
472
+ "freeSpace": "Каталог резервных копий свободного места: {{size}}",
473
+ "lowDiskSpace": "Низкое место на диске — резервные копии и восстановления требуют по крайней мере в два раза больше размера базы данных в свободное пространство.",
474
+ "backupHistory": "История резервных копий",
475
+ "noBackups": "Резервных копий пока нет. Создайте первую резервную копию выше.",
476
+ "size": "Размер",
477
+ "date": "Дата",
478
+ "type": "Тип",
479
+ "version": "Версии",
480
+ "actions": "Действия",
481
+ "rowActions": "",
482
+ "download": "",
483
+ "typeManual": "Ручной",
484
+ "typeScheduled": "Запланированный",
485
+ "typeUploaded": "Загружено",
486
+ "restoreAction": "Восстановить",
487
+ "deleteConfirmTitle": "Удалить резервную копию",
488
+ "deleteConfirmDescription": "Вы уверены, что хотите удалить эту резервную копию? Это действие нельзя отменить.",
489
+ "schedule": "Запланированные резервные копии",
490
+ "scheduleType": "График",
491
+ "scheduleDisabled": "Отключено",
492
+ "scheduleDaily": "Ежедневно",
493
+ "scheduleWeekly": "Еженедельно",
494
+ "scheduleMonthly": "Ежемесячно",
495
+ "scheduleTime": "Время ({{timezone}})",
496
+ "scheduleHour": "",
497
+ "scheduleMinute": "",
498
+ "scheduleDayOfWeek": "День недели",
499
+ "scheduleDayOfMonth": "День месяца",
500
+ "scheduleDayOfMonthHint": "В месяцах с меньшим количеством дней, резервная копия работает в последний день.",
501
+ "retentionCount": "Сохранить последний",
502
+ "retentionSuffix": "запланированные резервные копии",
503
+ "daySun": "Воскресенье",
504
+ "dayMon": "Понедельник",
505
+ "dayTue": "Вторник",
506
+ "dayWed": "Среда",
507
+ "dayThu": "Четверг",
508
+ "dayFri": "Пятница",
509
+ "daySat": "Суббота",
510
+ "restore": {
511
+ "title": "Восстановить резервную копию",
512
+ "selectedBackup": "Выбранная резервная копия",
513
+ "databaseSize": "Размер базы данных",
514
+ "sessions": "Сессии",
515
+ "users": "Пользователи",
516
+ "servers": "Серверы",
517
+ "automations": "",
518
+ "libraryItems": "Элементы библиотеки",
519
+ "tables": "Таблицы",
520
+ "warning": "Восстановление заменит все существующие данные. Вам нужно будет заново войти в систему после завершения восстановления.",
521
+ "confirmLabel": "Я понимаю, что это заменит все данные",
522
+ "confirm": "Начать восстановление",
523
+ "complete": "Восстановление успешно завершено. Страница будет обновлена в ближайшее время.",
524
+ "failed": "Не удалось восстановить",
525
+ "cannotRestore": "Для восстановления требуются права суперпользователя PostgreSQL. Пожалуйста, убедитесь, что пользователь базы данных имеет права суперпользователя и повторите попытку.",
526
+ "pgVersionMismatch": "Резервная копия была создана на PostgreSQL {{backupVersion}} , но этот сервер запускает PostgreSQL {{serverVersion}}. Восстановление дампа с новой версии PostgreSQL не поддерживается.",
527
+ "tsVersionMismatch": "Резервная копия была создана с TimescaleDB {{backupVersion}} , но этот сервер поддерживает только до TimescaleDB {{serverVersion}}."
431
528
  },
432
- "selectLabel": ""
529
+ "toast": {
530
+ "backupCreated": "Резервная копия успешно создана",
531
+ "backupCreateFailed": "Не удалось создать резервную копию",
532
+ "backupUploaded": "Резервная копия успешно загружена",
533
+ "backupUploadFailed": "Не удалось загрузить резервную копию",
534
+ "backupDeleted": "Резервная копия удалена",
535
+ "backupDeleteFailed": "Не удалось удалить резервную копию",
536
+ "restoreStarted": "Восстановление начато",
537
+ "restoreStartFailed": "Не удалось начать восстановление",
538
+ "scheduleSaved": "Расписание резервного копирования сохранено",
539
+ "scheduleError": "Не удалось сохранить резервную копию расписания"
540
+ }
433
541
  },
434
542
  "newsletters": {
543
+ "ownerOnly": "",
544
+ "new": "",
545
+ "empty": "",
546
+ "emptyDescription": "",
547
+ "noDestinationTitle": "",
548
+ "noDestinationDescription": "",
549
+ "noDestinationHint": "",
435
550
  "addEmailDestination": "",
436
- "copyOf": "",
551
+ "enabled": "",
552
+ "rowActions": "",
553
+ "duplicate": "",
554
+ "sendNow": "",
555
+ "deleteTitle": "",
556
+ "deleteDescription": "",
557
+ "schedule": {
558
+ "daily": "",
559
+ "weekly": "",
560
+ "monthly": "",
561
+ "cron": "",
562
+ "inZone": ""
563
+ },
564
+ "nextRun": "",
565
+ "noNextRun": "",
566
+ "neverSent": "",
567
+ "lastSend": "",
568
+ "outcome": {
569
+ "rendering": "",
570
+ "sending": "",
571
+ "sent": "",
572
+ "partial": "",
573
+ "failed": "",
574
+ "skipped_empty": ""
575
+ },
437
576
  "counts": {
438
- "albums_one": "",
439
- "albums_other": "",
440
577
  "movies_one": "",
441
578
  "movies_other": "",
442
579
  "shows_one": "",
443
580
  "shows_other": "",
581
+ "albums_one": "",
582
+ "albums_other": "",
444
583
  "watched_one": "",
445
584
  "watched_other": ""
446
585
  },
447
- "deleteDescription": "",
448
- "deleteTitle": "",
449
- "duplicate": "",
586
+ "copyOf": "",
587
+ "richText": {
588
+ "bold": "",
589
+ "italic": "",
590
+ "link": "",
591
+ "bulletList": "",
592
+ "linkHref": "",
593
+ "linkApply": "",
594
+ "counter": ""
595
+ },
450
596
  "editor": {
451
- "actions": {
452
- "more": "",
453
- "preview": "",
454
- "send": "",
455
- "sendHint": "",
456
- "test": "",
457
- "testHint": ""
597
+ "newTitle": "",
598
+ "headerSummary": "",
599
+ "notFound": "",
600
+ "basics": "",
601
+ "tabs": {
602
+ "edit": "",
603
+ "history": ""
604
+ },
605
+ "historyNeedsSave": "",
606
+ "name": "",
607
+ "nameHelp": "",
608
+ "turnOnNow": "",
609
+ "enabledHelp": "",
610
+ "schedule": "",
611
+ "scheduleKind": "",
612
+ "kinds": {
613
+ "daily": "",
614
+ "weekly": "",
615
+ "monthly": "",
616
+ "cron": ""
617
+ },
618
+ "dayOfWeek": "",
619
+ "dayOfMonth": "",
620
+ "dayOfMonthHelp": "",
621
+ "time": "",
622
+ "timezone": "",
623
+ "timezoneHelp": "",
624
+ "cron": "",
625
+ "cronHint": "",
626
+ "dstNote": "",
627
+ "nextRun": "",
628
+ "nextRunPending": "",
629
+ "content": "",
630
+ "windowKind": "",
631
+ "windows": {
632
+ "since_last_send": "",
633
+ "fixed": ""
634
+ },
635
+ "windowHelp": {
636
+ "since_last_send": "",
637
+ "fixed": ""
638
+ },
639
+ "windowSentence": {
640
+ "fallback": "",
641
+ "fallbackLabel": "",
642
+ "fixed": "",
643
+ "fixedAfter": "",
644
+ "fixedLabel": ""
645
+ },
646
+ "windowMax": "",
647
+ "days": "",
648
+ "servers": "",
649
+ "allServers": "",
650
+ "searchServers": "",
651
+ "noServers": "",
652
+ "serversSelected": "",
653
+ "variantsNote": "",
654
+ "serversHelp": "",
655
+ "libraries": "",
656
+ "allLibraries": "",
657
+ "searchLibraries": "",
658
+ "noLibraries": "",
659
+ "librariesSelected": "",
660
+ "librariesHelp": "",
661
+ "clear": "",
662
+ "unknownLibrary": "",
663
+ "removeLibrary": "",
664
+ "sections": {
665
+ "movies": "",
666
+ "shows": "",
667
+ "music": "",
668
+ "mostWatched": "",
669
+ "legend": "",
670
+ "description": "",
671
+ "upTo": "",
672
+ "the": "",
673
+ "units": {
674
+ "movies": "",
675
+ "shows": "",
676
+ "seasonsEach": "",
677
+ "albums": "",
678
+ "mostPlayed": ""
679
+ },
680
+ "labels": {
681
+ "movies": "",
682
+ "shows": "",
683
+ "seasons": "",
684
+ "music": "",
685
+ "mostWatched": ""
686
+ },
687
+ "musicHelp": "",
688
+ "mostWatchedHelp": ""
689
+ },
690
+ "message": "",
691
+ "senderName": "",
692
+ "senderNameHelp": "",
693
+ "senderNameRequiredMulti": "",
694
+ "previewVariant_one": "",
695
+ "previewVariant_other": "",
696
+ "variantHeading": "",
697
+ "subject": "",
698
+ "subjectHelp": "",
699
+ "placeholders": {
700
+ "server_name": "",
701
+ "start_date": "",
702
+ "end_date": "",
703
+ "item_count": ""
704
+ },
705
+ "intro": "",
706
+ "introPlaceholder": "",
707
+ "outro": "",
708
+ "outroPlaceholder": "",
709
+ "save": "",
710
+ "saving": "",
711
+ "unsaved": "",
712
+ "fixFirst": "",
713
+ "sendNeedsSave": "",
714
+ "recipients": {
715
+ "title": "",
716
+ "members": "",
717
+ "membersHelp": "",
718
+ "ownerNote": "",
719
+ "extraTrigger": "",
720
+ "extraHelp": "",
721
+ "pasteAddresses": "",
722
+ "addressLabel": "",
723
+ "nameLabel": "",
724
+ "namePlaceholder": "",
725
+ "removeAddress": "",
726
+ "badAddress": "",
727
+ "loadFailed": "",
728
+ "willReceive": "",
729
+ "excludedCount": "",
730
+ "notIncludable": "",
731
+ "noAddress": "",
732
+ "suppressedCount": "",
733
+ "joinedSinceLastSend": "",
734
+ "newSinceLastSend": "",
735
+ "manage": "",
736
+ "manageHelp": "",
737
+ "searchPlaceholder": "",
738
+ "serverFilter": "",
739
+ "allServers": "",
740
+ "tabs": {
741
+ "receiving": "",
742
+ "excluded": "",
743
+ "noAddress": "",
744
+ "suppressed": ""
745
+ },
746
+ "selectAll": "",
747
+ "selectPerson": "",
748
+ "selectedCount": "",
749
+ "excludeSelected": "",
750
+ "includeSelected": "",
751
+ "noMatches": "",
752
+ "groupsNote": "",
753
+ "noAddressHelp": "",
754
+ "contactEmailFor": "",
755
+ "saveEmail": "",
756
+ "openUserPage": "",
757
+ "unknownMember": "",
758
+ "account": "",
759
+ "fromUsername": "",
760
+ "extraAddress": "",
761
+ "suppressed": "",
762
+ "suppressedHelp": "",
763
+ "exclude": "",
764
+ "excludeAction": "",
765
+ "include": "",
766
+ "includeAction": "",
767
+ "excludedHelp": "",
768
+ "notIncludableHelp": "",
769
+ "excludedAfterSave": "",
770
+ "includedAfterSave": "",
771
+ "reasons": {
772
+ "excluded": "",
773
+ "banned": "",
774
+ "pending": "",
775
+ "noServer": ""
776
+ },
777
+ "emptyTitle": "",
778
+ "emptyDescription": ""
458
779
  },
459
- "allLibraries": "",
460
- "allServers": "",
461
- "basics": "",
462
- "clear": "",
463
- "content": "",
464
- "cron": "",
465
- "cronHint": "",
466
- "dayOfMonth": "",
467
- "dayOfMonthHelp": "",
468
- "dayOfWeek": "",
469
- "days": "",
470
780
  "delivery": {
781
+ "title": "",
471
782
  "destination": "",
472
783
  "destinationHelp": "",
473
- "hostedNeedsUrl": "",
784
+ "pickDestination": "",
785
+ "noDestination": "",
474
786
  "imageMode": "",
475
- "modeHelp": {
787
+ "modes": {
476
788
  "hosted": "",
477
789
  "inline": "",
478
790
  "none": ""
479
791
  },
480
- "modePreviewHint": "",
481
- "modes": {
792
+ "modeHelp": {
482
793
  "hosted": "",
483
794
  "inline": "",
484
795
  "none": ""
485
796
  },
486
- "noDestination": "",
487
- "pickDestination": "",
797
+ "modePreviewHint": "",
798
+ "hostedNeedsUrl": "",
488
799
  "skipWhenEmpty": "",
489
- "skipWhenEmptyHelp": "",
490
- "title": ""
491
- },
492
- "dstNote": "",
493
- "enabledHelp": "",
494
- "fixFirst": "",
495
- "headerSummary": "",
496
- "historyNeedsSave": "",
497
- "intro": "",
498
- "introPlaceholder": "",
499
- "kinds": {
500
- "cron": "",
501
- "daily": "",
502
- "monthly": "",
503
- "weekly": ""
800
+ "skipWhenEmptyHelp": ""
504
801
  },
505
- "libraries": "",
506
- "librariesHelp": "",
507
- "librariesSelected": "",
508
802
  "links": {
509
803
  "tracearr": "",
510
804
  "tracearrNote": ""
511
805
  },
512
- "message": "",
513
- "name": "",
514
- "nameHelp": "",
515
- "newTitle": "",
516
- "nextRun": "",
517
- "nextRunPending": "",
518
- "noLibraries": "",
519
- "noServers": "",
520
- "notFound": "",
521
- "outro": "",
522
- "outroPlaceholder": "",
523
- "placeholders": {
524
- "end_date": "",
525
- "item_count": "",
526
- "server_name": "",
527
- "start_date": ""
528
- },
529
- "preview": {
530
- "countsListed": {
531
- "albums": "",
532
- "movies": "",
533
- "shows": ""
534
- },
535
- "draft": "",
536
- "images": "",
537
- "imagesBlocked": "",
538
- "imagesBlockedNote": "",
539
- "imagesOn": "",
540
- "linksNote": "",
541
- "recipients": "",
542
- "subjectLabel": "",
543
- "title": "",
544
- "variantTab": "",
545
- "variants": "",
546
- "width": "",
547
- "widths": {
548
- "desktop": "",
549
- "phone": ""
550
- },
551
- "window": "",
552
- "windowSince": ""
553
- },
554
- "previewVariant_one": "",
555
- "previewVariant_other": "",
556
806
  "readiness": {
807
+ "title": "",
808
+ "intro": "",
557
809
  "destination": "",
558
- "destinationError": "",
559
810
  "destinationFail": "",
560
811
  "destinationUnknown": "",
561
- "dns": "",
562
- "dnsLink": "",
563
- "emptyVariant": "",
812
+ "destinationError": "",
813
+ "fixDestination": "",
814
+ "fixRecipients": "",
815
+ "fixExternalUrl": "",
564
816
  "externalUrl": "",
565
817
  "externalUrlFail": "",
566
818
  "externalUrlNotHttps": "",
567
- "fixDestination": "",
568
- "fixExternalUrl": "",
569
- "fixRecipients": "",
819
+ "noPublicUrl": "",
820
+ "privatePublicUrl": "",
821
+ "emptyVariant": "",
822
+ "variantsLoadFailed": "",
823
+ "serverSettingsLink": "",
570
824
  "fromDomain": "",
571
825
  "fromDomainFail": "",
572
826
  "fromDomainUnknown": "",
573
- "intro": "",
574
- "noPublicUrl": "",
575
- "privatePublicUrl": "",
576
- "recipientsFail": "",
577
- "recipientsLoadFailed": "",
578
- "recipientsUnknown": "",
579
827
  "recipients_one": "",
580
828
  "recipients_other": "",
581
- "serverSettingsLink": "",
582
- "staleScope": "",
583
- "title": "",
584
- "variantsLoadFailed": ""
829
+ "recipientsFail": "",
830
+ "recipientsChecking": "",
831
+ "recipientsLoadFailed": "",
832
+ "dns": "",
833
+ "dnsLink": ""
585
834
  },
586
- "recipients": {
587
- "account": "",
588
- "addAddress": "",
589
- "addressLabel": "",
590
- "badAddress": "",
591
- "contactEmailFor": "",
592
- "emptyDescription": "",
593
- "emptyTitle": "",
594
- "exclude": "",
595
- "excludeAction": "",
596
- "excludedAfterSave": "",
597
- "excludedCount": "",
598
- "excludedHelp": "",
599
- "extraAddress": "",
600
- "extraAddresses": "",
601
- "extraAddressesHelp": "",
602
- "groupsNote": "",
603
- "include": "",
604
- "includeAction": "",
605
- "includedAfterSave": "",
606
- "loadFailed": "",
607
- "members": "",
608
- "membersHelp": "",
609
- "membersOff": "",
610
- "membersOffSuppressed": "",
611
- "nameLabel": "",
612
- "namePlaceholder": "",
613
- "noAddress": "",
614
- "noAddressHelp": "",
615
- "openUserPage": "",
616
- "ownerNote": "",
617
- "reasons": {
618
- "banned": "",
619
- "pending": ""
620
- },
621
- "removeAddress": "",
622
- "saveEmail": "",
623
- "saveFirst": "",
624
- "saveFirstHelp": "",
625
- "staleScope": "",
626
- "suppressed": "",
627
- "suppressedHeading": "",
628
- "suppressedHelp": "",
629
- "title": "",
630
- "unknownMember": "",
631
- "willReceive": ""
835
+ "actions": {
836
+ "preview": "",
837
+ "test": "",
838
+ "send": "",
839
+ "more": "",
840
+ "testHint": "",
841
+ "sendHint": ""
632
842
  },
633
- "removeLibrary": "",
634
- "save": "",
635
- "saving": "",
636
- "schedule": "",
637
- "scheduleKind": "",
638
- "searchLibraries": "",
639
- "searchServers": "",
640
- "sections": {
641
- "description": "",
642
- "labels": {
643
- "mostWatched": "",
843
+ "preview": {
844
+ "variants": "",
845
+ "variantTab": "",
846
+ "title": "",
847
+ "draft": "",
848
+ "subjectLabel": "",
849
+ "window": "",
850
+ "windowSince": "",
851
+ "countsListed": {
644
852
  "movies": "",
645
- "music": "",
646
- "seasons": "",
647
- "shows": ""
853
+ "shows": "",
854
+ "albums": ""
648
855
  },
649
- "legend": "",
650
- "mostWatched": "",
651
- "mostWatchedHelp": "",
652
- "movies": "",
653
- "music": "",
654
- "musicHelp": "",
655
- "shows": "",
656
- "the": "",
657
- "units": {
658
- "albums": "",
659
- "mostPlayed": "",
660
- "movies": "",
661
- "seasonsEach": "",
662
- "shows": ""
856
+ "recipients": "",
857
+ "width": "",
858
+ "widths": {
859
+ "desktop": "",
860
+ "phone": ""
663
861
  },
664
- "upTo": ""
665
- },
666
- "send": {
667
- "confirm": "",
668
- "nobody": "",
669
- "previewing": "",
670
- "sending": "",
671
- "summary": "",
672
- "title": "",
673
- "trimmed_one": "",
674
- "trimmed_other": ""
675
- },
676
- "sendNeedsSave": "",
677
- "senderName": "",
678
- "senderNameHelp": "",
679
- "senderNameRequiredMulti": "",
680
- "servers": "",
681
- "serversHelp": "",
682
- "serversSelected": "",
683
- "subject": "",
684
- "subjectHelp": "",
685
- "tabs": {
686
- "edit": "",
687
- "history": ""
688
- },
689
- "test": {
690
- "address": "",
691
- "description": "",
692
- "send": "",
693
- "title": "",
694
- "variant": ""
695
- },
696
- "time": "",
697
- "timezone": "",
698
- "timezoneHelp": "",
699
- "turnOnNow": "",
700
- "unknownLibrary": "",
701
- "unsaved": "",
702
- "variantHeading": "",
703
- "variantsNote": "",
704
- "windowHelp": {
705
- "fixed": "",
706
- "since_last_send": ""
707
- },
708
- "windowKind": "",
709
- "windowMax": "",
710
- "windowSentence": {
711
- "fallback": "",
712
- "fallbackLabel": "",
713
- "fixed": "",
714
- "fixedAfter": "",
715
- "fixedLabel": ""
862
+ "images": "",
863
+ "imagesOn": "",
864
+ "imagesBlocked": "",
865
+ "imagesBlockedNote": "",
866
+ "linksNote": ""
716
867
  },
717
- "windows": {
718
- "fixed": "",
719
- "since_last_send": ""
868
+ "test": {
869
+ "title": "",
870
+ "description": "",
871
+ "variant": "",
872
+ "address": "",
873
+ "send": ""
874
+ },
875
+ "send": {
876
+ "title": "",
877
+ "previewing": "",
878
+ "summary": "",
879
+ "nobody": "",
880
+ "trimmed_one": "",
881
+ "trimmed_other": "",
882
+ "confirm": "",
883
+ "sending": ""
720
884
  }
721
885
  },
722
- "empty": "",
723
- "emptyDescription": "",
724
- "enabled": "",
725
886
  "history": {
726
- "attempts": "",
727
887
  "empty": "",
728
888
  "emptyDescription": "",
729
- "finished": "",
730
889
  "loadFailed": "",
731
- "open": "",
732
- "openSnapshot": "",
733
- "openVariantSnapshot": "",
734
- "page": "",
735
- "pruned": "",
890
+ "trigger": {
891
+ "schedule": "",
892
+ "manual": "",
893
+ "test": ""
894
+ },
895
+ "window": "",
736
896
  "recipients": "",
737
897
  "recipientsEmpty": "",
738
- "retryFailed": "",
898
+ "finished": "",
899
+ "open": "",
900
+ "page": "",
739
901
  "sendTitle": "",
740
- "snapshotTitle": "",
741
902
  "status": {
742
- "failed": "",
743
903
  "queued": "",
744
904
  "sent": "",
905
+ "failed": "",
745
906
  "suppressed": "",
746
907
  "unknown": ""
747
908
  },
748
- "trigger": {
749
- "manual": "",
750
- "schedule": "",
751
- "test": ""
752
- },
909
+ "attempts": "",
753
910
  "unknownHelp": "",
911
+ "openSnapshot": "",
754
912
  "variant": "",
755
913
  "variantEmpty": "",
756
- "window": ""
757
- },
758
- "lastSend": "",
759
- "neverSent": "",
760
- "new": "",
761
- "nextRun": "",
762
- "noDestinationDescription": "",
763
- "noDestinationHint": "",
764
- "noDestinationTitle": "",
765
- "noNextRun": "",
766
- "outcome": {
767
- "failed": "",
768
- "partial": "",
769
- "rendering": "",
770
- "sending": "",
771
- "sent": "",
772
- "skipped_empty": ""
773
- },
774
- "ownerOnly": "",
775
- "richText": {
776
- "bold": "",
777
- "bulletList": "",
778
- "counter": "",
779
- "italic": "",
780
- "link": "",
781
- "linkApply": "",
782
- "linkHref": ""
783
- },
784
- "rowActions": "",
785
- "schedule": {
786
- "cron": "",
787
- "daily": "",
788
- "inZone": "",
789
- "monthly": "",
790
- "weekly": ""
791
- },
792
- "sendNow": ""
793
- },
794
- "plex": {
795
- "chooseServer": "Выберите Plex Media Server для мониторинга",
796
- "selectServer": "Выбрать сервер",
797
- "signInWithPlex": "Войти через Plex",
798
- "signUpWithPlex": "Зарегистрироваться через Plex"
799
- },
800
- "serverHealth": {
801
- "multipleUnreachable": "Сервер {{count}} недоступен: {{serverNames}}",
802
- "unreachable": "{{serverName}} недоступен"
914
+ "openVariantSnapshot": "",
915
+ "snapshotTitle": "",
916
+ "pruned": "",
917
+ "retryFailed": ""
918
+ }
803
919
  },
804
- "servers": {
805
- "addServer": "Добавить сервер",
806
- "addServerDialogDescOther": "Подключите сервер Jellyfin или Emby.",
807
- "addServerDialogDescPlex": "Выберите Plex сервер из связанного аккаунта.",
808
- "added": "Добавлено {{date}}",
809
- "allFieldsRequired": "Все поля обязательны",
810
- "allServersConnected": "Все серверы подключены",
811
- "allServersConnectedDesc": "Все серверы этой учетной записи уже подключены.",
812
- "apiKeyHelp": "Найдена в панели управления вашего медиа-сервера под API Keys или Расширенные настройки.",
813
- "apiKeyHelpEmby": "Найти это в Emby Server → API Keys",
814
- "apiKeyHelpJellyfin": "Найти это в панели управления Jellyfin → API Keys",
815
- "apiKeyPlaceholder": "Введите ваш API ключ",
816
- "checkingConnection": "",
817
- "chooseAccount": "Выберите аккаунт...",
818
- "connectServer": "Подключить сервер",
819
- "connecting": "Подключение...",
820
- "connectionFailed": "Не удалось подключиться",
821
- "connectionSuccess": "Успешное подключение",
822
- "description": "Управление подключенными приложениями Plex, Jellyfin, и Emby серверами",
823
- "discoveringConnections": "Поиск соединений...",
824
- "discoveringServers": "Поиск доступных серверов Plex...",
825
- "editServer": "Изменить сервер",
826
- "editServerDesc": "Обновить имя сервера или URL-адрес подключения.",
827
- "loadingAccounts": "Загрузка связанных аккаунтов...",
828
- "noPlexAccountsLinked": "Нет привязанных аккаунтов Plex",
829
- "noPlexAccountsLinkedHint": "Привяжите аккаунт Plex выше, а затем вернитесь, чтобы добавить сервер.",
830
- "noServersConnected": "Нет подключенных серверов",
831
- "noServersConnectedHint": "Нажмите \"Add Server\", чтобы подключить сервер Jellyfin или Emby",
832
- "plexAccount": "Аккаунт Plex",
833
- "plexServerPlaceholder": "Мой Plex Сервер",
834
- "plexServerUrlPlaceholder": "",
835
- "pluginUpdateAvailable": "",
836
- "pluginVersion": "",
837
- "pollingMode": "",
838
- "posterSource": {
839
- "automatic": "",
840
- "description": "",
841
- "emptyHint": "",
842
- "label": "",
843
- "ownerOnly": "",
920
+ "email": {
921
+ "ownerOnly": "",
922
+ "branding": {
844
923
  "title": "",
845
- "titleDesc": ""
924
+ "description": "",
925
+ "logo": {
926
+ "label": "",
927
+ "tracearr": "",
928
+ "none": "",
929
+ "url": ""
930
+ },
931
+ "logoUrl": "",
932
+ "accent": "",
933
+ "accentPicker": "",
934
+ "footerText": "",
935
+ "footerTextHelp": "",
936
+ "postalAddress": "",
937
+ "postalAddressHelp": "",
938
+ "mailto": "",
939
+ "mailtoHelp": "",
940
+ "save": "",
941
+ "saving": ""
846
942
  },
847
- "publicUrl": "",
848
- "publicUrlHint": "",
849
- "realtimeActive": "",
850
- "realtimeDialog": {
851
- "autoDetectNote": "",
852
- "close": "",
853
- "copyUrl": "",
854
- "embyDescription": "",
855
- "embyReleasesUrl": "",
856
- "embyUpdateDescription": "",
857
- "issueBlocked": "",
858
- "issueMalfunctioned": "",
859
- "issueRestartRequired": "",
860
- "jellyfinDescription": "",
861
- "jellyfinRepoUrl": "",
862
- "jellyfinUpdateDescription": "",
863
- "openReleases": "",
864
- "repositoryUrl": "",
943
+ "suppressions": {
865
944
  "title": "",
866
- "updateTitle": ""
867
- },
868
- "realtimeError": "",
869
- "removeServer": "Удалить сервер",
870
- "removeServerConfirm": "Вы уверены, что хотите удалить этот сервер? Все соответствующие данные сессии будут сохранены, но вы не сможете контролировать новые сеансы с этого сервера.",
871
- "reorder": "",
872
- "selectAccountHelp": "Выберите, с какой учетной записи Plex обнаружить серверы.",
873
- "selectPlexAccount": "Выберите аккаунт Plex",
874
- "serverColor": "Цвет сервера",
875
- "serverColorDesc": "Используется для визуального атрибута в многосерверном режиме",
876
- "serverName": "Имя сервера",
877
- "serverNamePlaceholder": "Мой медиа сервер",
878
- "serverType": "Тип сервера",
879
- "serverUrl": "URL сервера",
880
- "serverUrlHelp": "Прямой URL-адрес вашего Jellyfin или Emby сервера. Используйте IP:порт для лучшей надежности.",
881
- "serverUrlHelpEmby": "URL-адрес, на котором доступен сервер Emby",
882
- "serverUrlHelpJellyfin": "URL-адрес, на котором доступен ваш сервер Jellyfin",
883
- "serverUrlPlaceholder": "",
884
- "setupRealtime": "",
885
- "syncInterval": "Интервал синхронизации",
886
- "testConnection": "Проверить соединение",
887
- "title": "Подключенные серверы",
888
- "updateHint": "Или нажмите кнопку Обновить ниже, чтобы сохранить только изменение имени.",
889
- "updating": "Обновление...",
890
- "version": {
891
- "installed": "",
892
- "upToDate": "",
893
- "updateAvailable": ""
945
+ "globalNote": "",
946
+ "empty": "",
947
+ "emptyDescription": "",
948
+ "add": "",
949
+ "addTitle": "",
950
+ "addDescription": "",
951
+ "address": "",
952
+ "addConfirm": "",
953
+ "reason": {
954
+ "unsubscribed": "",
955
+ "manual": ""
956
+ },
957
+ "openSource": "",
958
+ "remove": "",
959
+ "removeTitle": "",
960
+ "removeDescription": ""
894
961
  }
895
962
  },
896
963
  "shared": {
897
964
  "timezone": {
898
- "empty": "",
899
- "other": "",
900
965
  "placeholder": "",
901
- "search": ""
966
+ "search": "",
967
+ "empty": "",
968
+ "other": ""
902
969
  }
903
970
  },
904
- "tailscale": {
905
- "authorize": "Авторизоваться в хвостовой шкале",
906
- "awaitingAuth": "Ожидание подтверждения...",
907
- "connected": "Tailscale подключен. Ваш экземпляр Tracearr доступен в портсете.",
908
- "description": "",
909
- "disable": "Отключить хвостовую шкалу",
910
- "disableConfirmDescription": "Это отключит Tracearr от вашего портсета. Вы можете снова включить без повторной авторизации.",
911
- "disableConfirmTitle": "Отключить Tailscale?",
912
- "disabledDescription": "Включите Tailscale для того, чтобы Tracearr использовал ваш частный адаптер. Пересылка портов или обратный прокси не требуется.",
913
- "dnsName": "DNS Имя",
914
- "enable": "Включить масштаб хвоста",
915
- "exitNodeNone": "Нет",
916
- "exitNodeOffline": "(оффлайн)",
917
- "hideLogs": "Скрыть журналы",
918
- "hostname": "",
919
- "hostnameHint": "Необязательное настраиваемое имя для этого устройства только на ваш хвост. Только буквы, цифры и дефисы.",
920
- "hostnameLabel": "Имя устройства",
921
- "noLogs": "Нет доступных журналов.",
922
- "notAvailable": "Бинарный файл Tailscale не найден. Эта функция доступна только при запуске официального образа Docker.",
923
- "resetConfirmDescription": "Это отключит Tracearr от вашей сети и удалит идентификацию устройства. Вам нужно будет повторно авторизоваться, если вы включите его снова.",
924
- "resetConfirmTitle": "",
925
- "showLogs": "Показать логи",
926
- "starting": "Запуск тайл...",
927
- "stopping": "Остановка хвостовой шкалы...",
928
- "tailnetUrl": "",
929
- "title": "VPN-чешуя",
930
- "toast": {
931
- "disableFailed": "Не удалось отключить Tailscale",
932
- "disabled": "Шкала хвостовых тканей отключена.",
933
- "enableFailed": "Не удалось включить Tailscale",
934
- "exitNodeFailed": "Не удалось установить узел",
935
- "exitNodeSet": "Узел выхода обновлен.",
936
- "reset": "Хвостовая чешуя была сброшена.",
937
- "resetFailed": "Не удалось сбросить Tailscale"
971
+ "requests": {
972
+ "label": "",
973
+ "link": "",
974
+ "unlink": "",
975
+ "syncNow": "",
976
+ "enable": "",
977
+ "disable": "",
978
+ "paused": "",
979
+ "menuLabel": "",
980
+ "syncedAgo": "",
981
+ "neverSynced": "",
982
+ "counts": {
983
+ "requests_one": "",
984
+ "requests_other": "",
985
+ "unmatchedMedia_one": "",
986
+ "unmatchedMedia_other": "",
987
+ "unmatchedUsers_one": "",
988
+ "unmatchedUsers_other": ""
938
989
  },
939
- "unknownError": "Произошла неизвестная ошибка."
940
- },
941
- "title": "Настройки",
942
- "update": {
943
- "betaUpdate": "Бета обновление",
944
- "newVersion": "Новая версия",
945
- "pullInstructions": "После загрузки перезагрузите контейнер, чтобы применить обновление.",
946
- "releaseNotes": "Примечания к выпуску",
947
- "stableRelease": "Стабильный выпуск",
948
- "title": "Доступно обновление",
949
- "updateCommand": "Обновить команду",
950
- "versionAvailable": "Доступно {{version}}"
990
+ "needsKey": "",
991
+ "lastError": "",
992
+ "lastErrorNoTime": "",
993
+ "dialog": {
994
+ "titleLink": "",
995
+ "titleEdit": "",
996
+ "description": "",
997
+ "url": "",
998
+ "apiKey": "",
999
+ "apiKeyHint": "",
1000
+ "apiKeyKeep": "",
1001
+ "showKey": "",
1002
+ "hideKey": "",
1003
+ "test": "",
1004
+ "testing": "",
1005
+ "save": "",
1006
+ "saveHint": "",
1007
+ "match": "",
1008
+ "mismatch": "",
1009
+ "mismatchIds": "",
1010
+ "mismatchOther": ""
1011
+ },
1012
+ "confirmUnlink": {
1013
+ "title": "",
1014
+ "body": ""
1015
+ },
1016
+ "toast": {
1017
+ "saved": "",
1018
+ "removed": "",
1019
+ "syncStarted": "",
1020
+ "failed": ""
1021
+ }
951
1022
  }
952
1023
  }