@liujitcn/kratos-admin-system 0.0.19 → 0.0.21

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 (86) hide show
  1. package/README.md +51 -50
  2. package/dist/package/declarations/src/api/system/base_language.d.ts +51 -0
  3. package/dist/package/declarations/src/api/system/base_translation.d.ts +7 -0
  4. package/dist/package/declarations/src/api/system/code_gen_i18n.d.ts +8 -0
  5. package/dist/package/declarations/src/components/DynamicTranslationCell.vue.d.ts +39 -0
  6. package/dist/package/declarations/src/components/DynamicTranslationEditor.vue.d.ts +23 -0
  7. package/dist/package/declarations/src/components/dynamicTranslation.d.ts +44 -0
  8. package/dist/package/declarations/src/rpc/system/admin/v1/base_config.d.ts +5 -0
  9. package/dist/package/declarations/src/rpc/system/admin/v1/base_dict.d.ts +79 -0
  10. package/dist/package/declarations/src/rpc/system/admin/v1/base_language.d.ts +114 -0
  11. package/dist/package/declarations/src/rpc/system/admin/v1/base_menu.d.ts +40 -0
  12. package/dist/package/declarations/src/rpc/system/admin/v1/base_translation.d.ts +102 -0
  13. package/dist/package/declarations/src/rpc/system/admin/v1/code_gen.d.ts +2 -0
  14. package/dist/package/declarations/src/rpc/system/admin/v1/code_gen_column.d.ts +7 -0
  15. package/dist/package/declarations/src/rpc/system/admin/v1/code_gen_table.d.ts +13 -0
  16. package/dist/package/declarations/src/views/tool/code-gen/components/CodeGenLocaleEditor.vue.d.ts +23 -0
  17. package/dist/package/declarations/src/views/tool/code-gen/config.d.ts +7 -7
  18. package/dist/package/declarations/src/views/tool/language/index.vue.d.ts +3 -0
  19. package/dist/package/src/api/base/ai_message.ts +7 -12
  20. package/dist/package/src/api/base/sse.ts +3 -1
  21. package/dist/package/src/api/system/base_language.ts +137 -0
  22. package/dist/package/src/api/system/base_translation.ts +22 -0
  23. package/dist/package/src/api/system/code_gen_column.ts +17 -3
  24. package/dist/package/src/api/system/code_gen_i18n.ts +18 -0
  25. package/dist/package/src/api/system/code_gen_table.ts +12 -4
  26. package/dist/package/src/components/DynamicTranslationCell.vue +176 -0
  27. package/dist/package/src/components/DynamicTranslationEditor.vue +166 -0
  28. package/dist/package/src/components/dynamicTranslation.ts +86 -0
  29. package/dist/package/src/locales/README.md +28 -0
  30. package/dist/package/src/locales/en-US.json +929 -0
  31. package/dist/package/src/locales/es-ES.json +928 -0
  32. package/dist/package/src/locales/fr-FR.json +928 -0
  33. package/dist/package/src/locales/ja-JP.json +929 -0
  34. package/dist/package/src/locales/ko-KR.json +928 -0
  35. package/dist/package/src/locales/zh-CN.json +929 -0
  36. package/dist/package/src/locales/zh-TW.json +928 -0
  37. package/dist/package/src/module.ts +19 -1
  38. package/dist/package/src/rpc/system/admin/v1/base_config.ts +5 -0
  39. package/dist/package/src/rpc/system/admin/v1/base_dict.ts +81 -0
  40. package/dist/package/src/rpc/system/admin/v1/base_language.ts +135 -0
  41. package/dist/package/src/rpc/system/admin/v1/base_menu.ts +41 -0
  42. package/dist/package/src/rpc/system/admin/v1/base_translation.ts +117 -0
  43. package/dist/package/src/rpc/system/admin/v1/code_gen.ts +5 -1
  44. package/dist/package/src/rpc/system/admin/v1/code_gen_column.ts +8 -0
  45. package/dist/package/src/rpc/system/admin/v1/code_gen_table.ts +15 -0
  46. package/dist/package/src/views/ai/chat/components/AiMarkdown.vue +1 -6
  47. package/dist/package/src/views/ai/chat/components/ChatPanel.vue +70 -53
  48. package/dist/package/src/views/ai/chat/components/SessionPanel.vue +20 -9
  49. package/dist/package/src/views/ai/chat/components/XSender.vue +36 -23
  50. package/dist/package/src/views/ai/chat/index.vue +55 -39
  51. package/dist/package/src/views/ai/chat/message.ts +18 -17
  52. package/dist/package/src/views/base/api/index.vue +121 -83
  53. package/dist/package/src/views/base/area/index.vue +81 -31
  54. package/dist/package/src/views/base/config/index.vue +272 -78
  55. package/dist/package/src/views/base/dept/index.vue +110 -61
  56. package/dist/package/src/views/base/dict/index.vue +137 -58
  57. package/dist/package/src/views/base/dict/item.vue +147 -61
  58. package/dist/package/src/views/base/job/index.vue +134 -81
  59. package/dist/package/src/views/base/job/log.vue +21 -22
  60. package/dist/package/src/views/base/log/index.vue +68 -46
  61. package/dist/package/src/views/base/menu/index.vue +257 -156
  62. package/dist/package/src/views/base/migration/index.vue +49 -29
  63. package/dist/package/src/views/base/post/index.vue +128 -59
  64. package/dist/package/src/views/base/role/index.vue +145 -78
  65. package/dist/package/src/views/base/tenant/index.vue +132 -63
  66. package/dist/package/src/views/base/user/components/dept-tree.vue +2 -1
  67. package/dist/package/src/views/base/user/index.vue +192 -112
  68. package/dist/package/src/views/profile/components/base.vue +44 -27
  69. package/dist/package/src/views/profile/components/password.vue +43 -27
  70. package/dist/package/src/views/profile/components/security.vue +89 -53
  71. package/dist/package/src/views/profile/index.vue +10 -9
  72. package/dist/package/src/views/tool/api-doc/index.vue +6 -2
  73. package/dist/package/src/views/tool/code-gen/code-preview/index.vue +30 -14
  74. package/dist/package/src/views/tool/code-gen/columns/index.vue +382 -273
  75. package/dist/package/src/views/tool/code-gen/columns/option-copy.ts +1 -6
  76. package/dist/package/src/views/tool/code-gen/components/CodeGenLocaleEditor.vue +118 -0
  77. package/dist/package/src/views/tool/code-gen/components/CodeGenProgressDialog.vue +65 -36
  78. package/dist/package/src/views/tool/code-gen/components/CodePreviewPane.vue +8 -5
  79. package/dist/package/src/views/tool/code-gen/config.ts +114 -77
  80. package/dist/package/src/views/tool/code-gen/preview/data.ts +19 -17
  81. package/dist/package/src/views/tool/code-gen/preview/index.vue +96 -58
  82. package/dist/package/src/views/tool/code-gen/proto/index.vue +110 -62
  83. package/dist/package/src/views/tool/code-gen/table/index.vue +197 -117
  84. package/dist/package/src/views/tool/language/index.vue +256 -0
  85. package/dist/package/src/views/tool/project-doc/index.vue +17 -15
  86. package/package.json +6 -2
@@ -3,6 +3,15 @@ import { User } from "@element-plus/icons-vue";
3
3
  import { defineAdminModule } from "@liujitcn/kratos-admin-core";
4
4
  import Ai from "./components/Ai.vue";
5
5
 
6
+ // 语言包随 System 模块注册,供 System 页面、组件和代码生成页面使用。
7
+ import enUS from "./locales/en-US.json";
8
+ import jaJP from "./locales/ja-JP.json";
9
+ import zhCN from "./locales/zh-CN.json";
10
+ import zhTW from "./locales/zh-TW.json";
11
+ import koKR from "./locales/ko-KR.json";
12
+ import frFR from "./locales/fr-FR.json";
13
+ import esES from "./locales/es-ES.json";
14
+
6
15
  const viewModules = import.meta.glob<{ default: Component }>("./views/**/*.vue");
7
16
 
8
17
  /** System 管理端业务模块。 */
@@ -10,8 +19,17 @@ export const systemAdminModule = defineAdminModule({
10
19
  name: "system",
11
20
  views: viewModules,
12
21
  headerTools: [{ name: "ai", component: Ai }],
13
- userMenuActions: [{ name: "profile", label: "个人中心", menuName: "Profile", icon: User }],
22
+ userMenuActions: [{ name: "profile", labelKey: "system.profile.title", menuName: "Profile", icon: User }],
14
23
  routeOptions: {
15
24
  Profile: { reuseTabAcrossQuery: true }
25
+ },
26
+ messages: {
27
+ "zh-CN": zhCN,
28
+ "zh-TW": zhTW,
29
+ "ko-KR": koKR,
30
+ "fr-FR": frFR,
31
+ "es-ES": esES,
32
+ "en-US": enUS,
33
+ "ja-JP": jaJP
16
34
  }
17
35
  });
@@ -9,6 +9,7 @@ import type { BaseConfigSite } from "../../../base/v1/enum";
9
9
  import type { Status } from "../../../common/v1/enum";
10
10
  import type { Empty } from "../../../google/protobuf/empty";
11
11
  import type { BaseConfigType } from "../../common/v1/enum";
12
+ import type { BaseConfigTranslation } from "./base_translation";
12
13
 
13
14
  /** 系统配置分页查询条件 */
14
15
  export interface PageBaseConfigRequest {
@@ -66,6 +67,8 @@ export interface BaseConfigForm {
66
67
  key: string;
67
68
  /** 配置value */
68
69
  value: string;
70
+ /** 配置名称及文本/富文本值的多语言翻译 */
71
+ translations: BaseConfigTranslation[];
69
72
  /** 状态 */
70
73
  status: Status;
71
74
  }
@@ -114,6 +117,8 @@ export interface BaseConfig {
114
117
  key: string;
115
118
  /** 配置value */
116
119
  value: string;
120
+ /** 配置名称及文本/富文本值的多语言翻译 */
121
+ translations: BaseConfigTranslation[];
117
122
  /** 状态:枚举【Status】 */
118
123
  status: Status;
119
124
  /** 创建时间 */
@@ -7,6 +7,7 @@
7
7
  /* eslint-disable */
8
8
  import type { Status } from "../../../common/v1/enum";
9
9
  import type { Empty } from "../../../google/protobuf/empty";
10
+ import type { TranslationStatus } from "./base_translation";
10
11
 
11
12
  /** 字典选项查询条件 */
12
13
  export interface OptionBaseDictRequest {
@@ -100,6 +101,8 @@ export interface BaseDictForm {
100
101
  code: string;
101
102
  /** 字典名称 */
102
103
  name: string;
104
+ /** 非主语言翻译 */
105
+ translations: BaseDictTranslation[];
103
106
  /** 状态 */
104
107
  status: Status;
105
108
  }
@@ -124,6 +127,8 @@ export interface BaseDictItemForm {
124
127
  tag_type: string;
125
128
  /** 排序 */
126
129
  sort: number;
130
+ /** 非主语言翻译 */
131
+ translations: BaseDictItemTranslation[];
127
132
  /** 状态 */
128
133
  status: Status;
129
134
  }
@@ -188,6 +193,8 @@ export interface BaseDict {
188
193
  code: string;
189
194
  /** 字典名称 */
190
195
  name: string;
196
+ /** 非主语言翻译 */
197
+ translations: BaseDictTranslation[];
191
198
  /** 状态 */
192
199
  status: Status;
193
200
  /** 创建时间 */
@@ -210,6 +217,8 @@ export interface BaseDictItem {
210
217
  tag_type: string;
211
218
  /** 排序 */
212
219
  sort: number;
220
+ /** 非主语言翻译 */
221
+ translations: BaseDictItemTranslation[];
213
222
  /** 状态 */
214
223
  status: Status;
215
224
  /** 创建时间 */
@@ -218,6 +227,78 @@ export interface BaseDictItem {
218
227
  updated_at: string;
219
228
  }
220
229
 
230
+ /** 字典翻译 */
231
+ export interface BaseDictTranslation {
232
+ /** 主键ID */
233
+ id: number;
234
+ /** 字典ID */
235
+ dict_id: number;
236
+ /** 语言代码 */
237
+ locale: string;
238
+ /** 字典名称 */
239
+ name: string;
240
+ /** 翻译状态 */
241
+ translation_status: TranslationStatus;
242
+ /** 中文源文SHA-256 */
243
+ source_hash: string;
244
+ /** 机器翻译提供方 */
245
+ translation_provider: string;
246
+ /** 最近机器翻译时间 */
247
+ translated_at: string;
248
+ /** 审核人ID */
249
+ reviewed_by: number;
250
+ /** 审核时间 */
251
+ reviewed_at: string;
252
+ /** 创建人ID */
253
+ created_by: number;
254
+ /** 更新人ID */
255
+ updated_by: number;
256
+ /** 创建时间 */
257
+ created_at: string;
258
+ /** 更新时间 */
259
+ updated_at: string;
260
+ /** 删除时间 */
261
+ deleted_at: number;
262
+ /** 中文源文是否已变化 */
263
+ source_changed: boolean;
264
+ }
265
+
266
+ /** 字典项翻译 */
267
+ export interface BaseDictItemTranslation {
268
+ /** 主键ID */
269
+ id: number;
270
+ /** 字典项ID */
271
+ dict_item_id: number;
272
+ /** 语言代码 */
273
+ locale: string;
274
+ /** 字典项标签 */
275
+ label: string;
276
+ /** 翻译状态 */
277
+ translation_status: TranslationStatus;
278
+ /** 中文源文SHA-256 */
279
+ source_hash: string;
280
+ /** 机器翻译提供方 */
281
+ translation_provider: string;
282
+ /** 最近机器翻译时间 */
283
+ translated_at: string;
284
+ /** 审核人ID */
285
+ reviewed_by: number;
286
+ /** 审核时间 */
287
+ reviewed_at: string;
288
+ /** 创建人ID */
289
+ created_by: number;
290
+ /** 更新人ID */
291
+ updated_by: number;
292
+ /** 创建时间 */
293
+ created_at: string;
294
+ /** 更新时间 */
295
+ updated_at: string;
296
+ /** 删除时间 */
297
+ deleted_at: number;
298
+ /** 中文源文是否已变化 */
299
+ source_changed: boolean;
300
+ }
301
+
221
302
  /** Admin字典服务 */
222
303
  export interface BaseDictService {
223
304
  /** 查询字典列表 */
@@ -0,0 +1,135 @@
1
+ // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
+ // versions:
3
+ // protoc-gen-ts_proto v2.11.8
4
+ // protoc unknown
5
+ // source: system/admin/v1/base_language.proto
6
+
7
+ /* eslint-disable */
8
+ import type { Status } from "../../../common/v1/enum";
9
+ import type { Empty } from "../../../google/protobuf/empty";
10
+
11
+ /** 语言选项查询条件 */
12
+ export interface OptionBaseLanguageRequest {
13
+ /** 是否只返回启用语言 */
14
+ enabled_only?: boolean | undefined;
15
+ }
16
+
17
+ /** 语言选项响应 */
18
+ export interface OptionBaseLanguageResponse {
19
+ /** 语言选项 */
20
+ base_languages: BaseLanguage[];
21
+ }
22
+
23
+ /** 语言分页查询条件 */
24
+ export interface PageBaseLanguageRequest {
25
+ /** 语言名称 */
26
+ language_name: string;
27
+ /** 语言代码 */
28
+ language_code: string;
29
+ /** 启用状态 */
30
+ status?:
31
+ | Status
32
+ | undefined;
33
+ /** 当前页码 */
34
+ page_num: number;
35
+ /** 每页数量 */
36
+ page_size: number;
37
+ }
38
+
39
+ /** 语言分页响应 */
40
+ export interface PageBaseLanguageResponse {
41
+ /** 语言列表 */
42
+ base_languages: BaseLanguage[];
43
+ /** 总数 */
44
+ total: number;
45
+ }
46
+
47
+ /** 语言详情查询条件 */
48
+ export interface GetBaseLanguageRequest {
49
+ /** 语言ID */
50
+ id: number;
51
+ }
52
+
53
+ /** 语言表单 */
54
+ export interface BaseLanguageForm {
55
+ /** 语言ID */
56
+ id: number;
57
+ /** 标准语言代码 */
58
+ language_code: string;
59
+ /** 语言名称 */
60
+ language_name: string;
61
+ /** 本地语言名称 */
62
+ native_name: string;
63
+ /** 排序,值越小越靠前 */
64
+ sort: number;
65
+ /** 是否主语言 */
66
+ is_primary: boolean;
67
+ /** 启用状态 */
68
+ status: Status;
69
+ }
70
+
71
+ /** 语言 */
72
+ export interface BaseLanguage {
73
+ /** 语言ID */
74
+ id: number;
75
+ /** 标准语言代码 */
76
+ language_code: string;
77
+ /** 语言名称 */
78
+ language_name: string;
79
+ /** 本地语言名称 */
80
+ native_name: string;
81
+ /** 排序 */
82
+ sort: number;
83
+ /** 是否主语言 */
84
+ is_primary: boolean;
85
+ /** 启用状态 */
86
+ status: Status;
87
+ /** 创建时间 */
88
+ created_at: string;
89
+ /** 更新时间 */
90
+ updated_at: string;
91
+ }
92
+
93
+ /** 创建语言请求参数 */
94
+ export interface CreateBaseLanguageRequest {
95
+ /** 语言表单 */
96
+ base_language: BaseLanguageForm | undefined;
97
+ }
98
+
99
+ /** 更新语言请求参数 */
100
+ export interface UpdateBaseLanguageRequest {
101
+ /** 语言表单 */
102
+ base_language: BaseLanguageForm | undefined;
103
+ }
104
+
105
+ /** 删除语言请求参数 */
106
+ export interface DeleteBaseLanguageRequest {
107
+ /** 语言ID列表 */
108
+ id: string;
109
+ }
110
+
111
+ /** 设置语言状态请求参数 */
112
+ export interface SetBaseLanguageStatusRequest {
113
+ /** 语言ID */
114
+ id: number;
115
+ /** 启用状态 */
116
+ status: Status;
117
+ }
118
+
119
+ /** Admin语言管理服务 */
120
+ export interface BaseLanguageService {
121
+ /** 查询启用语言选项 */
122
+ OptionBaseLanguage(request: OptionBaseLanguageRequest): Promise<OptionBaseLanguageResponse>;
123
+ /** 查询语言分页列表 */
124
+ PageBaseLanguage(request: PageBaseLanguageRequest): Promise<PageBaseLanguageResponse>;
125
+ /** 查询语言详情 */
126
+ GetBaseLanguage(request: GetBaseLanguageRequest): Promise<BaseLanguageForm>;
127
+ /** 创建语言 */
128
+ CreateBaseLanguage(request: CreateBaseLanguageRequest): Promise<Empty>;
129
+ /** 更新语言 */
130
+ UpdateBaseLanguage(request: UpdateBaseLanguageRequest): Promise<Empty>;
131
+ /** 删除语言 */
132
+ DeleteBaseLanguage(request: DeleteBaseLanguageRequest): Promise<Empty>;
133
+ /** 设置语言状态 */
134
+ SetBaseLanguageStatus(request: SetBaseLanguageStatusRequest): Promise<Empty>;
135
+ }
@@ -9,6 +9,7 @@ import type { TreeOptionResponse } from "../../../common/v1/common";
9
9
  import type { Status } from "../../../common/v1/enum";
10
10
  import type { Empty } from "../../../google/protobuf/empty";
11
11
  import type { BaseMenuType } from "../../common/v1/enum";
12
+ import type { TranslationStatus } from "./base_translation";
12
13
 
13
14
  /** 菜单选项查询条件 */
14
15
  export interface OptionBaseMenuRequest {
@@ -70,6 +71,8 @@ export interface BaseMenuForm {
70
71
  | undefined;
71
72
  /** 分配的API列表 */
72
73
  api: string[];
74
+ /** 非主语言翻译 */
75
+ translations: BaseMenuTranslation[];
73
76
  /** 排序 */
74
77
  sort: number;
75
78
  /** 状态 */
@@ -122,6 +125,8 @@ export interface BaseMenu {
122
125
  meta:
123
126
  | BaseMenuMeta
124
127
  | undefined;
128
+ /** 非主语言翻译 */
129
+ translations: BaseMenuTranslation[];
125
130
  /** 排序 */
126
131
  sort: number;
127
132
  /** 状态 */
@@ -190,6 +195,42 @@ export interface BaseMenuParams {
190
195
  value: string;
191
196
  }
192
197
 
198
+ /** 菜单翻译 */
199
+ export interface BaseMenuTranslation {
200
+ /** 主键ID */
201
+ id: number;
202
+ /** 菜单ID */
203
+ menu_id: number;
204
+ /** 语言代码 */
205
+ locale: string;
206
+ /** 菜单标题 */
207
+ title: string;
208
+ /** 翻译状态 */
209
+ translation_status: TranslationStatus;
210
+ /** 中文源文SHA-256 */
211
+ source_hash: string;
212
+ /** 机器翻译提供方 */
213
+ translation_provider: string;
214
+ /** 最近机器翻译时间 */
215
+ translated_at: string;
216
+ /** 审核人ID */
217
+ reviewed_by: number;
218
+ /** 审核时间 */
219
+ reviewed_at: string;
220
+ /** 创建人ID */
221
+ created_by: number;
222
+ /** 更新人ID */
223
+ updated_by: number;
224
+ /** 创建时间 */
225
+ created_at: string;
226
+ /** 更新时间 */
227
+ updated_at: string;
228
+ /** 删除时间 */
229
+ deleted_at: number;
230
+ /** 中文源文是否已变化 */
231
+ source_changed: boolean;
232
+ }
233
+
193
234
  /** Admin菜单管理服务 */
194
235
  export interface BaseMenuService {
195
236
  /** 查询菜单树形选择 */
@@ -0,0 +1,117 @@
1
+ // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
+ // versions:
3
+ // protoc-gen-ts_proto v2.11.8
4
+ // protoc unknown
5
+ // source: system/admin/v1/base_translation.proto
6
+
7
+ /* eslint-disable */
8
+
9
+ /** 翻译状态 */
10
+ export enum TranslationStatus {
11
+ TRANSLATION_STATUS_UNSPECIFIED = 0,
12
+ TRANSLATION_STATUS_PENDING = 1,
13
+ TRANSLATION_STATUS_MACHINE = 2,
14
+ TRANSLATION_STATUS_REVIEWED = 3,
15
+ }
16
+
17
+ /** 翻译资源类型 */
18
+ export enum TranslationResourceType {
19
+ TRANSLATION_RESOURCE_TYPE_UNSPECIFIED = 0,
20
+ TRANSLATION_RESOURCE_TYPE_MENU = 1,
21
+ TRANSLATION_RESOURCE_TYPE_DICT = 2,
22
+ TRANSLATION_RESOURCE_TYPE_DICT_ITEM = 3,
23
+ TRANSLATION_RESOURCE_TYPE_CONFIG = 4,
24
+ }
25
+
26
+ /** 系统配置翻译字段 */
27
+ export enum BaseConfigTranslationField {
28
+ BASE_CONFIG_TRANSLATION_FIELD_UNSPECIFIED = 0,
29
+ BASE_CONFIG_TRANSLATION_FIELD_NAME = 1,
30
+ BASE_CONFIG_TRANSLATION_FIELD_VALUE = 2,
31
+ }
32
+
33
+ /** 生成翻译草稿请求 */
34
+ export interface GenerateTranslationDraftRequest {
35
+ /** 资源类型 */
36
+ resource_type: TranslationResourceType;
37
+ /** 已保存资源ID */
38
+ resource_id: number;
39
+ /** 目标语言代码 */
40
+ target_locale: string;
41
+ /** 系统配置翻译字段,配置资源必填 */
42
+ field: BaseConfigTranslationField;
43
+ }
44
+
45
+ /** 生成翻译草稿响应 */
46
+ export interface GenerateTranslationDraftResponse {
47
+ /** 资源类型 */
48
+ resource_type: TranslationResourceType;
49
+ /** 资源ID */
50
+ resource_id: number;
51
+ /** 语言区域 */
52
+ locale: string;
53
+ /** 机器翻译草稿 */
54
+ translation: string;
55
+ /** 翻译状态 */
56
+ translation_status: TranslationStatus;
57
+ /** 中文源文SHA-256 */
58
+ source_hash: string;
59
+ /** 机器翻译提供方 */
60
+ translation_provider: string;
61
+ /** 最近机器翻译时间 */
62
+ translated_at: string;
63
+ /** 系统配置翻译字段 */
64
+ field: BaseConfigTranslationField;
65
+ }
66
+
67
+ /** 系统配置单语言翻译 */
68
+ export interface BaseConfigTranslation {
69
+ /** 翻译记录ID */
70
+ id: number;
71
+ /** 系统配置ID */
72
+ config_id: number;
73
+ /** 语言区域 */
74
+ locale: string;
75
+ /** 翻译字段:name或value */
76
+ field: BaseConfigTranslationField;
77
+ /** 翻译文本 */
78
+ text: string;
79
+ /** 翻译审核状态 */
80
+ translation_status: TranslationStatus;
81
+ /** 中文源文SHA-256 */
82
+ source_hash: string;
83
+ /** 中文源文是否已变化 */
84
+ source_changed: boolean;
85
+ /** 机器翻译提供方 */
86
+ translation_provider: string;
87
+ /** 最近机器翻译时间 */
88
+ translated_at: string;
89
+ /** 审核人ID */
90
+ reviewed_by: number;
91
+ /** 审核时间 */
92
+ reviewed_at: string;
93
+ /** 创建人ID */
94
+ created_by: number;
95
+ /** 更新人ID */
96
+ updated_by: number;
97
+ /** 创建时间 */
98
+ created_at: string;
99
+ /** 更新时间 */
100
+ updated_at: string;
101
+ /** 删除时间 */
102
+ deleted_at: number;
103
+ }
104
+
105
+ /** 代码生成单语言国际化配置 */
106
+ export interface CodeGenLocaleConfig {
107
+ /** 业务或字段描述 */
108
+ comment: string;
109
+ /** 左树描述 */
110
+ left_tree_comment: string;
111
+ }
112
+
113
+ /** Admin翻译草稿服务 */
114
+ export interface BaseTranslationService {
115
+ /** 为单个已保存资源生成机器翻译草稿 */
116
+ GenerateTranslationDraft(request: GenerateTranslationDraftRequest): Promise<GenerateTranslationDraftResponse>;
117
+ }
@@ -78,7 +78,11 @@ export interface PreviewCodeGenResponse {
78
78
  /** 预览文件列表 */
79
79
  files: CodeGenPreviewFile[];
80
80
  /** 本次生效输出路径 */
81
- output_paths: CodeGenOutputPaths | undefined;
81
+ output_paths:
82
+ | CodeGenOutputPaths
83
+ | undefined;
84
+ /** 正式生成前必须补齐的翻译配置 */
85
+ missing_translations: string[];
82
86
  }
83
87
 
84
88
  /** 启动代码生成任务条件 */
@@ -6,6 +6,7 @@
6
6
 
7
7
  /* eslint-disable */
8
8
  import type { Empty } from "../../../google/protobuf/empty";
9
+ import type { CodeGenLocaleConfig } from "./base_translation";
9
10
 
10
11
  /** 代码生成字段配置查询条件 */
11
12
  export interface ListCodeGenColumnRequest {
@@ -97,6 +98,13 @@ export interface CodeGenColumn {
97
98
  | undefined;
98
99
  /** 排序 */
99
100
  sort: number;
101
+ /** 按语言区域索引的字段国际化配置 */
102
+ i18n_config: Map<string, CodeGenLocaleConfig>;
103
+ }
104
+
105
+ export interface CodeGenColumn_I18nConfigEntry {
106
+ key: string;
107
+ value: CodeGenLocaleConfig | undefined;
100
108
  }
101
109
 
102
110
  /** 代码生成字段查询条件配置 */
@@ -7,6 +7,7 @@
7
7
  /* eslint-disable */
8
8
  import type { Empty } from "../../../google/protobuf/empty";
9
9
  import type { CodeGenTableStatus } from "../../common/v1/enum";
10
+ import type { CodeGenLocaleConfig } from "./base_translation";
10
11
 
11
12
  /** 代码生成表配置分页查询条件 */
12
13
  export interface PageCodeGenTableRequest {
@@ -88,6 +89,13 @@ export interface CodeGenTableForm {
88
89
  status: CodeGenTableStatus;
89
90
  /** 备注 */
90
91
  remark: string;
92
+ /** 按语言区域索引的表级国际化配置 */
93
+ i18n_config: Map<string, CodeGenLocaleConfig>;
94
+ }
95
+
96
+ export interface CodeGenTableForm_I18nConfigEntry {
97
+ key: string;
98
+ value: CodeGenLocaleConfig | undefined;
91
99
  }
92
100
 
93
101
  /** 代码生成表配置创建条件 */
@@ -142,6 +150,13 @@ export interface CodeGenTable {
142
150
  updated_at: string;
143
151
  /** 是否可以还原生成结果 */
144
152
  restore_available: boolean;
153
+ /** 按语言区域索引的表级国际化配置 */
154
+ i18n_config: Map<string, CodeGenLocaleConfig>;
155
+ }
156
+
157
+ export interface CodeGenTable_I18nConfigEntry {
158
+ key: string;
159
+ value: CodeGenLocaleConfig | undefined;
145
160
  }
146
161
 
147
162
  /** 左树右表页面配置 */
@@ -1,10 +1,5 @@
1
1
  <template>
2
- <MarkdownPreview
3
- class="agent-markdown"
4
- :model-value="content"
5
- :is-dark="globalStore.isDark"
6
- max-code-height="360px"
7
- />
2
+ <MarkdownPreview class="agent-markdown" :model-value="content" :is-dark="globalStore.isDark" max-code-height="360px" />
8
3
  </template>
9
4
 
10
5
  <script setup lang="ts" name="AiMarkdown">