@tracearr/translations 2.2.0-beta.3 → 2.2.0

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 (365) hide show
  1. package/dist/config.d.ts +2 -0
  2. package/dist/config.d.ts.map +1 -1
  3. package/dist/config.mobile.d.ts +2 -0
  4. package/dist/config.mobile.d.ts.map +1 -1
  5. package/dist/locales/af-ZA/common.json +313 -313
  6. package/dist/locales/af-ZA/mobile.json +138 -138
  7. package/dist/locales/af-ZA/nav.json +30 -30
  8. package/dist/locales/af-ZA/notifications.json +228 -228
  9. package/dist/locales/af-ZA/pages.json +1776 -1775
  10. package/dist/locales/af-ZA/settings.json +483 -483
  11. package/dist/locales/ar-SA/common.json +289 -289
  12. package/dist/locales/ar-SA/mobile.json +96 -96
  13. package/dist/locales/ar-SA/nav.json +8 -8
  14. package/dist/locales/ar-SA/notifications.json +227 -227
  15. package/dist/locales/ar-SA/pages.json +1779 -1778
  16. package/dist/locales/ar-SA/settings.json +452 -452
  17. package/dist/locales/ca-ES/common.json +286 -286
  18. package/dist/locales/ca-ES/mobile.json +125 -125
  19. package/dist/locales/ca-ES/nav.json +8 -8
  20. package/dist/locales/ca-ES/notifications.json +228 -228
  21. package/dist/locales/ca-ES/pages.json +1775 -1774
  22. package/dist/locales/ca-ES/settings.json +471 -471
  23. package/dist/locales/cs-CZ/common.json +284 -284
  24. package/dist/locales/cs-CZ/mobile.json +99 -99
  25. package/dist/locales/cs-CZ/nav.json +8 -8
  26. package/dist/locales/cs-CZ/notifications.json +226 -226
  27. package/dist/locales/cs-CZ/pages.json +1766 -1765
  28. package/dist/locales/cs-CZ/settings.json +451 -451
  29. package/dist/locales/da-DK/common.json +284 -284
  30. package/dist/locales/da-DK/mobile.json +99 -99
  31. package/dist/locales/da-DK/nav.json +9 -9
  32. package/dist/locales/da-DK/notifications.json +226 -226
  33. package/dist/locales/da-DK/pages.json +1775 -1774
  34. package/dist/locales/da-DK/settings.json +451 -451
  35. package/dist/locales/de-DE/common.json +285 -285
  36. package/dist/locales/de-DE/mobile.json +102 -102
  37. package/dist/locales/de-DE/nav.json +10 -10
  38. package/dist/locales/de-DE/notifications.json +226 -226
  39. package/dist/locales/de-DE/pages.json +1775 -1774
  40. package/dist/locales/de-DE/settings.json +451 -451
  41. package/dist/locales/el-GR/common.json +283 -283
  42. package/dist/locales/el-GR/mobile.json +97 -97
  43. package/dist/locales/el-GR/nav.json +8 -8
  44. package/dist/locales/el-GR/notifications.json +226 -226
  45. package/dist/locales/el-GR/pages.json +1781 -1780
  46. package/dist/locales/el-GR/settings.json +451 -451
  47. package/dist/locales/en/pages.json +2 -1
  48. package/dist/locales/en-US/common.json +280 -280
  49. package/dist/locales/en-US/nav.json +20 -20
  50. package/dist/locales/en-US/notifications.json +222 -222
  51. package/dist/locales/en-US/pages.json +1553 -1552
  52. package/dist/locales/en-US/settings.json +432 -432
  53. package/dist/locales/es-ES/common.json +283 -283
  54. package/dist/locales/es-ES/mobile.json +96 -96
  55. package/dist/locales/es-ES/nav.json +8 -8
  56. package/dist/locales/es-ES/notifications.json +226 -226
  57. package/dist/locales/es-ES/pages.json +1774 -1773
  58. package/dist/locales/es-ES/settings.json +451 -451
  59. package/dist/locales/fi-FI/common.json +284 -284
  60. package/dist/locales/fi-FI/mobile.json +97 -97
  61. package/dist/locales/fi-FI/nav.json +9 -9
  62. package/dist/locales/fi-FI/notifications.json +226 -226
  63. package/dist/locales/fi-FI/pages.json +1776 -1775
  64. package/dist/locales/fi-FI/settings.json +451 -451
  65. package/dist/locales/fr-FR/common.json +284 -284
  66. package/dist/locales/fr-FR/mobile.json +10 -10
  67. package/dist/locales/fr-FR/nav.json +11 -11
  68. package/dist/locales/fr-FR/notifications.json +226 -226
  69. package/dist/locales/fr-FR/pages.json +1762 -1761
  70. package/dist/locales/fr-FR/settings.json +452 -452
  71. package/dist/locales/he-IL/common.json +313 -313
  72. package/dist/locales/he-IL/mobile.json +138 -138
  73. package/dist/locales/he-IL/nav.json +30 -30
  74. package/dist/locales/he-IL/notifications.json +228 -228
  75. package/dist/locales/he-IL/pages.json +1796 -1795
  76. package/dist/locales/he-IL/settings.json +483 -483
  77. package/dist/locales/hu-HU/common.json +298 -298
  78. package/dist/locales/hu-HU/mobile.json +138 -138
  79. package/dist/locales/hu-HU/nav.json +30 -30
  80. package/dist/locales/hu-HU/notifications.json +228 -228
  81. package/dist/locales/hu-HU/pages.json +1792 -1791
  82. package/dist/locales/hu-HU/settings.json +482 -482
  83. package/dist/locales/it-IT/common.json +284 -284
  84. package/dist/locales/it-IT/mobile.json +101 -101
  85. package/dist/locales/it-IT/nav.json +10 -10
  86. package/dist/locales/it-IT/notifications.json +227 -227
  87. package/dist/locales/it-IT/pages.json +1779 -1778
  88. package/dist/locales/it-IT/settings.json +451 -451
  89. package/dist/locales/ja-JP/common.json +283 -283
  90. package/dist/locales/ja-JP/mobile.json +98 -98
  91. package/dist/locales/ja-JP/nav.json +9 -9
  92. package/dist/locales/ja-JP/notifications.json +226 -226
  93. package/dist/locales/ja-JP/pages.json +1779 -1778
  94. package/dist/locales/ja-JP/settings.json +451 -451
  95. package/dist/locales/ko-KR/common.json +313 -313
  96. package/dist/locales/ko-KR/mobile.json +138 -138
  97. package/dist/locales/ko-KR/nav.json +30 -30
  98. package/dist/locales/ko-KR/notifications.json +228 -228
  99. package/dist/locales/ko-KR/pages.json +1796 -1795
  100. package/dist/locales/ko-KR/settings.json +483 -483
  101. package/dist/locales/nl-NL/common.json +283 -283
  102. package/dist/locales/nl-NL/mobile.json +91 -91
  103. package/dist/locales/nl-NL/nav.json +10 -10
  104. package/dist/locales/nl-NL/notifications.json +226 -226
  105. package/dist/locales/nl-NL/pages.json +1768 -1767
  106. package/dist/locales/nl-NL/settings.json +444 -444
  107. package/dist/locales/no-NO/common.json +283 -283
  108. package/dist/locales/no-NO/mobile.json +96 -96
  109. package/dist/locales/no-NO/nav.json +8 -8
  110. package/dist/locales/no-NO/notifications.json +226 -226
  111. package/dist/locales/no-NO/pages.json +1778 -1777
  112. package/dist/locales/no-NO/settings.json +451 -451
  113. package/dist/locales/pl-PL/common.json +283 -283
  114. package/dist/locales/pl-PL/mobile.json +94 -94
  115. package/dist/locales/pl-PL/nav.json +8 -8
  116. package/dist/locales/pl-PL/notifications.json +226 -226
  117. package/dist/locales/pl-PL/pages.json +1778 -1777
  118. package/dist/locales/pl-PL/settings.json +451 -451
  119. package/dist/locales/pt-BR/common.json +286 -286
  120. package/dist/locales/pt-BR/mobile.json +138 -138
  121. package/dist/locales/pt-BR/nav.json +17 -17
  122. package/dist/locales/pt-BR/notifications.json +226 -226
  123. package/dist/locales/pt-BR/pages.json +1781 -1780
  124. package/dist/locales/pt-BR/settings.json +454 -454
  125. package/dist/locales/pt-PT/common.json +289 -289
  126. package/dist/locales/pt-PT/mobile.json +97 -97
  127. package/dist/locales/pt-PT/nav.json +9 -9
  128. package/dist/locales/pt-PT/notifications.json +226 -226
  129. package/dist/locales/pt-PT/pages.json +1780 -1779
  130. package/dist/locales/pt-PT/settings.json +452 -452
  131. package/dist/locales/ro-RO/common.json +283 -283
  132. package/dist/locales/ro-RO/mobile.json +98 -98
  133. package/dist/locales/ro-RO/nav.json +9 -9
  134. package/dist/locales/ro-RO/notifications.json +226 -226
  135. package/dist/locales/ro-RO/pages.json +1779 -1778
  136. package/dist/locales/ro-RO/settings.json +451 -451
  137. package/dist/locales/ru-RU/common.json +288 -288
  138. package/dist/locales/ru-RU/mobile.json +97 -97
  139. package/dist/locales/ru-RU/nav.json +8 -8
  140. package/dist/locales/ru-RU/notifications.json +226 -226
  141. package/dist/locales/ru-RU/pages.json +1781 -1780
  142. package/dist/locales/ru-RU/settings.json +451 -451
  143. package/dist/locales/sr-SP/common.json +313 -313
  144. package/dist/locales/sr-SP/mobile.json +138 -138
  145. package/dist/locales/sr-SP/nav.json +30 -30
  146. package/dist/locales/sr-SP/notifications.json +228 -228
  147. package/dist/locales/sr-SP/pages.json +1796 -1795
  148. package/dist/locales/sr-SP/settings.json +483 -483
  149. package/dist/locales/sv-SE/common.json +284 -284
  150. package/dist/locales/sv-SE/mobile.json +100 -100
  151. package/dist/locales/sv-SE/nav.json +9 -9
  152. package/dist/locales/sv-SE/notifications.json +226 -226
  153. package/dist/locales/sv-SE/pages.json +1777 -1776
  154. package/dist/locales/sv-SE/settings.json +451 -451
  155. package/dist/locales/tr-TR/common.json +313 -313
  156. package/dist/locales/tr-TR/mobile.json +138 -138
  157. package/dist/locales/tr-TR/nav.json +30 -30
  158. package/dist/locales/tr-TR/notifications.json +228 -228
  159. package/dist/locales/tr-TR/pages.json +1792 -1791
  160. package/dist/locales/tr-TR/settings.json +483 -483
  161. package/dist/locales/uk-UA/common.json +283 -283
  162. package/dist/locales/uk-UA/mobile.json +98 -98
  163. package/dist/locales/uk-UA/nav.json +8 -8
  164. package/dist/locales/uk-UA/notifications.json +226 -226
  165. package/dist/locales/uk-UA/pages.json +1779 -1778
  166. package/dist/locales/uk-UA/settings.json +451 -451
  167. package/dist/locales/vi-VN/common.json +313 -313
  168. package/dist/locales/vi-VN/mobile.json +138 -138
  169. package/dist/locales/vi-VN/nav.json +30 -30
  170. package/dist/locales/vi-VN/notifications.json +228 -228
  171. package/dist/locales/vi-VN/pages.json +1796 -1795
  172. package/dist/locales/vi-VN/settings.json +483 -483
  173. package/dist/locales/zh-CN/common.json +283 -283
  174. package/dist/locales/zh-CN/mobile.json +95 -95
  175. package/dist/locales/zh-CN/nav.json +8 -8
  176. package/dist/locales/zh-CN/notifications.json +226 -226
  177. package/dist/locales/zh-CN/pages.json +1778 -1777
  178. package/dist/locales/zh-CN/settings.json +451 -451
  179. package/dist/locales/zh-TW/common.json +293 -293
  180. package/dist/locales/zh-TW/mobile.json +137 -137
  181. package/dist/locales/zh-TW/nav.json +30 -30
  182. package/dist/locales/zh-TW/notifications.json +228 -228
  183. package/dist/locales/zh-TW/pages.json +1798 -1797
  184. package/dist/locales/zh-TW/settings.json +482 -482
  185. package/package.json +3 -2
  186. package/src/locales/af-ZA/common.json +313 -313
  187. package/src/locales/af-ZA/mobile.json +138 -138
  188. package/src/locales/af-ZA/nav.json +30 -30
  189. package/src/locales/af-ZA/notifications.json +228 -228
  190. package/src/locales/af-ZA/pages.json +1776 -1775
  191. package/src/locales/af-ZA/settings.json +483 -483
  192. package/src/locales/ar-SA/common.json +289 -289
  193. package/src/locales/ar-SA/mobile.json +96 -96
  194. package/src/locales/ar-SA/nav.json +8 -8
  195. package/src/locales/ar-SA/notifications.json +227 -227
  196. package/src/locales/ar-SA/pages.json +1779 -1778
  197. package/src/locales/ar-SA/settings.json +452 -452
  198. package/src/locales/ca-ES/common.json +286 -286
  199. package/src/locales/ca-ES/mobile.json +125 -125
  200. package/src/locales/ca-ES/nav.json +8 -8
  201. package/src/locales/ca-ES/notifications.json +228 -228
  202. package/src/locales/ca-ES/pages.json +1775 -1774
  203. package/src/locales/ca-ES/settings.json +471 -471
  204. package/src/locales/cs-CZ/common.json +284 -284
  205. package/src/locales/cs-CZ/mobile.json +99 -99
  206. package/src/locales/cs-CZ/nav.json +8 -8
  207. package/src/locales/cs-CZ/notifications.json +226 -226
  208. package/src/locales/cs-CZ/pages.json +1766 -1765
  209. package/src/locales/cs-CZ/settings.json +451 -451
  210. package/src/locales/da-DK/common.json +284 -284
  211. package/src/locales/da-DK/mobile.json +99 -99
  212. package/src/locales/da-DK/nav.json +9 -9
  213. package/src/locales/da-DK/notifications.json +226 -226
  214. package/src/locales/da-DK/pages.json +1775 -1774
  215. package/src/locales/da-DK/settings.json +451 -451
  216. package/src/locales/de-DE/common.json +285 -285
  217. package/src/locales/de-DE/mobile.json +102 -102
  218. package/src/locales/de-DE/nav.json +10 -10
  219. package/src/locales/de-DE/notifications.json +226 -226
  220. package/src/locales/de-DE/pages.json +1775 -1774
  221. package/src/locales/de-DE/settings.json +451 -451
  222. package/src/locales/el-GR/common.json +283 -283
  223. package/src/locales/el-GR/mobile.json +97 -97
  224. package/src/locales/el-GR/nav.json +8 -8
  225. package/src/locales/el-GR/notifications.json +226 -226
  226. package/src/locales/el-GR/pages.json +1781 -1780
  227. package/src/locales/el-GR/settings.json +451 -451
  228. package/src/locales/en/pages.json +2 -1
  229. package/src/locales/en-US/common.json +280 -280
  230. package/src/locales/en-US/nav.json +20 -20
  231. package/src/locales/en-US/notifications.json +222 -222
  232. package/src/locales/en-US/pages.json +1553 -1552
  233. package/src/locales/en-US/settings.json +432 -432
  234. package/src/locales/es-ES/common.json +283 -283
  235. package/src/locales/es-ES/mobile.json +96 -96
  236. package/src/locales/es-ES/nav.json +8 -8
  237. package/src/locales/es-ES/notifications.json +226 -226
  238. package/src/locales/es-ES/pages.json +1774 -1773
  239. package/src/locales/es-ES/settings.json +451 -451
  240. package/src/locales/fi-FI/common.json +284 -284
  241. package/src/locales/fi-FI/mobile.json +97 -97
  242. package/src/locales/fi-FI/nav.json +9 -9
  243. package/src/locales/fi-FI/notifications.json +226 -226
  244. package/src/locales/fi-FI/pages.json +1776 -1775
  245. package/src/locales/fi-FI/settings.json +451 -451
  246. package/src/locales/fr-FR/common.json +284 -284
  247. package/src/locales/fr-FR/mobile.json +10 -10
  248. package/src/locales/fr-FR/nav.json +11 -11
  249. package/src/locales/fr-FR/notifications.json +226 -226
  250. package/src/locales/fr-FR/pages.json +1762 -1761
  251. package/src/locales/fr-FR/settings.json +452 -452
  252. package/src/locales/he-IL/common.json +313 -313
  253. package/src/locales/he-IL/mobile.json +138 -138
  254. package/src/locales/he-IL/nav.json +30 -30
  255. package/src/locales/he-IL/notifications.json +228 -228
  256. package/src/locales/he-IL/pages.json +1796 -1795
  257. package/src/locales/he-IL/settings.json +483 -483
  258. package/src/locales/hu-HU/common.json +298 -298
  259. package/src/locales/hu-HU/mobile.json +138 -138
  260. package/src/locales/hu-HU/nav.json +30 -30
  261. package/src/locales/hu-HU/notifications.json +228 -228
  262. package/src/locales/hu-HU/pages.json +1792 -1791
  263. package/src/locales/hu-HU/settings.json +482 -482
  264. package/src/locales/it-IT/common.json +284 -284
  265. package/src/locales/it-IT/mobile.json +101 -101
  266. package/src/locales/it-IT/nav.json +10 -10
  267. package/src/locales/it-IT/notifications.json +227 -227
  268. package/src/locales/it-IT/pages.json +1779 -1778
  269. package/src/locales/it-IT/settings.json +451 -451
  270. package/src/locales/ja-JP/common.json +283 -283
  271. package/src/locales/ja-JP/mobile.json +98 -98
  272. package/src/locales/ja-JP/nav.json +9 -9
  273. package/src/locales/ja-JP/notifications.json +226 -226
  274. package/src/locales/ja-JP/pages.json +1779 -1778
  275. package/src/locales/ja-JP/settings.json +451 -451
  276. package/src/locales/ko-KR/common.json +313 -313
  277. package/src/locales/ko-KR/mobile.json +138 -138
  278. package/src/locales/ko-KR/nav.json +30 -30
  279. package/src/locales/ko-KR/notifications.json +228 -228
  280. package/src/locales/ko-KR/pages.json +1796 -1795
  281. package/src/locales/ko-KR/settings.json +483 -483
  282. package/src/locales/nl-NL/common.json +283 -283
  283. package/src/locales/nl-NL/mobile.json +91 -91
  284. package/src/locales/nl-NL/nav.json +10 -10
  285. package/src/locales/nl-NL/notifications.json +226 -226
  286. package/src/locales/nl-NL/pages.json +1768 -1767
  287. package/src/locales/nl-NL/settings.json +444 -444
  288. package/src/locales/no-NO/common.json +283 -283
  289. package/src/locales/no-NO/mobile.json +96 -96
  290. package/src/locales/no-NO/nav.json +8 -8
  291. package/src/locales/no-NO/notifications.json +226 -226
  292. package/src/locales/no-NO/pages.json +1778 -1777
  293. package/src/locales/no-NO/settings.json +451 -451
  294. package/src/locales/pl-PL/common.json +283 -283
  295. package/src/locales/pl-PL/mobile.json +94 -94
  296. package/src/locales/pl-PL/nav.json +8 -8
  297. package/src/locales/pl-PL/notifications.json +226 -226
  298. package/src/locales/pl-PL/pages.json +1778 -1777
  299. package/src/locales/pl-PL/settings.json +451 -451
  300. package/src/locales/pt-BR/common.json +286 -286
  301. package/src/locales/pt-BR/mobile.json +138 -138
  302. package/src/locales/pt-BR/nav.json +17 -17
  303. package/src/locales/pt-BR/notifications.json +226 -226
  304. package/src/locales/pt-BR/pages.json +1781 -1780
  305. package/src/locales/pt-BR/settings.json +454 -454
  306. package/src/locales/pt-PT/common.json +289 -289
  307. package/src/locales/pt-PT/mobile.json +97 -97
  308. package/src/locales/pt-PT/nav.json +9 -9
  309. package/src/locales/pt-PT/notifications.json +226 -226
  310. package/src/locales/pt-PT/pages.json +1780 -1779
  311. package/src/locales/pt-PT/settings.json +452 -452
  312. package/src/locales/ro-RO/common.json +283 -283
  313. package/src/locales/ro-RO/mobile.json +98 -98
  314. package/src/locales/ro-RO/nav.json +9 -9
  315. package/src/locales/ro-RO/notifications.json +226 -226
  316. package/src/locales/ro-RO/pages.json +1779 -1778
  317. package/src/locales/ro-RO/settings.json +451 -451
  318. package/src/locales/ru-RU/common.json +288 -288
  319. package/src/locales/ru-RU/mobile.json +97 -97
  320. package/src/locales/ru-RU/nav.json +8 -8
  321. package/src/locales/ru-RU/notifications.json +226 -226
  322. package/src/locales/ru-RU/pages.json +1781 -1780
  323. package/src/locales/ru-RU/settings.json +451 -451
  324. package/src/locales/sr-SP/common.json +313 -313
  325. package/src/locales/sr-SP/mobile.json +138 -138
  326. package/src/locales/sr-SP/nav.json +30 -30
  327. package/src/locales/sr-SP/notifications.json +228 -228
  328. package/src/locales/sr-SP/pages.json +1796 -1795
  329. package/src/locales/sr-SP/settings.json +483 -483
  330. package/src/locales/sv-SE/common.json +284 -284
  331. package/src/locales/sv-SE/mobile.json +100 -100
  332. package/src/locales/sv-SE/nav.json +9 -9
  333. package/src/locales/sv-SE/notifications.json +226 -226
  334. package/src/locales/sv-SE/pages.json +1777 -1776
  335. package/src/locales/sv-SE/settings.json +451 -451
  336. package/src/locales/tr-TR/common.json +313 -313
  337. package/src/locales/tr-TR/mobile.json +138 -138
  338. package/src/locales/tr-TR/nav.json +30 -30
  339. package/src/locales/tr-TR/notifications.json +228 -228
  340. package/src/locales/tr-TR/pages.json +1792 -1791
  341. package/src/locales/tr-TR/settings.json +483 -483
  342. package/src/locales/uk-UA/common.json +283 -283
  343. package/src/locales/uk-UA/mobile.json +98 -98
  344. package/src/locales/uk-UA/nav.json +8 -8
  345. package/src/locales/uk-UA/notifications.json +226 -226
  346. package/src/locales/uk-UA/pages.json +1779 -1778
  347. package/src/locales/uk-UA/settings.json +451 -451
  348. package/src/locales/vi-VN/common.json +313 -313
  349. package/src/locales/vi-VN/mobile.json +138 -138
  350. package/src/locales/vi-VN/nav.json +30 -30
  351. package/src/locales/vi-VN/notifications.json +228 -228
  352. package/src/locales/vi-VN/pages.json +1796 -1795
  353. package/src/locales/vi-VN/settings.json +483 -483
  354. package/src/locales/zh-CN/common.json +283 -283
  355. package/src/locales/zh-CN/mobile.json +95 -95
  356. package/src/locales/zh-CN/nav.json +8 -8
  357. package/src/locales/zh-CN/notifications.json +226 -226
  358. package/src/locales/zh-CN/pages.json +1778 -1777
  359. package/src/locales/zh-CN/settings.json +451 -451
  360. package/src/locales/zh-TW/common.json +293 -293
  361. package/src/locales/zh-TW/mobile.json +137 -137
  362. package/src/locales/zh-TW/nav.json +30 -30
  363. package/src/locales/zh-TW/notifications.json +228 -228
  364. package/src/locales/zh-TW/pages.json +1798 -1797
  365. package/src/locales/zh-TW/settings.json +482 -482
@@ -1,504 +1,504 @@
1
1
  {
2
- "accessControl": {
3
- "allowGuestAccess": "Разрешить гостевой доступ",
4
- "allowGuestAccessDesc": "Когда отключено, только владелец сервера может войти в Tracearr",
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
- "filename": "Имя файла",
44
- "freeSpace": "Каталог резервных копий свободного места: {{size}}",
45
- "lowDiskSpace": "Низкое место на диске — резервные копии и восстановления требуют по крайней мере в два раза больше размера базы данных в свободное пространство.",
46
- "noBackups": "Резервных копий пока нет. Создайте первую резервную копию выше.",
47
- "restore": {
48
- "automations": "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
- "schedule": "Запланированные резервные копии",
70
- "scheduleDaily": "Ежедневно",
71
- "scheduleDayOfMonth": "День месяца",
72
- "scheduleDayOfMonthHint": "В месяцах с меньшим количеством дней, резервная копия работает в последний день.",
73
- "scheduleDayOfWeek": "День недели",
74
- "scheduleDisabled": "Отключено",
75
- "scheduleMonthly": "Ежемесячно",
76
- "scheduleTime": "Время ({{timezone}})",
77
- "scheduleType": "График",
78
- "scheduleWeekly": "Еженедельно",
79
- "size": "Размер",
80
- "title": "Резервное копирование",
81
- "toast": {
82
- "backupCreateFailed": "Не удалось создать резервную копию",
83
- "backupCreated": "Резервная копия успешно создана",
84
- "backupDeleteFailed": "Не удалось удалить резервную копию",
85
- "backupDeleted": "Резервная копия удалена",
86
- "backupUploadFailed": "Не удалось загрузить резервную копию",
87
- "backupUploaded": "Резервная копия успешно загружена",
88
- "restoreStartFailed": "Не удалось начать восстановление",
89
- "restoreStarted": "Восстановление начато",
90
- "scheduleError": "Не удалось сохранить резервную копию расписания",
91
- "scheduleSaved": "Расписание резервного копирования сохранено"
92
- },
93
- "type": "Тип",
94
- "typeManual": "Ручной",
95
- "typeScheduled": "Запланированный",
96
- "typeUploaded": "Загружено",
97
- "uploadBackup": "Загрузить резервную копию",
98
- "uploading": "Загрузка...",
99
- "version": "Версии"
2
+ "title": "Настройки",
3
+ "tabs": {
4
+ "general": "Общие положения",
5
+ "servers": "Серверы",
6
+ "notifications": "Уведомления",
7
+ "mobile": "Мобильное приложение",
8
+ "tailscale": "Хвостовая чешуя",
9
+ "import": "Импорт",
10
+ "advanced": "Расширенные",
11
+ "jobs": "Задания",
12
+ "accessControl": "Контроль доступа",
13
+ "backup": "Резервное копирование"
100
14
  },
101
15
  "general": {
102
- "accentColor": "Цвет акцента",
103
- "apiDocs": "API Docs",
104
- "apiKeyDesc": "Получите доступ к Tracearr API для сторонних интеграций, таких как Homarr, Home Assistant, и т.д.",
105
- "apiKeyReadAccess": "Ваш ключ API предоставляет полный доступ к чтению данных Tracearr.",
106
- "apiRateLimit": "API Rate Limit",
107
- "apiRateLimitDesc": "Maximum public API requests per minute per key. Restart required to apply.",
108
- "apiRateLimitSuffix": "/min",
16
+ "title": "Общие настройки",
17
+ "unitSystem": "Система модулей",
18
+ "metric": "Метрика (км, км/ч)",
19
+ "imperial": "Имперская (mi, mph)",
20
+ "timezone": "",
21
+ "primaryAuth": "Метод первичной аутентификации",
22
+ "localAccount": "Локальный счет",
23
+ "plexAccount": "Аккаунт Plex",
24
+ "language": "Язык",
25
+ "languageDescription": "Выберите предпочитаемый язык отображения.",
26
+ "helpTranslate": "Помогите перевести Tracearr",
27
+ "timeFormat": "Формат времени",
28
+ "timeFormatDescription": "Выберите, как время отображается.",
29
+ "timeFormat12h": "12 часов (1:30 PM)",
30
+ "timeFormat24h": "24-часовой (13:30)",
109
31
  "appearance": "Внешний вид",
110
32
  "appearanceDesc": "Настройка внешнего вида Tracearr",
33
+ "theme": "Тема",
34
+ "accentColor": "Цвет акцента",
35
+ "default": "(по умолчанию)",
36
+ "cyanDefault": "* Бирюзовый цвет по умолчанию",
37
+ "themeLight": "Светлая",
38
+ "themeDark": "Тёмная",
39
+ "themeSystem": "Система",
111
40
  "application": "Приложение",
112
41
  "applicationDesc": "Настройка базовых параметров приложения",
113
- "copyToClipboard": "Копировать в буфер обмена",
114
- "cyanDefault": "* Бирюзовый цвет по умолчанию",
115
- "default": "(по умолчанию)",
116
- "detect": "Обнаружить",
42
+ "unitSystemDesc": "Выберите, как отображаются расстояния и скорости",
43
+ "sessionSync": "Синхронизация сессий",
44
+ "sessionSyncDesc": "Включить отслеживание сессий для ваших медиа серверов",
45
+ "syncInterval": "Интервал синхронизации",
46
+ "syncIntervalDesc": "Частота опроса для Jellyfin/Emby (5-300 секунд)",
47
+ "syncIntervalSuffix": "сек",
48
+ "plexSseNote": "Plex использует Server-Sent Events (SSE) для быстрых обновлений — опрос не требуется.",
49
+ "jellyfinPollingNote": "Jellyfin/Emby опрошены с интервалом выше.",
117
50
  "enhancedGeoIP": "Расширенный поиск GeoIP",
118
51
  "enhancedGeoIPDesc": "Используйте сервис GeoIP Plex для получения более точных данных о местоположении. Когда включено, IP адреса отправляются в plex. v для поиска. Локальная база данных MaxMind используется как резервная копия.",
119
52
  "externalAccess": "Внешний доступ",
120
53
  "externalAccessDesc": "Настройте как внешние устройства (например, мобильные приложения) подключаться к вашему серверу",
121
54
  "externalUrl": "Внешний URL",
55
+ "externalUrlPlaceholder": "",
122
56
  "externalUrlDesc": "URL-адрес, который внешние устройства должны использовать для доступа к этому серверу. Используется для подключения QR-кодов и мобильных приложений.",
123
- "externalUrlPlaceholder": "https://tracearr.example.com",
124
- "generateApiKeyPrompt": "Создайте API ключ для включения внешней интеграции.",
125
- "generateKey": "Сгенерировать ключ",
126
- "helpTranslate": "Помогите перевести Tracearr",
127
- "imperial": "Имперская (mi, mph)",
128
- "iosHttpWarning": "iOS требует HTTPS для внешних подключений. Настройте обратный прокси с помощью SSL.",
129
- "jellyfinPollingNote": "Jellyfin/Emby опрошены с интервалом выше.",
130
- "language": "Язык",
131
- "languageDescription": "Выберите предпочитаемый язык отображения.",
132
- "localAccount": "Локальный счет",
57
+ "detect": "Обнаружить",
133
58
  "localhostWarning": "URL-адреса локальных хостов не будут работать для внешних устройств. Используйте локальный IP адрес или имя домена.",
134
- "metric": "Метрика (км, км/ч)",
59
+ "iosHttpWarning": "iOS требует HTTPS для внешних подключений. Настройте обратный прокси с помощью SSL.",
60
+ "apiKeyDesc": "Получите доступ к Tracearr API для сторонних интеграций, таких как Homarr, Home Assistant, и т.д.",
61
+ "apiDocs": "",
135
62
  "noApiKeyGenerated": "Ключ API не создан",
136
- "plexAccount": "Аккаунт Plex",
137
- "plexSseNote": "Plex использует Server-Sent Events (SSE) для быстрых обновлений — опрос не требуется.",
138
- "primaryAuth": "Метод первичной аутентификации",
139
- "publicApiSettings": "Public API",
140
- "publicApiSettingsDesc": "Configure watch-completion thresholds and request limits for the public API",
63
+ "copyToClipboard": "Копировать в буфер обмена",
64
+ "apiKeyReadAccess": "Ваш ключ API предоставляет полный доступ к чтению данных Tracearr.",
65
+ "generateApiKeyPrompt": "Создайте API ключ для включения внешней интеграции.",
141
66
  "regenerate": "Восстановить",
67
+ "generateKey": "Сгенерировать ключ",
142
68
  "regenerateApiKey": "Пересоздать ключ API?",
143
69
  "regenerateApiKeyDesc": "Это аннулирует ваш текущий ключ API. Любые интеграции, использующие старый ключ, перестанут работать.",
144
- "sessionSync": "Синхронизация сессий",
145
- "sessionSyncDesc": "Включить отслеживание сессий для ваших медиа серверов",
146
- "syncInterval": "Интервал синхронизации",
147
- "syncIntervalDesc": "Частота опроса для Jellyfin/Emby (5-300 секунд)",
148
- "syncIntervalSuffix": "сек",
149
- "theme": "Тема",
150
- "themeDark": "Тёмная",
151
- "themeLight": "Светлая",
152
- "themeSystem": "Система",
153
- "timeFormat": "Формат времени",
154
- "timeFormat12h": "12 часов (1:30 PM)",
155
- "timeFormat24h": "24-часовой (13:30)",
156
- "timeFormatDescription": "Выберите, как время отображается.",
157
- "timezone": "Timezone",
158
- "title": "Общие настройки",
159
- "unitSystem": "Система модулей",
160
- "unitSystemDesc": "Выберите, как отображаются расстояния и скорости",
70
+ "publicApiSettings": "",
71
+ "publicApiSettingsDesc": "",
72
+ "watchedThresholdMovie": "",
73
+ "watchedThresholdMovieDesc": "",
74
+ "watchedThresholdTv": "",
75
+ "watchedThresholdTvDesc": "",
76
+ "watchedThresholdMusic": "",
77
+ "watchedThresholdMusicDesc": "",
78
+ "watchedThresholdSuffix": "",
79
+ "apiRateLimit": "",
80
+ "apiRateLimitDesc": "",
81
+ "apiRateLimitSuffix": "",
161
82
  "updateChecks": {
162
- "description": "Tracearr looks for new releases every six hours. Notifications come from whatever automation listens for the update triggers.",
163
- "plugin": "Realtime plugin",
164
- "pluginDesc": "Check for new releases of the Tracearr plugin your Jellyfin and Emby servers stream events through.",
165
- "server": "Media servers",
166
- "serverDesc": "Compare what each Plex, Jellyfin and Emby server runs with the newest release its makers publish.",
167
- "title": "Update checks"
83
+ "title": "",
84
+ "description": "",
85
+ "plugin": "",
86
+ "pluginDesc": "",
87
+ "server": "",
88
+ "serverDesc": ""
168
89
  },
169
90
  "imageCache": {
170
- "title": "Poster cache",
171
- "description": "One copy of each poster, kept on disk until the poster changes. Nothing here is evicted to make room; when the disk runs low the cache stops growing and says so.",
172
- "size": "On disk",
173
- "files": "Files",
174
- "need": "Estimated need",
175
- "needHint": "{{count}} posters × 18 KB",
176
- "free": "Free disk",
177
- "freeOf": "of {{total}}",
178
- "floor": "Keeps free",
179
- "ceiling": "Ceiling",
180
- "lastSweep": "Last sweep",
181
- "never": "not yet",
182
- "diskLimited": "Disk-limited since {{since}}: about {{shortfall}} of posters are not cached.",
183
- "loadError": "Could not load the cache status."
91
+ "title": "",
92
+ "description": "",
93
+ "size": "",
94
+ "files": "",
95
+ "need": "",
96
+ "needHint": "",
97
+ "free": "",
98
+ "freeOf": "",
99
+ "floor": "",
100
+ "ceiling": "",
101
+ "lastSweep": "",
102
+ "never": "",
103
+ "diskLimited": "",
104
+ "loadError": ""
105
+ }
106
+ },
107
+ "servers": {
108
+ "title": "Подключенные серверы",
109
+ "addServer": "Добавить сервер",
110
+ "serverName": "Имя сервера",
111
+ "serverUrl": "URL сервера",
112
+ "syncInterval": "Интервал синхронизации",
113
+ "testConnection": "Проверить соединение",
114
+ "connectionSuccess": "Успешное подключение",
115
+ "connectionFailed": "Не удалось подключиться",
116
+ "noServersConnected": "Нет подключенных серверов",
117
+ "noServersConnectedHint": "Нажмите \"Add Server\", чтобы подключить сервер Jellyfin или Emby",
118
+ "serverType": "Тип сервера",
119
+ "loadingAccounts": "Загрузка связанных аккаунтов...",
120
+ "noPlexAccountsLinked": "Нет привязанных аккаунтов Plex",
121
+ "noPlexAccountsLinkedHint": "Привяжите аккаунт Plex выше, а затем вернитесь, чтобы добавить сервер.",
122
+ "selectPlexAccount": "Выберите аккаунт Plex",
123
+ "chooseAccount": "Выберите аккаунт...",
124
+ "selectAccountHelp": "Выберите, с какой учетной записи Plex обнаружить серверы.",
125
+ "allServersConnected": "Все серверы подключены",
126
+ "allServersConnectedDesc": "Все серверы этой учетной записи уже подключены.",
127
+ "serverUrlPlaceholder": "",
128
+ "serverUrlHelp": "Прямой URL-адрес вашего Jellyfin или Emby сервера. Используйте IP:порт для лучшей надежности.",
129
+ "serverNamePlaceholder": "Мой медиа сервер",
130
+ "apiKeyPlaceholder": "Введите ваш API ключ",
131
+ "apiKeyHelp": "Найдена в панели управления вашего медиа-сервера под API Keys или Расширенные настройки.",
132
+ "connecting": "Подключение...",
133
+ "connectServer": "Подключить сервер",
134
+ "removeServer": "Удалить сервер",
135
+ "removeServerConfirm": "Вы уверены, что хотите удалить этот сервер? Все соответствующие данные сессии будут сохранены, но вы не сможете контролировать новые сеансы с этого сервера.",
136
+ "editServer": "Изменить сервер",
137
+ "editServerDesc": "Обновить имя сервера или URL-адрес подключения.",
138
+ "serverColor": "Цвет сервера",
139
+ "serverColorDesc": "Используется для визуального атрибута в многосерверном режиме",
140
+ "updating": "Обновление...",
141
+ "allFieldsRequired": "Все поля обязательны",
142
+ "addServerDialogDescPlex": "Выберите Plex сервер из связанного аккаунта.",
143
+ "addServerDialogDescOther": "Подключите сервер Jellyfin или Emby.",
144
+ "description": "Управление подключенными приложениями Plex, Jellyfin, и Emby серверами",
145
+ "discoveringServers": "Поиск доступных серверов Plex...",
146
+ "discoveringConnections": "Поиск соединений...",
147
+ "plexAccount": "Аккаунт Plex",
148
+ "serverUrlHelpJellyfin": "URL-адрес, на котором доступен ваш сервер Jellyfin",
149
+ "serverUrlHelpEmby": "URL-адрес, на котором доступен сервер Emby",
150
+ "apiKeyHelpJellyfin": "Найти это в панели управления Jellyfin → API Keys",
151
+ "apiKeyHelpEmby": "Найти это в Emby Server → API Keys",
152
+ "plexServerPlaceholder": "Мой Plex Сервер",
153
+ "plexServerUrlPlaceholder": "",
154
+ "updateHint": "Или нажмите кнопку Обновить ниже, чтобы сохранить только изменение имени.",
155
+ "added": "Добавлено {{date}}",
156
+ "realtimeActive": "",
157
+ "pollingMode": "",
158
+ "setupRealtime": "",
159
+ "realtimeError": "",
160
+ "checkingConnection": "",
161
+ "pluginVersion": "",
162
+ "pluginUpdateAvailable": "",
163
+ "realtimeDialog": {
164
+ "title": "",
165
+ "updateTitle": "",
166
+ "jellyfinDescription": "",
167
+ "embyDescription": "",
168
+ "jellyfinUpdateDescription": "",
169
+ "embyUpdateDescription": "",
170
+ "repositoryUrl": "",
171
+ "copyUrl": "",
172
+ "jellyfinRepoUrl": "",
173
+ "embyReleasesUrl": "",
174
+ "openReleases": "",
175
+ "autoDetectNote": "",
176
+ "close": "",
177
+ "issueBlocked": "",
178
+ "issueRestartRequired": "",
179
+ "issueMalfunctioned": ""
184
180
  },
185
- "watchedThresholdMovie": "Movie Watched Threshold",
186
- "watchedThresholdMovieDesc": "Percentage of a movie that must be watched before it's marked complete",
187
- "watchedThresholdMusic": "Track Watched Threshold",
188
- "watchedThresholdMusicDesc": "Percentage of a track that must be played before it's marked complete",
189
- "watchedThresholdSuffix": "%",
190
- "watchedThresholdTv": "TV Episode Watched Threshold",
191
- "watchedThresholdTvDesc": "Percentage of an episode that must be watched before it's marked complete"
192
- },
193
- "import": {
194
- "apiKeyHelp": "Найдено в настройках Tautulli → Web Интерфейс → API ключ.",
195
- "apiKeyPlaceholder": "Ваш ключ Tautulli API",
196
- "checkPlugin": "Check Plugin",
197
- "checkingPlugin": "Checking...",
198
- "connectToTautulli": "Подключиться к Tautulli",
199
- "connectedFound": "Подключено! Найдено {{users}} пользователей и записей истории {{records}}.",
200
- "duplicates": "{{count}} duplicates skipped",
201
- "enrichMetadata": "Дополнить метаданными медиа (рекомендуется)",
202
- "enrichMetadataHelp": "Извлекает дополнительные метаданные из вашего медиа-сервера для импортированных сессий.",
203
- "enriched": "Богатый",
204
- "errors": "Ошибки",
205
- "exportBackupHelp": "В Jellystat, перейдите в Настройки → Резервное копирование → Резервное копирование действий для экспорта данных.",
206
- "exportBackupHint": "Экспорт резервного копирования действий из Jellystat",
207
- "howItWorks": "Как работает импорт",
208
- "howItWorksDesc": "Tracearr импортирует все исторические данные из вашего источника. Это может занять некоторое время в зависимости от размера вашей библиотеки.",
209
- "importComplete": "Импорт завершен",
210
- "importFailed": "Не удалось импортировать",
211
- "importFullRange": "Import full history",
212
- "importFullRangeHelp": "By default only history older than Tracearr's earliest tracked session for this server is imported, so sessions Tracearr already recorded are never duplicated. Enable this to import the plugin's entire history regardless of overlap, if your Tracearr history has gaps. Exact duplicates are still skipped.",
213
- "importHistory": "История импорта",
214
- "importHistoryDesc": "Импортировать исторические наблюдения из внешних источников",
215
- "importInProgressGeneric": "Идёт импорт...",
216
- "importInProgressPercent": "Импорт в процессе ({{percent}}% завершено)...",
217
- "importOptions": "Параметры импорта",
218
- "importProgress": "Прогресс импорта",
219
- "imported": "Импортировано",
220
- "importing": "Импортируем...",
221
- "includeStreamDetails": "Включать подробные данные потока (кодеки, битрейт, разрешение)",
222
- "includeStreamDetailsHelp": "Импорт дополнительной информации о потоке. Может значительно увеличить время импорта.",
223
- "jellyfinEmby": "Jellyfin/Emby (Jellystat)",
224
- "jellystat": "Импорт из Jellystat",
225
- "noServers": "Серверы не подключены",
226
- "noServersHint": "Для импорта данных необходим по крайней мере один подключенный сервер.",
227
- "overlapSkipped": "{{count}} skipped as overlap",
228
- "overwriteFriendlyNames": "Перезаписать существующие дружественные имена с названиями Tautulli",
229
- "overwriteFriendlyNamesHelp": "Существующие идентификационные имена в Tracearr будут заменены на дружественные имена от Tautulli.",
230
- "page": "Страница",
231
- "playbackReporting": "Playback Reporting Plugin",
232
- "playbackReportingDesc": "Import history directly from the Playback Reporting plugin installed on your Jellyfin or Emby server. No file export needed.",
233
- "pleaseEnterDetails": "Пожалуйста, введите Tautulli URL и API ключ",
234
- "pleaseSelectJsonFile": "Пожалуйста, выберите файл JSON",
235
- "plex": "Plex (Таулли)",
236
- "pluginFound": "Plugin found: {{records}} records from {{oldestDate}} to {{newestDate}}",
237
- "pluginNotInstalled": "The Playback Reporting plugin is not installed on this server, or Tracearr cannot reach it. Install it from the server's plugin catalog to start recording history, or use the Jellystat import below.",
238
- "processed": "Обработано",
239
- "recordsMayBeSkipped": "Записи могут быть пропущены, если:",
240
- "selectJellyfinServer": "Выберите сервер Jellyfin или Emby",
241
- "selectPlexServer": "Выберите Plex сервер",
242
- "selectTargetServer": "Выберите целевой сервер",
243
- "serverTimezone": "Server Timezone",
244
- "serverTimezoneHelp": "Must match the timezone configured on your media server host, not your browser's timezone. Playback Reporting timestamps are stored in local server time.",
245
- "skipDuplicate": "Повторяющиеся сессии— сессия уже была импортирована ранее.",
246
- "skipDuplicatePlugin": "Duplicate record - already imported directly or arrived earlier via a Jellystat import of the same plugin data.",
247
- "skipInProgress": "Сессия In-progress — Пропущены активные или незавершенные сеансы без идентификатора ссылки.",
248
- "skipOverlap": "Overlapping record - the timestamp falls inside the period Tracearr already tracks for this server. Enable full-range import to include it.",
249
- "skipSyncHint": "Если пропущено много записей, убедитесь, что вы недавно синхронизировали ваш сервер в Настройках → Серверах.",
250
- "skipUserNotFoundJellyfin": "Пользователь не найден — Пользователь Jellyfin/Emby не существует в Tracearr. Синхронизируйте ваш сервер, чтобы добавить всех пользователей.",
251
- "skipUserNotFoundPlex": "Пользователь не найден — Plex пользователь не существует в Tracearr. Синхронизируйте ваш сервер, чтобы добавить всех пользователей.",
252
- "skipped": "Пропущено",
253
- "startImport": "Начать импорт",
254
- "startingImport": "Запуск импорта...",
255
- "step1": "1",
256
- "step2": "2",
257
- "targetServer": "Target Server",
258
- "tautulli": "Импорт из Tautulli",
259
- "tautulliUrl": "URL Tautulli",
260
- "tautulliUrlHelp": "URL вашего экземпляра Tautulli.",
261
- "tautulliUrlPlaceholder": "http://localhost:8181",
262
- "testing": "Тестирование...",
263
- "testingConnection": "Проверка соединения...",
264
- "title": "Импорт данных",
265
- "updateExistingRecords": "Обновить существующие записи с подробностями потока",
266
- "updateExistingRecordsHelp": "Раньше импортированные записи будут обновляться с данными качества потока.",
267
- "uploadJellystatBackup": "Загрузить резервную копию Jellystat",
268
- "uploadingBackup": "Загрузка файла резервной копии..."
269
- },
270
- "ipWarning": {
271
- "acknowledge": "Понятно",
272
- "message": "Кажется, все пользователи используют один и тот же IP адрес или локальный сетевой IP-адрес. Это может повлиять на логику, основанную на правилах для определения местоположения или IP-адресов."
273
- },
274
- "jobs": {
275
- "backfill": "Заполнение",
276
- "cleanup": "Очистить",
277
- "delayed": "задержка",
278
- "description": "Управление фоновыми задачами, которые сохраняют ваши данные точными и оптимизированными.",
279
- "errors": "ошибки",
280
- "jobHistory": "История заданий",
281
- "jobHistoryDesc": "Последнее выполнение задания по обслуживанию",
282
- "lastJobCompleted": "Последняя работа успешно завершена",
283
- "lastJobFailed": "Последняя работа не удалась",
284
- "mayTakeAWhile": "Это может занять некоторое время",
285
- "mayTakeAWhileDesc": "Завершение этой работы может занять несколько минут в зависимости от размера вашей библиотеки.",
286
- "normalization": "Нормализация",
287
- "processed": "обработано",
288
- "queued": "в очереди",
289
- "runConfirm": "Запустить {{name}}?",
290
- "runJob": "Запустить работу",
291
- "running": "запущен",
292
- "runningState": "Выполняется",
293
- "startJob": "Начать работу",
294
- "title": "Задания по обслуживанию",
295
- "unchanged": "без изменений",
296
- "updated": "обновлено",
297
- "waiting": "Ожидание"
181
+ "posterSource": {
182
+ "title": "",
183
+ "titleDesc": "",
184
+ "label": "",
185
+ "description": "",
186
+ "automatic": "",
187
+ "emptyHint": ""
188
+ },
189
+ "version": {
190
+ "installed": "",
191
+ "upToDate": "",
192
+ "updateAvailable": ""
193
+ }
298
194
  },
299
195
  "mobile": {
300
- "addDevice": "Добавить устройство",
196
+ "title": "Мобильное приложение",
197
+ "pairDevice": "Соединить устройство",
301
198
  "connectedDevices": "Подключенные устройства",
302
- "connectedDevicesDesc": "Устройства {{count}} в паре с вашим сервером",
303
- "copyToken": "Копировать токен",
304
- "deviceName": "Имя устройства",
305
- "deviceNamePlaceholder": "напр. iPhone 15",
306
- "devicesConnected": "{{current}} устройств {{max}} подключено",
307
- "disable": "Отключено",
308
- "disableMobileAccess": "Отключить мобильный доступ",
309
- "disableMobileAccessConfirm": "Это отключит все мобильные устройства и отменит все сеансы. Вы можете снова включить мобильный доступ позже.",
310
- "done": "Готово",
311
- "downloadOnAppStore": "Скачать на App Store",
312
- "enableMobileAccess": "Включить мобильный доступ",
313
- "enabling": "Включение...",
314
- "expiresIn": "Истекает через {{time}}",
315
- "externalUrlBanner": "Использование обратного прокси или удаленный доступ к нему? Установить",
316
- "externalUrlBannerLink": "Внешний URL",
317
- "externalUrlBannerSuffix": "чтобы мобильное приложение могло подключиться к серверу.",
318
- "externalUrlRequired": "Внешний URL-адрес должен быть настроен в Общие настройки для подключения мобильных устройств.",
319
- "failedToGenerateToken": "Не удалось сгенерировать токен",
320
199
  "generateToken": "Сгенерировать токен пары",
321
- "getOnGooglePlay": "Получить на Google Play",
200
+ "scanQrCode": "",
201
+ "tokenExpires": "Токен истекает в {{time}}",
202
+ "noDevices": "Устройства не подключены",
203
+ "revokeAll": "Отозвать все сессии",
322
204
  "getTheApp": "Скачать приложение",
323
205
  "getTheAppDesc": "Скачайте мобильное приложение Tracearr для iOS или Android",
206
+ "getOnGooglePlay": "Получить на Google Play",
207
+ "downloadOnAppStore": "Скачать на App Store",
208
+ "pairYourDevice": "Соедините ваше устройство",
209
+ "pairYourDeviceDesc": "Сканируйте QR-код с помощью приложения Tracearr для подключения к серверу.",
210
+ "externalUrlRequired": "Внешний URL-адрес должен быть настроен в Общие настройки для подключения мобильных устройств.",
324
211
  "mobileAccessDisabled": "Мобильный доступ отключен",
325
212
  "mobileAccessDisabledDesc": "Разрешить мобильный доступ к приложению Tracearr подключаться к серверу.",
326
- "noDevices": "Устройства не подключены",
327
- "oneTimePairToken": "Одноразовый токен пары",
328
- "pairDevice": "Соединить устройство",
213
+ "enableMobileAccess": "Включить мобильный доступ",
214
+ "enabling": "Включение...",
215
+ "devicesConnected": "{{current}} устройств {{max}} подключено",
216
+ "pendingTokens": "{{count}} в ожидании парных токенов",
217
+ "addDevice": "Добавить устройство",
218
+ "disableMobileAccess": "Отключить мобильный доступ",
219
+ "connectedDevicesDesc": "Устройства {{count}} в паре с вашим сервером",
220
+ "revokeAllSessions": "Отозвать все",
329
221
  "pairNewDevice": "Соединить новое устройство",
330
222
  "pairNewDeviceDesc": "Сканируйте QR-код с помощью мобильного приложения Tracearr или введите токен вручную.",
331
- "pairYourDevice": "Соедините ваше устройство",
332
- "pairYourDeviceDesc": "Сканируйте QR-код с помощью приложения Tracearr для подключения к серверу.",
333
- "pendingTokens": "{{count}} в ожидании парных токенов",
334
- "removeDevice": "Удалить устройство",
335
- "removeDeviceConfirm": "Вы уверены, что хотите удалить {{deviceName}}? Это устройство будет необходимо снова подключиться, чтобы восстановить.",
223
+ "expiresIn": "Истекает через {{time}}",
224
+ "oneTimePairToken": "Одноразовый токен пары",
225
+ "copyToken": "Копировать токен",
226
+ "tokenExpiryNote": "Этот токен истекает через 5 минут и может быть использован только один раз.",
227
+ "done": "Готово",
228
+ "disableMobileAccessConfirm": "Это отключит все мобильные устройства и отменит все сеансы. Вы можете снова включить мобильный доступ позже.",
229
+ "disable": "Отключено",
230
+ "revokeAllConfirm": "Это отключит все мобильные устройства. Для повторного подключения им потребуется подключить снова.",
336
231
  "renameDevice": "Переименовать устройство",
337
232
  "renameDeviceDesc": "Введите имя для идентификации этого устройства в списке.",
338
- "revokeAll": "Отозвать все сессии",
339
- "revokeAllConfirm": "Это отключит все мобильные устройства. Для повторного подключения им потребуется подключить снова.",
340
- "revokeAllSessions": "Отозвать все",
341
- "scanQrCode": "Scan QR Code",
342
- "title": "Мобильное приложение",
343
- "tokenExpires": "Токен истекает в {{time}}",
344
- "tokenExpiryNote": "Этот токен истекает через 5 минут и может быть использован только один раз."
345
- },
346
- "plex": {
347
- "chooseServer": "Выберите Plex Media Server для мониторинга",
348
- "selectServer": "Выбрать сервер",
349
- "signInWithPlex": "Войти через Plex",
350
- "signUpWithPlex": "Зарегистрироваться через Plex"
351
- },
352
- "serverHealth": {
353
- "multipleUnreachable": "Сервер {{count}} недоступен: {{serverNames}}",
354
- "unreachable": "{{serverName}} недоступен"
355
- },
356
- "servers": {
357
- "addServer": "Добавить сервер",
358
- "addServerDialogDescOther": "Подключите сервер Jellyfin или Emby.",
359
- "addServerDialogDescPlex": "Выберите Plex сервер из связанного аккаунта.",
360
- "added": "Добавлено {{date}}",
361
- "allFieldsRequired": "Все поля обязательны",
362
- "allServersConnected": "Все серверы подключены",
363
- "allServersConnectedDesc": "Все серверы этой учетной записи уже подключены.",
364
- "apiKeyHelp": "Найдена в панели управления вашего медиа-сервера под API Keys или Расширенные настройки.",
365
- "apiKeyHelpEmby": "Найти это в Emby Server → API Keys",
366
- "apiKeyHelpJellyfin": "Найти это в панели управления Jellyfin → API Keys",
367
- "apiKeyPlaceholder": "Введите ваш API ключ",
368
- "checkingConnection": "Checking connection…",
369
- "chooseAccount": "Выберите аккаунт...",
370
- "connectServer": "Подключить сервер",
371
- "connecting": "Подключение...",
372
- "connectionFailed": "Не удалось подключиться",
373
- "connectionSuccess": "Успешное подключение",
374
- "description": "Управление подключенными приложениями Plex, Jellyfin, и Emby серверами",
375
- "discoveringConnections": "Поиск соединений...",
376
- "discoveringServers": "Поиск доступных серверов Plex...",
377
- "editServer": "Изменить сервер",
378
- "editServerDesc": "Обновить имя сервера или URL-адрес подключения.",
379
- "loadingAccounts": "Загрузка связанных аккаунтов...",
380
- "noPlexAccountsLinked": "Нет привязанных аккаунтов Plex",
381
- "noPlexAccountsLinkedHint": "Привяжите аккаунт Plex выше, а затем вернитесь, чтобы добавить сервер.",
382
- "noServersConnected": "Нет подключенных серверов",
383
- "noServersConnectedHint": "Нажмите \"Add Server\", чтобы подключить сервер Jellyfin или Emby",
384
- "plexAccount": "Аккаунт Plex",
385
- "plexServerPlaceholder": "Мой Plex Сервер",
386
- "plexServerUrlPlaceholder": "http://192.168.1.100:32400",
387
- "pluginUpdateAvailable": "Plugin update available",
388
- "pluginVersion": "plugin v{{version}}",
389
- "pollingMode": "Polling",
390
- "posterSource": {
391
- "automatic": "Automatic (most recent)",
392
- "description": "When a title is on more than one server, use this server's poster. If it doesn't have one, we'll fall back to the most recently added copy.",
393
- "emptyHint": "Add a server to choose a preferred poster source.",
394
- "label": "Preferred Poster Source",
395
- "title": "Poster Preferences",
396
- "titleDesc": "Choose which server's poster is shown when a title exists on more than one server"
397
- },
398
- "realtimeActive": "Real-time updates active",
399
- "realtimeDialog": {
400
- "autoDetectNote": "Restart Jellyfin or Emby after installing the plugin; the restart is required. Tracearr itself needs no restart and picks the plugin up automatically.",
401
- "close": "Close",
402
- "copyUrl": "Copy URL",
403
- "embyDescription": "Install the Tracearr SSE plugin to get instant session updates without waiting for the next poll.",
404
- "embyReleasesUrl": "https://github.com/Tracearr/Media-Server-SSE/releases",
405
- "embyUpdateDescription": "A newer plugin release is available. Download the latest release zip, replace the plugin DLL in your Emby plugins folder, and restart Emby.",
406
- "issueBlocked": "The server reports the plugin as installed and active, but Tracearr gets a 404 from its endpoint. A reverse proxy blocking the path is the usual cause.",
407
- "issueMalfunctioned": "The server reports the plugin failed to load. Updating the plugin or the media server usually clears this.",
408
- "issueRestartRequired": "The plugin is installed, but the media server needs a restart before it activates.",
409
- "jellyfinDescription": "Install the Tracearr SSE plugin to get instant session updates without waiting for the next poll.",
410
- "jellyfinRepoUrl": "https://raw.githubusercontent.com/Tracearr/Media-Server-SSE/main/manifest.json",
411
- "jellyfinUpdateDescription": "A newer plugin release is available. Open your Jellyfin dashboard, go to Plugins, Catalog, and update Tracearr SSE, then restart Jellyfin.",
412
- "openReleases": "Open releases page",
413
- "repositoryUrl": "Repository URL",
414
- "title": "Enable real-time updates",
415
- "updateTitle": "Update the Tracearr SSE plugin"
416
- },
417
- "realtimeError": "Real-time error",
418
- "removeServer": "Удалить сервер",
419
- "removeServerConfirm": "Вы уверены, что хотите удалить этот сервер? Все соответствующие данные сессии будут сохранены, но вы не сможете контролировать новые сеансы с этого сервера.",
420
- "selectAccountHelp": "Выберите, с какой учетной записи Plex обнаружить серверы.",
421
- "selectPlexAccount": "Выберите аккаунт Plex",
422
- "serverColor": "Цвет сервера",
423
- "serverColorDesc": "Используется для визуального атрибута в многосерверном режиме",
424
- "serverName": "Имя сервера",
425
- "serverNamePlaceholder": "Мой медиа сервер",
426
- "serverType": "Тип сервера",
427
- "serverUrl": "URL сервера",
428
- "serverUrlHelp": "Прямой URL-адрес вашего Jellyfin или Emby сервера. Используйте IP:порт для лучшей надежности.",
429
- "serverUrlHelpEmby": "URL-адрес, на котором доступен сервер Emby",
430
- "serverUrlHelpJellyfin": "URL-адрес, на котором доступен ваш сервер Jellyfin",
431
- "serverUrlPlaceholder": "http://192.168.1.100:8096",
432
- "setupRealtime": "Set up real-time updates",
433
- "syncInterval": "Интервал синхронизации",
434
- "testConnection": "Проверить соединение",
435
- "title": "Подключенные серверы",
436
- "updateHint": "Или нажмите кнопку Обновить ниже, чтобы сохранить только изменение имени.",
437
- "updating": "Обновление...",
438
- "version": {
439
- "installed": "Version {{version}}",
440
- "upToDate": "up to date",
441
- "updateAvailable": "update {{version}} available"
442
- }
443
- },
444
- "tabs": {
445
- "accessControl": "Контроль доступа",
446
- "advanced": "Расширенные",
447
- "backup": "Резервное копирование",
448
- "general": "Общие положения",
449
- "import": "Импорт",
450
- "jobs": "Задания",
451
- "mobile": "Мобильное приложение",
452
- "notifications": "Уведомления",
453
- "servers": "Серверы",
454
- "tailscale": "Хвостовая чешуя"
233
+ "deviceName": "Имя устройства",
234
+ "deviceNamePlaceholder": "напр. iPhone 15",
235
+ "removeDevice": "Удалить устройство",
236
+ "failedToGenerateToken": "Не удалось сгенерировать токен",
237
+ "removeDeviceConfirm": "Вы уверены, что хотите удалить {{deviceName}}? Это устройство будет необходимо снова подключиться, чтобы восстановить.",
238
+ "externalUrlBanner": "Использование обратного прокси или удаленный доступ к нему? Установить",
239
+ "externalUrlBannerLink": "Внешний URL",
240
+ "externalUrlBannerSuffix": "чтобы мобильное приложение могло подключиться к серверу."
455
241
  },
456
242
  "tailscale": {
457
- "authorize": "Авторизоваться в хвостовой шкале",
458
- "awaitingAuth": "Ожидание подтверждения...",
459
- "connected": "Tailscale подключен. Ваш экземпляр Tracearr доступен в портсете.",
243
+ "title": "VPN-чешуя",
460
244
  "description": "Безопасный доступ к Tracearr в сети Tailscale без перенаправления портов.",
461
- "disable": "Отключить хвостовую шкалу",
462
- "disableConfirmDescription": "Это отключит Tracearr от вашего портсета. Вы можете снова включить без повторной авторизации.",
463
- "disableConfirmTitle": "Отключить Tailscale?",
245
+ "notAvailable": "Бинарный файл Tailscale не найден. Эта функция доступна только при запуске официального образа Docker.",
464
246
  "disabledDescription": "Включите Tailscale для того, чтобы Tracearr использовал ваш частный адаптер. Пересылка портов или обратный прокси не требуется.",
465
- "dnsName": "DNS Имя",
247
+ "hostnameLabel": "Имя устройства",
248
+ "hostnameHint": "Необязательное настраиваемое имя для этого устройства только на ваш хвост. Только буквы, цифры и дефисы.",
466
249
  "enable": "Включить масштаб хвоста",
467
- "exitNodeNone": "Нет",
468
- "exitNodeOffline": "(оффлайн)",
250
+ "disable": "Отключить хвостовую шкалу",
251
+ "starting": "Запуск тайл...",
252
+ "stopping": "Остановка хвостовой шкалы...",
253
+ "awaitingAuth": "Ожидание подтверждения...",
254
+ "authorize": "Авторизоваться в хвостовой шкале",
255
+ "connected": "Tailscale подключен. Ваш экземпляр Tracearr доступен в портсете.",
256
+ "hostname": "",
257
+ "dnsName": "DNS Имя",
258
+ "tailnetUrl": "",
259
+ "showLogs": "Показать логи",
469
260
  "hideLogs": "Скрыть журналы",
470
- "hostname": "Hostname",
471
- "hostnameHint": "Необязательное настраиваемое имя для этого устройства только на ваш хвост. Только буквы, цифры и дефисы.",
472
- "hostnameLabel": "Имя устройства",
473
261
  "noLogs": "Нет доступных журналов.",
474
- "notAvailable": "Бинарный файл Tailscale не найден. Эта функция доступна только при запуске официального образа Docker.",
262
+ "exitNodeNone": "Нет",
263
+ "exitNodeOffline": "(оффлайн)",
264
+ "unknownError": "Произошла неизвестная ошибка.",
265
+ "disableConfirmTitle": "Отключить Tailscale?",
266
+ "disableConfirmDescription": "Это отключит Tracearr от вашего портсета. Вы можете снова включить без повторной авторизации.",
267
+ "resetConfirmTitle": "",
475
268
  "resetConfirmDescription": "Это отключит Tracearr от вашей сети и удалит идентификацию устройства. Вам нужно будет повторно авторизоваться, если вы включите его снова.",
476
- "resetConfirmTitle": "Reset Tailscale?",
477
- "showLogs": "Показать логи",
478
- "starting": "Запуск тайл...",
479
- "stopping": "Остановка хвостовой шкалы...",
480
- "tailnetUrl": "URL",
481
- "title": "VPN-чешуя",
482
269
  "toast": {
483
- "disableFailed": "Не удалось отключить Tailscale",
484
270
  "disabled": "Шкала хвостовых тканей отключена.",
485
271
  "enableFailed": "Не удалось включить Tailscale",
486
- "exitNodeFailed": "Не удалось установить узел",
487
- "exitNodeSet": "Узел выхода обновлен.",
272
+ "disableFailed": "Не удалось отключить Tailscale",
488
273
  "reset": "Хвостовая чешуя была сброшена.",
489
- "resetFailed": "Не удалось сбросить Tailscale"
490
- },
491
- "unknownError": "Произошла неизвестная ошибка."
274
+ "resetFailed": "Не удалось сбросить Tailscale",
275
+ "exitNodeSet": "Узел выхода обновлен.",
276
+ "exitNodeFailed": "Не удалось установить узел"
277
+ }
278
+ },
279
+ "jobs": {
280
+ "title": "Задания по обслуживанию",
281
+ "description": "Управление фоновыми задачами, которые сохраняют ваши данные точными и оптимизированными.",
282
+ "normalization": "Нормализация",
283
+ "backfill": "Заполнение",
284
+ "cleanup": "Очистить",
285
+ "running": "запущен",
286
+ "queued": "в очереди",
287
+ "delayed": "задержка",
288
+ "waiting": "Ожидание",
289
+ "runningState": "Выполняется",
290
+ "runJob": "Запустить работу",
291
+ "processed": "обработано",
292
+ "updated": "обновлено",
293
+ "unchanged": "без изменений",
294
+ "errors": "ошибки",
295
+ "lastJobCompleted": "Последняя работа успешно завершена",
296
+ "lastJobFailed": "Последняя работа не удалась",
297
+ "jobHistory": "История заданий",
298
+ "jobHistoryDesc": "Последнее выполнение задания по обслуживанию",
299
+ "runConfirm": "Запустить {{name}}?",
300
+ "mayTakeAWhile": "Это может занять некоторое время",
301
+ "mayTakeAWhileDesc": "Завершение этой работы может занять несколько минут в зависимости от размера вашей библиотеки.",
302
+ "startJob": "Начать работу"
303
+ },
304
+ "advanced": {
305
+ "title": "Расширенные настройки",
306
+ "externalUrl": "Внешний URL",
307
+ "trustProxy": "Доверять заголовкам прокси",
308
+ "reverseProxy": "Обратный прокси",
309
+ "connectionScenarios": "Сценарии подключения"
310
+ },
311
+ "accessControl": {
312
+ "title": "Контроль доступа",
313
+ "description": "Настройте кто может получить доступ к Tracearr",
314
+ "allowGuestAccess": "Разрешить гостевой доступ",
315
+ "allowGuestAccessDesc": "Когда отключено, только владелец сервера может войти в Tracearr",
316
+ "singleOwnerNote": "Примечание: Если гостевой доступ отключен, авторизоваться могут только владелец сервера. Все другие пользователи увидят сообщение \"Отказано в доступе\"."
317
+ },
318
+ "import": {
319
+ "title": "Импорт данных",
320
+ "jellystat": "Импорт из Jellystat",
321
+ "tautulli": "Импорт из Tautulli",
322
+ "importProgress": "Прогресс импорта",
323
+ "importComplete": "Импорт завершен",
324
+ "importFailed": "Не удалось импортировать",
325
+ "processed": "Обработано",
326
+ "page": "Страница",
327
+ "imported": "Импортировано",
328
+ "skipped": "Пропущено",
329
+ "enriched": "Богатый",
330
+ "errors": "Ошибки",
331
+ "noServers": "Серверы не подключены",
332
+ "noServersHint": "Для импорта данных необходим по крайней мере один подключенный сервер.",
333
+ "tautulliUrl": "URL Tautulli",
334
+ "tautulliUrlPlaceholder": "",
335
+ "tautulliUrlHelp": "URL вашего экземпляра Tautulli.",
336
+ "apiKeyHelp": "Найдено в настройках Tautulli → Web Интерфейс → API ключ.",
337
+ "testing": "Тестирование...",
338
+ "connectToTautulli": "Подключиться к Tautulli",
339
+ "importHistory": "История импорта",
340
+ "targetServer": "",
341
+ "selectPlexServer": "Выберите Plex сервер",
342
+ "overwriteFriendlyNames": "Перезаписать существующие дружественные имена с названиями Tautulli",
343
+ "overwriteFriendlyNamesHelp": "Существующие идентификационные имена в Tracearr будут заменены на дружественные имена от Tautulli.",
344
+ "includeStreamDetails": "Включать подробные данные потока (кодеки, битрейт, разрешение)",
345
+ "includeStreamDetailsHelp": "Импорт дополнительной информации о потоке. Может значительно увеличить время импорта.",
346
+ "importing": "Импортируем...",
347
+ "startImport": "Начать импорт",
348
+ "howItWorks": "Как работает импорт",
349
+ "howItWorksDesc": "Tracearr импортирует все исторические данные из вашего источника. Это может занять некоторое время в зависимости от размера вашей библиотеки.",
350
+ "recordsMayBeSkipped": "Записи могут быть пропущены, если:",
351
+ "selectTargetServer": "Выберите целевой сервер",
352
+ "selectJellyfinServer": "Выберите сервер Jellyfin или Emby",
353
+ "uploadJellystatBackup": "Загрузить резервную копию Jellystat",
354
+ "exportBackupHint": "Экспорт резервного копирования действий из Jellystat",
355
+ "exportBackupHelp": "В Jellystat, перейдите в Настройки → Резервное копирование → Резервное копирование действий для экспорта данных.",
356
+ "importOptions": "Параметры импорта",
357
+ "enrichMetadata": "Дополнить метаданными медиа (рекомендуется)",
358
+ "enrichMetadataHelp": "Извлекает дополнительные метаданные из вашего медиа-сервера для импортированных сессий.",
359
+ "updateExistingRecords": "Обновить существующие записи с подробностями потока",
360
+ "updateExistingRecordsHelp": "Раньше импортированные записи будут обновляться с данными качества потока.",
361
+ "pleaseEnterDetails": "Пожалуйста, введите Tautulli URL и API ключ",
362
+ "testingConnection": "Проверка соединения...",
363
+ "pleaseSelectJsonFile": "Пожалуйста, выберите файл JSON",
364
+ "uploadingBackup": "Загрузка файла резервной копии...",
365
+ "importHistoryDesc": "Импортировать исторические наблюдения из внешних источников",
366
+ "plex": "Plex (Таулли)",
367
+ "jellyfinEmby": "",
368
+ "step1": "",
369
+ "step2": "",
370
+ "apiKeyPlaceholder": "Ваш ключ Tautulli API",
371
+ "skipUserNotFoundPlex": "Пользователь не найден — Plex пользователь не существует в Tracearr. Синхронизируйте ваш сервер, чтобы добавить всех пользователей.",
372
+ "skipDuplicate": "Повторяющиеся сессии— сессия уже была импортирована ранее.",
373
+ "skipInProgress": "Сессия In-progress — Пропущены активные или незавершенные сеансы без идентификатора ссылки.",
374
+ "skipUserNotFoundJellyfin": "Пользователь не найден — Пользователь Jellyfin/Emby не существует в Tracearr. Синхронизируйте ваш сервер, чтобы добавить всех пользователей.",
375
+ "skipSyncHint": "Если пропущено много записей, убедитесь, что вы недавно синхронизировали ваш сервер в Настройках → Серверах.",
376
+ "importInProgressPercent": "Импорт в процессе ({{percent}}% завершено)...",
377
+ "importInProgressGeneric": "Идёт импорт...",
378
+ "startingImport": "Запуск импорта...",
379
+ "connectedFound": "Подключено! Найдено {{users}} пользователей и записей истории {{records}}.",
380
+ "playbackReporting": "",
381
+ "playbackReportingDesc": "",
382
+ "checkPlugin": "",
383
+ "checkingPlugin": "",
384
+ "pluginFound": "",
385
+ "pluginNotInstalled": "",
386
+ "serverTimezone": "",
387
+ "serverTimezoneHelp": "",
388
+ "importFullRange": "",
389
+ "importFullRangeHelp": "",
390
+ "overlapSkipped": "",
391
+ "duplicates": "",
392
+ "skipOverlap": "",
393
+ "skipDuplicatePlugin": ""
394
+ },
395
+ "plex": {
396
+ "signInWithPlex": "Войти через Plex",
397
+ "signUpWithPlex": "Зарегистрироваться через Plex",
398
+ "selectServer": "Выбрать сервер",
399
+ "chooseServer": "Выберите Plex Media Server для мониторинга"
400
+ },
401
+ "account": {
402
+ "createAccount": "Создать Аккаунт",
403
+ "email": "Почта",
404
+ "password": "Пароль",
405
+ "displayName": "Показать имя",
406
+ "createYourAccount": "Создайте свой аккаунт, чтобы начать",
407
+ "signInToAccount": "Войдите в свою учетную запись",
408
+ "useLocalAccount": "Использовать локальную учетную запись"
492
409
  },
493
- "title": "Настройки",
494
410
  "update": {
495
- "betaUpdate": "Бета обновление",
496
- "newVersion": "Новая версия",
497
- "pullInstructions": "После загрузки перезагрузите контейнер, чтобы применить обновление.",
498
- "releaseNotes": "Примечания к выпуску",
499
- "stableRelease": "Стабильный выпуск",
500
411
  "title": "Доступно обновление",
412
+ "releaseNotes": "Примечания к выпуску",
501
413
  "updateCommand": "Обновить команду",
414
+ "pullInstructions": "После загрузки перезагрузите контейнер, чтобы применить обновление.",
415
+ "stableRelease": "Стабильный выпуск",
416
+ "betaUpdate": "Бета обновление",
417
+ "newVersion": "Новая версия",
502
418
  "versionAvailable": "Доступно {{version}}"
419
+ },
420
+ "serverHealth": {
421
+ "unreachable": "{{serverName}} недоступен",
422
+ "multipleUnreachable": "Сервер {{count}} недоступен: {{serverNames}}"
423
+ },
424
+ "ipWarning": {
425
+ "message": "Кажется, все пользователи используют один и тот же IP адрес или локальный сетевой IP-адрес. Это может повлиять на логику, основанную на правилах для определения местоположения или IP-адресов.",
426
+ "acknowledge": "Понятно"
427
+ },
428
+ "backup": {
429
+ "title": "Резервное копирование",
430
+ "backToBackups": "Вернуться к резервным копиям",
431
+ "description": "Резервное копирование и восстановление данных Tracearr",
432
+ "createBackup": "Создать резервную копию",
433
+ "creating": "Создание резервной копии...",
434
+ "uploadBackup": "Загрузить резервную копию",
435
+ "uploading": "Загрузка...",
436
+ "databaseSize": "Текущий размер базы данных: {{size}}",
437
+ "freeSpace": "Каталог резервных копий свободного места: {{size}}",
438
+ "lowDiskSpace": "Низкое место на диске — резервные копии и восстановления требуют по крайней мере в два раза больше размера базы данных в свободное пространство.",
439
+ "backupHistory": "История резервных копий",
440
+ "noBackups": "Резервных копий пока нет. Создайте первую резервную копию выше.",
441
+ "filename": "Имя файла",
442
+ "size": "Размер",
443
+ "date": "Дата",
444
+ "type": "Тип",
445
+ "version": "Версии",
446
+ "actions": "Действия",
447
+ "typeManual": "Ручной",
448
+ "typeScheduled": "Запланированный",
449
+ "typeUploaded": "Загружено",
450
+ "restoreAction": "Восстановить",
451
+ "deleteConfirmTitle": "Удалить резервную копию",
452
+ "deleteConfirmDescription": "Вы уверены, что хотите удалить эту резервную копию? Это действие нельзя отменить.",
453
+ "schedule": "Запланированные резервные копии",
454
+ "scheduleType": "График",
455
+ "scheduleDisabled": "Отключено",
456
+ "scheduleDaily": "Ежедневно",
457
+ "scheduleWeekly": "Еженедельно",
458
+ "scheduleMonthly": "Ежемесячно",
459
+ "scheduleTime": "Время ({{timezone}})",
460
+ "scheduleDayOfWeek": "День недели",
461
+ "scheduleDayOfMonth": "День месяца",
462
+ "scheduleDayOfMonthHint": "В месяцах с меньшим количеством дней, резервная копия работает в последний день.",
463
+ "retentionCount": "Сохранить последний",
464
+ "retentionSuffix": "запланированные резервные копии",
465
+ "daySun": "Воскресенье",
466
+ "dayMon": "Понедельник",
467
+ "dayTue": "Вторник",
468
+ "dayWed": "Среда",
469
+ "dayThu": "Четверг",
470
+ "dayFri": "Пятница",
471
+ "daySat": "Суббота",
472
+ "restore": {
473
+ "title": "Восстановить резервную копию",
474
+ "selectedBackup": "Выбранная резервная копия",
475
+ "databaseSize": "Размер базы данных",
476
+ "sessions": "Сессии",
477
+ "users": "Пользователи",
478
+ "servers": "Серверы",
479
+ "automations": "",
480
+ "libraryItems": "Элементы библиотеки",
481
+ "tables": "Таблицы",
482
+ "warning": "Восстановление заменит все существующие данные. Вам нужно будет заново войти в систему после завершения восстановления.",
483
+ "confirmLabel": "Я понимаю, что это заменит все данные",
484
+ "confirm": "Начать восстановление",
485
+ "complete": "Восстановление успешно завершено. Страница будет обновлена в ближайшее время.",
486
+ "failed": "Не удалось восстановить",
487
+ "cannotRestore": "Для восстановления требуются права суперпользователя PostgreSQL. Пожалуйста, убедитесь, что пользователь базы данных имеет права суперпользователя и повторите попытку.",
488
+ "pgVersionMismatch": "Резервная копия была создана на PostgreSQL {{backupVersion}} , но этот сервер запускает PostgreSQL {{serverVersion}}. Восстановление дампа с новой версии PostgreSQL не поддерживается.",
489
+ "tsVersionMismatch": "Резервная копия была создана с TimescaleDB {{backupVersion}} , но этот сервер поддерживает только до TimescaleDB {{serverVersion}}."
490
+ },
491
+ "toast": {
492
+ "backupCreated": "Резервная копия успешно создана",
493
+ "backupCreateFailed": "Не удалось создать резервную копию",
494
+ "backupUploaded": "Резервная копия успешно загружена",
495
+ "backupUploadFailed": "Не удалось загрузить резервную копию",
496
+ "backupDeleted": "Резервная копия удалена",
497
+ "backupDeleteFailed": "Не удалось удалить резервную копию",
498
+ "restoreStarted": "Восстановление начато",
499
+ "restoreStartFailed": "Не удалось начать восстановление",
500
+ "scheduleSaved": "Расписание резервного копирования сохранено",
501
+ "scheduleError": "Не удалось сохранить резервную копию расписания"
502
+ }
503
503
  }
504
504
  }