@liujitcn/kratos-admin-system 0.0.21 → 0.0.23

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 (106) hide show
  1. package/dist/package/declarations/src/api/system/base_language.d.ts +5 -4
  2. package/dist/package/declarations/src/api/system/base_translation.d.ts +7 -4
  3. package/dist/package/declarations/src/api/system/ops_monitoring.d.ts +19 -0
  4. package/dist/package/declarations/src/api/system/ops_monitoring_sse.d.ts +12 -0
  5. package/dist/package/declarations/src/components/DynamicTranslationCell.vue.d.ts +9 -32
  6. package/dist/package/declarations/src/components/DynamicTranslationEditor.vue.d.ts +3 -6
  7. package/dist/package/declarations/src/components/dynamicTranslation.d.ts +11 -17
  8. package/dist/package/declarations/src/locales/generated.d.ts +6536 -0
  9. package/dist/package/declarations/src/rpc/base/v1/ai_session.d.ts +12 -2
  10. package/dist/package/declarations/src/rpc/base/v1/ai_tool.d.ts +9 -1
  11. package/dist/package/declarations/src/rpc/base/v1/config.d.ts +35 -0
  12. package/dist/package/declarations/src/rpc/system/admin/v1/auth.d.ts +1 -1
  13. package/dist/package/declarations/src/rpc/system/admin/v1/base_config.d.ts +23 -7
  14. package/dist/package/declarations/src/rpc/system/admin/v1/base_dict.d.ts +7 -77
  15. package/dist/package/declarations/src/rpc/system/admin/v1/base_job.d.ts +9 -1
  16. package/dist/package/declarations/src/rpc/system/admin/v1/base_language.d.ts +7 -2
  17. package/dist/package/declarations/src/rpc/system/admin/v1/base_menu.d.ts +5 -40
  18. package/dist/package/declarations/src/rpc/system/admin/v1/base_migration.d.ts +6 -6
  19. package/dist/package/declarations/src/rpc/system/admin/v1/base_role.d.ts +13 -1
  20. package/dist/package/declarations/src/rpc/system/admin/v1/base_translation.d.ts +54 -81
  21. package/dist/package/declarations/src/rpc/system/admin/v1/base_user.d.ts +11 -1
  22. package/dist/package/declarations/src/rpc/system/admin/v1/code_gen.d.ts +11 -11
  23. package/dist/package/declarations/src/rpc/system/admin/v1/code_gen_table.d.ts +11 -1
  24. package/dist/package/declarations/src/rpc/system/admin/v1/common.d.ts +13 -0
  25. package/dist/package/declarations/src/rpc/system/admin/v1/ops_monitoring.d.ts +222 -0
  26. package/dist/package/declarations/src/views/tool/ops-monitoring/index.vue.d.ts +3 -0
  27. package/dist/package/src/api/base/ai_message.ts +2 -2
  28. package/dist/package/src/api/system/base_language.ts +13 -15
  29. package/dist/package/src/api/system/base_translation.ts +17 -6
  30. package/dist/package/src/api/system/ops_monitoring.ts +88 -0
  31. package/dist/package/src/api/system/ops_monitoring_sse.ts +49 -0
  32. package/dist/package/src/components/DynamicTranslationCell.vue +199 -126
  33. package/dist/package/src/components/DynamicTranslationEditor.vue +109 -78
  34. package/dist/package/src/components/dynamicTranslation.ts +11 -31
  35. package/dist/package/src/locales/README.md +7 -5
  36. package/dist/package/src/locales/en-US.json +876 -872
  37. package/dist/package/src/locales/es-ES.json +900 -895
  38. package/dist/package/src/locales/fr-FR.json +896 -891
  39. package/dist/package/src/locales/generated.ts +22 -0
  40. package/dist/package/src/locales/ja-JP.json +876 -872
  41. package/dist/package/src/locales/ko-KR.json +881 -876
  42. package/dist/package/src/locales/zh-CN.json +876 -872
  43. package/dist/package/src/locales/zh-TW.json +876 -871
  44. package/dist/package/src/module.ts +3 -17
  45. package/dist/package/src/rpc/base/v1/ai_session.ts +13 -2
  46. package/dist/package/src/rpc/base/v1/ai_tool.ts +10 -1
  47. package/dist/package/src/rpc/base/v1/config.ts +47 -0
  48. package/dist/package/src/rpc/system/admin/v1/auth.ts +1 -1
  49. package/dist/package/src/rpc/system/admin/v1/base_config.ts +24 -7
  50. package/dist/package/src/rpc/system/admin/v1/base_dict.ts +7 -79
  51. package/dist/package/src/rpc/system/admin/v1/base_job.ts +10 -1
  52. package/dist/package/src/rpc/system/admin/v1/base_language.ts +8 -2
  53. package/dist/package/src/rpc/system/admin/v1/base_menu.ts +5 -41
  54. package/dist/package/src/rpc/system/admin/v1/base_migration.ts +8 -8
  55. package/dist/package/src/rpc/system/admin/v1/base_role.ts +14 -1
  56. package/dist/package/src/rpc/system/admin/v1/base_translation.ts +54 -81
  57. package/dist/package/src/rpc/system/admin/v1/base_user.ts +12 -1
  58. package/dist/package/src/rpc/system/admin/v1/code_gen.ts +11 -11
  59. package/dist/package/src/rpc/system/admin/v1/code_gen_table.ts +12 -1
  60. package/dist/package/src/rpc/system/admin/v1/common.ts +21 -0
  61. package/dist/package/src/rpc/system/admin/v1/ops_monitoring.ts +255 -0
  62. package/dist/package/src/views/ai/chat/components/ChatPanel.vue +36 -36
  63. package/dist/package/src/views/ai/chat/components/SessionPanel.vue +6 -6
  64. package/dist/package/src/views/ai/chat/components/XSender.vue +20 -20
  65. package/dist/package/src/views/ai/chat/index.vue +33 -32
  66. package/dist/package/src/views/ai/chat/message.ts +16 -15
  67. package/dist/package/src/views/base/api/index.vue +55 -56
  68. package/dist/package/src/views/base/area/index.vue +18 -19
  69. package/dist/package/src/views/base/config/index.vue +143 -133
  70. package/dist/package/src/views/base/dept/index.vue +42 -43
  71. package/dist/package/src/views/base/dict/index.vue +49 -45
  72. package/dist/package/src/views/base/dict/item.vue +54 -49
  73. package/dist/package/src/views/base/job/index.vue +51 -52
  74. package/dist/package/src/views/base/job/log.vue +18 -18
  75. package/dist/package/src/views/{tool → base}/language/index.vue +51 -47
  76. package/dist/package/src/views/base/log/index.vue +40 -40
  77. package/dist/package/src/views/base/menu/index.vue +220 -177
  78. package/dist/package/src/views/base/migration/index.vue +24 -24
  79. package/dist/package/src/views/base/post/index.vue +42 -43
  80. package/dist/package/src/views/base/role/index.vue +54 -55
  81. package/dist/package/src/views/base/tenant/index.vue +42 -43
  82. package/dist/package/src/views/base/user/components/dept-tree.vue +1 -1
  83. package/dist/package/src/views/base/user/index.vue +69 -71
  84. package/dist/package/src/views/profile/components/base.vue +9 -9
  85. package/dist/package/src/views/profile/components/password.vue +19 -20
  86. package/dist/package/src/views/profile/components/security.vue +20 -20
  87. package/dist/package/src/views/profile/index.vue +3 -3
  88. package/dist/package/src/views/tool/api-doc/index.vue +1 -1
  89. package/dist/package/src/views/tool/code-gen/code-preview/index.vue +13 -13
  90. package/dist/package/src/views/tool/code-gen/columns/index.vue +89 -89
  91. package/dist/package/src/views/tool/code-gen/components/CodeGenLocaleEditor.vue +5 -5
  92. package/dist/package/src/views/tool/code-gen/components/CodeGenProgressDialog.vue +21 -21
  93. package/dist/package/src/views/tool/code-gen/components/CodePreviewPane.vue +5 -5
  94. package/dist/package/src/views/tool/code-gen/config.ts +60 -60
  95. package/dist/package/src/views/tool/code-gen/preview/data.ts +2 -2
  96. package/dist/package/src/views/tool/code-gen/preview/index.vue +30 -31
  97. package/dist/package/src/views/tool/code-gen/proto/index.vue +43 -43
  98. package/dist/package/src/views/tool/code-gen/table/index.vue +95 -95
  99. package/dist/package/src/views/tool/ops-monitoring/index.vue +1175 -0
  100. package/dist/package/src/views/tool/project-doc/index.vue +7 -7
  101. package/package.json +2 -2
  102. package/dist/package/declarations/src/rpc/base/v1/enum.d.ts +0 -43
  103. package/dist/package/declarations/src/rpc/system/common/v1/enum.d.ts +0 -67
  104. package/dist/package/src/rpc/base/v1/enum.ts +0 -54
  105. package/dist/package/src/rpc/system/common/v1/enum.ts +0 -80
  106. /package/dist/package/declarations/src/views/{tool → base}/language/index.vue.d.ts +0 -0
@@ -1,929 +1,933 @@
1
1
  {
2
- "system.ai.requestFailedWithStatus": "AI assistant request failed ({status})",
2
+ "system.ai.request_failed_with_status": "AI assistant request failed ({status})",
3
3
  "system.profile.title": "Profile",
4
- "system.common.action.createResource": "Create {resource}",
5
- "system.common.action.deleteResource": "Delete {resource}",
6
- "system.common.action.editResource": "Edit {resource}",
7
- "system.common.action.refreshCache": "Refresh cache",
8
- "system.common.dialog.cancelDelete": "{resource} deletion cancelled",
9
- "system.common.dialog.deleteBatch": "Delete the selected {count} {resource} {unit}?",
10
- "system.common.dialog.deleteSelected": "Delete the selected {resource}?",
11
- "system.common.dialog.deleteSingle": "Delete this {resource}?",
12
- "system.common.dialog.resourceField": "{field}: {value}",
13
- "system.common.dialog.statusChange": "{action} this {resource}?\n{field}: {value}",
14
- "system.common.field.createdAt": "Created at",
15
- "system.common.field.operation": "Actions",
16
- "system.common.field.remark": "Remarks",
17
- "system.common.field.sort": "Sort order",
18
- "system.common.field.status": "Status",
19
- "system.common.field.tenant": "Tenant",
20
- "system.common.field.updatedAt": "Updated at",
21
- "system.common.message.createSuccess": "{resource} created",
22
- "system.common.message.deleteSuccess": "{resource} deleted",
23
- "system.common.message.loadChildrenFailed": "Failed to load child {resource}",
24
- "system.common.message.refreshSuccess": "Refreshed",
25
- "system.common.message.selectDeleteItem": "Select items to delete",
26
- "system.common.message.statusSuccess": "{action} completed",
27
- "system.common.message.updateSuccess": "{resource} updated",
28
- "system.common.placeholder.remark": "Enter remarks",
29
- "system.common.validation.maxLength": "{field} must not exceed {max} characters",
30
- "system.common.validation.requiredInput": "Enter {field}",
31
- "system.common.validation.requiredSelect": "Select {field}",
32
- "system.common.validation.sortPositive": "Sort order must be greater than 0",
33
- "system.area.action.create": "Create administrative area",
34
- "system.area.action.edit": "Edit administrative area",
35
- "system.area.field.name": "Area name",
36
- "system.area.field.parent": "Parent area",
37
- "system.area.message.deleteBatch": "Delete the selected administrative areas?",
38
- "system.area.message.deleteSingle": "Delete this administrative area?",
39
- "system.area.resource": "administrative area",
40
- "system.common.field.index": "No.",
41
- "system.language.resource": "language",
42
- "system.language.action.create": "Create language",
43
- "system.language.action.edit": "Edit language",
44
- "system.language.field.code": "Language code",
45
- "system.language.field.name": "Language name",
46
- "system.language.field.nativeName": "Native name",
47
- "system.language.field.sort": "Sort",
48
- "system.language.field.primary": "Primary language",
49
- "system.language.field.status": "Enabled",
50
- "system.language.placeholder.code": "Enter the language code",
51
- "system.language.placeholder.name": "Enter the language name",
52
- "system.language.placeholder.nativeName": "Enter the native name",
53
- "system.language.placeholder.sort": "Enter the sort order",
54
- "system.language.message.primaryCannotDisable": "The primary language cannot be disabled",
55
- "system.language.message.primaryCannotDelete": "The primary language cannot be deleted",
56
- "system.language.message.confirmStatus": "Change language status?\nLanguage: {name}\nAction: {action}",
57
- "system.language.message.confirmPrimary": "Set this language as primary?\nLanguage: {name}",
58
- "system.language.message.confirmDelete": "Delete language?\nLanguage: {name}",
59
- "system.area.value.root": "Top level",
60
- "system.post.field.code": "Post code",
61
- "system.post.field.name": "Post name",
62
- "system.post.resource": "post",
63
- "system.dept.field.name": "Department name",
64
- "system.dept.field.parent": "Parent department",
65
- "system.dept.resource": "department",
66
- "system.dept.value.root": "Top-level department",
67
- "system.tenant.field.code": "Tenant code",
68
- "system.tenant.field.contactName": "Contact",
69
- "system.tenant.field.contactPhone": "Contact phone",
70
- "system.tenant.field.name": "Tenant name",
71
- "system.tenant.message.phoneInvalid": "Enter a valid contact phone number",
72
- "system.tenant.message.protectedDelete": "The default tenant cannot be deleted",
73
- "system.tenant.message.protectedStatus": "The default tenant status cannot be changed",
74
- "system.tenant.resource": "tenant",
75
- "system.config.field.key": "Configuration key",
76
- "system.config.field.name": "Configuration name",
77
- "system.config.field.site": "Configuration location",
78
- "system.config.field.type": "Configuration type",
79
- "system.config.field.value": "Configuration value",
80
- "system.config.message.imageMissing": "No image configured",
81
- "system.config.message.richTextMissing": "No rich text configured",
82
- "system.config.message.valueMissing": "Not configured",
83
- "system.config.resource": "system configuration",
84
- "system.log.field.browser": "Browser",
85
- "system.log.field.clientId": "Client ID",
86
- "system.log.field.clientIp": "Client IP",
87
- "system.log.field.clientName": "Client name",
88
- "system.log.field.costTime": "Execution time (ms)",
89
- "system.log.field.location": "Location",
90
- "system.log.field.method": "Request method",
91
- "system.log.field.operation": "Operation",
92
- "system.log.field.os": "Operating system",
93
- "system.log.field.path": "Request path",
94
- "system.log.field.reason": "Failure reason",
95
- "system.log.field.referer": "Referrer",
96
- "system.log.field.requestBody": "Request body",
97
- "system.log.field.requestHeader": "Request headers",
98
- "system.log.field.requestId": "Request ID",
99
- "system.log.field.requestResult": "Response",
100
- "system.log.field.requestTime": "Operation time",
101
- "system.log.field.requestUri": "Request URI",
102
- "system.log.field.result": "Result",
103
- "system.log.field.statusCode": "Status code",
104
- "system.log.field.userId": "User ID",
105
- "system.log.field.userName": "Username",
106
- "system.log.section.basic": "Basic information",
107
- "system.log.section.client": "Client information",
108
- "system.log.section.request": "Request information",
109
- "system.log.section.user": "User information",
110
- "system.log.status.failed": "Failed",
111
- "system.log.status.success": "Succeeded",
112
- "system.log.title.detail": "System log details",
113
- "system.common.field.action": "Actions",
114
- "system.common.placeholder.startDate": "Start date",
115
- "system.common.placeholder.endDate": "End date",
116
- "system.common.field.status": "Status",
117
- "system.jobLog.title.detail": "Scheduled job log details",
118
- "system.jobLog.section.basic": "Basic information",
119
- "system.jobLog.section.execution": "Execution information",
120
- "system.jobLog.field.input": "Input",
121
- "system.jobLog.field.output": "Output",
122
- "system.jobLog.field.error": "Failure reason",
123
- "system.jobLog.field.executeTime": "Execution time",
124
- "system.jobLog.field.processTime": "Duration",
125
- "system.jobLog.field.processTimeMs": "Duration (ms)",
126
- "system.apiDoc.message.empty": "No documents",
127
- "system.migration.field.module": "Module",
128
- "system.migration.field.dataSource": "Data source",
129
- "system.migration.field.version": "Version",
130
- "system.migration.placeholder.module": "Enter migration module",
131
- "system.migration.placeholder.dataSource": "Enter data source name",
132
- "system.migration.placeholder.version": "Enter version",
133
- "system.migration.message.emptyHistory": "No upgrade history",
134
- "system.migration.title.history": "Database upgrade history",
135
- "system.migration.title.list": "Upgrade records",
136
- "system.migration.value.defaultModule": "Database migration",
137
- "system.migration.message.total": "{total} records",
138
- "system.migration.section.description": "Upgrade notes",
139
- "system.migration.section.sql": "SQL scripts",
140
- "system.migration.field.upScript": "Upgrade script",
141
- "system.migration.field.downScript": "Rollback script",
142
- "system.migration.action.copyUpScript": "Copy upgrade script",
143
- "system.migration.action.copyDownScript": "Copy rollback script",
144
- "system.migration.message.emptyDetail": "This record has no description or scripts",
145
- "system.migration.message.selectRecord": "Select an upgrade record",
146
- "system.migration.message.copySuccess": "SQL script copied",
147
- "system.migration.message.copyFailed": "Copy failed. Select and copy the script manually",
148
- "system.common.value.yes": "Yes",
149
- "system.common.value.no": "No",
150
- "system.common.value.unknown": "Unknown",
151
- "system.api.title.detail": "API details",
152
- "system.api.title.edit": "Edit API",
153
- "system.api.field.toolName": "Tool name",
154
- "system.api.field.toolPrompts": "Tool prompts",
155
- "system.api.field.serviceName": "Service name",
156
- "system.api.field.serviceDescription": "Service description",
157
- "system.api.field.description": "Description",
158
- "system.api.field.operation": "Operation",
159
- "system.api.field.method": "Request method",
160
- "system.api.field.path": "Request URL",
161
- "system.api.field.mcpTool": "MCP tool",
162
- "system.api.field.agentTool": "Agent tool",
163
- "system.api.field.mcpStatus": "MCP tool status",
164
- "system.api.field.agentStatus": "Agent tool status",
165
- "system.api.placeholder.toolPrompt": "Enter a tool prompt",
166
- "system.api.section.parameters": "Request parameters",
167
- "system.api.section.requestBody": "Request body",
168
- "system.api.section.responses": "Responses",
169
- "system.api.doc.field.name": "Field",
170
- "system.api.doc.field.location": "Location",
171
- "system.api.doc.field.type": "Type",
172
- "system.api.doc.field.required": "Required",
173
- "system.api.doc.field.description": "Description",
174
- "system.api.message.noParameters": "No request parameters",
175
- "system.api.message.noRequestBody": "No request body",
176
- "system.api.message.noResponseBody": "No response body",
177
- "system.api.message.noResponses": "No responses",
178
- "system.api.message.saveSuccess": "Saved successfully",
179
- "system.api.message.confirmMcpStatus": "{action} the MCP tool capability for this API?\nAPI: {api}",
180
- "system.api.message.confirmAgentStatus": "{action} the Agent tool capability for this API?\nAPI: {api}",
181
- "system.job.action.create": "Create scheduled job",
182
- "system.job.action.edit": "Edit scheduled job",
183
- "system.job.action.start": "Start",
184
- "system.job.action.stop": "Stop",
185
- "system.job.action.execute": "Run once",
186
- "system.job.action.log": "Logs",
187
- "system.job.action.addArg": "Add parameter",
188
- "system.job.field.name": "Job name",
189
- "system.job.field.invokeTarget": "Target",
190
- "system.job.field.cron": "Cron expression",
191
- "system.job.field.args": "Target parameters",
192
- "system.job.field.argsShort": "Parameters",
193
- "system.job.field.argKey": "Parameter",
194
- "system.job.field.argValue": "Value",
195
- "system.job.field.entryId": "Job ID",
196
- "system.job.placeholder.name": "Enter job name",
197
- "system.job.placeholder.invokeTarget": "Enter target",
198
- "system.job.validation.argKeyRequired": "Every parameter must have a key",
199
- "system.job.message.createSuccess": "Scheduled job created",
200
- "system.job.message.updateSuccess": "Scheduled job updated",
201
- "system.job.message.confirmStatus": "{action} this scheduled job?\nJob name: {name}",
202
- "system.job.message.confirmDeleteSingle": "Delete this scheduled job?\nJob name: {name}",
203
- "system.job.message.confirmDeleteBatch": "Delete the selected {count} scheduled jobs?",
204
- "system.job.message.confirmDeleteSelected": "Delete the selected scheduled jobs?",
205
- "system.job.message.deleteSuccess": "Scheduled job deleted",
206
- "system.job.message.deleteCanceled": "Scheduled job deletion canceled",
207
- "system.job.message.confirmStart": "Start this scheduled job?\nJob name: {name}",
208
- "system.job.message.startSuccess": "Job started",
209
- "system.job.message.startCanceled": "Job start canceled",
210
- "system.job.message.confirmStop": "Stop this scheduled job?\nJob name: {name}",
211
- "system.job.message.stopSuccess": "Job stopped",
212
- "system.job.message.stopCanceled": "Job stop canceled",
213
- "system.job.message.confirmExecute": "Run this scheduled job once?\nJob name: {name}",
214
- "system.job.message.executeSuccess": "Job executed",
215
- "system.job.message.executeCanceled": "Job execution canceled",
216
- "system.job.title.log": "[{name}] Scheduled job logs",
217
- "system.role.action.create": "Create role",
218
- "system.role.action.edit": "Edit role",
219
- "system.role.action.assignPermission": "Assign permissions",
220
- "system.role.action.collapseNodes": "Collapse nodes",
221
- "system.role.action.expandNodes": "Expand nodes",
222
- "system.role.title.assignPermission": "[{name}] Permission assignment",
223
- "system.role.field.tenant": "Tenant",
224
- "system.role.field.tenantShort": "Tenant",
225
- "system.role.field.name": "Role name",
226
- "system.role.field.code": "Role code",
227
- "system.role.field.dataScope": "Data scope",
228
- "system.role.field.menuPermission": "Menu permissions",
229
- "system.role.field.treeOperation": "Tree actions",
230
- "system.role.field.selectionMode": "Selection mode",
231
- "system.role.field.parentChildLinked": "Parent-child linkage",
232
- "system.role.placeholder.tenant": "Select tenant",
233
- "system.role.placeholder.name": "Enter role name",
234
- "system.role.placeholder.code": "Enter role code",
235
- "system.role.placeholder.menuPermission": "Menu permission name",
236
- "system.role.validation.menuDuplicate": "Menu permissions cannot contain duplicates",
237
- "system.role.message.parentChildLinkedTip": "Turn off parent-child linkage to select menu permissions without automatically selecting submenus or button permissions",
238
- "system.role.message.createSuccess": "Role created",
239
- "system.role.message.updateSuccess": "Role updated",
240
- "system.role.message.protectedStatus": "The default role status cannot be changed",
241
- "system.role.message.protectedDelete": "The default role cannot be deleted",
242
- "system.role.message.protectedPermission": "This tenant cannot assign permissions to the built-in role",
243
- "system.role.message.confirmStatus": "{action} this role?\nRole name: {name}",
244
- "system.role.message.confirmDeleteSingle": "Delete this role?\nRole name: {name}",
245
- "system.role.message.confirmDeleteBatch": "Delete the selected {count} roles?",
246
- "system.role.message.confirmDeleteSelected": "Delete the selected roles?",
247
- "system.role.message.deleteSuccess": "Role deleted",
248
- "system.role.message.deleteCanceled": "Role deletion canceled",
249
- "system.role.message.assignSuccess": "Permissions assigned",
250
- "system.user.action.create": "Create user",
251
- "system.user.action.edit": "Edit user",
252
- "system.user.action.resetPassword": "Reset password",
253
- "system.user.title.departmentList": "Departments",
254
- "system.user.title.resetPassword": "Reset password: {name}",
255
- "system.user.field.tenant": "Tenant",
256
- "system.user.field.tenantShort": "Tenant",
257
- "system.user.field.userName": "Username",
258
- "system.user.field.userCode": "User code",
259
- "system.user.field.nickName": "Nickname",
260
- "system.user.field.nickNameShort": "Nickname",
261
- "system.user.field.role": "Role",
262
- "system.user.field.department": "Department",
263
- "system.user.field.departmentShort": "Department",
264
- "system.user.field.post": "Post",
265
- "system.user.field.postShort": "Post",
266
- "system.user.field.password": "Password",
267
- "system.user.field.newPassword": "New password",
268
- "system.user.field.passwordStrength": "Password strength",
269
- "system.user.field.gender": "Gender",
270
- "system.user.placeholder.tenant": "Select tenant",
271
- "system.user.placeholder.userName": "Enter username",
272
- "system.user.placeholder.userCode": "Enter user code",
273
- "system.user.placeholder.nickName": "Enter nickname",
274
- "system.user.placeholder.department": "Select department",
275
- "system.user.placeholder.post": "Select post",
276
- "system.user.placeholder.password": "Enter password",
277
- "system.user.placeholder.newPassword": "Enter new password",
278
- "system.user.message.resetPasswordSuccess": "Password reset successfully\nUser: {name}",
279
- "system.user.message.createSuccess": "User created",
280
- "system.user.message.updateSuccess": "User updated",
281
- "system.user.message.protectedAccount": "Built-in administrator accounts can only be changed from the profile page",
282
- "system.user.message.confirmStatus": "{action} this user?\nUser: {name}",
283
- "system.user.message.confirmDeleteSingle": "Delete this user?\nUser: {name}",
284
- "system.user.message.confirmDeleteBatch": "Delete the selected {count} users?",
285
- "system.user.message.confirmDeleteSelected": "Delete the selected users?",
286
- "system.user.message.deleteSuccess": "User deleted",
287
- "system.user.message.deleteCanceled": "User deletion canceled",
288
- "system.translation.field.translations": "Translations",
289
- "system.translation.field.nameTranslations": "Name translations",
290
- "system.translation.field.valueTranslations": "Value translations",
291
- "system.translation.placeholder.text": "Enter the {language} translation",
292
- "system.translation.action.generateDraft": "Generate {language} draft",
293
- "system.translation.message.saveBeforeDraft": "Save the Chinese source before generating a machine translation draft",
294
- "system.translation.message.draftSuccess": "{language} draft generated",
295
- "system.translation.status.pending": "Pending",
296
- "system.translation.status.machine": "Machine draft",
297
- "system.translation.status.reviewed": "Reviewed",
298
- "system.translation.status.sourceChanged": "Source changed",
299
- "system.menu.title.list": "Menus",
300
- "system.menu.action.create": "Create menu",
301
- "system.menu.action.edit": "Edit menu",
302
- "system.menu.action.addRouteParam": "Add route parameter",
303
- "system.menu.type.folder": "Folder",
304
- "system.menu.type.menu": "Menu",
305
- "system.menu.type.button": "Button",
306
- "system.menu.type.external": "External link",
307
- "system.menu.access.public": "Public",
308
- "system.menu.access.guest": "Guests only",
309
- "system.menu.access.authenticated": "Signed-in users",
310
- "system.menu.field.parent": "Parent menu",
311
- "system.menu.field.type": "Menu type",
312
- "system.menu.field.name": "Menu name",
313
- "system.menu.field.title": "Menu title",
314
- "system.menu.field.buttonName": "Button name",
315
- "system.menu.field.icon": "Menu icon",
316
- "system.menu.field.defaultIcon": "Default icon",
317
- "system.menu.field.selectedIcon": "Selected icon",
318
- "system.menu.field.path": "Route path",
319
- "system.menu.field.pathOrPermission": "Route path / permission",
320
- "system.menu.field.logicalPath": "Logical path",
321
- "system.menu.field.permission": "Permission identifier",
322
- "system.menu.field.internalPath": "Internal path",
323
- "system.menu.field.routeName": "Route name",
324
- "system.menu.field.logicalName": "Logical name",
325
- "system.menu.field.component": "Component path",
326
- "system.menu.field.redirect": "Redirect URL",
327
- "system.menu.field.redirectRoute": "Redirect route",
328
- "system.menu.field.externalUrl": "External URL",
329
- "system.menu.field.displayStatus": "Visibility",
330
- "system.menu.field.viewKey": "View key",
331
- "system.menu.field.access": "Access mode",
332
- "system.menu.field.hidden": "Hidden",
333
- "system.menu.field.alwaysShow": "Always show",
334
- "system.menu.field.keepAlive": "Cache page",
335
- "system.menu.field.fullscreen": "Fullscreen mode",
336
- "system.menu.field.affix": "Pinned tab",
337
- "system.menu.field.routeParams": "Route parameters",
338
- "system.menu.field.apiList": "API list",
339
- "system.menu.status.hidden": "Hidden",
340
- "system.menu.status.visible": "Visible",
341
- "system.menu.placeholder.parent": "Select parent menu",
342
- "system.menu.placeholder.title": "Enter menu title",
343
- "system.menu.placeholder.buttonName": "Enter button name",
344
- "system.menu.placeholder.icon": "Select menu icon",
345
- "system.menu.placeholder.defaultIcon": "For example, HOME_DEFAULT",
346
- "system.menu.placeholder.selectedIcon": "For example, HOME_SELECTED",
347
- "system.menu.placeholder.logicalName": "For example, AppHome",
348
- "system.menu.placeholder.routeName": "Enter route name",
349
- "system.menu.placeholder.viewKey": "For example, HOME",
350
- "system.menu.placeholder.access": "Select access mode",
351
- "system.menu.placeholder.permission": "Enter button permission identifier",
352
- "system.menu.placeholder.logicalPath": "For example, app/home",
353
- "system.menu.placeholder.redirectRoute": "Enter redirect route",
354
- "system.menu.tooltip.mobileIcon": "Enter an icon key registered by the mobile module or an HTTPS image URL.",
355
- "system.menu.tooltip.logicalName": "Use a unique logical name with the App prefix for mobile pages.",
356
- "system.menu.tooltip.routeName": "For page caching, this must match the page defineOptions name. PascalCase is recommended.",
357
- "system.menu.tooltip.viewKey": "This must match the stable viewKey registered by the mobile module. Do not enter a component file path.",
358
- "system.menu.tooltip.component": "Enter the full module/view path, such as system/base/user/index. The .vue suffix is optional.",
359
- "system.menu.tooltip.alwaysShow": "When enabled, the parent remains visible even if it has only one child; otherwise only the child is shown.",
360
- "system.menu.tooltip.routeParams": "The page reads these values from useRoute().query.",
361
- "system.menu.tooltip.logicalPath": "Use a stable path with the app/ prefix instead of a physical uni-app page path.",
362
- "system.menu.tooltip.permission": "Button menus use permission identifiers such as base:user:create.",
363
- "system.menu.tooltip.internalPath": "External links use a unique internal path such as external/example; enter the actual URL separately.",
364
- "system.menu.tooltip.folderPath": "Folders do not need a path and only organize child menus.",
365
- "system.menu.tooltip.routePath": "Menu paths usually omit the leading slash, for example user.",
366
- "system.menu.validation.defaultIcon": "Enter the default icon",
367
- "system.menu.validation.viewKey": "Enter the view key",
368
- "system.menu.validation.selectedIcon": "Enter the selected icon",
369
- "system.menu.validation.permission": "Enter the permission identifier",
370
- "system.menu.validation.externalUrl": "Enter the complete external URL",
371
- "system.menu.validation.logicalPath": "Enter the logical path",
372
- "system.menu.validation.routePath": "Enter the route path",
373
- "system.menu.validation.appPathPrefix": "Mobile logical paths must use the app/ prefix",
374
- "system.menu.validation.httpUrl": "Enter a complete HTTP URL",
375
- "system.menu.validation.logicalName": "Enter the logical name",
376
- "system.menu.validation.appNamePrefix": "Mobile logical names must use the App prefix",
377
- "system.menu.validation.component": "Enter the component path",
378
- "system.menu.value.availableApi": "Available APIs",
379
- "system.menu.value.selectedApi": "Selected APIs",
380
- "system.menu.message.createSuccess": "Menu created",
381
- "system.menu.message.updateSuccess": "Menu updated",
382
- "system.menu.message.confirmStatus": "{action} this menu?\nMenu: {name}",
383
- "system.menu.message.protectedDelete": "Fixed menus cannot be deleted",
384
- "system.menu.message.confirmDeleteSingle": "Delete this menu?\nMenu: {name}",
385
- "system.menu.message.confirmDeleteBatch": "Delete the selected {count} menu items?",
386
- "system.menu.message.confirmDeleteSelected": "Delete the selected menu items?",
387
- "system.menu.message.deleteSuccess": "Menu deleted",
388
- "system.menu.message.deleteCanceled": "Menu deletion canceled",
389
- "system.common.value.none": "None",
390
- "system.dict.action.create": "Create dictionary",
391
- "system.dict.action.edit": "Edit dictionary",
392
- "system.dict.action.items": "Dictionary items",
393
- "system.dict.title.items": "[{name}] Dictionary items",
394
- "system.dict.field.name": "Dictionary name",
395
- "system.dict.field.code": "Dictionary code",
396
- "system.dict.placeholder.name": "Enter dictionary name",
397
- "system.dict.placeholder.code": "Enter dictionary code",
398
- "system.dict.message.createSuccess": "Dictionary created",
399
- "system.dict.message.updateSuccess": "Dictionary updated",
400
- "system.dict.message.confirmStatus": "{action} this dictionary?\nDictionary: {name}",
401
- "system.dict.message.confirmDeleteSingle": "Delete this dictionary?\nDictionary: {name}",
402
- "system.dict.message.confirmDeleteBatch": "Delete the selected {count} dictionaries?",
403
- "system.dict.message.confirmDeleteSelected": "Delete the selected dictionaries?",
404
- "system.dict.message.deleteSuccess": "Dictionary deleted",
405
- "system.dict.message.deleteCanceled": "Dictionary deletion canceled",
406
- "system.dictItem.action.create": "Create dictionary item",
407
- "system.dictItem.action.edit": "Edit dictionary item",
408
- "system.dictItem.action.clearTag": "Clear",
409
- "system.dictItem.field.label": "Dictionary label",
410
- "system.dictItem.field.value": "Dictionary value",
411
- "system.dictItem.field.tagType": "Tag type",
412
- "system.dictItem.placeholder.label": "Enter dictionary label",
413
- "system.dictItem.placeholder.value": "Enter dictionary value",
414
- "system.dictItem.validation.label": "Enter a dictionary label of at most 100 characters",
415
- "system.dictItem.validation.value": "Enter a dictionary value of at most 50 characters",
416
- "system.dictItem.value.tagPreview": "Tag preview",
417
- "system.dictItem.message.createSuccess": "Dictionary item created",
418
- "system.dictItem.message.updateSuccess": "Dictionary item updated",
419
- "system.dictItem.message.confirmStatus": "{action} this dictionary item?\nLabel: {name}",
420
- "system.dictItem.message.confirmDeleteSingle": "Delete this dictionary item?\nLabel: {name}",
421
- "system.dictItem.message.confirmDeleteBatch": "Delete the selected {count} dictionary items?",
422
- "system.dictItem.message.confirmDeleteSelected": "Delete the selected dictionary items?",
423
- "system.dictItem.message.deleteSuccess": "Dictionary item deleted",
424
- "system.dictItem.message.deleteCanceled": "Dictionary item deletion canceled",
4
+ "system.base.area.action.create": "Create administrative area",
5
+ "system.base.area.action.edit": "Edit administrative area",
6
+ "system.base.area.field.name": "Area name",
7
+ "system.base.area.field.parent": "Parent area",
8
+ "system.base.area.message.delete_batch": "Delete the selected administrative areas?",
9
+ "system.base.area.message.delete_single": "Delete this administrative area?",
10
+ "system.base.area.resource": "administrative area",
11
+ "system.base.language.resource": "language",
12
+ "system.base.language.action.create": "Create language",
13
+ "system.base.language.action.edit": "Edit language",
14
+ "system.base.language.field.code": "Language code",
15
+ "system.base.language.field.name": "Language name",
16
+ "system.base.language.field.native_name": "Native name",
17
+ "system.base.language.field.sort": "Sort",
18
+ "system.base.language.field.primary": "Primary language",
19
+ "system.base.language.field.status": "Enabled",
20
+ "system.base.language.placeholder.code": "Enter the language code",
21
+ "system.base.language.placeholder.name": "Enter the language name",
22
+ "system.base.language.placeholder.native_name": "Enter the native name",
23
+ "system.base.language.placeholder.sort": "Enter the sort order",
24
+ "system.base.language.message.primary_cannot_disable": "The primary language cannot be disabled",
25
+ "system.base.language.message.primary_cannot_delete": "The primary language cannot be deleted",
26
+ "system.base.language.message.confirm_status": "Change language status?\nLanguage: {name}\nAction: {action}",
27
+ "system.base.language.message.confirm_primary": "Set this language as primary?\nLanguage: {name}",
28
+ "system.base.language.message.confirm_delete": "Delete language?\nLanguage: {name}",
29
+ "system.base.area.value.root": "Top level",
30
+ "system.base.post.field.code": "Post code",
31
+ "system.base.post.field.name": "Post name",
32
+ "system.base.post.resource": "post",
33
+ "system.base.dept.field.name": "Department name",
34
+ "system.base.dept.field.parent": "Parent department",
35
+ "system.base.dept.resource": "department",
36
+ "system.base.dept.value.root": "Top-level department",
37
+ "system.base.tenant.field.code": "Tenant code",
38
+ "system.base.tenant.field.contact_name": "Contact",
39
+ "system.base.tenant.field.contact_phone": "Contact phone",
40
+ "system.base.tenant.field.name": "Tenant name",
41
+ "system.base.tenant.message.phone_invalid": "Enter a valid contact phone number",
42
+ "system.base.tenant.message.protected_delete": "The default tenant cannot be deleted",
43
+ "system.base.tenant.message.protected_status": "The default tenant status cannot be changed",
44
+ "system.base.tenant.resource": "tenant",
45
+ "system.base.config.field.key": "Configuration key",
46
+ "system.base.config.field.name": "Configuration name",
47
+ "system.base.config.field.site": "Configuration location",
48
+ "system.base.config.field.type": "Configuration type",
49
+ "system.base.config.field.value": "Configuration value",
50
+ "system.base.config.message.image_missing": "No image configured",
51
+ "system.base.config.message.rich_text_missing": "No rich text configured",
52
+ "system.base.config.message.value_missing": "Not configured",
53
+ "system.base.config.resource": "system configuration",
54
+ "system.base.log.field.browser": "Browser",
55
+ "system.base.log.field.client_id": "Client ID",
56
+ "system.base.log.field.client_ip": "Client IP",
57
+ "system.base.log.field.client_name": "Client name",
58
+ "system.base.log.field.cost_time": "Execution time (ms)",
59
+ "system.base.log.field.location": "Location",
60
+ "system.base.log.field.method": "Request method",
61
+ "system.base.log.field.operation": "Operation",
62
+ "system.base.log.field.os": "Operating system",
63
+ "system.base.log.field.path": "Request path",
64
+ "system.base.log.field.reason": "Failure reason",
65
+ "system.base.log.field.referer": "Referrer",
66
+ "system.base.log.field.request_body": "Request body",
67
+ "system.base.log.field.request_header": "Request headers",
68
+ "system.base.log.field.request_id": "Request ID",
69
+ "system.base.log.field.request_result": "Response",
70
+ "system.base.log.field.request_time": "Operation time",
71
+ "system.base.log.field.request_uri": "Request URI",
72
+ "system.base.log.field.result": "Result",
73
+ "system.base.log.field.status_code": "Status code",
74
+ "system.base.log.field.user_id": "User ID",
75
+ "system.base.log.field.user_name": "Username",
76
+ "system.base.log.section.basic": "Basic information",
77
+ "system.base.log.section.client": "Client information",
78
+ "system.base.log.section.request": "Request information",
79
+ "system.base.log.section.user": "User information",
80
+ "system.base.log.status.failed": "Failed",
81
+ "system.base.log.status.success": "Succeeded",
82
+ "system.base.log.title.detail": "System log details",
83
+ "system.base.job.log.title.detail": "Scheduled job log details",
84
+ "system.base.job.log.section.basic": "Basic information",
85
+ "system.base.job.log.section.execution": "Execution information",
86
+ "system.base.job.log.field.input": "Input",
87
+ "system.base.job.log.field.output": "Output",
88
+ "system.base.job.log.field.error": "Failure reason",
89
+ "system.base.job.log.field.execute_time": "Execution time",
90
+ "system.base.job.log.field.process_time": "Duration",
91
+ "system.base.job.log.field.process_time_ms": "Duration (ms)",
92
+ "system.base.api.doc.message.empty": "No documents",
93
+ "system.base.migration.field.module": "Module",
94
+ "system.base.migration.field.data_source": "Data source",
95
+ "system.base.migration.field.version": "Version",
96
+ "system.base.migration.placeholder.module": "Enter migration module",
97
+ "system.base.migration.placeholder.data_source": "Enter data source name",
98
+ "system.base.migration.placeholder.version": "Enter version",
99
+ "system.base.migration.message.empty_history": "No upgrade history",
100
+ "system.base.migration.title.history": "Database upgrade history",
101
+ "system.base.migration.title.list": "Upgrade records",
102
+ "system.base.migration.value.default_module": "Database migration",
103
+ "system.base.migration.message.total": "{total} records",
104
+ "system.base.migration.section.description": "Upgrade notes",
105
+ "system.base.migration.section.sql": "SQL scripts",
106
+ "system.base.migration.field.up_script": "Upgrade script",
107
+ "system.base.migration.field.down_script": "Rollback script",
108
+ "system.base.migration.action.copy_up_script": "Copy upgrade script",
109
+ "system.base.migration.action.copy_down_script": "Copy rollback script",
110
+ "system.base.migration.message.empty_detail": "This record has no description or scripts",
111
+ "system.base.migration.message.select_record": "Select an upgrade record",
112
+ "system.base.migration.message.copy_success": "SQL script copied",
113
+ "system.base.migration.message.copy_failed": "Copy failed. Select and copy the script manually",
114
+ "system.base.api.title.detail": "API details",
115
+ "system.base.api.title.edit": "Edit API",
116
+ "system.base.api.field.tool_name": "Tool name",
117
+ "system.base.api.field.tool_prompts": "Tool prompts",
118
+ "system.base.api.field.service_name": "Service name",
119
+ "system.base.api.field.service_description": "Service description",
120
+ "system.base.api.field.description": "Description",
121
+ "system.base.api.field.operation": "Operation",
122
+ "system.base.api.field.method": "Request method",
123
+ "system.base.api.field.path": "Request URL",
124
+ "system.base.api.field.mcp_tool": "MCP tool",
125
+ "system.base.api.field.agent_tool": "Agent tool",
126
+ "system.base.api.field.mcp_status": "MCP tool status",
127
+ "system.base.api.field.agent_status": "Agent tool status",
128
+ "system.base.api.placeholder.tool_prompt": "Enter a tool prompt",
129
+ "system.base.api.section.parameters": "Request parameters",
130
+ "system.base.api.section.request_body": "Request body",
131
+ "system.base.api.section.responses": "Responses",
132
+ "system.base.api.doc.field.name": "Field",
133
+ "system.base.api.doc.field.location": "Location",
134
+ "system.base.api.doc.field.type": "Type",
135
+ "system.base.api.doc.field.required": "Required",
136
+ "system.base.api.doc.field.description": "Description",
137
+ "system.base.api.message.no_parameters": "No request parameters",
138
+ "system.base.api.message.no_request_body": "No request body",
139
+ "system.base.api.message.no_response_body": "No response body",
140
+ "system.base.api.message.no_responses": "No responses",
141
+ "system.base.api.message.save_success": "Saved successfully",
142
+ "system.base.api.message.confirm_mcp_status": "{action} the MCP tool capability for this API?\nAPI: {api}",
143
+ "system.base.api.message.confirm_agent_status": "{action} the Agent tool capability for this API?\nAPI: {api}",
144
+ "system.base.job.action.create": "Create scheduled job",
145
+ "system.base.job.action.edit": "Edit scheduled job",
146
+ "system.base.job.action.start": "Start",
147
+ "system.base.job.action.stop": "Stop",
148
+ "system.base.job.action.execute": "Run once",
149
+ "system.base.job.action.log": "Logs",
150
+ "system.base.job.action.add_arg": "Add parameter",
151
+ "system.base.job.field.name": "Job name",
152
+ "system.base.job.field.invoke_target": "Target",
153
+ "system.base.job.field.cron": "Cron expression",
154
+ "system.base.job.field.args": "Target parameters",
155
+ "system.base.job.field.args_short": "Parameters",
156
+ "system.base.job.field.arg_key": "Parameter",
157
+ "system.base.job.field.arg_value": "Value",
158
+ "system.base.job.field.entry_id": "Job ID",
159
+ "system.base.job.placeholder.name": "Enter job name",
160
+ "system.base.job.placeholder.invoke_target": "Enter target",
161
+ "system.base.job.validation.arg_key_required": "Every parameter must have a key",
162
+ "system.base.job.message.create_success": "Scheduled job created",
163
+ "system.base.job.message.update_success": "Scheduled job updated",
164
+ "system.base.job.message.confirm_status": "{action} this scheduled job?\nJob name: {name}",
165
+ "system.base.job.message.confirm_delete_single": "Delete this scheduled job?\nJob name: {name}",
166
+ "system.base.job.message.confirm_delete_batch": "Delete the selected {count} scheduled jobs?",
167
+ "system.base.job.message.confirm_delete_selected": "Delete the selected scheduled jobs?",
168
+ "system.base.job.message.delete_success": "Scheduled job deleted",
169
+ "system.base.job.message.delete_canceled": "Scheduled job deletion canceled",
170
+ "system.base.job.message.confirm_start": "Start this scheduled job?\nJob name: {name}",
171
+ "system.base.job.message.start_success": "Job started",
172
+ "system.base.job.message.start_canceled": "Job start canceled",
173
+ "system.base.job.message.confirm_stop": "Stop this scheduled job?\nJob name: {name}",
174
+ "system.base.job.message.stop_success": "Job stopped",
175
+ "system.base.job.message.stop_canceled": "Job stop canceled",
176
+ "system.base.job.message.confirm_execute": "Run this scheduled job once?\nJob name: {name}",
177
+ "system.base.job.message.execute_success": "Job executed",
178
+ "system.base.job.message.execute_canceled": "Job execution canceled",
179
+ "system.base.job.title.log": "[{name}] Scheduled job logs",
180
+ "system.base.role.action.create": "Create role",
181
+ "system.base.role.action.edit": "Edit role",
182
+ "system.base.role.action.assign_permission": "Assign permissions",
183
+ "system.base.role.action.collapse_nodes": "Collapse nodes",
184
+ "system.base.role.action.expand_nodes": "Expand nodes",
185
+ "system.base.role.title.assign_permission": "[{name}] Permission assignment",
186
+ "system.base.role.field.tenant": "Tenant",
187
+ "system.base.role.field.tenant_short": "Tenant",
188
+ "system.base.role.field.name": "Role name",
189
+ "system.base.role.field.code": "Role code",
190
+ "system.base.role.field.data_scope": "Data scope",
191
+ "system.base.role.field.menu_permission": "Menu permissions",
192
+ "system.base.role.field.tree_operation": "Tree actions",
193
+ "system.base.role.field.selection_mode": "Selection mode",
194
+ "system.base.role.field.parent_child_linked": "Parent-child linkage",
195
+ "system.base.role.placeholder.tenant": "Select tenant",
196
+ "system.base.role.placeholder.name": "Enter role name",
197
+ "system.base.role.placeholder.code": "Enter role code",
198
+ "system.base.role.placeholder.menu_permission": "Menu permission name",
199
+ "system.base.role.validation.menu_duplicate": "Menu permissions cannot contain duplicates",
200
+ "system.base.role.message.parent_child_linked_tip": "Turn off parent-child linkage to select menu permissions without automatically selecting submenus or button permissions",
201
+ "system.base.role.message.create_success": "Role created",
202
+ "system.base.role.message.update_success": "Role updated",
203
+ "system.base.role.message.protected_status": "The default role status cannot be changed",
204
+ "system.base.role.message.protected_delete": "The default role cannot be deleted",
205
+ "system.base.role.message.protected_permission": "This tenant cannot assign permissions to the built-in role",
206
+ "system.base.role.message.confirm_status": "{action} this role?\nRole name: {name}",
207
+ "system.base.role.message.confirm_delete_single": "Delete this role?\nRole name: {name}",
208
+ "system.base.role.message.confirm_delete_batch": "Delete the selected {count} roles?",
209
+ "system.base.role.message.confirm_delete_selected": "Delete the selected roles?",
210
+ "system.base.role.message.delete_success": "Role deleted",
211
+ "system.base.role.message.delete_canceled": "Role deletion canceled",
212
+ "system.base.role.message.assign_success": "Permissions assigned",
213
+ "system.base.user.action.create": "Create user",
214
+ "system.base.user.action.edit": "Edit user",
215
+ "system.base.user.action.reset_password": "Reset password",
216
+ "system.base.user.title.department_list": "Departments",
217
+ "system.base.user.title.reset_password": "Reset password: {name}",
218
+ "system.base.user.field.tenant": "Tenant",
219
+ "system.base.user.field.tenant_short": "Tenant",
220
+ "system.base.user.field.user_name": "Username",
221
+ "system.base.user.field.user_code": "User code",
222
+ "system.base.user.field.nick_name": "Nickname",
223
+ "system.base.user.field.nick_name_short": "Nickname",
224
+ "system.base.user.field.role": "Role",
225
+ "system.base.user.field.department": "Department",
226
+ "system.base.user.field.department_short": "Department",
227
+ "system.base.user.field.post": "Post",
228
+ "system.base.user.field.post_short": "Post",
229
+ "system.base.user.field.password": "Password",
230
+ "system.base.user.field.new_password": "New password",
231
+ "system.base.user.field.password_strength": "Password strength",
232
+ "system.base.user.field.gender": "Gender",
233
+ "system.base.user.placeholder.tenant": "Select tenant",
234
+ "system.base.user.placeholder.user_name": "Enter username",
235
+ "system.base.user.placeholder.user_code": "Enter user code",
236
+ "system.base.user.placeholder.nick_name": "Enter nickname",
237
+ "system.base.user.placeholder.department": "Select department",
238
+ "system.base.user.placeholder.post": "Select post",
239
+ "system.base.user.placeholder.password": "Enter password",
240
+ "system.base.user.placeholder.new_password": "Enter new password",
241
+ "system.base.user.message.reset_password_success": "Password reset successfully\nUser: {name}",
242
+ "system.base.user.message.create_success": "User created",
243
+ "system.base.user.message.update_success": "User updated",
244
+ "system.base.user.message.protected_account": "Built-in administrator accounts can only be changed from the profile page",
245
+ "system.base.user.message.confirm_status": "{action} this user?\nUser: {name}",
246
+ "system.base.user.message.confirm_delete_single": "Delete this user?\nUser: {name}",
247
+ "system.base.user.message.confirm_delete_batch": "Delete the selected {count} users?",
248
+ "system.base.user.message.confirm_delete_selected": "Delete the selected users?",
249
+ "system.base.user.message.delete_success": "User deleted",
250
+ "system.base.user.message.delete_canceled": "User deletion canceled",
251
+ "system.base.translation.field.translations": "Translations",
252
+ "system.base.translation.field.name_translations": "Name translations",
253
+ "system.base.translation.field.value_translations": "Value translations",
254
+ "system.base.translation.placeholder.text": "Enter the {language} translation",
255
+ "system.base.translation.action.translate": "Translate",
256
+ "system.base.translation.action.batch_translate": "Translate all",
257
+ "system.base.translation.message.translate_success": "{language} translated",
258
+ "system.base.translation.message.translate_failed": "Failed to translate {language}",
259
+ "system.base.translation.message.batch_translate_success": "Translated {count} languages",
260
+ "system.base.translation.message.batch_translate_partial": "Translated {success} languages, {failed} failed",
261
+ "system.base.translation.message.batch_translate_failed": "Batch translation failed",
262
+ "system.base.menu.title.list": "Menus",
263
+ "system.base.menu.action.create": "Create menu",
264
+ "system.base.menu.action.edit": "Edit menu",
265
+ "system.base.menu.action.add_route_param": "Add route parameter",
266
+ "system.base.menu.type.folder": "Folder",
267
+ "system.base.menu.type.menu": "Menu",
268
+ "system.base.menu.type.button": "Button",
269
+ "system.base.menu.type.external": "External link",
270
+ "system.base.menu.access.public": "Public",
271
+ "system.base.menu.access.guest": "Guests only",
272
+ "system.base.menu.access.authenticated": "Signed-in users",
273
+ "system.base.menu.field.parent": "Parent menu",
274
+ "system.base.menu.field.type": "Menu type",
275
+ "system.base.menu.field.name": "Menu name",
276
+ "system.base.menu.field.title": "Menu title",
277
+ "system.base.menu.field.button_name": "Button name",
278
+ "system.base.menu.field.icon": "Menu icon",
279
+ "system.base.menu.field.default_icon": "Default icon",
280
+ "system.base.menu.field.selected_icon": "Selected icon",
281
+ "system.base.menu.field.path": "Route path",
282
+ "system.base.menu.field.path_or_permission": "Route path / permission",
283
+ "system.base.menu.field.logical_path": "Logical path",
284
+ "system.base.menu.field.permission": "Permission identifier",
285
+ "system.base.menu.field.internal_path": "Internal path",
286
+ "system.base.menu.field.route_name": "Route name",
287
+ "system.base.menu.field.logical_name": "Logical name",
288
+ "system.base.menu.field.component": "Component path",
289
+ "system.base.menu.field.redirect": "Redirect URL",
290
+ "system.base.menu.field.redirect_route": "Redirect route",
291
+ "system.base.menu.field.external_url": "External URL",
292
+ "system.base.menu.field.display_status": "Visibility",
293
+ "system.base.menu.field.view_key": "View key",
294
+ "system.base.menu.field.access": "Access mode",
295
+ "system.base.menu.field.hidden": "Hidden",
296
+ "system.base.menu.field.always_show": "Always show",
297
+ "system.base.menu.field.keep_alive": "Cache page",
298
+ "system.base.menu.field.fullscreen": "Fullscreen mode",
299
+ "system.base.menu.field.affix": "Pinned tab",
300
+ "system.base.menu.field.route_params": "Route parameters",
301
+ "system.base.menu.field.api_list": "API list",
302
+ "system.base.menu.status.hidden": "Hidden",
303
+ "system.base.menu.status.visible": "Visible",
304
+ "system.base.menu.placeholder.parent": "Select parent menu",
305
+ "system.base.menu.placeholder.title": "Enter menu title",
306
+ "system.base.menu.placeholder.button_name": "Enter button name",
307
+ "system.base.menu.placeholder.icon": "Select menu icon",
308
+ "system.base.menu.placeholder.default_icon": "For example, HOME_DEFAULT",
309
+ "system.base.menu.placeholder.selected_icon": "For example, HOME_SELECTED",
310
+ "system.base.menu.placeholder.logical_name": "For example, AppHome",
311
+ "system.base.menu.placeholder.route_name": "Enter route name",
312
+ "system.base.menu.placeholder.view_key": "For example, HOME",
313
+ "system.base.menu.placeholder.access": "Select access mode",
314
+ "system.base.menu.placeholder.permission": "Enter button permission identifier",
315
+ "system.base.menu.placeholder.logical_path": "For example, app/home",
316
+ "system.base.menu.placeholder.redirect_route": "Enter redirect route",
317
+ "system.base.menu.tooltip.mobile_icon": "Enter an icon key registered by the mobile module or an HTTPS image URL.",
318
+ "system.base.menu.tooltip.logical_name": "Use a unique logical name with the App prefix for mobile pages.",
319
+ "system.base.menu.tooltip.route_name": "For page caching, this must match the page defineOptions name. PascalCase is recommended.",
320
+ "system.base.menu.tooltip.view_key": "This must match the stable viewKey registered by the mobile module. Do not enter a component file path.",
321
+ "system.base.menu.tooltip.component": "Enter the full module/view path, such as system/base/user/index. The .vue suffix is optional.",
322
+ "system.base.menu.tooltip.always_show": "When enabled, the parent remains visible even if it has only one child; otherwise only the child is shown.",
323
+ "system.base.menu.tooltip.route_params": "The page reads these values from useRoute().query.",
324
+ "system.base.menu.tooltip.logical_path": "Use a stable path with the app/ prefix instead of a physical uni-app page path.",
325
+ "system.base.menu.tooltip.permission": "Button menus use permission identifiers such as base:user:create.",
326
+ "system.base.menu.tooltip.internal_path": "External links use a unique internal path such as external/example; enter the actual URL separately.",
327
+ "system.base.menu.tooltip.folder_path": "Folders do not need a path and only organize child menus.",
328
+ "system.base.menu.tooltip.route_path": "Menu paths usually omit the leading slash, for example user.",
329
+ "system.base.menu.validation.default_icon": "Enter the default icon",
330
+ "system.base.menu.validation.view_key": "Enter the view key",
331
+ "system.base.menu.validation.selected_icon": "Enter the selected icon",
332
+ "system.base.menu.validation.permission": "Enter the permission identifier",
333
+ "system.base.menu.validation.external_url": "Enter the complete external URL",
334
+ "system.base.menu.validation.logical_path": "Enter the logical path",
335
+ "system.base.menu.validation.route_path": "Enter the route path",
336
+ "system.base.menu.validation.app_path_prefix": "Mobile logical paths must use the app/ prefix",
337
+ "system.base.menu.validation.http_url": "Enter a complete HTTP URL",
338
+ "system.base.menu.validation.logical_name": "Enter the logical name",
339
+ "system.base.menu.validation.app_name_prefix": "Mobile logical names must use the App prefix",
340
+ "system.base.menu.validation.component": "Enter the component path",
341
+ "system.base.menu.value.available_api": "Available APIs",
342
+ "system.base.menu.value.selected_api": "Selected APIs",
343
+ "system.base.menu.message.create_success": "Menu created",
344
+ "system.base.menu.message.update_success": "Menu updated",
345
+ "system.base.menu.message.confirm_status": "{action} this menu?\nMenu: {name}",
346
+ "system.base.menu.message.protected_delete": "Fixed menus cannot be deleted",
347
+ "system.base.menu.message.confirm_delete_single": "Delete this menu?\nMenu: {name}",
348
+ "system.base.menu.message.confirm_delete_batch": "Delete the selected {count} menu items?",
349
+ "system.base.menu.message.confirm_delete_selected": "Delete the selected menu items?",
350
+ "system.base.menu.message.delete_success": "Menu deleted",
351
+ "system.base.menu.message.delete_canceled": "Menu deletion canceled",
352
+ "system.base.dict.action.create": "Create dictionary",
353
+ "system.base.dict.action.edit": "Edit dictionary",
354
+ "system.base.dict.action.items": "Dictionary items",
355
+ "system.base.dict.title.items": "[{name}] Dictionary items",
356
+ "system.base.dict.field.name": "Dictionary name",
357
+ "system.base.dict.field.code": "Dictionary code",
358
+ "system.base.dict.placeholder.name": "Enter dictionary name",
359
+ "system.base.dict.placeholder.code": "Enter dictionary code",
360
+ "system.base.dict.message.create_success": "Dictionary created",
361
+ "system.base.dict.message.update_success": "Dictionary updated",
362
+ "system.base.dict.message.confirm_status": "{action} this dictionary?\nDictionary: {name}",
363
+ "system.base.dict.message.confirm_delete_single": "Delete this dictionary?\nDictionary: {name}",
364
+ "system.base.dict.message.confirm_delete_batch": "Delete the selected {count} dictionaries?",
365
+ "system.base.dict.message.confirm_delete_selected": "Delete the selected dictionaries?",
366
+ "system.base.dict.message.delete_success": "Dictionary deleted",
367
+ "system.base.dict.message.delete_canceled": "Dictionary deletion canceled",
368
+ "system.base.dict.item.action.create": "Create dictionary item",
369
+ "system.base.dict.item.action.edit": "Edit dictionary item",
370
+ "system.base.dict.item.action.clear_tag": "Clear",
371
+ "system.base.dict.item.field.label": "Dictionary label",
372
+ "system.base.dict.item.field.value": "Dictionary value",
373
+ "system.base.dict.item.field.tag_type": "Tag type",
374
+ "system.base.dict.item.placeholder.label": "Enter dictionary label",
375
+ "system.base.dict.item.placeholder.value": "Enter dictionary value",
376
+ "system.base.dict.item.validation.label": "Enter a dictionary label of at most 100 characters",
377
+ "system.base.dict.item.validation.value": "Enter a dictionary value of at most 50 characters",
378
+ "system.base.dict.item.value.tag_preview": "Tag preview",
379
+ "system.base.dict.item.message.create_success": "Dictionary item created",
380
+ "system.base.dict.item.message.update_success": "Dictionary item updated",
381
+ "system.base.dict.item.message.confirm_status": "{action} this dictionary item?\nLabel: {name}",
382
+ "system.base.dict.item.message.confirm_delete_single": "Delete this dictionary item?\nLabel: {name}",
383
+ "system.base.dict.item.message.confirm_delete_batch": "Delete the selected {count} dictionary items?",
384
+ "system.base.dict.item.message.confirm_delete_selected": "Delete the selected dictionary items?",
385
+ "system.base.dict.item.message.delete_success": "Dictionary item deleted",
386
+ "system.base.dict.item.message.delete_canceled": "Dictionary item deletion canceled",
425
387
  "system.profile.account.title": "Account information",
426
- "system.profile.account.navDescription": "Manage your avatar and profile",
388
+ "system.profile.account.nav_description": "Manage your avatar and profile",
427
389
  "system.profile.account.description": "Manage your avatar, nickname, and basic account information.",
428
390
  "system.profile.account.action.edit": "Edit profile",
429
391
  "system.profile.account.field.avatar": "Avatar",
430
- "system.profile.account.field.userName": "Login account",
431
- "system.profile.account.field.nickName": "Nickname",
392
+ "system.profile.account.field.user_name": "Login account",
393
+ "system.profile.account.field.nick_name": "Nickname",
432
394
  "system.profile.account.field.gender": "Gender",
433
395
  "system.profile.account.field.phone": "Bound phone",
434
396
  "system.profile.account.field.role": "Role",
435
397
  "system.profile.account.field.dept": "Department",
436
- "system.profile.account.placeholder.nickName": "Enter a nickname",
437
- "system.profile.account.message.avatarHint": "Use the button at the lower right to change your avatar",
438
- "system.profile.account.message.avatarUpdated": "Avatar updated",
439
- "system.profile.account.message.avatarUploadFailed": "Failed to upload avatar",
398
+ "system.profile.account.placeholder.nick_name": "Enter a nickname",
399
+ "system.profile.account.message.avatar_hint": "Use the button at the lower right to change your avatar",
400
+ "system.profile.account.message.avatar_updated": "Avatar updated",
401
+ "system.profile.account.message.avatar_upload_failed": "Failed to upload avatar",
440
402
  "system.profile.account.message.updated": "Profile updated",
441
403
  "system.profile.value.unbound": "Not bound",
442
404
  "system.profile.value.private": "Private",
443
405
  "system.profile.security.title": "Security settings",
444
- "system.profile.security.navDescription": "Manage verification and security",
406
+ "system.profile.security.nav_description": "Manage verification and security",
445
407
  "system.profile.security.description": "Manage your password, phone verification, and profile completeness.",
446
- "system.profile.security.value.accountNormal": "Account status normal",
447
- "system.profile.security.field.loginPassword": "Login password",
408
+ "system.profile.security.value.account_normal": "Account status normal",
409
+ "system.profile.security.field.login_password": "Login password",
448
410
  "system.profile.security.field.phone": "Bound phone",
449
- "system.profile.security.field.phoneNumber": "Phone number",
411
+ "system.profile.security.field.phone_number": "Phone number",
450
412
  "system.profile.security.field.code": "Verification code",
451
- "system.profile.security.field.phoneVerification": "Phone verification",
452
- "system.profile.security.field.profileCompletion": "Profile completeness",
453
- "system.profile.security.message.passwordHint": "Update your password regularly to avoid using the same password for too long.",
454
- "system.profile.security.message.phoneBound": "Bound: {phone}",
455
- "system.profile.security.message.phoneUnbound": "No phone number is currently bound.",
456
- "system.profile.security.message.oauthBound": "Bound and available for signing in to the admin console.",
457
- "system.profile.security.message.oauthUnbound": "Not bound. Bind it to use this method for admin sign-in.",
458
- "system.profile.security.message.oauthBindSuccess": "Third-party account bound",
459
- "system.profile.security.message.oauthUnbindSuccess": "Third-party account unbound",
460
- "system.profile.security.message.codeSent": "Verification code sent",
461
- "system.profile.security.message.phoneUpdated": "Phone number updated",
462
- "system.profile.security.action.changePassword": "Change",
463
- "system.profile.security.action.changePhone": "Change phone",
464
- "system.profile.security.action.bindNow": "Bind now",
413
+ "system.profile.security.field.phone_verification": "Phone verification",
414
+ "system.profile.security.field.profile_completion": "Profile completeness",
415
+ "system.profile.security.message.password_hint": "Update your password regularly to avoid using the same password for too long.",
416
+ "system.profile.security.message.phone_bound": "Bound: {phone}",
417
+ "system.profile.security.message.phone_unbound": "No phone number is currently bound.",
418
+ "system.profile.security.message.oauth_bound": "Bound and available for signing in to the admin console.",
419
+ "system.profile.security.message.oauth_unbound": "Not bound. Bind it to use this method for admin sign-in.",
420
+ "system.profile.security.message.oauth_bind_success": "Third-party account bound",
421
+ "system.profile.security.message.oauth_unbind_success": "Third-party account unbound",
422
+ "system.profile.security.message.code_sent": "Verification code sent",
423
+ "system.profile.security.message.phone_updated": "Phone number updated",
424
+ "system.profile.security.action.change_password": "Change",
425
+ "system.profile.security.action.change_phone": "Change phone",
426
+ "system.profile.security.action.bind_now": "Bind now",
465
427
  "system.profile.security.action.bind": "Bind",
466
428
  "system.profile.security.action.unbind": "Unbind",
467
- "system.profile.security.action.sendCode": "Send code",
468
- "system.profile.security.action.retryAfter": "Retry in {seconds}s",
429
+ "system.profile.security.action.send_code": "Send code",
430
+ "system.profile.security.action.retry_after": "Retry in {seconds}s",
469
431
  "system.profile.security.status.title": "Account status",
470
432
  "system.profile.security.status.description": "Review verification status and profile completeness.",
471
- "system.profile.security.dialog.bindPhone": "Bind phone",
472
- "system.profile.security.dialog.confirmUnbind": "Unbind this sign-in method?\nSign-in method: {provider}",
433
+ "system.profile.security.dialog.bind_phone": "Bind phone",
434
+ "system.profile.security.dialog.confirm_unbind": "Unbind this sign-in method?\nSign-in method: {provider}",
473
435
  "system.profile.security.placeholder.phone": "Enter a phone number",
474
436
  "system.profile.security.placeholder.code": "Enter the verification code",
475
437
  "system.profile.security.validation.phone": "Enter a valid phone number",
476
438
  "system.profile.password.title": "Change password",
477
- "system.profile.password.navDescription": "Update your login password",
439
+ "system.profile.password.nav_description": "Update your login password",
478
440
  "system.profile.password.description": "Update your current login password to keep your account secure.",
479
- "system.profile.password.value.strongRecommended": "Strong password recommended",
441
+ "system.profile.password.value.strong_recommended": "Strong password recommended",
480
442
  "system.profile.password.action.update": "Update password",
481
- "system.profile.password.field.oldPassword": "Current password",
482
- "system.profile.password.field.newPassword": "New password",
483
- "system.profile.password.field.confirmPassword": "Confirm password",
484
- "system.profile.password.placeholder.oldPassword": "Enter your current password",
485
- "system.profile.password.placeholder.newPassword": "Enter a new password",
486
- "system.profile.password.placeholder.confirmPassword": "Enter the new password again",
443
+ "system.profile.password.field.old_password": "Current password",
444
+ "system.profile.password.field.new_password": "New password",
445
+ "system.profile.password.field.confirm_password": "Confirm password",
446
+ "system.profile.password.placeholder.old_password": "Enter your current password",
447
+ "system.profile.password.placeholder.new_password": "Enter a new password",
448
+ "system.profile.password.placeholder.confirm_password": "Enter the new password again",
487
449
  "system.profile.password.message.mismatch": "The passwords do not match",
488
- "system.profile.password.message.strengthInsufficient": "The new password must reach the highest strength level",
450
+ "system.profile.password.message.strength_insufficient": "The new password must reach the highest strength level",
489
451
  "system.profile.password.message.updated": "Password changed. Please sign in again",
490
- "system.profile.password.tip.uniqueTitle": "Avoid password reuse",
491
- "system.profile.password.tip.uniqueDescription": "Do not reuse old passwords or passwords used in other systems.",
492
- "system.profile.password.tip.strengthTitle": "Use a strong password",
493
- "system.profile.password.tip.strengthDescription": "Use a combination of uppercase and lowercase letters, numbers, and symbols.",
494
- "system.profile.password.tip.recordTitle": "Keep records current",
495
- "system.profile.password.tip.recordDescription": "When transferring an account, update the password custody record as well.",
496
- "system.ai.chat.welcomeDescription": "Ask a question directly or upload attachments for analysis.",
452
+ "system.profile.password.tip.unique_title": "Avoid password reuse",
453
+ "system.profile.password.tip.unique_description": "Do not reuse old passwords or passwords used in other systems.",
454
+ "system.profile.password.tip.strength_title": "Use a strong password",
455
+ "system.profile.password.tip.strength_description": "Use a combination of uppercase and lowercase letters, numbers, and symbols.",
456
+ "system.profile.password.tip.record_title": "Keep records current",
457
+ "system.profile.password.tip.record_description": "When transferring an account, update the password custody record as well.",
458
+ "system.ai.chat.welcome_description": "Ask a question directly or upload attachments for analysis.",
497
459
  "system.ai.chat.welcome.morning": "Good morning, I am your general AI assistant",
498
460
  "system.ai.chat.welcome.afternoon": "Good afternoon, I am your general AI assistant",
499
461
  "system.ai.chat.welcome.evening": "Good evening, I am your general AI assistant",
500
462
  "system.ai.chat.shortcut.eyebrow": "Quick actions",
501
- "system.ai.chat.shortcut.startTitle": "Start with a common workflow",
502
- "system.ai.chat.shortcut.continueTitle": "Continue with a common workflow",
503
- "system.ai.chat.action.refreshShortcuts": "Show more",
504
- "system.ai.chat.action.copyRequest": "Copy request payload",
505
- "system.ai.chat.action.viewRuntime": "View runtime details",
463
+ "system.ai.chat.shortcut.start_title": "Start with a common workflow",
464
+ "system.ai.chat.shortcut.continue_title": "Continue with a common workflow",
465
+ "system.ai.chat.action.refresh_shortcuts": "Show more",
466
+ "system.ai.chat.action.copy_request": "Copy request payload",
467
+ "system.ai.chat.action.view_runtime": "View runtime details",
506
468
  "system.ai.chat.action.send": "Send",
507
469
  "system.ai.chat.action.copy": "Copy",
508
470
  "system.ai.chat.action.resend": "Resend",
509
471
  "system.ai.chat.action.regenerate": "Regenerate",
510
- "system.ai.chat.action.createBranch": "Create a branch from here",
472
+ "system.ai.chat.action.create_branch": "Create a branch from here",
511
473
  "system.ai.chat.action.speak": "Read aloud",
512
- "system.ai.chat.action.stopSpeaking": "Stop reading",
513
- "system.ai.chat.action.uploadAttachment": "Upload attachments",
514
- "system.ai.chat.action.selectLocalFile": "Choose local files",
515
- "system.ai.chat.action.voiceInput": "Voice input",
516
- "system.ai.chat.action.stopVoiceInput": "Stop voice input",
517
- "system.ai.chat.action.collapseSessions": "Collapse conversations",
518
- "system.ai.chat.action.expandSessions": "Expand conversations",
519
- "system.ai.chat.action.newConversation": "New conversation",
520
- "system.ai.chat.action.conversationMenu": "Conversation actions",
474
+ "system.ai.chat.action.stop_speaking": "Stop reading",
475
+ "system.ai.chat.action.upload_attachment": "Upload attachments",
476
+ "system.ai.chat.action.select_local_file": "Choose local files",
477
+ "system.ai.chat.action.voice_input": "Voice input",
478
+ "system.ai.chat.action.stop_voice_input": "Stop voice input",
479
+ "system.ai.chat.action.collapse_sessions": "Collapse conversations",
480
+ "system.ai.chat.action.expand_sessions": "Expand conversations",
481
+ "system.ai.chat.action.new_conversation": "New conversation",
482
+ "system.ai.chat.action.conversation_menu": "Conversation actions",
521
483
  "system.ai.chat.action.rename": "Rename",
522
484
  "system.ai.chat.action.continue": "Continue",
523
- "system.ai.chat.action.confirmDeleteConversation": "Delete",
524
- "system.ai.chat.title.errorDetail": "Error details",
485
+ "system.ai.chat.action.confirm_delete_conversation": "Delete",
486
+ "system.ai.chat.title.error_detail": "Error details",
525
487
  "system.ai.chat.title.runtime": "Runtime details",
526
- "system.ai.chat.title.recentConversations": "Recent conversations",
527
- "system.ai.chat.field.inputTokens": "Input",
528
- "system.ai.chat.field.outputTokens": "Output",
529
- "system.ai.chat.field.cacheTokens": "Cache read",
530
- "system.ai.chat.field.totalTokens": "Total",
488
+ "system.ai.chat.title.recent_conversations": "Recent conversations",
489
+ "system.ai.chat.field.input_tokens": "Input",
490
+ "system.ai.chat.field.output_tokens": "Output",
491
+ "system.ai.chat.field.cache_tokens": "Cache read",
492
+ "system.ai.chat.field.total_tokens": "Total",
531
493
  "system.ai.chat.field.duration": "Duration",
532
- "system.ai.chat.field.firstToken": "First token",
533
- "system.ai.chat.field.totalDuration": "Total duration",
494
+ "system.ai.chat.field.first_token": "First token",
495
+ "system.ai.chat.field.total_duration": "Total duration",
534
496
  "system.ai.chat.status.loading": "Loading",
535
497
  "system.ai.chat.status.failed": "Failed",
536
498
  "system.ai.chat.status.completed": "Completed",
537
499
  "system.ai.chat.status.thinking": "Thinking",
538
500
  "system.ai.chat.status.answering": "Responding",
539
- "system.ai.chat.status.sendFailed": "Send failed",
501
+ "system.ai.chat.status.send_failed": "Send failed",
540
502
  "system.ai.chat.status.uploading": "Uploading...",
541
- "system.ai.chat.status.recognizingVoice": "Recognizing speech...",
542
- "system.ai.chat.status.uploadingAttachments": "Uploading attachments...",
503
+ "system.ai.chat.status.recognizing_voice": "Recognizing speech...",
504
+ "system.ai.chat.status.uploading_attachments": "Uploading attachments...",
543
505
  "system.ai.chat.source.network": "Web data",
544
506
  "system.ai.chat.source.model": "Model response",
545
507
  "system.ai.chat.source.fallback": "Fallback response",
546
- "system.ai.chat.value.itemCount": "{count} items",
547
- "system.ai.chat.value.generalAssistant": "General assistant",
548
- "system.ai.chat.value.shortcutTools": "{group} · {count} tools",
508
+ "system.ai.chat.value.item_count": "{count} items",
509
+ "system.ai.chat.value.general_assistant": "General assistant",
510
+ "system.ai.chat.value.shortcut_tools": "{group} · {count} tools",
549
511
  "system.ai.chat.value.tool": "Tool",
550
- "system.ai.chat.value.selectedAttachments": "{count} attachments selected",
551
- "system.ai.chat.value.attachmentsAvailable": "Attachments available",
552
- "system.ai.chat.value.analyzeAttachments": "Continue the analysis using the attachments",
553
- "system.ai.chat.value.newConversation": "New conversation",
554
- "system.ai.chat.value.branchTitle": "Branch: {title}",
512
+ "system.ai.chat.value.selected_attachments": "{count} attachments selected",
513
+ "system.ai.chat.value.attachments_available": "Attachments available",
514
+ "system.ai.chat.value.analyze_attachments": "Continue the analysis using the attachments",
515
+ "system.ai.chat.value.new_conversation": "New conversation",
516
+ "system.ai.chat.value.branch_title": "Branch: {title}",
555
517
  "system.ai.chat.placeholder.input": "Ask anything or upload attachments to continue",
556
- "system.ai.chat.placeholder.searchConversation": "Search conversations",
557
- "system.ai.chat.placeholder.conversationName": "Enter a conversation name",
558
- "system.ai.chat.message.loadingShortcuts": "Loading quick actions...",
559
- "system.ai.chat.message.serverError": "Server error. Try again later",
560
- "system.ai.chat.message.replyFailed": "The response was not returned successfully. You can retry the last question.",
561
- "system.ai.chat.message.requestCopied": "Request payload copied",
562
- "system.ai.chat.message.copyUnsupported": "Copying is not supported by this browser",
563
- "system.ai.chat.message.contentRequired": "Message content is required",
564
- "system.ai.chat.message.contentUnchanged": "The message has not changed",
565
- "system.ai.chat.message.attachmentHint": "Add image or text attachments for analysis with this question.",
566
- "system.ai.chat.message.voiceUnsupported": "Speech recognition is not supported by this browser",
567
- "system.ai.chat.message.microphoneDenied": "Microphone permission denied. Check your browser permissions",
568
- "system.ai.chat.message.voiceFailed": "Speech recognition failed. Try again later",
569
- "system.ai.chat.message.attachmentsUploaded": "Uploaded {count} attachments",
570
- "system.ai.chat.message.attachmentUploadFailed": "Failed to upload attachments",
571
- "system.ai.chat.message.attachmentLimit": "You can upload up to {count} attachments",
572
- "system.ai.chat.message.attachmentUnsupported": "Attachment '{name}' is not supported and was skipped",
573
- "system.ai.chat.message.attachmentTooLarge": "Attachment '{name}' exceeds {size}MB and was skipped",
574
- "system.ai.chat.message.attachmentRemaining": "Only {count} more attachments can be selected; the list was truncated",
575
- "system.ai.chat.message.actionCanceled": "Action canceled",
576
- "system.ai.chat.message.conversationCreated": "Conversation created",
577
- "system.ai.chat.message.emptyStream": "The AI assistant returned an empty stream",
578
- "system.ai.chat.message.incompleteStream": "The AI assistant stream ended before completion",
579
- "system.ai.chat.message.requestFailed": "AI assistant request failed",
580
- "system.ai.chat.message.updatedAndRegenerated": "Message updated and response regenerated",
581
- "system.ai.chat.message.updateFailed": "Failed to update the message",
582
- "system.ai.chat.message.messageCopied": "Message copied",
583
- "system.ai.chat.message.messageDeleted": "Message deleted",
584
- "system.ai.chat.message.localRetryMissing": "No local message was found to resend",
518
+ "system.ai.chat.placeholder.search_conversation": "Search conversations",
519
+ "system.ai.chat.placeholder.conversation_name": "Enter a conversation name",
520
+ "system.ai.chat.message.loading_shortcuts": "Loading quick actions...",
521
+ "system.ai.chat.message.server_error": "Server error. Try again later",
522
+ "system.ai.chat.message.reply_failed": "The response was not returned successfully. You can retry the last question.",
523
+ "system.ai.chat.message.request_copied": "Request payload copied",
524
+ "system.ai.chat.message.copy_unsupported": "Copying is not supported by this browser",
525
+ "system.ai.chat.message.content_required": "Message content is required",
526
+ "system.ai.chat.message.content_unchanged": "The message has not changed",
527
+ "system.ai.chat.message.attachment_hint": "Add image or text attachments for analysis with this question.",
528
+ "system.ai.chat.message.voice_unsupported": "Speech recognition is not supported by this browser",
529
+ "system.ai.chat.message.microphone_denied": "Microphone permission denied. Check your browser permissions",
530
+ "system.ai.chat.message.voice_failed": "Speech recognition failed. Try again later",
531
+ "system.ai.chat.message.attachments_uploaded": "Uploaded {count} attachments",
532
+ "system.ai.chat.message.attachment_upload_failed": "Failed to upload attachments",
533
+ "system.ai.chat.message.attachment_limit": "You can upload up to {count} attachments",
534
+ "system.ai.chat.message.attachment_unsupported": "Attachment '{name}' is not supported and was skipped",
535
+ "system.ai.chat.message.attachment_too_large": "Attachment '{name}' exceeds {size}MB and was skipped",
536
+ "system.ai.chat.message.attachment_remaining": "Only {count} more attachments can be selected; the list was truncated",
537
+ "system.ai.chat.message.action_canceled": "Action canceled",
538
+ "system.ai.chat.message.conversation_created": "Conversation created",
539
+ "system.ai.chat.message.empty_stream": "The AI assistant returned an empty stream",
540
+ "system.ai.chat.message.incomplete_stream": "The AI assistant stream ended before completion",
541
+ "system.ai.chat.message.request_failed": "AI assistant request failed",
542
+ "system.ai.chat.message.updated_and_regenerated": "Message updated and response regenerated",
543
+ "system.ai.chat.message.update_failed": "Failed to update the message",
544
+ "system.ai.chat.message.message_copied": "Message copied",
545
+ "system.ai.chat.message.message_deleted": "Message deleted",
546
+ "system.ai.chat.message.local_retry_missing": "No local message was found to resend",
585
547
  "system.ai.chat.message.resent": "Message resent",
586
- "system.ai.chat.message.retryFailedOnly": "Only failed messages can be resent",
548
+ "system.ai.chat.message.retry_failed_only": "Only failed messages can be resent",
587
549
  "system.ai.chat.message.regenerated": "Response regenerated",
588
- "system.ai.chat.message.regenerateFailed": "Failed to regenerate the response",
589
- "system.ai.chat.message.branchCreated": "Branch conversation created",
590
- "system.ai.chat.message.speechUnsupported": "Reading aloud is not supported by this browser",
591
- "system.ai.chat.message.conversationRenamed": "Conversation renamed",
592
- "system.ai.chat.message.conversationDeleted": "Conversation deleted",
550
+ "system.ai.chat.message.regenerate_failed": "Failed to regenerate the response",
551
+ "system.ai.chat.message.branch_created": "Branch conversation created",
552
+ "system.ai.chat.message.speech_unsupported": "Reading aloud is not supported by this browser",
553
+ "system.ai.chat.message.conversation_renamed": "Conversation renamed",
554
+ "system.ai.chat.message.conversation_deleted": "Conversation deleted",
593
555
  "system.ai.chat.message.thinking": "Preparing a response",
594
- "system.ai.chat.dialog.confirmDeleteMessage": "Delete this message?",
595
- "system.ai.chat.dialog.confirmResendMessage": "Resend this message?",
596
- "system.ai.chat.dialog.confirmRegenerateMessage": "Regenerating will replace the current response",
597
- "system.ai.chat.dialog.renameTitle": "Rename conversation",
598
- "system.ai.chat.dialog.renameDescription": "Enter a new conversation name\nCurrent name: {title}",
599
- "system.ai.chat.dialog.deleteTitle": "Delete conversation",
600
- "system.ai.chat.dialog.deleteDescription": "Delete this conversation?\nConversation: {title}",
601
- "system.codegen.action.batchGenerate": "Generate selected",
602
- "system.codegen.action.batchRestore": "Restore selected",
603
- "system.codegen.action.confirmRestore": "Restore",
604
- "system.codegen.action.generate": "Generate",
605
- "system.codegen.action.recentTask": "Recent task",
606
- "system.codegen.action.restore": "Restore",
607
- "system.codegen.value.on": "On",
608
- "system.codegen.value.off": "Off",
609
- "system.codegen.value.generate": "Generate",
610
- "system.codegen.value.skip": "Skip",
611
- "system.codegen.value.lazy": "Lazy",
612
- "system.codegen.value.eager": "Load all",
613
- "system.codegen.pageType.normal": "Table",
614
- "system.codegen.pageType.tree": "Tree table",
615
- "system.codegen.pageType.treeLazy": "Lazy tree table",
616
- "system.codegen.pageType.leftTree": "Tree and table",
617
- "system.codegen.source.static": "Static data",
618
- "system.codegen.source.dict": "Dictionary",
619
- "system.codegen.source.table": "Database table",
620
- "system.codegen.operator.eq": "Equals",
621
- "system.codegen.operator.like": "Contains",
622
- "system.codegen.operator.between": "Between",
623
- "system.codegen.component.input": "Text input",
624
- "system.codegen.component.password": "Password input",
625
- "system.codegen.component.textarea": "Text area",
626
- "system.codegen.component.inputNumber": "Number input",
627
- "system.codegen.component.segmented": "Segmented control",
628
- "system.codegen.component.switch": "Switch",
629
- "system.codegen.component.checkbox": "Checkbox",
630
- "system.codegen.component.select": "Select",
631
- "system.codegen.component.selectShort": "Select",
632
- "system.codegen.component.dict": "Dictionary select",
633
- "system.codegen.component.radioGroup": "Radio group",
634
- "system.codegen.component.checkboxGroup": "Checkbox group",
635
- "system.codegen.component.treeSelect": "Tree select",
636
- "system.codegen.component.datePicker": "Date picker",
637
- "system.codegen.component.cron": "Cron expression",
638
- "system.codegen.component.transfer": "Transfer",
639
- "system.codegen.component.imageUpload": "Single image upload",
640
- "system.codegen.component.imagesUpload": "Multiple image upload",
641
- "system.codegen.component.fileUpload": "Single file upload",
642
- "system.codegen.component.filesUpload": "Multiple file upload",
643
- "system.codegen.component.richText": "Rich text",
644
- "system.codegen.component.dynamicList": "Dynamic list",
645
- "system.codegen.component.kvList": "Key-value list",
646
- "system.codegen.component.slot": "Custom slot",
647
- "system.codegen.component.text": "Text",
648
- "system.codegen.component.tree": "Tree",
649
- "system.codegen.component.image": "Image",
650
- "system.codegen.component.money": "Currency",
651
- "system.codegen.component.date": "Date",
652
- "system.codegen.validation.tableRequired": "Select a business table",
653
- "system.codegen.validation.moduleRequired": "Enter a valid business module",
654
- "system.codegen.validation.commentLength": "The table description cannot exceed 128 characters",
655
- "system.codegen.validation.parentMenuRequired": "Select a parent menu",
656
- "system.codegen.validation.pageTypeRequired": "Select a page type",
657
- "system.codegen.validation.parentColumnRequired": "Select a parent column",
658
- "system.codegen.validation.treeLabelRequired": "Select a tree label column",
659
- "system.codegen.validation.remarkLength": "The note cannot exceed 500 characters",
660
- "system.codegen.validation.leftTreeTableRequired": "Select the tree data table",
661
- "system.codegen.validation.filterColumnRequired": "Select a filter column",
662
- "system.codegen.validation.leftTreeParentRequired": "Select the tree parent column",
663
- "system.codegen.validation.leftTreeLabelRequired": "Select the tree label column",
664
- "system.codegen.validation.leftTreeValueRequired": "Select the tree value column",
665
- "system.codegen.i18n.field.translations": "Non-primary language descriptions",
666
- "system.codegen.i18n.action.editColumn": "Edit non-primary language field descriptions",
667
- "system.codegen.i18n.status.complete": "Complete",
668
- "system.codegen.i18n.status.missing": "Missing",
669
- "system.codegen.i18n.message.missing": "Required before generation: {locales}",
670
- "system.codegen.i18n.placeholder.comment": "Chinese source: {source}",
671
- "system.codegen.i18n.placeholder.leftTreeComment": "Chinese tree source: {source}",
672
- "system.codegen.i18n.tooltip.table": "Maintain non-primary language descriptions used by generated pages, menus, and locale files. Incomplete drafts can be saved, but generation requires all translations.",
673
- "system.codegen.table.title.create": "Create code generation table",
674
- "system.codegen.table.title.edit": "Edit code generation table",
675
- "system.codegen.table.field.name": "Business table",
676
- "system.codegen.table.field.comment": "Table description",
677
- "system.codegen.table.field.businessModule": "Business module",
678
- "system.codegen.table.field.parentMenu": "Parent menu",
679
- "system.codegen.table.field.pageType": "Page type",
680
- "system.codegen.table.field.parentColumn": "Parent column",
681
- "system.codegen.table.field.treeLabelColumn": "Tree label column",
682
- "system.codegen.table.field.leftTreeTable": "Tree data table",
683
- "system.codegen.table.field.leftTreeComment": "Tree description",
684
- "system.codegen.table.field.filterColumn": "Filter column",
685
- "system.codegen.table.field.leftTreeParentColumn": "Tree parent column",
686
- "system.codegen.table.field.leftTreeLabelColumn": "Tree label column",
687
- "system.codegen.table.field.leftTreeValueColumn": "Tree value column",
688
- "system.codegen.table.field.leftTreeLazy": "Lazy-load tree",
689
- "system.codegen.table.field.genBackend": "Generate backend",
690
- "system.codegen.table.field.genFrontend": "Generate frontend",
691
- "system.codegen.table.field.genSql": "Generate SQL",
692
- "system.codegen.table.field.status": "Status",
693
- "system.codegen.table.field.remark": "Note",
694
- "system.codegen.table.field.createdAt": "Created at",
695
- "system.codegen.table.placeholder.databaseTable": "Select a database table",
696
- "system.codegen.table.placeholder.comment": "Loaded from the selected table; editable",
697
- "system.codegen.table.placeholder.businessModule": "Select a business module",
698
- "system.codegen.table.placeholder.parentMenu": "Select where to mount the generated page",
699
- "system.codegen.table.placeholder.parentColumn": "Select a parent column",
700
- "system.codegen.table.placeholder.treeLabelColumn": "Select a tree label column",
701
- "system.codegen.table.placeholder.leftTreeTable": "Select a tree data table",
702
- "system.codegen.table.placeholder.leftTreeComment": "Loaded from the selected tree table; editable",
703
- "system.codegen.table.placeholder.filterColumn": "Select the current table filter column",
704
- "system.codegen.table.placeholder.leftTreeParentColumn": "Select the tree parent column",
705
- "system.codegen.table.placeholder.leftTreeLabelColumn": "Select the tree label column",
706
- "system.codegen.table.placeholder.leftTreeValueColumn": "Select the tree value column",
707
- "system.codegen.table.placeholder.remark": "Enter a note",
708
- "system.codegen.table.tooltip.name": "Select the source database table. A table can only be configured once.",
709
- "system.codegen.table.tooltip.comment": "The Chinese business description used by Proto, backend, frontend, and the Chinese menu title.",
710
- "system.codegen.table.tooltip.businessModule": "The module and table name determine Proto, service, API, and page paths.",
711
- "system.codegen.table.tooltip.parentMenu": "Select the generated page directory. Menus and button permissions are synchronized when generation requirements are met.",
712
- "system.codegen.table.tooltip.pageType": "Choose a paged table, tree table, lazy tree table, or tree-and-table layout.",
713
- "system.codegen.table.tooltip.parentColumn": "The column pointing to the parent record, such as parent_id.",
714
- "system.codegen.table.tooltip.treeLabelColumn": "The text column displayed for tree nodes, such as name.",
715
- "system.codegen.table.tooltip.leftTreeTable": "The source table for the left-side tree.",
716
- "system.codegen.table.tooltip.leftTreeComment": "The Chinese title for the left-side tree. It does not affect API or file paths.",
717
- "system.codegen.table.tooltip.filterColumn": "The current table column associated with the selected tree node value.",
718
- "system.codegen.table.tooltip.leftTreeParentColumn": "The source table column pointing to a parent node.",
719
- "system.codegen.table.tooltip.leftTreeLabelColumn": "The text column displayed for left-side tree nodes.",
720
- "system.codegen.table.tooltip.leftTreeValueColumn": "The unique node value passed to the right-side table.",
721
- "system.codegen.table.tooltip.leftTreeLazy": "Request children only when a node is expanded.",
722
- "system.codegen.table.tooltip.genBackend": "Generate Proto, backend Biz, Service, and registration code.",
723
- "system.codegen.table.tooltip.genFrontend": "Generate the frontend API, pages, and locale files for all seven languages.",
724
- "system.codegen.table.tooltip.genSql": "Synchronize page menus, button permissions, and translations for all seven languages.",
725
- "system.codegen.table.tooltip.status": "Disabled configurations are read-only. Successful generation sets the status to generated.",
726
- "system.codegen.table.tooltip.remark": "Visible to maintainers only and not used for generated names.",
727
- "system.codegen.table.value.disabledModule": "{module} (disabled)",
728
- "system.codegen.table.action.columns": "Columns",
729
- "system.codegen.table.action.proto": "Proto",
730
- "system.codegen.table.action.pagePreview": "Page preview",
731
- "system.codegen.table.action.codePreview": "Code preview",
732
- "system.codegen.table.message.selectGenerate": "Select at least one item to generate",
733
- "system.codegen.table.message.disabled": "Code generation configuration {name} is disabled",
734
- "system.codegen.table.message.selectRestore": "Select an item with an available restore snapshot",
735
- "system.codegen.table.message.restoreSuccess": "Code generation result restored",
736
- "system.codegen.table.message.createSuccess": "Code generation table created",
737
- "system.codegen.table.message.updateSuccess": "Code generation table updated",
738
- "system.codegen.table.message.selectDelete": "Select at least one item to delete",
739
- "system.codegen.table.message.deleteCanceled": "Code generation table deletion canceled",
740
- "system.codegen.table.message.deleteSuccess": "Code generation table deleted",
741
- "system.codegen.table.dialog.generateOne": "Generate business table {name}?",
742
- "system.codegen.table.dialog.generateBatch": "Generate {count} business tables in the selected order?",
743
- "system.codegen.table.dialog.restoreOne": "Restore business table {name}? Generated files, page menus, and button permissions will return to their previous state.",
744
- "system.codegen.table.dialog.restoreBatch": "Restore {count} business tables? Shared files from a batch must be restored together.",
745
- "system.codegen.table.dialog.deleteOne": "Delete business table {name}?",
746
- "system.codegen.table.dialog.deleteBatch": "Delete the selected {count} configurations?",
747
- "system.codegen.column.title.databaseFields": "Database columns",
748
- "system.codegen.column.title.workspace": "Column configuration",
749
- "system.codegen.column.title.workspaceWithTable": "{table} column configuration",
750
- "system.codegen.column.title.options": "{scope} options - {column}",
751
- "system.codegen.column.title.optionWarning": "Option configuration warning",
752
- "system.codegen.column.field.databaseColumn": "Database column",
753
- "system.codegen.column.field.comment": "Column description",
754
- "system.codegen.column.field.query": "Query",
755
- "system.codegen.column.field.list": "List",
756
- "system.codegen.column.field.form": "Form",
757
- "system.codegen.column.field.selectionMode": "Selection mode",
758
- "system.codegen.column.field.source": "Source",
759
- "system.codegen.column.field.dictionary": "Dictionary",
760
- "system.codegen.column.field.activeValue": "Active value",
761
- "system.codegen.column.field.inactiveValue": "Inactive value",
762
- "system.codegen.column.field.dataTable": "Database table",
763
- "system.codegen.column.field.treeParent": "Tree parent column",
764
- "system.codegen.column.field.loadMode": "Load mode",
765
- "system.codegen.column.field.treeLabel": "Tree label column",
766
- "system.codegen.column.field.labelField": "Label column",
767
- "system.codegen.column.field.treeValue": "Tree value column",
768
- "system.codegen.column.field.valueField": "Value column",
769
- "system.codegen.column.field.staticData": "Static data",
770
- "system.codegen.column.scope.query": "Query",
771
- "system.codegen.column.scope.list": "List",
772
- "system.codegen.column.scope.form": "Form",
773
- "system.codegen.column.value.tableName": "Table: {name}",
774
- "system.codegen.column.value.tableComment": "Comment: {comment}",
775
- "system.codegen.column.value.queryCount": "{count} query fields",
776
- "system.codegen.column.value.listCount": "{count} list fields",
777
- "system.codegen.column.value.formCount": "{count} form fields",
778
- "system.codegen.column.value.database": "Database",
779
- "system.codegen.column.value.primaryKey": "Primary key",
780
- "system.codegen.column.value.autoIncrement": "Auto increment",
781
- "system.codegen.column.value.nullable": "Nullable",
782
- "system.codegen.column.value.notNull": "Not null",
783
- "system.codegen.column.value.required": "Required",
784
- "system.codegen.column.value.single": "Single",
785
- "system.codegen.column.value.multiple": "Multiple",
786
- "system.codegen.column.value.lazyChildren": "Lazy-load child nodes",
787
- "system.codegen.column.placeholder.comment": "Enter a column description",
788
- "system.codegen.column.placeholder.queryOperator": "Query operator",
789
- "system.codegen.column.placeholder.queryComponent": "Query component",
790
- "system.codegen.column.placeholder.listComponent": "List component",
791
- "system.codegen.column.placeholder.formComponent": "Form component",
792
- "system.codegen.column.placeholder.source": "Select a source",
793
- "system.codegen.column.placeholder.dictionary": "Select a dictionary",
794
- "system.codegen.column.placeholder.activeValue": "Select the active value",
795
- "system.codegen.column.placeholder.inactiveValue": "Select the inactive value",
796
- "system.codegen.column.placeholder.dataTable": "Select a database table",
797
- "system.codegen.column.placeholder.treeParent": "Select the tree parent column",
798
- "system.codegen.column.placeholder.treeLabel": "Select the tree label column",
799
- "system.codegen.column.placeholder.labelField": "Select the label column",
800
- "system.codegen.column.placeholder.treeValue": "Select the tree value column",
801
- "system.codegen.column.placeholder.valueField": "Select the value column",
802
- "system.codegen.column.placeholder.optionLabel": "Display label",
803
- "system.codegen.column.placeholder.optionValue": "Submitted value",
804
- "system.codegen.column.action.options": "Options",
805
- "system.codegen.column.action.saveAndClose": "Save and close",
806
- "system.codegen.column.action.deleteStatic": "Delete static option",
807
- "system.codegen.column.action.continueSave": "Save anyway",
808
- "system.codegen.column.action.backToEdit": "Go back",
809
- "system.codegen.column.message.empty": "No column configuration",
810
- "system.codegen.column.message.selectRecord": "Select a generation record first",
811
- "system.codegen.column.message.emptyStatic": "No static options",
812
- "system.codegen.column.message.nameAndTypeRequired": "Column name and database type are required",
813
- "system.codegen.column.dialog.inconsistentSource": "The {scopes} option sources for column {column} differ. Save anyway?",
814
- "system.codegen.column.tooltip.drag": "Drag to reorder",
815
- "system.codegen.column.tooltip.dragAria": "Drag to reorder columns",
816
- "system.codegen.column.tooltip.multipleJsonOnly": "Multiple selection is supported only for JSON columns",
817
- "system.codegen.column.tooltip.optionConfigured": "Configured and ready to save. Open to make changes",
818
- "system.codegen.column.tooltip.configureOption": "Configure options",
819
- "system.codegen.column.validation.optionComponentMissing": "The {scope} option configuration for column {column} has no matching component",
820
- "system.codegen.column.validation.switchIncomplete": "The {scope} switch configuration for column {column} is incomplete",
821
- "system.codegen.column.validation.switchValuesSame": "The active and inactive values for column {column} in {scope} must differ",
822
- "system.codegen.column.validation.switchValuesUnsupported": "The {scope} options for column {column} cannot contain switch values",
823
- "system.codegen.column.validation.lazyTreeOnly": "Lazy loading is supported only for tree options in {scope} for column {column}",
824
- "system.codegen.column.validation.treeTableOnly": "Tree options in {scope} for column {column} must use a database table source",
825
- "system.codegen.column.validation.sourceIncomplete": "The {scope} option source for column {column} is incomplete",
826
- "system.codegen.column.validation.staticIncomplete": "The {scope} options for column {column} require at least one complete static option",
827
- "system.codegen.column.validation.tableFieldsIncomplete": "The database table option columns in {scope} for column {column} are incomplete",
828
- "system.codegen.proto.trigger.crud": "CRUD page",
829
- "system.codegen.proto.trigger.pageTree": "Page tree",
830
- "system.codegen.proto.trigger.leftTree": "Left tree and table",
831
- "system.codegen.proto.trigger.entityOption": "Entity options",
832
- "system.codegen.proto.trigger.fieldOption": "Field options",
833
- "system.codegen.proto.trigger.fieldStatus": "Field status",
834
- "system.codegen.proto.apiKind.crud": "CRUD",
835
- "system.codegen.proto.apiKind.list": "List",
836
- "system.codegen.proto.apiKind.option": "Options",
837
- "system.codegen.proto.apiKind.tree": "Tree",
838
- "system.codegen.proto.apiKind.status": "Status",
839
- "system.codegen.proto.field.triggerType": "Trigger",
840
- "system.codegen.proto.field.apiKind": "API type",
841
- "system.codegen.proto.field.capability": "Proto capability",
842
- "system.codegen.proto.field.generateSetting": "Generation",
843
- "system.codegen.proto.field.methodComment": "Method description",
844
- "system.codegen.proto.field.methodName": "Method name",
845
- "system.codegen.proto.field.protoPath": "Proto path",
846
- "system.codegen.proto.field.serviceComment": "Service description",
847
- "system.codegen.proto.field.serviceName": "Service name",
848
- "system.codegen.proto.field.parentColumn": "Parent column",
849
- "system.codegen.proto.field.labelColumn": "Label column",
850
- "system.codegen.proto.field.valueColumn": "Value column",
851
- "system.codegen.proto.field.statusColumn": "Status column",
852
- "system.codegen.proto.field.loadMode": "Load mode",
853
- "system.codegen.proto.action.configure": "Configure",
854
- "system.codegen.proto.action.generateApi": "Generate API",
855
- "system.codegen.proto.status.exists": "Exists",
856
- "system.codegen.proto.status.missing": "Pending",
857
- "system.codegen.proto.title.config": "{method} - {kind} configuration",
858
- "system.codegen.proto.title.workspace": "Proto configuration",
859
- "system.codegen.proto.title.workspaceWithTable": "{table} Proto configuration",
860
- "system.codegen.proto.placeholder.parentColumn": "Select a parent column",
861
- "system.codegen.proto.placeholder.labelColumn": "Select a label column",
862
- "system.codegen.proto.placeholder.valueColumn": "Select a value column",
863
- "system.codegen.proto.placeholder.statusColumn": "Select a status column",
864
- "system.codegen.proto.message.configureFirst": "Complete the required configuration first",
865
- "system.codegen.proto.message.saveSuccess": "Proto configuration saved",
866
- "system.codegen.progress.title": "Code generation progress",
867
- "system.codegen.progress.value.current": "Current: {table}",
868
- "system.codegen.progress.value.steps": "Steps {completed} / {total}",
869
- "system.codegen.progress.value.createdAt": "Created at {time}",
870
- "system.codegen.progress.value.finishedAt": "Finished at {time}",
871
- "system.codegen.progress.status.pending": "Pending",
872
- "system.codegen.progress.status.running": "Generating",
873
- "system.codegen.progress.status.succeeded": "Completed",
874
- "system.codegen.progress.status.failed": "Failed",
875
- "system.codegen.progress.action.copyError": "Copy error details",
876
- "system.codegen.progress.action.reload": "Reload",
877
- "system.codegen.progress.field.step": "Step",
878
- "system.codegen.progress.field.result": "Result",
879
- "system.codegen.progress.field.output": "Output",
880
- "system.codegen.progress.message.unavailableTitle": "Task unavailable",
881
- "system.codegen.progress.message.unavailable": "The task expired, does not exist, or cannot be accessed",
882
- "system.codegen.progress.message.copied": "Error details copied",
883
- "system.codegen.progress.message.copyFailed": "Could not copy error details",
884
- "system.codegen.preview.field.path": "File path",
885
- "system.codegen.preview.field.action": "File action",
886
- "system.codegen.preview.field.message": "Details",
887
- "system.codegen.preview.field.passwordStrength": "Password strength",
888
- "system.codegen.preview.status.exists": "Exists",
889
- "system.codegen.preview.status.pendingCreate": "To be created",
890
- "system.codegen.preview.title.code": "Code preview",
891
- "system.codegen.preview.title.workspace": "{table} code preview",
892
- "system.codegen.preview.title.create": "Create {resource}",
893
- "system.codegen.preview.title.edit": "Edit {resource}",
894
- "system.codegen.preview.title.categoryList": "Category list",
895
- "system.codegen.preview.title.deleteConfirm": "Confirm deletion",
896
- "system.codegen.preview.title.dataList": "Data list",
897
- "system.codegen.preview.dialog.confirmDelete": "Delete the selected {count} records?",
898
- "system.codegen.preview.placeholder.customSlot": "Custom slot content",
899
- "system.codegen.preview.placeholder.input": "Enter {field}",
900
- "system.codegen.preview.placeholder.select": "Select {field}",
901
- "system.codegen.preview.validation.required": "{field} is required",
902
- "system.codegen.preview.value.custom": "Custom",
903
- "system.codegen.preview.value.category": "Category",
904
- "system.codegen.preview.value.data": "record",
905
- "system.codegen.preview.value.enableField": "Enable {field}",
906
- "system.codegen.preview.value.topLevel": "Top level",
907
- "system.codegen.preview.value.available": "Available",
908
- "system.codegen.preview.value.selected": "Selected",
909
- "system.codegen.preview.value.key": "Key",
910
- "system.codegen.preview.value.value": "Value",
911
- "system.codegen.preview.value.rangeSeparator": "to",
912
- "system.codegen.preview.value.option": "{source} option {index}",
913
- "system.codegen.preview.message.emptyFiles": "No files to preview",
914
- "system.codegen.preview.message.noPreviewFiles": "The current configuration does not produce previewable files",
915
- "system.codegen.preview.message.loadFailed": "Could not load the code preview. Check the generation configuration",
916
- "system.codegen.preview.message.emptyPage": "No page configuration",
917
- "system.codegen.preview.message.createSuccess": "Created",
918
- "system.codegen.preview.message.updateSuccess": "Updated",
919
- "system.codegen.preview.message.deleteSuccess": "Deleted",
920
- "system.codegen.preview.message.missingTranslations": "Complete these translations before generation: {items}",
921
- "system.codegen.preview.value.listSeparator": ", ",
922
- "system.projectDoc.title.navigation": "Project document navigation",
923
- "system.projectDoc.placeholder.search": "Search projects or paths",
924
- "system.projectDoc.message.noMatch": "No matching documents",
925
- "system.projectDoc.message.empty": "No project documents",
926
- "system.projectDoc.message.select": "Select a project document",
927
- "system.projectDoc.message.uncollected": "Referenced document was not collected: {path}",
928
- "system.projectDoc.value.updatedAt": "Updated {time}"
556
+ "system.ai.chat.dialog.confirm_delete_message": "Delete this message?",
557
+ "system.ai.chat.dialog.confirm_resend_message": "Resend this message?",
558
+ "system.ai.chat.dialog.confirm_regenerate_message": "Regenerating will replace the current response",
559
+ "system.ai.chat.dialog.rename_title": "Rename conversation",
560
+ "system.ai.chat.dialog.rename_description": "Enter a new conversation name\nCurrent name: {title}",
561
+ "system.ai.chat.dialog.delete_title": "Delete conversation",
562
+ "system.ai.chat.dialog.delete_description": "Delete this conversation?\nConversation: {title}",
563
+ "system.code.gen.action.batch_generate": "Generate selected",
564
+ "system.code.gen.action.batch_restore": "Restore selected",
565
+ "system.code.gen.action.confirm_restore": "Restore",
566
+ "system.code.gen.action.generate": "Generate",
567
+ "system.code.gen.action.recent_task": "Recent task",
568
+ "system.code.gen.action.restore": "Restore",
569
+ "system.code.gen.value.on": "On",
570
+ "system.code.gen.value.off": "Off",
571
+ "system.code.gen.value.generate": "Generate",
572
+ "system.code.gen.value.skip": "Skip",
573
+ "system.code.gen.value.lazy": "Lazy",
574
+ "system.code.gen.value.eager": "Load all",
575
+ "system.code.gen.page_type.normal": "Table",
576
+ "system.code.gen.page_type.tree": "Tree table",
577
+ "system.code.gen.page_type.tree_lazy": "Lazy tree table",
578
+ "system.code.gen.page_type.left_tree": "Tree and table",
579
+ "system.code.gen.source.static": "Static data",
580
+ "system.code.gen.source.dict": "Dictionary",
581
+ "system.code.gen.source.table": "Database table",
582
+ "system.code.gen.operator.eq": "Equals",
583
+ "system.code.gen.operator.like": "Contains",
584
+ "system.code.gen.operator.between": "Between",
585
+ "system.code.gen.component.input": "Text input",
586
+ "system.code.gen.component.password": "Password input",
587
+ "system.code.gen.component.textarea": "Text area",
588
+ "system.code.gen.component.input_number": "Number input",
589
+ "system.code.gen.component.segmented": "Segmented control",
590
+ "system.code.gen.component.switch": "Switch",
591
+ "system.code.gen.component.checkbox": "Checkbox",
592
+ "system.code.gen.component.select": "Select",
593
+ "system.code.gen.component.select_short": "Select",
594
+ "system.code.gen.component.dict": "Dictionary select",
595
+ "system.code.gen.component.radio_group": "Radio group",
596
+ "system.code.gen.component.checkbox_group": "Checkbox group",
597
+ "system.code.gen.component.tree_select": "Tree select",
598
+ "system.code.gen.component.date_picker": "Date picker",
599
+ "system.code.gen.component.cron": "Cron expression",
600
+ "system.code.gen.component.transfer": "Transfer",
601
+ "system.code.gen.component.image_upload": "Single image upload",
602
+ "system.code.gen.component.images_upload": "Multiple image upload",
603
+ "system.code.gen.component.file_upload": "Single file upload",
604
+ "system.code.gen.component.files_upload": "Multiple file upload",
605
+ "system.code.gen.component.rich_text": "Rich text",
606
+ "system.code.gen.component.dynamic_list": "Dynamic list",
607
+ "system.code.gen.component.kv_list": "Key-value list",
608
+ "system.code.gen.component.slot": "Custom slot",
609
+ "system.code.gen.component.text": "Text",
610
+ "system.code.gen.component.tree": "Tree",
611
+ "system.code.gen.component.image": "Image",
612
+ "system.code.gen.component.money": "Currency",
613
+ "system.code.gen.component.date": "Date",
614
+ "system.code.gen.validation.table_required": "Select a business table",
615
+ "system.code.gen.validation.module_required": "Enter a valid business module",
616
+ "system.code.gen.validation.comment_length": "The table description cannot exceed 128 characters",
617
+ "system.code.gen.validation.parent_menu_required": "Select a parent menu",
618
+ "system.code.gen.validation.page_type_required": "Select a page type",
619
+ "system.code.gen.validation.parent_column_required": "Select a parent column",
620
+ "system.code.gen.validation.tree_label_required": "Select a tree label column",
621
+ "system.code.gen.validation.remark_length": "The note cannot exceed 500 characters",
622
+ "system.code.gen.validation.left_tree_table_required": "Select the tree data table",
623
+ "system.code.gen.validation.filter_column_required": "Select a filter column",
624
+ "system.code.gen.validation.left_tree_parent_required": "Select the tree parent column",
625
+ "system.code.gen.validation.left_tree_label_required": "Select the tree label column",
626
+ "system.code.gen.validation.left_tree_value_required": "Select the tree value column",
627
+ "system.code.gen.i18n.field.translations": "Non-primary language descriptions",
628
+ "system.code.gen.i18n.action.edit_column": "Edit non-primary language field descriptions",
629
+ "system.code.gen.i18n.status.complete": "Complete",
630
+ "system.code.gen.i18n.status.missing": "Missing",
631
+ "system.code.gen.i18n.message.missing": "Required before generation: {locales}",
632
+ "system.code.gen.i18n.placeholder.comment": "Chinese source: {source}",
633
+ "system.code.gen.i18n.placeholder.left_tree_comment": "Chinese tree source: {source}",
634
+ "system.code.gen.i18n.tooltip.table": "Maintain non-primary language descriptions used by generated pages, menus, and locale files. Incomplete drafts can be saved, but generation requires all translations.",
635
+ "system.code.gen.table.title.create": "Create code generation table",
636
+ "system.code.gen.table.title.edit": "Edit code generation table",
637
+ "system.code.gen.table.field.name": "Business table",
638
+ "system.code.gen.table.field.comment": "Table description",
639
+ "system.code.gen.table.field.business_module": "Business module",
640
+ "system.code.gen.table.field.parent_menu": "Parent menu",
641
+ "system.code.gen.table.field.page_type": "Page type",
642
+ "system.code.gen.table.field.parent_column": "Parent column",
643
+ "system.code.gen.table.field.tree_label_column": "Tree label column",
644
+ "system.code.gen.table.field.left_tree_table": "Tree data table",
645
+ "system.code.gen.table.field.left_tree_comment": "Tree description",
646
+ "system.code.gen.table.field.filter_column": "Filter column",
647
+ "system.code.gen.table.field.left_tree_parent_column": "Tree parent column",
648
+ "system.code.gen.table.field.left_tree_label_column": "Tree label column",
649
+ "system.code.gen.table.field.left_tree_value_column": "Tree value column",
650
+ "system.code.gen.table.field.left_tree_lazy": "Lazy-load tree",
651
+ "system.code.gen.table.field.gen_backend": "Generate backend",
652
+ "system.code.gen.table.field.gen_frontend": "Generate frontend",
653
+ "system.code.gen.table.field.gen_sql": "Generate SQL",
654
+ "system.code.gen.table.field.status": "Status",
655
+ "system.code.gen.table.field.remark": "Note",
656
+ "system.code.gen.table.field.created_at": "Created at",
657
+ "system.code.gen.table.placeholder.database_table": "Select a database table",
658
+ "system.code.gen.table.placeholder.comment": "Loaded from the selected table; editable",
659
+ "system.code.gen.table.placeholder.business_module": "Select a business module",
660
+ "system.code.gen.table.placeholder.parent_menu": "Select where to mount the generated page",
661
+ "system.code.gen.table.placeholder.parent_column": "Select a parent column",
662
+ "system.code.gen.table.placeholder.tree_label_column": "Select a tree label column",
663
+ "system.code.gen.table.placeholder.left_tree_table": "Select a tree data table",
664
+ "system.code.gen.table.placeholder.left_tree_comment": "Loaded from the selected tree table; editable",
665
+ "system.code.gen.table.placeholder.filter_column": "Select the current table filter column",
666
+ "system.code.gen.table.placeholder.left_tree_parent_column": "Select the tree parent column",
667
+ "system.code.gen.table.placeholder.left_tree_label_column": "Select the tree label column",
668
+ "system.code.gen.table.placeholder.left_tree_value_column": "Select the tree value column",
669
+ "system.code.gen.table.placeholder.remark": "Enter a note",
670
+ "system.code.gen.table.tooltip.name": "Select the source database table. A table can only be configured once.",
671
+ "system.code.gen.table.tooltip.comment": "The Chinese business description used by Proto, backend, frontend, and the Chinese menu title.",
672
+ "system.code.gen.table.tooltip.business_module": "The module and table name determine Proto, service, API, and page paths.",
673
+ "system.code.gen.table.tooltip.parent_menu": "Select the generated page directory. Menus and button permissions are synchronized when generation requirements are met.",
674
+ "system.code.gen.table.tooltip.page_type": "Choose a paged table, tree table, lazy tree table, or tree-and-table layout.",
675
+ "system.code.gen.table.tooltip.parent_column": "The column pointing to the parent record, such as parent_id.",
676
+ "system.code.gen.table.tooltip.tree_label_column": "The text column displayed for tree nodes, such as name.",
677
+ "system.code.gen.table.tooltip.left_tree_table": "The source table for the left-side tree.",
678
+ "system.code.gen.table.tooltip.left_tree_comment": "The Chinese title for the left-side tree. It does not affect API or file paths.",
679
+ "system.code.gen.table.tooltip.filter_column": "The current table column associated with the selected tree node value.",
680
+ "system.code.gen.table.tooltip.left_tree_parent_column": "The source table column pointing to a parent node.",
681
+ "system.code.gen.table.tooltip.left_tree_label_column": "The text column displayed for left-side tree nodes.",
682
+ "system.code.gen.table.tooltip.left_tree_value_column": "The unique node value passed to the right-side table.",
683
+ "system.code.gen.table.tooltip.left_tree_lazy": "Request children only when a node is expanded.",
684
+ "system.code.gen.table.tooltip.gen_backend": "Generate Proto, backend Biz, Service, and registration code.",
685
+ "system.code.gen.table.tooltip.gen_frontend": "Generate the frontend API, pages, and locale files for all supported languages.",
686
+ "system.code.gen.table.tooltip.gen_sql": "Synchronize page menus, button permissions, and translations for all supported languages.",
687
+ "system.code.gen.table.tooltip.status": "Disabled configurations are read-only. Successful generation sets the status to generated.",
688
+ "system.code.gen.table.tooltip.remark": "Visible to maintainers only and not used for generated names.",
689
+ "system.code.gen.table.value.disabled_module": "{module} (disabled)",
690
+ "system.code.gen.table.action.columns": "Columns",
691
+ "system.code.gen.table.action.proto": "Proto",
692
+ "system.code.gen.table.action.page_preview": "Page preview",
693
+ "system.code.gen.table.action.code_preview": "Code preview",
694
+ "system.code.gen.table.message.select_generate": "Select at least one item to generate",
695
+ "system.code.gen.table.message.disabled": "Code generation configuration {name} is disabled",
696
+ "system.code.gen.table.message.select_restore": "Select an item with an available restore snapshot",
697
+ "system.code.gen.table.message.restore_success": "Code generation result restored",
698
+ "system.code.gen.table.message.create_success": "Code generation table created",
699
+ "system.code.gen.table.message.update_success": "Code generation table updated",
700
+ "system.code.gen.table.message.select_delete": "Select at least one item to delete",
701
+ "system.code.gen.table.message.delete_canceled": "Code generation table deletion canceled",
702
+ "system.code.gen.table.message.delete_success": "Code generation table deleted",
703
+ "system.code.gen.table.dialog.generate_one": "Generate business table {name}?",
704
+ "system.code.gen.table.dialog.generate_batch": "Generate {count} business tables in the selected order?",
705
+ "system.code.gen.table.dialog.restore_one": "Restore business table {name}? Generated files, page menus, and button permissions will return to their previous state.",
706
+ "system.code.gen.table.dialog.restore_batch": "Restore {count} business tables? Shared files from a batch must be restored together.",
707
+ "system.code.gen.table.dialog.delete_one": "Delete business table {name}?",
708
+ "system.code.gen.table.dialog.delete_batch": "Delete the selected {count} configurations?",
709
+ "system.code.gen.column.title.database_fields": "Database columns",
710
+ "system.code.gen.column.title.workspace": "Column configuration",
711
+ "system.code.gen.column.title.workspace_with_table": "{table} column configuration",
712
+ "system.code.gen.column.title.options": "{scope} options - {column}",
713
+ "system.code.gen.column.title.option_warning": "Option configuration warning",
714
+ "system.code.gen.column.field.database_column": "Database column",
715
+ "system.code.gen.column.field.comment": "Column description",
716
+ "system.code.gen.column.field.query": "Query",
717
+ "system.code.gen.column.field.list": "List",
718
+ "system.code.gen.column.field.form": "Form",
719
+ "system.code.gen.column.field.selection_mode": "Selection mode",
720
+ "system.code.gen.column.field.source": "Source",
721
+ "system.code.gen.column.field.dictionary": "Dictionary",
722
+ "system.code.gen.column.field.active_value": "Active value",
723
+ "system.code.gen.column.field.inactive_value": "Inactive value",
724
+ "system.code.gen.column.field.data_table": "Database table",
725
+ "system.code.gen.column.field.tree_parent": "Tree parent column",
726
+ "system.code.gen.column.field.load_mode": "Load mode",
727
+ "system.code.gen.column.field.tree_label": "Tree label column",
728
+ "system.code.gen.column.field.label_field": "Label column",
729
+ "system.code.gen.column.field.tree_value": "Tree value column",
730
+ "system.code.gen.column.field.value_field": "Value column",
731
+ "system.code.gen.column.field.static_data": "Static data",
732
+ "system.code.gen.column.scope.query": "Query",
733
+ "system.code.gen.column.scope.list": "List",
734
+ "system.code.gen.column.scope.form": "Form",
735
+ "system.code.gen.column.value.table_name": "Table: {name}",
736
+ "system.code.gen.column.value.table_comment": "Comment: {comment}",
737
+ "system.code.gen.column.value.query_count": "{count} query fields",
738
+ "system.code.gen.column.value.list_count": "{count} list fields",
739
+ "system.code.gen.column.value.form_count": "{count} form fields",
740
+ "system.code.gen.column.value.database": "Database",
741
+ "system.code.gen.column.value.primary_key": "Primary key",
742
+ "system.code.gen.column.value.auto_increment": "Auto increment",
743
+ "system.code.gen.column.value.nullable": "Nullable",
744
+ "system.code.gen.column.value.not_null": "Not null",
745
+ "system.code.gen.column.value.required": "Required",
746
+ "system.code.gen.column.value.single": "Single",
747
+ "system.code.gen.column.value.multiple": "Multiple",
748
+ "system.code.gen.column.value.lazy_children": "Lazy-load child nodes",
749
+ "system.code.gen.column.placeholder.comment": "Enter a column description",
750
+ "system.code.gen.column.placeholder.query_operator": "Query operator",
751
+ "system.code.gen.column.placeholder.query_component": "Query component",
752
+ "system.code.gen.column.placeholder.list_component": "List component",
753
+ "system.code.gen.column.placeholder.form_component": "Form component",
754
+ "system.code.gen.column.placeholder.source": "Select a source",
755
+ "system.code.gen.column.placeholder.dictionary": "Select a dictionary",
756
+ "system.code.gen.column.placeholder.active_value": "Select the active value",
757
+ "system.code.gen.column.placeholder.inactive_value": "Select the inactive value",
758
+ "system.code.gen.column.placeholder.data_table": "Select a database table",
759
+ "system.code.gen.column.placeholder.tree_parent": "Select the tree parent column",
760
+ "system.code.gen.column.placeholder.tree_label": "Select the tree label column",
761
+ "system.code.gen.column.placeholder.label_field": "Select the label column",
762
+ "system.code.gen.column.placeholder.tree_value": "Select the tree value column",
763
+ "system.code.gen.column.placeholder.value_field": "Select the value column",
764
+ "system.code.gen.column.placeholder.option_label": "Display label",
765
+ "system.code.gen.column.placeholder.option_value": "Submitted value",
766
+ "system.code.gen.column.action.options": "Options",
767
+ "system.code.gen.column.action.save_and_close": "Save and close",
768
+ "system.code.gen.column.action.delete_static": "Delete static option",
769
+ "system.code.gen.column.action.continue_save": "Save anyway",
770
+ "system.code.gen.column.action.back_to_edit": "Go back",
771
+ "system.code.gen.column.message.empty": "No column configuration",
772
+ "system.code.gen.column.message.select_record": "Select a generation record first",
773
+ "system.code.gen.column.message.empty_static": "No static options",
774
+ "system.code.gen.column.message.name_and_type_required": "Column name and database type are required",
775
+ "system.code.gen.column.dialog.inconsistent_source": "The {scopes} option sources for column {column} differ. Save anyway?",
776
+ "system.code.gen.column.tooltip.drag": "Drag to reorder",
777
+ "system.code.gen.column.tooltip.drag_aria": "Drag to reorder columns",
778
+ "system.code.gen.column.tooltip.multiple_json_only": "Multiple selection is supported only for JSON columns",
779
+ "system.code.gen.column.tooltip.option_configured": "Configured and ready to save. Open to make changes",
780
+ "system.code.gen.column.tooltip.configure_option": "Configure options",
781
+ "system.code.gen.column.validation.option_component_missing": "The {scope} option configuration for column {column} has no matching component",
782
+ "system.code.gen.column.validation.switch_incomplete": "The {scope} switch configuration for column {column} is incomplete",
783
+ "system.code.gen.column.validation.switch_values_same": "The active and inactive values for column {column} in {scope} must differ",
784
+ "system.code.gen.column.validation.switch_values_unsupported": "The {scope} options for column {column} cannot contain switch values",
785
+ "system.code.gen.column.validation.lazy_tree_only": "Lazy loading is supported only for tree options in {scope} for column {column}",
786
+ "system.code.gen.column.validation.tree_table_only": "Tree options in {scope} for column {column} must use a database table source",
787
+ "system.code.gen.column.validation.source_incomplete": "The {scope} option source for column {column} is incomplete",
788
+ "system.code.gen.column.validation.static_incomplete": "The {scope} options for column {column} require at least one complete static option",
789
+ "system.code.gen.column.validation.table_fields_incomplete": "The database table option columns in {scope} for column {column} are incomplete",
790
+ "system.code.gen.proto.trigger.crud": "CRUD page",
791
+ "system.code.gen.proto.trigger.page_tree": "Page tree",
792
+ "system.code.gen.proto.trigger.left_tree": "Left tree and table",
793
+ "system.code.gen.proto.trigger.entity_option": "Entity options",
794
+ "system.code.gen.proto.trigger.field_option": "Field options",
795
+ "system.code.gen.proto.trigger.field_status": "Field status",
796
+ "system.code.gen.proto.api_kind.crud": "CRUD",
797
+ "system.code.gen.proto.api_kind.list": "List",
798
+ "system.code.gen.proto.api_kind.option": "Options",
799
+ "system.code.gen.proto.api_kind.tree": "Tree",
800
+ "system.code.gen.proto.api_kind.status": "Status",
801
+ "system.code.gen.proto.field.trigger_type": "Trigger",
802
+ "system.code.gen.proto.field.api_kind": "API type",
803
+ "system.code.gen.proto.field.capability": "Proto capability",
804
+ "system.code.gen.proto.field.generate_setting": "Generation",
805
+ "system.code.gen.proto.field.method_comment": "Method description",
806
+ "system.code.gen.proto.field.method_name": "Method name",
807
+ "system.code.gen.proto.field.proto_path": "Proto path",
808
+ "system.code.gen.proto.field.service_comment": "Service description",
809
+ "system.code.gen.proto.field.service_name": "Service name",
810
+ "system.code.gen.proto.field.parent_column": "Parent column",
811
+ "system.code.gen.proto.field.label_column": "Label column",
812
+ "system.code.gen.proto.field.value_column": "Value column",
813
+ "system.code.gen.proto.field.status_column": "Status column",
814
+ "system.code.gen.proto.field.load_mode": "Load mode",
815
+ "system.code.gen.proto.action.configure": "Configure",
816
+ "system.code.gen.proto.action.generate_api": "Generate API",
817
+ "system.code.gen.proto.status.exists": "Exists",
818
+ "system.code.gen.proto.status.missing": "Pending",
819
+ "system.code.gen.proto.title.config": "{method} - {kind} configuration",
820
+ "system.code.gen.proto.title.workspace": "Proto configuration",
821
+ "system.code.gen.proto.title.workspace_with_table": "{table} Proto configuration",
822
+ "system.code.gen.proto.placeholder.parent_column": "Select a parent column",
823
+ "system.code.gen.proto.placeholder.label_column": "Select a label column",
824
+ "system.code.gen.proto.placeholder.value_column": "Select a value column",
825
+ "system.code.gen.proto.placeholder.status_column": "Select a status column",
826
+ "system.code.gen.proto.message.configure_first": "Complete the required configuration first",
827
+ "system.code.gen.proto.message.save_success": "Proto configuration saved",
828
+ "system.code.gen.progress.title": "Code generation progress",
829
+ "system.code.gen.progress.value.current": "Current: {table}",
830
+ "system.code.gen.progress.value.steps": "Steps {completed} / {total}",
831
+ "system.code.gen.progress.value.created_at": "Created at {time}",
832
+ "system.code.gen.progress.value.finished_at": "Finished at {time}",
833
+ "system.code.gen.progress.status.pending": "Pending",
834
+ "system.code.gen.progress.status.running": "Generating",
835
+ "system.code.gen.progress.status.succeeded": "Completed",
836
+ "system.code.gen.progress.status.failed": "Failed",
837
+ "system.code.gen.progress.action.copy_error": "Copy error details",
838
+ "system.code.gen.progress.action.reload": "Reload",
839
+ "system.code.gen.progress.field.step": "Step",
840
+ "system.code.gen.progress.field.result": "Result",
841
+ "system.code.gen.progress.field.output": "Output",
842
+ "system.code.gen.progress.message.unavailable_title": "Task unavailable",
843
+ "system.code.gen.progress.message.unavailable": "The task expired, does not exist, or cannot be accessed",
844
+ "system.code.gen.progress.message.copied": "Error details copied",
845
+ "system.code.gen.progress.message.copy_failed": "Could not copy error details",
846
+ "system.code.gen.preview.field.path": "File path",
847
+ "system.code.gen.preview.field.action": "File action",
848
+ "system.code.gen.preview.field.message": "Details",
849
+ "system.code.gen.preview.field.password_strength": "Password strength",
850
+ "system.code.gen.preview.status.exists": "Exists",
851
+ "system.code.gen.preview.status.pending_create": "To be created",
852
+ "system.code.gen.preview.title.code": "Code preview",
853
+ "system.code.gen.preview.title.workspace": "{table} code preview",
854
+ "system.code.gen.preview.title.create": "Create {resource}",
855
+ "system.code.gen.preview.title.edit": "Edit {resource}",
856
+ "system.code.gen.preview.title.category_list": "Category list",
857
+ "system.code.gen.preview.title.delete_confirm": "Confirm deletion",
858
+ "system.code.gen.preview.title.data_list": "Data list",
859
+ "system.code.gen.preview.dialog.confirm_delete": "Delete the selected {count} records?",
860
+ "system.code.gen.preview.placeholder.custom_slot": "Custom slot content",
861
+ "system.code.gen.preview.placeholder.input": "Enter {field}",
862
+ "system.code.gen.preview.placeholder.select": "Select {field}",
863
+ "system.code.gen.preview.validation.required": "{field} is required",
864
+ "system.code.gen.preview.value.custom": "Custom",
865
+ "system.code.gen.preview.value.category": "Category",
866
+ "system.code.gen.preview.value.data": "record",
867
+ "system.code.gen.preview.value.enable_field": "Enable {field}",
868
+ "system.code.gen.preview.value.top_level": "Top level",
869
+ "system.code.gen.preview.value.available": "Available",
870
+ "system.code.gen.preview.value.selected": "Selected",
871
+ "system.code.gen.preview.value.key": "Key",
872
+ "system.code.gen.preview.value.value": "Value",
873
+ "system.code.gen.preview.value.range_separator": "to",
874
+ "system.code.gen.preview.value.option": "{source} option {index}",
875
+ "system.code.gen.preview.message.empty_files": "No files to preview",
876
+ "system.code.gen.preview.message.no_preview_files": "The current configuration does not produce previewable files",
877
+ "system.code.gen.preview.message.load_failed": "Could not load the code preview. Check the generation configuration",
878
+ "system.code.gen.preview.message.empty_page": "No page configuration",
879
+ "system.code.gen.preview.message.create_success": "Created",
880
+ "system.code.gen.preview.message.update_success": "Updated",
881
+ "system.code.gen.preview.message.delete_success": "Deleted",
882
+ "system.code.gen.preview.message.missing_translations": "Complete these translations before generation: {items}",
883
+ "system.code.gen.preview.value.list_separator": ", ",
884
+ "system.project.document.title.navigation": "Project document navigation",
885
+ "system.project.document.placeholder.search": "Search projects or paths",
886
+ "system.project.document.message.no_match": "No matching documents",
887
+ "system.project.document.message.empty": "No project documents",
888
+ "system.project.document.message.select": "Select a project document",
889
+ "system.project.document.message.uncollected": "Referenced document was not collected: {path}",
890
+ "system.project.document.value.updated_at": "Updated {time}",
891
+ "system.ops_monitoring.collecting": "Collecting",
892
+ "system.ops_monitoring.realtime": "Live data",
893
+ "system.ops_monitoring.window": "Current window: last {minutes} minutes",
894
+ "system.ops_monitoring.last_sample": "Last sample {time}",
895
+ "system.ops_monitoring.core_metrics": "Core metrics",
896
+ "system.ops_monitoring.request_latency_trend": "Request volume and latency trend",
897
+ "system.ops_monitoring.aggregation": "Aggregated by minute · last {minutes} minutes",
898
+ "system.ops_monitoring.p95_latency": "P95 latency",
899
+ "system.ops_monitoring.qps_trend": "QPS trend, current {value}",
900
+ "system.ops_monitoring.p95_trend": "P95 latency trend, current {value}",
901
+ "system.ops_monitoring.service_availability": "Service availability",
902
+ "system.ops_monitoring.service_dependency": "Current service and external dependency status",
903
+ "system.ops_monitoring.online": "{online} / {total} online",
904
+ "system.ops_monitoring.data_storage": "Data storage",
905
+ "system.ops_monitoring.storage_summary": "Pool and configuration status",
906
+ "system.ops_monitoring.interface_response": "Endpoints and responses",
907
+ "system.ops_monitoring.sort_recent": "Sorted by request volume · last {minutes} minutes",
908
+ "system.ops_monitoring.endpoint_count": "{count} endpoints",
909
+ "system.ops_monitoring.endpoint": "Endpoint",
910
+ "system.ops_monitoring.error_rate": "Error rate",
911
+ "system.ops_monitoring.status.label": "Status",
912
+ "system.ops_monitoring.instance_resources": "Instance resources",
913
+ "system.ops_monitoring.current_recent_sample": "Most recent process sample",
914
+ "system.ops_monitoring.instance_count": "{count} instances",
915
+ "system.ops_monitoring.alert_events": "Alert events",
916
+ "system.ops_monitoring.alert_attention": "Failed requests requiring operations attention",
917
+ "system.ops_monitoring.unresolved": "{count} unresolved",
918
+ "system.ops_monitoring.unknown": "Unknown",
919
+ "system.ops_monitoring.capacity": "Capacity",
920
+ "system.ops_monitoring.just_now": "Just now",
921
+ "system.ops_monitoring.minutes_ago": "{count} minutes ago",
922
+ "system.ops_monitoring.hours_ago": "{count} hours ago",
923
+ "system.ops_monitoring.days_ago": "{count} days ago",
924
+ "system.ops_monitoring.status.normal": "Normal",
925
+ "system.ops_monitoring.status.unconfigured": "Not configured",
926
+ "system.ops_monitoring.status.error": "Error",
927
+ "system.ops_monitoring.status.attention": "Attention",
928
+ "system.ops_monitoring.kpi.throughput": "Request throughput QPS",
929
+ "system.ops_monitoring.kpi.p95_latency": "P95 latency",
930
+ "system.ops_monitoring.kpi.error_rate": "Error rate",
931
+ "system.ops_monitoring.kpi.availability": "Availability",
932
+ "system.ops_monitoring.kpi.current_window": "Current window"
929
933
  }