@tracearr/translations 0.1.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 (572) hide show
  1. package/LICENSE +661 -0
  2. package/README.md +116 -0
  3. package/dist/config.d.ts +4510 -0
  4. package/dist/config.d.ts.map +1 -0
  5. package/dist/config.js +164 -0
  6. package/dist/config.js.map +1 -0
  7. package/dist/config.mobile.d.ts +4511 -0
  8. package/dist/config.mobile.d.ts.map +1 -0
  9. package/dist/config.mobile.js +587 -0
  10. package/dist/config.mobile.js.map +1 -0
  11. package/dist/formatting.d.ts +120 -0
  12. package/dist/formatting.d.ts.map +1 -0
  13. package/dist/formatting.js +265 -0
  14. package/dist/formatting.js.map +1 -0
  15. package/dist/index.d.ts +46 -0
  16. package/dist/index.d.ts.map +1 -0
  17. package/dist/index.js +49 -0
  18. package/dist/index.js.map +1 -0
  19. package/dist/language.d.ts +101 -0
  20. package/dist/language.d.ts.map +1 -0
  21. package/dist/language.js +241 -0
  22. package/dist/language.js.map +1 -0
  23. package/dist/locales/af/common.json +276 -0
  24. package/dist/locales/af/mobile.json +60 -0
  25. package/dist/locales/af/nav.json +22 -0
  26. package/dist/locales/af/notifications.json +262 -0
  27. package/dist/locales/af/pages.json +324 -0
  28. package/dist/locales/af/settings.json +243 -0
  29. package/dist/locales/af-ZA/common.json +308 -0
  30. package/dist/locales/af-ZA/mobile.json +178 -0
  31. package/dist/locales/af-ZA/nav.json +28 -0
  32. package/dist/locales/af-ZA/notifications.json +279 -0
  33. package/dist/locales/af-ZA/pages.json +953 -0
  34. package/dist/locales/af-ZA/settings.json +487 -0
  35. package/dist/locales/ar/common.json +276 -0
  36. package/dist/locales/ar/mobile.json +60 -0
  37. package/dist/locales/ar/nav.json +22 -0
  38. package/dist/locales/ar/notifications.json +262 -0
  39. package/dist/locales/ar/pages.json +324 -0
  40. package/dist/locales/ar/settings.json +243 -0
  41. package/dist/locales/ar-SA/common.json +308 -0
  42. package/dist/locales/ar-SA/mobile.json +178 -0
  43. package/dist/locales/ar-SA/nav.json +28 -0
  44. package/dist/locales/ar-SA/notifications.json +279 -0
  45. package/dist/locales/ar-SA/pages.json +953 -0
  46. package/dist/locales/ar-SA/settings.json +487 -0
  47. package/dist/locales/ca/common.json +276 -0
  48. package/dist/locales/ca/mobile.json +60 -0
  49. package/dist/locales/ca/nav.json +22 -0
  50. package/dist/locales/ca/notifications.json +262 -0
  51. package/dist/locales/ca/pages.json +324 -0
  52. package/dist/locales/ca/settings.json +243 -0
  53. package/dist/locales/ca-ES/common.json +308 -0
  54. package/dist/locales/ca-ES/mobile.json +178 -0
  55. package/dist/locales/ca-ES/nav.json +28 -0
  56. package/dist/locales/ca-ES/notifications.json +279 -0
  57. package/dist/locales/ca-ES/pages.json +953 -0
  58. package/dist/locales/ca-ES/settings.json +487 -0
  59. package/dist/locales/cs/common.json +276 -0
  60. package/dist/locales/cs/mobile.json +60 -0
  61. package/dist/locales/cs/nav.json +22 -0
  62. package/dist/locales/cs/notifications.json +262 -0
  63. package/dist/locales/cs/pages.json +324 -0
  64. package/dist/locales/cs/settings.json +243 -0
  65. package/dist/locales/cs-CZ/common.json +308 -0
  66. package/dist/locales/cs-CZ/mobile.json +178 -0
  67. package/dist/locales/cs-CZ/nav.json +28 -0
  68. package/dist/locales/cs-CZ/notifications.json +279 -0
  69. package/dist/locales/cs-CZ/pages.json +953 -0
  70. package/dist/locales/cs-CZ/settings.json +487 -0
  71. package/dist/locales/da/common.json +276 -0
  72. package/dist/locales/da/mobile.json +60 -0
  73. package/dist/locales/da/nav.json +22 -0
  74. package/dist/locales/da/notifications.json +262 -0
  75. package/dist/locales/da/pages.json +324 -0
  76. package/dist/locales/da/settings.json +243 -0
  77. package/dist/locales/da-DK/common.json +308 -0
  78. package/dist/locales/da-DK/mobile.json +178 -0
  79. package/dist/locales/da-DK/nav.json +28 -0
  80. package/dist/locales/da-DK/notifications.json +279 -0
  81. package/dist/locales/da-DK/pages.json +953 -0
  82. package/dist/locales/da-DK/settings.json +487 -0
  83. package/dist/locales/de/common.json +276 -0
  84. package/dist/locales/de/mobile.json +60 -0
  85. package/dist/locales/de/nav.json +22 -0
  86. package/dist/locales/de/notifications.json +262 -0
  87. package/dist/locales/de/pages.json +324 -0
  88. package/dist/locales/de/settings.json +243 -0
  89. package/dist/locales/de-DE/common.json +308 -0
  90. package/dist/locales/de-DE/mobile.json +178 -0
  91. package/dist/locales/de-DE/nav.json +28 -0
  92. package/dist/locales/de-DE/notifications.json +279 -0
  93. package/dist/locales/de-DE/pages.json +953 -0
  94. package/dist/locales/de-DE/settings.json +487 -0
  95. package/dist/locales/el/common.json +276 -0
  96. package/dist/locales/el/mobile.json +60 -0
  97. package/dist/locales/el/nav.json +22 -0
  98. package/dist/locales/el/notifications.json +262 -0
  99. package/dist/locales/el/pages.json +324 -0
  100. package/dist/locales/el/settings.json +243 -0
  101. package/dist/locales/el-GR/common.json +308 -0
  102. package/dist/locales/el-GR/mobile.json +178 -0
  103. package/dist/locales/el-GR/nav.json +28 -0
  104. package/dist/locales/el-GR/notifications.json +279 -0
  105. package/dist/locales/el-GR/pages.json +953 -0
  106. package/dist/locales/el-GR/settings.json +487 -0
  107. package/dist/locales/en/common.json +308 -0
  108. package/dist/locales/en/mobile.json +178 -0
  109. package/dist/locales/en/nav.json +28 -0
  110. package/dist/locales/en/notifications.json +279 -0
  111. package/dist/locales/en/pages.json +953 -0
  112. package/dist/locales/en/settings.json +487 -0
  113. package/dist/locales/en-US/common.json +308 -0
  114. package/dist/locales/en-US/mobile.json +178 -0
  115. package/dist/locales/en-US/nav.json +28 -0
  116. package/dist/locales/en-US/notifications.json +279 -0
  117. package/dist/locales/en-US/pages.json +953 -0
  118. package/dist/locales/en-US/settings.json +487 -0
  119. package/dist/locales/es/common.json +276 -0
  120. package/dist/locales/es/mobile.json +60 -0
  121. package/dist/locales/es/nav.json +22 -0
  122. package/dist/locales/es/notifications.json +262 -0
  123. package/dist/locales/es/pages.json +324 -0
  124. package/dist/locales/es/settings.json +243 -0
  125. package/dist/locales/es-ES/common.json +308 -0
  126. package/dist/locales/es-ES/mobile.json +178 -0
  127. package/dist/locales/es-ES/nav.json +28 -0
  128. package/dist/locales/es-ES/notifications.json +279 -0
  129. package/dist/locales/es-ES/pages.json +953 -0
  130. package/dist/locales/es-ES/settings.json +487 -0
  131. package/dist/locales/fi/common.json +276 -0
  132. package/dist/locales/fi/mobile.json +60 -0
  133. package/dist/locales/fi/nav.json +22 -0
  134. package/dist/locales/fi/notifications.json +262 -0
  135. package/dist/locales/fi/pages.json +324 -0
  136. package/dist/locales/fi/settings.json +243 -0
  137. package/dist/locales/fi-FI/common.json +308 -0
  138. package/dist/locales/fi-FI/mobile.json +178 -0
  139. package/dist/locales/fi-FI/nav.json +28 -0
  140. package/dist/locales/fi-FI/notifications.json +279 -0
  141. package/dist/locales/fi-FI/pages.json +953 -0
  142. package/dist/locales/fi-FI/settings.json +487 -0
  143. package/dist/locales/fr/common.json +276 -0
  144. package/dist/locales/fr/mobile.json +60 -0
  145. package/dist/locales/fr/nav.json +22 -0
  146. package/dist/locales/fr/notifications.json +262 -0
  147. package/dist/locales/fr/pages.json +324 -0
  148. package/dist/locales/fr/settings.json +243 -0
  149. package/dist/locales/fr-FR/common.json +308 -0
  150. package/dist/locales/fr-FR/mobile.json +178 -0
  151. package/dist/locales/fr-FR/nav.json +28 -0
  152. package/dist/locales/fr-FR/notifications.json +279 -0
  153. package/dist/locales/fr-FR/pages.json +953 -0
  154. package/dist/locales/fr-FR/settings.json +487 -0
  155. package/dist/locales/he/common.json +276 -0
  156. package/dist/locales/he/mobile.json +60 -0
  157. package/dist/locales/he/nav.json +22 -0
  158. package/dist/locales/he/notifications.json +262 -0
  159. package/dist/locales/he/pages.json +324 -0
  160. package/dist/locales/he/settings.json +243 -0
  161. package/dist/locales/he-IL/common.json +308 -0
  162. package/dist/locales/he-IL/mobile.json +178 -0
  163. package/dist/locales/he-IL/nav.json +28 -0
  164. package/dist/locales/he-IL/notifications.json +279 -0
  165. package/dist/locales/he-IL/pages.json +953 -0
  166. package/dist/locales/he-IL/settings.json +487 -0
  167. package/dist/locales/hu/common.json +276 -0
  168. package/dist/locales/hu/mobile.json +60 -0
  169. package/dist/locales/hu/nav.json +22 -0
  170. package/dist/locales/hu/notifications.json +262 -0
  171. package/dist/locales/hu/pages.json +324 -0
  172. package/dist/locales/hu/settings.json +243 -0
  173. package/dist/locales/hu-HU/common.json +308 -0
  174. package/dist/locales/hu-HU/mobile.json +178 -0
  175. package/dist/locales/hu-HU/nav.json +28 -0
  176. package/dist/locales/hu-HU/notifications.json +279 -0
  177. package/dist/locales/hu-HU/pages.json +953 -0
  178. package/dist/locales/hu-HU/settings.json +487 -0
  179. package/dist/locales/it/common.json +276 -0
  180. package/dist/locales/it/mobile.json +60 -0
  181. package/dist/locales/it/nav.json +22 -0
  182. package/dist/locales/it/notifications.json +262 -0
  183. package/dist/locales/it/pages.json +324 -0
  184. package/dist/locales/it/settings.json +243 -0
  185. package/dist/locales/it-IT/common.json +308 -0
  186. package/dist/locales/it-IT/mobile.json +178 -0
  187. package/dist/locales/it-IT/nav.json +28 -0
  188. package/dist/locales/it-IT/notifications.json +279 -0
  189. package/dist/locales/it-IT/pages.json +953 -0
  190. package/dist/locales/it-IT/settings.json +487 -0
  191. package/dist/locales/ja/common.json +276 -0
  192. package/dist/locales/ja/mobile.json +60 -0
  193. package/dist/locales/ja/nav.json +22 -0
  194. package/dist/locales/ja/notifications.json +262 -0
  195. package/dist/locales/ja/pages.json +324 -0
  196. package/dist/locales/ja/settings.json +243 -0
  197. package/dist/locales/ja-JP/common.json +308 -0
  198. package/dist/locales/ja-JP/mobile.json +178 -0
  199. package/dist/locales/ja-JP/nav.json +28 -0
  200. package/dist/locales/ja-JP/notifications.json +279 -0
  201. package/dist/locales/ja-JP/pages.json +953 -0
  202. package/dist/locales/ja-JP/settings.json +487 -0
  203. package/dist/locales/ko/common.json +276 -0
  204. package/dist/locales/ko/mobile.json +60 -0
  205. package/dist/locales/ko/nav.json +22 -0
  206. package/dist/locales/ko/notifications.json +262 -0
  207. package/dist/locales/ko/pages.json +324 -0
  208. package/dist/locales/ko/settings.json +243 -0
  209. package/dist/locales/ko-KR/common.json +308 -0
  210. package/dist/locales/ko-KR/mobile.json +178 -0
  211. package/dist/locales/ko-KR/nav.json +28 -0
  212. package/dist/locales/ko-KR/notifications.json +279 -0
  213. package/dist/locales/ko-KR/pages.json +953 -0
  214. package/dist/locales/ko-KR/settings.json +487 -0
  215. package/dist/locales/nl/common.json +276 -0
  216. package/dist/locales/nl/mobile.json +60 -0
  217. package/dist/locales/nl/nav.json +22 -0
  218. package/dist/locales/nl/notifications.json +262 -0
  219. package/dist/locales/nl/pages.json +324 -0
  220. package/dist/locales/nl/settings.json +243 -0
  221. package/dist/locales/nl-NL/common.json +308 -0
  222. package/dist/locales/nl-NL/mobile.json +178 -0
  223. package/dist/locales/nl-NL/nav.json +28 -0
  224. package/dist/locales/nl-NL/notifications.json +279 -0
  225. package/dist/locales/nl-NL/pages.json +953 -0
  226. package/dist/locales/nl-NL/settings.json +487 -0
  227. package/dist/locales/no/common.json +276 -0
  228. package/dist/locales/no/mobile.json +60 -0
  229. package/dist/locales/no/nav.json +22 -0
  230. package/dist/locales/no/notifications.json +262 -0
  231. package/dist/locales/no/pages.json +324 -0
  232. package/dist/locales/no/settings.json +243 -0
  233. package/dist/locales/no-NO/common.json +308 -0
  234. package/dist/locales/no-NO/mobile.json +178 -0
  235. package/dist/locales/no-NO/nav.json +28 -0
  236. package/dist/locales/no-NO/notifications.json +279 -0
  237. package/dist/locales/no-NO/pages.json +953 -0
  238. package/dist/locales/no-NO/settings.json +487 -0
  239. package/dist/locales/pl/common.json +276 -0
  240. package/dist/locales/pl/mobile.json +60 -0
  241. package/dist/locales/pl/nav.json +22 -0
  242. package/dist/locales/pl/notifications.json +262 -0
  243. package/dist/locales/pl/pages.json +324 -0
  244. package/dist/locales/pl/settings.json +243 -0
  245. package/dist/locales/pl-PL/common.json +308 -0
  246. package/dist/locales/pl-PL/mobile.json +178 -0
  247. package/dist/locales/pl-PL/nav.json +28 -0
  248. package/dist/locales/pl-PL/notifications.json +279 -0
  249. package/dist/locales/pl-PL/pages.json +953 -0
  250. package/dist/locales/pl-PL/settings.json +487 -0
  251. package/dist/locales/pt/common.json +276 -0
  252. package/dist/locales/pt/mobile.json +60 -0
  253. package/dist/locales/pt/nav.json +22 -0
  254. package/dist/locales/pt/notifications.json +262 -0
  255. package/dist/locales/pt/pages.json +324 -0
  256. package/dist/locales/pt/settings.json +243 -0
  257. package/dist/locales/pt-BR/common.json +308 -0
  258. package/dist/locales/pt-BR/mobile.json +178 -0
  259. package/dist/locales/pt-BR/nav.json +28 -0
  260. package/dist/locales/pt-BR/notifications.json +279 -0
  261. package/dist/locales/pt-BR/pages.json +953 -0
  262. package/dist/locales/pt-BR/settings.json +487 -0
  263. package/dist/locales/pt-PT/common.json +308 -0
  264. package/dist/locales/pt-PT/mobile.json +178 -0
  265. package/dist/locales/pt-PT/nav.json +28 -0
  266. package/dist/locales/pt-PT/notifications.json +279 -0
  267. package/dist/locales/pt-PT/pages.json +953 -0
  268. package/dist/locales/pt-PT/settings.json +487 -0
  269. package/dist/locales/ro/common.json +276 -0
  270. package/dist/locales/ro/mobile.json +60 -0
  271. package/dist/locales/ro/nav.json +22 -0
  272. package/dist/locales/ro/notifications.json +262 -0
  273. package/dist/locales/ro/pages.json +324 -0
  274. package/dist/locales/ro/settings.json +243 -0
  275. package/dist/locales/ro-RO/common.json +308 -0
  276. package/dist/locales/ro-RO/mobile.json +178 -0
  277. package/dist/locales/ro-RO/nav.json +28 -0
  278. package/dist/locales/ro-RO/notifications.json +279 -0
  279. package/dist/locales/ro-RO/pages.json +953 -0
  280. package/dist/locales/ro-RO/settings.json +487 -0
  281. package/dist/locales/ru/common.json +276 -0
  282. package/dist/locales/ru/mobile.json +60 -0
  283. package/dist/locales/ru/nav.json +22 -0
  284. package/dist/locales/ru/notifications.json +262 -0
  285. package/dist/locales/ru/pages.json +324 -0
  286. package/dist/locales/ru/settings.json +243 -0
  287. package/dist/locales/ru-RU/common.json +308 -0
  288. package/dist/locales/ru-RU/mobile.json +178 -0
  289. package/dist/locales/ru-RU/nav.json +28 -0
  290. package/dist/locales/ru-RU/notifications.json +279 -0
  291. package/dist/locales/ru-RU/pages.json +953 -0
  292. package/dist/locales/ru-RU/settings.json +487 -0
  293. package/dist/locales/sr/common.json +276 -0
  294. package/dist/locales/sr/mobile.json +60 -0
  295. package/dist/locales/sr/nav.json +22 -0
  296. package/dist/locales/sr/notifications.json +262 -0
  297. package/dist/locales/sr/pages.json +324 -0
  298. package/dist/locales/sr/settings.json +243 -0
  299. package/dist/locales/sr-SP/common.json +308 -0
  300. package/dist/locales/sr-SP/mobile.json +178 -0
  301. package/dist/locales/sr-SP/nav.json +28 -0
  302. package/dist/locales/sr-SP/notifications.json +279 -0
  303. package/dist/locales/sr-SP/pages.json +953 -0
  304. package/dist/locales/sr-SP/settings.json +487 -0
  305. package/dist/locales/sv/common.json +276 -0
  306. package/dist/locales/sv/mobile.json +60 -0
  307. package/dist/locales/sv/nav.json +22 -0
  308. package/dist/locales/sv/notifications.json +262 -0
  309. package/dist/locales/sv/pages.json +324 -0
  310. package/dist/locales/sv/settings.json +243 -0
  311. package/dist/locales/sv-SE/common.json +308 -0
  312. package/dist/locales/sv-SE/mobile.json +178 -0
  313. package/dist/locales/sv-SE/nav.json +28 -0
  314. package/dist/locales/sv-SE/notifications.json +279 -0
  315. package/dist/locales/sv-SE/pages.json +953 -0
  316. package/dist/locales/sv-SE/settings.json +487 -0
  317. package/dist/locales/tr/common.json +276 -0
  318. package/dist/locales/tr/mobile.json +60 -0
  319. package/dist/locales/tr/nav.json +22 -0
  320. package/dist/locales/tr/notifications.json +262 -0
  321. package/dist/locales/tr/pages.json +324 -0
  322. package/dist/locales/tr/settings.json +243 -0
  323. package/dist/locales/tr-TR/common.json +308 -0
  324. package/dist/locales/tr-TR/mobile.json +178 -0
  325. package/dist/locales/tr-TR/nav.json +28 -0
  326. package/dist/locales/tr-TR/notifications.json +279 -0
  327. package/dist/locales/tr-TR/pages.json +953 -0
  328. package/dist/locales/tr-TR/settings.json +487 -0
  329. package/dist/locales/uk/common.json +276 -0
  330. package/dist/locales/uk/mobile.json +60 -0
  331. package/dist/locales/uk/nav.json +22 -0
  332. package/dist/locales/uk/notifications.json +262 -0
  333. package/dist/locales/uk/pages.json +324 -0
  334. package/dist/locales/uk/settings.json +243 -0
  335. package/dist/locales/uk-UA/common.json +308 -0
  336. package/dist/locales/uk-UA/mobile.json +178 -0
  337. package/dist/locales/uk-UA/nav.json +28 -0
  338. package/dist/locales/uk-UA/notifications.json +279 -0
  339. package/dist/locales/uk-UA/pages.json +953 -0
  340. package/dist/locales/uk-UA/settings.json +487 -0
  341. package/dist/locales/vi/common.json +276 -0
  342. package/dist/locales/vi/mobile.json +60 -0
  343. package/dist/locales/vi/nav.json +22 -0
  344. package/dist/locales/vi/notifications.json +262 -0
  345. package/dist/locales/vi/pages.json +324 -0
  346. package/dist/locales/vi/settings.json +243 -0
  347. package/dist/locales/vi-VN/common.json +308 -0
  348. package/dist/locales/vi-VN/mobile.json +178 -0
  349. package/dist/locales/vi-VN/nav.json +28 -0
  350. package/dist/locales/vi-VN/notifications.json +279 -0
  351. package/dist/locales/vi-VN/pages.json +953 -0
  352. package/dist/locales/vi-VN/settings.json +487 -0
  353. package/dist/locales/zh/common.json +276 -0
  354. package/dist/locales/zh/mobile.json +60 -0
  355. package/dist/locales/zh/nav.json +22 -0
  356. package/dist/locales/zh/notifications.json +262 -0
  357. package/dist/locales/zh/pages.json +324 -0
  358. package/dist/locales/zh/settings.json +243 -0
  359. package/dist/locales/zh-CN/common.json +308 -0
  360. package/dist/locales/zh-CN/mobile.json +178 -0
  361. package/dist/locales/zh-CN/nav.json +28 -0
  362. package/dist/locales/zh-CN/notifications.json +279 -0
  363. package/dist/locales/zh-CN/pages.json +953 -0
  364. package/dist/locales/zh-CN/settings.json +487 -0
  365. package/dist/locales/zh-TW/common.json +308 -0
  366. package/dist/locales/zh-TW/mobile.json +178 -0
  367. package/dist/locales/zh-TW/nav.json +28 -0
  368. package/dist/locales/zh-TW/notifications.json +279 -0
  369. package/dist/locales/zh-TW/pages.json +953 -0
  370. package/dist/locales/zh-TW/settings.json +487 -0
  371. package/dist/mobile.d.ts +11 -0
  372. package/dist/mobile.d.ts.map +1 -0
  373. package/dist/mobile.js +14 -0
  374. package/dist/mobile.js.map +1 -0
  375. package/dist/types.d.ts +54 -0
  376. package/dist/types.d.ts.map +1 -0
  377. package/dist/types.js +5 -0
  378. package/dist/types.js.map +1 -0
  379. package/package.json +57 -0
  380. package/src/config.mobile.ts +647 -0
  381. package/src/config.ts +209 -0
  382. package/src/formatting.ts +297 -0
  383. package/src/index.ts +105 -0
  384. package/src/language.ts +270 -0
  385. package/src/locales/af-ZA/common.json +308 -0
  386. package/src/locales/af-ZA/mobile.json +178 -0
  387. package/src/locales/af-ZA/nav.json +28 -0
  388. package/src/locales/af-ZA/notifications.json +279 -0
  389. package/src/locales/af-ZA/pages.json +953 -0
  390. package/src/locales/af-ZA/settings.json +487 -0
  391. package/src/locales/ar-SA/common.json +308 -0
  392. package/src/locales/ar-SA/mobile.json +178 -0
  393. package/src/locales/ar-SA/nav.json +28 -0
  394. package/src/locales/ar-SA/notifications.json +279 -0
  395. package/src/locales/ar-SA/pages.json +953 -0
  396. package/src/locales/ar-SA/settings.json +487 -0
  397. package/src/locales/ca-ES/common.json +308 -0
  398. package/src/locales/ca-ES/mobile.json +178 -0
  399. package/src/locales/ca-ES/nav.json +28 -0
  400. package/src/locales/ca-ES/notifications.json +279 -0
  401. package/src/locales/ca-ES/pages.json +953 -0
  402. package/src/locales/ca-ES/settings.json +487 -0
  403. package/src/locales/cs-CZ/common.json +308 -0
  404. package/src/locales/cs-CZ/mobile.json +178 -0
  405. package/src/locales/cs-CZ/nav.json +28 -0
  406. package/src/locales/cs-CZ/notifications.json +279 -0
  407. package/src/locales/cs-CZ/pages.json +953 -0
  408. package/src/locales/cs-CZ/settings.json +487 -0
  409. package/src/locales/da-DK/common.json +308 -0
  410. package/src/locales/da-DK/mobile.json +178 -0
  411. package/src/locales/da-DK/nav.json +28 -0
  412. package/src/locales/da-DK/notifications.json +279 -0
  413. package/src/locales/da-DK/pages.json +953 -0
  414. package/src/locales/da-DK/settings.json +487 -0
  415. package/src/locales/de-DE/common.json +308 -0
  416. package/src/locales/de-DE/mobile.json +178 -0
  417. package/src/locales/de-DE/nav.json +28 -0
  418. package/src/locales/de-DE/notifications.json +279 -0
  419. package/src/locales/de-DE/pages.json +953 -0
  420. package/src/locales/de-DE/settings.json +487 -0
  421. package/src/locales/el-GR/common.json +308 -0
  422. package/src/locales/el-GR/mobile.json +178 -0
  423. package/src/locales/el-GR/nav.json +28 -0
  424. package/src/locales/el-GR/notifications.json +279 -0
  425. package/src/locales/el-GR/pages.json +953 -0
  426. package/src/locales/el-GR/settings.json +487 -0
  427. package/src/locales/en/common.json +308 -0
  428. package/src/locales/en/mobile.json +178 -0
  429. package/src/locales/en/nav.json +28 -0
  430. package/src/locales/en/notifications.json +279 -0
  431. package/src/locales/en/pages.json +953 -0
  432. package/src/locales/en/settings.json +487 -0
  433. package/src/locales/en-US/common.json +308 -0
  434. package/src/locales/en-US/mobile.json +178 -0
  435. package/src/locales/en-US/nav.json +28 -0
  436. package/src/locales/en-US/notifications.json +279 -0
  437. package/src/locales/en-US/pages.json +953 -0
  438. package/src/locales/en-US/settings.json +487 -0
  439. package/src/locales/es-ES/common.json +308 -0
  440. package/src/locales/es-ES/mobile.json +178 -0
  441. package/src/locales/es-ES/nav.json +28 -0
  442. package/src/locales/es-ES/notifications.json +279 -0
  443. package/src/locales/es-ES/pages.json +953 -0
  444. package/src/locales/es-ES/settings.json +487 -0
  445. package/src/locales/fi-FI/common.json +308 -0
  446. package/src/locales/fi-FI/mobile.json +178 -0
  447. package/src/locales/fi-FI/nav.json +28 -0
  448. package/src/locales/fi-FI/notifications.json +279 -0
  449. package/src/locales/fi-FI/pages.json +953 -0
  450. package/src/locales/fi-FI/settings.json +487 -0
  451. package/src/locales/fr-FR/common.json +308 -0
  452. package/src/locales/fr-FR/mobile.json +178 -0
  453. package/src/locales/fr-FR/nav.json +28 -0
  454. package/src/locales/fr-FR/notifications.json +279 -0
  455. package/src/locales/fr-FR/pages.json +953 -0
  456. package/src/locales/fr-FR/settings.json +487 -0
  457. package/src/locales/he-IL/common.json +308 -0
  458. package/src/locales/he-IL/mobile.json +178 -0
  459. package/src/locales/he-IL/nav.json +28 -0
  460. package/src/locales/he-IL/notifications.json +279 -0
  461. package/src/locales/he-IL/pages.json +953 -0
  462. package/src/locales/he-IL/settings.json +487 -0
  463. package/src/locales/hu-HU/common.json +308 -0
  464. package/src/locales/hu-HU/mobile.json +178 -0
  465. package/src/locales/hu-HU/nav.json +28 -0
  466. package/src/locales/hu-HU/notifications.json +279 -0
  467. package/src/locales/hu-HU/pages.json +953 -0
  468. package/src/locales/hu-HU/settings.json +487 -0
  469. package/src/locales/it-IT/common.json +308 -0
  470. package/src/locales/it-IT/mobile.json +178 -0
  471. package/src/locales/it-IT/nav.json +28 -0
  472. package/src/locales/it-IT/notifications.json +279 -0
  473. package/src/locales/it-IT/pages.json +953 -0
  474. package/src/locales/it-IT/settings.json +487 -0
  475. package/src/locales/ja-JP/common.json +308 -0
  476. package/src/locales/ja-JP/mobile.json +178 -0
  477. package/src/locales/ja-JP/nav.json +28 -0
  478. package/src/locales/ja-JP/notifications.json +279 -0
  479. package/src/locales/ja-JP/pages.json +953 -0
  480. package/src/locales/ja-JP/settings.json +487 -0
  481. package/src/locales/ko-KR/common.json +308 -0
  482. package/src/locales/ko-KR/mobile.json +178 -0
  483. package/src/locales/ko-KR/nav.json +28 -0
  484. package/src/locales/ko-KR/notifications.json +279 -0
  485. package/src/locales/ko-KR/pages.json +953 -0
  486. package/src/locales/ko-KR/settings.json +487 -0
  487. package/src/locales/nl-NL/common.json +308 -0
  488. package/src/locales/nl-NL/mobile.json +178 -0
  489. package/src/locales/nl-NL/nav.json +28 -0
  490. package/src/locales/nl-NL/notifications.json +279 -0
  491. package/src/locales/nl-NL/pages.json +953 -0
  492. package/src/locales/nl-NL/settings.json +487 -0
  493. package/src/locales/no-NO/common.json +308 -0
  494. package/src/locales/no-NO/mobile.json +178 -0
  495. package/src/locales/no-NO/nav.json +28 -0
  496. package/src/locales/no-NO/notifications.json +279 -0
  497. package/src/locales/no-NO/pages.json +953 -0
  498. package/src/locales/no-NO/settings.json +487 -0
  499. package/src/locales/pl-PL/common.json +308 -0
  500. package/src/locales/pl-PL/mobile.json +178 -0
  501. package/src/locales/pl-PL/nav.json +28 -0
  502. package/src/locales/pl-PL/notifications.json +279 -0
  503. package/src/locales/pl-PL/pages.json +953 -0
  504. package/src/locales/pl-PL/settings.json +487 -0
  505. package/src/locales/pt-BR/common.json +308 -0
  506. package/src/locales/pt-BR/mobile.json +178 -0
  507. package/src/locales/pt-BR/nav.json +28 -0
  508. package/src/locales/pt-BR/notifications.json +279 -0
  509. package/src/locales/pt-BR/pages.json +953 -0
  510. package/src/locales/pt-BR/settings.json +487 -0
  511. package/src/locales/pt-PT/common.json +308 -0
  512. package/src/locales/pt-PT/mobile.json +178 -0
  513. package/src/locales/pt-PT/nav.json +28 -0
  514. package/src/locales/pt-PT/notifications.json +279 -0
  515. package/src/locales/pt-PT/pages.json +953 -0
  516. package/src/locales/pt-PT/settings.json +487 -0
  517. package/src/locales/ro-RO/common.json +308 -0
  518. package/src/locales/ro-RO/mobile.json +178 -0
  519. package/src/locales/ro-RO/nav.json +28 -0
  520. package/src/locales/ro-RO/notifications.json +279 -0
  521. package/src/locales/ro-RO/pages.json +953 -0
  522. package/src/locales/ro-RO/settings.json +487 -0
  523. package/src/locales/ru-RU/common.json +308 -0
  524. package/src/locales/ru-RU/mobile.json +178 -0
  525. package/src/locales/ru-RU/nav.json +28 -0
  526. package/src/locales/ru-RU/notifications.json +279 -0
  527. package/src/locales/ru-RU/pages.json +953 -0
  528. package/src/locales/ru-RU/settings.json +487 -0
  529. package/src/locales/sr-SP/common.json +308 -0
  530. package/src/locales/sr-SP/mobile.json +178 -0
  531. package/src/locales/sr-SP/nav.json +28 -0
  532. package/src/locales/sr-SP/notifications.json +279 -0
  533. package/src/locales/sr-SP/pages.json +953 -0
  534. package/src/locales/sr-SP/settings.json +487 -0
  535. package/src/locales/sv-SE/common.json +308 -0
  536. package/src/locales/sv-SE/mobile.json +178 -0
  537. package/src/locales/sv-SE/nav.json +28 -0
  538. package/src/locales/sv-SE/notifications.json +279 -0
  539. package/src/locales/sv-SE/pages.json +953 -0
  540. package/src/locales/sv-SE/settings.json +487 -0
  541. package/src/locales/tr-TR/common.json +308 -0
  542. package/src/locales/tr-TR/mobile.json +178 -0
  543. package/src/locales/tr-TR/nav.json +28 -0
  544. package/src/locales/tr-TR/notifications.json +279 -0
  545. package/src/locales/tr-TR/pages.json +953 -0
  546. package/src/locales/tr-TR/settings.json +487 -0
  547. package/src/locales/uk-UA/common.json +308 -0
  548. package/src/locales/uk-UA/mobile.json +178 -0
  549. package/src/locales/uk-UA/nav.json +28 -0
  550. package/src/locales/uk-UA/notifications.json +279 -0
  551. package/src/locales/uk-UA/pages.json +953 -0
  552. package/src/locales/uk-UA/settings.json +487 -0
  553. package/src/locales/vi-VN/common.json +308 -0
  554. package/src/locales/vi-VN/mobile.json +178 -0
  555. package/src/locales/vi-VN/nav.json +28 -0
  556. package/src/locales/vi-VN/notifications.json +279 -0
  557. package/src/locales/vi-VN/pages.json +953 -0
  558. package/src/locales/vi-VN/settings.json +487 -0
  559. package/src/locales/zh-CN/common.json +308 -0
  560. package/src/locales/zh-CN/mobile.json +178 -0
  561. package/src/locales/zh-CN/nav.json +28 -0
  562. package/src/locales/zh-CN/notifications.json +279 -0
  563. package/src/locales/zh-CN/pages.json +953 -0
  564. package/src/locales/zh-CN/settings.json +487 -0
  565. package/src/locales/zh-TW/common.json +308 -0
  566. package/src/locales/zh-TW/mobile.json +178 -0
  567. package/src/locales/zh-TW/nav.json +28 -0
  568. package/src/locales/zh-TW/notifications.json +279 -0
  569. package/src/locales/zh-TW/pages.json +953 -0
  570. package/src/locales/zh-TW/settings.json +487 -0
  571. package/src/mobile.ts +69 -0
  572. package/src/types.ts +86 -0
@@ -0,0 +1,953 @@
1
+ {
2
+ "activity": {
3
+ "activityByDayOfWeek": "每周活跃度",
4
+ "activityByHourOfDay": "每小时活跃度",
5
+ "concurrentStreams": "并发流",
6
+ "description": "播放趋势、模式和流媒体行为",
7
+ "engagementBreakdown": "参与度分析",
8
+ "howUsersEngage": "用户如何参与内容",
9
+ "platforms": "平台",
10
+ "playsOverTime": "一段时间后播放",
11
+ "playsVsSessions": "播放与会话",
12
+ "playsVsSessionsDesc": "完整观看次数 — 当总观看时间覆盖内容的整个播放时长时计为一次播放",
13
+ "streamQuality": "串流质量",
14
+ "title": "活动"
15
+ },
16
+ "apiDocs": {
17
+ "apiKeyAutoLoaded": "API key auto-loaded",
18
+ "backToSettings": "Back to Settings",
19
+ "noApiKey": "No API key generated - create one in Settings to test endpoints",
20
+ "versionSwitcherLabel": "API documentation version",
21
+ "versionV1": "API v1",
22
+ "versionV2": "API v2",
23
+ "specLoadError": "Failed to load the API specification. Check your API key and try again."
24
+ },
25
+ "dashboard": {
26
+ "activeUsers": "活动用户",
27
+ "alerts": "警告",
28
+ "bandwidth": "带宽",
29
+ "noActiveStreams": "没有活动流",
30
+ "nowPlaying": "正在播放",
31
+ "plays": "播放",
32
+ "serverResources": "服务器资源",
33
+ "streamLocations": "流媒体位置",
34
+ "streamsAppearHere": "当用户开始观看时活跃的流将出现在这里",
35
+ "watchTime": "观看时长"
36
+ },
37
+ "debug": {
38
+ "clearLibraryCache": "Clear Library Cache",
39
+ "clearMobileDevices": "Clear Mobile Devices",
40
+ "clearQueryCache": "Clear Query Cache",
41
+ "clearRules": "Clear Rules",
42
+ "clearServers": "Clear Servers",
43
+ "clearSessions": "Clear Sessions",
44
+ "clearStuckJobs": "Clear Stuck Jobs",
45
+ "clearTerminationLogs": "Clear Termination Logs",
46
+ "clearUsers": "Clear Users",
47
+ "clearViolations": "Clear Violations",
48
+ "clickLoadToView": "Click \"Load\" to view snapshots",
49
+ "cpu": "處理器",
50
+ "database": "Database",
51
+ "databaseDesc": "Database size and table statistics",
52
+ "deleteAllSuspicious": "Delete All Suspicious",
53
+ "deleteSelected": "Delete Selected",
54
+ "description": "Administrative utilities for troubleshooting and data management",
55
+ "destructiveActions": "Destructive Actions",
56
+ "environment": "Environment",
57
+ "factoryReset": "Factory Reset",
58
+ "libraryItems": "媒体库数量",
59
+ "librarySnapshots": "Library Snapshots",
60
+ "load": "Load",
61
+ "logExplorerUnavailable": "Log explorer is only available in Docker environments",
62
+ "logs": "Logs",
63
+ "maintenance": "Maintenance",
64
+ "manageSnapshots": "Manage library snapshots used for Storage Trend and Quality Evolution charts",
65
+ "memory": "Memory",
66
+ "noSuspiciousSnapshots": "No suspicious snapshots found",
67
+ "obliterateAllJobs": "Obliterate All Jobs",
68
+ "of": "of",
69
+ "ok": "OK",
70
+ "overview": "概览",
71
+ "plexAccounts": "Plex Accounts",
72
+ "refreshAggregates": "Refresh Aggregates",
73
+ "selected": "selected",
74
+ "snapshots": "snapshot(s)",
75
+ "suspicious": "Suspicious",
76
+ "suspiciousOnly": "Suspicious only",
77
+ "systemInformation": "System Information",
78
+ "tasks": "Tasks",
79
+ "terminations": "Terminations",
80
+ "title": "Debug Tools",
81
+ "totalSize": "Total Size",
82
+ "uptime": "Uptime"
83
+ },
84
+ "devices": {
85
+ "analyzedSessions": "Analyzed Sessions",
86
+ "analyzedSessionsTooltip": "Sessions in device + codec combinations with at least {{count}} sessions and a known codec. Rare combinations and sessions with no codec info aren't counted.",
87
+ "compatibilityMatrix": "Compatibility Matrix",
88
+ "compatibilityMatrixDesc": "Direct play rates by device and video codec. Sorted by session volume.",
89
+ "description": "See which devices direct play vs transcode each codec",
90
+ "deviceAndCodec": "Device + Codec",
91
+ "deviceHealth": "Device Health",
92
+ "deviceHealthDesc": "Direct play rate by device type",
93
+ "directPlayHigh": "≥80% Direct",
94
+ "directPlayLow": "<50%",
95
+ "directPlayMid": "50-79%",
96
+ "directPlayRate": "Direct Play Rate",
97
+ "legend": "Legend:",
98
+ "noDeviceDataPeriod": "No device data in this period",
99
+ "noTranscodeHotspots": "No transcode hotspots",
100
+ "noTranscodingUsers": "No transcoding users found",
101
+ "pctOfTotal": "% of Total",
102
+ "title": "Device Compatibility",
103
+ "topTranscodingUsers": "Top Transcoding Users",
104
+ "topTranscodingUsersDesc": "Users causing the most transcodes on your server",
105
+ "transcodeHotspots": "Transcode Hotspots",
106
+ "transcodeHotspotsDesc": "Combinations causing the most transcodes",
107
+ "transcodes": "Transcodes",
108
+ "uniqueCodecs": "Unique Codecs",
109
+ "uniqueDevices": "Unique Devices",
110
+ "videoAndAudio": "Video + audio"
111
+ },
112
+ "history": {
113
+ "deleteSession_one": "删除{{count}}个会话",
114
+ "deleteSession_other": "删除{{count}}个会话",
115
+ "deleteSessionsConfirm": "您确定要删除吗?此操作无法撤销。",
116
+ "description": "使用强大过滤器浏览所有流媒体会话",
117
+ "loadingMore": "加载更多……",
118
+ "scrollForMore": "滚动获得更多",
119
+ "showingAllResults": "显示所有{{total}}个结果",
120
+ "title": "历史记录"
121
+ },
122
+ "library": {
123
+ "description": "您服务器上的热门电影和节目",
124
+ "emptyState": {
125
+ "backfillAvailable": {
126
+ "bodyGeneric": "Generate historical snapshots to see library trends over time.",
127
+ "bodyWithDays": "Your library has {{days}} days of history. Generate snapshots to see trends in charts.",
128
+ "syncRunningBody": "Historical data generation will start automatically once the sync completes.",
129
+ "syncRunningTitle": "Library sync in progress...",
130
+ "title": "Historical data available"
131
+ },
132
+ "backfillRunning": {
133
+ "fallbackBody": "Creating snapshots from library history. This may take a few minutes.",
134
+ "progress": "{{processed}} of {{total}} libraries",
135
+ "snapshotsSuffix": " ({{count}} snapshots)",
136
+ "title": "Generating historical data..."
137
+ },
138
+ "checkingStatus": "Checking library status...",
139
+ "generateHistory": "Generate History",
140
+ "multiServer": {
141
+ "body": "Sync the servers below to see combined library statistics.",
142
+ "needsBackfillIntro": "These servers are synced but have no historical data yet:",
143
+ "title": "Some libraries need attention"
144
+ },
145
+ "noMedia": {
146
+ "body": "This library is synced but doesn't have any movies or shows in it yet.",
147
+ "title": "No movies or shows yet"
148
+ },
149
+ "notSynced": {
150
+ "body": "Library statistics will appear here once the library has been synced. This typically happens automatically every hour.",
151
+ "title": "Library not synced yet"
152
+ },
153
+ "notSyncedShort": "Not synced yet",
154
+ "starting": "Starting...",
155
+ "syncInProgress": {
156
+ "body": "Library statistics will appear once the sync completes. This may take a few minutes depending on library size.",
157
+ "title": "Library sync in progress..."
158
+ },
159
+ "syncNow": "Sync Now",
160
+ "syncing": "Syncing...",
161
+ "toast": {
162
+ "backfillCompleteTitle": "Backfill complete",
163
+ "backfillErrorTitle": "Backfill failed",
164
+ "backfillFailedTitle": "Failed to start backfill",
165
+ "backfillStartedDesc": "Historical snapshots are being generated.",
166
+ "backfillStartedTitle": "Backfill started",
167
+ "genericRetry": "Please try again.",
168
+ "noServerSelected": "No server selected",
169
+ "syncFailedTitle": "Failed to start sync",
170
+ "syncStartedDesc": "This may take a few minutes depending on library size.",
171
+ "syncStartedTitle": "Library sync started"
172
+ }
173
+ },
174
+ "noMoviePlays": "此期间没有电影播放",
175
+ "noShowPlays": "此期间没有电视节目播放",
176
+ "overview": {
177
+ "added": "Added",
178
+ "description": "Library health and growth metrics",
179
+ "failedToLoad": "Failed to load library statistics",
180
+ "failedToLoadDesc": "Could not fetch library data. Please try again.",
181
+ "lastUpdated": "Last updated:",
182
+ "libraryGrowth": "Library Growth",
183
+ "serversNeedSync": "These servers need to sync:",
184
+ "shows": "shows",
185
+ "thisMonth": "this month",
186
+ "thisPeriod": "this period",
187
+ "thisWeek": "this week",
188
+ "thisYear": "this year",
189
+ "totalItems": "Total Items"
190
+ },
191
+ "quality": {
192
+ "all": "All",
193
+ "description": "Resolution and codec distribution",
194
+ "failedToLoad": "Failed to load quality data",
195
+ "failedToLoadDesc": "Could not fetch quality data. Please try again.",
196
+ "qualityEvolution": "Quality Evolution",
197
+ "title": "品质"
198
+ },
199
+ "storage": {
200
+ "avgHoursPerGB": "avg hours/GB",
201
+ "confidence": "Confidence",
202
+ "confidenceHigh": "高",
203
+ "confidenceLow": "低",
204
+ "confidenceMedium": "Medium",
205
+ "contentROI": "Content ROI",
206
+ "contentROIDesc": "Watch value per storage cost",
207
+ "days": "天",
208
+ "description": "Storage usage, predictions, and optimization",
209
+ "duplicates": "Duplicates",
210
+ "failedToLoad": "Failed to load storage data",
211
+ "failedToLoadDesc": "Could not fetch storage data. Please try again.",
212
+ "groups": "groups",
213
+ "growthRate": "Growth Rate",
214
+ "insufficientData": "Insufficient data",
215
+ "items": "items",
216
+ "of": "of",
217
+ "predictions": "Predictions",
218
+ "recoverable": "recoverable",
219
+ "staleContent": "Stale Content",
220
+ "staleContentDesc": "Content that may be candidates for removal",
221
+ "storageTrend": "Storage Trend",
222
+ "title": "存储",
223
+ "totalStorage": "Total Storage",
224
+ "unused": "unused",
225
+ "zeroGrowth": "0 GB/mo",
226
+ "duplicatesTitle": "Duplicates",
227
+ "duplicatesSubtitle": "Titles with more than one copy or file, across servers, libraries, and versions",
228
+ "growthPreChangeover": "based on pre-update history",
229
+ "loadingDuplicates": "Loading duplicates...",
230
+ "duplicatesFailed": "Failed to load duplicates",
231
+ "noDuplicatesTitle": "No duplicates found",
232
+ "noDuplicatesDesc": "No titles with more than one physical file detected.",
233
+ "colTitle": "Title",
234
+ "colMatchType": "Match Type",
235
+ "colCopies": "Copies",
236
+ "colRecoverable": "Recoverable Space",
237
+ "sameServer": "Same server",
238
+ "mirror": "Mirror",
239
+ "pageOf": "Page {{page}} of {{totalPages}}"
240
+ },
241
+ "title": "媒体库",
242
+ "topMovies": "热门电影",
243
+ "topShows": "热门电视节目",
244
+ "watch": {
245
+ "avgPerItem": "avg per item",
246
+ "bingeHighlights": "Binge Highlights",
247
+ "bingeHighlightsDesc": "Shows with the most intensive viewing patterns",
248
+ "bingeSessions": "binge sessions",
249
+ "busiest": "Busiest:",
250
+ "completed": "Completed",
251
+ "description": "Viewing behavior and content engagement",
252
+ "failedToLoad": "Failed to load watch analytics",
253
+ "failedToLoadDesc": "Could not fetch watch data.",
254
+ "monthlyTrends": "Monthly Trends",
255
+ "noData": "No watch data yet",
256
+ "noDataDesc": "Watch analytics will appear here once content has been played. Check back after some viewing activity.",
257
+ "peak": "Peak:",
258
+ "peakHour": "Peak Hour",
259
+ "percentWatched": "% watched",
260
+ "quietest": "Quietest:",
261
+ "title": "Watch Analytics",
262
+ "totalWatchTime": "Total Watch Time",
263
+ "viewingHours": "Viewing Hours",
264
+ "watched": "Watched"
265
+ },
266
+ "versionsBackfill": {
267
+ "banner": "File version data is still being collected for this server. Run a library sync to finish.",
268
+ "action": "Sync now",
269
+ "syncFailed": "Sync failed to start on {{count}} server(s). Check your permissions and server status.",
270
+ "syncStarted": "Library sync started."
271
+ }
272
+ },
273
+ "login": {
274
+ "accountCreated": "账户创建成功!",
275
+ "claimCodeDescription": "请检查您的服务器日志请求代码以继续设置",
276
+ "claimCodeHint": "当容器启动时在服务器日志中打印索赔码",
277
+ "claimCodeLabel": "索赔代码",
278
+ "claimCodeRequired": "首次设置需要一个索赔码",
279
+ "claimCodeSecurityNote": "此安全措施确保只有授权的用户能够完成首次设置",
280
+ "completeInPopup": "在弹出窗口中完成登录",
281
+ "connectedTo": "已连接到 {{name}}",
282
+ "continueWith": "Continue with {{provider}}",
283
+ "createAccountDescription": "创建一个帐户来管理您的媒体服务器",
284
+ "createAccountFailed": "创建账户失败",
285
+ "createAccountHeading": "开始创建你的账户",
286
+ "displayNamePlaceholder": "选择显示名称",
287
+ "emailPlaceholder": "您的电子邮箱",
288
+ "enterClaimCode": "输入索赔码",
289
+ "identifierPlaceholder": "Username or email address",
290
+ "invalidCredentials": "无效的电子邮件或密码",
291
+ "localDisabledHint": "Local sign-in is disabled for this instance. Ask an admin to run `enable-local-login` from the Tracearr CLI to re-enable it.",
292
+ "loginFailed": "登录失败",
293
+ "oidcError": "Single sign-on failed. Please try again or use another sign-in method.",
294
+ "passwordPlaceholder": "至少8个字符",
295
+ "plexAuthFailed": "Plex身份验证失败",
296
+ "plexStartFailed": "启动Plex登录失败",
297
+ "reopenPlexLogin": "重新打开Plex登录",
298
+ "selectPlexServer": "选择您的Plex服务器",
299
+ "serverConnectFailed": "无法连接至服务器",
300
+ "setupNote": "在创建您的帐户后,您会从设置中添加您的 Plex或 Jellyfin 服务器。",
301
+ "signInDescription": "登录以访问您的仪表板",
302
+ "signInHeading": "登录到您的帐户",
303
+ "signupFailed": "注册失败",
304
+ "tagline": "Tracearr - 流访问管理",
305
+ "title": "Tracearr",
306
+ "username": "Username",
307
+ "usernameOrEmail": "Username or Email",
308
+ "usernamePlaceholder": "yourusername",
309
+ "validateClaimCode": "验证索赔代码",
310
+ "waitingForPlex": "等待Plex授权……",
311
+ "yourPasswordPlaceholder": "您的密码"
312
+ },
313
+ "maintenance": {
314
+ "interruptionDescription": "一个或多个后端服务已不可用。当连接恢复时,此页面将自动刷新。",
315
+ "interruptionTitle": "服务中止",
316
+ "restoreFailed": "还原失败",
317
+ "restorePhase": {
318
+ "complete": "还原完成",
319
+ "creating_restore_point": "创建还原点",
320
+ "rebuilding_aggregates": "正在重建合集",
321
+ "restarting": "重新启动服务",
322
+ "restoring_database": "恢复数据库",
323
+ "running_migrations": "运行迁移",
324
+ "shutting_down": "关闭服务",
325
+ "validating": "验证备份"
326
+ },
327
+ "restoreTitle": "正在从备份还原……",
328
+ "startingDescription": "服务器正在等待后端服务可用。此页面将在一切就绪时自动刷新。",
329
+ "startingTitle": "Tracearr 正在启动……",
330
+ "initStep": {
331
+ "migrations": "Applying database migrations",
332
+ "timescale": "Preparing TimescaleDB (this can take a while after an upgrade)",
333
+ "services": "Starting services"
334
+ },
335
+ "doNotRestart": "Do not restart or stop the server while this runs. Interrupting it can leave the database half-upgraded."
336
+ },
337
+ "map": {
338
+ "allActivity": "All activity",
339
+ "allTypes": "All types",
340
+ "allUsers": "All users",
341
+ "circles": "Circles",
342
+ "heatmap": "Heatmap",
343
+ "locations": "位置",
344
+ "streams": "streams"
345
+ },
346
+ "media": {
347
+ "detail": {
348
+ "breadcrumb": {
349
+ "ariaLabel": "Breadcrumb"
350
+ },
351
+ "copies": {
352
+ "columns": {
353
+ "server": "Server",
354
+ "library": "Library",
355
+ "quality": "Quality",
356
+ "episodes": "Episodes",
357
+ "size": "Size",
358
+ "added": "Added"
359
+ },
360
+ "loadError": "Couldn't load copies",
361
+ "title": "Copies",
362
+ "unknownLibrary": "Unknown library",
363
+ "versionLabel": "File {{index}}"
364
+ },
365
+ "hero": {
366
+ "actions": {
367
+ "fullHistory": "Full history",
368
+ "openOnServer": "Open on server"
369
+ },
370
+ "availability": {
371
+ "added": "added {{date}}",
372
+ "removed": "removed {{date}}"
373
+ },
374
+ "loadError": "Couldn't load this title",
375
+ "meta": {
376
+ "episodes_one": "{{count}} episode",
377
+ "episodes_other": "{{count}} episodes",
378
+ "seasons_one": "{{count}} season",
379
+ "seasons_other": "{{count}} seasons"
380
+ },
381
+ "removedEverywhere": {
382
+ "caption": "No longer available on any connected server"
383
+ }
384
+ },
385
+ "history": {
386
+ "columns": {
387
+ "content": "Content",
388
+ "date": "Date",
389
+ "duration": "Duration",
390
+ "server": "Server",
391
+ "user": "User"
392
+ },
393
+ "empty": "No plays recorded yet",
394
+ "loadError": "Couldn't load history",
395
+ "notWatched": "Not finished",
396
+ "title": "History",
397
+ "watched": "Watched"
398
+ },
399
+ "kpis": {
400
+ "ariaLabel": "Watch statistics",
401
+ "completion": {
402
+ "detail": "{{finished}} of {{total}} finished every episode",
403
+ "detailMovie": "{{finished}} of {{total}} watched to completion",
404
+ "label": "Avg completion"
405
+ },
406
+ "completionLoadError": "Couldn't load completion",
407
+ "loadError": "Couldn't load watch statistics",
408
+ "plays": {
409
+ "caption": "resume chains, short sessions excluded",
410
+ "label": "Plays, all time"
411
+ },
412
+ "viewers": {
413
+ "detail": "across all servers",
414
+ "label": "Viewers"
415
+ },
416
+ "watchTime": {
417
+ "detail": "+{{hours}}h in the last 30 days",
418
+ "label": "Watch time"
419
+ }
420
+ },
421
+ "notFound": {
422
+ "backLink": "Back to Media",
423
+ "message": "This title doesn't exist or you don't have access to it.",
424
+ "title": "Media not found"
425
+ },
426
+ "platforms": {
427
+ "columns": {
428
+ "platform": "Platform",
429
+ "plays": "Plays",
430
+ "watchTime": "Watch time"
431
+ },
432
+ "empty": "No platform data yet",
433
+ "loadError": "Couldn't load platform breakdown",
434
+ "title": "Platforms",
435
+ "unknown": "Unknown"
436
+ },
437
+ "seasons": {
438
+ "empty": "No season data yet",
439
+ "episodeCount_one": "{{count}} episode",
440
+ "episodeCount_other": "{{count}} episodes",
441
+ "episodeLabel": {
442
+ "partial": "{{code}}: partially watched",
443
+ "unwatched": "{{code}}: unwatched",
444
+ "watched": "{{code}}: watched"
445
+ },
446
+ "loadError": "Couldn't load season data",
447
+ "stripSummary": "{{season}}: {{percent}}% watched",
448
+ "title": "Seasons",
449
+ "watchedPct": "{{percent}}% watched"
450
+ },
451
+ "title": "媒体详情",
452
+ "watchers": {
453
+ "columns": {
454
+ "completion": "Completion",
455
+ "episodes": "Episodes",
456
+ "lastWatched": "Last watched",
457
+ "plays": "Plays",
458
+ "user": "User"
459
+ },
460
+ "completionLabel": "{{percent}}% complete",
461
+ "empty": "No one has watched this yet.",
462
+ "lastWatchedAgo": "{{age}} ago",
463
+ "loadError": "Couldn't load watchers",
464
+ "title": "Watchers"
465
+ }
466
+ },
467
+ "genres": {
468
+ "title": "类型",
469
+ "subtitle": "Plays and watch time by genre, across every server in view.",
470
+ "chart": {
471
+ "title": "Plays by genre",
472
+ "valueLabel": "Plays",
473
+ "itemCount_one": "{{count}} title",
474
+ "itemCount_other": "{{count}} titles",
475
+ "ariaLabel": "Bar chart of plays by genre, sorted highest to lowest. The full breakdown is available in the table below."
476
+ },
477
+ "table": {
478
+ "title": "Genre breakdown",
479
+ "columns": {
480
+ "genre": "Genre",
481
+ "items": "Items",
482
+ "plays": "Plays",
483
+ "watchTime": "Watch time"
484
+ },
485
+ "browseMovies": "Browse {{genre}} movies",
486
+ "browseShows": "Browse {{genre}} shows"
487
+ },
488
+ "empty": {
489
+ "title": "No genres captured yet",
490
+ "description": "Genres come from your media servers' metadata sync. Check back after the next sync completes."
491
+ },
492
+ "loadError": "Couldn't load genres"
493
+ },
494
+ "grid": {
495
+ "clearJumpAction": "Clear",
496
+ "emptyAnchored": "Nothing at or after \"{{letter}}\" under these filters",
497
+ "emptyFilter": "No titles match these filters",
498
+ "emptySearch": "No titles match \"{{query}}\"",
499
+ "loadError": "Couldn't load the catalog",
500
+ "loaderError": "Couldn't load more titles",
501
+ "retry": "Retry",
502
+ "scrubber": {
503
+ "label": "Jump to letter",
504
+ "current": "Letter {{letter}}"
505
+ },
506
+ "showAll": "Show all",
507
+ "showingFrom": "Showing from {{letter}}",
508
+ "toolbar": {
509
+ "ariaLabel": "Filters and sort",
510
+ "count": "{{loaded}} of {{total}} titles · {{size}}",
511
+ "done": "Done",
512
+ "filtersLabel": "Filters",
513
+ "filtersSheetTitle": "Filters",
514
+ "genreAll": "Any genre",
515
+ "genreLabel": "Genre",
516
+ "moviesToggle": "Movies",
517
+ "removeFilter": "Remove {{label}} filter",
518
+ "resolutionAll": "Any resolution",
519
+ "hdrLabel": "Dynamic range",
520
+ "hdrAll": "Any",
521
+ "hdrOnly": "HDR only",
522
+ "hdrChip": "HDR",
523
+ "resolutionLabel": "Resolution",
524
+ "searchLabel": "Search titles",
525
+ "searchPlaceholder": "Search titles…",
526
+ "serverAll": "Any server",
527
+ "libraryLabel": "Library",
528
+ "libraryAll": "Any library",
529
+ "serverLabel": "Server",
530
+ "showsToggle": "Shows",
531
+ "sort": {
532
+ "added": "Recently added",
533
+ "plays": "Plays",
534
+ "title": "Title A–Z",
535
+ "viewers": "Viewers",
536
+ "watch_time": "Watch time",
537
+ "year": "Year"
538
+ },
539
+ "sortLabel": "Sort",
540
+ "typeLabel": "Media type",
541
+ "unwatchedByLens": "Unwatched by {{name}}",
542
+ "watched": {
543
+ "all": "All",
544
+ "partial": "Partially watched",
545
+ "unwatched": "Unwatched",
546
+ "watched": "Watched"
547
+ },
548
+ "watchedLabel": "Watched",
549
+ "yearFromLabel": "From year",
550
+ "yearToLabel": "To year",
551
+ "sizeGbMinLabel": "Min size (GB)",
552
+ "sizeGbMaxLabel": "Max size (GB)",
553
+ "sizeChipAtLeast": "≥ {{min}} GB",
554
+ "sizeChipAtMost": "≤ {{max}} GB",
555
+ "sizeChipRange": "{{min}}–{{max}} GB",
556
+ "countTotal_one": "{{count}} title · {{size}}",
557
+ "countTotal_other": "{{count}} titles · {{size}}"
558
+ }
559
+ },
560
+ "landing": {
561
+ "card": {
562
+ "addedAgo": "{{date}}新增",
563
+ "addedCompactAgo": "added {{age}} ago",
564
+ "newEpisodesChip": "{{count}} new",
565
+ "newEpisodes_one": "{{count}} 集新內容",
566
+ "newEpisodes_other": "{{count}} 集新內容"
567
+ },
568
+ "deadWeight": {
569
+ "columns": {
570
+ "added": "Added",
571
+ "poster": "Poster",
572
+ "servers": "Servers",
573
+ "size": "Size",
574
+ "title": "Title"
575
+ },
576
+ "empty": "Nothing to reclaim - everything in your library has been watched",
577
+ "summary": "{{count}} never-watched titles · {{size}}",
578
+ "title": "Dead Weight",
579
+ "viewAll": "View all",
580
+ "viewAllTooltip": "Coming soon"
581
+ },
582
+ "lens": {
583
+ "allUsers": "所有使用者",
584
+ "label": "以使用者身分檢視"
585
+ },
586
+ "loadError": "Couldn't load your media library",
587
+ "shelves": {
588
+ "captionMostPopular": {
589
+ "all": "all time",
590
+ "custom": "selected date range",
591
+ "day": "today",
592
+ "month": "last 30 days",
593
+ "week": "last 7 days",
594
+ "year": "last 12 months"
595
+ },
596
+ "captionRecentlyAdded": "deduped across servers",
597
+ "emptyMostPopular": "No plays in this period",
598
+ "emptyRecentlyAdded": "Nothing added in this period",
599
+ "mostPopularMovies": "Most Popular Movies",
600
+ "mostPopularShows": "Most Popular Shows",
601
+ "recentlyAddedMovies": "Recently Added Movies",
602
+ "recentlyAddedShows": "Recently Added Shows"
603
+ },
604
+ "title": "媒体"
605
+ },
606
+ "movies": {
607
+ "title": "电影"
608
+ },
609
+ "posterCard": {
610
+ "addedLabel": "{{date}}新增",
611
+ "onServers": "可在 {{servers}} 觀看",
612
+ "playsCompact_one": "{{compact}} play",
613
+ "playsCompact_other": "{{compact}} plays",
614
+ "plays_one": "{{count}} 次播放",
615
+ "plays_other": "{{count}} 次播放",
616
+ "rankChip": "#{{rank}}",
617
+ "rankSuffix": ",排名第 {{rank}} 位",
618
+ "tileLabel": {
619
+ "added": "新增",
620
+ "plays": "播放",
621
+ "resolution": "resolution",
622
+ "viewers": "觀眾"
623
+ },
624
+ "versionsChip": "{{count}}×",
625
+ "versions_one": "{{count}} version",
626
+ "versions_other": "{{count}} versions",
627
+ "viewers_one": "{{count}} 位觀眾",
628
+ "viewers_other": "{{count}} 位觀眾",
629
+ "watchedState": {
630
+ "partial": "部分觀看",
631
+ "watched": "已觀看",
632
+ "watchedByOthers": "Watched by others",
633
+ "watchedByYou": "Watched by you"
634
+ },
635
+ "moreServers": "+{{count}} more"
636
+ },
637
+ "shows": {
638
+ "title": "剧集"
639
+ }
640
+ },
641
+ "notFound": {
642
+ "description": "您查找的页面不存在或已移至别处。",
643
+ "heading": "无法找到页面",
644
+ "title": "404"
645
+ },
646
+ "plexCallback": {
647
+ "authComplete": "Authentication complete",
648
+ "windowWillClose": "This window will close automatically..."
649
+ },
650
+ "rules": {
651
+ "accountInactivity": "帐户不活动",
652
+ "accountInactivityDesc": "当用户在指定时间段没有观看任何内容时获得通知",
653
+ "addRule": "添加规则",
654
+ "allowed": "已允许",
655
+ "allowedCountries": "允许国家",
656
+ "allowlist": "允许列表 (仅允许这些国家)",
657
+ "allowlistNote": "来自任何其他国家的渠道都会引发违反行为。",
658
+ "blocked": "已屏蔽",
659
+ "blockedCountries": "被封锁的国家",
660
+ "blocklist": "黑名单(屏蔽这些国家)",
661
+ "chooseTemplate": "Choose a Rule Template",
662
+ "chooseTemplateDesc": "Select a pre-configured rule type to get started quickly.",
663
+ "classicRule": "Classic Rule",
664
+ "concurrentStreams": "同步流",
665
+ "concurrentStreamsDesc": "限制每个用户同时流的数量",
666
+ "createDescription": "为您的媒体服务器配置新的检测规则。",
667
+ "createFirstRule": "创建您的第一个检测规则来开始监测账户共享。",
668
+ "createRule": "创建规则",
669
+ "customRule": "Custom Rule",
670
+ "days": "天",
671
+ "deleteRule": "删除规则",
672
+ "deleteRuleConfirm": "您确定要删除这个文件吗?此操作无法撤消。",
673
+ "deleteRule_one": "删除{{count}}规则",
674
+ "deleteRule_other": "删除{{count}}规则",
675
+ "deleteRulesConfirm": "您确定要删除吗?此操作无法撤销。",
676
+ "description": "配置账户共享和违反策略的检测规则",
677
+ "deviceVelocity": "设备速度",
678
+ "deviceVelocityDesc": "检测用户是否在时间窗口中连接过多的 IP",
679
+ "disable": "禁用",
680
+ "editRule": "编辑规则",
681
+ "enable": "启用",
682
+ "excludeLocalNetwork": "排除本地网络",
683
+ "excludeLocalNetworkDesc": "忽略本地/私有IP的会话 (例如,192.168.x.x, 10.x.x.x.x)",
684
+ "geoRestriction": "地理限制",
685
+ "geoRestrictionDesc": "阻止来自特定国家的串流",
686
+ "groupByDevice": "按设备分组",
687
+ "groupByDeviceDesc": "通过设备而不是IP计数。防止虚假的 VPN、DHCP 或虚拟频道。",
688
+ "impossibleTravel": "不可行旅行",
689
+ "impossibleTravelDesc": "检测用户流媒体在短时间内距离太远的情况",
690
+ "inactiveFor": "在{{value}} {{unit}}内未活动",
691
+ "inactivityNote": "当用户没有观看这段时间的任何时候创建警报。检查每小时运行。",
692
+ "inactivityPeriod": "不活动期间",
693
+ "maxIps": "最多IP地址",
694
+ "maxIpsDefault": "时间窗口内允许的最大唯一IP地址。默认值:24小时内5 个 IP",
695
+ "maxSpeed": "最大速度 ({{unit}})",
696
+ "recordsOnly": "Records violations only",
697
+ "maxSpeedDefault": "最大现实旅行速度。默认值:{{value}} {{unit}}(飞机速度)",
698
+ "maxStreams": "最大流",
699
+ "maxStreamsDefault": "每个用户的最大同步流。默认值:3",
700
+ "minDistance": "最小距离 ({{unit}})",
701
+ "minDistanceDefault": "触发的最小距离。默认值:{{value}} {{unit}}",
702
+ "mode": "模式",
703
+ "months": "月",
704
+ "noRulesConfigured": "没有已配置的规则",
705
+ "none": "未设置",
706
+ "ruleName": "规则名称",
707
+ "ruleNamePlaceholder": "例如: 并发流限制",
708
+ "ruleType": "规则类型",
709
+ "selectAllowedCountries": "选择允许的国家……",
710
+ "selectCountriesToBlock": "选择要屏蔽的国家……",
711
+ "simultaneousLocations": "同时所在位置",
712
+ "simultaneousLocationsDesc": "检测用户从多个远程位置流媒体的时间",
713
+ "timeWindow": "时间窗口 (小时)",
714
+ "title": "规则",
715
+ "unit": "单位",
716
+ "updateDescription": "更新下面的规则配置。",
717
+ "updateRule": "更新规则",
718
+ "weeks": "星期"
719
+ },
720
+ "settings": {
721
+ "jobs": {
722
+ "lastRun": "上次运行",
723
+ "nextRun": "下次运行",
724
+ "runNow": "现在运行",
725
+ "running": "运行中……",
726
+ "schedule": "计划"
727
+ },
728
+ "mobile": {
729
+ "displayName": "显示名称",
730
+ "displayNamePlaceholder": "例如,我的 iPhone",
731
+ "editDisplayName": "编辑显示昵称",
732
+ "editDisplayNameDesc": "更改此设备在您的设备列表中的显示方式",
733
+ "updating": "更新中……"
734
+ },
735
+ "notifications": {
736
+ "addAgent": "添加通知代理",
737
+ "addAgentDesc": "选择一个通知服务并进行配置。",
738
+ "agentType": "代理类型",
739
+ "allAgentsConfigured": "所有通知代理已经配置。",
740
+ "allEvents": "全部事件",
741
+ "currentlyConfigured": "{{name}} 当前已配置。",
742
+ "customEvents": "自定义事件",
743
+ "description": "Configure notification channels and select which events each agent should receive.",
744
+ "editAgent": "编辑通知代理",
745
+ "editAgentDesc": "更新通知代理配置。",
746
+ "eventSelection": "事件选择",
747
+ "loadingSettings": "正在加载通知设置……",
748
+ "noAgents": "未配置通知代理",
749
+ "noAgentsHint": "添加代理接收关于共享违反行为和流事件的通知。",
750
+ "noConfigNeeded": "此代理无需配置。",
751
+ "oneWebhookLimit": "一次只能有一个 webhook 代理激活。",
752
+ "removeAgentDesc": "这将移除{{name}}并禁用其所有通知。您可以稍后再添加它。",
753
+ "removeAgentTitle": "移除 {{name}}?",
754
+ "saveAgent": "添加代理",
755
+ "selectType": "选择类型……",
756
+ "testAgent": "测试代理",
757
+ "testingAgent": "测试中……",
758
+ "title": "Notification Agents",
759
+ "triggerEvents": "触发事件",
760
+ "updateAgent": "更新代理",
761
+ "webhookAgents": "Webhook 代理",
762
+ "webhookUrl": "Webhook 網址",
763
+ "webhookUrlPlaceholder": "https://……"
764
+ },
765
+ "plex": {
766
+ "accountsLinked_one": "{{count}} 个 Plex 账户已链接",
767
+ "accountsLinked_other": "{{count}} 个 Plex 账户已链接",
768
+ "connectingTo": "正在连接到{{name}}……",
769
+ "connectionError": {
770
+ "dns": "DNS error",
771
+ "http": "HTTP {{status}}",
772
+ "refused": "Connection refused",
773
+ "reset": "Connection reset",
774
+ "timeout": "Timed out",
775
+ "tls": "TLS error",
776
+ "unknown": "Connection failed",
777
+ "unreachable": "Host unreachable"
778
+ },
779
+ "connectionsAvailable": "{{count}} 个可用连接",
780
+ "connectionsReachable": "{{reachable}} 个 {{total}} 个连接可达",
781
+ "custom": "Custom",
782
+ "customUrl": "自定义 URL",
783
+ "deleteServersFirst": "先删除已连接的服务器来取消此帐户",
784
+ "hideFiltered": "隐藏已过滤",
785
+ "linkAnotherAccount": "链接另一个Plex账户",
786
+ "linkPlexAccount": "链接Plex账户",
787
+ "linkedAccounts": "链接的Plex账户",
788
+ "linkedAccountsDesc": "管理您可以添加服务器的 Plex账户。",
789
+ "linking": "正在连接……",
790
+ "local": "本地",
791
+ "loginEnabled": "登录已启用",
792
+ "mayNotConnect": "可能未连接",
793
+ "moreConnections": "+{{count}} 个更多连接",
794
+ "noAccountsLinked": "没有关联的Plex账户",
795
+ "noAccountsLinkedHint": "链接Plex帐户以添加Plex服务器到Trackerr。",
796
+ "noAccountsLinkedShort": "没有连接的 Plex账户",
797
+ "noAccountsYet": "尚无Plex帐户链接。",
798
+ "noReachableConnections": "没有可用的连接",
799
+ "noServersFound": "找不到Plex服务器",
800
+ "noServersFoundHint": "请确保您拥有至少一个Plex服务器",
801
+ "recommended": "已推荐",
802
+ "remote": "远程",
803
+ "secure": "安全",
804
+ "serversConnected_one": "{{count}} 服务器已连接",
805
+ "serversConnected_other": "{{count}} 台服务器已连接",
806
+ "showAll": "显示全部",
807
+ "unlinkAccount": "取消链接此Plex账户",
808
+ "unlinkConfirm": "您确定要取消链接此Plex帐户吗?在您再次链接之前,您将无法从此帐户添加服务器。",
809
+ "unlinkPlexAccount": "取消链接Plex账户"
810
+ }
811
+ },
812
+ "statsBandwidth": {
813
+ "avgBitrate": "Avg Bitrate",
814
+ "avgBitrateMbps": "Avg Bitrate (Mbps)",
815
+ "dailyUsage": "Daily Bandwidth Usage",
816
+ "dailyUsageDesc": "Average bitrate and session count over time",
817
+ "dataTransferred": "Data Transferred",
818
+ "description": "Streaming bandwidth usage and bitrate analysis",
819
+ "noData": "No bandwidth data available",
820
+ "peakBitrate": "Peak: {{value}} Mbps",
821
+ "title": "带宽",
822
+ "topUsers": "Top Bandwidth Users",
823
+ "topUsersDesc": "Users consuming the most bandwidth",
824
+ "totalWatchTime": "Total Watch Time",
825
+ "uniqueUsers": "Unique Users"
826
+ },
827
+ "statsUsers": {
828
+ "noActivity": "No activity yet",
829
+ "noActivityDesc": "Start streaming to see your top users here",
830
+ "runnersUp": "Runners Up",
831
+ "top3": "Top 3"
832
+ },
833
+ "terminateStream": {
834
+ "killStream": "结束流",
835
+ "messageHint": "此消息将在播放时显示给他们",
836
+ "messageLabel": "给用户的消息(可选)",
837
+ "messagePlaceholder": "例如,请不要分享您的帐户",
838
+ "stopMedia": "停止 \"{{mediaTitle}}\" 对 @{{username}} 吗?",
839
+ "terminating": "正在终止……",
840
+ "title": "终止流"
841
+ },
842
+ "userDetail": {
843
+ "acrossAllServers": "Across all linked accounts:",
844
+ "adjustTrustScore": "Adjust Trust Score",
845
+ "allServers": "All servers",
846
+ "backToUsers": "返回用户",
847
+ "byRule": "按 / 规则",
848
+ "linkedAccounts": "Linked accounts",
849
+ "locations": "位置",
850
+ "manual": "手动",
851
+ "noSessionsFound": "未找到此用户的会话。",
852
+ "noTerminationsFound": "此用户没有流终止。",
853
+ "noViolationsFound": "没有此用户的违规行为。",
854
+ "overallTrust": "Overall Trust",
855
+ "serverScope": "Server",
856
+ "sessions": "会话",
857
+ "splitAccount": "Split into separate user",
858
+ "splitConfirmDescription": "Detach this server account into its own user. Its watch history and violations move with it.",
859
+ "splitConfirmLoading": "Splitting...",
860
+ "splitConfirmTitle": "Split server account",
861
+ "statistics": "统计",
862
+ "terminationHistory": "终止历史记录",
863
+ "unknownRule": "未知规则",
864
+ "userInfo": "用户信息",
865
+ "userNotFound": "用户未找到",
866
+ "violations": "违规"
867
+ },
868
+ "users": {
869
+ "mergeConfirm": "Merge",
870
+ "mergeDialogDescription": "Every server account, session, and violation from the duplicate moves to the primary. The duplicate identity is deleted.",
871
+ "mergeDialogTitle": "Merge users",
872
+ "mergePickPrimary": "Choose the primary identity",
873
+ "mergePrimaryBadge": "Primary",
874
+ "mergePrimaryForced": "This account can log in, so it must stay the primary.",
875
+ "mergeSameIdentity": "These accounts already belong to the same user",
876
+ "mergeSameServerAcknowledge": "I understand the same-server history combine cannot be undone",
877
+ "mergeSameServerDialogDescription": "This merge permanently combines both accounts on the same server. It cannot be undone.",
878
+ "mergeSameServerFallbackName": "this server",
879
+ "mergeSameServerWarning": "Both identities already have an account on the same server. Merging will permanently combine their session history, violations, and trust score into a single account on that server. This cannot be undone, and splitting the account afterward will not restore the original two accounts.",
880
+ "mergeSameServerWarningTitle": "This action is irreversible",
881
+ "mergeSelectAllActive": "Clear the select-all selection and pick exactly two users to merge",
882
+ "mergeSelectTwo": "Select exactly two users to merge",
883
+ "mergeServerAccountRemoved": "Removed",
884
+ "mergeUsers": "Merge users",
885
+ "noUsersFound": "未找到用户。",
886
+ "resetTrustScore": "重置信任分数",
887
+ "resetTrustScoreConfirm": "您确定要重置信任分数为100吗?此操作不能撤消。",
888
+ "resetTrustScoreTitle_one": "重置{{count}}个用户的信任分数",
889
+ "resetTrustScoreTitle_other": "重置{{count}}个用户的信任分数",
890
+ "searchPlaceholder": "搜索用户……",
891
+ "selectAllUsers": "选择所有{{count}}个用户",
892
+ "serversColumn": "Servers",
893
+ "showRemoved": "Show removed",
894
+ "suggestionsDescription": "These identities look like the same person across servers. Review and merge them if they match.",
895
+ "suggestionsError": "Could not load merge suggestions",
896
+ "suggestionsMatchEmail": "Same email",
897
+ "suggestionsMatchUsername": "Same username",
898
+ "suggestionsReview": "Review",
899
+ "suggestionsTitle": "Possible duplicate users",
900
+ "title": "用户"
901
+ },
902
+ "violations": {
903
+ "allClear": "全部清除",
904
+ "allPeople": "All people",
905
+ "allSeverities": "所有严重程度",
906
+ "allStatuses": "所有状态",
907
+ "detail": {
908
+ "acknowledged": "明白",
909
+ "actions": "处理内容",
910
+ "actual": "Actual",
911
+ "conditionEvidence": "Condition Evidence",
912
+ "conditionGroup": "Condition Group {{index}}",
913
+ "created": "创建时间",
914
+ "daysInactive": "非活动天数",
915
+ "detected": "已探测",
916
+ "inactivity": "无活动详情",
917
+ "lastActivity": "最后一次活动于",
918
+ "map": "会话地点",
919
+ "matched": "{{matched}}/{{total}} matched",
920
+ "neverActive": "从未活跃",
921
+ "noSessions": "没有与此违法行为相关的会话",
922
+ "notFound": "未发现违规行为",
923
+ "relatedSessions": "{{count}} related session",
924
+ "relatedSessions_one": "{{count}} related session",
925
+ "relatedSessions_other": "{{count}} related sessions",
926
+ "sessions": "会话",
927
+ "threshold": "阈值",
928
+ "timestamps": "时间戳",
929
+ "trigger": "触发器",
930
+ "userInfo": "用户",
931
+ "violationDetails": "违规详情"
932
+ },
933
+ "dismissViolation": "消除违约行为",
934
+ "dismissViolationConfirm": "你确定你想要清除这个违反?这将永久从违反日志中移除。",
935
+ "dismissViolation_one": "清除 {{count}} 违规",
936
+ "dismissViolation_other": "清除 {{count}} 违规",
937
+ "dismissViolationsConfirm": "您确定要删除吗?这将永久从违反日志中删除它们并恢复相关的信任分数。",
938
+ "filterByPerson": "Filter violations by this person",
939
+ "filterPeople": "People",
940
+ "noMatches": "无匹配",
941
+ "noViolationsDetected": "没有检测到违反规则的行为",
942
+ "noViolationsFound": "未发现任何违规行为",
943
+ "noViolationsRecorded": "尚未记录任何违反行为。",
944
+ "peopleSelectedCount": "{{count}} people",
945
+ "personFilterEmpty": "No matching people found",
946
+ "personFilterError": "Failed to load people",
947
+ "personFilterPlaceholder": "Filter by person",
948
+ "selectAllViolations": "选择所有符合筛选条件的{{count}}个违规项",
949
+ "title": "违规",
950
+ "tryAdjustingFilters": "尝试调整筛选条件",
951
+ "violationLog": "违规日志"
952
+ }
953
+ }