@tracearr/translations 2.2.4-beta.3 → 2.3.0-beta.2

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 (252) hide show
  1. package/README.md +1 -1
  2. package/dist/config.d.ts +1164 -64
  3. package/dist/config.d.ts.map +1 -1
  4. package/dist/config.mobile.d.ts +1164 -64
  5. package/dist/config.mobile.d.ts.map +1 -1
  6. package/dist/locales/af-ZA/common.json +281 -280
  7. package/dist/locales/af-ZA/notifications.json +238 -218
  8. package/dist/locales/af-ZA/pages.json +1726 -1646
  9. package/dist/locales/af-ZA/settings.json +888 -440
  10. package/dist/locales/ar-SA/common.json +281 -280
  11. package/dist/locales/ar-SA/notifications.json +242 -222
  12. package/dist/locales/ar-SA/pages.json +1684 -1604
  13. package/dist/locales/ar-SA/settings.json +889 -441
  14. package/dist/locales/ca-ES/common.json +281 -280
  15. package/dist/locales/ca-ES/notifications.json +238 -218
  16. package/dist/locales/ca-ES/pages.json +1682 -1602
  17. package/dist/locales/ca-ES/settings.json +888 -440
  18. package/dist/locales/cs-CZ/common.json +281 -280
  19. package/dist/locales/cs-CZ/notifications.json +242 -222
  20. package/dist/locales/cs-CZ/pages.json +1688 -1608
  21. package/dist/locales/cs-CZ/settings.json +889 -441
  22. package/dist/locales/da-DK/common.json +281 -280
  23. package/dist/locales/da-DK/notifications.json +242 -222
  24. package/dist/locales/da-DK/pages.json +1684 -1604
  25. package/dist/locales/da-DK/settings.json +889 -441
  26. package/dist/locales/de-DE/common.json +281 -280
  27. package/dist/locales/de-DE/notifications.json +242 -222
  28. package/dist/locales/de-DE/pages.json +1690 -1610
  29. package/dist/locales/de-DE/settings.json +889 -441
  30. package/dist/locales/el-GR/common.json +281 -280
  31. package/dist/locales/el-GR/notifications.json +242 -222
  32. package/dist/locales/el-GR/pages.json +1684 -1604
  33. package/dist/locales/el-GR/settings.json +889 -441
  34. package/dist/locales/en/notifications.json +26 -6
  35. package/dist/locales/en/pages.json +94 -12
  36. package/dist/locales/en/settings.json +474 -26
  37. package/dist/locales/en-US/common.json +281 -280
  38. package/dist/locales/en-US/notifications.json +242 -222
  39. package/dist/locales/en-US/pages.json +1774 -1694
  40. package/dist/locales/en-US/settings.json +898 -450
  41. package/dist/locales/es-ES/common.json +281 -280
  42. package/dist/locales/es-ES/notifications.json +242 -222
  43. package/dist/locales/es-ES/pages.json +1689 -1609
  44. package/dist/locales/es-ES/settings.json +889 -441
  45. package/dist/locales/fi-FI/common.json +281 -280
  46. package/dist/locales/fi-FI/notifications.json +242 -222
  47. package/dist/locales/fi-FI/pages.json +1684 -1604
  48. package/dist/locales/fi-FI/settings.json +889 -441
  49. package/dist/locales/fr-FR/notifications.json +242 -222
  50. package/dist/locales/fr-FR/pages.json +1698 -1618
  51. package/dist/locales/fr-FR/settings.json +898 -450
  52. package/dist/locales/he-IL/common.json +281 -280
  53. package/dist/locales/he-IL/notifications.json +238 -218
  54. package/dist/locales/he-IL/pages.json +1726 -1646
  55. package/dist/locales/he-IL/settings.json +888 -440
  56. package/dist/locales/hu-HU/common.json +281 -280
  57. package/dist/locales/hu-HU/notifications.json +238 -218
  58. package/dist/locales/hu-HU/pages.json +1726 -1646
  59. package/dist/locales/hu-HU/settings.json +888 -440
  60. package/dist/locales/it-IT/common.json +281 -280
  61. package/dist/locales/it-IT/notifications.json +242 -222
  62. package/dist/locales/it-IT/pages.json +1684 -1604
  63. package/dist/locales/it-IT/settings.json +889 -441
  64. package/dist/locales/ja-JP/common.json +281 -280
  65. package/dist/locales/ja-JP/notifications.json +242 -222
  66. package/dist/locales/ja-JP/pages.json +1684 -1604
  67. package/dist/locales/ja-JP/settings.json +889 -441
  68. package/dist/locales/ko-KR/common.json +281 -281
  69. package/dist/locales/ko-KR/notifications.json +242 -222
  70. package/dist/locales/ko-KR/pages.json +1746 -1666
  71. package/dist/locales/ko-KR/settings.json +898 -450
  72. package/dist/locales/nl-NL/common.json +281 -280
  73. package/dist/locales/nl-NL/notifications.json +242 -222
  74. package/dist/locales/nl-NL/pages.json +1699 -1619
  75. package/dist/locales/nl-NL/settings.json +891 -443
  76. package/dist/locales/no-NO/common.json +281 -280
  77. package/dist/locales/no-NO/notifications.json +242 -222
  78. package/dist/locales/no-NO/pages.json +1684 -1604
  79. package/dist/locales/no-NO/settings.json +889 -441
  80. package/dist/locales/pl-PL/common.json +281 -280
  81. package/dist/locales/pl-PL/notifications.json +242 -222
  82. package/dist/locales/pl-PL/pages.json +1684 -1604
  83. package/dist/locales/pl-PL/settings.json +889 -441
  84. package/dist/locales/pt-BR/common.json +281 -280
  85. package/dist/locales/pt-BR/notifications.json +242 -222
  86. package/dist/locales/pt-BR/pages.json +1725 -1645
  87. package/dist/locales/pt-BR/settings.json +889 -441
  88. package/dist/locales/pt-PT/common.json +281 -280
  89. package/dist/locales/pt-PT/notifications.json +242 -222
  90. package/dist/locales/pt-PT/pages.json +1684 -1604
  91. package/dist/locales/pt-PT/settings.json +889 -441
  92. package/dist/locales/ro-RO/common.json +281 -280
  93. package/dist/locales/ro-RO/notifications.json +242 -222
  94. package/dist/locales/ro-RO/pages.json +1684 -1604
  95. package/dist/locales/ro-RO/settings.json +889 -441
  96. package/dist/locales/ru-RU/common.json +281 -280
  97. package/dist/locales/ru-RU/notifications.json +242 -222
  98. package/dist/locales/ru-RU/pages.json +1684 -1604
  99. package/dist/locales/ru-RU/settings.json +889 -441
  100. package/dist/locales/sr-SP/common.json +281 -280
  101. package/dist/locales/sr-SP/notifications.json +238 -218
  102. package/dist/locales/sr-SP/pages.json +1726 -1646
  103. package/dist/locales/sr-SP/settings.json +888 -440
  104. package/dist/locales/sv-SE/common.json +281 -280
  105. package/dist/locales/sv-SE/notifications.json +242 -222
  106. package/dist/locales/sv-SE/pages.json +1684 -1604
  107. package/dist/locales/sv-SE/settings.json +889 -441
  108. package/dist/locales/tr-TR/common.json +281 -280
  109. package/dist/locales/tr-TR/notifications.json +238 -218
  110. package/dist/locales/tr-TR/pages.json +1726 -1646
  111. package/dist/locales/tr-TR/settings.json +888 -440
  112. package/dist/locales/uk-UA/common.json +13 -12
  113. package/dist/locales/uk-UA/nav.json +17 -23
  114. package/dist/locales/uk-UA/notifications.json +242 -222
  115. package/dist/locales/uk-UA/pages.json +121 -41
  116. package/dist/locales/uk-UA/settings.json +889 -441
  117. package/dist/locales/vi-VN/common.json +281 -280
  118. package/dist/locales/vi-VN/notifications.json +238 -218
  119. package/dist/locales/vi-VN/pages.json +1726 -1646
  120. package/dist/locales/vi-VN/settings.json +888 -440
  121. package/dist/locales/zh-CN/common.json +281 -280
  122. package/dist/locales/zh-CN/notifications.json +242 -222
  123. package/dist/locales/zh-CN/pages.json +1695 -1615
  124. package/dist/locales/zh-CN/settings.json +898 -450
  125. package/dist/locales/zh-TW/common.json +281 -280
  126. package/dist/locales/zh-TW/notifications.json +242 -222
  127. package/dist/locales/zh-TW/pages.json +1804 -1724
  128. package/dist/locales/zh-TW/settings.json +888 -440
  129. package/package.json +1 -1
  130. package/src/locales/af-ZA/common.json +281 -280
  131. package/src/locales/af-ZA/notifications.json +238 -218
  132. package/src/locales/af-ZA/pages.json +1726 -1646
  133. package/src/locales/af-ZA/settings.json +888 -440
  134. package/src/locales/ar-SA/common.json +281 -280
  135. package/src/locales/ar-SA/notifications.json +242 -222
  136. package/src/locales/ar-SA/pages.json +1684 -1604
  137. package/src/locales/ar-SA/settings.json +889 -441
  138. package/src/locales/ca-ES/common.json +281 -280
  139. package/src/locales/ca-ES/notifications.json +238 -218
  140. package/src/locales/ca-ES/pages.json +1682 -1602
  141. package/src/locales/ca-ES/settings.json +888 -440
  142. package/src/locales/cs-CZ/common.json +281 -280
  143. package/src/locales/cs-CZ/notifications.json +242 -222
  144. package/src/locales/cs-CZ/pages.json +1688 -1608
  145. package/src/locales/cs-CZ/settings.json +889 -441
  146. package/src/locales/da-DK/common.json +281 -280
  147. package/src/locales/da-DK/notifications.json +242 -222
  148. package/src/locales/da-DK/pages.json +1684 -1604
  149. package/src/locales/da-DK/settings.json +889 -441
  150. package/src/locales/de-DE/common.json +281 -280
  151. package/src/locales/de-DE/notifications.json +242 -222
  152. package/src/locales/de-DE/pages.json +1690 -1610
  153. package/src/locales/de-DE/settings.json +889 -441
  154. package/src/locales/el-GR/common.json +281 -280
  155. package/src/locales/el-GR/notifications.json +242 -222
  156. package/src/locales/el-GR/pages.json +1684 -1604
  157. package/src/locales/el-GR/settings.json +889 -441
  158. package/src/locales/en/notifications.json +26 -6
  159. package/src/locales/en/pages.json +94 -12
  160. package/src/locales/en/settings.json +474 -26
  161. package/src/locales/en-US/common.json +281 -280
  162. package/src/locales/en-US/notifications.json +242 -222
  163. package/src/locales/en-US/pages.json +1774 -1694
  164. package/src/locales/en-US/settings.json +898 -450
  165. package/src/locales/es-ES/common.json +281 -280
  166. package/src/locales/es-ES/notifications.json +242 -222
  167. package/src/locales/es-ES/pages.json +1689 -1609
  168. package/src/locales/es-ES/settings.json +889 -441
  169. package/src/locales/fi-FI/common.json +281 -280
  170. package/src/locales/fi-FI/notifications.json +242 -222
  171. package/src/locales/fi-FI/pages.json +1684 -1604
  172. package/src/locales/fi-FI/settings.json +889 -441
  173. package/src/locales/fr-FR/notifications.json +242 -222
  174. package/src/locales/fr-FR/pages.json +1698 -1618
  175. package/src/locales/fr-FR/settings.json +898 -450
  176. package/src/locales/he-IL/common.json +281 -280
  177. package/src/locales/he-IL/notifications.json +238 -218
  178. package/src/locales/he-IL/pages.json +1726 -1646
  179. package/src/locales/he-IL/settings.json +888 -440
  180. package/src/locales/hu-HU/common.json +281 -280
  181. package/src/locales/hu-HU/notifications.json +238 -218
  182. package/src/locales/hu-HU/pages.json +1726 -1646
  183. package/src/locales/hu-HU/settings.json +888 -440
  184. package/src/locales/it-IT/common.json +281 -280
  185. package/src/locales/it-IT/notifications.json +242 -222
  186. package/src/locales/it-IT/pages.json +1684 -1604
  187. package/src/locales/it-IT/settings.json +889 -441
  188. package/src/locales/ja-JP/common.json +281 -280
  189. package/src/locales/ja-JP/notifications.json +242 -222
  190. package/src/locales/ja-JP/pages.json +1684 -1604
  191. package/src/locales/ja-JP/settings.json +889 -441
  192. package/src/locales/ko-KR/common.json +281 -281
  193. package/src/locales/ko-KR/notifications.json +242 -222
  194. package/src/locales/ko-KR/pages.json +1746 -1666
  195. package/src/locales/ko-KR/settings.json +898 -450
  196. package/src/locales/nl-NL/common.json +281 -280
  197. package/src/locales/nl-NL/notifications.json +242 -222
  198. package/src/locales/nl-NL/pages.json +1699 -1619
  199. package/src/locales/nl-NL/settings.json +891 -443
  200. package/src/locales/no-NO/common.json +281 -280
  201. package/src/locales/no-NO/notifications.json +242 -222
  202. package/src/locales/no-NO/pages.json +1684 -1604
  203. package/src/locales/no-NO/settings.json +889 -441
  204. package/src/locales/pl-PL/common.json +281 -280
  205. package/src/locales/pl-PL/notifications.json +242 -222
  206. package/src/locales/pl-PL/pages.json +1684 -1604
  207. package/src/locales/pl-PL/settings.json +889 -441
  208. package/src/locales/pt-BR/common.json +281 -280
  209. package/src/locales/pt-BR/notifications.json +242 -222
  210. package/src/locales/pt-BR/pages.json +1725 -1645
  211. package/src/locales/pt-BR/settings.json +889 -441
  212. package/src/locales/pt-PT/common.json +281 -280
  213. package/src/locales/pt-PT/notifications.json +242 -222
  214. package/src/locales/pt-PT/pages.json +1684 -1604
  215. package/src/locales/pt-PT/settings.json +889 -441
  216. package/src/locales/ro-RO/common.json +281 -280
  217. package/src/locales/ro-RO/notifications.json +242 -222
  218. package/src/locales/ro-RO/pages.json +1684 -1604
  219. package/src/locales/ro-RO/settings.json +889 -441
  220. package/src/locales/ru-RU/common.json +281 -280
  221. package/src/locales/ru-RU/notifications.json +242 -222
  222. package/src/locales/ru-RU/pages.json +1684 -1604
  223. package/src/locales/ru-RU/settings.json +889 -441
  224. package/src/locales/sr-SP/common.json +281 -280
  225. package/src/locales/sr-SP/notifications.json +238 -218
  226. package/src/locales/sr-SP/pages.json +1726 -1646
  227. package/src/locales/sr-SP/settings.json +888 -440
  228. package/src/locales/sv-SE/common.json +281 -280
  229. package/src/locales/sv-SE/notifications.json +242 -222
  230. package/src/locales/sv-SE/pages.json +1684 -1604
  231. package/src/locales/sv-SE/settings.json +889 -441
  232. package/src/locales/tr-TR/common.json +281 -280
  233. package/src/locales/tr-TR/notifications.json +238 -218
  234. package/src/locales/tr-TR/pages.json +1726 -1646
  235. package/src/locales/tr-TR/settings.json +888 -440
  236. package/src/locales/uk-UA/common.json +13 -12
  237. package/src/locales/uk-UA/nav.json +17 -23
  238. package/src/locales/uk-UA/notifications.json +242 -222
  239. package/src/locales/uk-UA/pages.json +121 -41
  240. package/src/locales/uk-UA/settings.json +889 -441
  241. package/src/locales/vi-VN/common.json +281 -280
  242. package/src/locales/vi-VN/notifications.json +238 -218
  243. package/src/locales/vi-VN/pages.json +1726 -1646
  244. package/src/locales/vi-VN/settings.json +888 -440
  245. package/src/locales/zh-CN/common.json +281 -280
  246. package/src/locales/zh-CN/notifications.json +242 -222
  247. package/src/locales/zh-CN/pages.json +1695 -1615
  248. package/src/locales/zh-CN/settings.json +898 -450
  249. package/src/locales/zh-TW/common.json +281 -280
  250. package/src/locales/zh-TW/notifications.json +242 -222
  251. package/src/locales/zh-TW/pages.json +1804 -1724
  252. package/src/locales/zh-TW/settings.json +888 -440
@@ -1,504 +1,952 @@
1
1
  {
2
- "title": "设置",
3
- "tabs": {
4
- "general": "通用",
5
- "servers": "服务器",
6
- "notifications": "通知",
7
- "mobile": "移动 App",
8
- "tailscale": "Tailscale",
9
- "import": "导入",
10
- "advanced": "高级设置",
11
- "jobs": "任务",
12
- "accessControl": "访问控制",
13
- "backup": "备份"
2
+ "accessControl": {
3
+ "allowGuestAccess": "允许访客访问",
4
+ "allowGuestAccessDesc": "",
5
+ "description": "配置谁可以访问 Tracearr",
6
+ "singleOwnerNote": "注意:当访客访问被禁用时,只有服务器所有者可以登录。所有其他用户都会看到“访问被拒绝”的消息。",
7
+ "title": "访问控制"
8
+ },
9
+ "account": {
10
+ "createAccount": "创建新账户",
11
+ "createYourAccount": "创建您的账户以开始",
12
+ "displayName": "显示名称",
13
+ "email": "电子邮件",
14
+ "password": "密码",
15
+ "signInToAccount": "登录到您的帐户",
16
+ "useLocalAccount": "使用本地账户"
17
+ },
18
+ "advanced": {
19
+ "connectionScenarios": "连接场景",
20
+ "externalUrl": "外部 URL",
21
+ "reverseProxy": "反向代理",
22
+ "title": "高级设置",
23
+ "trustProxy": "信任代理头"
24
+ },
25
+ "backup": {
26
+ "actions": "动作",
27
+ "backToBackups": "返回备份",
28
+ "backupHistory": "备份历史",
29
+ "createBackup": "创建备份",
30
+ "creating": "正在创建备份……",
31
+ "databaseSize": "当前数据库大小:{{size}}",
32
+ "date": "日期",
33
+ "dayFri": "星期五",
34
+ "dayMon": "星期一",
35
+ "daySat": "星期六",
36
+ "daySun": "星期日",
37
+ "dayThu": "星期四",
38
+ "dayTue": "星期二",
39
+ "dayWed": "星期三",
40
+ "deleteConfirmDescription": "您确定要删除此备份吗?此操作无法撤消。",
41
+ "deleteConfirmTitle": "删除备份",
42
+ "description": "备份并恢复您的 Tracearr 数据",
43
+ "download": "",
44
+ "freeSpace": "备份目录可用空间:{{size}}",
45
+ "lowDiskSpace": "磁盘空间不足 — 备份和恢复需要至少两倍的可用空间。",
46
+ "noBackups": "尚未备份。请在上面创建您的第一个备份。",
47
+ "restore": {
48
+ "automations": "自动化",
49
+ "cannotRestore": "恢复需要 PostgreSQL 超级用户权限。请确保您的数据库用户拥有超级用户权限并重试。",
50
+ "complete": "还原成功完成。页面将很快刷新。",
51
+ "confirm": "开始还原",
52
+ "confirmLabel": "我理解这将替换所有数据",
53
+ "databaseSize": "数据库大小",
54
+ "failed": "还原失败",
55
+ "libraryItems": "媒体库数量",
56
+ "pgVersionMismatch": "备份是在 PostgreSQL {{backupVersion}} 上创建的,但此服务器运行的是 PostgreSQL {{serverVersion}}。不支持从较新版本的 PostgreSQL 恢复转储。",
57
+ "selectedBackup": "所选备份",
58
+ "servers": "服务器",
59
+ "sessions": "会话",
60
+ "tables": "表",
61
+ "title": "还原备份",
62
+ "tsVersionMismatch": "备份是使用 TimescaleDB {{backupVersion}} 创建的,但此服务器仅支持到 TimescaleDB {{serverVersion}}。",
63
+ "users": "用户",
64
+ "warning": "还原将替换所有现有数据。您需要在还原完成后重新登录。"
65
+ },
66
+ "restoreAction": "还原",
67
+ "retentionCount": "保留最近",
68
+ "retentionSuffix": "计划备份",
69
+ "rowActions": "",
70
+ "schedule": "计划备份",
71
+ "scheduleDaily": "每天",
72
+ "scheduleDayOfMonth": "每月的某一日",
73
+ "scheduleDayOfMonthHint": "在日数月里,备份工作在最后一天进行。",
74
+ "scheduleDayOfWeek": "星期几",
75
+ "scheduleDisabled": "禁用",
76
+ "scheduleHour": "",
77
+ "scheduleMinute": "",
78
+ "scheduleMonthly": "每月",
79
+ "scheduleTime": "时区({{timezone}})",
80
+ "scheduleType": "计划",
81
+ "scheduleWeekly": "每周",
82
+ "size": "尺寸",
83
+ "title": "备份",
84
+ "toast": {
85
+ "backupCreateFailed": "创建备份失败",
86
+ "backupCreated": "备份创建成功",
87
+ "backupDeleteFailed": "删除备份失败",
88
+ "backupDeleted": "备份已删除",
89
+ "backupUploadFailed": "上传备份失败",
90
+ "backupUploaded": "备份上传成功",
91
+ "restoreStartFailed": "启动还原失败",
92
+ "restoreStarted": "还原开始",
93
+ "scheduleError": "保存备份计划失败",
94
+ "scheduleSaved": "备份计划已保存"
95
+ },
96
+ "type": "类型",
97
+ "typeManual": "手动",
98
+ "typeScheduled": "已预约",
99
+ "typeUploaded": "已上传",
100
+ "uploadBackup": "上传备份",
101
+ "uploading": "上传中……",
102
+ "version": "版本"
103
+ },
104
+ "email": {
105
+ "branding": {
106
+ "accent": "",
107
+ "accentPicker": "",
108
+ "description": "",
109
+ "footerText": "",
110
+ "footerTextHelp": "",
111
+ "logo": {
112
+ "label": "",
113
+ "none": "",
114
+ "tracearr": "",
115
+ "url": ""
116
+ },
117
+ "logoUrl": "",
118
+ "mailto": "",
119
+ "mailtoHelp": "",
120
+ "postalAddress": "",
121
+ "postalAddressHelp": "",
122
+ "save": "",
123
+ "saving": "",
124
+ "title": ""
125
+ },
126
+ "ownerOnly": "",
127
+ "suppressions": {
128
+ "add": "",
129
+ "addConfirm": "",
130
+ "addDescription": "",
131
+ "addTitle": "",
132
+ "address": "",
133
+ "empty": "",
134
+ "emptyDescription": "",
135
+ "globalNote": "",
136
+ "openSource": "",
137
+ "reason": {
138
+ "manual": "",
139
+ "unsubscribed": ""
140
+ },
141
+ "remove": "",
142
+ "removeDescription": "",
143
+ "removeTitle": "",
144
+ "title": ""
145
+ }
14
146
  },
15
147
  "general": {
16
- "title": "通用设置",
17
- "unitSystem": "单位系统",
18
- "metric": "公制 (km, km/h)",
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)",
31
- "appearance": "外观",
32
- "appearanceDesc": "自定义Tracearr的外观和感觉。",
33
- "theme": "主题",
34
148
  "accentColor": "亮度颜色",
35
- "default": "(默认)",
36
- "cyanDefault": "* 青色是默认的重音颜色",
37
- "themeLight": "亮色的",
38
- "themeDark": "深色",
39
- "themeSystem": "系统",
149
+ "apiDocs": "API 文档",
150
+ "apiKeyDesc": "访问 Tracearr API以进行第三方集成,如Homarr、Home Assistant等。",
151
+ "apiKeyReadAccess": "您的 API 密钥授予您的 Tracearr 数据的全部读取权限。",
152
+ "apiRateLimit": "API 速率限制",
153
+ "apiRateLimitDesc": "每个密钥每分钟最大公开API请求。需要重启以应用。",
154
+ "apiRateLimitSuffix": "/分钟",
40
155
  "application": "适用范围",
41
156
  "applicationDesc": "配置基本应用程序设置",
42
- "unitSystemDesc": "",
43
- "sessionSync": "会话同步",
44
- "sessionSyncDesc": "",
45
- "syncInterval": "同步间隔",
46
- "syncIntervalDesc": "",
47
- "syncIntervalSuffix": "秒",
48
- "plexSseNote": "Plex使用服务器发送事件(SSE)进行近期更新——不需要轮询。",
49
- "jellyfinPollingNote": "Jellyfin/Emby在上面的间隔时间被打分。",
157
+ "copyToClipboard": "复制到剪贴板",
158
+ "cyanDefault": "* 青色是默认的重音颜色",
159
+ "default": "(默认)",
160
+ "detect": "检测",
50
161
  "enhancedGeoIP": "增强的 GeoIP 查询",
51
162
  "enhancedGeoIPDesc": "使用 Plex的 GeoIP 服务更准确的位置数据。启用后,IP地址将被发送到pluse。 v 查找。本地MaxMind 数据库被用作后备。",
52
163
  "externalAccess": "外部访问",
53
164
  "externalAccessDesc": "配置外部设备 (例如移动应用) 如何连接到您的服务器",
54
165
  "externalUrl": "外部 URL",
55
- "externalUrlPlaceholder": "https://tracearr.example.com",
56
166
  "externalUrlDesc": "外部设备应使用的 URL到达此服务器。用于二维码和移动应用程序配对。",
57
- "detect": "检测",
58
- "localhostWarning": "本地主机URL将无法用于外部设备。使用您的局域名或IP地址。",
167
+ "externalUrlPlaceholder": "https://tracearr.example.com",
168
+ "generateApiKeyPrompt": "生成一个 API 密钥以启用外部集成。",
169
+ "generateKey": "生成密钥",
170
+ "helpTranslate": "帮助翻译 Tracearr",
171
+ "imageCache": {
172
+ "ceiling": "极限",
173
+ "description": "每张海报都有一张复印件,一直放在磁盘上,直到海报改变为止。 没有任何东西会被拆除来制造房间;当磁盘运行低时,缓存就停止增长并这样说。",
174
+ "diskLimited": "",
175
+ "files": "文件",
176
+ "floor": "保持闲置",
177
+ "free": "",
178
+ "freeOf": "",
179
+ "lastSweep": "上次扫描",
180
+ "loadError": "无法加载缓存状态。",
181
+ "need": "估计需要",
182
+ "needHint": "",
183
+ "never": "尚未完成",
184
+ "size": "在磁盘上",
185
+ "title": "海报缓存"
186
+ },
187
+ "imperial": "英制(mi, mph)",
59
188
  "iosHttpWarning": "iOS 需要外部连接的 HTTPS。使用 SSL 设置反向代理。",
60
- "apiKeyDesc": "访问 Tracearr API以进行第三方集成,如Homarr、Home Assistant等。",
61
- "apiDocs": "API 文档",
189
+ "jellyfinPollingNote": "Jellyfin/Emby在上面的间隔时间被打分。",
190
+ "language": "语言",
191
+ "languageDescription": "选择您首选的显示语言。",
192
+ "localAccount": "本地用户",
193
+ "localhostWarning": "本地主机URL将无法用于外部设备。使用您的局域名或IP地址。",
194
+ "metric": "公制 (km, km/h)",
62
195
  "noApiKeyGenerated": "未生成 API 密钥",
63
- "copyToClipboard": "复制到剪贴板",
64
- "apiKeyReadAccess": "您的 API 密钥授予您的 Tracearr 数据的全部读取权限。",
65
- "generateApiKeyPrompt": "生成一个 API 密钥以启用外部集成。",
196
+ "plexAccount": "Plex账户",
197
+ "plexSseNote": "Plex使用服务器发送事件(SSE)进行近期更新——不需要轮询。",
198
+ "primaryAuth": "主要认证方法",
199
+ "publicApiSettings": "公共 API",
200
+ "publicApiSettingsDesc": "配置公共API的监视完成阈值和请求限制",
66
201
  "regenerate": "重新生成",
67
- "generateKey": "生成密钥",
68
202
  "regenerateApiKey": "重新生成 API 密钥?",
69
203
  "regenerateApiKeyDesc": "这将使您当前的 API 密钥无效。任何使用旧密钥的集成都将停止工作。",
70
- "publicApiSettings": "公共 API",
71
- "publicApiSettingsDesc": "配置公共API的监视完成阈值和请求限制",
72
- "watchedThresholdMovie": "电影观看阈值",
73
- "watchedThresholdMovieDesc": "",
74
- "watchedThresholdTv": "电视剧集监视阈值",
75
- "watchedThresholdTvDesc": "",
76
- "watchedThresholdMusic": "Trakt 标记为已观看阈值",
77
- "watchedThresholdMusicDesc": "",
78
- "watchedThresholdSuffix": "%",
79
- "apiRateLimit": "API 速率限制",
80
- "apiRateLimitDesc": "每个密钥每分钟最大公开API请求。需要重启以应用。",
81
- "apiRateLimitSuffix": "/分钟",
204
+ "sessionSync": "会话同步",
205
+ "sessionSyncDesc": "",
206
+ "syncInterval": "同步间隔",
207
+ "syncIntervalDesc": "",
208
+ "syncIntervalSuffix": "秒",
209
+ "theme": "主题",
210
+ "themeDark": "深色",
211
+ "themeLight": "亮色的",
212
+ "themeSystem": "系统",
213
+ "timeFormat": "时间格式",
214
+ "timeFormat12h": "12小时(1:30 PM)",
215
+ "timeFormat24h": "24小时(13:30)",
216
+ "timeFormatDescription": "选择时间的显示方式。",
217
+ "timezone": "时区",
218
+ "title": "通用设置",
219
+ "unitSystem": "单位系统",
220
+ "unitSystemDesc": "",
82
221
  "updateChecks": {
83
- "title": "检查更新",
84
222
  "description": "Trackearr 每隔六小时寻找新版本。通知来自任何自动化监听以触发更新。",
85
223
  "plugin": "实时插件",
86
224
  "pluginDesc": "检查您的 Jellyfin 和 Emby 服务器流事件通过的 Tracearr 插件的新版本。",
87
225
  "server": "媒体服务器",
88
- "serverDesc": "比较每个Plex、Jellyfin和Emby服务器运行的内容和最新发布者发布的内容。"
226
+ "serverDesc": "比较每个Plex、Jellyfin和Emby服务器运行的内容和最新发布者发布的内容。",
227
+ "title": "检查更新"
89
228
  },
90
- "imageCache": {
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
- }
229
+ "watchedThresholdMovie": "电影观看阈值",
230
+ "watchedThresholdMovieDesc": "",
231
+ "watchedThresholdMusic": "Trakt 标记为已观看阈值",
232
+ "watchedThresholdMusicDesc": "",
233
+ "watchedThresholdSuffix": "%",
234
+ "watchedThresholdTv": "电视剧集监视阈值",
235
+ "watchedThresholdTvDesc": ""
106
236
  },
107
- "servers": {
108
- "title": "连接的服务器",
109
- "addServer": "添加服务器",
110
- "serverName": "服务器名称",
111
- "serverUrl": "服务器URL",
112
- "syncInterval": "同步间隔",
113
- "testConnection": "测试连接",
114
- "connectionSuccess": "连接成功",
115
- "connectionFailed": "连接失败",
116
- "noServersConnected": "未连接服务器",
117
- "noServersConnectedHint": "点击“添加服务器”连接一个 Jellyfin 或 Emby 服务器",
118
- "serverType": "服务器类型",
119
- "loadingAccounts": "正在加载链接的Plex帐户...",
120
- "noPlexAccountsLinked": "没有关联的Plex账户",
121
- "noPlexAccountsLinkedHint": "链接上面的Plex帐户,然后返回添加服务器。",
122
- "selectPlexAccount": "选择Plex账户",
123
- "chooseAccount": "选择一个帐户...",
124
- "selectAccountHelp": "选择要从哪个Plex账户中发现服务器。",
125
- "allServersConnected": "所有服务器已连接",
126
- "allServersConnectedDesc": "此帐户的所有服务器已经连接。",
127
- "serverUrlPlaceholder": "http://192.168.1/100:8096",
128
- "serverUrlHelp": "直接链接到您的 Jellyfin 或 Emby 服务器。使用IP:端口获取最佳可靠性。",
129
- "serverNamePlaceholder": "我的媒体服务器",
130
- "apiKeyPlaceholder": "输入您的 API 密钥",
131
- "apiKeyHelp": "在 API 密钥或高级设置下您的媒体服务器的仪表盘中找到。",
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服务器...",
237
+ "import": {
238
+ "apiKeyHelp": "在 Tautulli 设置 -> Web 界面 → API 密钥。",
239
+ "apiKeyPlaceholder": "您的Tautulli API 密钥",
240
+ "checkPlugin": "检查插件",
241
+ "checkingPlugin": "检查中……",
242
+ "connectToTautulli": "连接到Tautulli",
243
+ "connectedFound": "已连接!找到{{users}}用户和{{records}}历史记录。",
244
+ "duplicates": "",
245
+ "enrichMetadata": "含有媒体元数据(推荐)",
246
+ "enrichMetadataHelp": "从您的媒体服务器获取导入会话的额外元数据。",
247
+ "enriched": "丰富",
248
+ "errors": "错误",
249
+ "exportBackupHelp": "在 Jellystat, 前往设置 -> 备份 -> 活动备份以导出您的数据。",
250
+ "exportBackupHint": "从 Jellystat 导出活动备份",
251
+ "howItWorks": "导入的工作方式",
252
+ "howItWorksDesc": "Tracearr 将从您的源导入所有历史监视数据。这可能需要一段时间,取决于您的库的大小。",
253
+ "importComplete": "导入完成",
254
+ "importFailed": "导入失败",
255
+ "importFullRange": "导入完整历史",
256
+ "importFullRangeHelp": "默认情况下,只存在于 Tracearr 最早跟踪的服务器会话的历史记录,所以已经记录的会话永远不会重复。 如果您的 Tracearr 历史存在空白,请启用此选项以导入插件的整个历史记录,不管重叠。纯文本仍然会被跳过。",
257
+ "importHistory": "导入历史记录",
258
+ "importInProgressGeneric": "正在导入...",
259
+ "importInProgressPercent": "导入中({{percent}}完成)……",
260
+ "importOptions": "导入选项",
261
+ "importProgress": "导入进度",
262
+ "imported": "已导入",
263
+ "importing": "导入中...",
264
+ "includeStreamDetails": "包含详细的流数据(编解码器、比特率、分辨率)",
265
+ "includeStreamDetailsHelp": "导入额外的流信息。可能会大大增加导入时间。",
266
+ "jellyfinEmby": "Jellyfin/Emby (Jellystat)",
267
+ "jellystat": "从 Jellystat 导入",
268
+ "noServers": "没有服务器连接",
269
+ "noServersHint": "您需要至少一个连接的服务器来导入数据。",
270
+ "overlapSkipped": "",
271
+ "overwriteFriendlyNames": "用Tautulli名称覆盖现有的友好名称",
272
+ "overwriteFriendlyNamesHelp": "Tracearr 中的现有身份名将被Tautulli的友好名称所取代。",
273
+ "page": "页面",
274
+ "playbackReporting": "播放报告插件",
275
+ "playbackReportingDesc": "直接从安装在您的 Jellyfin 或 Emby 服务器上的 Playback 报告插件导入历史记录。无需导出文件。",
276
+ "pleaseEnterDetails": "请输入Tautulli URL 和 API 密钥",
277
+ "pleaseSelectJsonFile": "请选择一个 JSON 文件",
278
+ "plex": "Plex(Tautulli)",
279
+ "pluginFound": "",
280
+ "pluginNotInstalled": "播放报告插件没有安装在此服务器上,或者Tracearr 无法连接它。 从服务器的插件目录安装它来开始录制历史,或使用下面的 Jellystat 导入。",
281
+ "processed": "已处理",
282
+ "recordsMayBeSkipped": "记录可以在下列情况下跳过:",
283
+ "selectJellyfinServer": "选择 Jellyfin 或 Emby 服务器",
284
+ "selectPlexServer": "选择Plex服务器",
285
+ "selectTargetServer": "选择目标服务器",
286
+ "serverTimezone": "服务器时区",
287
+ "serverTimezoneHelp": "必须匹配在您的媒体服务器主机上配置的时区,而不是您的浏览器的时区。播放报告时间戳保存在本地服务器时间。",
288
+ "skipDuplicate": "复制会话 — 会话已经导入。",
289
+ "skipDuplicatePlugin": "重复记录 - 已经直接导入或通过Jellstat导入相同的插件数据早期到达。",
290
+ "skipInProgress": "正在进行中的会话 — — 跳过没有参考ID的活动/不完整的会议。",
291
+ "skipOverlap": "重叠记录 - 时间戳属于此服务器已经追踪过的时间段内。启用全范围导入以包含它。",
292
+ "skipSyncHint": "如果许多记录被跳过了,请确保您最近已经在“设置 -> 服务器”中同步了您的服务器。",
293
+ "skipUserNotFoundJellyfin": "找不到用户 — — Jellyfin/Emby用户在 Tracearr。首先同步您的服务器以添加所有用户。",
294
+ "skipUserNotFoundPlex": "找不到用户 — Plex用户在 Trackearr 中不存在。首先同步您的服务器以添加所有用户。",
295
+ "skipped": "已跳过",
296
+ "startImport": "开始导入",
297
+ "startingImport": "正在开始导入...",
298
+ "step1": "1",
299
+ "step2": "2",
300
+ "targetServer": "目标服务器",
301
+ "tautulli": "从 Tautulli 导入",
302
+ "tautulliUrl": "Tautulli URL",
303
+ "tautulliUrlHelp": "您的Tautulli实例的 URL。",
304
+ "tautulliUrlPlaceholder": "http://localhost:8188",
305
+ "testing": "测试中……",
306
+ "testingConnection": "测试连接...",
307
+ "title": "导入数据",
308
+ "updateExistingRecords": "更新现有记录的流详细信息",
309
+ "updateExistingRecordsHelp": "以前导入的记录将使用流质量数据更新。",
310
+ "uploadJellystatBackup": "上传 Jellystat 备份",
311
+ "uploadingBackup": "正在上传备份文件..."
312
+ },
313
+ "ipWarning": {
314
+ "acknowledge": "知道了",
315
+ "message": "所有用户似乎使用了相同的 IP 地址或本地网络 IP。这可能会影响到基于规则的位置或IP地址逻辑。"
316
+ },
317
+ "jobs": {
318
+ "backfill": "回填表",
319
+ "cleanup": "清理",
320
+ "delayed": "延迟",
321
+ "description": "",
322
+ "errors": "错误",
323
+ "jobHistory": "任务历史",
324
+ "jobHistoryDesc": "最近执行维护任务",
325
+ "lastJobCompleted": "上次任务成功完成",
326
+ "lastJobFailed": "上次作业失败",
327
+ "mayTakeAWhile": "这可能需要一些时间",
328
+ "mayTakeAWhileDesc": "这个任务可能需要几分钟才能完成,取决于您的库的大小。",
329
+ "normalization": "正则化",
330
+ "processed": "已处理",
331
+ "queued": "队列中",
332
+ "runConfirm": "运行{{name}}?",
333
+ "runJob": "运行作业",
334
+ "running": "正在运行",
335
+ "runningState": "正在运行",
336
+ "startJob": "开始作业",
337
+ "title": "维护作业",
338
+ "unchanged": "未修改",
339
+ "updated": "已更新",
340
+ "waiting": "等待中"
341
+ },
342
+ "mobile": {
343
+ "addDevice": "添加设备",
344
+ "connectedOn": "",
345
+ "copyToken": "复制令牌",
346
+ "deviceName": "设备名称",
347
+ "deviceNamePlaceholder": "例如:iPhone 15",
348
+ "devicesConnected": "{{current}}of {{max}}已连接设备",
349
+ "disable": "禁用",
350
+ "disableMobileAccess": "禁用移动访问权限",
351
+ "disableMobileAccessConfirm": "这将断开所有移动设备并撤销所有会话。您可以稍后重新启用移动访问。",
352
+ "done": "完成",
353
+ "downloadOnAppStore": "在 App Store 下载",
354
+ "enableMobileAccess": "启用移动访问权限",
355
+ "enabling": "启用...",
356
+ "expiresIn": "过期时间{{time}}",
357
+ "externalUrlBanner": "使用反向代理或远程访问吗?请设置您的",
358
+ "externalUrlBannerLink": "外部 URL",
359
+ "externalUrlBannerSuffix": "所以移动应用可以连接到您的服务器。",
360
+ "externalUrlRequired": "必须在常规设置中配置外部URL才能使移动配对正常工作。",
361
+ "failedToGenerateToken": "生成令牌失败",
362
+ "generateToken": "生成配对令牌",
363
+ "getOnGooglePlay": "在 Google Play 上获取",
364
+ "lastSeen": "",
365
+ "mobileAccessDisabled": "移动访问已禁用",
366
+ "mobileAccessDisabledDesc": "启用移动访问权限以允许 Tracearr 移动应用程序连接到您的服务器。",
367
+ "noDevices": "没有设备连接",
368
+ "noDevicesDesc": "",
369
+ "oneTimePairToken": "一次性配对令牌",
370
+ "pairDevice": "设备配对",
371
+ "pairNewDevice": "配对新设备",
372
+ "pairNewDeviceDesc": "用 Tracearr 移动应用程序扫描二维码,或手动输入令牌。",
373
+ "pendingTokens": "{{count}}待处理的配的令牌",
374
+ "removeDevice": "移除设备",
375
+ "removeDeviceConfirm": "您确定要移除吗{{deviceName}}?该设备需要重新配对才能重新连接。",
376
+ "renameDevice": "重命名设备",
377
+ "renameDeviceDesc": "在列表中输入识别此设备的名称。",
378
+ "revokeAll": "注销所有会话",
379
+ "revokeAllConfirm": "这将断开所有移动设备。他们需要重新配对才能重新连接。",
380
+ "revokeAllSessions": "全部取消",
381
+ "scanQrCode": "扫描二维码",
382
+ "title": "移动 App",
383
+ "tokenExpires": "令牌在...过期{{time}}",
384
+ "tokenExpiryNote": "此令牌在5分钟后过期,只能使用一次。"
385
+ },
386
+ "nav": {
387
+ "descriptions": {
388
+ "api": "",
389
+ "appearance": "",
390
+ "backup": "",
391
+ "behavior": "",
392
+ "connections": "",
393
+ "destinations": "",
394
+ "email": "",
395
+ "guest": "",
396
+ "import": "",
397
+ "jobs": "",
398
+ "locale": "",
399
+ "mobile": "",
400
+ "newsletters": "",
401
+ "plexAccounts": "",
402
+ "posters": "",
403
+ "remote": ""
404
+ },
405
+ "groups": {
406
+ "access": "",
407
+ "data": "",
408
+ "general": "",
409
+ "notifications": "",
410
+ "servers": ""
411
+ },
412
+ "itemLabel": "",
413
+ "label": "",
414
+ "sections": {
415
+ "api": "",
416
+ "appearance": "",
417
+ "backup": "",
418
+ "behavior": "",
419
+ "connections": "",
420
+ "destinations": "",
421
+ "email": "",
422
+ "guest": "",
423
+ "import": "",
424
+ "jobs": "",
425
+ "locale": "",
426
+ "mobile": "",
427
+ "newsletters": "",
428
+ "plexAccounts": "",
429
+ "posters": "",
430
+ "remote": ""
431
+ },
432
+ "selectLabel": ""
433
+ },
434
+ "newsletters": {
435
+ "addEmailDestination": "",
436
+ "copyOf": "",
437
+ "counts": {
438
+ "albums_one": "",
439
+ "albums_other": "",
440
+ "movies_one": "",
441
+ "movies_other": "",
442
+ "shows_one": "",
443
+ "shows_other": "",
444
+ "watched_one": "",
445
+ "watched_other": ""
446
+ },
447
+ "deleteDescription": "",
448
+ "deleteTitle": "",
449
+ "duplicate": "",
450
+ "editor": {
451
+ "actions": {
452
+ "more": "",
453
+ "preview": "",
454
+ "send": "",
455
+ "sendHint": "",
456
+ "test": "",
457
+ "testHint": ""
458
+ },
459
+ "allLibraries": "",
460
+ "allServers": "",
461
+ "basics": "",
462
+ "clear": "",
463
+ "content": "",
464
+ "cron": "",
465
+ "cronHint": "",
466
+ "dayOfMonth": "",
467
+ "dayOfMonthHelp": "",
468
+ "dayOfWeek": "",
469
+ "days": "",
470
+ "delivery": {
471
+ "destination": "",
472
+ "destinationHelp": "",
473
+ "hostedNeedsUrl": "",
474
+ "imageMode": "",
475
+ "modeHelp": {
476
+ "hosted": "",
477
+ "inline": "",
478
+ "none": ""
479
+ },
480
+ "modePreviewHint": "",
481
+ "modes": {
482
+ "hosted": "",
483
+ "inline": "",
484
+ "none": ""
485
+ },
486
+ "noDestination": "",
487
+ "pickDestination": "",
488
+ "skipWhenEmpty": "",
489
+ "skipWhenEmptyHelp": "",
490
+ "title": ""
491
+ },
492
+ "dstNote": "",
493
+ "enabledHelp": "",
494
+ "fixFirst": "",
495
+ "headerSummary": "",
496
+ "historyNeedsSave": "",
497
+ "intro": "",
498
+ "introPlaceholder": "",
499
+ "kinds": {
500
+ "cron": "",
501
+ "daily": "",
502
+ "monthly": "",
503
+ "weekly": ""
504
+ },
505
+ "libraries": "",
506
+ "librariesHelp": "",
507
+ "librariesSelected": "",
508
+ "links": {
509
+ "tracearr": "",
510
+ "tracearrNote": ""
511
+ },
512
+ "message": "",
513
+ "name": "",
514
+ "nameHelp": "",
515
+ "newTitle": "",
516
+ "nextRun": "",
517
+ "nextRunPending": "",
518
+ "noLibraries": "",
519
+ "noServers": "",
520
+ "notFound": "",
521
+ "outro": "",
522
+ "outroPlaceholder": "",
523
+ "placeholders": {
524
+ "end_date": "",
525
+ "item_count": "",
526
+ "server_name": "",
527
+ "start_date": ""
528
+ },
529
+ "preview": {
530
+ "countsListed": {
531
+ "albums": "",
532
+ "movies": "",
533
+ "shows": ""
534
+ },
535
+ "draft": "",
536
+ "images": "",
537
+ "imagesBlocked": "",
538
+ "imagesBlockedNote": "",
539
+ "imagesOn": "",
540
+ "linksNote": "",
541
+ "recipients": "",
542
+ "subjectLabel": "",
543
+ "title": "",
544
+ "variantTab": "",
545
+ "variants": "",
546
+ "width": "",
547
+ "widths": {
548
+ "desktop": "",
549
+ "phone": ""
550
+ },
551
+ "window": "",
552
+ "windowSince": ""
553
+ },
554
+ "previewVariant_one": "",
555
+ "previewVariant_other": "",
556
+ "readiness": {
557
+ "destination": "",
558
+ "destinationError": "",
559
+ "destinationFail": "",
560
+ "destinationUnknown": "",
561
+ "dns": "",
562
+ "dnsLink": "",
563
+ "emptyVariant": "",
564
+ "externalUrl": "",
565
+ "externalUrlFail": "",
566
+ "externalUrlNotHttps": "",
567
+ "fixDestination": "",
568
+ "fixExternalUrl": "",
569
+ "fixRecipients": "",
570
+ "fromDomain": "",
571
+ "fromDomainFail": "",
572
+ "fromDomainUnknown": "",
573
+ "intro": "",
574
+ "noPublicUrl": "",
575
+ "privatePublicUrl": "",
576
+ "recipientsFail": "",
577
+ "recipientsLoadFailed": "",
578
+ "recipientsUnknown": "",
579
+ "recipients_one": "",
580
+ "recipients_other": "",
581
+ "serverSettingsLink": "",
582
+ "staleScope": "",
583
+ "title": "",
584
+ "variantsLoadFailed": ""
585
+ },
586
+ "recipients": {
587
+ "account": "",
588
+ "addAddress": "",
589
+ "addressLabel": "",
590
+ "badAddress": "",
591
+ "contactEmailFor": "",
592
+ "emptyDescription": "",
593
+ "emptyTitle": "",
594
+ "exclude": "",
595
+ "excludeAction": "",
596
+ "excludedAfterSave": "",
597
+ "excludedCount": "",
598
+ "excludedHelp": "",
599
+ "extraAddress": "",
600
+ "extraAddresses": "",
601
+ "extraAddressesHelp": "",
602
+ "groupsNote": "",
603
+ "include": "",
604
+ "includeAction": "",
605
+ "includedAfterSave": "",
606
+ "loadFailed": "",
607
+ "members": "",
608
+ "membersHelp": "",
609
+ "membersOff": "",
610
+ "membersOffSuppressed": "",
611
+ "nameLabel": "",
612
+ "namePlaceholder": "",
613
+ "noAddress": "",
614
+ "noAddressHelp": "",
615
+ "openUserPage": "",
616
+ "ownerNote": "",
617
+ "reasons": {
618
+ "banned": "",
619
+ "pending": ""
620
+ },
621
+ "removeAddress": "",
622
+ "saveEmail": "",
623
+ "saveFirst": "",
624
+ "saveFirstHelp": "",
625
+ "staleScope": "",
626
+ "suppressed": "",
627
+ "suppressedHeading": "",
628
+ "suppressedHelp": "",
629
+ "title": "",
630
+ "unknownMember": "",
631
+ "willReceive": ""
632
+ },
633
+ "removeLibrary": "",
634
+ "save": "",
635
+ "saving": "",
636
+ "schedule": "",
637
+ "scheduleKind": "",
638
+ "searchLibraries": "",
639
+ "searchServers": "",
640
+ "sections": {
641
+ "description": "",
642
+ "labels": {
643
+ "mostWatched": "",
644
+ "movies": "",
645
+ "music": "",
646
+ "seasons": "",
647
+ "shows": ""
648
+ },
649
+ "legend": "",
650
+ "mostWatched": "",
651
+ "mostWatchedHelp": "",
652
+ "movies": "",
653
+ "music": "",
654
+ "musicHelp": "",
655
+ "shows": "",
656
+ "the": "",
657
+ "units": {
658
+ "albums": "",
659
+ "mostPlayed": "",
660
+ "movies": "",
661
+ "seasonsEach": "",
662
+ "shows": ""
663
+ },
664
+ "upTo": ""
665
+ },
666
+ "send": {
667
+ "confirm": "",
668
+ "nobody": "",
669
+ "previewing": "",
670
+ "sending": "",
671
+ "summary": "",
672
+ "title": "",
673
+ "trimmed_one": "",
674
+ "trimmed_other": ""
675
+ },
676
+ "sendNeedsSave": "",
677
+ "senderName": "",
678
+ "senderNameHelp": "",
679
+ "senderNameRequiredMulti": "",
680
+ "servers": "",
681
+ "serversHelp": "",
682
+ "serversSelected": "",
683
+ "subject": "",
684
+ "subjectHelp": "",
685
+ "tabs": {
686
+ "edit": "",
687
+ "history": ""
688
+ },
689
+ "test": {
690
+ "address": "",
691
+ "description": "",
692
+ "send": "",
693
+ "title": "",
694
+ "variant": ""
695
+ },
696
+ "time": "",
697
+ "timezone": "",
698
+ "timezoneHelp": "",
699
+ "turnOnNow": "",
700
+ "unknownLibrary": "",
701
+ "unsaved": "",
702
+ "variantHeading": "",
703
+ "variantsNote": "",
704
+ "windowHelp": {
705
+ "fixed": "",
706
+ "since_last_send": ""
707
+ },
708
+ "windowKind": "",
709
+ "windowMax": "",
710
+ "windowSentence": {
711
+ "fallback": "",
712
+ "fallbackLabel": "",
713
+ "fixed": "",
714
+ "fixedAfter": "",
715
+ "fixedLabel": ""
716
+ },
717
+ "windows": {
718
+ "fixed": "",
719
+ "since_last_send": ""
720
+ }
721
+ },
722
+ "empty": "",
723
+ "emptyDescription": "",
724
+ "enabled": "",
725
+ "history": {
726
+ "attempts": "",
727
+ "empty": "",
728
+ "emptyDescription": "",
729
+ "finished": "",
730
+ "loadFailed": "",
731
+ "open": "",
732
+ "openSnapshot": "",
733
+ "openVariantSnapshot": "",
734
+ "page": "",
735
+ "pruned": "",
736
+ "recipients": "",
737
+ "recipientsEmpty": "",
738
+ "retryFailed": "",
739
+ "sendTitle": "",
740
+ "snapshotTitle": "",
741
+ "status": {
742
+ "failed": "",
743
+ "queued": "",
744
+ "sent": "",
745
+ "suppressed": "",
746
+ "unknown": ""
747
+ },
748
+ "trigger": {
749
+ "manual": "",
750
+ "schedule": "",
751
+ "test": ""
752
+ },
753
+ "unknownHelp": "",
754
+ "variant": "",
755
+ "variantEmpty": "",
756
+ "window": ""
757
+ },
758
+ "lastSend": "",
759
+ "neverSent": "",
760
+ "new": "",
761
+ "nextRun": "",
762
+ "noDestinationDescription": "",
763
+ "noDestinationHint": "",
764
+ "noDestinationTitle": "",
765
+ "noNextRun": "",
766
+ "outcome": {
767
+ "failed": "",
768
+ "partial": "",
769
+ "rendering": "",
770
+ "sending": "",
771
+ "sent": "",
772
+ "skipped_empty": ""
773
+ },
774
+ "ownerOnly": "",
775
+ "richText": {
776
+ "bold": "",
777
+ "bulletList": "",
778
+ "counter": "",
779
+ "italic": "",
780
+ "link": "",
781
+ "linkApply": "",
782
+ "linkHref": ""
783
+ },
784
+ "rowActions": "",
785
+ "schedule": {
786
+ "cron": "",
787
+ "daily": "",
788
+ "inZone": "",
789
+ "monthly": "",
790
+ "weekly": ""
791
+ },
792
+ "sendNow": ""
793
+ },
794
+ "plex": {
795
+ "chooseServer": "选择要监视的Plex媒体服务器",
796
+ "selectServer": "选择服务器",
797
+ "signInWithPlex": "使用 Plex 登录",
798
+ "signUpWithPlex": "使用Plex注册"
799
+ },
800
+ "serverHealth": {
801
+ "multipleUnreachable": "{{count}} 服务器无法访问:{{serverNames}}",
802
+ "unreachable": "{{serverName}} 无法访问"
803
+ },
804
+ "servers": {
805
+ "addServer": "添加服务器",
806
+ "addServerDialogDescOther": "连接一个 Jellyfin 或 Emby 服务器。",
807
+ "addServerDialogDescPlex": "从您链接的帐户中选择一个 Plex服务器。",
808
+ "added": "已添加{{date}}",
809
+ "allFieldsRequired": "所有字段都是必需的",
810
+ "allServersConnected": "所有服务器已连接",
811
+ "allServersConnectedDesc": "此帐户的所有服务器已经连接。",
812
+ "apiKeyHelp": "在 API 密钥或高级设置下您的媒体服务器的仪表盘中找到。",
813
+ "apiKeyHelpEmby": "在 Emby Server -> API 密钥中查找这个内容",
814
+ "apiKeyHelpJellyfin": "在 Jellyfin 仪表盘查找这个看板 → API 密钥",
815
+ "apiKeyPlaceholder": "输入您的 API 密钥",
816
+ "checkingConnection": "检查连接中…",
817
+ "chooseAccount": "选择一个帐户...",
818
+ "connectServer": "连接服务器",
819
+ "connecting": "正在连接……",
820
+ "connectionFailed": "连接失败",
821
+ "connectionSuccess": "连接成功",
822
+ "description": "管理您已连接的 Plex、Jellyfin 和 Emby 服务器",
146
823
  "discoveringConnections": "正在发现连接...",
824
+ "discoveringServers": "发现可用的Plex服务器...",
825
+ "editServer": "编辑服务器",
826
+ "editServerDesc": "更新服务器名称或连接 URL。",
827
+ "loadingAccounts": "正在加载链接的Plex帐户...",
828
+ "noPlexAccountsLinked": "没有关联的Plex账户",
829
+ "noPlexAccountsLinkedHint": "链接上面的Plex帐户,然后返回添加服务器。",
830
+ "noServersConnected": "未连接服务器",
831
+ "noServersConnectedHint": "点击“添加服务器”连接一个 Jellyfin 或 Emby 服务器",
147
832
  "plexAccount": "Plex账户",
148
- "serverUrlHelpJellyfin": "您的 Jellyfin 服务器可以访问的 URL",
149
- "serverUrlHelpEmby": "您的 Emby 服务器可以访问的 URL",
150
- "apiKeyHelpJellyfin": "在 Jellyfin 仪表盘查找这个看板 → API 密钥",
151
- "apiKeyHelpEmby": "在 Emby Server -> API 密钥中查找这个内容",
152
833
  "plexServerPlaceholder": "我的Plex服务器",
153
834
  "plexServerUrlPlaceholder": "http://192.168.1/100:32400",
154
- "updateHint": "或者点击下面的更新,只保存名称更改。",
155
- "added": "已添加{{date}}",
156
- "realtimeActive": "实时更新已启用",
157
- "pollingMode": "投票",
158
- "setupRealtime": "设置实时更新",
159
- "realtimeError": "",
160
- "checkingConnection": "检查连接中…",
161
- "pluginVersion": "插件{{version}}",
162
835
  "pluginUpdateAvailable": "\"插件更新可用\"",
836
+ "pluginVersion": "插件{{version}}",
837
+ "pollingMode": "投票",
838
+ "posterSource": {
839
+ "automatic": "自动(最近一次)",
840
+ "description": "当一个标题在多个服务器上时,使用此服务器的海报。 如果没有,我们将回到最近添加的副本。",
841
+ "emptyHint": "",
842
+ "label": "首选海报来源",
843
+ "ownerOnly": "",
844
+ "title": "海报首选项",
845
+ "titleDesc": "选择在多个服务器上存在标题时显示哪个服务器的海报"
846
+ },
847
+ "publicUrl": "",
848
+ "publicUrlHint": "",
849
+ "realtimeActive": "实时更新已启用",
163
850
  "realtimeDialog": {
164
- "title": "启用实时更新",
165
- "updateTitle": "更新 Tracearr SSE 插件",
166
- "jellyfinDescription": "安装 Tracearr SSE 插件以即时更新会话,而不必等待下一次调查。",
167
- "embyDescription": "安装 Tracearr SSE 插件以即时更新会话,而不必等待下一次调查。",
168
- "jellyfinUpdateDescription": "有一个更新的插件版本可用。打开您的 Jellyfin 控制面板,进入插件目录,更新Tracearr SSE,然后重启 Jellyfin。",
169
- "embyUpdateDescription": "更新插件版本可用。下载最新版本的zip,替换你的 Emby 插件文件夹中的DLL,并重启 Emby。",
170
- "repositoryUrl": "存储库URL",
171
- "copyUrl": "复制 URL",
172
- "jellyfinRepoUrl": "https://raw.githubusercontent.com/Tracearr/Media-SSE/main/manifest.json",
173
- "embyReleasesUrl": "https://github.com/Tracearr/Media-Server-SSE/releases",
174
- "openReleases": "打开发布页面",
175
851
  "autoDetectNote": "安装插件后重启 Jellyfin 或 Emby;需要重启。追踪器本身不需要重启并自动选择插件。",
176
852
  "close": "关闭",
853
+ "copyUrl": "复制 URL",
854
+ "embyDescription": "安装 Tracearr SSE 插件以即时更新会话,而不必等待下一次调查。",
855
+ "embyReleasesUrl": "https://github.com/Tracearr/Media-Server-SSE/releases",
856
+ "embyUpdateDescription": "更新插件版本可用。下载最新版本的zip,替换你的 Emby 插件文件夹中的DLL,并重启 Emby。",
177
857
  "issueBlocked": "服务器报告插件已安装和激活,但Tracearr 从端点获取404个。 通常原因是反向代理阻止路径。",
858
+ "issueMalfunctioned": "服务器报告插件加载失败。更新插件或媒体服务器通常清除它。",
178
859
  "issueRestartRequired": "插件已安装,但媒体服务器需要重新启动才能激活。",
179
- "issueMalfunctioned": "服务器报告插件加载失败。更新插件或媒体服务器通常清除它。"
180
- },
181
- "posterSource": {
182
- "title": "海报首选项",
183
- "titleDesc": "选择在多个服务器上存在标题时显示哪个服务器的海报",
184
- "label": "首选海报来源",
185
- "description": "当一个标题在多个服务器上时,使用此服务器的海报。 如果没有,我们将回到最近添加的副本。",
186
- "automatic": "自动(最近一次)",
187
- "emptyHint": ""
860
+ "jellyfinDescription": "安装 Tracearr SSE 插件以即时更新会话,而不必等待下一次调查。",
861
+ "jellyfinRepoUrl": "https://raw.githubusercontent.com/Tracearr/Media-SSE/main/manifest.json",
862
+ "jellyfinUpdateDescription": "有一个更新的插件版本可用。打开您的 Jellyfin 控制面板,进入插件目录,更新Tracearr SSE,然后重启 Jellyfin。",
863
+ "openReleases": "打开发布页面",
864
+ "repositoryUrl": "存储库URL",
865
+ "title": "启用实时更新",
866
+ "updateTitle": "更新 Tracearr SSE 插件"
188
867
  },
189
- "version": {
190
- "installed": "",
191
- "upToDate": "已是最新",
192
- "updateAvailable": ""
193
- }
194
- },
195
- "mobile": {
196
- "title": "移动 App",
197
- "pairDevice": "设备配对",
198
- "connectedDevices": "已连接的设备",
199
- "generateToken": "生成配对令牌",
200
- "scanQrCode": "扫描二维码",
201
- "tokenExpires": "令牌在...过期{{time}}",
202
- "noDevices": "没有设备连接",
203
- "revokeAll": "注销所有会话",
204
- "getTheApp": "获取应用程序",
205
- "getTheAppDesc": "下载 iOS 或 Android 的 Tracearr 移动应用程序",
206
- "getOnGooglePlay": "在 Google Play 上获取",
207
- "downloadOnAppStore": "在 App Store 下载",
208
- "pairYourDevice": "配对您的设备",
209
- "pairYourDeviceDesc": "",
210
- "externalUrlRequired": "必须在常规设置中配置外部URL才能使移动配对正常工作。",
211
- "mobileAccessDisabled": "移动访问已禁用",
212
- "mobileAccessDisabledDesc": "启用移动访问权限以允许 Tracearr 移动应用程序连接到您的服务器。",
213
- "enableMobileAccess": "启用移动访问权限",
214
- "enabling": "启用...",
215
- "devicesConnected": "{{current}}of {{max}}已连接设备",
216
- "pendingTokens": "{{count}}待处理的配的令牌",
217
- "addDevice": "添加设备",
218
- "disableMobileAccess": "禁用移动访问权限",
219
- "connectedDevicesDesc": "{{count}}已配对到您的服务器的设备",
220
- "revokeAllSessions": "全部取消",
221
- "pairNewDevice": "配对新设备",
222
- "pairNewDeviceDesc": "用 Tracearr 移动应用程序扫描二维码,或手动输入令牌。",
223
- "expiresIn": "过期时间{{time}}",
224
- "oneTimePairToken": "一次性配对令牌",
225
- "copyToken": "复制令牌",
226
- "tokenExpiryNote": "此令牌在5分钟后过期,只能使用一次。",
227
- "done": "完成",
228
- "disableMobileAccessConfirm": "这将断开所有移动设备并撤销所有会话。您可以稍后重新启用移动访问。",
229
- "disable": "禁用",
230
- "revokeAllConfirm": "这将断开所有移动设备。他们需要重新配对才能重新连接。",
231
- "renameDevice": "重命名设备",
232
- "renameDeviceDesc": "在列表中输入识别此设备的名称。",
233
- "deviceName": "设备名称",
234
- "deviceNamePlaceholder": "例如:iPhone 15",
235
- "removeDevice": "移除设备",
236
- "failedToGenerateToken": "生成令牌失败",
237
- "removeDeviceConfirm": "您确定要移除吗{{deviceName}}?该设备需要重新配对才能重新连接。",
238
- "externalUrlBanner": "使用反向代理或远程访问吗?请设置您的",
239
- "externalUrlBannerLink": "外部 URL",
240
- "externalUrlBannerSuffix": "所以移动应用可以连接到您的服务器。"
868
+ "realtimeError": "",
869
+ "removeServer": "删除服务器",
870
+ "removeServerConfirm": "您确定要删除此服务器吗? 所有相关会话数据将被保留,但您将无法从此服务器监视新会话。",
871
+ "reorder": "",
872
+ "selectAccountHelp": "选择要从哪个Plex账户中发现服务器。",
873
+ "selectPlexAccount": "选择Plex账户",
874
+ "serverColor": "服务器颜色",
875
+ "serverColorDesc": "在多服务器视图中用于视觉属性",
876
+ "serverName": "服务器名称",
877
+ "serverNamePlaceholder": "我的媒体服务器",
878
+ "serverType": "服务器类型",
879
+ "serverUrl": "服务器URL",
880
+ "serverUrlHelp": "直接链接到您的 Jellyfin 或 Emby 服务器。使用IP:端口获取最佳可靠性。",
881
+ "serverUrlHelpEmby": "您的 Emby 服务器可以访问的 URL",
882
+ "serverUrlHelpJellyfin": "您的 Jellyfin 服务器可以访问的 URL",
883
+ "serverUrlPlaceholder": "http://192.168.1/100:8096",
884
+ "setupRealtime": "设置实时更新",
885
+ "syncInterval": "同步间隔",
886
+ "testConnection": "测试连接",
887
+ "title": "连接的服务器",
888
+ "updateHint": "或者点击下面的更新,只保存名称更改。",
889
+ "updating": "更新中……",
890
+ "version": {
891
+ "installed": "",
892
+ "upToDate": "已是最新",
893
+ "updateAvailable": ""
894
+ }
895
+ },
896
+ "shared": {
897
+ "timezone": {
898
+ "empty": "",
899
+ "other": "",
900
+ "placeholder": "",
901
+ "search": ""
902
+ }
241
903
  },
242
904
  "tailscale": {
243
- "title": "Tailscale VPN",
244
- "description": "",
245
- "notAvailable": "未找到 Tailscale 二进制文件。此功能仅在运行官方 Docker 镜像时可用。",
246
- "disabledDescription": "启用 Tailscale 将 Tracearr 放置在您的私人 tailnet 上。无需端口转发或反向代理。",
247
- "hostnameLabel": "设备主机名",
248
- "hostnameHint": "此设备在您的尾网中的可选自定义名称。仅限字母、数字和连字符。",
249
- "enable": "启用 Tailscale",
250
- "disable": "禁用 Tailscale",
251
- "starting": "启动 Tailscale……",
252
- "stopping": "停止 Tailscale……",
253
- "awaitingAuth": "等待验证……",
254
905
  "authorize": "在 Tailscale 中授权",
906
+ "awaitingAuth": "等待验证……",
255
907
  "connected": "Tailscale 已连接。您的 Tracearr 实例在 tailnet 上可用。",
256
- "hostname": "主机名",
908
+ "description": "",
909
+ "disable": "禁用 Tailscale",
910
+ "disableConfirmDescription": "这将使 Tracearr 与您的 tailnet 断开连接。您可以在不重新授权的情况下重新启用。",
911
+ "disableConfirmTitle": "禁用 Tailscale?",
912
+ "disabledDescription": "启用 Tailscale 将 Tracearr 放置在您的私人 tailnet 上。无需端口转发或反向代理。",
257
913
  "dnsName": "DNS 名称",
258
- "tailnetUrl": "URL",
259
- "showLogs": "显示日志",
260
- "hideLogs": "隐藏日志",
261
- "noLogs": "无可用日志输出。",
914
+ "enable": "启用 Tailscale",
262
915
  "exitNodeNone": "无",
263
916
  "exitNodeOffline": "(离线)",
264
- "unknownError": "发生未知错误。",
265
- "disableConfirmTitle": "禁用 Tailscale?",
266
- "disableConfirmDescription": "这将使 Tracearr 与您的 tailnet 断开连接。您可以在不重新授权的情况下重新启用。",
267
- "resetConfirmTitle": "重置 Tailscale?",
917
+ "hideLogs": "隐藏日志",
918
+ "hostname": "主机名",
919
+ "hostnameHint": "此设备在您的尾网中的可选自定义名称。仅限字母、数字和连字符。",
920
+ "hostnameLabel": "设备主机名",
921
+ "noLogs": "无可用日志输出。",
922
+ "notAvailable": "未找到 Tailscale 二进制文件。此功能仅在运行官方 Docker 镜像时可用。",
268
923
  "resetConfirmDescription": "这将使 Tracearr 与您的 tailnet 断开连接并移除设备身份。如果您再次启用它,您需要重新授权。",
924
+ "resetConfirmTitle": "重置 Tailscale?",
925
+ "showLogs": "显示日志",
926
+ "starting": "启动 Tailscale……",
927
+ "stopping": "停止 Tailscale……",
928
+ "tailnetUrl": "URL",
929
+ "title": "Tailscale VPN",
269
930
  "toast": {
931
+ "disableFailed": "无法禁用 Tailscale",
270
932
  "disabled": "Tailscale 已被禁用。",
271
933
  "enableFailed": "无法启用 Tailscale",
272
- "disableFailed": "无法禁用 Tailscale",
273
- "reset": "Tailscale 已被重置。",
274
- "resetFailed": "无法重置 Tailscale",
934
+ "exitNodeFailed": "无法设置出口节点",
275
935
  "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": "",
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": "Tautulli URL",
334
- "tautulliUrlPlaceholder": "http://localhost:8188",
335
- "tautulliUrlHelp": "您的Tautulli实例的 URL。",
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(Tautulli)",
367
- "jellyfinEmby": "Jellyfin/Emby (Jellystat)",
368
- "step1": "1",
369
- "step2": "2",
370
- "apiKeyPlaceholder": "您的Tautulli API 密钥",
371
- "skipUserNotFoundPlex": "找不到用户 — Plex用户在 Trackearr 中不存在。首先同步您的服务器以添加所有用户。",
372
- "skipDuplicate": "复制会话 — 会话已经导入。",
373
- "skipInProgress": "正在进行中的会话 — — 跳过没有参考ID的活动/不完整的会议。",
374
- "skipUserNotFoundJellyfin": "找不到用户 — — Jellyfin/Emby用户在 Tracearr。首先同步您的服务器以添加所有用户。",
375
- "skipSyncHint": "如果许多记录被跳过了,请确保您最近已经在“设置 -> 服务器”中同步了您的服务器。",
376
- "importInProgressPercent": "导入中({{percent}}完成)……",
377
- "importInProgressGeneric": "正在导入...",
378
- "startingImport": "正在开始导入...",
379
- "connectedFound": "已连接!找到{{users}}用户和{{records}}历史记录。",
380
- "playbackReporting": "播放报告插件",
381
- "playbackReportingDesc": "直接从安装在您的 Jellyfin 或 Emby 服务器上的 Playback 报告插件导入历史记录。无需导出文件。",
382
- "checkPlugin": "检查插件",
383
- "checkingPlugin": "检查中……",
384
- "pluginFound": "",
385
- "pluginNotInstalled": "播放报告插件没有安装在此服务器上,或者Tracearr 无法连接它。 从服务器的插件目录安装它来开始录制历史,或使用下面的 Jellystat 导入。",
386
- "serverTimezone": "服务器时区",
387
- "serverTimezoneHelp": "必须匹配在您的媒体服务器主机上配置的时区,而不是您的浏览器的时区。播放报告时间戳保存在本地服务器时间。",
388
- "importFullRange": "导入完整历史",
389
- "importFullRangeHelp": "默认情况下,只存在于 Tracearr 最早跟踪的服务器会话的历史记录,所以已经记录的会话永远不会重复。 如果您的 Tracearr 历史存在空白,请启用此选项以导入插件的整个历史记录,不管重叠。纯文本仍然会被跳过。",
390
- "overlapSkipped": "",
391
- "duplicates": "",
392
- "skipOverlap": "重叠记录 - 时间戳属于此服务器已经追踪过的时间段内。启用全范围导入以包含它。",
393
- "skipDuplicatePlugin": "重复记录 - 已经直接导入或通过Jellstat导入相同的插件数据早期到达。"
394
- },
395
- "plex": {
396
- "signInWithPlex": "使用 Plex 登录",
397
- "signUpWithPlex": "使用Plex注册",
398
- "selectServer": "选择服务器",
399
- "chooseServer": "选择要监视的Plex媒体服务器"
400
- },
401
- "account": {
402
- "createAccount": "创建新账户",
403
- "email": "电子邮件",
404
- "password": "密码",
405
- "displayName": "显示名称",
406
- "createYourAccount": "创建您的账户以开始",
407
- "signInToAccount": "登录到您的帐户",
408
- "useLocalAccount": "使用本地账户"
936
+ "reset": "Tailscale 已被重置。",
937
+ "resetFailed": "无法重置 Tailscale"
938
+ },
939
+ "unknownError": "发生未知错误。"
409
940
  },
941
+ "title": "设置",
410
942
  "update": {
411
- "title": "有可用更新",
412
- "releaseNotes": "更新日志",
413
- "updateCommand": "更新命令",
414
- "pullInstructions": "在拉取后,重新启动您的容器以应用更新。",
415
- "stableRelease": "Stable 版",
416
943
  "betaUpdate": "测试版升级",
417
944
  "newVersion": "新版本",
945
+ "pullInstructions": "在拉取后,重新启动您的容器以应用更新。",
946
+ "releaseNotes": "更新日志",
947
+ "stableRelease": "Stable 版",
948
+ "title": "有可用更新",
949
+ "updateCommand": "更新命令",
418
950
  "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
951
  }
504
952
  }