@adminiumjs/i18n 0.3.38 → 0.3.40

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 (311) hide show
  1. package/dist/a11y-keys.d.ts +1 -1
  2. package/dist/a11y-keys.d.ts.map +1 -1
  3. package/dist/a11y-keys.js +74 -33
  4. package/dist/a11y-keys.js.map +1 -1
  5. package/dist/resources/ar-eg/common.d.ts +118 -109
  6. package/dist/resources/ar-eg/common.d.ts.map +1 -1
  7. package/dist/resources/ar-eg/common.js +119 -110
  8. package/dist/resources/ar-eg/common.js.map +1 -1
  9. package/dist/resources/ar-eg/designer.d.ts +82 -0
  10. package/dist/resources/ar-eg/designer.d.ts.map +1 -1
  11. package/dist/resources/ar-eg/designer.js +86 -4
  12. package/dist/resources/ar-eg/designer.js.map +1 -1
  13. package/dist/resources/ar-eg/email.d.ts +21 -0
  14. package/dist/resources/ar-eg/email.d.ts.map +1 -1
  15. package/dist/resources/ar-eg/email.js +21 -0
  16. package/dist/resources/ar-eg/email.js.map +1 -1
  17. package/dist/resources/ar-eg/files.d.ts +12 -0
  18. package/dist/resources/ar-eg/files.d.ts.map +1 -1
  19. package/dist/resources/ar-eg/files.js +12 -0
  20. package/dist/resources/ar-eg/files.js.map +1 -1
  21. package/dist/resources/ar-eg/mailDoor.d.ts +17 -0
  22. package/dist/resources/ar-eg/mailDoor.d.ts.map +1 -1
  23. package/dist/resources/ar-eg/mailDoor.js +17 -0
  24. package/dist/resources/ar-eg/mailDoor.js.map +1 -1
  25. package/dist/resources/ar-eg/studio.d.ts +83 -0
  26. package/dist/resources/ar-eg/studio.d.ts.map +1 -1
  27. package/dist/resources/ar-eg/studio.js +88 -5
  28. package/dist/resources/ar-eg/studio.js.map +1 -1
  29. package/dist/resources/ar-eg/x.d.ts +107 -0
  30. package/dist/resources/ar-eg/x.d.ts.map +1 -0
  31. package/dist/resources/ar-eg/x.js +107 -0
  32. package/dist/resources/ar-eg/x.js.map +1 -0
  33. package/dist/resources/cs-cz/common.d.ts +118 -109
  34. package/dist/resources/cs-cz/common.d.ts.map +1 -1
  35. package/dist/resources/cs-cz/common.js +119 -110
  36. package/dist/resources/cs-cz/common.js.map +1 -1
  37. package/dist/resources/cs-cz/designer.d.ts +82 -0
  38. package/dist/resources/cs-cz/designer.d.ts.map +1 -1
  39. package/dist/resources/cs-cz/designer.js +86 -4
  40. package/dist/resources/cs-cz/designer.js.map +1 -1
  41. package/dist/resources/cs-cz/email.d.ts +21 -0
  42. package/dist/resources/cs-cz/email.d.ts.map +1 -1
  43. package/dist/resources/cs-cz/email.js +21 -0
  44. package/dist/resources/cs-cz/email.js.map +1 -1
  45. package/dist/resources/cs-cz/files.d.ts +12 -0
  46. package/dist/resources/cs-cz/files.d.ts.map +1 -1
  47. package/dist/resources/cs-cz/files.js +12 -0
  48. package/dist/resources/cs-cz/files.js.map +1 -1
  49. package/dist/resources/cs-cz/mailDoor.d.ts +17 -0
  50. package/dist/resources/cs-cz/mailDoor.d.ts.map +1 -1
  51. package/dist/resources/cs-cz/mailDoor.js +17 -0
  52. package/dist/resources/cs-cz/mailDoor.js.map +1 -1
  53. package/dist/resources/cs-cz/studio.d.ts +83 -0
  54. package/dist/resources/cs-cz/studio.d.ts.map +1 -1
  55. package/dist/resources/cs-cz/studio.js +88 -5
  56. package/dist/resources/cs-cz/studio.js.map +1 -1
  57. package/dist/resources/cs-cz/x.d.ts +107 -0
  58. package/dist/resources/cs-cz/x.d.ts.map +1 -0
  59. package/dist/resources/cs-cz/x.js +107 -0
  60. package/dist/resources/cs-cz/x.js.map +1 -0
  61. package/dist/resources/da-dk/common.d.ts +118 -109
  62. package/dist/resources/da-dk/common.d.ts.map +1 -1
  63. package/dist/resources/da-dk/common.js +119 -110
  64. package/dist/resources/da-dk/common.js.map +1 -1
  65. package/dist/resources/da-dk/designer.d.ts +82 -0
  66. package/dist/resources/da-dk/designer.d.ts.map +1 -1
  67. package/dist/resources/da-dk/designer.js +86 -4
  68. package/dist/resources/da-dk/designer.js.map +1 -1
  69. package/dist/resources/da-dk/email.d.ts +21 -0
  70. package/dist/resources/da-dk/email.d.ts.map +1 -1
  71. package/dist/resources/da-dk/email.js +21 -0
  72. package/dist/resources/da-dk/email.js.map +1 -1
  73. package/dist/resources/da-dk/files.d.ts +12 -0
  74. package/dist/resources/da-dk/files.d.ts.map +1 -1
  75. package/dist/resources/da-dk/files.js +12 -0
  76. package/dist/resources/da-dk/files.js.map +1 -1
  77. package/dist/resources/da-dk/mailDoor.d.ts +17 -0
  78. package/dist/resources/da-dk/mailDoor.d.ts.map +1 -1
  79. package/dist/resources/da-dk/mailDoor.js +17 -0
  80. package/dist/resources/da-dk/mailDoor.js.map +1 -1
  81. package/dist/resources/da-dk/studio.d.ts +83 -0
  82. package/dist/resources/da-dk/studio.d.ts.map +1 -1
  83. package/dist/resources/da-dk/studio.js +88 -5
  84. package/dist/resources/da-dk/studio.js.map +1 -1
  85. package/dist/resources/da-dk/x.d.ts +107 -0
  86. package/dist/resources/da-dk/x.d.ts.map +1 -0
  87. package/dist/resources/da-dk/x.js +107 -0
  88. package/dist/resources/da-dk/x.js.map +1 -0
  89. package/dist/resources/de-de/common.d.ts +118 -109
  90. package/dist/resources/de-de/common.d.ts.map +1 -1
  91. package/dist/resources/de-de/common.js +119 -110
  92. package/dist/resources/de-de/common.js.map +1 -1
  93. package/dist/resources/de-de/designer.d.ts +82 -0
  94. package/dist/resources/de-de/designer.d.ts.map +1 -1
  95. package/dist/resources/de-de/designer.js +86 -4
  96. package/dist/resources/de-de/designer.js.map +1 -1
  97. package/dist/resources/de-de/email.d.ts +21 -0
  98. package/dist/resources/de-de/email.d.ts.map +1 -1
  99. package/dist/resources/de-de/email.js +21 -0
  100. package/dist/resources/de-de/email.js.map +1 -1
  101. package/dist/resources/de-de/files.d.ts +12 -0
  102. package/dist/resources/de-de/files.d.ts.map +1 -1
  103. package/dist/resources/de-de/files.js +12 -0
  104. package/dist/resources/de-de/files.js.map +1 -1
  105. package/dist/resources/de-de/mailDoor.d.ts +17 -0
  106. package/dist/resources/de-de/mailDoor.d.ts.map +1 -1
  107. package/dist/resources/de-de/mailDoor.js +17 -0
  108. package/dist/resources/de-de/mailDoor.js.map +1 -1
  109. package/dist/resources/de-de/studio.d.ts +83 -0
  110. package/dist/resources/de-de/studio.d.ts.map +1 -1
  111. package/dist/resources/de-de/studio.js +88 -5
  112. package/dist/resources/de-de/studio.js.map +1 -1
  113. package/dist/resources/de-de/x.d.ts +107 -0
  114. package/dist/resources/de-de/x.d.ts.map +1 -0
  115. package/dist/resources/de-de/x.js +107 -0
  116. package/dist/resources/de-de/x.js.map +1 -0
  117. package/dist/resources/deferred-counts.d.ts +2 -2
  118. package/dist/resources/deferred-counts.d.ts.map +1 -1
  119. package/dist/resources/deferred-counts.js +1 -1
  120. package/dist/resources/deferred-counts.js.map +1 -1
  121. package/dist/resources/en-us/common-deferred.d.ts +112 -1
  122. package/dist/resources/en-us/common-deferred.d.ts.map +1 -1
  123. package/dist/resources/en-us/common-deferred.js +112 -1
  124. package/dist/resources/en-us/common-deferred.js.map +1 -1
  125. package/dist/resources/en-us/common.d.ts +6 -108
  126. package/dist/resources/en-us/common.d.ts.map +1 -1
  127. package/dist/resources/en-us/common.js +7 -109
  128. package/dist/resources/en-us/common.js.map +1 -1
  129. package/dist/resources/en-us/designer.d.ts +82 -0
  130. package/dist/resources/en-us/designer.d.ts.map +1 -1
  131. package/dist/resources/en-us/designer.js +86 -4
  132. package/dist/resources/en-us/designer.js.map +1 -1
  133. package/dist/resources/en-us/email.d.ts +21 -0
  134. package/dist/resources/en-us/email.d.ts.map +1 -1
  135. package/dist/resources/en-us/email.js +21 -0
  136. package/dist/resources/en-us/email.js.map +1 -1
  137. package/dist/resources/en-us/files.d.ts +12 -0
  138. package/dist/resources/en-us/files.d.ts.map +1 -1
  139. package/dist/resources/en-us/files.js +12 -0
  140. package/dist/resources/en-us/files.js.map +1 -1
  141. package/dist/resources/en-us/mailDoor.d.ts +17 -0
  142. package/dist/resources/en-us/mailDoor.d.ts.map +1 -1
  143. package/dist/resources/en-us/mailDoor.js +17 -0
  144. package/dist/resources/en-us/mailDoor.js.map +1 -1
  145. package/dist/resources/en-us/studio.d.ts +83 -0
  146. package/dist/resources/en-us/studio.d.ts.map +1 -1
  147. package/dist/resources/en-us/studio.js +88 -5
  148. package/dist/resources/en-us/studio.js.map +1 -1
  149. package/dist/resources/en-us/x.d.ts +107 -0
  150. package/dist/resources/en-us/x.d.ts.map +1 -0
  151. package/dist/resources/en-us/x.js +107 -0
  152. package/dist/resources/en-us/x.js.map +1 -0
  153. package/dist/resources/fr-fr/common.d.ts +118 -109
  154. package/dist/resources/fr-fr/common.d.ts.map +1 -1
  155. package/dist/resources/fr-fr/common.js +119 -110
  156. package/dist/resources/fr-fr/common.js.map +1 -1
  157. package/dist/resources/fr-fr/designer.d.ts +82 -0
  158. package/dist/resources/fr-fr/designer.d.ts.map +1 -1
  159. package/dist/resources/fr-fr/designer.js +86 -4
  160. package/dist/resources/fr-fr/designer.js.map +1 -1
  161. package/dist/resources/fr-fr/email.d.ts +21 -0
  162. package/dist/resources/fr-fr/email.d.ts.map +1 -1
  163. package/dist/resources/fr-fr/email.js +21 -0
  164. package/dist/resources/fr-fr/email.js.map +1 -1
  165. package/dist/resources/fr-fr/files.d.ts +12 -0
  166. package/dist/resources/fr-fr/files.d.ts.map +1 -1
  167. package/dist/resources/fr-fr/files.js +12 -0
  168. package/dist/resources/fr-fr/files.js.map +1 -1
  169. package/dist/resources/fr-fr/mailDoor.d.ts +17 -0
  170. package/dist/resources/fr-fr/mailDoor.d.ts.map +1 -1
  171. package/dist/resources/fr-fr/mailDoor.js +17 -0
  172. package/dist/resources/fr-fr/mailDoor.js.map +1 -1
  173. package/dist/resources/fr-fr/studio.d.ts +83 -0
  174. package/dist/resources/fr-fr/studio.d.ts.map +1 -1
  175. package/dist/resources/fr-fr/studio.js +88 -5
  176. package/dist/resources/fr-fr/studio.js.map +1 -1
  177. package/dist/resources/fr-fr/x.d.ts +107 -0
  178. package/dist/resources/fr-fr/x.d.ts.map +1 -0
  179. package/dist/resources/fr-fr/x.js +107 -0
  180. package/dist/resources/fr-fr/x.js.map +1 -0
  181. package/dist/resources/index.d.ts.map +1 -1
  182. package/dist/resources/index.js +2 -0
  183. package/dist/resources/index.js.map +1 -1
  184. package/dist/resources/lazy.d.ts.map +1 -1
  185. package/dist/resources/lazy.js +8 -0
  186. package/dist/resources/lazy.js.map +1 -1
  187. package/dist/resources/namespaces.d.ts +2 -2
  188. package/dist/resources/namespaces.d.ts.map +1 -1
  189. package/dist/resources/namespaces.js +8 -0
  190. package/dist/resources/namespaces.js.map +1 -1
  191. package/dist/resources/zh-cn/common.d.ts +118 -109
  192. package/dist/resources/zh-cn/common.d.ts.map +1 -1
  193. package/dist/resources/zh-cn/common.js +119 -110
  194. package/dist/resources/zh-cn/common.js.map +1 -1
  195. package/dist/resources/zh-cn/designer.d.ts +82 -0
  196. package/dist/resources/zh-cn/designer.d.ts.map +1 -1
  197. package/dist/resources/zh-cn/designer.js +86 -4
  198. package/dist/resources/zh-cn/designer.js.map +1 -1
  199. package/dist/resources/zh-cn/email.d.ts +21 -0
  200. package/dist/resources/zh-cn/email.d.ts.map +1 -1
  201. package/dist/resources/zh-cn/email.js +21 -0
  202. package/dist/resources/zh-cn/email.js.map +1 -1
  203. package/dist/resources/zh-cn/files.d.ts +12 -0
  204. package/dist/resources/zh-cn/files.d.ts.map +1 -1
  205. package/dist/resources/zh-cn/files.js +12 -0
  206. package/dist/resources/zh-cn/files.js.map +1 -1
  207. package/dist/resources/zh-cn/mailDoor.d.ts +17 -0
  208. package/dist/resources/zh-cn/mailDoor.d.ts.map +1 -1
  209. package/dist/resources/zh-cn/mailDoor.js +17 -0
  210. package/dist/resources/zh-cn/mailDoor.js.map +1 -1
  211. package/dist/resources/zh-cn/studio.d.ts +83 -0
  212. package/dist/resources/zh-cn/studio.d.ts.map +1 -1
  213. package/dist/resources/zh-cn/studio.js +88 -5
  214. package/dist/resources/zh-cn/studio.js.map +1 -1
  215. package/dist/resources/zh-cn/x.d.ts +107 -0
  216. package/dist/resources/zh-cn/x.d.ts.map +1 -0
  217. package/dist/resources/zh-cn/x.js +107 -0
  218. package/dist/resources/zh-cn/x.js.map +1 -0
  219. package/dist/resources/zh-tw/common.d.ts +118 -109
  220. package/dist/resources/zh-tw/common.d.ts.map +1 -1
  221. package/dist/resources/zh-tw/common.js +119 -110
  222. package/dist/resources/zh-tw/common.js.map +1 -1
  223. package/dist/resources/zh-tw/designer.d.ts +82 -0
  224. package/dist/resources/zh-tw/designer.d.ts.map +1 -1
  225. package/dist/resources/zh-tw/designer.js +86 -4
  226. package/dist/resources/zh-tw/designer.js.map +1 -1
  227. package/dist/resources/zh-tw/email.d.ts +21 -0
  228. package/dist/resources/zh-tw/email.d.ts.map +1 -1
  229. package/dist/resources/zh-tw/email.js +21 -0
  230. package/dist/resources/zh-tw/email.js.map +1 -1
  231. package/dist/resources/zh-tw/files.d.ts +12 -0
  232. package/dist/resources/zh-tw/files.d.ts.map +1 -1
  233. package/dist/resources/zh-tw/files.js +12 -0
  234. package/dist/resources/zh-tw/files.js.map +1 -1
  235. package/dist/resources/zh-tw/mailDoor.d.ts +17 -0
  236. package/dist/resources/zh-tw/mailDoor.d.ts.map +1 -1
  237. package/dist/resources/zh-tw/mailDoor.js +17 -0
  238. package/dist/resources/zh-tw/mailDoor.js.map +1 -1
  239. package/dist/resources/zh-tw/studio.d.ts +83 -0
  240. package/dist/resources/zh-tw/studio.d.ts.map +1 -1
  241. package/dist/resources/zh-tw/studio.js +88 -5
  242. package/dist/resources/zh-tw/studio.js.map +1 -1
  243. package/dist/resources/zh-tw/x.d.ts +107 -0
  244. package/dist/resources/zh-tw/x.d.ts.map +1 -0
  245. package/dist/resources/zh-tw/x.js +107 -0
  246. package/dist/resources/zh-tw/x.js.map +1 -0
  247. package/dist/review-status.js +7 -7
  248. package/locales/ar-EG/.meta.json +1420 -332
  249. package/locales/ar-EG/common.json +119 -110
  250. package/locales/ar-EG/designer.json +86 -4
  251. package/locales/ar-EG/email.json +21 -0
  252. package/locales/ar-EG/files.json +12 -0
  253. package/locales/ar-EG/mailDoor.json +17 -0
  254. package/locales/ar-EG/studio.json +88 -5
  255. package/locales/ar-EG/x.json +96 -0
  256. package/locales/cs-CZ/.meta.json +1420 -332
  257. package/locales/cs-CZ/common.json +119 -110
  258. package/locales/cs-CZ/designer.json +86 -4
  259. package/locales/cs-CZ/email.json +21 -0
  260. package/locales/cs-CZ/files.json +12 -0
  261. package/locales/cs-CZ/mailDoor.json +17 -0
  262. package/locales/cs-CZ/studio.json +88 -5
  263. package/locales/cs-CZ/x.json +96 -0
  264. package/locales/da-DK/.meta.json +1420 -332
  265. package/locales/da-DK/common.json +119 -110
  266. package/locales/da-DK/designer.json +86 -4
  267. package/locales/da-DK/email.json +21 -0
  268. package/locales/da-DK/files.json +12 -0
  269. package/locales/da-DK/mailDoor.json +17 -0
  270. package/locales/da-DK/studio.json +88 -5
  271. package/locales/da-DK/x.json +96 -0
  272. package/locales/de-DE/.meta.json +1420 -332
  273. package/locales/de-DE/common.json +119 -110
  274. package/locales/de-DE/designer.json +86 -4
  275. package/locales/de-DE/email.json +21 -0
  276. package/locales/de-DE/files.json +12 -0
  277. package/locales/de-DE/mailDoor.json +17 -0
  278. package/locales/de-DE/studio.json +88 -5
  279. package/locales/de-DE/x.json +96 -0
  280. package/locales/en-US/common.json +119 -110
  281. package/locales/en-US/designer.json +86 -4
  282. package/locales/en-US/email.json +21 -0
  283. package/locales/en-US/files.json +12 -0
  284. package/locales/en-US/mailDoor.json +17 -0
  285. package/locales/en-US/studio.json +88 -5
  286. package/locales/en-US/x.json +96 -0
  287. package/locales/fr-FR/.meta.json +1420 -332
  288. package/locales/fr-FR/common.json +119 -110
  289. package/locales/fr-FR/designer.json +86 -4
  290. package/locales/fr-FR/email.json +21 -0
  291. package/locales/fr-FR/files.json +12 -0
  292. package/locales/fr-FR/mailDoor.json +17 -0
  293. package/locales/fr-FR/studio.json +88 -5
  294. package/locales/fr-FR/x.json +96 -0
  295. package/locales/zh-CN/.meta.json +1420 -332
  296. package/locales/zh-CN/common.json +119 -110
  297. package/locales/zh-CN/designer.json +86 -4
  298. package/locales/zh-CN/email.json +21 -0
  299. package/locales/zh-CN/files.json +12 -0
  300. package/locales/zh-CN/mailDoor.json +17 -0
  301. package/locales/zh-CN/studio.json +88 -5
  302. package/locales/zh-CN/x.json +96 -0
  303. package/locales/zh-TW/.meta.json +1420 -332
  304. package/locales/zh-TW/common.json +119 -110
  305. package/locales/zh-TW/designer.json +86 -4
  306. package/locales/zh-TW/email.json +21 -0
  307. package/locales/zh-TW/files.json +12 -0
  308. package/locales/zh-TW/mailDoor.json +17 -0
  309. package/locales/zh-TW/studio.json +88 -5
  310. package/locales/zh-TW/x.json +96 -0
  311. package/package.json +1 -1
@@ -10,7 +10,8 @@
10
10
  "loading": "加载中",
11
11
  "clearSearch": "清除搜索",
12
12
  "clear": "清除",
13
- "save": "保存"
13
+ "save": "保存",
14
+ "supabasePoolerUser": "在 Supabase 的连接池中,用户名是角色、一个点和你的项目 ref,例如 adminium_rw.abcdefghijklmnop;密码是该角色的密码。"
14
15
  },
15
16
  "auth": {
16
17
  "headline": "把任何数据库变成仪表盘。",
@@ -19,6 +20,8 @@
19
20
  "signIn": {
20
21
  "title": "欢迎回来",
21
22
  "subtitle": "登录你的 Adminium 工作区。",
23
+ "passwordSetTitle": "密码已保存",
24
+ "passwordSetSubtitle": "请使用你的邮箱和刚刚设置的密码登录。",
22
25
  "email": "邮箱",
23
26
  "emailInvalid": "请输入有效的邮箱地址。",
24
27
  "password": "密码",
@@ -50,7 +53,7 @@
50
53
  },
51
54
  "reset": {
52
55
  "title": "设置密码",
53
- "subtitle": "至少 8 个字符。",
56
+ "subtitle": "至少 {min} 个字符。",
54
57
  "password": "密码",
55
58
  "confirm": "确认密码",
56
59
  "showPassword": "显示密码",
@@ -60,7 +63,7 @@
60
63
  "fair": "一般",
61
64
  "good": "良好",
62
65
  "strong": "强",
63
- "tooShort": "请至少使用 8 个字符。",
66
+ "tooShort": "请至少使用 {min} 个字符。",
64
67
  "submit": "保存密码",
65
68
  "failed": "未能保存,请重试。",
66
69
  "mismatch": "两次输入的密码不一致。"
@@ -206,7 +209,7 @@
206
209
  },
207
210
  "forbidden": {
208
211
  "title": "你没有访问权限",
209
- "body": "此仪表盘已受限。请让工作区管理员为你开通访问权限。",
212
+ "body": "此页面已受限。请让工作区管理员为你开通访问权限。",
210
213
  "primary": "申请访问权限",
211
214
  "secondary": "返回"
212
215
  },
@@ -571,6 +574,116 @@
571
574
  "dismiss": "隐藏设置清单",
572
575
  "continue": "继续设置",
573
576
  "banner": "完成工作区设置 — 已完成 {total} 个步骤中的 {done} 个。"
577
+ },
578
+ "desktopSetup": {
579
+ "title": "欢迎使用 Adminium",
580
+ "subtitle": "只需四个简短步骤,Adminium 就能从你的数据库生成一个管理应用。所有内容都保留在这台电脑上。",
581
+ "progress": "设置进度",
582
+ "back": "上一步",
583
+ "continue": "继续",
584
+ "createAccount": "创建账户并继续",
585
+ "step": {
586
+ "location": "欢迎",
587
+ "database": "你的第一个数据库",
588
+ "account": "你的账户",
589
+ "generate": "生成"
590
+ },
591
+ "dataDir": {
592
+ "heading": "Adminium 应该把你的数据保存在哪里?",
593
+ "description": "你的数据库、设置和备份都存放在这个文件夹中。所有内容都保留在这台电脑上——不会上传到任何地方。",
594
+ "label": "数据文件夹",
595
+ "loading": "正在读取当前位置…",
596
+ "pending": "继续时 Adminium 会重启,以便切换到这个文件夹。",
597
+ "change": "更改…",
598
+ "revert": "撤销",
599
+ "dialogTitle": "选择 Adminium 保存数据的位置",
600
+ "cloudSyncTitle": "该文件夹会同步到云端",
601
+ "cloudSyncWarning": "Adminium 将数据存储在 SQLite 文件中。{provider} 会在后台复制“{folder}”中的文件进行同步,这可能损坏正在打开的数据库——并在毫无提示的情况下丢失数据。请选择 {provider} 之外的文件夹。",
602
+ "chooseAnother": "选择其他文件夹",
603
+ "useAnyway": "仍然使用——我接受风险",
604
+ "unusableTitle": "Adminium 无法使用该文件夹",
605
+ "failed": "Adminium 无法使用该文件夹。"
606
+ },
607
+ "source": {
608
+ "heading": "Adminium 应该基于什么来构建?",
609
+ "description": "Adminium 会读取数据库的结构并据此生成管理应用。你之后可以添加更多数据库。",
610
+ "groupLabel": "数据库来源",
611
+ "local": {
612
+ "title": "创建新的本地数据库",
613
+ "description": "从零开始,或使用你已有的结构文件。数据库会创建在你的数据文件夹中。",
614
+ "name": "数据库名称",
615
+ "namePlaceholder": "运营",
616
+ "nameUnusable": "请至少使用一个字母或数字——文件名由此生成。",
617
+ "fileHelper": "将创建 {file}",
618
+ "schemaLabel": "起始方式",
619
+ "blank": "空白",
620
+ "fromFile": "结构文件",
621
+ "schemaFile": "结构文件",
622
+ "schemaFileHelper": ".sql、pg_dump、Prisma、Drizzle、TypeORM、Sequelize、schema.rb、Django 或 Adminium JSON。Adminium 会将其转换为 SQLite。",
623
+ "placeholder": "自动生成占位数据",
624
+ "placeholderHelper": "你导入的结构没有数据行。为每个表填充逼真的示例数据,让仪表板和图表立刻能够呈现。"
625
+ },
626
+ "openSqlite": {
627
+ "title": "打开现有的 SQLite 文件",
628
+ "description": "让 Adminium 指向这台电脑上的 .sqlite 文件。文件会在原位打开——不会复制或移动。",
629
+ "browse": "选择一个 .sqlite 文件…",
630
+ "change": "选择其他文件…",
631
+ "networkTitle": "该文件位于网络共享上",
632
+ "networkBody": "SQLite 的锁机制在网络文件共享上并不可靠,写入过程中断开连接可能损坏数据库。复制到这台电脑本地磁盘上更安全。"
633
+ },
634
+ "remote": {
635
+ "title": "连接到服务器数据库",
636
+ "description": "PostgreSQL 或 MySQL。需要一个可访问的网络数据库;Adminium 自身的数据表仍然保留在这台电脑上。",
637
+ "networkNote": "需要一个可访问的网络数据库",
638
+ "metaNote": "无论如何,Adminium 自身的数据表——你的页面、设置和登录信息——都保留在这台电脑的数据文件夹中。",
639
+ "engine": "引擎",
640
+ "name": "连接名称",
641
+ "namePlaceholder": "生产环境",
642
+ "dsn": "连接字符串",
643
+ "dsnHelper": "Adminium 会在连接时测试它。如果你只需要仪表板,请使用只读角色。"
644
+ },
645
+ "demo": {
646
+ "title": "体验演示数据库",
647
+ "description": "一个现成的团队运营数据库,让你在指向自己的数据之前先看看 Adminium 会构建出什么。你可以随时删除它。",
648
+ "unavailable": "此版本不包含演示数据,因此没有可加载的内容。请选择上面的某个选项。"
649
+ }
650
+ },
651
+ "account": {
652
+ "heading": "创建你的账户",
653
+ "description": "这是这份 Adminium 的管理员账户。密码用于保护你的备份以及你在网络上共享的对象——每次启动时不会向你索取密码。",
654
+ "name": "你的姓名",
655
+ "email": "邮箱",
656
+ "password": "密码",
657
+ "passwordHelper": "至少 {min} 个字符。",
658
+ "confirm": "确认密码",
659
+ "strength": "密码强度",
660
+ "strengthLevels": {
661
+ "weak": "弱",
662
+ "fair": "一般",
663
+ "good": "良好",
664
+ "strong": "强"
665
+ },
666
+ "singleUser": "在这台电脑上跳过登录",
667
+ "singleUserHelper": "在这里打开时,Adminium 会自动为你登录。如果其他人也使用这台机器,请关闭此项。你之后可以在 设置 → 桌面 中更改。",
668
+ "locale": "语言",
669
+ "theme": "外观",
670
+ "alreadyExists": "这份 Adminium 已经有一个账户。请改用该账户登录。",
671
+ "failed": "Adminium 无法创建该账户。"
672
+ },
673
+ "generate": {
674
+ "checking": "正在检查连接…",
675
+ "creating": "正在设置你的数据库…",
676
+ "introspecting": "正在读取你的结构——表、列和关系…",
677
+ "working": "处理中…",
678
+ "offlineNote": "这一切都在这台电脑上完成。",
679
+ "failedTitle": "Adminium 无法设置该数据库",
680
+ "refusedTitle": "Adminium 无法连接到该数据库",
681
+ "failedBody": "出了点问题。请重试。",
682
+ "retry": "重试",
683
+ "changeConnection": "修改连接",
684
+ "connectRefused": "数据库拒绝了连接。",
685
+ "readFailed": "Adminium 无法读取该数据库的表。"
686
+ }
574
687
  }
575
688
  },
576
689
  "views": {
@@ -614,6 +727,7 @@
614
727
  "resetDone": "布局已重置为共享默认值。",
615
728
  "sharedNote": "你正在编辑所有人都能看到的共享仪表盘。",
616
729
  "personalNote": "你正在编辑个人布局——只有你能看到这些更改。",
730
+ "sampleNote": "编辑时,卡片显示的是示例数字。完成编辑后会恢复为你的数据。",
617
731
  "savedShared": "仪表盘已为所有有权限的人保存。",
618
732
  "empty": "此仪表盘尚无任何小组件。",
619
733
  "emptyAction": "添加小组件",
@@ -1168,111 +1282,6 @@
1168
1282
  "firewall": "首次共享时,操作系统会询问是否允许传入连接 — 请选择\"允许\",否则其他设备将无法访问 Adminium。",
1169
1283
  "manageTeam": "管理用户与角色"
1170
1284
  },
1171
- "setup": {
1172
- "title": "欢迎使用 Adminium",
1173
- "subtitle": "只需四个简短步骤,Adminium 就能从你的数据库生成一个管理应用。所有内容都保留在这台电脑上。",
1174
- "progress": "设置进度",
1175
- "back": "上一步",
1176
- "continue": "继续",
1177
- "createAccount": "创建账户并继续",
1178
- "step": {
1179
- "location": "欢迎",
1180
- "database": "你的第一个数据库",
1181
- "account": "你的账户",
1182
- "generate": "生成"
1183
- },
1184
- "dataDir": {
1185
- "heading": "Adminium 应该把你的数据保存在哪里?",
1186
- "description": "你的数据库、设置和备份都存放在这个文件夹中。所有内容都保留在这台电脑上——不会上传到任何地方。",
1187
- "label": "数据文件夹",
1188
- "loading": "正在读取当前位置…",
1189
- "pending": "继续时 Adminium 会重启,以便切换到这个文件夹。",
1190
- "change": "更改…",
1191
- "revert": "撤销",
1192
- "dialogTitle": "选择 Adminium 保存数据的位置",
1193
- "cloudSyncTitle": "该文件夹会同步到云端",
1194
- "cloudSyncWarning": "Adminium 将数据存储在 SQLite 文件中。{provider} 会在后台复制“{folder}”中的文件进行同步,这可能损坏正在打开的数据库——并在毫无提示的情况下丢失数据。请选择 {provider} 之外的文件夹。",
1195
- "chooseAnother": "选择其他文件夹",
1196
- "useAnyway": "仍然使用——我接受风险",
1197
- "unusableTitle": "Adminium 无法使用该文件夹",
1198
- "failed": "Adminium 无法使用该文件夹。"
1199
- },
1200
- "source": {
1201
- "heading": "Adminium 应该基于什么来构建?",
1202
- "description": "Adminium 会读取数据库的结构并据此生成管理应用。你之后可以添加更多数据库。",
1203
- "groupLabel": "数据库来源",
1204
- "local": {
1205
- "title": "创建新的本地数据库",
1206
- "description": "从零开始,或使用你已有的结构文件。数据库会创建在你的数据文件夹中。",
1207
- "name": "数据库名称",
1208
- "namePlaceholder": "运营",
1209
- "nameUnusable": "请至少使用一个字母或数字——文件名由此生成。",
1210
- "fileHelper": "将创建 {file}",
1211
- "schemaLabel": "起始方式",
1212
- "blank": "空白",
1213
- "fromFile": "结构文件",
1214
- "schemaFile": "结构文件",
1215
- "schemaFileHelper": ".sql、pg_dump、Prisma、Drizzle、TypeORM、Sequelize、schema.rb、Django 或 Adminium JSON。Adminium 会将其转换为 SQLite。",
1216
- "placeholder": "自动生成占位数据",
1217
- "placeholderHelper": "你导入的结构没有数据行。为每个表填充逼真的示例数据,让仪表板和图表立刻能够呈现。"
1218
- },
1219
- "openSqlite": {
1220
- "title": "打开现有的 SQLite 文件",
1221
- "description": "让 Adminium 指向这台电脑上的 .sqlite 文件。文件会在原位打开——不会复制或移动。",
1222
- "browse": "选择一个 .sqlite 文件…",
1223
- "change": "选择其他文件…",
1224
- "networkTitle": "该文件位于网络共享上",
1225
- "networkBody": "SQLite 的锁机制在网络文件共享上并不可靠,写入过程中断开连接可能损坏数据库。复制到这台电脑本地磁盘上更安全。"
1226
- },
1227
- "remote": {
1228
- "title": "连接到服务器数据库",
1229
- "description": "PostgreSQL 或 MySQL。需要一个可访问的网络数据库;Adminium 自身的数据表仍然保留在这台电脑上。",
1230
- "networkNote": "需要一个可访问的网络数据库",
1231
- "metaNote": "无论如何,Adminium 自身的数据表——你的页面、设置和登录信息——都保留在这台电脑的数据文件夹中。",
1232
- "engine": "引擎",
1233
- "name": "连接名称",
1234
- "namePlaceholder": "生产环境",
1235
- "dsn": "连接字符串",
1236
- "dsnHelper": "Adminium 会在连接时测试它。如果你只需要仪表板,请使用只读角色。"
1237
- },
1238
- "demo": {
1239
- "title": "体验演示数据库",
1240
- "description": "一个现成的团队运营数据库,让你在指向自己的数据之前先看看 Adminium 会构建出什么。你可以随时删除它。",
1241
- "unavailable": "此版本不包含演示数据,因此没有可加载的内容。请选择上面的某个选项。"
1242
- }
1243
- },
1244
- "account": {
1245
- "heading": "创建你的账户",
1246
- "description": "这是这份 Adminium 的管理员账户。密码用于保护你的备份以及你在网络上共享的对象——每次启动时不会向你索取密码。",
1247
- "name": "你的姓名",
1248
- "email": "邮箱",
1249
- "password": "密码",
1250
- "passwordHelper": "至少 {min} 个字符。",
1251
- "confirm": "确认密码",
1252
- "strength": "密码强度",
1253
- "strengthLevels": {
1254
- "weak": "弱",
1255
- "fair": "一般",
1256
- "good": "良好",
1257
- "strong": "强"
1258
- },
1259
- "singleUser": "在这台电脑上跳过登录",
1260
- "singleUserHelper": "在这里打开时,Adminium 会自动为你登录。如果其他人也使用这台机器,请关闭此项。你之后可以在 设置 → 桌面 中更改。",
1261
- "locale": "语言",
1262
- "theme": "外观",
1263
- "alreadyExists": "这份 Adminium 已经有一个账户。请改用该账户登录。",
1264
- "failed": "Adminium 无法创建该账户。"
1265
- },
1266
- "generate": {
1267
- "creating": "正在设置你的数据库…",
1268
- "introspecting": "正在读取你的结构——表、列和关系…",
1269
- "working": "处理中…",
1270
- "offlineNote": "这一切都在这台电脑上完成。",
1271
- "failedTitle": "Adminium 无法设置该数据库",
1272
- "failedBody": "出了点问题。请重试。",
1273
- "retry": "重试"
1274
- }
1275
- },
1276
1285
  "stop": {
1277
1286
  "turn": "Designer 正在进行一轮操作。",
1278
1287
  "start": "正在向此项目添加应用。",
@@ -1613,7 +1622,7 @@
1613
1622
  "confirm": "确认新密码",
1614
1623
  "current": "当前密码",
1615
1624
  "failed": "无法更改你的密码",
1616
- "helper": "至少 8 个字符。",
1625
+ "helper": "至少 {min} 个字符。",
1617
1626
  "mismatch": "两次输入的密码不一致。",
1618
1627
  "new": "新密码",
1619
1628
  "submit": "更改密码",
@@ -1019,7 +1019,9 @@
1019
1019
  "undoFailed": "无法撤销图片更换",
1020
1020
  "savedAs": "图片已保存为 {version}。",
1021
1021
  "change": "更换图片…",
1022
- "point": "指出它"
1022
+ "point": "指出它",
1023
+ "madeNone": "没有用 {service} 生成图片。",
1024
+ "made": "已用 {service} 生成 {count, plural, other {# 张图片}},费用计入该账户。今天还剩 {left} 张。"
1023
1025
  },
1024
1026
  "keepSpot": {
1025
1027
  "answered": "保留图片(已回答)",
@@ -1036,14 +1038,16 @@
1036
1038
  "credit": "需要署名",
1037
1039
  "creditSame": "署名 + 相同许可",
1038
1040
  "own": "你的图片",
1039
- "template": "来自你的模板"
1041
+ "template": "来自你的模板",
1042
+ "made": "AI 生成"
1040
1043
  },
1041
1044
  "sentence": {
1042
1045
  "noCredit": "可随意使用和修改。无需署名。",
1043
1046
  "host": "请按 {source} 的许可使用。无需署名,但署名是一份善意。请勿原样出售。",
1044
1047
  "credit": "请为作者署名。Adminium 会在页面底部的“图片署名”下显示署名。",
1045
1048
  "creditSame": "请为作者署名。如果你修改了图片文件本身,请以相同许可分享修改后的文件。",
1046
- "template": "它的许可与模板相同。请查看模板的许可文件。"
1049
+ "template": "它的许可与模板相同。请查看模板的许可文件。",
1050
+ "made": "由 AI 根据文字生成。原样出售前,请查看该服务的条款。"
1047
1051
  },
1048
1052
  "shape": {
1049
1053
  "wide": "横向",
@@ -1141,7 +1145,85 @@
1141
1145
  "leavePh": "保留为占位图",
1142
1146
  "remove": "从要更改的内容中移除 {spot}",
1143
1147
  "altLabel": "为看不到图片的人描述这张图片",
1144
- "decorative": "装饰用:不读出"
1148
+ "decorative": "装饰用:不读出",
1149
+ "make": {
1150
+ "refused": "{service} 拒绝生成这张图片。试试换些词。",
1151
+ "auth": "{service} 未接受其密钥。",
1152
+ "billing": "{service} 账户没有可用于图片的额度。",
1153
+ "rateLimit": "{service} 正忙。请一分钟后重试。",
1154
+ "modelGone": "该模型已不再提供。请选择其他模型。",
1155
+ "notHere": "此服务不能生成图片。请选择其他服务。",
1156
+ "notSent": "未生成:生成在此之前已停止。",
1157
+ "failed": "无法生成图片。请重试。",
1158
+ "loadFailed": "无法加载图片服务。",
1159
+ "chooseService": "选择服务",
1160
+ "change": "更改",
1161
+ "ask": "请询问管理 AI 设置的人。",
1162
+ "none": "选择一个图片服务,即可在这里生成图片。",
1163
+ "changed": "图片服务已更改。请重新选择。",
1164
+ "off": "生成图片需要此服务器以外的服务,而此服务器不调用任何外部服务。",
1165
+ "switchedOff": "此处已关闭图片生成。",
1166
+ "costLocal": "在这台电脑上生成,不产生费用。你今天还可以生成 {left} 张。",
1167
+ "cost": "这些词会发送给 {service}。每张图片都会向该账户计费。你今天还可以生成 {left} 张。",
1168
+ "costKnown": "这些词会发送给 {service}。此操作会向该账户计费,约 {amount}。你今天还可以生成 {left} 张。",
1169
+ "madeBy": "生成者",
1170
+ "dayDone": "你已用完今天的图片额度。明天再来。",
1171
+ "busy": "已有生成正在进行。",
1172
+ "full": "这个会话中的生成图片已达上限。你没有保留的图片会在一天后腾出空间。",
1173
+ "wordsLabel": "图片内容",
1174
+ "counter": "{count}/{max}",
1175
+ "howMany": "数量",
1176
+ "pictures": "{count, plural, other {# 张图片}}",
1177
+ "make": "生成",
1178
+ "honest": "这些是虚构的图片。开张前,请换成你自己的{table}的照片。",
1179
+ "forEach": "为每一项生成一张…",
1180
+ "making": "正在生成 {count, plural, other {# 张图片}}… 可能需要一分钟。",
1181
+ "stop": "停止",
1182
+ "lost": "生成这些图片时服务器重启了。它们已计入额度。",
1183
+ "results": "为 {spot} 生成的图片",
1184
+ "earlier": "之前生成的",
1185
+ "putAll": "全部放回要更改的内容",
1186
+ "putOn": "用于 {name}",
1187
+ "lineWaiting": "等待中",
1188
+ "lineMaking": "生成中",
1189
+ "lineGone": "此行已更改,请重新生成",
1190
+ "lineMade": "已生成",
1191
+ "lineRefused": "被拒绝",
1192
+ "lineFailed": "失败",
1193
+ "forEachTitle": "为 {table} 的每一项生成一张",
1194
+ "back": "返回",
1195
+ "forEachBy": "各生成一张图片",
1196
+ "eachRow": "每行一张({count})",
1197
+ "eachGroup": "每个 {group} 一张({count})",
1198
+ "people": "此表包含人员:不会发送他们的姓名,因此每张图片都不是某个特定的人。",
1199
+ "lineWords": "{name} 的描述词",
1200
+ "total": "将生成 {count, plural, other {# 张图片}}。",
1201
+ "makeThem": "开始生成",
1202
+ "doneRefused": "已生成 {made}/{count}。{refused, plural, other {有 # 张被拒绝:请修改描述词后重试。}}",
1203
+ "done": "已生成 {made}/{count}。它们在要更改的内容中。",
1204
+ "progress": "已生成 {made}/{count}",
1205
+ "next": "接下来 {count} 张",
1206
+ "chooserTitle": "由哪个服务生成图片",
1207
+ "noMakers": "没有已连接的服务能生成图片。请在下方添加 OpenAI 或 Google 密钥。",
1208
+ "onThisComputer": "在这台电脑上",
1209
+ "noFilter": "可能没有内容过滤",
1210
+ "model": "模型",
1211
+ "ownList": "此服务器自己的列表:选择一个图片模型。",
1212
+ "modelTyped": "图片模型(按服务中的名称填写)",
1213
+ "chat": "允许 Designer 在聊天中生成图片",
1214
+ "save": "保存",
1215
+ "addService": "添加仅用于图片的服务",
1216
+ "service": "服务",
1217
+ "key": "密钥",
1218
+ "addKey": "添加",
1219
+ "keyNote": "保存在此服务器存放密钥的地方。仅用于图片,不会更改任何聊天模型。",
1220
+ "stillMaking": "仍在生成图片。生成后会出现在“之前生成的”中。",
1221
+ "wordsUsed": "由这些词生成",
1222
+ "note": "生成的图片并不真实。开张前,请把你所售商品的图片换成你自己的照片。",
1223
+ "error": "无法请求生成图片。请重试。",
1224
+ "tooMany": "今天你还能生成 {left} 张。请少要一些。"
1225
+ },
1226
+ "tabMake": "生成图片"
1145
1227
  },
1146
1228
  "pictureKeys": {
1147
1229
  "title": "Pexels 和 Unsplash",
@@ -945,5 +945,26 @@
945
945
  "not-aligned": "{source}:营销邮件被跳过:发件人的域名没有已发布的签名密钥(DKIM)。",
946
946
  "no-public-address": "{source}:营销邮件被跳过:此服务器没有公共地址,退订链接将无法使用。"
947
947
  }
948
+ },
949
+ "signUpConfirm": {
950
+ "name": "订阅确认",
951
+ "subject": "请确认您在 {business} 的订阅",
952
+ "preheader": "只需一次点击即可完成订阅。",
953
+ "heading": "请确认您的订阅",
954
+ "greetingPlain": "您好,",
955
+ "greeting": "{name},您好:",
956
+ "newsletter": "按“确认”即可收到 {business} 的新闻通讯。",
957
+ "surveys": "按“确认”即可收到 {business} 的调查。",
958
+ "action": "确认",
959
+ "notice": "链接 {days} 天内有效。如果这不是您申请的,请忽略此邮件:只要您不按“确认”,就不会有任何变化。"
960
+ },
961
+ "forms": {
962
+ "answerTitle": "新回复:{form}",
963
+ "limitTitle": "表单已达到上限",
964
+ "limitForm": "{form} 已收到一小时内可接收的回复数量({n})。",
965
+ "limitAddress": "同一网络地址向 {form} 发送的回复已达到一小时内的上限。",
966
+ "limitEmail": "同一电子邮件地址在 {form} 中填写的次数已达到一天的上限。",
967
+ "limitEntry": "{form} 写入的表已收到其应用允许的访客新行数上限。",
968
+ "limitBody": "将于 {time} 重新开放。请在表单的“限制”中提高上限或使用更严格的验证。"
948
969
  }
949
970
  }
@@ -106,5 +106,17 @@
106
106
  "done": "完成",
107
107
  "failed": "失败",
108
108
  "cancelled": "已取消"
109
+ },
110
+ "publicUploads": {
111
+ "notice": {
112
+ "quota": {
113
+ "title": "您的表单收到的文件正在被拒绝",
114
+ "body": "上传的文件已占满为其预留的空间({gb} GB)。请删除不再需要的回复,或在设置中提高上限。"
115
+ },
116
+ "cap": {
117
+ "title": "一位访客发送的文件过多",
118
+ "body": "一个网络地址在一天内发送了 {n} 个文件,已达上限。在明天之前,它发送的文件都会被拒绝。"
119
+ }
120
+ }
109
121
  }
110
122
  }
@@ -28,5 +28,22 @@
28
28
  },
29
29
  "unavailable": {
30
30
  "title": "此页面不可用。"
31
+ },
32
+ "confirm": {
33
+ "titleNewsletter": "确认订阅 {business} 的新闻通讯",
34
+ "titleSurveys": "确认参与 {business} 的调查",
35
+ "for": "适用于 {address}",
36
+ "button": "确认",
37
+ "note": "在您按下“确认”之前,什么都不会发生。我们发送的每封电子邮件都可以退订。",
38
+ "done": "您已订阅。谢谢。",
39
+ "doneNewsletter": "您将收到 {business} 的新闻通讯。",
40
+ "doneSurveys": "您将收到 {business} 的调查。",
41
+ "leave": "每封电子邮件都有退订链接。",
42
+ "already": "您已确认过。谢谢。",
43
+ "tooOld": "此链接已过期。",
44
+ "tooOldWebsite": "请在 {website} 重新订阅,我们会发送新的链接。",
45
+ "tooOldAgain": "请在 {business} 的网站重新订阅,我们会发送新的链接。",
46
+ "deadWrite": "如果您想订阅,请写信至 {email}。",
47
+ "deadAsk": "如果您想订阅,请联系 {business}。"
31
48
  }
32
49
  }
@@ -43,6 +43,7 @@
43
43
  "data": "数据",
44
44
  "delivery": "配送",
45
45
  "email": "邮件",
46
+ "marketing": "营销",
46
47
  "payments": "支付"
47
48
  },
48
49
  "confirm": {
@@ -173,6 +174,9 @@
173
174
  "askBody": "{name} 已为 {app} 启用,但目前没有任何内容向公众开放。允许后,以下内容将加入 {app} 的公开密钥:{refs}。",
174
175
  "askLater": "暂不",
175
176
  "askConfirm": "允许"
177
+ },
178
+ "forms": {
179
+ "notVouched": "该软件包已保存,可以安装,但 Adminium 不知道它的制作者:其表单不会向访客开放。请从目录安装以使用这些表单。"
176
180
  }
177
181
  },
178
182
  "capability": {
@@ -646,7 +650,12 @@
646
650
  "stepSignIn": "员工界面会要求你重新登录:会话 Cookie 只属于一个主机,因此映射的主机会先把你带到它自己的登录页。",
647
651
  "subtitle": "将域名的 DNS 指向你的代理,把 Host 标头透传给 Adminium,然后在此附加——该主机随后将提供此界面而非本仪表盘。证书保留在你的代理上。",
648
652
  "surfaceLabel": "界面",
649
- "title": "域名"
653
+ "title": "域名",
654
+ "pages": "表单和页面",
655
+ "homeLabel": "首页",
656
+ "homeNone": "还没有已发布的表单",
657
+ "homeMissing": "请先发布一个表单:此主机需要一个已发布的表单作为首页。",
658
+ "invalidHome": "{host} 的首页必须是 /x/ 下某个已发布表单的页面。"
650
659
  },
651
660
  "emptyBody": "将 ADMINIUM_SURFACES_DIR 指向存放已构建界面的目录——每个应用和端各一个文件夹,各含其 index.html——然后重启。之后它们将在 /apps/ 下提供,并显示在这里。",
652
661
  "emptyTitle": "当前没有提供任何应用界面",
@@ -2389,6 +2398,16 @@
2389
2398
  "saveFailed": "无法保存。请重试。",
2390
2399
  "aloud": "{name} 朗读回复",
2391
2400
  "aloudWhat": "使用浏览器自带的语音。每个人自行开启。"
2401
+ },
2402
+ "pictures": {
2403
+ "saveFailed": "无法保存。请重试。",
2404
+ "perDay": "每人每天可生成的图片数",
2405
+ "perDayAll": "所有人每天合计可生成的图片数",
2406
+ "perTurn": "Designer 聊天每轮可生成的图片数",
2407
+ "title": "AI 生成的图片",
2408
+ "what": "Designer 生成的每张图片,都会向生成时所用密钥的账户计费。服务在 Designer 的图片对话框中选择。",
2409
+ "zero": "0 表示关闭图片生成",
2410
+ "save": "保存"
2392
2411
  }
2393
2412
  },
2394
2413
  "settingsHub": {
@@ -4270,7 +4289,10 @@
4270
4289
  "automationRuns": "规则运行",
4271
4290
  "notifications": "发给员工的通知",
4272
4291
  "files": "其行上的文件",
4273
- "appRows": "应用中的行"
4292
+ "appRows": "应用中的行",
4293
+ "answers": "表单回答",
4294
+ "invitations": "调查邀请",
4295
+ "answerFiles": "随表单回答发送的文件"
4274
4296
  },
4275
4297
  "onList": "是",
4276
4298
  "rows": "{count, plural, other {# 行}}",
@@ -4296,7 +4318,10 @@
4296
4318
  "open": "打开",
4297
4319
  "download": "全部下载",
4298
4320
  "downloadSub": "包含 JSON 和 CSV 文件的 .zip。",
4299
- "erase": "删除…"
4321
+ "erase": "删除…",
4322
+ "answers": "{count, plural, other {# 条回答}}",
4323
+ "invitations": "{count, plural, other {# 份邀请}}",
4324
+ "files": "{count, plural, other {# 个文件}}"
4300
4325
  },
4301
4326
  "erase": {
4302
4327
  "goes": {
@@ -4305,7 +4330,10 @@
4305
4330
  "outbox": "{label} 中的 {count, plural, other {# 封邮件}}",
4306
4331
  "consent": "{count, plural, other {# 条同意记录}}",
4307
4332
  "campaignMail": "{count, plural, other {# 封活动邮件}}",
4308
- "files": "{count, plural, other {# 个文件}}"
4333
+ "files": "{count, plural, other {# 个文件}}",
4334
+ "answers": "{label} 中的 {count, plural, other {# 条表单回答}}",
4335
+ "invitations": "{label} 中的 {count, plural, other {# 份调查邀请}},保留但不含地址",
4336
+ "answerFiles": "{label} 中随表单回答发送的 {count, plural, other {# 个文件}}"
4309
4337
  },
4310
4338
  "stays": {
4311
4339
  "forGood": "永久保留。",
@@ -4356,7 +4384,11 @@
4356
4384
  "heading": "保留期限",
4357
4385
  "sub": "到期后,每一项都会被删除。",
4358
4386
  "what": "内容",
4359
- "keptFor": "保留时长"
4387
+ "keptFor": "保留时长",
4388
+ "answers": "表单回答 — {addOn}",
4389
+ "answersMonths": "{count, plural, other {保留 # 个月}}",
4390
+ "answersUntilRemoved": "保留到有人删除为止",
4391
+ "answersWhy": "在 {addOn} 的设置中设定。较早的回答每晚删除。"
4360
4392
  },
4361
4393
  "downloads": {
4362
4394
  "processing": "正在生成…",
@@ -4374,6 +4406,57 @@
4374
4406
  "heading": "隐私与公开页面",
4375
4407
  "body": "你的隐私声明、某个人的数据,以及各类内容保留多久。",
4376
4408
  "cta": "打开隐私"
4409
+ },
4410
+ "websites": {
4411
+ "tab": "您的网站",
4412
+ "listHeading": "可以显示您的表单和聊天的网站",
4413
+ "addedBy": "由 {name} 添加 · {date}",
4414
+ "addedOn": "添加于 {date}",
4415
+ "remove": "移除",
4416
+ "removeLabel": "移除 {url}",
4417
+ "removed": "已移除 {url}",
4418
+ "removeFailed": "未能移除 {url}。请重试。",
4419
+ "none": "暂无。只有当某个网站在此列表中时,表单才会显示在该网站上。",
4420
+ "addLabel": "添加网站",
4421
+ "addHelp": "每行一个网站,以 https:// 开头。",
4422
+ "add": "添加",
4423
+ "added": "已添加",
4424
+ "addFailed": "未能添加这些网站。请重试。",
4425
+ "line": {
4426
+ "onePerLine": "每行一个网站,不要用 *",
4427
+ "https": "请使用 https://",
4428
+ "address": "不是网站地址",
4429
+ "path": "只要地址,不要路径",
4430
+ "self": "这是本服务器自己的地址",
4431
+ "listed": "已在列表中",
4432
+ "ok": "可以添加"
4433
+ },
4434
+ "tooMany": "列表最多容纳 {max} 个网站。请先移除一个。",
4435
+ "note": "列表中的网站可以在框架中显示您的表单和聊天,但永远无法访问您的数据。",
4436
+ "embedHeading": "放到您的网站上",
4437
+ "copy": "复制",
4438
+ "copied": "已复制",
4439
+ "copyLabel": "复制加载代码行",
4440
+ "embedLine": "然后在您想要的位置添加表单或聊天。每个表单的“分享”标签页中都有它自己的代码行。",
4441
+ "loadFailed": "未能加载网站。请重试。",
4442
+ "reach": {
4443
+ "heading": "访客能访问您的公开页面吗?",
4444
+ "checked": "检查于 {when}",
4445
+ "ok": "访客可以访问 {origin}",
4446
+ "badge": {
4447
+ "reachable": "可访问",
4448
+ "proxy": "代理设置",
4449
+ "noAddress": "没有地址"
4450
+ },
4451
+ "proxy": "本服务器位于一个隐藏访客地址的代理之后,因此表单的限制无法生效。请设置 {setting}。",
4452
+ "ask": "请让运行此服务器的人进行设置并重启。",
4453
+ "noAddress": "本服务器没有公开的 https 地址。表单、聊天和退订链接都需要它。",
4454
+ "address": "本服务器的公开地址:",
4455
+ "notSet": "(未设置)",
4456
+ "setIt": "去设置",
4457
+ "checkAgain": "重新检查",
4458
+ "loadFailed": "无法检查访客能否访问此服务器。请重试。"
4459
+ }
4377
4460
  }
4378
4461
  },
4379
4462
  "marketingMail": {