@huanban/rulego-editor-core 1.3.18 → 1.4.0
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 +153 -2
- package/assets/images/discovery-dark.svg +1 -0
- package/assets/images/discovery.svg +1 -0
- package/assets/images/nacos-dark.svg +1 -0
- package/assets/images/nacos.svg +1 -0
- package/assets/theme-icons/ant-blue/discovery-dark.svg +1 -0
- package/assets/theme-icons/ant-blue/discovery.svg +1 -0
- package/assets/theme-icons/ant-blue/nacos-dark.svg +1 -0
- package/assets/theme-icons/ant-blue/nacos.svg +1 -0
- package/assets/theme-icons/apple/discovery-dark.svg +1 -0
- package/assets/theme-icons/apple/discovery.svg +1 -0
- package/assets/theme-icons/apple/nacos-dark.svg +1 -0
- package/assets/theme-icons/apple/nacos.svg +1 -0
- package/assets/theme-icons/colorful/discovery-dark.svg +1 -0
- package/assets/theme-icons/colorful/discovery.svg +1 -0
- package/assets/theme-icons/colorful/nacos-dark.svg +1 -0
- package/assets/theme-icons/colorful/nacos.svg +1 -0
- package/assets/theme-icons/dark/discovery-dark.svg +1 -0
- package/assets/theme-icons/dark/discovery.svg +1 -0
- package/assets/theme-icons/dark/nacos-dark.svg +1 -0
- package/assets/theme-icons/dark/nacos.svg +1 -0
- package/assets/theme-icons/default/discovery-dark.svg +1 -0
- package/assets/theme-icons/default/discovery.svg +1 -0
- package/assets/theme-icons/default/nacos-dark.svg +1 -0
- package/assets/theme-icons/default/nacos.svg +1 -0
- package/assets/theme-icons/elegant/discovery-dark.svg +1 -0
- package/assets/theme-icons/elegant/discovery.svg +1 -0
- package/assets/theme-icons/elegant/nacos-dark.svg +1 -0
- package/assets/theme-icons/elegant/nacos.svg +1 -0
- package/assets/theme-icons/github/discovery-dark.svg +1 -0
- package/assets/theme-icons/github/discovery.svg +1 -0
- package/assets/theme-icons/github/nacos-dark.svg +1 -0
- package/assets/theme-icons/github/nacos.svg +1 -0
- package/assets/theme-icons/icon-theme-manifest.json +30 -14
- package/assets/theme-icons/icon-theme-overview.svg +1599 -1287
- package/assets/theme-icons/material/discovery-dark.svg +1 -0
- package/assets/theme-icons/material/discovery.svg +1 -0
- package/assets/theme-icons/material/nacos-dark.svg +1 -0
- package/assets/theme-icons/material/nacos.svg +1 -0
- package/assets/theme-icons/modern/discovery-dark.svg +1 -0
- package/assets/theme-icons/modern/discovery.svg +1 -0
- package/assets/theme-icons/modern/nacos-dark.svg +1 -0
- package/assets/theme-icons/modern/nacos.svg +1 -0
- package/assets/theme-icons/nature/discovery-dark.svg +1 -0
- package/assets/theme-icons/nature/discovery.svg +1 -0
- package/assets/theme-icons/nature/nacos-dark.svg +1 -0
- package/assets/theme-icons/nature/nacos.svg +1 -0
- package/assets/theme-icons/tailwind/discovery-dark.svg +1 -0
- package/assets/theme-icons/tailwind/discovery.svg +1 -0
- package/assets/theme-icons/tailwind/nacos-dark.svg +1 -0
- package/assets/theme-icons/tailwind/nacos.svg +1 -0
- package/assets/theme-icons/tech/discovery-dark.svg +1 -0
- package/assets/theme-icons/tech/discovery.svg +1 -0
- package/assets/theme-icons/tech/nacos-dark.svg +1 -0
- package/assets/theme-icons/tech/nacos.svg +1 -0
- package/assets/theme-icons/vscode/discovery-dark.svg +1 -0
- package/assets/theme-icons/vscode/discovery.svg +1 -0
- package/assets/theme-icons/vscode/nacos-dark.svg +1 -0
- package/assets/theme-icons/vscode/nacos.svg +1 -0
- package/dist/ai/copilot-markdown.d.ts +40 -0
- package/dist/ai/copilot-transport.d.ts +39 -0
- package/dist/api/AIManager.d.ts +5 -4
- package/dist/api/ApiProvider.d.ts +17 -69
- package/dist/api/ComponentCatalogCache.d.ts +27 -0
- package/dist/api/DebugSocketClient.d.ts +18 -25
- package/dist/api/RuleChainAPI.d.ts +24 -145
- package/dist/api/StreamParser.d.ts +0 -10
- package/dist/api/index.d.ts +4 -14
- package/dist/api/response-utils.d.ts +4 -22
- package/dist/api/types.d.ts +44 -179
- package/dist/chunks/editor-core-code-editor-CRki2wA_.js +512 -0
- package/dist/chunks/editor-core-default-components-BjF65lar.js +9448 -0
- package/dist/chunks/editor-core-dialogs-CkFLaC8Q.js +17176 -0
- package/dist/chunks/editor-core-icons-BqeFofNA.js +668 -0
- package/dist/chunks/editor-core-json-diff-RHsPeX-w.js +199 -0
- package/dist/chunks/editor-core-locales-i6o28vm2.js +4159 -0
- package/dist/chunks/editor-core-node-patches-BJTT3TuX.js +8060 -0
- package/dist/chunks/editor-core-node-views-BOaPVdmN.js +1288 -0
- package/dist/chunks/editor-core-property-drawers-lLsBIoCa.js +8035 -0
- package/dist/chunks/editor-core-standalone-CHXk3ukc.js +11270 -0
- package/dist/chunks/editor-core-styles-C1TbLgCK.js +8841 -0
- package/dist/chunks/vendor-logicflow-core-runtime-Cp6IBEjB.js +217 -0
- package/dist/chunks/vendor-logicflow-shared-C7YynLDn.js +4 -0
- package/dist/chunks/xlsx-BopDBbWb.js +24176 -0
- package/dist/core/ActionRegistry.d.ts +47 -0
- package/dist/core/AutoLayout.d.ts +1 -48
- package/dist/core/ComponentDocService.d.ts +28 -0
- package/dist/core/ComponentRegistry.d.ts +1 -125
- package/dist/core/DataAdapter.d.ts +4 -89
- package/dist/core/DiagnosticService.d.ts +15 -0
- package/dist/core/EditorCore.d.ts +22 -212
- package/dist/core/EditorWorkspace.d.ts +111 -0
- package/dist/core/EventBus.d.ts +0 -86
- package/dist/core/ExplorerTreeStore.d.ts +43 -0
- package/dist/core/FieldCapabilityRegistry.d.ts +16 -0
- package/dist/core/FieldChangeRegistry.d.ts +48 -0
- package/dist/core/HistoryManager.d.ts +0 -123
- package/dist/core/I18nManager.d.ts +0 -120
- package/dist/core/Optimizations.d.ts +0 -14
- package/dist/core/OptionSourceRegistry.d.ts +38 -0
- package/dist/core/RuleChainChatManager.d.ts +0 -37
- package/dist/core/RuleChainValidator.d.ts +0 -79
- package/dist/core/StateStore.d.ts +4 -140
- package/dist/core/ThemeManager.d.ts +0 -141
- package/dist/core/ValidationEngine.d.ts +0 -103
- package/dist/core/component-palette.d.ts +20 -0
- package/dist/core/component-payload.d.ts +0 -9
- package/dist/core/connection-status.d.ts +77 -0
- package/dist/core/context-menu-position.d.ts +27 -0
- package/dist/core/cron-schedule.d.ts +85 -0
- package/dist/core/debug-panel.d.ts +6 -0
- package/dist/core/editor-capabilities.d.ts +95 -0
- package/dist/core/editor-dock.d.ts +100 -0
- package/dist/core/editor-panel.d.ts +68 -0
- package/dist/core/explorer-tree.d.ts +27 -0
- package/dist/core/field-protocol.d.ts +32 -0
- package/dist/core/foundation-tokens.d.ts +38 -0
- package/dist/core/graph-operations.d.ts +34 -0
- package/dist/core/hover-tools.d.ts +26 -0
- package/dist/core/index.d.ts +68 -16
- package/dist/core/infer-run-input.d.ts +11 -0
- package/dist/core/key-value-editor.d.ts +6 -0
- package/dist/core/overlay-layers.d.ts +28 -0
- package/dist/core/recent-components.d.ts +51 -0
- package/dist/core/run-guard.d.ts +7 -0
- package/dist/core/runtime-field-dictionary.d.ts +68 -0
- package/dist/core/runtime-limits.d.ts +0 -5
- package/dist/core/save-conflict.d.ts +4 -0
- package/dist/core/server-status.d.ts +34 -0
- package/dist/core/simple-array.d.ts +4 -0
- package/dist/core/table-protocol.d.ts +36 -0
- package/dist/core/table-spreadsheet.d.ts +3 -0
- package/dist/core/test-cases.d.ts +54 -0
- package/dist/core/toolbar-icons.d.ts +4 -0
- package/dist/core/topology-rules.d.ts +17 -0
- package/dist/core/virtual-window.d.ts +20 -0
- package/dist/core/workspace-tab-actions.d.ts +13 -0
- package/dist/defaults/components.d.ts +0 -9
- package/dist/defaults/index.d.ts +0 -15
- package/dist/defaults/locale-en-US.d.ts +0 -24
- package/dist/defaults/locale-zh-CN.d.ts +0 -39
- package/dist/defaults/official-component-fallbacks.d.ts +0 -8
- package/dist/extensions/ClipboardExtension.d.ts +0 -23
- package/dist/extensions/KeyboardExtension.d.ts +0 -17
- package/dist/extensions/MenuExtension.d.ts +0 -23
- package/dist/iconRegistry.d.ts +0 -22
- package/dist/index.cjs +11320 -0
- package/dist/index.d.ts +25 -47
- package/dist/index.esm.js +1123 -99614
- package/dist/index.umd.js +3380 -1471
- package/dist/models/BaseNodeModel.d.ts +0 -32
- package/dist/models/index.d.ts +0 -1
- package/dist/nodes/AgentOrchestrationNode.d.ts +0 -24
- package/dist/nodes/GroupNode.d.ts +0 -38
- package/dist/nodes/HeadlessHtmlNode.d.ts +0 -16
- package/dist/nodes/SwitchNode.d.ts +0 -22
- package/dist/nodes/UnknownNodeModel.d.ts +0 -19
- package/dist/standalone/HuanbanRulegoEditor.d.ts +202 -401
- package/dist/standalone/ai-model-policy.d.ts +0 -1
- package/dist/standalone/ai-providers.d.ts +0 -1
- package/dist/standalone/auth-fetch.d.ts +2 -46
- package/dist/standalone/browser-assets.d.ts +0 -8
- package/dist/standalone/canvas-view.d.ts +6 -0
- package/dist/standalone/code-editor-language-loaders.d.ts +2 -0
- package/dist/standalone/code-editor-language-loaders.legacy.d.ts +7 -0
- package/dist/standalone/code-editor.d.ts +3 -87
- package/dist/standalone/connection-status-binding.d.ts +8 -0
- package/dist/standalone/custom-nodes.d.ts +0 -26
- package/dist/standalone/drawer-unsaved-guard.d.ts +2 -9
- package/dist/standalone/edge-label-quick-editor.d.ts +2 -0
- package/dist/standalone/editor-actions.d.ts +4 -0
- package/dist/standalone/editor-chain-info.d.ts +5 -38
- package/dist/standalone/editor-context-menu.d.ts +0 -21
- package/dist/standalone/editor-debug-ws.d.ts +37 -145
- package/dist/standalone/editor-delete.d.ts +0 -1
- package/dist/standalone/editor-dialogs.d.ts +16 -66
- package/dist/standalone/editor-events.d.ts +0 -27
- package/dist/standalone/editor-overlays.d.ts +14 -0
- package/dist/standalone/editor-property-drawers.d.ts +13 -71
- package/dist/standalone/editor-route-settings.d.ts +7 -55
- package/dist/standalone/editor-sidebar.d.ts +0 -18
- package/dist/standalone/editor-styles.d.ts +0 -11
- package/dist/standalone/editor-toast.d.ts +1 -2
- package/dist/standalone/editor-toolbar.d.ts +5 -80
- package/dist/standalone/editor-tour.d.ts +7 -0
- package/dist/standalone/editor-trace-overlay.d.ts +0 -5
- package/dist/standalone/full-json-dialog.d.ts +5 -1
- package/dist/standalone/group-node.d.ts +1 -51
- package/dist/standalone/icon-utils.d.ts +0 -20
- package/dist/standalone/index.d.ts +10 -7
- package/dist/standalone/json-diff.d.ts +0 -1
- package/dist/standalone/keyboard-events.d.ts +0 -1
- package/dist/standalone/layout-scheduler.d.ts +0 -6
- package/dist/standalone/lifecycle.d.ts +0 -5
- package/dist/standalone/logger.d.ts +0 -32
- package/dist/standalone/models-dev-catalog.d.ts +0 -1
- package/dist/standalone/node-copy.d.ts +7 -4
- package/dist/standalone/node-definitions.d.ts +0 -63
- package/dist/standalone/node-identity.d.ts +0 -1
- package/dist/standalone/node-theme.d.ts +8 -0
- package/dist/standalone/node-views-data.d.ts +0 -20
- package/dist/standalone/official-node-view-patches.d.ts +1 -14
- package/dist/standalone/outline-style.d.ts +7 -0
- package/dist/standalone/run-history-format.d.ts +0 -1
- package/dist/standalone/security-utils.d.ts +1 -5
- package/dist/standalone/shared-node-manager.d.ts +31 -0
- package/dist/standalone/themes.d.ts +0 -48
- package/dist/tools/tool-editor.d.ts +0 -1
- package/dist/types/component.d.ts +105 -87
- package/dist/types/editor.d.ts +16 -169
- package/dist/types/events.d.ts +30 -107
- package/dist/types/index.d.ts +3 -10
- package/dist/types/rule-chain.d.ts +0 -90
- package/dist/utils/GraphUtils.d.ts +0 -10
- package/dist/utils/helpers.d.ts +0 -80
- package/dist/utils/index.d.ts +0 -5
- package/dist/utils/pinyin-search.d.ts +0 -57
- package/dist/utils/relation-utils.d.ts +0 -1
- package/dist/utils/textUtils.d.ts +0 -12
- package/dist/version.d.ts +2 -3
- package/dist/xlsx-qn1xoUuv.cjs +105 -0
- package/package.json +19 -5
- package/vite-chunks.d.ts +11 -0
- package/vite-chunks.mjs +120 -0
- package/dist/index.cjs.js +0 -9515
|
@@ -0,0 +1,1288 @@
|
|
|
1
|
+
import { O as i } from "./editor-core-node-patches-BJTT3TuX.js";
|
|
2
|
+
const e = (l = []) => ({
|
|
3
|
+
type: "select",
|
|
4
|
+
filterable: !0,
|
|
5
|
+
allowCreate: !0,
|
|
6
|
+
multiple: !1,
|
|
7
|
+
...l.length ? { options: l } : {}
|
|
8
|
+
}), d = (l = []) => ({
|
|
9
|
+
type: "select",
|
|
10
|
+
filterable: !0,
|
|
11
|
+
allowCreate: !1,
|
|
12
|
+
multiple: !1,
|
|
13
|
+
options: l
|
|
14
|
+
});
|
|
15
|
+
function b(l) {
|
|
16
|
+
return !!l && typeof l == "object" && !Array.isArray(l);
|
|
17
|
+
}
|
|
18
|
+
function o(l, t) {
|
|
19
|
+
const a = { ...l };
|
|
20
|
+
for (const [s, c] of Object.entries(t || {}))
|
|
21
|
+
b(a[s]) && b(c) ? a[s] = o(a[s], c) : a[s] = c;
|
|
22
|
+
return a;
|
|
23
|
+
}
|
|
24
|
+
function r(l, t) {
|
|
25
|
+
const a = { ...l };
|
|
26
|
+
for (const [s, c] of Object.entries(t || {}))
|
|
27
|
+
a[s] = o(a[s] || {}, c);
|
|
28
|
+
return a;
|
|
29
|
+
}
|
|
30
|
+
const n = {
|
|
31
|
+
delay: {
|
|
32
|
+
label: "延迟",
|
|
33
|
+
icon: "images/delay.svg",
|
|
34
|
+
desc: "延迟指定时间后发送消息",
|
|
35
|
+
periodInSeconds: { label: "延迟时间(秒)", desc: "" },
|
|
36
|
+
maxPendingMsgs: { label: "最大允许挂起消息的数量", desc: "" },
|
|
37
|
+
periodInSecondsPattern: { label: "延迟时间表达式(秒)", desc: "通过${metadataKey}方式从metadata变量中获取,延迟时间,如果该值有值,优先取该值。" },
|
|
38
|
+
delayMs: { label: "延迟时间(毫秒)", desc: "" },
|
|
39
|
+
overwrite: { label: "覆盖已有延迟", desc: "" }
|
|
40
|
+
},
|
|
41
|
+
exec: {
|
|
42
|
+
label: "命令行",
|
|
43
|
+
icon: "images/exec.svg",
|
|
44
|
+
desc: "执行系统命令",
|
|
45
|
+
cmd: { label: "命令", desc: "要执行的系统命令" },
|
|
46
|
+
args: { label: "参数列表", desc: "命令参数" },
|
|
47
|
+
log: { label: "打印日志", desc: "" },
|
|
48
|
+
replaceData: { label: "替换消息数据", desc: "" }
|
|
49
|
+
},
|
|
50
|
+
fetchNodeOutput: {
|
|
51
|
+
label: "取回节点输出",
|
|
52
|
+
icon: "images/fetchNodeOutput.svg",
|
|
53
|
+
desc: "获取指定节点的输出数据",
|
|
54
|
+
nodeId: { label: "目标节点", desc: "选择要获取输出的目标节点", component: e() }
|
|
55
|
+
},
|
|
56
|
+
functions: {
|
|
57
|
+
label: "函数",
|
|
58
|
+
icon: "images/function.svg",
|
|
59
|
+
functionName: { label: "函数名称", desc: "" },
|
|
60
|
+
param: { label: "参数", desc: "" }
|
|
61
|
+
},
|
|
62
|
+
log: {
|
|
63
|
+
label: "日志",
|
|
64
|
+
icon: "images/log.svg",
|
|
65
|
+
desc: "打印日志",
|
|
66
|
+
jsScript: { label: "function String(msg, metadata, msgType) {", desc: "}" }
|
|
67
|
+
}
|
|
68
|
+
}, m = {
|
|
69
|
+
break: { label: "中断", icon: "images/break.svg", desc: "中断当前流程" },
|
|
70
|
+
comment: { label: "注释", icon: "images/comment.svg", desc: "添加注释说明" },
|
|
71
|
+
end: { label: "结束", icon: "images/end.svg", desc: "结束当前流程" },
|
|
72
|
+
for: {
|
|
73
|
+
label: "循环",
|
|
74
|
+
icon: "images/for.svg",
|
|
75
|
+
desc: "循环遍历执行",
|
|
76
|
+
range: { label: "遍历范围", desc: "" },
|
|
77
|
+
do: { label: "执行动作", desc: "" },
|
|
78
|
+
mode: { label: "执行模式", component: e([
|
|
79
|
+
{ label: "同步不合并执行结果", value: 0 },
|
|
80
|
+
{ label: "同步合并执行结果", value: 1 },
|
|
81
|
+
{ label: "同步覆盖执行结果", value: 2 },
|
|
82
|
+
{ label: "异步不合并执行结果", value: 3 }
|
|
83
|
+
]) }
|
|
84
|
+
},
|
|
85
|
+
fork: { label: "并行分支", icon: "images/fork.svg", desc: "并行分叉执行多个分支" },
|
|
86
|
+
groupAction: {
|
|
87
|
+
label: "节点组",
|
|
88
|
+
desc: "异步执行多个节点,把所有节点结果合并,发送到下一个节点",
|
|
89
|
+
icon: "images/groupAction.svg",
|
|
90
|
+
nodeIds: { label: "组内节点ID,多个与','隔开", desc: "" },
|
|
91
|
+
timeout: { label: "组内执行超时,单位秒,默认0", desc: "默认0,代表不超时" },
|
|
92
|
+
matchRelationType: { label: "匹配关系类型", desc: "" },
|
|
93
|
+
matchNum: { label: "匹配数量", desc: "" },
|
|
94
|
+
mergeToMap: { label: "合并为Map", desc: "" }
|
|
95
|
+
},
|
|
96
|
+
inclusive: {
|
|
97
|
+
label: "包容分支",
|
|
98
|
+
icon: "images/inclusive.svg",
|
|
99
|
+
desc: "将消息同时路由到所有匹配的关系;如果无任何匹配,则路由到默认的 Default 关系。",
|
|
100
|
+
cases: { label: "条件列表", desc: "按顺序匹配条件,所有满足的条件都会独立执行后续链路;若全部不满足则走 Default 链。", component: { type: "switchNode", caseType: "expr" } },
|
|
101
|
+
relationTypeDynamics: !0
|
|
102
|
+
},
|
|
103
|
+
join: {
|
|
104
|
+
label: "合并",
|
|
105
|
+
icon: "images/join.svg",
|
|
106
|
+
desc: "合并多个分支的结果",
|
|
107
|
+
timeout: { label: "超时时间(秒)", desc: "" },
|
|
108
|
+
mergeToMap: { label: "合并为Map", desc: "" }
|
|
109
|
+
},
|
|
110
|
+
ref: {
|
|
111
|
+
label: "节点引用",
|
|
112
|
+
icon: "images/ref.svg",
|
|
113
|
+
desc: "引用其他节点",
|
|
114
|
+
targetId: { label: "目标节点ID", desc: "" },
|
|
115
|
+
tellChain: { label: "告知规则链", desc: "" }
|
|
116
|
+
},
|
|
117
|
+
switch: {
|
|
118
|
+
label: "条件分支",
|
|
119
|
+
icon: "images/switch.svg",
|
|
120
|
+
desc: "根据条件选择分支",
|
|
121
|
+
cases: { label: "条件列表", desc: "按顺序匹配条件,仅执行第一条满足的后续链路;若全部不满足则走 Default 链。", component: { type: "switchNode", caseType: "expr" } },
|
|
122
|
+
relationTypeDynamics: !0
|
|
123
|
+
},
|
|
124
|
+
while: {
|
|
125
|
+
label: "While循环",
|
|
126
|
+
icon: "images/while.svg",
|
|
127
|
+
desc: "While循环",
|
|
128
|
+
condition: { label: "循环条件", desc: "例如: msg.count==nil || msg.count< 5", component: { type: "expr" } },
|
|
129
|
+
do: { label: "处理节点", desc: "处理链的起始节点", component: d() },
|
|
130
|
+
mode: { label: "执行模式", component: e([
|
|
131
|
+
{ label: "同步不合并执行结果", value: 0 },
|
|
132
|
+
{ label: "同步合并执行结果", value: 1 },
|
|
133
|
+
{ label: "同步覆盖执行结果", value: 2 },
|
|
134
|
+
{ label: "异步不合并执行结果", value: 3 }
|
|
135
|
+
]) }
|
|
136
|
+
},
|
|
137
|
+
iterator: {
|
|
138
|
+
label: "迭代器",
|
|
139
|
+
icon: "images/for.svg",
|
|
140
|
+
desc: "兼容旧版 iterator 节点,建议新链使用循环节点。",
|
|
141
|
+
fieldName: { label: "字段名", desc: "" },
|
|
142
|
+
jsScript: { label: "迭代脚本", desc: "" }
|
|
143
|
+
}
|
|
144
|
+
}, p = {
|
|
145
|
+
exprFilter: {
|
|
146
|
+
label: "表达式过滤",
|
|
147
|
+
icon: "images/exprFilter.svg",
|
|
148
|
+
desc: "使用表达式过滤消息",
|
|
149
|
+
expr: { label: "过滤表达式", desc: "返回 bool 的表达式" }
|
|
150
|
+
},
|
|
151
|
+
fieldFilter: {
|
|
152
|
+
label: "字段过滤",
|
|
153
|
+
checkAllKeys: { label: "是否满足需要所有字段key存在", desc: "" },
|
|
154
|
+
dataNames: { label: "msg data字段key", desc: "多个与逗号隔开" },
|
|
155
|
+
metadataNames: { label: "metadata字段key", desc: "多个与逗号隔开" }
|
|
156
|
+
},
|
|
157
|
+
groupFilter: {
|
|
158
|
+
label: "过滤器组",
|
|
159
|
+
icon: "images/groupFilter.svg",
|
|
160
|
+
allMatches: { label: "是否需要全匹配", desc: "" },
|
|
161
|
+
nodeIds: { label: "组内节点ID,多个与','隔开", desc: "" },
|
|
162
|
+
timeout: { label: "组内执行超时,单位秒,默认0", desc: "默认0,代表不超时" }
|
|
163
|
+
},
|
|
164
|
+
jsFilter: {
|
|
165
|
+
label: "JS过滤",
|
|
166
|
+
icon: "images/jsFilter.svg",
|
|
167
|
+
jsScript: { label: "function Filter(msg, metadata, msgType) {", desc: "}" }
|
|
168
|
+
},
|
|
169
|
+
jsSwitch: {
|
|
170
|
+
label: "JS路由",
|
|
171
|
+
icon: "images/switch.svg",
|
|
172
|
+
jsScript: { label: "function Switch(msg, metadata, msgType) {", desc: "}" }
|
|
173
|
+
},
|
|
174
|
+
msgTypeSwitch: { label: "消息路由", icon: "images/msgTypeSwitch.svg", desc: "根据消息类型路由" },
|
|
175
|
+
"x/luaFilter": {
|
|
176
|
+
label: "Lua过滤",
|
|
177
|
+
icon: "images/luaFilter.svg",
|
|
178
|
+
desc: "使用Lua脚本过滤消息",
|
|
179
|
+
script: { label: "Lua脚本", desc: "" }
|
|
180
|
+
}
|
|
181
|
+
}, g = {
|
|
182
|
+
exprTransform: {
|
|
183
|
+
label: "表达式转换",
|
|
184
|
+
icon: "images/exprTransform.svg",
|
|
185
|
+
desc: "使用表达式转换消息",
|
|
186
|
+
expr: { label: "转换表达式", desc: "" },
|
|
187
|
+
mapping: { label: "字段映射", desc: "" }
|
|
188
|
+
},
|
|
189
|
+
jsTransform: {
|
|
190
|
+
label: "JS转换",
|
|
191
|
+
jsScript: { label: "function Transform(msg, metadata, msgType) {", desc: "}" }
|
|
192
|
+
},
|
|
193
|
+
metadataTransform: {
|
|
194
|
+
label: "元数据转换",
|
|
195
|
+
icon: "images/metadataTransform.svg",
|
|
196
|
+
desc: "转换消息元数据",
|
|
197
|
+
mapping: { label: "字段映射", desc: "" },
|
|
198
|
+
isNew: { label: "是否替换全部元数据", desc: "" }
|
|
199
|
+
},
|
|
200
|
+
"text/template": {
|
|
201
|
+
label: "模板转换",
|
|
202
|
+
icon: "images/textTemplate.svg",
|
|
203
|
+
desc: "使用Go模板转换消息",
|
|
204
|
+
template: { label: "模板内容", desc: "" }
|
|
205
|
+
},
|
|
206
|
+
"x/luaTransform": {
|
|
207
|
+
label: "Lua转换",
|
|
208
|
+
icon: "images/luaTransform.svg",
|
|
209
|
+
desc: "使用Lua脚本转换消息",
|
|
210
|
+
script: { label: "Lua脚本", desc: "" }
|
|
211
|
+
}
|
|
212
|
+
}, u = {
|
|
213
|
+
cacheDelete: {
|
|
214
|
+
label: "缓存删除",
|
|
215
|
+
icon: "images/cacheDelete.svg",
|
|
216
|
+
desc: "从缓存中删除数据",
|
|
217
|
+
keys: { label: "缓存键列表", desc: "多个缓存键" }
|
|
218
|
+
},
|
|
219
|
+
cacheGet: {
|
|
220
|
+
label: "缓存读取",
|
|
221
|
+
icon: "images/cacheGet.svg",
|
|
222
|
+
desc: "从缓存中读取数据",
|
|
223
|
+
keys: { label: "缓存键列表", desc: "多个缓存键" },
|
|
224
|
+
outputMode: { label: "输出模式", desc: "" },
|
|
225
|
+
whenKeyNotFound: { label: "键不存在时", desc: "缓存键不存在时的处理策略" }
|
|
226
|
+
},
|
|
227
|
+
cacheSet: {
|
|
228
|
+
label: "缓存写入",
|
|
229
|
+
icon: "images/cacheSet.svg",
|
|
230
|
+
desc: "向缓存中写入数据",
|
|
231
|
+
items: { label: "缓存项列表", desc: "" }
|
|
232
|
+
},
|
|
233
|
+
dbClient: {
|
|
234
|
+
label: "数据库",
|
|
235
|
+
icon: "images/db.svg",
|
|
236
|
+
sql: { label: "SQL语句", desc: "可以使用 ${metaKeyName} 替换元数据中的变量" },
|
|
237
|
+
params: { label: "参数列表", desc: "可以使用 ${metaKeyName} 替换元数据中的变量" },
|
|
238
|
+
getOne: { label: "返回一条记录", desc: "" },
|
|
239
|
+
opType: { label: "操作类型", desc: "query/insert/update/delete 等数据库操作类型" },
|
|
240
|
+
poolSize: { label: "连接池大小", desc: "" },
|
|
241
|
+
driverName: { label: "数据库驱动名称", desc: "mysql或postgres", component: e([{ label: "mysql", value: "mysql" }, { label: "postgres", value: "postgres" }]) },
|
|
242
|
+
dsn: { ref: "primary", label: "数据库连接", desc: "Mysql配置示例: username:password@tcp(127.0.0.1:3306)/db Postgres配置示例:postgres://username:password@127.0.0.1:5432/db?sslmode=disable", component: e() }
|
|
243
|
+
},
|
|
244
|
+
mqttClient: {
|
|
245
|
+
label: "MQTT发布者",
|
|
246
|
+
icon: "images/mqtt.svg",
|
|
247
|
+
topic: { label: "发布主题", desc: "可以使用 ${metaKeyName} 替换元数据中的变量" },
|
|
248
|
+
server: { ref: "primary", label: "MQTT 服务器地址", desc: "示例: 127.0.0.1:1883 。允许选择连接池进行连接", component: e() },
|
|
249
|
+
username: { label: "用户名", desc: "" },
|
|
250
|
+
password: { label: "密码", desc: "" },
|
|
251
|
+
maxReconnectInterval: { label: "重连间隔,单位秒", desc: "" },
|
|
252
|
+
qos: { label: "QoS", desc: "" },
|
|
253
|
+
cleanSession: { label: "清除会话", desc: "" },
|
|
254
|
+
clientId: { label: "客户端ID", desc: "" },
|
|
255
|
+
caFile: { label: "CA证书文件", desc: "" },
|
|
256
|
+
certFile: { label: "客户端证书文件", desc: "" },
|
|
257
|
+
certKeyFile: { label: "客户端密钥文件", desc: "" }
|
|
258
|
+
},
|
|
259
|
+
net: {
|
|
260
|
+
label: "TCP/UDP",
|
|
261
|
+
icon: "images/net.svg",
|
|
262
|
+
protocol: { label: "协议", desc: "tcp/udp" },
|
|
263
|
+
server: { ref: "primary", label: "服务地址", desc: "" },
|
|
264
|
+
connectTimeout: { label: "连接超时,单位秒,默认60", desc: "" },
|
|
265
|
+
heartbeatInterval: { label: "心跳间隔,单位秒,默认60", desc: "" }
|
|
266
|
+
},
|
|
267
|
+
sendEmail: {
|
|
268
|
+
label: "发邮件",
|
|
269
|
+
icon: "images/email.svg",
|
|
270
|
+
desc: "发送电子邮件",
|
|
271
|
+
smtpHost: { label: "SMTP主机", desc: "" },
|
|
272
|
+
smtpPort: { label: "SMTP端口", desc: "" },
|
|
273
|
+
username: { label: "用户名", desc: "" },
|
|
274
|
+
password: { label: "密码", desc: "" },
|
|
275
|
+
enableTls: { label: "开启TLS", desc: "" },
|
|
276
|
+
connectTimeout: { label: "连接超时(秒)", desc: "" },
|
|
277
|
+
email: { label: "邮件内容", desc: "" }
|
|
278
|
+
},
|
|
279
|
+
ssh: {
|
|
280
|
+
label: "SSH",
|
|
281
|
+
icon: "images/ssh.svg",
|
|
282
|
+
desc: "执行SSH命令",
|
|
283
|
+
host: { label: "ssh主机地址", desc: "" },
|
|
284
|
+
port: { label: "ssh主机端口", desc: "" },
|
|
285
|
+
username: { label: "ssh登录用户名", desc: "" },
|
|
286
|
+
password: { label: "ssh登录密码", desc: "" },
|
|
287
|
+
cmd: { label: "shell命令", desc: "可以使用 ${metaKeyName} 替换元数据中的变量" }
|
|
288
|
+
},
|
|
289
|
+
restApiCall: {
|
|
290
|
+
label: "HTTP客户端",
|
|
291
|
+
icon: "images/rest.svg",
|
|
292
|
+
desc: "HTTP REST请求",
|
|
293
|
+
restEndpointUrlPattern: { label: "HTTP URL地址", desc: "可以使用 ${metaKeyName} 替换元数据中的变量" },
|
|
294
|
+
requestMethod: { label: "请求方法", desc: "POST/GET/DELETE/PUT/PATCH/HEAD" },
|
|
295
|
+
headers: { label: "请求头", desc: "可以使用 ${metaKeyName} 替换元数据中的变量" },
|
|
296
|
+
readTimeoutMs: { label: "超时,单位毫秒。默认:0", desc: "0代表不超时" },
|
|
297
|
+
maxParallelRequestsCount: { label: "最大并发大小", desc: "0代表不限制" },
|
|
298
|
+
enableProxy: { label: "开启代理", desc: "" },
|
|
299
|
+
useSystemProxyProperties: { label: "使用系统代理配置", desc: "" },
|
|
300
|
+
proxyScheme: { label: "代理协议", desc: "" },
|
|
301
|
+
proxyHost: { label: "代理主机", desc: "" },
|
|
302
|
+
proxyPort: { label: "代理端口", desc: "" },
|
|
303
|
+
proxyUser: { label: "用户名", desc: "" },
|
|
304
|
+
proxyPassword: { label: "密码", desc: "" },
|
|
305
|
+
withoutRequestBody: { label: "不发送请求体", desc: "" },
|
|
306
|
+
body: { label: "请求体", desc: "", component: { type: "codeEditor" } },
|
|
307
|
+
insecureSkipVerify: { label: "跳过证书验证", desc: "" }
|
|
308
|
+
},
|
|
309
|
+
"x/fileDelete": {
|
|
310
|
+
label: "文件删除",
|
|
311
|
+
icon: "images/file.svg",
|
|
312
|
+
desc: "删除文件",
|
|
313
|
+
path: { label: "文件路径", desc: "" }
|
|
314
|
+
},
|
|
315
|
+
"x/fileList": {
|
|
316
|
+
label: "文件列表",
|
|
317
|
+
icon: "images/file.svg",
|
|
318
|
+
desc: "列出目录下文件",
|
|
319
|
+
path: { label: "目录路径", desc: "" },
|
|
320
|
+
recursive: { label: "递归查找", desc: "" }
|
|
321
|
+
},
|
|
322
|
+
"x/fileRead": {
|
|
323
|
+
label: "文件读取",
|
|
324
|
+
icon: "images/file.svg",
|
|
325
|
+
desc: "读取文件内容",
|
|
326
|
+
path: { label: "文件路径", desc: "" },
|
|
327
|
+
dataType: { label: "数据类型", desc: "" },
|
|
328
|
+
recursive: { label: "递归查找", desc: "" }
|
|
329
|
+
},
|
|
330
|
+
"x/fileWrite": {
|
|
331
|
+
label: "文件写入",
|
|
332
|
+
icon: "images/file.svg",
|
|
333
|
+
desc: "写入文件内容",
|
|
334
|
+
path: { label: "文件路径", desc: "" },
|
|
335
|
+
content: { label: "写入内容", desc: "" },
|
|
336
|
+
append: { label: "追加写入", desc: "" }
|
|
337
|
+
},
|
|
338
|
+
"x/grpcClient": {
|
|
339
|
+
label: "gRPC 客户端",
|
|
340
|
+
icon: "images/grpc.svg",
|
|
341
|
+
desc: "gRPC远程调用",
|
|
342
|
+
server: { ref: "primary", label: "服务器地址", desc: "", component: e() },
|
|
343
|
+
service: { label: "服务名", desc: "" },
|
|
344
|
+
method: { label: "方法名", desc: "" },
|
|
345
|
+
request: { label: "请求体", desc: "" },
|
|
346
|
+
headers: { label: "请求头", desc: "" }
|
|
347
|
+
},
|
|
348
|
+
"x/kafkaProducer": {
|
|
349
|
+
label: "Kafka发布者",
|
|
350
|
+
icon: "images/kafka.svg",
|
|
351
|
+
desc: "Kafka消息生产",
|
|
352
|
+
server: { ref: "primary", label: "服务器地址", desc: "" },
|
|
353
|
+
topic: { label: "发布主题", desc: "可以使用 ${metaKeyName} 替换元数据中的变量" },
|
|
354
|
+
key: { label: "分区键", desc: "可以使用 ${metaKeyName} 替换元数据中的变量" },
|
|
355
|
+
partition: { label: "分区编号", desc: "" },
|
|
356
|
+
sasl: { label: "SASL认证", desc: "" },
|
|
357
|
+
tls: { label: "TLS配置", desc: "" }
|
|
358
|
+
},
|
|
359
|
+
"x/mongodbClient": {
|
|
360
|
+
label: "MongoDB",
|
|
361
|
+
icon: "images/mongodb.svg",
|
|
362
|
+
desc: "MongoDB数据库操作",
|
|
363
|
+
server: { ref: "primary", label: "服务器地址", desc: "", component: e() },
|
|
364
|
+
database: { label: "数据库名", desc: "" },
|
|
365
|
+
collection: { label: "集合名", desc: "" },
|
|
366
|
+
opType: { label: "操作类型", desc: "find/insertOne/updateOne/deleteOne" },
|
|
367
|
+
filter: { label: "查询条件", desc: "" },
|
|
368
|
+
doc: { label: "文档内容", desc: "" },
|
|
369
|
+
one: { label: "仅返回一条", desc: "" }
|
|
370
|
+
},
|
|
371
|
+
"x/natsClient": {
|
|
372
|
+
label: "NATS",
|
|
373
|
+
icon: "images/nats.svg",
|
|
374
|
+
desc: "NATS消息队列",
|
|
375
|
+
server: { ref: "primary", label: "服务器地址", desc: "", component: e() },
|
|
376
|
+
username: { label: "用户名", desc: "" },
|
|
377
|
+
password: { label: "密码", desc: "" },
|
|
378
|
+
topic: { label: "主题", desc: "" }
|
|
379
|
+
},
|
|
380
|
+
"x/nsqClient": {
|
|
381
|
+
label: "NSQ发布者",
|
|
382
|
+
icon: "images/nsq.svg",
|
|
383
|
+
desc: "NSQ消息队列",
|
|
384
|
+
server: { ref: "primary", label: "服务器地址", desc: "", component: e() },
|
|
385
|
+
topic: { label: "主题", desc: "" },
|
|
386
|
+
authToken: { label: "认证Token", desc: "" },
|
|
387
|
+
certFile: { label: "证书文件", desc: "" },
|
|
388
|
+
certKeyFile: { label: "密钥文件", desc: "" }
|
|
389
|
+
},
|
|
390
|
+
"x/opengeminiQuery": {
|
|
391
|
+
label: "opengemini读",
|
|
392
|
+
icon: "images/opengemini.svg",
|
|
393
|
+
desc: "OpenGemini时序数据库查询",
|
|
394
|
+
server: { ref: "primary", label: "服务器地址", desc: "", component: e() },
|
|
395
|
+
database: { label: "数据库名", desc: "" },
|
|
396
|
+
username: { label: "用户名", desc: "" },
|
|
397
|
+
password: { label: "密码", desc: "" },
|
|
398
|
+
token: { label: "访问Token", desc: "" },
|
|
399
|
+
command: { label: "查询命令", desc: "" }
|
|
400
|
+
},
|
|
401
|
+
"x/opengeminiWrite": {
|
|
402
|
+
label: "opengemini写",
|
|
403
|
+
icon: "images/opengemini.svg",
|
|
404
|
+
desc: "OpenGemini时序数据库写入",
|
|
405
|
+
server: { ref: "primary", label: "服务器地址", desc: "", component: e() },
|
|
406
|
+
database: { label: "数据库名", desc: "" },
|
|
407
|
+
username: { label: "用户名", desc: "" },
|
|
408
|
+
password: { label: "密码", desc: "" },
|
|
409
|
+
token: { label: "访问Token", desc: "" }
|
|
410
|
+
},
|
|
411
|
+
"x/otel": {
|
|
412
|
+
label: "OpenTelemetry",
|
|
413
|
+
icon: "images/otel.svg",
|
|
414
|
+
desc: "遥测数据推送",
|
|
415
|
+
server: { ref: "primary", label: "服务器地址", desc: "", component: e() },
|
|
416
|
+
protocol: { label: "协议", desc: "" },
|
|
417
|
+
metricExpr: { label: "指标表达式", desc: "" },
|
|
418
|
+
metrics: { label: "指标列表", desc: "" }
|
|
419
|
+
},
|
|
420
|
+
"x/pulsarClient": {
|
|
421
|
+
label: "Pulsar发布者",
|
|
422
|
+
icon: "images/pulsar.svg",
|
|
423
|
+
desc: "Pulsar消息队列",
|
|
424
|
+
server: { ref: "primary", label: "服务器地址", desc: "", component: e() },
|
|
425
|
+
topic: { label: "主题", desc: "" },
|
|
426
|
+
key: { label: "消息键", desc: "" },
|
|
427
|
+
headers: { label: "消息头", desc: "" },
|
|
428
|
+
authToken: { label: "认证Token", desc: "" },
|
|
429
|
+
certFile: { label: "证书文件", desc: "" },
|
|
430
|
+
certKeyFile: { label: "密钥文件", desc: "" }
|
|
431
|
+
},
|
|
432
|
+
"x/rabbitmqClient": {
|
|
433
|
+
label: "RabbitMQ",
|
|
434
|
+
icon: "images/rabbitmq.svg",
|
|
435
|
+
desc: "RabbitMQ消息队列",
|
|
436
|
+
server: { ref: "primary", label: "服务器地址", desc: "amqp://user:pass@host:port/", component: e() },
|
|
437
|
+
key: { label: "路由键", desc: "" },
|
|
438
|
+
exchange: { label: "交换机", desc: "" },
|
|
439
|
+
exchangeType: { label: "交换机类型", desc: "direct/fanout/topic/headers" },
|
|
440
|
+
durable: { label: "持久化", desc: "" },
|
|
441
|
+
autoDelete: { label: "自动删除", desc: "" }
|
|
442
|
+
},
|
|
443
|
+
"x/redisClient": {
|
|
444
|
+
label: "Redis",
|
|
445
|
+
icon: "images/redis.svg",
|
|
446
|
+
desc: "Redis数据操作",
|
|
447
|
+
server: { ref: "primary", label: "Redis服务地址", desc: "示例: 127.0.0.1:6379", component: e() },
|
|
448
|
+
password: { label: "密码", desc: "" },
|
|
449
|
+
db: { label: "数据库编号", desc: "" },
|
|
450
|
+
poolSize: { label: "连接池大小", desc: "" },
|
|
451
|
+
cmd: { label: "执行命令,例如SET/GET/DEL", desc: "可以使用${}占位符读取metadata元数据" },
|
|
452
|
+
params: { label: "参数列表", desc: "可以使用${}占位符读取metadata元数据" }
|
|
453
|
+
},
|
|
454
|
+
"x/redisPub": {
|
|
455
|
+
label: "Redis发布者",
|
|
456
|
+
icon: "images/redisPub.svg",
|
|
457
|
+
desc: "Redis Pub/Sub发布消息",
|
|
458
|
+
server: { ref: "primary", label: "Redis服务地址", desc: "示例: 127.0.0.1:6379", component: e() },
|
|
459
|
+
password: { label: "密码", desc: "" },
|
|
460
|
+
poolSize: { label: "连接池大小", desc: "" },
|
|
461
|
+
db: { label: "数据库编号", desc: "" },
|
|
462
|
+
channel: { label: "频道名称", desc: "" }
|
|
463
|
+
},
|
|
464
|
+
"x/wukongimSender": {
|
|
465
|
+
label: "WuKongIM发",
|
|
466
|
+
icon: "images/wukongim.svg",
|
|
467
|
+
desc: "悟空IM消息发送",
|
|
468
|
+
server: { ref: "primary", label: "服务器地址", desc: "", component: e() },
|
|
469
|
+
uid: { label: "用户ID", desc: "" },
|
|
470
|
+
uID: { label: "用户ID", desc: "" },
|
|
471
|
+
token: { label: "认证Token", desc: "" },
|
|
472
|
+
channelType: { label: "频道类型", desc: "" },
|
|
473
|
+
channelId: { label: "频道ID", desc: "" },
|
|
474
|
+
channelID: { label: "频道ID", desc: "" },
|
|
475
|
+
connectTimeout: { label: "连接超时(秒)", desc: "" },
|
|
476
|
+
protoVersion: { label: "协议版本", desc: "" },
|
|
477
|
+
pingInterval: { label: "心跳间隔(秒)", desc: "" },
|
|
478
|
+
reconnect: { label: "自动重连", desc: "" },
|
|
479
|
+
autoAck: { label: "自动确认", desc: "" },
|
|
480
|
+
noPersist: { label: "不持久化", desc: "" },
|
|
481
|
+
syncOnce: { label: "仅同步一次", desc: "" },
|
|
482
|
+
redDot: { label: "红点提示", desc: "" },
|
|
483
|
+
noEncrypt: { label: "不加密", desc: "" }
|
|
484
|
+
},
|
|
485
|
+
"x/receiveEmail": {
|
|
486
|
+
label: "收邮件",
|
|
487
|
+
icon: "images/email.svg",
|
|
488
|
+
desc: "通过 IMAP 协议接收邮件。",
|
|
489
|
+
server: { label: "IMAP服务器地址", desc: "例如: imap.gmail.com,支持${}变量替换" },
|
|
490
|
+
port: { label: "IMAP端口", desc: "默认: 993" },
|
|
491
|
+
username: { label: "用户名", desc: "支持${}变量替换" },
|
|
492
|
+
password: { label: "密码/授权码", desc: "支持${}变量替换" },
|
|
493
|
+
enableTls: { label: "启用TLS", desc: "默认: true" },
|
|
494
|
+
connectTimeout: { label: "连接超时(秒)", desc: "默认: 10" },
|
|
495
|
+
search: { label: "搜索配置", desc: "" },
|
|
496
|
+
fetch: { label: "拉取配置", desc: "控制收取邮件正文、附件和数量限制等参数" },
|
|
497
|
+
postAction: { label: "处理后动作", desc: "拉取邮件后的标记、移动或删除动作" }
|
|
498
|
+
},
|
|
499
|
+
"x/python": {
|
|
500
|
+
label: "Python脚本",
|
|
501
|
+
icon: "images/exec.svg",
|
|
502
|
+
desc: "执行 Python 脚本处理消息。",
|
|
503
|
+
script: { label: "Python脚本", desc: "", component: { type: "codeEditor" } },
|
|
504
|
+
pythonPath: { label: "Python路径", desc: "Python解释器路径,留空使用系统默认" },
|
|
505
|
+
timeout: { label: "执行超时", desc: "脚本执行超时时间" },
|
|
506
|
+
maxRunning: { label: "最大并发数", desc: "同时运行的最大脚本数量" }
|
|
507
|
+
},
|
|
508
|
+
"x/beanstalkdWorker": {
|
|
509
|
+
label: "Beanstalkd Worker",
|
|
510
|
+
icon: "images/beanstalkd_worker.svg",
|
|
511
|
+
desc: "Beanstalkd 消费端。",
|
|
512
|
+
server: { ref: "primary", label: "Beanstalkd Server地址", desc: "示例:127.0.0.1:11300,如果流程中存在多节点操作消息并改变状态时,应使用复用连接(ref://)", component: e() },
|
|
513
|
+
tube: { label: "Tube名称", desc: "允许使用 ${} 占位符变量" },
|
|
514
|
+
cmd: { label: "命令名称", desc: "Delete Release Bury KickJob Touch Peek ReserveJob StatsJob Stats ListTubes", component: e([
|
|
515
|
+
{ label: "Delete", value: "Delete" },
|
|
516
|
+
{ label: "Release", value: "Release" },
|
|
517
|
+
{ label: "Bury", value: "Bury" },
|
|
518
|
+
{ label: "KickJob", value: "KickJob" },
|
|
519
|
+
{ label: "Touch", value: "Touch" },
|
|
520
|
+
{ label: "Peek", value: "Peek" },
|
|
521
|
+
{ label: "ReserveJob", value: "ReserveJob" },
|
|
522
|
+
{ label: "StatsJob", value: "StatsJob" },
|
|
523
|
+
{ label: "Stats", value: "Stats" },
|
|
524
|
+
{ label: "ListTubes", value: "ListTubes" }
|
|
525
|
+
]) },
|
|
526
|
+
jobId: { label: "JobId", desc: "" },
|
|
527
|
+
pri: { label: "优先级", desc: "" },
|
|
528
|
+
delay: { label: "延迟时间", desc: "" }
|
|
529
|
+
},
|
|
530
|
+
"x/beanstalkdTube": {
|
|
531
|
+
label: "Beanstalkd Tube",
|
|
532
|
+
icon: "images/beanstalkd_tube.svg",
|
|
533
|
+
desc: "Beanstalkd Tube 操作。",
|
|
534
|
+
server: { ref: "primary", label: "Beanstalkd Server地址", desc: "示例:127.0.0.1:11300,如果流程中存在多节点操作消息并改变状态时,应使用复用连接(ref://)", component: e() },
|
|
535
|
+
tube: { label: "Tube名称", desc: "允许使用 ${} 占位符变量" },
|
|
536
|
+
cmd: { label: "命令名称", desc: "Put、PeekReady、PeekDelayed、PeekBuried、Kick、Stat、Pause", component: e([
|
|
537
|
+
{ label: "Put", value: "Put" },
|
|
538
|
+
{ label: "PeekReady", value: "PeekReady" },
|
|
539
|
+
{ label: "PeekDelayed", value: "PeekDelayed" },
|
|
540
|
+
{ label: "PeekBuried", value: "PeekBuried" },
|
|
541
|
+
{ label: "Kick", value: "Kick" },
|
|
542
|
+
{ label: "Stat", value: "Stat" },
|
|
543
|
+
{ label: "Pause", value: "Pause" }
|
|
544
|
+
]) },
|
|
545
|
+
body: { label: "body", desc: "" },
|
|
546
|
+
pri: { label: "优先级", desc: "" },
|
|
547
|
+
delay: { label: "延迟时间", desc: "" },
|
|
548
|
+
ttr: { label: "Job最大执行秒数", desc: "" },
|
|
549
|
+
kickBound: { label: "唤醒的Job数量上限", desc: "" },
|
|
550
|
+
pauseTime: { label: "暂停时间", desc: "" }
|
|
551
|
+
}
|
|
552
|
+
}, v = {
|
|
553
|
+
flow: {
|
|
554
|
+
label: "子规则链",
|
|
555
|
+
targetId: { label: "子规则链ID", desc: "" },
|
|
556
|
+
extend: { label: "继承父链上下文", desc: "" }
|
|
557
|
+
},
|
|
558
|
+
simple_admission: {
|
|
559
|
+
label: "极简录取规则链",
|
|
560
|
+
icon: "images/simple_admission.svg",
|
|
561
|
+
desc: "自定义准入控制"
|
|
562
|
+
},
|
|
563
|
+
temperature_conversion: {
|
|
564
|
+
label: "温度转换",
|
|
565
|
+
icon: "images/custom.svg",
|
|
566
|
+
desc: "温度转换自定义节点"
|
|
567
|
+
},
|
|
568
|
+
temperatureConversion: {
|
|
569
|
+
label: "温度转换",
|
|
570
|
+
icon: "images/custom.svg",
|
|
571
|
+
desc: "温度转换自定义节点"
|
|
572
|
+
},
|
|
573
|
+
temperatureTransform: {
|
|
574
|
+
label: "温度转换",
|
|
575
|
+
icon: "images/custom.svg",
|
|
576
|
+
desc: "温度转换自定义节点",
|
|
577
|
+
scaleFactor: { label: "换算系数", desc: "" }
|
|
578
|
+
},
|
|
579
|
+
"x/jsonQuery": {
|
|
580
|
+
label: "JSON查询",
|
|
581
|
+
icon: "images/custom.svg",
|
|
582
|
+
desc: "对消息数据执行 JSON 查询。",
|
|
583
|
+
mode: { label: "查询模式", desc: "" }
|
|
584
|
+
},
|
|
585
|
+
"x/odooCrudCreate": {
|
|
586
|
+
label: "Odoo创建",
|
|
587
|
+
icon: "images/custom.svg",
|
|
588
|
+
desc: "Odoo CRUD 创建节点。",
|
|
589
|
+
database: { label: "数据库", desc: "" },
|
|
590
|
+
database_version: { label: "数据库版本", desc: "" },
|
|
591
|
+
table_prefix: { label: "表前缀", desc: "" },
|
|
592
|
+
max_batch_size: { label: "最大批量数量", desc: "" }
|
|
593
|
+
},
|
|
594
|
+
"x/odooCrudUpdate": {
|
|
595
|
+
label: "Odoo更新",
|
|
596
|
+
icon: "images/custom.svg",
|
|
597
|
+
desc: "Odoo CRUD 更新节点。",
|
|
598
|
+
database: { label: "数据库", desc: "" },
|
|
599
|
+
database_version: { label: "数据库版本", desc: "" },
|
|
600
|
+
table_prefix: { label: "表前缀", desc: "" },
|
|
601
|
+
max_batch_size: { label: "最大批量数量", desc: "" }
|
|
602
|
+
},
|
|
603
|
+
"x/soapParse": {
|
|
604
|
+
label: "SOAP解析",
|
|
605
|
+
icon: "images/custom.svg",
|
|
606
|
+
desc: "解析 SOAP 响应数据。"
|
|
607
|
+
},
|
|
608
|
+
"x/soapRequest": {
|
|
609
|
+
label: "SOAP请求",
|
|
610
|
+
icon: "images/custom.svg",
|
|
611
|
+
desc: "发送 SOAP 请求。",
|
|
612
|
+
url: { label: "请求地址", desc: "" },
|
|
613
|
+
action: { label: "SOAP Action", desc: "" }
|
|
614
|
+
}
|
|
615
|
+
}, y = {
|
|
616
|
+
"ai/llm": {
|
|
617
|
+
label: "AI文本生成",
|
|
618
|
+
icon: "images/aiLlm.svg",
|
|
619
|
+
desc: "AI大语言模型调用",
|
|
620
|
+
url: { label: "API地址", desc: "" },
|
|
621
|
+
key: { label: "授权秘钥", desc: "" },
|
|
622
|
+
model: { label: "模型", desc: "允许手动输入模型", component: e([
|
|
623
|
+
{ label: "DeepSeek-R1-Distill-Qwen-32B", value: "DeepSeek-R1-Distill-Qwen-32B" },
|
|
624
|
+
{ label: "DeepSeek-R1", value: "DeepSeek-R1" },
|
|
625
|
+
{ label: "Qwen2-7B-Instruct", value: "Qwen2-7B-Instruct" },
|
|
626
|
+
{ label: "Qwen2-VL-72B", value: "Qwen2-VL-72B" },
|
|
627
|
+
{ label: "gpt-4o", value: "gpt-4o" },
|
|
628
|
+
{ label: "gpt-4o-mini", value: "gpt-4o-mini" }
|
|
629
|
+
]) },
|
|
630
|
+
systemPrompt: { label: "系统提示", desc: "用于预先定义模型的基础行为框架和响应风格。可以使用${} 占位符变量", component: { type: "textarea" } },
|
|
631
|
+
messages: { label: "上下文/用户消息列表", desc: "", component: { type: "table", options: [
|
|
632
|
+
{ name: "role", label: "角色", type: "string", component: d([{ label: "USER", value: "user" }, { label: "ASSISTANT", value: "assistant" }]) },
|
|
633
|
+
{ name: "content", label: "消息内容", type: "string", component: { type: "textarea" } }
|
|
634
|
+
] } },
|
|
635
|
+
images: { label: "图片列表", desc: "" },
|
|
636
|
+
params: { label: "模型参数", desc: "" }
|
|
637
|
+
},
|
|
638
|
+
"ai/createImage": {
|
|
639
|
+
label: "图像生成",
|
|
640
|
+
icon: "images/aiImage.svg",
|
|
641
|
+
desc: "AI图片生成",
|
|
642
|
+
url: { label: "API地址", desc: "" },
|
|
643
|
+
key: { label: "API密钥", desc: "" },
|
|
644
|
+
model: { label: "模型名称", desc: "" },
|
|
645
|
+
prompt: { label: "提示词", desc: "" },
|
|
646
|
+
n: { label: "生成数量", desc: "" },
|
|
647
|
+
size: { label: "图片尺寸", desc: "" },
|
|
648
|
+
quality: { label: "图片质量", desc: "" },
|
|
649
|
+
style: { label: "图片风格", desc: "" },
|
|
650
|
+
response_format: { label: "返回格式", desc: "" }
|
|
651
|
+
},
|
|
652
|
+
"ai/agent": {
|
|
653
|
+
label: "智能体",
|
|
654
|
+
icon: "images/aiLlm.svg",
|
|
655
|
+
desc: "基于 ReAct 框架的 AI 智能体,支持调用工具和技能完成复杂任务。",
|
|
656
|
+
relationTypes: [{ label: "成功", value: "Success" }, { label: "失败", value: "Failure" }, { label: "流式", value: "Stream" }],
|
|
657
|
+
provider: { label: "AI服务商", desc: "选择AI服务提供商,自动填充API地址和模型列表" },
|
|
658
|
+
url: { label: "API地址", desc: "API基础URL" },
|
|
659
|
+
key: { label: "API密钥", desc: "API密钥" },
|
|
660
|
+
model: { label: "模型", desc: "允许手动输入模型", component: e([
|
|
661
|
+
{ label: "DeepSeek-R1-Distill-Qwen-32B", value: "DeepSeek-R1-Distill-Qwen-32B" },
|
|
662
|
+
{ label: "DeepSeek-R1", value: "DeepSeek-R1" },
|
|
663
|
+
{ label: "Qwen2-7B-Instruct", value: "Qwen2-7B-Instruct" },
|
|
664
|
+
{ label: "Qwen2-VL-72B", value: "Qwen2-VL-72B" },
|
|
665
|
+
{ label: "gpt-4o", value: "gpt-4o" },
|
|
666
|
+
{ label: "gpt-4o-mini", value: "gpt-4o-mini" }
|
|
667
|
+
]) },
|
|
668
|
+
systemPrompt: { label: "系统提示", desc: "用于预先定义模型的基础行为框架和响应风格。可以使用${} 占位符变量", component: { type: "textarea" } },
|
|
669
|
+
messages: { label: "内置消息列表", desc: "输入消息没有 messages 字段时自动使用。", component: { type: "table", options: [
|
|
670
|
+
{ name: "role", label: "角色", type: "string", component: d([{ label: "USER", value: "user" }, { label: "ASSISTANT", value: "assistant" }]) },
|
|
671
|
+
{ name: "content", label: "消息内容", type: "string", component: { type: "textarea" } }
|
|
672
|
+
] } },
|
|
673
|
+
images: { label: "图片列表", desc: "多模态模型输入图片列表" },
|
|
674
|
+
params: { label: "模型参数", desc: "" },
|
|
675
|
+
tools: { label: "工具列表", desc: "配置大模型可调用的工具", component: { type: "tools" } },
|
|
676
|
+
maxStep: { label: "最大迭代次数", desc: "" },
|
|
677
|
+
maxToolOutputLength: { label: "工具输出最大长度", desc: "限制工具返回内容的最大字节数,超出将被截断,默认 50000" },
|
|
678
|
+
maxRetries: { label: "最大重试次数", desc: "对 429/5xx/网络错误/超时自动重试,0 使用后端默认次数" }
|
|
679
|
+
},
|
|
680
|
+
"ai/intent": {
|
|
681
|
+
label: "意图识别",
|
|
682
|
+
icon: "images/aiLlm.svg",
|
|
683
|
+
desc: "基于大模型分析用户输入的意图,并路由到对应分支。",
|
|
684
|
+
url: { label: "API地址", desc: "API基础URL" },
|
|
685
|
+
key: { label: "API密钥", desc: "API密钥" },
|
|
686
|
+
model: { label: "模型", desc: "允许手动输入模型", component: e() },
|
|
687
|
+
input: { label: "用户输入表达式", desc: "支持${msg.key}和${metadata.key},为空时使用消息体数据" },
|
|
688
|
+
intents: { label: "意图列表", desc: "预定义的意图配置,与意图文件路径二选一,优先使用此项", component: { type: "table", options: [
|
|
689
|
+
{ name: "name", label: "意图名称", type: "string" },
|
|
690
|
+
{ name: "description", label: "意图描述", type: "string", component: { type: "textarea" } }
|
|
691
|
+
] } },
|
|
692
|
+
defaultIntent: { label: "默认意图", desc: "无法识别时返回的意图,对应路由连接中的连接类型" },
|
|
693
|
+
systemPrompt: { label: "系统提示", desc: "自定义意图识别提示词,为空时使用内置默认提示词。支持${include()}引用文件", component: { type: "textarea" } },
|
|
694
|
+
temperature: { label: "温度", desc: "采样温度,值越低输出越稳定,适合分类任务", component: { type: "slider", showInput: !0, showTooltip: !0, min: 0, max: 2, step: 0.1 } },
|
|
695
|
+
maxTokens: { label: "最大输出长度", desc: "意图识别响应的最大 token 数,0表示使用模型默认值", component: { type: "input-number", min: 0, max: 1e3, step: 10 } }
|
|
696
|
+
},
|
|
697
|
+
"ai/localIntent": {
|
|
698
|
+
label: "本地意图识别",
|
|
699
|
+
icon: "images/aiLlm.svg",
|
|
700
|
+
desc: "基于嵌入向量的本地意图分类,无需调用 LLM。",
|
|
701
|
+
relationTypes: [{ label: "成功", value: "Success" }, { label: "失败", value: "Failure" }],
|
|
702
|
+
provider: { label: "AI服务商", desc: "选择嵌入模型服务商,自动填充API地址和模型列表", providerType: "embedding" },
|
|
703
|
+
url: { label: "API地址", desc: "嵌入模型API地址" },
|
|
704
|
+
key: { label: "API密钥", desc: "嵌入模型API密钥" },
|
|
705
|
+
model: { label: "嵌入模型", desc: "嵌入模型名称", component: e() },
|
|
706
|
+
input: { label: "用户输入表达式", desc: "支持${msg.key}和${metadata.key},为空时使用消息体数据" },
|
|
707
|
+
intents: { label: "意图列表", desc: "预定义的意图配置,与意图文件路径二选一,优先使用此项", component: { type: "table", options: [
|
|
708
|
+
{ name: "name", label: "意图名称", type: "string" },
|
|
709
|
+
{ name: "description", label: "意图描述", type: "string", component: { type: "textarea" } },
|
|
710
|
+
{ name: "examples", label: "示例语句", type: "array" }
|
|
711
|
+
] } },
|
|
712
|
+
intentsFile: { label: "意图文件路径", desc: "外部意图配置文件路径,支持 YAML 和 JSON 格式" },
|
|
713
|
+
threshold: { label: "相似度阈值", desc: "最低匹配相似度阈值,低于该值时使用默认意图" },
|
|
714
|
+
minGap: { label: "最小置信度差值", desc: "最高分与第二高分的最小差值,低于该值时使用默认意图" },
|
|
715
|
+
defaultIntent: { label: "默认意图", desc: "无法识别时返回的意图,对应路由连接中的连接类型" }
|
|
716
|
+
},
|
|
717
|
+
"ai/mcpClient": {
|
|
718
|
+
label: "MCP 客户端",
|
|
719
|
+
icon: "images/aiLlm.svg",
|
|
720
|
+
desc: "连接远程 MCP 服务器,调用指定的 MCP 工具并将结果写入消息体。",
|
|
721
|
+
relationTypes: [{ label: "成功", value: "Success" }, { label: "失败", value: "Failure" }],
|
|
722
|
+
server: {
|
|
723
|
+
label: "MCP服务器",
|
|
724
|
+
desc: "MCP 服务器地址,支持 HTTP URL(如 http://localhost:8080/mcp)或 stdio 命令(如 python server.py)",
|
|
725
|
+
type: "string",
|
|
726
|
+
rules: [{ required: !0, message: "MCP服务器地址是必填项" }]
|
|
727
|
+
},
|
|
728
|
+
toolName: { label: "工具名称", desc: "调用的远程 MCP 工具名称,支持 ${msg.xxx}、${metadata.xxx} 表达式动态指定。" },
|
|
729
|
+
args: { label: "工具参数", desc: "MCP 工具参数 JSON 或表达式", component: { type: "codeEditor" } },
|
|
730
|
+
toolFilter: { label: "工具过滤", desc: "允许调用的 MCP 工具名称列表" }
|
|
731
|
+
},
|
|
732
|
+
"ai/transform/documentLoader": {
|
|
733
|
+
label: "文档加载器",
|
|
734
|
+
icon: "images/aiLlm.svg",
|
|
735
|
+
desc: "加载文档并转换为文本。"
|
|
736
|
+
},
|
|
737
|
+
"ai/transform/textChunker": {
|
|
738
|
+
label: "文本分块器",
|
|
739
|
+
icon: "images/aiLlm.svg",
|
|
740
|
+
desc: "将长文本切分为可检索片段。"
|
|
741
|
+
},
|
|
742
|
+
"ai/embedding/openai": {
|
|
743
|
+
label: "OpenAI 嵌入",
|
|
744
|
+
desc: "使用OpenAI模型生成文本向量",
|
|
745
|
+
url: { label: "API地址", desc: "API基础URL", type: "string", defaultValue: "https://api.openai.com/v1/embeddings" },
|
|
746
|
+
apiKey: { label: "API密钥", desc: "API密钥", type: "string" },
|
|
747
|
+
model: { label: "模型名称", desc: "嵌入模型名称", type: "string", defaultValue: "text-embedding-ada-002" },
|
|
748
|
+
batchSize: { label: "批量大小", desc: "单次处理的文本数量", type: "number", defaultValue: 100 }
|
|
749
|
+
},
|
|
750
|
+
"ai/indexer/milvus": { label: "Milvus索引", icon: "images/aiLlm.svg", desc: "写入 Milvus 向量索引。" },
|
|
751
|
+
"ai/indexer/redis": { label: "Redis索引", icon: "images/redis.svg", desc: "写入 Redis 向量索引。" },
|
|
752
|
+
"ai/retriever/milvus": { label: "Milvus检索", icon: "images/aiLlm.svg", desc: "从 Milvus 向量索引检索。" },
|
|
753
|
+
"ai/retriever/redis": { label: "Redis检索", icon: "images/redis.svg", desc: "从 Redis 向量索引检索。" }
|
|
754
|
+
}, T = {
|
|
755
|
+
"ci/gitClone": {
|
|
756
|
+
label: "Git拉取",
|
|
757
|
+
icon: "images/gitClone.svg",
|
|
758
|
+
desc: "克隆Git仓库",
|
|
759
|
+
repository: { label: "仓库地址", desc: "" },
|
|
760
|
+
directory: { label: "目标目录", desc: "" },
|
|
761
|
+
reference: { label: "分支/标签", desc: "" },
|
|
762
|
+
authType: { label: "认证方式", desc: "basic/ssh" },
|
|
763
|
+
authUser: { label: "用户名", desc: "" },
|
|
764
|
+
authPassword: { label: "密码/Token", desc: "" },
|
|
765
|
+
authPemFile: { label: "SSH密钥文件", desc: "" },
|
|
766
|
+
proxyUrl: { label: "代理地址", desc: "" },
|
|
767
|
+
proxyUsername: { label: "代理用户名", desc: "" },
|
|
768
|
+
proxyPassword: { label: "代理密码", desc: "" }
|
|
769
|
+
},
|
|
770
|
+
"ci/gitCommit": {
|
|
771
|
+
label: "Git提交",
|
|
772
|
+
icon: "images/gitCommit.svg",
|
|
773
|
+
desc: "提交代码",
|
|
774
|
+
directory: { label: "仓库目录", desc: "" },
|
|
775
|
+
pattern: { label: "匹配模式", desc: "" },
|
|
776
|
+
message: { label: "提交信息", desc: "" },
|
|
777
|
+
signature: { label: "签名", desc: "" }
|
|
778
|
+
},
|
|
779
|
+
"ci/gitCreateTag": {
|
|
780
|
+
label: "Git创建标签",
|
|
781
|
+
icon: "images/gitCreateTag.svg",
|
|
782
|
+
desc: "创建Git标签",
|
|
783
|
+
directory: { label: "仓库目录", desc: "" },
|
|
784
|
+
tag: { label: "标签名", desc: "" },
|
|
785
|
+
message: { label: "标签信息", desc: "" },
|
|
786
|
+
signature: { label: "签名", desc: "" }
|
|
787
|
+
},
|
|
788
|
+
"ci/gitLog": {
|
|
789
|
+
label: "获取Git日志",
|
|
790
|
+
icon: "images/gitLog.svg",
|
|
791
|
+
desc: "查看Git日志",
|
|
792
|
+
directory: { label: "仓库目录", desc: "" },
|
|
793
|
+
limit: { label: "数量限制", desc: "" },
|
|
794
|
+
startTime: { label: "开始时间", desc: "" },
|
|
795
|
+
endTime: { label: "结束时间", desc: "" }
|
|
796
|
+
},
|
|
797
|
+
"ci/gitPush": {
|
|
798
|
+
label: "Git推送",
|
|
799
|
+
icon: "images/gitPush.svg",
|
|
800
|
+
desc: "推送到远程仓库",
|
|
801
|
+
repository: { label: "仓库地址", desc: "" },
|
|
802
|
+
directory: { label: "仓库目录", desc: "" },
|
|
803
|
+
refSpecs: { label: "引用规范", desc: "" },
|
|
804
|
+
authType: { label: "认证方式", desc: "" },
|
|
805
|
+
authUser: { label: "用户名", desc: "" },
|
|
806
|
+
authPassword: { label: "密码/Token", desc: "" },
|
|
807
|
+
authPemFile: { label: "SSH密钥文件", desc: "" },
|
|
808
|
+
proxyUrl: { label: "代理地址", desc: "" },
|
|
809
|
+
proxyUsername: { label: "代理用户名", desc: "" },
|
|
810
|
+
proxyPassword: { label: "代理密码", desc: "" }
|
|
811
|
+
},
|
|
812
|
+
"ci/ps": {
|
|
813
|
+
label: "服务器指标",
|
|
814
|
+
icon: "images/ps.svg",
|
|
815
|
+
desc: "进程列表查看",
|
|
816
|
+
options: { label: "选项", desc: "" }
|
|
817
|
+
},
|
|
818
|
+
"ci/exec": {
|
|
819
|
+
label: "命令行",
|
|
820
|
+
icon: "images/ssh.svg",
|
|
821
|
+
desc: "只执行系统白名单的命令。"
|
|
822
|
+
}
|
|
823
|
+
}, h = {
|
|
824
|
+
"x/modbus": {
|
|
825
|
+
label: "Modbus读写",
|
|
826
|
+
icon: "images/modbus.svg",
|
|
827
|
+
desc: "Modbus协议通信",
|
|
828
|
+
server: { ref: "primary", label: "服务器地址", desc: "", component: e() },
|
|
829
|
+
cmd: { label: "命令", desc: "" },
|
|
830
|
+
unitId: { label: "单元ID", desc: "" },
|
|
831
|
+
address: { label: "寄存器地址", desc: "" },
|
|
832
|
+
quantity: { label: "寄存器数量", desc: "" },
|
|
833
|
+
value: { label: "写入值", desc: "" },
|
|
834
|
+
regType: { label: "寄存器类型", desc: "" },
|
|
835
|
+
tcpConfig: { label: "TCP配置", desc: "" },
|
|
836
|
+
rtuConfig: { label: "RTU配置", desc: "" },
|
|
837
|
+
encodingConfig: { label: "编码配置", desc: "" }
|
|
838
|
+
},
|
|
839
|
+
"x/opcuaRead": {
|
|
840
|
+
label: "OPC_UA读",
|
|
841
|
+
icon: "images/opcua.svg",
|
|
842
|
+
desc: "OPC UA协议读取数据",
|
|
843
|
+
server: { ref: "primary", label: "服务器地址", desc: "", component: e() },
|
|
844
|
+
policy: { label: "安全策略", desc: "" },
|
|
845
|
+
mode: { label: "安全模式", desc: "" },
|
|
846
|
+
auth: { label: "认证方式", desc: "" },
|
|
847
|
+
username: { label: "用户名", desc: "" },
|
|
848
|
+
password: { label: "密码", desc: "" },
|
|
849
|
+
certFile: { label: "证书文件", desc: "" },
|
|
850
|
+
certKeyFile: { label: "密钥文件", desc: "" }
|
|
851
|
+
},
|
|
852
|
+
"x/opcuaWrite": {
|
|
853
|
+
label: "OPC_UA写",
|
|
854
|
+
icon: "images/opcua.svg",
|
|
855
|
+
desc: "OPC UA协议写入数据",
|
|
856
|
+
server: { ref: "primary", label: "服务器地址", desc: "", component: e() },
|
|
857
|
+
policy: { label: "安全策略", desc: "" },
|
|
858
|
+
mode: { label: "安全模式", desc: "" },
|
|
859
|
+
auth: { label: "认证方式", desc: "" },
|
|
860
|
+
username: { label: "用户名", desc: "" },
|
|
861
|
+
password: { label: "密码", desc: "" },
|
|
862
|
+
certFile: { label: "证书文件", desc: "" },
|
|
863
|
+
certKeyFile: { label: "密钥文件", desc: "" }
|
|
864
|
+
},
|
|
865
|
+
"x/serialControl": {
|
|
866
|
+
label: "串口控制",
|
|
867
|
+
icon: "images/serial.svg",
|
|
868
|
+
desc: "串口设备控制",
|
|
869
|
+
port: { label: "串口号", desc: "" },
|
|
870
|
+
baudRate: { label: "波特率", desc: "" },
|
|
871
|
+
dataBits: { label: "数据位", desc: "" },
|
|
872
|
+
stopBits: { label: "停止位", desc: "" },
|
|
873
|
+
parity: { label: "校验位", desc: "" },
|
|
874
|
+
action: { label: "控制动作", desc: "" },
|
|
875
|
+
dtr: { label: "DTR信号", desc: "" },
|
|
876
|
+
rts: { label: "RTS信号", desc: "" }
|
|
877
|
+
},
|
|
878
|
+
"x/serialIn": {
|
|
879
|
+
label: "串口读",
|
|
880
|
+
icon: "images/serial.svg",
|
|
881
|
+
desc: "从串口接收数据",
|
|
882
|
+
port: { label: "串口号", desc: "" },
|
|
883
|
+
baudRate: { label: "波特率", desc: "" },
|
|
884
|
+
dataBits: { label: "数据位", desc: "" },
|
|
885
|
+
stopBits: { label: "停止位", desc: "" },
|
|
886
|
+
parity: { label: "校验位", desc: "" },
|
|
887
|
+
splitType: { label: "分割方式", desc: "" },
|
|
888
|
+
splitKey: { label: "分割标记", desc: "" },
|
|
889
|
+
dataType: { label: "数据类型", desc: "" },
|
|
890
|
+
dtr: { label: "DTR信号", desc: "" },
|
|
891
|
+
rts: { label: "RTS信号", desc: "" },
|
|
892
|
+
startChar: { label: "起始字符", desc: "" },
|
|
893
|
+
splitTimeout: { label: "分割超时(毫秒)", desc: "" }
|
|
894
|
+
},
|
|
895
|
+
"x/serialOut": {
|
|
896
|
+
label: "串口写",
|
|
897
|
+
icon: "images/serial.svg",
|
|
898
|
+
desc: "向串口发送数据",
|
|
899
|
+
port: { label: "串口号", desc: "" },
|
|
900
|
+
baudRate: { label: "波特率", desc: "" },
|
|
901
|
+
dataBits: { label: "数据位", desc: "" },
|
|
902
|
+
stopBits: { label: "停止位", desc: "" },
|
|
903
|
+
parity: { label: "校验位", desc: "" },
|
|
904
|
+
data: { label: "发送数据", desc: "" },
|
|
905
|
+
dataType: { label: "数据类型", desc: "" },
|
|
906
|
+
dtr: { label: "DTR信号", desc: "" },
|
|
907
|
+
rts: { label: "RTS信号", desc: "" },
|
|
908
|
+
addChar: { label: "附加字符", desc: "" }
|
|
909
|
+
},
|
|
910
|
+
"x/serialRequest": {
|
|
911
|
+
label: "串口请求",
|
|
912
|
+
icon: "images/serial.svg",
|
|
913
|
+
desc: "串口请求/响应",
|
|
914
|
+
port: { label: "串口号", desc: "" },
|
|
915
|
+
baudRate: { label: "波特率", desc: "" },
|
|
916
|
+
dataBits: { label: "数据位", desc: "" },
|
|
917
|
+
stopBits: { label: "停止位", desc: "" },
|
|
918
|
+
parity: { label: "校验位", desc: "" },
|
|
919
|
+
data: { label: "发送数据", desc: "" },
|
|
920
|
+
dataType: { label: "数据类型", desc: "" },
|
|
921
|
+
splitType: { label: "分割方式", desc: "" },
|
|
922
|
+
splitKey: { label: "分割标记", desc: "" },
|
|
923
|
+
requestTimeout: { label: "请求超时(毫秒)", desc: "" },
|
|
924
|
+
dtr: { label: "DTR信号", desc: "" },
|
|
925
|
+
rts: { label: "RTS信号", desc: "" },
|
|
926
|
+
addChar: { label: "附加字符", desc: "" },
|
|
927
|
+
startChar: { label: "起始字符", desc: "" },
|
|
928
|
+
splitTimeout: { label: "分割超时(毫秒)", desc: "" }
|
|
929
|
+
}
|
|
930
|
+
}, S = {
|
|
931
|
+
"x/streamAggregator": {
|
|
932
|
+
label: "流聚合器",
|
|
933
|
+
icon: "images/streamAggregator.svg",
|
|
934
|
+
desc: "流式数据聚合",
|
|
935
|
+
sql: {
|
|
936
|
+
label: "StreamSQL语句",
|
|
937
|
+
desc: "直接引用 msg 数据字段,不支持 ${} 占位符变量。",
|
|
938
|
+
rules: [{ noTemplateVariables: !0, message: "SQL 不支持 ${} 占位符变量,请直接引用 msg 数据字段" }]
|
|
939
|
+
}
|
|
940
|
+
},
|
|
941
|
+
"x/streamTransform": {
|
|
942
|
+
label: "流转换器",
|
|
943
|
+
icon: "images/streamTransform.svg",
|
|
944
|
+
desc: "流式数据转换",
|
|
945
|
+
sql: {
|
|
946
|
+
label: "StreamSQL语句",
|
|
947
|
+
desc: "直接引用 msg 数据字段,不支持 ${} 占位符变量。",
|
|
948
|
+
rules: [{ noTemplateVariables: !0, message: "SQL 不支持 ${} 占位符变量,请直接引用 msg 数据字段" }]
|
|
949
|
+
}
|
|
950
|
+
}
|
|
951
|
+
}, f = {
|
|
952
|
+
"endpoint/http": {
|
|
953
|
+
label: "HTTP",
|
|
954
|
+
icon: "images/rest.svg",
|
|
955
|
+
desc: "HTTP/WebSocket服务端点",
|
|
956
|
+
server: { ref: "primary", label: "监听地址", desc: "例如 :8080", component: e() },
|
|
957
|
+
certFile: { label: "证书文件", desc: "" },
|
|
958
|
+
certKeyFile: { label: "密钥文件", desc: "" },
|
|
959
|
+
allowCors: { label: "允许跨域", desc: "" },
|
|
960
|
+
readTimeout: { label: "读取超时(秒)", desc: "" },
|
|
961
|
+
writeTimeout: { label: "写入超时(秒)", desc: "" },
|
|
962
|
+
idleTimeout: { label: "空闲超时(秒)", desc: "" },
|
|
963
|
+
disableKeepalive: { label: "禁用长连接", desc: "" },
|
|
964
|
+
// 路由视图配置: 控制路由设置弹窗的动态渲染
|
|
965
|
+
router: {
|
|
966
|
+
from: { path: { label: "Path", desc: "客户端请求该URL触发,如:/api/v1/msg" } }
|
|
967
|
+
}
|
|
968
|
+
},
|
|
969
|
+
"endpoint/ws": {
|
|
970
|
+
label: "Websocket",
|
|
971
|
+
icon: "images/net.svg",
|
|
972
|
+
desc: "WebSocket服务端点",
|
|
973
|
+
server: { ref: "primary", label: "监听地址", desc: "", component: e() },
|
|
974
|
+
certFile: { label: "证书文件", desc: "" },
|
|
975
|
+
certKeyFile: { label: "密钥文件", desc: "" },
|
|
976
|
+
allowCors: { label: "允许跨域", desc: "" },
|
|
977
|
+
readTimeout: { label: "读取超时(秒)", desc: "" },
|
|
978
|
+
writeTimeout: { label: "写入超时(秒)", desc: "" },
|
|
979
|
+
idleTimeout: { label: "空闲超时(秒)", desc: "" },
|
|
980
|
+
disableKeepalive: { label: "禁用长连接", desc: "" },
|
|
981
|
+
sessionKey: {
|
|
982
|
+
label: "会话 Key",
|
|
983
|
+
desc: "设备寻址键;留空时使用远端地址。支持表达式,如 ${msg.deviceId}。",
|
|
984
|
+
component: { type: "input", placeholder: "${msg.deviceId}" }
|
|
985
|
+
},
|
|
986
|
+
sessionTTL: {
|
|
987
|
+
label: "会话空闲超时(秒)",
|
|
988
|
+
desc: "空闲超过该时长后关闭连接并等待设备重连;0 或留空时由后端使用默认值。",
|
|
989
|
+
component: { type: "number", placeholder: "1800" }
|
|
990
|
+
},
|
|
991
|
+
router: {
|
|
992
|
+
from: { path: { label: "Path", desc: "客户端请求该URL触发,如:/api/ms/ws" } }
|
|
993
|
+
}
|
|
994
|
+
},
|
|
995
|
+
"endpoint/mqtt": {
|
|
996
|
+
label: "MQTT",
|
|
997
|
+
icon: "images/mqtt.svg",
|
|
998
|
+
desc: "MQTT消息订阅端点",
|
|
999
|
+
server: { ref: "primary", label: "MQTT Server地址", desc: "", component: e() },
|
|
1000
|
+
username: { ref: "shared", label: "用户名", desc: "" },
|
|
1001
|
+
password: { ref: "shared", label: "密码", desc: "" },
|
|
1002
|
+
maxReconnectInterval: { label: "最大重连间隔", desc: "" },
|
|
1003
|
+
qos: { label: "QoS", desc: "" },
|
|
1004
|
+
cleanSession: { label: "清除会话", desc: "" },
|
|
1005
|
+
clientId: { label: "客户端ID", desc: "" },
|
|
1006
|
+
caFile: { label: "CA证书文件", desc: "" },
|
|
1007
|
+
certFile: { label: "证书文件", desc: "" },
|
|
1008
|
+
certKeyFile: { label: "密钥文件", desc: "" },
|
|
1009
|
+
router: {
|
|
1010
|
+
from: { path: { label: "订阅主题", desc: "订阅主题数据触发,例如: devices/msg" } }
|
|
1011
|
+
}
|
|
1012
|
+
},
|
|
1013
|
+
"endpoint/kafka": {
|
|
1014
|
+
label: "Kafka",
|
|
1015
|
+
icon: "images/kafka.svg",
|
|
1016
|
+
desc: "Kafka消息消费端点",
|
|
1017
|
+
server: { ref: "primary", label: "服务器地址", desc: "" },
|
|
1018
|
+
groupId: { label: "消费组ID", desc: "" },
|
|
1019
|
+
sasl: { label: "SASL认证", desc: "" },
|
|
1020
|
+
tls: { label: "TLS配置", desc: "" },
|
|
1021
|
+
router: {
|
|
1022
|
+
from: { path: { label: "订阅主题", desc: "订阅主题数据触发,例如: devices/msg" } }
|
|
1023
|
+
}
|
|
1024
|
+
},
|
|
1025
|
+
"endpoint/nats": {
|
|
1026
|
+
label: "Nats",
|
|
1027
|
+
icon: "images/nats.svg",
|
|
1028
|
+
desc: "NATS消息订阅端点",
|
|
1029
|
+
server: { ref: "primary", label: "服务器地址", desc: "", component: e() },
|
|
1030
|
+
username: { label: "用户名", desc: "" },
|
|
1031
|
+
password: { label: "密码", desc: "" },
|
|
1032
|
+
groupId: { label: "消费组ID", desc: "" },
|
|
1033
|
+
router: {
|
|
1034
|
+
from: { path: { label: "订阅主题", desc: "订阅主题数据触发,例如: devices/msg" } }
|
|
1035
|
+
}
|
|
1036
|
+
},
|
|
1037
|
+
"endpoint/nsq": {
|
|
1038
|
+
label: "NSQ",
|
|
1039
|
+
icon: "images/nsq.svg",
|
|
1040
|
+
desc: "NSQ消息消费端点",
|
|
1041
|
+
server: { ref: "primary", label: "服务器地址", desc: "" },
|
|
1042
|
+
channel: { label: "频道", desc: "" },
|
|
1043
|
+
authToken: { label: "认证Token", desc: "" },
|
|
1044
|
+
certFile: { label: "证书文件", desc: "" },
|
|
1045
|
+
certKeyFile: { label: "密钥文件", desc: "" },
|
|
1046
|
+
router: {
|
|
1047
|
+
from: { path: { label: "订阅主题", desc: "订阅主题数据触发,例如: devices_msg" } }
|
|
1048
|
+
}
|
|
1049
|
+
},
|
|
1050
|
+
"endpoint/pulsar": {
|
|
1051
|
+
label: "Pulsar",
|
|
1052
|
+
icon: "images/pulsar.svg",
|
|
1053
|
+
desc: "Pulsar消息消费端点",
|
|
1054
|
+
server: { ref: "primary", label: "服务器地址", desc: "", component: e() },
|
|
1055
|
+
subName: { label: "订阅名称", desc: "" },
|
|
1056
|
+
subType: { label: "订阅类型", desc: "" },
|
|
1057
|
+
poolSize: { label: "消息通道缓冲池大小", desc: "" },
|
|
1058
|
+
authToken: { label: "认证Token", desc: "" },
|
|
1059
|
+
certFile: { label: "证书文件", desc: "" },
|
|
1060
|
+
certKeyFile: { label: "密钥文件", desc: "" },
|
|
1061
|
+
router: {
|
|
1062
|
+
from: { path: { label: "订阅主题", desc: "订阅主题数据触发,例如: devices/msg" } }
|
|
1063
|
+
}
|
|
1064
|
+
},
|
|
1065
|
+
"endpoint/rabbitmq": {
|
|
1066
|
+
label: "RabbitMQ",
|
|
1067
|
+
icon: "images/rabbitmq.svg",
|
|
1068
|
+
desc: "RabbitMQ消息消费端点",
|
|
1069
|
+
server: { ref: "primary", label: "服务器地址", desc: "", component: e() },
|
|
1070
|
+
exchange: { label: "交换机", desc: "" },
|
|
1071
|
+
exchangeType: { label: "交换机类型", desc: "" },
|
|
1072
|
+
durable: { label: "持久化", desc: "" },
|
|
1073
|
+
autoDelete: { label: "自动删除", desc: "" },
|
|
1074
|
+
router: {
|
|
1075
|
+
from: { path: { label: "路由键", desc: "" } }
|
|
1076
|
+
}
|
|
1077
|
+
},
|
|
1078
|
+
"endpoint/redis": {
|
|
1079
|
+
label: "Redis",
|
|
1080
|
+
icon: "images/redis.svg",
|
|
1081
|
+
desc: "Redis Pub/Sub订阅端点",
|
|
1082
|
+
server: { ref: "primary", label: "Redis服务地址", desc: "示例: 127.0.0.1:6379", component: e() },
|
|
1083
|
+
password: { label: "密码", desc: "" },
|
|
1084
|
+
db: { label: "数据库", desc: "" },
|
|
1085
|
+
router: {
|
|
1086
|
+
from: { path: { label: "订阅Redis通道", desc: "多个通道与逗号分割,例如: devices/msg,devices/msg2" } }
|
|
1087
|
+
}
|
|
1088
|
+
},
|
|
1089
|
+
"endpoint/redis/stream": {
|
|
1090
|
+
label: "Redis流",
|
|
1091
|
+
icon: "images/redis.svg",
|
|
1092
|
+
desc: "Redis Stream消费端点",
|
|
1093
|
+
server: { ref: "primary", label: "Redis服务地址", desc: "示例: 127.0.0.1:6379", component: e() },
|
|
1094
|
+
password: { label: "密码", desc: "" },
|
|
1095
|
+
db: { label: "数据库", desc: "" },
|
|
1096
|
+
groupId: { label: "消费组ID", desc: "" },
|
|
1097
|
+
router: {
|
|
1098
|
+
from: { path: { label: "订阅流名称", desc: "多个流与逗号分割,例如: devices/msg,devices/msg2" } }
|
|
1099
|
+
}
|
|
1100
|
+
},
|
|
1101
|
+
"endpoint/net": {
|
|
1102
|
+
label: "TCP/UDP",
|
|
1103
|
+
icon: "images/net.svg",
|
|
1104
|
+
desc: "TCP/UDP服务端点",
|
|
1105
|
+
protocol: { label: "协议", desc: "tcp/udp", component: d([{ label: "TCP", value: "tcp" }, { label: "UDP", value: "udp" }]) },
|
|
1106
|
+
server: { ref: "primary", label: "监听地址", desc: "示例: :6335" },
|
|
1107
|
+
readTimeout: { label: "读取超时(秒)", desc: "" },
|
|
1108
|
+
encode: { label: "编码方式", desc: "" },
|
|
1109
|
+
packetMode: { label: "包模式", desc: "" },
|
|
1110
|
+
packetSize: { label: "包大小", desc: "" },
|
|
1111
|
+
delimiter: { label: "分隔符", desc: "" },
|
|
1112
|
+
maxPacketSize: { label: "最大包大小", desc: "" },
|
|
1113
|
+
sessionKey: {
|
|
1114
|
+
label: "会话 Key",
|
|
1115
|
+
desc: "设备寻址键;留空时使用远端地址。支持表达式和多个候选值。",
|
|
1116
|
+
component: { type: "input", placeholder: "${msg.deviceId}" }
|
|
1117
|
+
},
|
|
1118
|
+
sessionTTL: {
|
|
1119
|
+
label: "会话空闲超时(秒)",
|
|
1120
|
+
desc: "空闲超过该时长后关闭连接并等待设备重连;0 或留空时由后端使用默认值。",
|
|
1121
|
+
component: { type: "number", placeholder: "1800" }
|
|
1122
|
+
},
|
|
1123
|
+
router: {
|
|
1124
|
+
from: { path: { label: "路由正则表达式", desc: "通过正则表达式匹配满足条件的数据触发,*表示匹配所有" } }
|
|
1125
|
+
}
|
|
1126
|
+
},
|
|
1127
|
+
"endpoint/schedule": {
|
|
1128
|
+
label: "定时调度",
|
|
1129
|
+
icon: "images/delay.svg",
|
|
1130
|
+
desc: "定时触发端点",
|
|
1131
|
+
router: {
|
|
1132
|
+
from: {
|
|
1133
|
+
path: { label: "cron表达式", desc: "通过cron表达式周期触发,如: */10 * * * * *" },
|
|
1134
|
+
processors: { hide: !0 }
|
|
1135
|
+
},
|
|
1136
|
+
to: { processors: { hide: !0 } }
|
|
1137
|
+
}
|
|
1138
|
+
},
|
|
1139
|
+
"endpoint/grpc/stream": {
|
|
1140
|
+
label: "gRPC流客户端",
|
|
1141
|
+
icon: "images/grpc.svg",
|
|
1142
|
+
desc: "gRPC流式端点",
|
|
1143
|
+
server: { ref: "primary", label: "服务器地址", desc: "", component: e() },
|
|
1144
|
+
service: { label: "服务名", desc: "" },
|
|
1145
|
+
method: { label: "方法名", desc: "" },
|
|
1146
|
+
headers: { label: "请求头", desc: "" },
|
|
1147
|
+
request: { label: "请求体", desc: "" },
|
|
1148
|
+
checkInterval: { label: "检查间隔(秒)", desc: "" }
|
|
1149
|
+
},
|
|
1150
|
+
"endpoint/wukongim": {
|
|
1151
|
+
label: "WuKongIM收",
|
|
1152
|
+
icon: "images/wukongim.svg",
|
|
1153
|
+
desc: "悟空IM消息接收端点",
|
|
1154
|
+
server: { ref: "primary", label: "服务器地址", desc: "", component: e() },
|
|
1155
|
+
uid: { label: "用户ID", desc: "" },
|
|
1156
|
+
token: { label: "认证Token", desc: "" },
|
|
1157
|
+
connectTimeout: { label: "连接超时(秒)", desc: "" },
|
|
1158
|
+
protoVersion: { label: "协议版本", desc: "" },
|
|
1159
|
+
pingInterval: { label: "心跳间隔(秒)", desc: "" },
|
|
1160
|
+
reconnect: { label: "自动重连", desc: "" },
|
|
1161
|
+
autoAck: { label: "自动确认", desc: "" }
|
|
1162
|
+
},
|
|
1163
|
+
"endpoint/mcpServer": {
|
|
1164
|
+
label: "MCP服务器",
|
|
1165
|
+
icon: "images/aiLlm.svg",
|
|
1166
|
+
desc: "AI MCP Server端点",
|
|
1167
|
+
server: { ref: "primary", label: "监听地址", desc: "示例: :6335", component: e() },
|
|
1168
|
+
certFile: { label: "证书文件", desc: "" },
|
|
1169
|
+
certKeyFile: { label: "密钥文件", desc: "" },
|
|
1170
|
+
allowCors: { label: "允许跨域", desc: "" },
|
|
1171
|
+
name: { label: "服务名称", desc: "" },
|
|
1172
|
+
version: { label: "版本", desc: "" },
|
|
1173
|
+
basePath: { label: "MCP服务器根路径", desc: "例如 /mcp" },
|
|
1174
|
+
router: {
|
|
1175
|
+
from: {
|
|
1176
|
+
path: { label: "工具标识", desc: "", unique: !0 },
|
|
1177
|
+
desc: { label: "工具描述" },
|
|
1178
|
+
inputSchema: { label: "工具入参JsonSchema" },
|
|
1179
|
+
processors: { hide: !0 }
|
|
1180
|
+
},
|
|
1181
|
+
to: { processors: { hide: !0 } }
|
|
1182
|
+
}
|
|
1183
|
+
},
|
|
1184
|
+
"endpoint/beanstalkdTubeset": {
|
|
1185
|
+
label: "Beanstalkd",
|
|
1186
|
+
icon: "images/beanstalkd.svg",
|
|
1187
|
+
desc: "Beanstalkd订阅端点",
|
|
1188
|
+
server: { ref: "primary", label: "Beanstalkd Server地址", desc: "示例:127.0.0.1:11300,如果流程中存在多节点操作消息并改变状态时,应使用复用连接(ref://)", component: e() },
|
|
1189
|
+
router: { hide: !0 }
|
|
1190
|
+
// 完全隐藏路由配置
|
|
1191
|
+
},
|
|
1192
|
+
"endpoint/mysql_cdc": {
|
|
1193
|
+
label: "MYSQL CDC",
|
|
1194
|
+
icon: "images/db.svg",
|
|
1195
|
+
desc: "MySQL变更数据捕获端点",
|
|
1196
|
+
server: { ref: "primary", label: "服务器地址", desc: "" },
|
|
1197
|
+
user: { label: "用户名", desc: "" },
|
|
1198
|
+
password: { label: "密码", desc: "" },
|
|
1199
|
+
fromOldest: { label: "从最早开始", desc: "" },
|
|
1200
|
+
dbs: { label: "数据库列表", desc: "" },
|
|
1201
|
+
includeTables: { label: "包含表", desc: "" },
|
|
1202
|
+
excludeTables: { label: "排除表", desc: "" },
|
|
1203
|
+
executionPath: { label: "执行路径", desc: "" },
|
|
1204
|
+
charset: { label: "字符集", desc: "" },
|
|
1205
|
+
flavor: { label: "数据库类型", desc: "" },
|
|
1206
|
+
heartbeat: { label: "心跳间隔", desc: "" },
|
|
1207
|
+
readTimeout: { label: "读取超时", desc: "" },
|
|
1208
|
+
limit: { label: "限制条数", desc: "" }
|
|
1209
|
+
},
|
|
1210
|
+
"endpoint/opcua": {
|
|
1211
|
+
label: "OPC_UA订阅",
|
|
1212
|
+
icon: "images/opcua.svg",
|
|
1213
|
+
desc: "OPC UA数据订阅端点",
|
|
1214
|
+
server: { ref: "primary", label: "服务器地址", desc: "示例: opc.tcp://localhost:4840", component: e() },
|
|
1215
|
+
policy: { label: "安全策略", component: e([
|
|
1216
|
+
{ label: "Auto", value: "auto" },
|
|
1217
|
+
{ label: "None", value: "none" },
|
|
1218
|
+
{ label: "Basic128Rsa15", value: "Basic128Rsa15" },
|
|
1219
|
+
{ label: "Basic256", value: "Basic256" },
|
|
1220
|
+
{ label: "Basic256Sha256", value: "Basic256Sha256" },
|
|
1221
|
+
{ label: "Aes128_Sha256_RsaOaep", value: "Aes128_Sha256_RsaOaep" },
|
|
1222
|
+
{ label: "Aes256_Sha256_RsaPss", value: "Aes256_Sha256_RsaPss" }
|
|
1223
|
+
]) },
|
|
1224
|
+
mode: { label: "安全模式", component: e([
|
|
1225
|
+
{ label: "Auto", value: "auto" },
|
|
1226
|
+
{ label: "None", value: "none" },
|
|
1227
|
+
{ label: "Sign", value: "sign" },
|
|
1228
|
+
{ label: "SignAndEncrypt", value: "signandencrypt" }
|
|
1229
|
+
]) },
|
|
1230
|
+
auth: { label: "授权方式", component: e([
|
|
1231
|
+
{ label: "匿名", value: "anonymous" },
|
|
1232
|
+
{ label: "用户名", value: "username" },
|
|
1233
|
+
{ label: "证书", value: "certificate" }
|
|
1234
|
+
]) },
|
|
1235
|
+
username: { label: "用户名", desc: "授权方式为用户名时填写" },
|
|
1236
|
+
password: { label: "密码", desc: "授权方式为用户名时填写" },
|
|
1237
|
+
certFile: { label: "证书文件", desc: "" },
|
|
1238
|
+
certKeyFile: { label: "密钥文件", desc: "" },
|
|
1239
|
+
interval: { label: "采集间隔(秒)", desc: "" },
|
|
1240
|
+
nodeIds: { label: "节点ID列表", desc: "示例: ns=3;i=1003" }
|
|
1241
|
+
},
|
|
1242
|
+
"endpoint/net_client": {
|
|
1243
|
+
label: "TCP/UDP客户端",
|
|
1244
|
+
icon: "images/net.svg",
|
|
1245
|
+
desc: "TCP/UDP 客户端端点",
|
|
1246
|
+
server: { ref: "primary", label: "服务地址", desc: "" },
|
|
1247
|
+
protocol: { label: "协议", desc: "tcp/udp", component: d([{ label: "TCP", value: "tcp" }, { label: "UDP", value: "udp" }]) },
|
|
1248
|
+
connectTimeout: { label: "连接超时(秒)", desc: "" },
|
|
1249
|
+
readTimeout: { label: "读取超时(秒)", desc: "" },
|
|
1250
|
+
reconnectInterval: { label: "重连间隔(秒)", desc: "" },
|
|
1251
|
+
encode: { label: "编码方式", desc: "" },
|
|
1252
|
+
packetMode: { label: "包模式", desc: "" },
|
|
1253
|
+
packetSize: { label: "包大小", desc: "" },
|
|
1254
|
+
delimiter: { label: "分隔符", desc: "" },
|
|
1255
|
+
maxPacketSize: { label: "最大包大小", desc: "" },
|
|
1256
|
+
heartbeatInterval: { label: "心跳间隔(秒)", desc: "" },
|
|
1257
|
+
heartbeatData: { label: "心跳包内容", desc: "" },
|
|
1258
|
+
router: { from: { path: { label: "路由正则表达式", desc: "* 表示匹配所有" } } }
|
|
1259
|
+
},
|
|
1260
|
+
"endpoint/ws_client": {
|
|
1261
|
+
label: "Websocket客户端",
|
|
1262
|
+
icon: "images/net.svg",
|
|
1263
|
+
desc: "WebSocket 客户端端点",
|
|
1264
|
+
server: { ref: "primary", label: "服务地址", desc: "例如 ws://127.0.0.1:8080/ws", component: e() },
|
|
1265
|
+
headers: { label: "自定义请求头", desc: "连接时携带的自定义 Header,JSON 格式" },
|
|
1266
|
+
reconnectInterval: { label: "断线重连间隔(秒)", desc: "默认5,0表示不重连" },
|
|
1267
|
+
heartbeatInterval: { label: "心跳间隔(秒)", desc: "0表示不发送心跳" },
|
|
1268
|
+
heartbeatData: { label: "心跳包内容", desc: "空字符串默认发送 Ping 帧,非空发送 TextMessage" },
|
|
1269
|
+
allowText: { label: "接收文本消息", desc: "" },
|
|
1270
|
+
allowBinary: { label: "接收二进制消息", desc: "" },
|
|
1271
|
+
router: { from: { path: { label: "路由正则表达式", desc: "* 表示匹配所有" } } }
|
|
1272
|
+
}
|
|
1273
|
+
}, k = r({
|
|
1274
|
+
...n,
|
|
1275
|
+
...m,
|
|
1276
|
+
...p,
|
|
1277
|
+
...g,
|
|
1278
|
+
...u,
|
|
1279
|
+
...v,
|
|
1280
|
+
...y,
|
|
1281
|
+
...T,
|
|
1282
|
+
...h,
|
|
1283
|
+
...S,
|
|
1284
|
+
...f
|
|
1285
|
+
}, i);
|
|
1286
|
+
export {
|
|
1287
|
+
k as D
|
|
1288
|
+
};
|