@arronqzy/i18n 0.1.1
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.
- package/README.md +42 -0
- package/package.json +45 -0
- package/src/core.ts +96 -0
- package/src/index.ts +37 -0
- package/src/locales/en-US.ts +1360 -0
- package/src/locales/zh-CN.ts +1358 -0
- package/src/react/I18nProvider.tsx +96 -0
- package/src/react/index.ts +2 -0
- package/src/types.ts +13 -0
- package/src/vue/index.ts +98 -0
|
@@ -0,0 +1,1358 @@
|
|
|
1
|
+
export const zhCN = {
|
|
2
|
+
common: {
|
|
3
|
+
ok: "确定",
|
|
4
|
+
cancel: "取消",
|
|
5
|
+
confirm: "确定",
|
|
6
|
+
delete: "删除",
|
|
7
|
+
save: "保存",
|
|
8
|
+
reset: "重置",
|
|
9
|
+
preview: "预览",
|
|
10
|
+
sync: "同步",
|
|
11
|
+
edit: "编辑",
|
|
12
|
+
default: "默认",
|
|
13
|
+
none: "无",
|
|
14
|
+
node: "节点",
|
|
15
|
+
hint: "说明",
|
|
16
|
+
export: "导出",
|
|
17
|
+
import: "导入",
|
|
18
|
+
search: "搜索",
|
|
19
|
+
close: "关闭",
|
|
20
|
+
expand: "展开",
|
|
21
|
+
collapse: "收起",
|
|
22
|
+
upload: "上传",
|
|
23
|
+
clear: "清空",
|
|
24
|
+
copy: "复制",
|
|
25
|
+
paste: "粘贴",
|
|
26
|
+
rename: "重命名",
|
|
27
|
+
add: "新增",
|
|
28
|
+
remove: "移除",
|
|
29
|
+
loading: "加载中…",
|
|
30
|
+
colorPickerAria: "{label}调色盘",
|
|
31
|
+
hintAria: "{label}说明",
|
|
32
|
+
secondsAgo: "{sec}秒前",
|
|
33
|
+
minutesAgo: "{min}分钟前",
|
|
34
|
+
hoursAgo: "{hour}小时前",
|
|
35
|
+
daysAgo: "{day}天前",
|
|
36
|
+
},
|
|
37
|
+
panel: {
|
|
38
|
+
ai: {
|
|
39
|
+
title: "离线 AI 助手",
|
|
40
|
+
open: "AI 助手",
|
|
41
|
+
hide: "收起 AI",
|
|
42
|
+
welcome: "本地离线助手。加载模型后即可提问或改页面。",
|
|
43
|
+
downloadModel: "加载",
|
|
44
|
+
modelReady: "模型已就绪。",
|
|
45
|
+
statusIdle: "未加载",
|
|
46
|
+
statusLoading: "{pct}%",
|
|
47
|
+
statusReady: "就绪",
|
|
48
|
+
statusUnsupported: "无 WebGPU",
|
|
49
|
+
webgpuRequired: "需要 Chrome/Edge + WebGPU(纯本地,无云端)。",
|
|
50
|
+
inputPlaceholder: "描述你想做的修改…",
|
|
51
|
+
send: "发送",
|
|
52
|
+
done: "已执行",
|
|
53
|
+
parseFailed: "无法解析模型输出:",
|
|
54
|
+
applyFailed: "执行失败",
|
|
55
|
+
needActionHint:
|
|
56
|
+
"(模型未生成可执行动作。请先选中组件并说具体改什么,或切换 3B 模型。)",
|
|
57
|
+
unclearIntent:
|
|
58
|
+
"我没听懂你的意思。\n\n请说清楚是要**提问**还是**改页面**,例如:\n- 「你能做什么」\n- 「有哪些组件」\n- 「加一个表格」\n- 「把选中组件宽度改成 400」",
|
|
59
|
+
layerLockedAddFailed: "当前图层已锁定,无法添加。请先解锁或切换图层。",
|
|
60
|
+
unknownMaterial: "未知组件「{type}」。可用:text / table / grid / image / bar / line / pie 等。",
|
|
61
|
+
error: "出错",
|
|
62
|
+
model15b: "1.5B",
|
|
63
|
+
model15bHint: "更快更省显存;复杂指令建议换 3B",
|
|
64
|
+
model3b: "3B",
|
|
65
|
+
model3bHint: "正确率更高,下载与显存占用更大",
|
|
66
|
+
quickMakeLogin: "做一个简单登录页",
|
|
67
|
+
quickMakeLoginSave: "登录页并保存",
|
|
68
|
+
quickExplainSelection: "解释当前选中",
|
|
69
|
+
quickAddTable: "加表格",
|
|
70
|
+
quickAddClock: "蓝图加定时器",
|
|
71
|
+
quickBlueprintTimerRun: "蓝图定时器并运行",
|
|
72
|
+
quickWhatComponents: "有哪些组件",
|
|
73
|
+
quickHowTable: "表格怎么配",
|
|
74
|
+
historyLabel: "对话 {count} 条",
|
|
75
|
+
historyExpand: "更早 {count} 条",
|
|
76
|
+
historyCollapse: "收起",
|
|
77
|
+
historyHidden: "已收纳更早 {count} 条",
|
|
78
|
+
inputHint: "Enter 发送",
|
|
79
|
+
stepRunning: "步骤 {step}:{type}…",
|
|
80
|
+
stepLine: "{step}. {type} — {result}",
|
|
81
|
+
stepsSummary: "步骤",
|
|
82
|
+
stoppedMaxSteps: "已达步数上限。",
|
|
83
|
+
stoppedFail: "未完成。",
|
|
84
|
+
stoppedParseFail: "无法继续解析动作。",
|
|
85
|
+
},
|
|
86
|
+
menubar: {
|
|
87
|
+
file: "文件",
|
|
88
|
+
edit: "编辑",
|
|
89
|
+
view: "视图",
|
|
90
|
+
blueprint: "蓝图",
|
|
91
|
+
settings: "设置",
|
|
92
|
+
export: "导出",
|
|
93
|
+
import: "导入",
|
|
94
|
+
exportPanelJson: "导出面板 JSON",
|
|
95
|
+
importPanelJson: "导入面板 JSON",
|
|
96
|
+
exportBlueprint: "导出蓝图",
|
|
97
|
+
importBlueprint: "导入蓝图",
|
|
98
|
+
undo: "撤销",
|
|
99
|
+
redo: "重做",
|
|
100
|
+
bringForward: "上移一层",
|
|
101
|
+
sendBackward: "下移一层",
|
|
102
|
+
bringToFront: "置顶",
|
|
103
|
+
sendToBack: "置底",
|
|
104
|
+
deleteSelected: "删除选中",
|
|
105
|
+
zoomOut: "缩小",
|
|
106
|
+
zoomIn: "放大",
|
|
107
|
+
switchToLight: "切换到浅色",
|
|
108
|
+
switchToDark: "切换到深色",
|
|
109
|
+
fontSmall: "字体:小",
|
|
110
|
+
fontMedium: "字体:中",
|
|
111
|
+
fontLarge: "字体:大",
|
|
112
|
+
productName: "产物名称",
|
|
113
|
+
productNamePlaceholder: "请输入当前构建产物名称",
|
|
114
|
+
uploadTitleIcon: "上传 title 图标",
|
|
115
|
+
clearTitleIcon: "清除 title 图标",
|
|
116
|
+
viewTitleIcon: "查看 title 图标大图",
|
|
117
|
+
viewTitleIconHint: "点击查看 title 图标大图",
|
|
118
|
+
titleIconThumbAlt: "title 图标缩略图",
|
|
119
|
+
titleIconPreviewAlt: "title 图标大图预览",
|
|
120
|
+
titleIconPreviewTitle: "Title 图标预览",
|
|
121
|
+
titleIconPreviewDesc: "用于预览页标签页 icon 的当前图片",
|
|
122
|
+
undoShortcut: "撤销(Cmd/Ctrl + Z)",
|
|
123
|
+
redoShortcut: "重做(Cmd/Ctrl + Shift + Z)",
|
|
124
|
+
nodeZOrderAria: "节点层级操作",
|
|
125
|
+
showBlueprintPanel: "显示蓝图面板",
|
|
126
|
+
toggleTheme: "切换主题",
|
|
127
|
+
toggleThemeHint: "切换深色/浅色主题",
|
|
128
|
+
zoomOutCanvas: "缩小画布",
|
|
129
|
+
zoomInCanvas: "放大画布",
|
|
130
|
+
selectedCount: "已选 {count}",
|
|
131
|
+
zoom: "缩放",
|
|
132
|
+
duplicateNode: "复制节点",
|
|
133
|
+
locateSourceNode: "定位到源节点",
|
|
134
|
+
openInMappingLayer: "在映射图层打开",
|
|
135
|
+
deleteNode: "删除节点",
|
|
136
|
+
deleteSelectedNodes: "删除选中节点({count})",
|
|
137
|
+
pasteNode: "粘贴节点",
|
|
138
|
+
selectAllInLayer: "全选当前图层",
|
|
139
|
+
},
|
|
140
|
+
material: {
|
|
141
|
+
searchPlaceholder: "搜索物料(名称 / 分类)",
|
|
142
|
+
tabMaterials: "物料",
|
|
143
|
+
tabTree: "节点树",
|
|
144
|
+
searchResults: "搜索结果({count})",
|
|
145
|
+
emptyMaterialsTitle: "未匹配到物料",
|
|
146
|
+
emptyMaterialsDesc: "尝试更换关键词,或切换分类后再搜索。",
|
|
147
|
+
treeSearchPlaceholder: "搜索节点(名称 / 类型 / ID)",
|
|
148
|
+
referenceOnlyTree: "仅看引用子树",
|
|
149
|
+
emptyNodesTitle: "未匹配到节点",
|
|
150
|
+
emptyNodesDesc: "试试节点名称、类型或 ID 关键词。",
|
|
151
|
+
charts: "图表",
|
|
152
|
+
basic: "基础",
|
|
153
|
+
media: "媒体",
|
|
154
|
+
bar: "柱状图",
|
|
155
|
+
line: "折线图",
|
|
156
|
+
pie: "饼图",
|
|
157
|
+
area: "面积图",
|
|
158
|
+
scatter: "散点图",
|
|
159
|
+
radar: "雷达图",
|
|
160
|
+
gauge: "仪表盘",
|
|
161
|
+
funnel: "漏斗图",
|
|
162
|
+
text: "文本",
|
|
163
|
+
geometry: "几何",
|
|
164
|
+
grid: "网格布局",
|
|
165
|
+
image: "图片",
|
|
166
|
+
video: "视频",
|
|
167
|
+
audio: "音频",
|
|
168
|
+
reference: "引用组件",
|
|
169
|
+
table: "表格",
|
|
170
|
+
rect: "矩形",
|
|
171
|
+
mappingLayerNode: "映射图层节点",
|
|
172
|
+
mappingLayerTitle: "映射图层「{name}」",
|
|
173
|
+
mappingLayerWithBase: "映射图层「{name}」· 基准图层:{base}",
|
|
174
|
+
mappingLayer: "映射图层",
|
|
175
|
+
mappingLayerWithBaseShort: "映射图层 · 基准图层:{base}",
|
|
176
|
+
sameSource: "同源",
|
|
177
|
+
sameSourceTitle: "同源节点 {id}",
|
|
178
|
+
nodeLocked: "节点已锁定",
|
|
179
|
+
shallowCopy: "浅拷贝",
|
|
180
|
+
deepCopy: "深拷贝",
|
|
181
|
+
shallowCopyTitle: "浅拷贝引用(跟随源变化)",
|
|
182
|
+
deepCopyTitle: "深拷贝引用(冻结快照)",
|
|
183
|
+
duplicateNode: "复制节点",
|
|
184
|
+
deleteNode: "删除节点",
|
|
185
|
+
lockedNodeCannotDelete: "锁定节点不可删除",
|
|
186
|
+
circularRefStopped: "检测到循环引用,已停止向下展开",
|
|
187
|
+
circularRefSuffix: "(循环引用)",
|
|
188
|
+
emptyLayer: "空图层",
|
|
189
|
+
targetLayer: "目标图层",
|
|
190
|
+
willMoveToLayer: "将移动到该图层",
|
|
191
|
+
cannotMoveToLayer: "不可移动到该图层",
|
|
192
|
+
dragToLayer: "拖拽节点到该图层",
|
|
193
|
+
dragToThisLayer: "拖拽节点到此图层",
|
|
194
|
+
releaseToMove: "释放以移动到该图层",
|
|
195
|
+
referenceComponent: "引用组件",
|
|
196
|
+
},
|
|
197
|
+
config: {
|
|
198
|
+
panelTitle: "配置面板",
|
|
199
|
+
expandSearch: "展开搜索",
|
|
200
|
+
collapseSearch: "收起搜索",
|
|
201
|
+
searchPlaceholder: "搜索配置,如:边框、tooltip、音频、网格...",
|
|
202
|
+
searching: "搜索中:{query}",
|
|
203
|
+
emptyNoNodeTitle: "暂无可配置节点",
|
|
204
|
+
emptyNoNodeDesc: "请先在画布中选中一个节点,再到这里进行配置。",
|
|
205
|
+
noMatch: "未找到匹配项,请尝试更换关键词。",
|
|
206
|
+
notChartType: "当前节点不是图表类型,暂无图表配置项。",
|
|
207
|
+
uploadWrittenBase64: "已写入 base64",
|
|
208
|
+
uploadServerAndBase64: "已上传服务器并写入 base64",
|
|
209
|
+
uploadServerFailedKeepBase64: "服务器上传失败,仅保留 base64",
|
|
210
|
+
lockNode: "锁定节点(禁止层级/位置/大小/旋转)",
|
|
211
|
+
batchTitle: "批量设置",
|
|
212
|
+
batchTitleWithCount: "批量设置({count} 个)",
|
|
213
|
+
lockAll: "全部锁定",
|
|
214
|
+
unlockAll: "全部解锁",
|
|
215
|
+
bringAllForward: "全部上移一层",
|
|
216
|
+
sendAllBackward: "全部下移一层",
|
|
217
|
+
setAllZIndex1: "全部 zIndex 设为 1",
|
|
218
|
+
setAllBgBlue: "全部背景色设为蓝色",
|
|
219
|
+
expandNodeConfig: "展开节点配置",
|
|
220
|
+
collapseNodeConfig: "收起节点配置",
|
|
221
|
+
removeFromSelection: "剔除",
|
|
222
|
+
removeFromSelectionTitle: "将该节点从当前多选中剔除",
|
|
223
|
+
lockedNode: "锁定节点",
|
|
224
|
+
lockedNodeHint: "当前节点已锁定,仅可操作锁定开关。",
|
|
225
|
+
noEditableMatch: "未匹配到可编辑节点,请更换关键词。",
|
|
226
|
+
nodeLabel: "{name} · {id}",
|
|
227
|
+
sectionNodeInfo: "节点信息",
|
|
228
|
+
sectionStyleBackground: "通用样式 / 背景",
|
|
229
|
+
sectionStyleBorder: "通用样式 / 边框",
|
|
230
|
+
sectionChartBasic: "图表配置 / 基础",
|
|
231
|
+
sectionChartAdvanced: "图表配置 / 高级",
|
|
232
|
+
sectionText: "文本配置",
|
|
233
|
+
sectionTable: "表格配置",
|
|
234
|
+
sectionAudio: "音频配置",
|
|
235
|
+
sectionVideo: "视频配置",
|
|
236
|
+
sectionImage: "图片配置",
|
|
237
|
+
sectionGeometry: "几何配置",
|
|
238
|
+
sectionGrid: "网格布局配置",
|
|
239
|
+
sectionGridChildSpan: "网格子节点占位",
|
|
240
|
+
sectionReference: "引用组件配置",
|
|
241
|
+
groupBgFill: "背景填充",
|
|
242
|
+
groupBgLayout: "背景布局",
|
|
243
|
+
groupBorderGeometry: "边框几何",
|
|
244
|
+
groupBorderVisual: "边框视觉",
|
|
245
|
+
groupBasicDisplay: "基础显示",
|
|
246
|
+
groupTooltip: "提示框 Tooltip",
|
|
247
|
+
groupData: "数据",
|
|
248
|
+
groupAxes: "坐标轴",
|
|
249
|
+
groupSeries: "系列",
|
|
250
|
+
groupCommonForm: "常用项(表单)",
|
|
251
|
+
groupLayoutAndCoord: "布局与坐标",
|
|
252
|
+
groupHighFreq: "高频项",
|
|
253
|
+
groupAxisPointer: "轴指示器与对齐",
|
|
254
|
+
groupJsonAdvanced: "JSON 高级模式",
|
|
255
|
+
groupTextContent: "文本内容",
|
|
256
|
+
groupTextStyle: "文字样式",
|
|
257
|
+
groupInputAbility: "输入能力",
|
|
258
|
+
groupAudioSource: "音频来源",
|
|
259
|
+
groupDisplayStyle: "展示样式",
|
|
260
|
+
groupVideoSource: "视频来源",
|
|
261
|
+
groupImageSource: "图片来源",
|
|
262
|
+
groupDisplayMode: "显示方式",
|
|
263
|
+
groupBasicShape: "基础形状",
|
|
264
|
+
groupCanvasScript: "高级(Canvas 脚本)",
|
|
265
|
+
groupSketchOverlay: "手绘叠加",
|
|
266
|
+
groupGridParams: "网格参数",
|
|
267
|
+
groupCrossSlots: "跨槽位",
|
|
268
|
+
groupRefSource: "引用源",
|
|
269
|
+
groupCopyStrategy: "拷贝策略",
|
|
270
|
+
name: "名称",
|
|
271
|
+
nodeName: "节点名称",
|
|
272
|
+
nodeNamePlaceholder: "自定义节点名称(显示在节点树)",
|
|
273
|
+
type: "类型",
|
|
274
|
+
layer: "图层",
|
|
275
|
+
selectLayer: "选择图层",
|
|
276
|
+
pleaseSelectLayer: "请选择图层",
|
|
277
|
+
rotate: "旋转角度",
|
|
278
|
+
width: "宽",
|
|
279
|
+
height: "高",
|
|
280
|
+
nodeZOrder: "节点层级",
|
|
281
|
+
currentZIndex: "当前 zIndex:{value}",
|
|
282
|
+
backgroundColor: "背景色",
|
|
283
|
+
backgroundImage: "背景图",
|
|
284
|
+
backgroundImageUrl: "背景图 / URL",
|
|
285
|
+
uploadImage: "上传图片",
|
|
286
|
+
backgroundSize: "背景尺寸",
|
|
287
|
+
backgroundPosition: "背景位置",
|
|
288
|
+
selectBackgroundSize: "选择背景尺寸",
|
|
289
|
+
selectBackgroundPosition: "选择背景位置",
|
|
290
|
+
borderWidth: "边框宽度(px)",
|
|
291
|
+
borderRadius: "边框圆角(px)",
|
|
292
|
+
borderStyle: "边框样式",
|
|
293
|
+
selectBorderStyle: "请选择边框样式",
|
|
294
|
+
borderColor: "边框颜色",
|
|
295
|
+
borderColorShort: "边框色",
|
|
296
|
+
chartTitle: "图表标题",
|
|
297
|
+
title: "标题",
|
|
298
|
+
primaryColor: "主色",
|
|
299
|
+
primaryGradient: "主色渐变",
|
|
300
|
+
usePrimaryGradient: "主色使用渐变",
|
|
301
|
+
gradientFrom: "渐变起始色",
|
|
302
|
+
gradientTo: "渐变结束色",
|
|
303
|
+
gradientDirection: "渐变方向",
|
|
304
|
+
selectGradientDirection: "请选择渐变方向",
|
|
305
|
+
gradientPreview: "渐变预览",
|
|
306
|
+
dirToRight: "左 → 右",
|
|
307
|
+
dirToBottom: "上 → 下",
|
|
308
|
+
dirToBottomRight: "左上 → 右下",
|
|
309
|
+
dirToTopRight: "左下 → 右上",
|
|
310
|
+
renderMode: "显示模式",
|
|
311
|
+
render: "渲染",
|
|
312
|
+
selectRenderMode: "请选择显示模式",
|
|
313
|
+
showTooltip: "显示 Tooltip",
|
|
314
|
+
tooltipTrigger: "Tooltip 触发方式",
|
|
315
|
+
selectTooltipTrigger: "请选择触发方式",
|
|
316
|
+
tooltipBg: "Tooltip 背景",
|
|
317
|
+
tooltipBgColor: "Tooltip 背景色",
|
|
318
|
+
tooltipTextColor: "Tooltip 文字色",
|
|
319
|
+
tooltipFormatter: "Tooltip Formatter(可选)",
|
|
320
|
+
tooltipFormatterPlaceholder: "例如:{b}: {c}",
|
|
321
|
+
formatterPlaceholdersTitle: "可用占位符",
|
|
322
|
+
formatterPlaceholders: "{a}=系列名, {b}=类目名, {c}=数值, {d}=百分比(饼图)",
|
|
323
|
+
formatterExamplesTitle: "常用模板 + 输出示例",
|
|
324
|
+
formatterExample1: "1) {b}: {c} -> 周一: 120",
|
|
325
|
+
formatterExample2: "2) {a}<br/>{b}: {c} -> 销量<br/>周一: 120",
|
|
326
|
+
formatterExample3: "3) {b}: {c} ({d}%) -> 访问来源: 335 (42%)",
|
|
327
|
+
formatterExample4: "4) ¥{c} / {b} -> ¥120 / 周一",
|
|
328
|
+
labelsCsv: "类目(逗号分隔)",
|
|
329
|
+
valuesCsv: "数值(逗号分隔)",
|
|
330
|
+
xAxisName: "X 轴名称",
|
|
331
|
+
yAxisName: "Y 轴名称",
|
|
332
|
+
xAxisNamePlaceholder: "例如:日期 / 类目",
|
|
333
|
+
yAxisNamePlaceholder: "例如:销量 / 数值",
|
|
334
|
+
xAxisTick: "X 轴刻度线",
|
|
335
|
+
yAxisTick: "Y 轴刻度线",
|
|
336
|
+
xAxisTickColor: "X 轴刻度线颜色",
|
|
337
|
+
yAxisTickColor: "Y 轴刻度线颜色",
|
|
338
|
+
xAxisSplitLine: "X 轴分割线",
|
|
339
|
+
yAxisSplitLine: "Y 轴分割线",
|
|
340
|
+
xAxisSplitLineColor: "X 轴分割线颜色",
|
|
341
|
+
yAxisSplitLineColor: "Y 轴分割线颜色",
|
|
342
|
+
xAxisLabelColor: "X 轴标签颜色",
|
|
343
|
+
yAxisLabelColor: "Y 轴标签颜色",
|
|
344
|
+
xAxisLabelFontSize: "X 轴标签字号",
|
|
345
|
+
yAxisLabelFontSize: "Y 轴标签字号",
|
|
346
|
+
xAxisLabelAutoEllipsis: "X 轴标签自动缩略",
|
|
347
|
+
yAxisLabelAutoEllipsis: "Y 轴标签自动缩略",
|
|
348
|
+
gaugeValue: "仪表盘值",
|
|
349
|
+
barWidth: "柱宽",
|
|
350
|
+
barWidthPx: "柱宽(px)",
|
|
351
|
+
smooth: "平滑曲线",
|
|
352
|
+
pieInnerRadius: "内半径",
|
|
353
|
+
pieInnerRadiusPct: "内半径(%)",
|
|
354
|
+
pieOuterRadius: "外半径",
|
|
355
|
+
pieOuterRadiusPct: "外半径(%)",
|
|
356
|
+
gridLeft: "网格左边距",
|
|
357
|
+
gridRight: "网格右边距",
|
|
358
|
+
gridTop: "网格上边距",
|
|
359
|
+
gridBottom: "网格下边距",
|
|
360
|
+
gridLeftHint: "控制绘图区左侧留白。",
|
|
361
|
+
gridRightHint: "控制绘图区右侧留白。",
|
|
362
|
+
gridTopHint: "控制绘图区顶部留白。",
|
|
363
|
+
gridBottomHint: "控制绘图区底部留白。",
|
|
364
|
+
gridLeftForm: "网格左距(grid.left)",
|
|
365
|
+
gridRightForm: "网格右距(grid.right)",
|
|
366
|
+
gridTopForm: "网格上距(grid.top)",
|
|
367
|
+
gridBottomForm: "网格下距(grid.bottom)",
|
|
368
|
+
legendPosition: "图例位置",
|
|
369
|
+
legendPositionForm: "图例位置(legend.top)",
|
|
370
|
+
legendOrient: "图例排列",
|
|
371
|
+
legendOrientForm: "图例排列(legend.orient)",
|
|
372
|
+
legendPositionHint: "设置图例在容器中的停靠位置。",
|
|
373
|
+
legendOrientHint: "图例横向或纵向排列。",
|
|
374
|
+
selectLegendPosition: "选择图例位置",
|
|
375
|
+
selectLegendOrient: "选择图例排列",
|
|
376
|
+
legendTop: "顶部",
|
|
377
|
+
legendBottom: "底部",
|
|
378
|
+
legendLeft: "左侧",
|
|
379
|
+
legendRight: "右侧",
|
|
380
|
+
legendHorizontal: "横向",
|
|
381
|
+
legendVertical: "纵向",
|
|
382
|
+
xAxisMin: "X 轴最小值",
|
|
383
|
+
xAxisMax: "X 轴最大值",
|
|
384
|
+
yAxisMin: "Y 轴最小值",
|
|
385
|
+
yAxisMax: "Y 轴最大值",
|
|
386
|
+
xAxisMinHint: "设置横轴最小值,留空可在 JSON 里删除。",
|
|
387
|
+
xAxisMaxHint: "设置横轴最大值,留空可在 JSON 里删除。",
|
|
388
|
+
yAxisMinHint: "设置纵轴最小值,留空可在 JSON 里删除。",
|
|
389
|
+
yAxisMaxHint: "设置纵轴最大值,留空可在 JSON 里删除。",
|
|
390
|
+
xAxisLabelRotate: "X 轴标签旋转",
|
|
391
|
+
yAxisLabelRotate: "Y 轴标签旋转",
|
|
392
|
+
rotateUnitHint: "单位为度。",
|
|
393
|
+
showLegend: "显示图例",
|
|
394
|
+
showLegendWithKey: "显示图例(legend.show)",
|
|
395
|
+
showLegendHint: "控制图例显隐。",
|
|
396
|
+
gridContainLabel: "网格包含标签",
|
|
397
|
+
gridContainLabelHint: "自动为坐标轴标签预留空间。",
|
|
398
|
+
zoomInside: "内置缩放",
|
|
399
|
+
zoomInsideWithKey: "内置缩放(dataZoom[type=inside])",
|
|
400
|
+
zoomInsideHint: "启用鼠标滚轮/手势缩放。",
|
|
401
|
+
zoomSlider: "滑块缩放",
|
|
402
|
+
zoomSliderWithKey: "滑块缩放(dataZoom[type=slider])",
|
|
403
|
+
zoomSliderHint: "显示底部拖拽缩放条。",
|
|
404
|
+
enableAnimation: "开启动画",
|
|
405
|
+
enableAnimationHint: "开启后切换数据时有过渡动效。",
|
|
406
|
+
animationDuration: "动画时长",
|
|
407
|
+
animationDurationMs: "动画时长(ms)",
|
|
408
|
+
animationDurationHint: "动画持续时间,单位毫秒。",
|
|
409
|
+
showAxisPointer: "显示轴指示器",
|
|
410
|
+
showAxisPointerWithKey: "显示轴指示器(axisPointer.show)",
|
|
411
|
+
showAxisPointerHint: "悬停时显示轴对齐提示。",
|
|
412
|
+
axisPointerType: "轴指示器类型",
|
|
413
|
+
axisPointerTypeWithKey: "轴指示器类型(axisPointer.type)",
|
|
414
|
+
axisPointerTypeHint: "设置指示器样式:线/阴影/十字。",
|
|
415
|
+
selectAxisPointerType: "选择轴指示器类型",
|
|
416
|
+
axisPointerLine: "线",
|
|
417
|
+
axisPointerShadow: "阴影",
|
|
418
|
+
axisPointerCross: "十字",
|
|
419
|
+
axisPointerSnap: "轴指示器吸附",
|
|
420
|
+
axisPointerSnapHint: "指示器吸附到最近数据点。",
|
|
421
|
+
advancedOptionJson: "高级 option JSON(覆盖基础配置)",
|
|
422
|
+
enableAdvancedJson: "开启高级模式(直接编辑图表 JSON 配置)",
|
|
423
|
+
advancedJsonHintLabel: "图表 JSON 高级模式",
|
|
424
|
+
advancedJsonHint: "基础配置会先生成图表配置,高级模式会在此基础上覆盖(深度合并)。",
|
|
425
|
+
advancedJsonPlaceholder: '例如:{"grid":{"left":24}}',
|
|
426
|
+
geometryScriptPlaceholder:
|
|
427
|
+
"// 例: ctx.fillStyle = 'rgba(255,255,255,0.25)'; ctx.fillRect(8,8,width-16,height-16);",
|
|
428
|
+
jsonInvalid: "JSON 格式错误,修正后会自动应用",
|
|
429
|
+
jsonValidApplied: "JSON 有效,已实时应用到当前图表。",
|
|
430
|
+
expandLayoutCoord: "展开布局与坐标",
|
|
431
|
+
collapseLayoutCoord: "收起布局与坐标",
|
|
432
|
+
expandHighFreq: "展开高频项",
|
|
433
|
+
collapseHighFreq: "收起高频项",
|
|
434
|
+
expandAxisPointer: "展开轴指示器项",
|
|
435
|
+
collapseAxisPointer: "收起轴指示器项",
|
|
436
|
+
textHtml: "文本内容(HTML)",
|
|
437
|
+
fontFamily: "字体",
|
|
438
|
+
fontFamilyPlaceholder: "如:Inter, PingFang SC, Microsoft YaHei",
|
|
439
|
+
fontSize: "字体大小",
|
|
440
|
+
fontSizePx: "字号(px)",
|
|
441
|
+
fontWeight: "字重",
|
|
442
|
+
selectFontWeight: "选择字重",
|
|
443
|
+
textAlign: "对齐",
|
|
444
|
+
selectTextAlign: "选择对齐方式",
|
|
445
|
+
alignLeft: "左对齐",
|
|
446
|
+
alignCenter: "居中",
|
|
447
|
+
alignRight: "右对齐",
|
|
448
|
+
alignJustify: "两端对齐",
|
|
449
|
+
lineHeight: "行高",
|
|
450
|
+
textColor: "文字颜色",
|
|
451
|
+
allowCanvasInput: "允许在画布内直接输入(默认开启)",
|
|
452
|
+
audioUrl: "音频 URL",
|
|
453
|
+
uploadAudio: "上传音频",
|
|
454
|
+
startRecord: "开始录音",
|
|
455
|
+
stopRecord: "停止录音",
|
|
456
|
+
autoPauseMedia: "编辑时自动暂停媒体",
|
|
457
|
+
audioIconPreset: "预设喇叭图标",
|
|
458
|
+
selectIcon: "选择图标",
|
|
459
|
+
iconDefaultProgress: "默认(显示进度条)",
|
|
460
|
+
iconSpeaker: "喇叭",
|
|
461
|
+
iconMusic: "音符",
|
|
462
|
+
iconHeadphone: "耳机",
|
|
463
|
+
iconWave: "声波",
|
|
464
|
+
visualEffect: "播放动效",
|
|
465
|
+
effect: "动效",
|
|
466
|
+
selectEffect: "选择动效",
|
|
467
|
+
effectNone: "无动效",
|
|
468
|
+
effectPulse: "呼吸高亮",
|
|
469
|
+
effectRipple: "波纹扩散",
|
|
470
|
+
effectSpeed: "动效速度",
|
|
471
|
+
speed: "速度",
|
|
472
|
+
selectSpeed: "选择速度",
|
|
473
|
+
speedSlow: "慢",
|
|
474
|
+
speedNormal: "中",
|
|
475
|
+
speedFast: "快",
|
|
476
|
+
uploadPoster: "上传占位图",
|
|
477
|
+
clearPoster: "清空占位图",
|
|
478
|
+
audioPoster: "音频占位图",
|
|
479
|
+
audioPosterAlt: "音频占位图预览",
|
|
480
|
+
audioPosterHint: "设置占位图或图标后,节点上将隐藏进度条,改为点击图标播放/暂停。",
|
|
481
|
+
videoUrl: "视频 URL",
|
|
482
|
+
uploadVideo: "上传视频",
|
|
483
|
+
imageUrlCss: "图片 URL / CSS",
|
|
484
|
+
imageUrlHintLabel: "图片地址",
|
|
485
|
+
imageUrlHint: "可填写远程 URL 或 url(\"data:...\") 形式;上传后会自动写入 base64。",
|
|
486
|
+
objectFit: "适应方式",
|
|
487
|
+
objectFitFull: "适应方式(object-fit / background-size)",
|
|
488
|
+
fitCover: "cover(裁剪铺满)",
|
|
489
|
+
fitContain: "contain(完整显示)",
|
|
490
|
+
fitFill: "fill(拉伸填满)",
|
|
491
|
+
alignPosition: "对齐位置",
|
|
492
|
+
shape: "形状",
|
|
493
|
+
selectShape: "选择形状",
|
|
494
|
+
shapeRect: "矩形",
|
|
495
|
+
shapeCircle: "圆形",
|
|
496
|
+
shapeTriangle: "三角形",
|
|
497
|
+
shapeDiamond: "菱形",
|
|
498
|
+
shapeHexagon: "六边形",
|
|
499
|
+
shapeStar: "星形",
|
|
500
|
+
shapeHeart: "爱心",
|
|
501
|
+
color: "颜色",
|
|
502
|
+
geometryColor: "几何颜色",
|
|
503
|
+
canvasScriptHint: "可输入 Canvas 绘制逻辑,变量:ctx、width、height、element。脚本异常会被安全忽略。",
|
|
504
|
+
penColor: "画笔颜色",
|
|
505
|
+
penWidth: "画笔粗细",
|
|
506
|
+
applySketch: "应用手绘到节点",
|
|
507
|
+
clearSketch: "清空手绘",
|
|
508
|
+
rows: "行",
|
|
509
|
+
cols: "列",
|
|
510
|
+
rowCount: "行数",
|
|
511
|
+
colCount: "列数",
|
|
512
|
+
gapPx: "间距(px)",
|
|
513
|
+
paddingPx: "内边距(px)",
|
|
514
|
+
snapThresholdPx: "吸附阈值(px)",
|
|
515
|
+
gridHint: "其他节点拖拽靠近该网格槽位中心时会自动吸附,并在节点树显示为该网格子节点。",
|
|
516
|
+
colSpan: "跨列(colSpan)",
|
|
517
|
+
rowSpan: "跨行(rowSpan)",
|
|
518
|
+
gridChildHint: "网格子节点可跨越多格,占据更大区域,便于复杂布局。",
|
|
519
|
+
refLayer: "引用图层",
|
|
520
|
+
noneNoRef: "无(不引用)",
|
|
521
|
+
copyMode: "拷贝模式",
|
|
522
|
+
copy: "拷贝",
|
|
523
|
+
selectCopyMode: "请选择拷贝模式",
|
|
524
|
+
shallowFollow: "浅拷贝(跟随源图层变化)",
|
|
525
|
+
deepFreeze: "深拷贝(冻结当前引用快照)",
|
|
526
|
+
copyStrategyHint: "浅拷贝会实时同步被引用图层;深拷贝会固定当前快照,不再随源变化。",
|
|
527
|
+
doubleClickText: "双击输入文本",
|
|
528
|
+
slotOccupied: "槽位 {n}(已占用)",
|
|
529
|
+
slotEmpty: "槽位 {n}(空)",
|
|
530
|
+
configureAudioFirst: "请先配置音频源",
|
|
531
|
+
clickPause: "点击暂停",
|
|
532
|
+
clickPlay: "点击播放",
|
|
533
|
+
audioNotConfigured: "未配置音频",
|
|
534
|
+
pause: "暂停",
|
|
535
|
+
play: "播放",
|
|
536
|
+
audioPlaceholder: "音频占位",
|
|
537
|
+
audioPlaying: "音频播放中",
|
|
538
|
+
audioReady: "音频已就绪",
|
|
539
|
+
videoPlaceholder: "视频占位",
|
|
540
|
+
imagePlaceholder: "图片占位",
|
|
541
|
+
materialPlaceholder: "{type} 占位",
|
|
542
|
+
refLayerEmpty: "引用图层暂无节点",
|
|
543
|
+
selectRefLayer: "请在右侧选择引用图层",
|
|
544
|
+
nodeLockedBadge: "已锁定",
|
|
545
|
+
nodeLockedTitle: "节点已锁定",
|
|
546
|
+
lockedExcludedBadge: "锁定节点已排除",
|
|
547
|
+
lockedExcludedTitle: "部分节点已锁定,已自动排除",
|
|
548
|
+
searchKwLayout: "布局",
|
|
549
|
+
searchKwBorder: "边框",
|
|
550
|
+
searchKwWidth: "宽度",
|
|
551
|
+
searchKwRadius: "圆角",
|
|
552
|
+
searchKwStyle: "样式",
|
|
553
|
+
searchKwXAxis: "x轴",
|
|
554
|
+
searchKwYAxis: "y轴",
|
|
555
|
+
searchKwTick: "刻度线",
|
|
556
|
+
searchKwSplit: "分割线",
|
|
557
|
+
searchKwAdvanced: "高级",
|
|
558
|
+
searchKwRichText: "富文本",
|
|
559
|
+
searchKwAutoPause: "自动暂停",
|
|
560
|
+
searchKwGrid: "网格",
|
|
561
|
+
searchKwColor: "颜色",
|
|
562
|
+
searchKwAlign: "对齐",
|
|
563
|
+
searchKwLineHeight: "行高",
|
|
564
|
+
searchKwInput: "输入",
|
|
565
|
+
searchKwRecord: "录音",
|
|
566
|
+
searchKwPoster: "占位",
|
|
567
|
+
searchKwChart: "图表",
|
|
568
|
+
searchKwCrossCol: "跨列",
|
|
569
|
+
searchKwCrossRow: "跨行",
|
|
570
|
+
searchKwGap: "间距",
|
|
571
|
+
searchKwPadding: "内边距",
|
|
572
|
+
searchKwSnap: "吸附",
|
|
573
|
+
searchKwThreshold: "阈值",
|
|
574
|
+
searchKwFont: "字体",
|
|
575
|
+
searchKwUpload: "上传",
|
|
576
|
+
searchKwPreview: "预览",
|
|
577
|
+
searchKwScript: "脚本",
|
|
578
|
+
searchKwSketch: "手绘",
|
|
579
|
+
searchKwRef: "引用",
|
|
580
|
+
rowsShort: "行",
|
|
581
|
+
colsShort: "列",
|
|
582
|
+
groupTableData: "1. 数据源",
|
|
583
|
+
groupTableAppearance: "3. 外观",
|
|
584
|
+
groupTableColumnDetail: "列详情 · {name}",
|
|
585
|
+
groupTableDataHint:
|
|
586
|
+
"优先用蓝图 Scope 绑定数据;也可粘贴静态 JSON。动态有数据时用动态,动态为空则回退静态;都没有则显示暂无数据。",
|
|
587
|
+
groupTableAppearanceHint: "控制表头、斑马纹、行高与基础颜色。",
|
|
588
|
+
groupTableColumns: "2. 列(顺序与宽度)",
|
|
589
|
+
groupTableColumnsHint:
|
|
590
|
+
"用上下箭头调整列顺序;右侧改列宽。点选一列后在下方编辑字段与展示方式。",
|
|
591
|
+
tableMoveColumnUp: "上移",
|
|
592
|
+
tableMoveColumnDown: "下移",
|
|
593
|
+
tableAdvancedData: "高级数据选项",
|
|
594
|
+
tableAdvancedDataHint: "数据格式、列表路径、行唯一字段等,一般可保持默认。",
|
|
595
|
+
tableSource: "Scope 数据绑定",
|
|
596
|
+
tableSourceHint:
|
|
597
|
+
"填写模版表达式,从蓝图输出取值。例如 {scope?.list} 或 {scope?.data?.rows};有有效数据时优先于下方静态行数据。",
|
|
598
|
+
tableRowsText: "静态行数据(JSON)",
|
|
599
|
+
tableRowsTextHint:
|
|
600
|
+
"新建表格的默认示例数据写在这里。未绑定 Scope,或 Scope 无数据/解析失败时使用。",
|
|
601
|
+
tableRowsEdit: "编辑 JSON",
|
|
602
|
+
tableRowsMock: "生成 Mock 数据",
|
|
603
|
+
tableRowsEditTitle: "编辑静态行数据",
|
|
604
|
+
tableRowsEditDesc: "输入 JSON 数组,保存前自动校验格式。",
|
|
605
|
+
tableRowsEditEditorHint: "Tab 缩进 · 支持折叠",
|
|
606
|
+
tableRowsEditFormat: "格式化",
|
|
607
|
+
tableRowsEditNeedArray: "请输入 JSON 数组,例如 [{...}]", tableRowsEditInvalidJson: "JSON 格式不正确,请检查后重试",
|
|
608
|
+
tableRowsMockTitle: "生成 Mock 假数据",
|
|
609
|
+
tableRowsMockDesc:
|
|
610
|
+
"按当前列配置智能生成字段值(姓名/状态/分数/邮箱等)。可设置条数、前缀、状态枚举、分数区间等。",
|
|
611
|
+
tableMockRowCount: "生成条数",
|
|
612
|
+
tableMockLocale: "语言风格",
|
|
613
|
+
tableMockLocaleZh: "中文",
|
|
614
|
+
tableMockLocaleEn: "英文",
|
|
615
|
+
tableMockNamePrefix: "名称前缀",
|
|
616
|
+
tableMockSeed: "随机种子(可空)",
|
|
617
|
+
tableMockStatusValues: "状态枚举(逗号分隔)",
|
|
618
|
+
tableMockScoreMin: "分数最小值",
|
|
619
|
+
tableMockScoreMax: "分数最大值",
|
|
620
|
+
tableMockIncludeId: "包含 id",
|
|
621
|
+
tableMockIncludeTimestamp: "包含 createdAt",
|
|
622
|
+
tableMockIncludeExtras: "附加邮箱/手机/城市等",
|
|
623
|
+
tableMockGenerate: "生成并写入",
|
|
624
|
+
tableTransformMode: "数据格式",
|
|
625
|
+
tableTransformModeHint:
|
|
626
|
+
"自动:智能识别;记录数组:[{字段:值}];矩阵:二维数组;路径:从嵌套对象里按路径取出列表。",
|
|
627
|
+
tableTransformPath: "列表所在路径",
|
|
628
|
+
tableTransformPathHint: "当数据包在对象里时填写,例如 data.list 表示取 raw.data.list。",
|
|
629
|
+
tableRowIdField: "行唯一字段",
|
|
630
|
+
tableRowIdFieldHint: "用于稳定行标识(虚拟滚动)。留空则自动生成。",
|
|
631
|
+
tableShowHeader: "显示表头",
|
|
632
|
+
tableStripe: "斑马纹",
|
|
633
|
+
tableStripeHint: "奇偶行交替背景,便于阅读长表。",
|
|
634
|
+
tableRowHeight: "行高(px)",
|
|
635
|
+
tableRowHeightHint: "虚拟滚动按此高度估算;建议 28–48。",
|
|
636
|
+
tableStyleColor: "表格文字色",
|
|
637
|
+
tableStyleFontSize: "表格字号",
|
|
638
|
+
tableHeaderBg: "表头背景色",
|
|
639
|
+
tableHeaderFontSize: "表头字号",
|
|
640
|
+
tableColumns: "列配置",
|
|
641
|
+
tableColumnsHint: "定义展示哪些字段、表头文案、宽度,以及单元格用文本/标签等哪种展示方式。",
|
|
642
|
+
tableColumnField: "数据字段名",
|
|
643
|
+
tableColumnFieldHint: "对应每行数据里的属性名,例如 name、status。",
|
|
644
|
+
tableColumnTitle: "表头显示名",
|
|
645
|
+
tableColumnTitleHint: "显示在表头的标题,可与字段名不同。",
|
|
646
|
+
tableColumnWidth: "列宽(px)",
|
|
647
|
+
tableColumnWidget: "单元格展示方式",
|
|
648
|
+
tableColumnWidgetHint:
|
|
649
|
+
"文本:普通文字;标签/徽章:彩色标记;链接:可点击;进度条:数值占比;图片/布尔:对应形态。",
|
|
650
|
+
tableDisplayTemplate: "显示模版",
|
|
651
|
+
tableDisplayTemplateHint:
|
|
652
|
+
"在「显示值映射」之后执行。{current}/{value} 为映射后的值,也可用 {row.字段名}。例如映射后是 10、模版写 {current}分 → 显示 10分。留空则直接显示映射结果。",
|
|
653
|
+
tableTooltipEnabled: "启用 Tooltip",
|
|
654
|
+
tableTooltipEnabledHint: "开启后悬停单元格显示提示;可单独设置方位与模版。",
|
|
655
|
+
tableTooltipPlacementLabel: "Tooltip 方位",
|
|
656
|
+
tableTooltipPlacement: {
|
|
657
|
+
top: "上方",
|
|
658
|
+
right: "右侧",
|
|
659
|
+
bottom: "下方",
|
|
660
|
+
left: "左侧",
|
|
661
|
+
},
|
|
662
|
+
tableTooltipTemplate: "Tooltip 模版",
|
|
663
|
+
tableTooltipTemplateHint:
|
|
664
|
+
"与显示模版相同占位符(基于映射后的值);留空则使用单元格最终显示文案。",
|
|
665
|
+
tableWidgetProps: "组件参数",
|
|
666
|
+
tableWidgetPropsHint: "按展示方式配置链接地址、图片来源、进度最大值等。",
|
|
667
|
+
tableImageUrlMode: "图片地址来源",
|
|
668
|
+
tableImageUrlModeHint:
|
|
669
|
+
"列字段:用行里的字段当 URL;固定地址:粘贴/上传/Scope 模版;前缀拼接:CDN 前缀 + 字段;模版:用 {value}/{row.xxx} 拼出完整地址。",
|
|
670
|
+
tableImageUrlModeField: "行字段(URL)",
|
|
671
|
+
tableImageUrlModeStatic: "固定地址 / 上传 / Scope",
|
|
672
|
+
tableImageUrlModePrefix: "前缀 + 字段 + 后缀",
|
|
673
|
+
tableImageUrlModeTemplate: "地址模版",
|
|
674
|
+
tableImageUrl: "图片地址",
|
|
675
|
+
tableImageUrlHint:
|
|
676
|
+
"可填 https://…、data:…,或 Scope 模版如 {scope?.cdnAvatar};也可下方上传写入。",
|
|
677
|
+
tableImageUrlField: "URL 字段名",
|
|
678
|
+
tableImageUrlFieldHint: "行数据里存放图片路径/地址的字段,默认用当前列字段。",
|
|
679
|
+
tableImageUrlPrefix: "URL 前缀",
|
|
680
|
+
tableImageUrlPrefixHint: "如 https://cdn.example.com/ 或 {scope?.cdn}/,再拼字段值。",
|
|
681
|
+
tableImageUrlSuffix: "URL 后缀",
|
|
682
|
+
tableImageUrlSuffixHint: "可选,如 .png 或查询串。",
|
|
683
|
+
tableImageUrlTemplate: "地址模版",
|
|
684
|
+
tableImageUrlTemplateHint: "例如 https://cdn/{row.id}.png 或 {value};支持 {value}、{row.字段名}。",
|
|
685
|
+
tableImageUpload: "上传图片",
|
|
686
|
+
tableImageWidth: "缩略图宽",
|
|
687
|
+
tableImageHeight: "缩略图高",
|
|
688
|
+
tableImageObjectFit: "填充方式",
|
|
689
|
+
tableImageFitCover: "裁剪填充",
|
|
690
|
+
tableImageFitContain: "完整显示",
|
|
691
|
+
tableImageFitFill: "拉伸",
|
|
692
|
+
tableTagColor: "标签颜色",
|
|
693
|
+
tableTagColorHint: "未命中色值映射时的默认颜色。",
|
|
694
|
+
tableColorMap: "按值着色(无需条件)",
|
|
695
|
+
tableColorMapHint: "当单元格显示值或原始值等于左侧文字时,使用对应颜色。例如 ok → 绿色。",
|
|
696
|
+
tableAddColorMap: "添加色值",
|
|
697
|
+
tableColorMapValue: "匹配值",
|
|
698
|
+
tableColorMapColor: "颜色",
|
|
699
|
+
tableHrefRules: "条件链接地址",
|
|
700
|
+
tableHrefRulesHint: "按条件命中第一条规则的地址;未命中则回退到链接字段/模版/列值。支持 {value}/{row.xxx}。",
|
|
701
|
+
tableAddHrefRule: "添加链接规则",
|
|
702
|
+
tableHrefRuleItem: "链接规则 {n}",
|
|
703
|
+
tableHrefRuleHref: "链接地址",
|
|
704
|
+
tableProgressMode: "进度来源",
|
|
705
|
+
tableProgressModeHint: "字段:用行数字段;固定值:静态或 Scope;条件:按规则给出进度数字。",
|
|
706
|
+
tableProgressModeField: "行数字段",
|
|
707
|
+
tableProgressModeStatic: "固定值 / Scope",
|
|
708
|
+
tableProgressModeRules: "按条件取值",
|
|
709
|
+
tableProgressField: "进度字段",
|
|
710
|
+
tableProgressFieldHint: "存放数字的字段名,默认当前列。",
|
|
711
|
+
tableProgressStatic: "固定进度值",
|
|
712
|
+
tableProgressStaticHint: "数字,或 Scope 模版如 {scope?.pct}(解析后需为数字)。",
|
|
713
|
+
tableProgressRules: "条件进度",
|
|
714
|
+
tableAddProgressRule: "添加进度规则",
|
|
715
|
+
tableProgressRuleItem: "进度规则 {n}",
|
|
716
|
+
tableProgressRuleValue: "进度值",
|
|
717
|
+
tableActionOnClick: "点击触发蓝图节点",
|
|
718
|
+
tableActionOnTrue: "开启时触发蓝图节点",
|
|
719
|
+
tableActionOnFalse: "关闭时触发蓝图节点",
|
|
720
|
+
tableActionBlueprintHint: "从下拉选择蓝图节点,选「无」则不触发。运行时向该节点注入真信号;Logic 可从 scope.__uiEventPayload 读到行数据。",
|
|
721
|
+
tableActionBlueprintPlaceholder: "选择蓝图节点",
|
|
722
|
+
tableActionBlueprintNone: "无(不触发)",
|
|
723
|
+
tableLinkHrefField: "链接字段",
|
|
724
|
+
tableLinkHrefFieldHint: "行里存放 href 的字段;留空则用当前列值。",
|
|
725
|
+
tableLinkHrefTemplate: "链接模版",
|
|
726
|
+
tableLinkHrefTemplateHint: "如 /detail/{row.id};支持 {value}、{row.字段名}。",
|
|
727
|
+
tableLinkOpenNewTab: "新窗口打开",
|
|
728
|
+
tableProgressMax: "进度最大值",
|
|
729
|
+
tableProgressShowLabel: "显示百分比",
|
|
730
|
+
tableProgressDisplay: "进度展示样式",
|
|
731
|
+
tableProgressDisplayHint:
|
|
732
|
+
"条+文:进度条和百分比;纯进度条:只有条;只显示文本:只有百分比;圆形:环形进度。",
|
|
733
|
+
tableProgressDisplayBarLabel: "进度条 + 文本",
|
|
734
|
+
tableProgressDisplayBar: "纯进度条",
|
|
735
|
+
tableProgressDisplayLabel: "只显示文本进度",
|
|
736
|
+
tableProgressDisplayCircle: "圆形进度条",
|
|
737
|
+
tableProgressSize: "圆形直径(px)",
|
|
738
|
+
tableTextFontSize: "字号",
|
|
739
|
+
tableTextFontWeight: "粗细",
|
|
740
|
+
tableTextColor: "文字颜色",
|
|
741
|
+
tableTextFontFamily: "字体",
|
|
742
|
+
tableTextFontStyle: "字形",
|
|
743
|
+
tableTextDecoration: "装饰线",
|
|
744
|
+
tableTextWeightNormal: "常规",
|
|
745
|
+
tableTextWeightBold: "加粗",
|
|
746
|
+
tableTextStyleNormal: "正常",
|
|
747
|
+
tableTextStyleItalic: "斜体",
|
|
748
|
+
tableTextDecoNone: "无",
|
|
749
|
+
tableTextDecoUnderline: "下划线",
|
|
750
|
+
tableTextDecoLineThrough: "删除线",
|
|
751
|
+
tableBooleanTrueLabel: "真值文案",
|
|
752
|
+
tableBooleanFalseLabel: "假值文案",
|
|
753
|
+
tableBooleanYes: "是",
|
|
754
|
+
tableBooleanNo: "否",
|
|
755
|
+
tableColumnUntitled: "列 {n}",
|
|
756
|
+
tableAddColumn: "添加列",
|
|
757
|
+
tableRemoveColumn: "删除",
|
|
758
|
+
tableNoColumns: "暂无列,请添加",
|
|
759
|
+
tableValueMap: "显示值映射",
|
|
760
|
+
tableValueMapHint:
|
|
761
|
+
"先把原始值换成显示文案(可写模版:{current}/{value}/{row.字段})。例如等于 ok 时填「正常」,或填「{current}-通过」。未命中则保留原值;之后还会再套用「显示模版」。",
|
|
762
|
+
tableValueMapBooleanHint:
|
|
763
|
+
"是否列:把原始值映射为「是」或「否」。多条可同时映射到同一侧;若同一比较条件既映射为是又为否,会提示冲突。",
|
|
764
|
+
tableValueMapBooleanConflict:
|
|
765
|
+
"冲突:同一比较条件同时映射为「是」和「否」(映射 {indexes})。请只保留一侧。",
|
|
766
|
+
tableAddValueMap: "添加映射",
|
|
767
|
+
tableMapItem: "映射 {n}",
|
|
768
|
+
tableDisplayBoolean: "映射为",
|
|
769
|
+
tableDisplayBooleanHint: "条件命中后,单元格视为「是」或「否」。",
|
|
770
|
+
tableStyleRuleItem: "样式规则 {n}",
|
|
771
|
+
tableCellStyleRules: "单元格条件样式",
|
|
772
|
+
tableCellStyleRulesHint:
|
|
773
|
+
"当单元格满足条件时改背景色等。例如分数大于 80 时高亮。可指定字段,留空则用当前列字段。",
|
|
774
|
+
tableAddCellStyleRule: "添加样式规则",
|
|
775
|
+
tableRowStyleRules: "整行条件样式",
|
|
776
|
+
tableRowStyleRulesHint: "当整行满足条件时给该行上色。例如 status 等于 bad 时整行标红。",
|
|
777
|
+
tableAddRowStyleRule: "添加行样式",
|
|
778
|
+
tableNoRowStyleRules: "暂无行样式规则",
|
|
779
|
+
tableConditionOp: "当满足",
|
|
780
|
+
tableConditionOpHint: "选择比较方式,再填写右侧的比较值。",
|
|
781
|
+
tableConditionLogic: "条件逻辑",
|
|
782
|
+
tableConditionLogicAnd: "与(全部满足)",
|
|
783
|
+
tableConditionLogicOr: "或(任一满足)",
|
|
784
|
+
tableConditionLogicNot: "非(全部满足的否定)",
|
|
785
|
+
tableConditionLogicHint:
|
|
786
|
+
"默认「与」。可添加多条子条件;「非」表示对整组「与」结果取反。",
|
|
787
|
+
tableConditionAddItem: "添加子条件",
|
|
788
|
+
tableConditionItem: "子条件 {n}",
|
|
789
|
+
tableConditionField: "判断字段",
|
|
790
|
+
tableConditionFieldHint: "要比较的行字段名。单元格规则可留空,默认用当前列字段。",
|
|
791
|
+
tableConditionValue: "比较值",
|
|
792
|
+
tableConditionValueHint: "与字段值比较的目标,例如 ok、80。",
|
|
793
|
+
tableTextOverflow: "文本溢出",
|
|
794
|
+
tableTextOverflowHint: "省略:单行省略号;换行:在单元格内折行显示。",
|
|
795
|
+
tableTextOverflowEllipsis: "省略",
|
|
796
|
+
tableTextOverflowWrap: "换行",
|
|
797
|
+
tableDisplayValue: "改成显示",
|
|
798
|
+
tableDisplayValueHint:
|
|
799
|
+
"条件命中后的显示文案,支持模版:{current}/{value} 为原始值,{row.字段名} 为同行其它字段。",
|
|
800
|
+
tableBgColor: "背景色",
|
|
801
|
+
tableBgColorHint: "条件命中后应用的背景色,支持 #hex 或 rgba。",
|
|
802
|
+
tableEmpty: "暂无数据",
|
|
803
|
+
tableColName: "名称", tableColStatus: "状态",
|
|
804
|
+
tableColScore: "分数",
|
|
805
|
+
tableMode: {
|
|
806
|
+
auto: "自动识别",
|
|
807
|
+
records: "对象数组(推荐)",
|
|
808
|
+
matrix: "二维矩阵",
|
|
809
|
+
path: "按路径取值",
|
|
810
|
+
},
|
|
811
|
+
tableWidget: {
|
|
812
|
+
text: "文本",
|
|
813
|
+
tag: "彩色标签",
|
|
814
|
+
badge: "圆点徽章",
|
|
815
|
+
link: "链接",
|
|
816
|
+
progress: "进度条",
|
|
817
|
+
image: "图片",
|
|
818
|
+
boolean: "是/否",
|
|
819
|
+
},
|
|
820
|
+
tableOp: {
|
|
821
|
+
eq: "等于",
|
|
822
|
+
neq: "不等于",
|
|
823
|
+
gt: "大于",
|
|
824
|
+
gte: "大于等于",
|
|
825
|
+
lt: "小于",
|
|
826
|
+
lte: "小于等于",
|
|
827
|
+
contains: "包含文字",
|
|
828
|
+
startsWith: "以…开头",
|
|
829
|
+
endsWith: "以…结尾",
|
|
830
|
+
in: "属于列表",
|
|
831
|
+
empty: "为空",
|
|
832
|
+
notEmpty: "不为空",
|
|
833
|
+
regex: "正则匹配",
|
|
834
|
+
truthy: "为真",
|
|
835
|
+
falsy: "为假",
|
|
836
|
+
},
|
|
837
|
+
tableConditionFieldPlaceholder: "字段名",
|
|
838
|
+
tableConditionValuePlaceholder: "比较值",
|
|
839
|
+
},
|
|
840
|
+
messages: {
|
|
841
|
+
nodeNotFound: "未找到节点,可能已被删除",
|
|
842
|
+
sourceNodeNotFound: "未找到源节点,可能已被删除",
|
|
843
|
+
targetLayerNotFound: "目标图层不存在",
|
|
844
|
+
nodeMoveSameLayer: "已在当前图层",
|
|
845
|
+
nodeDeleteLocked: "锁定节点不可删除,请在右侧【节点信息】中取消锁定后重试",
|
|
846
|
+
nodeDeleteLayerLocked: "当前节点所在图层已锁定,无法删除。请先在图层栏取消锁定",
|
|
847
|
+
nodeBatchDeleteContainsLocked: "选中节点包含锁定节点,无法批量删除。请先在右侧【节点信息】中取消锁定",
|
|
848
|
+
nodeMoveLocked: "锁定节点不允许更换图层,请先在右侧【节点信息】中取消锁定",
|
|
849
|
+
nodeMoveSourceLayerLocked: "节点所在图层已锁定,无法更换图层。请先在图层栏取消锁定",
|
|
850
|
+
nodeMoveTargetLayerLocked: "目标图层已锁定,无法移入。请先在图层栏取消锁定",
|
|
851
|
+
activeLayerLockedCannotAdd: "当前图层已锁定,无法新增节点",
|
|
852
|
+
nodeLayerLockedCannotCopy: "当前节点所在图层已锁定,无法复制",
|
|
853
|
+
selectionContainsLockedLayerNode: "选中节点包含锁定图层内容,无法批量删除",
|
|
854
|
+
sourceLayerLockedCannotPaste: "复制源节点所在图层已锁定,无法粘贴",
|
|
855
|
+
nodeConfigLocked: "当前节点已锁定,配置项不可编辑。",
|
|
856
|
+
nodeConfigLayerLocked: "当前节点所在图层已锁定,配置项不可编辑。",
|
|
857
|
+
readImageFailed: "读取图片失败",
|
|
858
|
+
readAudioFailed: "读取音频失败",
|
|
859
|
+
readVideoFailed: "读取视频失败",
|
|
860
|
+
readRecordAudioFailed: "录音读取失败",
|
|
861
|
+
audioLocalSaved: "已写入本地音频(base64)",
|
|
862
|
+
audioRemoteUploaded: "已上传服务器并更新远程链接",
|
|
863
|
+
audioServerUploadFailed: "服务器上传失败,仅保留本地音频",
|
|
864
|
+
audioPosterSet: "已设置音频占位图",
|
|
865
|
+
audioRecordUnsupported: "当前环境不支持录音",
|
|
866
|
+
audioRecordSaved: "录音已保存,可直接播放",
|
|
867
|
+
audioRecording: "录音中...",
|
|
868
|
+
audioRecordStartFailed: "无法开始录音,请检查麦克风权限",
|
|
869
|
+
videoLocalSaved: "已写入本地视频(base64)",
|
|
870
|
+
videoRemoteUploaded: "已上传服务器并更新远程链接",
|
|
871
|
+
videoServerUploadFailed: "服务器上传失败,仅保留本地视频",
|
|
872
|
+
operationRestricted: "操作受限",
|
|
873
|
+
importInvalidFormat: "导入失败:文件格式不正确",
|
|
874
|
+
importJsonParseError: "导入失败:JSON 解析错误",
|
|
875
|
+
blueprintImportInvalid: "蓝图导入失败:文件格式不正确",
|
|
876
|
+
iconReadFailed: "图标读取失败,请重试",
|
|
877
|
+
blueprintNotFound: "蓝图不存在或已被删除",
|
|
878
|
+
blueprintSynced: "已同步「{name}」",
|
|
879
|
+
blueprintSavedLocal: "蓝图已保存到本地",
|
|
880
|
+
blueprintSavedToLibrary: "蓝图已保存到库",
|
|
881
|
+
blueprintSyncedToLibrary: "蓝图已同步到库",
|
|
882
|
+
blueprintExported: "蓝图已导出",
|
|
883
|
+
blueprintRenamed: "蓝图已重命名",
|
|
884
|
+
renameFailed: "重命名失败",
|
|
885
|
+
blueprintDeletedFromLibrary: "蓝图已从库中删除",
|
|
886
|
+
blueprintImported: "蓝图已导入并加载",
|
|
887
|
+
workspaceCreated: "已创建工作区「{name}」",
|
|
888
|
+
workspaceLoaded: "工作区已加载",
|
|
889
|
+
workspaceLoadedDesc: "视图与蓝图已恢复",
|
|
890
|
+
openWorkspaceFailed: "打开工作区失败",
|
|
891
|
+
syncFailed: "同步失败",
|
|
892
|
+
workspaceDeleted: "工作区已删除",
|
|
893
|
+
openPreviewFailed: "打开预览失败",
|
|
894
|
+
clearedBlueprintLogs: "已清空 IndexedDB 中 {removed} 条蓝图日志",
|
|
895
|
+
noSavedBlueprintLogs: "IndexedDB 中暂无已保存日志",
|
|
896
|
+
mergeNeedTwoLayers: "至少勾选 2 个图层后可合并",
|
|
897
|
+
layerNotFound: "图层不存在",
|
|
898
|
+
defaultLayerCannotDelete: "默认图层不可删除",
|
|
899
|
+
lockedLayerCannotDelete: "锁定图层不可删除",
|
|
900
|
+
selectTargetLayer: "请选择目标图层",
|
|
901
|
+
shallowRefBlockingDelete: "该图层仍被浅拷贝引用,请先删除引用节点或改为深拷贝",
|
|
902
|
+
noNodesSelected: "未选择节点",
|
|
903
|
+
noMigratableNodes: "未找到可迁移节点",
|
|
904
|
+
lockedCannotOpenMapping: "选中节点包含锁定内容,无法在新图层打开",
|
|
905
|
+
saveWorkspaceFirst: "请先保存工作区",
|
|
906
|
+
workspaceNotFound: "工作区不存在或已被删除",
|
|
907
|
+
workspaceDataInvalid: "工作区数据格式无效",
|
|
908
|
+
},
|
|
909
|
+
defaults: {
|
|
910
|
+
unnamedProduct: "未命名产物",
|
|
911
|
+
unnamedBlueprint: "未命名蓝图",
|
|
912
|
+
layer1: "图层1",
|
|
913
|
+
layerN: "图层{n}",
|
|
914
|
+
layerRandom: "图层-{id}",
|
|
915
|
+
mappingLayerN: "映射图层{n}",
|
|
916
|
+
doubleClickTextHtml: "双击输入文本",
|
|
917
|
+
bar: "柱状图",
|
|
918
|
+
line: "折线图",
|
|
919
|
+
area: "面积图",
|
|
920
|
+
scatter: "散点图",
|
|
921
|
+
radar: "雷达图",
|
|
922
|
+
gauge: "仪表盘",
|
|
923
|
+
funnel: "漏斗图",
|
|
924
|
+
pie: "饼图",
|
|
925
|
+
text: "文本",
|
|
926
|
+
grid: "网格布局",
|
|
927
|
+
image: "图片",
|
|
928
|
+
video: "视频",
|
|
929
|
+
audio: "音频",
|
|
930
|
+
reference: "引用组件",
|
|
931
|
+
geometry: "几何",
|
|
932
|
+
table: "表格",
|
|
933
|
+
},
|
|
934
|
+
workspace: {
|
|
935
|
+
create: "创建工作区",
|
|
936
|
+
createHint: "以当前产物名称新建一条 IndexedDB 工作区记录,不会覆盖已有工作区",
|
|
937
|
+
syncDirty: "同步 *",
|
|
938
|
+
syncUpdate: "同步更新「{name}」到 IndexedDB",
|
|
939
|
+
syncUpToDate: "当前工作区已与 IndexedDB 同步",
|
|
940
|
+
currentWorkspaceFallback: "当前工作区",
|
|
941
|
+
savedWorkspaces: "已保存工作区",
|
|
942
|
+
workspaceNamed: "工作区:{name}",
|
|
943
|
+
noSavedWorkspaces: "暂无已保存工作区",
|
|
944
|
+
deleteConfirmTitle: "删除工作区?",
|
|
945
|
+
deleteConfirmBody: "将永久删除 IndexedDB 中的「{name}」,此操作不可恢复。",
|
|
946
|
+
blueprintLibrary: "蓝图库",
|
|
947
|
+
saveBlueprintToLibrary: "保存蓝图到库",
|
|
948
|
+
syncBlueprint: "同步蓝图",
|
|
949
|
+
noSyncChanges: "无可同步变更",
|
|
950
|
+
lifecycle: "生命周期",
|
|
951
|
+
canvasLoading: "画布加载中…",
|
|
952
|
+
configEmptyTitle: "未选中蓝图节点",
|
|
953
|
+
configEmptyDesc: "在蓝图面板中选中一个节点后,这里会显示对应的配置。",
|
|
954
|
+
previewLoading: "加载预览中…",
|
|
955
|
+
previewNoNodes: "当前工作区没有可预览的视图节点",
|
|
956
|
+
previewHint: "请先在编辑器中点击「同步」或「创建工作区」后再预览",
|
|
957
|
+
previewDocTitle: "预览",
|
|
958
|
+
},
|
|
959
|
+
layers: {
|
|
960
|
+
title: "图层",
|
|
961
|
+
mapping: "映射",
|
|
962
|
+
primary: "主",
|
|
963
|
+
mappingLayer: "映射图层",
|
|
964
|
+
primaryLayer: "主图层",
|
|
965
|
+
expandInput: "展开输入区",
|
|
966
|
+
collapseInput: "收起输入区",
|
|
967
|
+
expandInputAria: "展开图层输入区",
|
|
968
|
+
collapseInputAria: "收起图层输入区",
|
|
969
|
+
add: "新增图层",
|
|
970
|
+
addShort: "新建",
|
|
971
|
+
merge: "合并图层",
|
|
972
|
+
mergeShort: "合并",
|
|
973
|
+
mergeNeedTwo: "至少勾选 2 个图层后可合并",
|
|
974
|
+
namePlaceholder: "请输入图层名称",
|
|
975
|
+
setPrimary: "设为主图层",
|
|
976
|
+
isPrimary: "当前主图层",
|
|
977
|
+
setPrimaryHint: "设为主图层(预览使用)",
|
|
978
|
+
isPrimaryHint: "当前主图层(预览使用)",
|
|
979
|
+
lock: "锁定图层",
|
|
980
|
+
unlock: "解锁图层",
|
|
981
|
+
lockShort: "锁定",
|
|
982
|
+
unlockShort: "解锁",
|
|
983
|
+
rename: "重命名图层",
|
|
984
|
+
renameShort: "重命名",
|
|
985
|
+
saveName: "保存图层名称",
|
|
986
|
+
cancelEditName: "取消编辑图层名称",
|
|
987
|
+
cancelEdit: "取消编辑",
|
|
988
|
+
delete: "删除图层",
|
|
989
|
+
cannotDeleteDefault: "默认图层不可删除",
|
|
990
|
+
cannotDeleteLocked: "锁定图层不可删除",
|
|
991
|
+
selectMergeLayers: "选择合并图层",
|
|
992
|
+
mappingCannotMerge: "映射图层不允许合并",
|
|
993
|
+
cannotMergeSuffix: "(不可合并)",
|
|
994
|
+
mergedName: "合并后图层名",
|
|
995
|
+
mergedNamePlaceholder: "可空,留空将随机命名",
|
|
996
|
+
mergedNamePlaceholderOptional: "合并后图层名称(可选)",
|
|
997
|
+
confirmMerge: "确认合并",
|
|
998
|
+
confirmMergeAria: "确认合并图层",
|
|
999
|
+
cancelMerge: "取消合并",
|
|
1000
|
+
cancelMergeAria: "取消合并图层",
|
|
1001
|
+
joinMerge: "参与合并",
|
|
1002
|
+
mergeDialogTitle: "合并图层",
|
|
1003
|
+
mergeOk: "合并",
|
|
1004
|
+
mergeSelectedCount: "已勾选 {count} 个图层",
|
|
1005
|
+
confirmDeleteTitle: "确认删除",
|
|
1006
|
+
confirmDeleteMappingBody: "将删除 {count} 个关联映射图层,是否继续?",
|
|
1007
|
+
continueDelete: "继续删除",
|
|
1008
|
+
confirmDeleteLayerTitle: "确认删除图层",
|
|
1009
|
+
aboutToDeleteLayer: "即将删除图层:{name}",
|
|
1010
|
+
migrateNodesTo: "节点迁移到",
|
|
1011
|
+
selectTargetLayer: "选择目标图层",
|
|
1012
|
+
pleaseSelectLayer: "请选择图层",
|
|
1013
|
+
deleteMappingWithNodes: "删除映射图层及其节点",
|
|
1014
|
+
deleteAllNodesToo: "同时删除该图层下所有节点",
|
|
1015
|
+
confirmDelete: "确认删除",
|
|
1016
|
+
},
|
|
1017
|
+
scope: {
|
|
1018
|
+
dataTitle: "Scope 数据",
|
|
1019
|
+
templateHintLabel: "Scope 模版",
|
|
1020
|
+
updated: "已更新",
|
|
1021
|
+
expand: "展开 Scope",
|
|
1022
|
+
collapse: "收起 Scope",
|
|
1023
|
+
usageHint1: "表单中可使用模版字符串引用 scope,例如 {scope?.a||0}、{scope?.name||''}。支持 ?. 与 || 占位。",
|
|
1024
|
+
usageHint2: "数组展开模版 [...{scope?.a?.b}]、[...{scope?.data?.data?.statusName}]:在文本字段输出逗号分隔字符串;在图表「类目」等数组字段会展开为 n 个独立项(如 3 条数据对应 3 个类目)。",
|
|
1025
|
+
previewTitle: "解析预览",
|
|
1026
|
+
previewArray: "数组 · {count} 项",
|
|
1027
|
+
expandPreview: "展开",
|
|
1028
|
+
collapsePreview: "收起",
|
|
1029
|
+
warningsTitle: "异常调用警告",
|
|
1030
|
+
expandWarnings: "展开警告",
|
|
1031
|
+
collapseWarnings: "收起警告",
|
|
1032
|
+
fieldName: "节点名称",
|
|
1033
|
+
fieldTextHtml: "文本内容",
|
|
1034
|
+
fieldTextFontFamily: "文本字体",
|
|
1035
|
+
fieldTextFontWeight: "文本字重",
|
|
1036
|
+
fieldTextColor: "文本颜色",
|
|
1037
|
+
fieldChartTitle: "图表标题",
|
|
1038
|
+
fieldChartColor: "图表颜色",
|
|
1039
|
+
fieldChartGradientFrom: "渐变起始色",
|
|
1040
|
+
fieldChartGradientTo: "渐变结束色",
|
|
1041
|
+
fieldChartXAxisName: "X 轴名称",
|
|
1042
|
+
fieldChartYAxisName: "Y 轴名称",
|
|
1043
|
+
fieldChartXAxisTickColor: "X 轴刻度颜色",
|
|
1044
|
+
fieldChartYAxisTickColor: "Y 轴刻度颜色",
|
|
1045
|
+
fieldChartXAxisSplitLineColor: "X 轴分割线颜色",
|
|
1046
|
+
fieldChartYAxisSplitLineColor: "Y 轴分割线颜色",
|
|
1047
|
+
fieldChartXAxisLabelColor: "X 轴标签颜色",
|
|
1048
|
+
fieldChartYAxisLabelColor: "Y 轴标签颜色",
|
|
1049
|
+
fieldChartTooltipBackgroundColor: "Tooltip 背景色",
|
|
1050
|
+
fieldChartTooltipTextColor: "Tooltip 文字色",
|
|
1051
|
+
fieldChartTooltipFormatter: "Tooltip 格式化",
|
|
1052
|
+
fieldChartLabelsText: "图表类目",
|
|
1053
|
+
fieldChartValuesText: "图表数值",
|
|
1054
|
+
fieldStyleBackgroundColor: "背景色",
|
|
1055
|
+
fieldStyleBackgroundImage: "背景图",
|
|
1056
|
+
fieldStyleBackgroundImageRemoteUrl: "背景图远程地址",
|
|
1057
|
+
fieldStyleBackgroundSize: "背景尺寸",
|
|
1058
|
+
fieldStyleBackgroundPosition: "背景位置",
|
|
1059
|
+
fieldStyleBorderColor: "边框颜色",
|
|
1060
|
+
fieldAudioSrc: "音频地址",
|
|
1061
|
+
fieldAudioRemoteUrl: "音频远程地址",
|
|
1062
|
+
fieldVideoSrc: "视频地址",
|
|
1063
|
+
fieldVideoRemoteUrl: "视频远程地址",
|
|
1064
|
+
fieldGeometryColor: "几何颜色",
|
|
1065
|
+
fieldGeometryScript: "几何脚本",
|
|
1066
|
+
warnMissingPath: "「{fieldLabel}」引用了 scope.{path},但当前 scope 数据中并没有「{path}」字段,建议检查一下。",
|
|
1067
|
+
warnSpreadNotArray: "「{fieldLabel}」中的 {template} 模版仅可做数组值的映射,当前 scope.{arrayPath} 不是数组,数据不符合规则。参考示例:scope 为 {demoScope} 时使用 {demoTemplate} 输出 {demoOutput};深层路径可用 {deepTemplate}(scope 为 {deepScope} 时输出 {deepOutput})。",
|
|
1068
|
+
warnSpreadInvalid: "「{fieldLabel}」中的 {template} 写法无效,请使用 {demoTemplate} 或 {deepTemplate} 形式。参考示例:scope 为 {demoScope} 时输出 {demoOutput}。",
|
|
1069
|
+
demoInProgress: "进行中",
|
|
1070
|
+
demoDone: "已完成",
|
|
1071
|
+
demoJoined: "进行中,已完成",
|
|
1072
|
+
},
|
|
1073
|
+
history: {
|
|
1074
|
+
title: "操作历史",
|
|
1075
|
+
expand: "展开操作历史",
|
|
1076
|
+
collapse: "收起操作历史",
|
|
1077
|
+
searchPlaceholder: "搜索历史,如:删除、图层、缩放...",
|
|
1078
|
+
emptyTitle: "暂无操作历史",
|
|
1079
|
+
emptyDesc: "进行一次操作后,这里会展示历史记录。",
|
|
1080
|
+
noMatchTitle: "未匹配到历史项",
|
|
1081
|
+
noMatchDesc: "尝试更换关键词,例如删除、图层、缩放。",
|
|
1082
|
+
initial: "初始化",
|
|
1083
|
+
nodeUpdate: "更新节点",
|
|
1084
|
+
nodeGroupDrag: "批量移动节点",
|
|
1085
|
+
nodeGroupResize: "批量缩放节点",
|
|
1086
|
+
nodeGroupRotate: "批量旋转节点",
|
|
1087
|
+
nodeDelete: "删除节点",
|
|
1088
|
+
nodeBatchDelete: "批量删除节点",
|
|
1089
|
+
nodeZFront: "节点置顶",
|
|
1090
|
+
nodeZBack: "节点置底",
|
|
1091
|
+
nodeZUp: "节点上移一层",
|
|
1092
|
+
nodeZDown: "节点下移一层",
|
|
1093
|
+
nodeDuplicate: "复制节点",
|
|
1094
|
+
nodeRefCopyMode: "设置引用拷贝模式",
|
|
1095
|
+
nodeAdd: "添加节点",
|
|
1096
|
+
layerActivate: "切换图层",
|
|
1097
|
+
layerAdd: "新增图层",
|
|
1098
|
+
layerRename: "重命名图层",
|
|
1099
|
+
layerToggleLock: "切换图层锁定",
|
|
1100
|
+
layerOpenSelectedMapping: "映射图层打开选中节点",
|
|
1101
|
+
layerDelete: "删除图层",
|
|
1102
|
+
layerToggleMerge: "勾选合并图层",
|
|
1103
|
+
layerMerge: "合并图层",
|
|
1104
|
+
layerSetPrimary: "设置主图层",
|
|
1105
|
+
panelImport: "导入面板",
|
|
1106
|
+
fallback: "编辑",
|
|
1107
|
+
},
|
|
1108
|
+
theme: {
|
|
1109
|
+
switchToLight: "切换到浅色",
|
|
1110
|
+
switchToDark: "切换到深色",
|
|
1111
|
+
toggleTheme: "切换主题",
|
|
1112
|
+
toggleThemeHint: "切换深色/浅色主题",
|
|
1113
|
+
language: "语言",
|
|
1114
|
+
zhCN: "中文",
|
|
1115
|
+
enUS: "English",
|
|
1116
|
+
},
|
|
1117
|
+
},
|
|
1118
|
+
blueprint: {
|
|
1119
|
+
toolbar: {
|
|
1120
|
+
library: "蓝图库",
|
|
1121
|
+
libraryEmpty: "蓝图库为空",
|
|
1122
|
+
saved: "已保存",
|
|
1123
|
+
imported: "已导入",
|
|
1124
|
+
openLibraryTooltip: "打开蓝图库:点击项加载;已选中项再次点击可返回当前工作区蓝图",
|
|
1125
|
+
clickAgainReturnWorkspace: "再次点击返回当前工作区蓝图",
|
|
1126
|
+
renameTooltip: "重命名「{name}」",
|
|
1127
|
+
renameAriaLabel: "重命名 {name}",
|
|
1128
|
+
deleteTooltip: "从蓝图库删除「{name}」",
|
|
1129
|
+
deleteAriaLabel: "删除 {name}",
|
|
1130
|
+
saveToLocalLibrary: "保存蓝图到本地蓝图库",
|
|
1131
|
+
saveToLocalAriaLabel: "保存蓝图到本地",
|
|
1132
|
+
syncUpdateNamed: "同步更新蓝图库中的「{name}」",
|
|
1133
|
+
syncToLibrary: "将当前编辑同步到蓝图库",
|
|
1134
|
+
alreadyInSyncNamed: "「{name}」已与库中版本一致",
|
|
1135
|
+
selectBlueprintFirst: "请先从蓝图库选择要编辑的蓝图",
|
|
1136
|
+
syncAriaLabel: "同步蓝图到库",
|
|
1137
|
+
simulateScene: "模拟场景",
|
|
1138
|
+
simulateSceneTooltip: "模拟场景:选择生命周期节点,表示当前处于该生命周期阶段",
|
|
1139
|
+
simulateSceneAriaLabel: "模拟场景",
|
|
1140
|
+
runAllTooltip: "走完全流程:从所选生命周期节点一次性执行完整任务链",
|
|
1141
|
+
runAllAriaLabel: "走完全流程",
|
|
1142
|
+
resetToStartTooltip: "回到开始:清空已执行记录,从所选生命周期节点重新调试",
|
|
1143
|
+
resetToStartAriaLabel: "回到开始",
|
|
1144
|
+
stepBackTooltip: "上一步:撤销最近一次节点执行,恢复日志与画布状态",
|
|
1145
|
+
stepBackAriaLabel: "上一步",
|
|
1146
|
+
stepNextTooltip: "下一步:向下一节点发送真信号,每次执行一个节点",
|
|
1147
|
+
stepNextFalseHalt: "当前节点输出假信号,无法继续下一步",
|
|
1148
|
+
stepNextChainComplete: "已经是最后一个节点,任务链已走完",
|
|
1149
|
+
stepNextAriaLabel: "下一步",
|
|
1150
|
+
logPanelTooltip: "任务输出日志:在右侧查看节点执行时间、输入与输出",
|
|
1151
|
+
logPanelAriaLabel: "任务输出日志",
|
|
1152
|
+
addNode: "新增节点",
|
|
1153
|
+
deleteNode: "删除节点",
|
|
1154
|
+
deleteEdge: "删除连线",
|
|
1155
|
+
},
|
|
1156
|
+
dialog: {
|
|
1157
|
+
renameTitle: "重命名蓝图",
|
|
1158
|
+
renameDescription: "修改蓝图库中该项的显示名称。",
|
|
1159
|
+
blueprintName: "蓝图名称",
|
|
1160
|
+
cancel: "取消",
|
|
1161
|
+
confirm: "确定",
|
|
1162
|
+
deleteTitle: "删除蓝图",
|
|
1163
|
+
deleteDescription: "确定从蓝图库中删除「{name}」吗?此操作不可恢复。",
|
|
1164
|
+
delete: "删除",
|
|
1165
|
+
exportTitle: "导出蓝图",
|
|
1166
|
+
saveTitle: "保存蓝图",
|
|
1167
|
+
exportDescription: "填写蓝图名称与备注,将当前蓝图导出为 JSON 文件。",
|
|
1168
|
+
saveDescription: "填写蓝图名称与备注,将当前蓝图保存到本地蓝图库。",
|
|
1169
|
+
export: "导出",
|
|
1170
|
+
save: "保存",
|
|
1171
|
+
unnamedBlueprint: "未命名蓝图",
|
|
1172
|
+
namePlaceholder: "例如:首页初始化流程",
|
|
1173
|
+
remark: "蓝图备注",
|
|
1174
|
+
remarkPlaceholder: "可选:描述蓝图用途、触发条件等",
|
|
1175
|
+
taskRunningTitle: "节点正在执行任务",
|
|
1176
|
+
taskRunningDescription: "节点 {fromNodeId} 正在执行任务(Swagger 解析或请求调试)。是否切换到 {target}?",
|
|
1177
|
+
cancelSelection: "取消选中",
|
|
1178
|
+
nodeTarget: "节点 {id}",
|
|
1179
|
+
taskSwitchHint: "选择「保留并切换」将在后台继续执行,回到该节点时仍能看到进度;选择「取消并切换」会中止当前任务。",
|
|
1180
|
+
stayOnNode: "留在此节点",
|
|
1181
|
+
cancelAndSwitch: "取消并切换",
|
|
1182
|
+
keepAndSwitch: "保留并切换",
|
|
1183
|
+
importedBlueprint: "导入的蓝图",
|
|
1184
|
+
},
|
|
1185
|
+
node: {
|
|
1186
|
+
typeBlueprint: "蓝图",
|
|
1187
|
+
typeLogic: "逻辑",
|
|
1188
|
+
typeAnd: "并运算",
|
|
1189
|
+
typeLifecycle: "生命周期",
|
|
1190
|
+
typeView: "视图",
|
|
1191
|
+
typeFetch: "数据源获取",
|
|
1192
|
+
typeJson: "JSON 节点",
|
|
1193
|
+
typeClock: "时钟",
|
|
1194
|
+
summaryNoUrl: "未配置 URL",
|
|
1195
|
+
summaryOutputCount: "{count} 次",
|
|
1196
|
+
summaryInterval: "间隔 {seconds}s",
|
|
1197
|
+
summaryEmitImmediate: "立即首发",
|
|
1198
|
+
summaryEmitDelayed: "延迟首发",
|
|
1199
|
+
summaryEmptyJson: "空 JSON",
|
|
1200
|
+
summaryNoScript: "未配置脚本",
|
|
1201
|
+
summaryNoBlueprint: "未选择蓝图",
|
|
1202
|
+
summaryNoView: "未关联视图节点",
|
|
1203
|
+
summaryViewOne: "视图节点 {id}",
|
|
1204
|
+
summaryViewMany: "已关联 {count} 个视图节点",
|
|
1205
|
+
summaryAnd: "两路输入均为真时输出",
|
|
1206
|
+
phaseCreated: "已创建 (created)",
|
|
1207
|
+
phaseBeforeMount: "挂载前 (beforeMount)",
|
|
1208
|
+
phaseMounted: "已挂载 (mounted)",
|
|
1209
|
+
phaseUpdated: "已更新 (updated)",
|
|
1210
|
+
phaseBeforeDestroy: "销毁前 (beforeDestroy)",
|
|
1211
|
+
phaseDestroy: "已销毁 (destroy)",
|
|
1212
|
+
phaseActivated: "已激活 (activated)",
|
|
1213
|
+
phaseDeactivated: "已停用 (deactivated)",
|
|
1214
|
+
phaseBlueprintActivated: "蓝图激活 (blueprintActivated)",
|
|
1215
|
+
dragToMove: "拖拽移动",
|
|
1216
|
+
signalSentCount: "已发送信号次数",
|
|
1217
|
+
signalIn: "真/假信号输入",
|
|
1218
|
+
signalOut: "真/假信号输出",
|
|
1219
|
+
lifecycleOut: "生命周期满足时输出真/假信号",
|
|
1220
|
+
andInA: "输入 A(多连线为或)",
|
|
1221
|
+
andInB: "输入 B(多连线为或)",
|
|
1222
|
+
andOut: "两路均为真时输出真信号",
|
|
1223
|
+
abortClock: "中止时钟:停止剩余次数与正在执行的下游任务",
|
|
1224
|
+
},
|
|
1225
|
+
config: {
|
|
1226
|
+
title: "蓝图节点配置",
|
|
1227
|
+
roleBlueprint: "蓝图节点",
|
|
1228
|
+
roleLifecycle: "生命周期节点",
|
|
1229
|
+
roleAnd: "并运算节点",
|
|
1230
|
+
roleFetch: "数据源节点",
|
|
1231
|
+
roleJson: "JSON 节点",
|
|
1232
|
+
roleLogic: "逻辑节点",
|
|
1233
|
+
roleClock: "时钟节点",
|
|
1234
|
+
roleView: "视图节点",
|
|
1235
|
+
nodeName: "节点名称",
|
|
1236
|
+
configType: "配置类型",
|
|
1237
|
+
configBlueprint: "蓝图配置",
|
|
1238
|
+
configLogic: "逻辑配置",
|
|
1239
|
+
configAnd: "并运算",
|
|
1240
|
+
configLifecycle: "生命周期配置",
|
|
1241
|
+
configFetch: "数据源获取",
|
|
1242
|
+
configJson: "JSON 节点",
|
|
1243
|
+
configClock: "时钟",
|
|
1244
|
+
configView: "视图节点配置",
|
|
1245
|
+
linkedViewNodes: "关联视图节点",
|
|
1246
|
+
selectViewNode: "选择视图节点",
|
|
1247
|
+
viewMultiHint: "可多选视图画布节点;关联后仍在此配置蓝图节点,视图属性请在视图面板中编辑。",
|
|
1248
|
+
linkedViewCount: "已关联 {count} 个视图节点:{names}",
|
|
1249
|
+
noViewOnCanvas: "视图画布暂无节点",
|
|
1250
|
+
searchViewNodes: "搜索视图节点…",
|
|
1251
|
+
noMatchingNodes: "无匹配节点",
|
|
1252
|
+
selectedCount: "已选 {count} 项",
|
|
1253
|
+
blueprintAttrs: "蓝图属性",
|
|
1254
|
+
blueprintAttrsHint: "选中蓝图库中的蓝图后,当输入端收到真信号时才会执行该蓝图;执行完成后从输出端发出真信号(含嵌套蓝图输出值与当前节点信息),执行失败则发出假信号。",
|
|
1255
|
+
refLibrary: "引用蓝图库",
|
|
1256
|
+
selectLibraryBlueprint: "选择蓝图库中的蓝图",
|
|
1257
|
+
unlinked: "未关联",
|
|
1258
|
+
selectLibraryFirst: "请先从蓝图库选择要引用的蓝图。",
|
|
1259
|
+
allowFalsePropagateBlueprint: "允许假信号传递:开启后,节点输出假信号时不会阻塞任务链,错误信息会继续向下游传递。",
|
|
1260
|
+
lifecycleHook: "生命周期钩子",
|
|
1261
|
+
lifecycleNoInput: "生命周期节点没有输入口,仅右侧输出口。",
|
|
1262
|
+
lifecycleBlueprintActivatedHint: "当本蓝图被其他蓝图的蓝图配置节点引用且收到真信号时,自动向下游发出真信号,输出值为父级传入的输入数据。",
|
|
1263
|
+
lifecyclePageHint: "当页面进入对应生命周期时,自动向下游发出真/假信号。",
|
|
1264
|
+
listenPhase: "监听阶段",
|
|
1265
|
+
parentBlueprintNode: "所属蓝图节点:{id}",
|
|
1266
|
+
andTitle: "并运算",
|
|
1267
|
+
andHint: "左侧两个输入口 inA、inB。每个输入口可连 n 条线,同端口任一为真则该端口视为真(或)。仅当 inA 与 inB 均为真信号时,从输出口发出真信号;否则发出假信号。",
|
|
1268
|
+
taskChain: "任务链执行",
|
|
1269
|
+
allowFalsePropagateDefault: "允许假信号传递:默认假信号会阻塞任务链;开启后继续向下游传递假信号与错误信息。",
|
|
1270
|
+
fetchTitle: "数据源获取 (Fetch)",
|
|
1271
|
+
fetchHint: "收到真信号后发起 HTTP 请求;可导入 Swagger 文档后从接口列表联想选择 URL。",
|
|
1272
|
+
swaggerUrlOptional: "Swagger 文档 URL(可选)",
|
|
1273
|
+
abortParse: "中止解析",
|
|
1274
|
+
abortSwaggerAria: "中止 Swagger 解析",
|
|
1275
|
+
parseSwagger: "解析 Swagger 文档",
|
|
1276
|
+
parsingSwagger: "正在解析 Swagger 文档,点击右侧按钮可中止…",
|
|
1277
|
+
parsedEndpoints: "已解析 {count} 个接口",
|
|
1278
|
+
requestUrl: "请求 URL",
|
|
1279
|
+
suggestApi: "接口联想",
|
|
1280
|
+
manualInput: "手动输入",
|
|
1281
|
+
apiHostBaseUrl: "API 主机 / Base URL",
|
|
1282
|
+
selectEndpoint: "选择接口",
|
|
1283
|
+
selectOrSearchEndpoint: "点击选择或搜索接口",
|
|
1284
|
+
sendDebugRequest: "发送调试请求",
|
|
1285
|
+
abortRequest: "中止请求",
|
|
1286
|
+
abortDebugAria: "中止调试请求",
|
|
1287
|
+
sendingDebug: "正在发送调试请求,点击右侧按钮可中止…",
|
|
1288
|
+
requestFailed: "请求失败",
|
|
1289
|
+
debugResponse: "调试响应",
|
|
1290
|
+
requestMethod: "请求方法",
|
|
1291
|
+
requestHeadersJson: "请求头 (JSON)",
|
|
1292
|
+
requestBody: "请求体",
|
|
1293
|
+
responseParse: "响应解析",
|
|
1294
|
+
timeoutMs: "超时 (ms)",
|
|
1295
|
+
fillSwaggerUrlFirst: "请先填写 Swagger 文档 URL",
|
|
1296
|
+
fillRequestUrlFirst: "请先填写请求 URL",
|
|
1297
|
+
noMatchingEndpoint: "无匹配接口",
|
|
1298
|
+
swaggerParseFailed: "Swagger 文档解析失败",
|
|
1299
|
+
enterSwaggerUrl: "请输入 Swagger 文档 URL",
|
|
1300
|
+
cannotFetchSwagger: "无法请求 Swagger 文档",
|
|
1301
|
+
swaggerHttpFailed: "Swagger 文档请求失败: HTTP {status}",
|
|
1302
|
+
swaggerHtmlReturned: "返回内容为 HTML,请填写 OpenAPI/Swagger 的 JSON 地址",
|
|
1303
|
+
swaggerInvalidJson: "Swagger 文档不是有效的 JSON",
|
|
1304
|
+
jsonTitle: "JSON 节点",
|
|
1305
|
+
jsonHint: "收到真信号后,将下方 JSON 解析为 JavaScript object(或 array)并从输出口发出真信号;解析失败则发出假信号。",
|
|
1306
|
+
jsonContent: "JSON 内容",
|
|
1307
|
+
jsonFormatError: "JSON 格式错误:{error}",
|
|
1308
|
+
jsonFormatOk: "JSON 格式正确",
|
|
1309
|
+
logicTitle: "逻辑节点",
|
|
1310
|
+
logicHint: "收到真信号后,将输入数据传入下方 update 函数并执行;返回值作为真信号输出。代码语法错误或运行时报错则发出假信号(错误信息为输出值)。",
|
|
1311
|
+
jsCode: "JavaScript 代码",
|
|
1312
|
+
jsError: "JavaScript 错误:{error}",
|
|
1313
|
+
jsSyntaxOk: "JavaScript 语法正确",
|
|
1314
|
+
clockTitle: "时钟节点",
|
|
1315
|
+
clockHint: "收到真信号后才开始计时输出;每次输出向下游发出真信号,值包含当前时间(formatted / timestamp / isoTime)。假信号会原样向下游传递。",
|
|
1316
|
+
clockIntervalSeconds: "时钟信号间隔(秒)",
|
|
1317
|
+
clockIntervalHint: "两次输出之间的间隔 n 秒;多次输出或未开启「立即发送」时须大于 0。",
|
|
1318
|
+
outputCount: "输出次数",
|
|
1319
|
+
outputCountHint: "收到真信号后总共输出的次数,默认 1。",
|
|
1320
|
+
emitImmediately: "收到信号立即发送:开启且输出次数大于 1 时,会立刻执行第 1 次,剩余次数按间隔 m 秒依次执行;仅输出 1 次时也会立刻执行。关闭则每次(含首次)都先等待 m 秒。",
|
|
1321
|
+
timeFormat: "时间格式",
|
|
1322
|
+
timeFormatHint: "支持 YYYY、MM、DD、HH、mm、ss,默认 YYYY-MM-DD HH:mm:ss。",
|
|
1323
|
+
},
|
|
1324
|
+
log: {
|
|
1325
|
+
title: "蓝图任务输出日志",
|
|
1326
|
+
simulateSceneWithPhase: "模拟场景:{phaseLabel}",
|
|
1327
|
+
selectLifecycleToDebug: "选择生命周期节点并开始调试",
|
|
1328
|
+
clearIdbTooltip: "立即清空 IndexedDB 中所有已保存的蓝图执行日志",
|
|
1329
|
+
clearIdbAria: "清空 IndexedDB 日志",
|
|
1330
|
+
clearCurrentTooltip: "清空当前日志,并重置画布执行高亮",
|
|
1331
|
+
clearCurrentAria: "清空日志",
|
|
1332
|
+
emptyHint: "暂无执行记录。使用工具栏「走完全流程」或「下一步」开始模拟。",
|
|
1333
|
+
input: "输入",
|
|
1334
|
+
output: "输出",
|
|
1335
|
+
hasNewLogs: "有新日志",
|
|
1336
|
+
saveLog: "保存日志",
|
|
1337
|
+
saveLogTooltip: "将当前调试日志保存到 IndexedDB",
|
|
1338
|
+
exportJson: "导出 JSON",
|
|
1339
|
+
exportJsonTooltip: "将当前调试日志导出为 JSON 文件",
|
|
1340
|
+
autoSaveAfterRun: "运行完成后自动保存到 IndexedDB",
|
|
1341
|
+
autoSaveTooltip: "调试运行完成后,自动将日志写入 IndexedDB",
|
|
1342
|
+
maxSavedCount: "最多保存条数",
|
|
1343
|
+
maxSavedCountTooltip: "IndexedDB 中最多保留的日志条数,超出后自动删除最旧记录",
|
|
1344
|
+
maxSavedCountAria: "IndexedDB 最多保存日志条数",
|
|
1345
|
+
retentionDays: "保留天数",
|
|
1346
|
+
retentionDaysTooltip: "超过保留天数的已保存日志将在清理时被删除",
|
|
1347
|
+
retentionDaysAria: "日志保留天数",
|
|
1348
|
+
cleanupExpired: "清理过期与超额",
|
|
1349
|
+
cleanupTooltip: "按保留天数与条数上限,清理 IndexedDB 中的日志记录",
|
|
1350
|
+
},
|
|
1351
|
+
dev: {
|
|
1352
|
+
hint: "右键画布添加节点 · 从右侧圆点拖到左侧圆点连线 · 初始应看到 A→B 蓝线",
|
|
1353
|
+
stats: "节点 {nodes} · 边 {edges}",
|
|
1354
|
+
},
|
|
1355
|
+
},
|
|
1356
|
+
} as const;
|
|
1357
|
+
|
|
1358
|
+
export type MessageCatalog = typeof zhCN;
|