@digitalsee-ai/rcs 1.0.16 → 1.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/dist/components/digitalsee/workflow/Canvas/NextConfigModalWrapper.d.ts +1 -1
- package/dist/components/digitalsee/workflow/Canvas/actionItemToNodeData.d.ts +14 -0
- package/dist/components/digitalsee/workflow/Canvas/constants.d.ts +1 -14
- package/dist/components/digitalsee/workflow/Canvas/constants.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/Canvas/hooks/classicNodeAddConnection.d.ts +31 -0
- package/dist/components/digitalsee/workflow/Canvas/hooks/classicNodeAddConnection.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/Canvas/hooks/createNodeAddHandlerNext.d.ts +5 -16
- package/dist/components/digitalsee/workflow/Canvas/hooks/useNodeAddCallback.d.ts +5 -17
- package/dist/components/digitalsee/workflow/Canvas/hooks/useWorkflowCanvasState.d.ts +3 -1
- package/dist/components/digitalsee/workflow/Handles/CustomHandle.d.ts +3 -0
- package/dist/components/digitalsee/workflow/Handles/customHandleConnectable.d.ts +35 -0
- package/dist/components/digitalsee/workflow/Handles/customHandleConnectable.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/Nodes/ActionNode.d.ts +1 -1
- package/dist/components/digitalsee/workflow/Nodes/ConditionNode.d.ts +1 -1
- package/dist/components/digitalsee/workflow/Nodes/NextNodeFactory.d.ts +2 -1
- package/dist/components/digitalsee/workflow/Nodes/NextNodes/NextBaseNode.d.ts +2 -1
- package/dist/components/digitalsee/workflow/Nodes/NodeFactory.d.ts +1 -1
- package/dist/components/digitalsee/workflow/Nodes/SuperBaseNode.d.ts +8 -3
- package/dist/components/digitalsee/workflow/Nodes/SwitchNode.d.ts +1 -1
- package/dist/components/digitalsee/workflow/Nodes/classicNodePackageNodes.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/Nodes/classicNodePackagePortLayout.d.ts +23 -0
- package/dist/components/digitalsee/workflow/Nodes/classicNodePackagePortLayout.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/Nodes/components/NextNodeOperations.d.ts +1 -1
- package/dist/components/digitalsee/workflow/Nodes/useClassicNodePackagePorts.d.ts +26 -0
- package/dist/components/digitalsee/workflow/Nodes/useClassicNodePackagePorts.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/NodesConfig/ActionNodeConfig/index.d.ts +2 -0
- package/dist/components/digitalsee/workflow/NodesConfig/NextNodeConfig/index.d.ts +4 -2
- package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/index.d.ts +2 -0
- package/dist/components/digitalsee/workflow/NodesConfig/submitPayload.d.ts +23 -0
- package/dist/components/digitalsee/workflow/NodesConfig/submitPayload.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/ActionItem.d.ts +1 -1
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/EntryTypeSelector.d.ts +8 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/NodeCardList.d.ts +19 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/hooks/useActions.d.ts +2 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/hooks/useCategories.d.ts +7 -4
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/hooks/useConnectableNodeSelector.d.ts +40 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/hooks/useNavigation.d.ts +4 -2
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/hooks/useNavigation.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/hooks/useNodeActionState.d.ts +30 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/hooks/useNodeSelectorPresentation.d.ts +24 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/types.d.ts +26 -6
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/connectableActionLoader.d.ts +16 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/connectableActionLoader.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/connectableFallback.d.ts +2 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/connectableFallback.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/connectableQuery.d.ts +40 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/connectableQuery.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/connectableResponse.d.ts +35 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/connectableResponse.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/dataTransformers.d.ts +13 -2
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/filterEdgeInsertActions.d.ts +62 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/filterEdgeInsertActions.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/nodeAddContext.d.ts +26 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/nodeAddContext.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/queryParams.d.ts +18 -0
- package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/queryParams.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/Panels/SimpleNodeSelectorPanel/index.d.ts +2 -1
- package/dist/components/digitalsee/workflow/api/connectable.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/api/connectable.types.d.ts +75 -0
- package/dist/components/digitalsee/workflow/api/dip.types.d.ts +38 -4
- package/dist/components/digitalsee/workflow/api/index.d.ts +11 -2
- package/dist/components/digitalsee/workflow/config/defaultCanvasEngineConfig.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/config/defaultNodeSelectorConfig.d.ts +9 -0
- package/dist/components/digitalsee/workflow/enums/canvas.d.ts +5 -2
- package/dist/components/digitalsee/workflow/enums/node.d.ts +4 -0
- package/dist/components/digitalsee/workflow/events/eventBus.d.ts +2 -12
- package/dist/components/digitalsee/workflow/hooks/use-nodes-interaction.d.ts +1 -1
- package/dist/components/digitalsee/workflow/hooks/usePanel.d.ts +3 -17
- package/dist/components/digitalsee/workflow/index.d.ts +2 -1
- package/dist/components/digitalsee/workflow/store/panelSlice.d.ts +122 -25
- package/dist/components/digitalsee/workflow/types/Node.d.ts +1 -1
- package/dist/components/digitalsee/workflow/types/NodeAddContext.d.ts +31 -0
- package/dist/components/digitalsee/workflow/types/engine.d.ts +17 -0
- package/dist/components/digitalsee/workflow/utils/classicNodeActionIdentity.d.ts +7 -0
- package/dist/components/digitalsee/workflow/utils/classicNodeActionIdentity.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/utils/classicNodePackageConnection.d.ts +28 -0
- package/dist/components/digitalsee/workflow/utils/classicNodePackageConnection.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/utils/classicNodePackageGraphValidation.d.ts +29 -0
- package/dist/components/digitalsee/workflow/utils/classicNodePackageGraphValidation.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/utils/compatiblePortSelection.d.ts +79 -0
- package/dist/components/digitalsee/workflow/utils/compatiblePortSelection.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/utils/mcpCanvas.d.ts +33 -0
- package/dist/components/digitalsee/workflow/utils/mcpCanvas.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/utils/nextNodeSchemaCache.d.ts +8 -0
- package/dist/components/digitalsee/workflow/utils/nodeDataFormatter.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/utils/portConnectionValidationMessages.d.ts +48 -0
- package/dist/components/digitalsee/workflow/utils/portConnectionValidationMessages.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/utils/portConnectionValidator.d.ts +66 -0
- package/dist/components/digitalsee/workflow/utils/portConnectionValidator.test.d.ts +1 -0
- package/dist/components/digitalsee/workflow/utils/workflowConnectionValidator.d.ts +20 -0
- package/dist/components/digitalsee/workflow/utils/workflowConnectionValidator.test.d.ts +1 -0
- package/dist/locales/en-US/link/flow.d.ts +22 -0
- package/dist/locales/en-US.d.ts +22 -0
- package/dist/locales/zh-CN/link/flow.d.ts +22 -0
- package/dist/locales/zh-CN.d.ts +22 -0
- package/dist/locales/zh-TW/link/flow.d.ts +22 -0
- package/dist/locales/zh-TW.d.ts +22 -0
- package/dist/rcs.css +1 -1
- package/dist/rcs.es.js +19972 -17600
- package/dist/rcs.es.js.map +1 -1
- package/dist/rcs.umd.js +60 -60
- package/dist/rcs.umd.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { CategoryItem, LinkSearchParams, NodeTypeItem } from '../types';
|
|
2
|
+
import { NodeAddInfo } from '../../../types/NodeAddContext';
|
|
3
|
+
interface UseNodeSelectorPresentationProps {
|
|
4
|
+
effectiveNodeAddInfo?: NodeAddInfo | null;
|
|
5
|
+
isEntryTypeSelection: boolean;
|
|
6
|
+
activeCategoryId?: string;
|
|
7
|
+
currentCategory: CategoryItem | null;
|
|
8
|
+
categoryNodes: NodeTypeItem[];
|
|
9
|
+
searchResults: NodeTypeItem[];
|
|
10
|
+
searchText: string;
|
|
11
|
+
isRealTriggerMode: boolean;
|
|
12
|
+
workflowId?: string;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* @description 汇总节点选择器的协议展示状态和列表/搜索派生参数。
|
|
16
|
+
*/
|
|
17
|
+
export declare function useNodeSelectorPresentation({ effectiveNodeAddInfo, isEntryTypeSelection, activeCategoryId, currentCategory, categoryNodes, searchResults, searchText, isRealTriggerMode, workflowId, }: UseNodeSelectorPresentationProps): {
|
|
18
|
+
panelTitle: string;
|
|
19
|
+
searchPlaceholder: string;
|
|
20
|
+
visibleNodes: NodeTypeItem[];
|
|
21
|
+
buildSearchParams: () => LinkSearchParams;
|
|
22
|
+
isMcpServerEntryMode: boolean;
|
|
23
|
+
};
|
|
24
|
+
export {};
|
|
@@ -5,6 +5,9 @@ import { NodeType } from '../../types/Node';
|
|
|
5
5
|
*/
|
|
6
6
|
export interface NodeTypeItem {
|
|
7
7
|
id: string;
|
|
8
|
+
/** 后端返回稳定标识时才允许展开/选择。 */
|
|
9
|
+
selectable?: boolean;
|
|
10
|
+
identifierSource?: string;
|
|
8
11
|
type: string;
|
|
9
12
|
name: string;
|
|
10
13
|
description: string;
|
|
@@ -23,7 +26,7 @@ export interface NodeTypeItem {
|
|
|
23
26
|
defaultExpanded?: boolean;
|
|
24
27
|
matchType?: 'CONNECTOR_ONL' | 'CONNECTOR_ONLY' | 'ACTION_ONLY' | 'BOTH_MATCHED' | 'BOTH' | string;
|
|
25
28
|
connector?: ConnectorInfo;
|
|
26
|
-
/**
|
|
29
|
+
/** 新版 NodeSchema 版本号;CLASSIC nodepackage 兼容链路也会使用 */
|
|
27
30
|
nodeVersion?: number;
|
|
28
31
|
}
|
|
29
32
|
/**
|
|
@@ -41,6 +44,12 @@ export interface NodeFetchResult {
|
|
|
41
44
|
*/
|
|
42
45
|
export interface ActionItem {
|
|
43
46
|
id: string;
|
|
47
|
+
/** UI 列表使用稳定 id;创建 CLASSIC 节点时必须使用后端原始 Long action_id。 */
|
|
48
|
+
backendActionId?: string;
|
|
49
|
+
action_id?: string;
|
|
50
|
+
/** 后端返回稳定标识时才允许创建节点。 */
|
|
51
|
+
selectable?: boolean;
|
|
52
|
+
identifierSource?: string;
|
|
44
53
|
type: NodeType;
|
|
45
54
|
action_type: NodeType;
|
|
46
55
|
action_key?: string;
|
|
@@ -54,11 +63,11 @@ export interface ActionItem {
|
|
|
54
63
|
connector_name: string;
|
|
55
64
|
config_schema?: any;
|
|
56
65
|
node_schema?: DipNodeSchema;
|
|
57
|
-
/**
|
|
66
|
+
/** nodepackage 节点 key;CLASSIC 模式下由 action_key 映射 */
|
|
58
67
|
nodeKey?: string;
|
|
59
|
-
/**
|
|
68
|
+
/** 新版 NodeSchema 版本号;CLASSIC nodepackage 兼容链路也会使用 */
|
|
60
69
|
nodeVersion?: number;
|
|
61
|
-
/**
|
|
70
|
+
/** 节点分类;NEXT 暂废分支和 CLASSIC nodepackage 兼容链路都会传递 */
|
|
62
71
|
category?: string;
|
|
63
72
|
/** 是否为动作节点 */
|
|
64
73
|
isAction?: boolean;
|
|
@@ -89,6 +98,10 @@ export interface ConnectorInfo {
|
|
|
89
98
|
*/
|
|
90
99
|
export interface CategoryItem {
|
|
91
100
|
id: string;
|
|
101
|
+
/** connectable 接口需要的数值分类 ID。 */
|
|
102
|
+
categoryId?: string | number;
|
|
103
|
+
/** 缺少数值分类 ID 时仍展示,但不能作为服务端筛选条件。 */
|
|
104
|
+
filterable?: boolean;
|
|
92
105
|
name: string;
|
|
93
106
|
description: string;
|
|
94
107
|
icon?: string;
|
|
@@ -101,12 +114,14 @@ export interface CategoryItem {
|
|
|
101
114
|
*/
|
|
102
115
|
export interface ApiActionItem {
|
|
103
116
|
id: string;
|
|
117
|
+
backendActionId?: string;
|
|
118
|
+
action_id?: string;
|
|
104
119
|
action_key?: string;
|
|
105
120
|
action_ver?: number;
|
|
106
121
|
is_trigger: number;
|
|
107
122
|
name: string;
|
|
108
123
|
description: string | null;
|
|
109
|
-
connector_id: string;
|
|
124
|
+
connector_id: string | null;
|
|
110
125
|
status: number;
|
|
111
126
|
protocol: string;
|
|
112
127
|
config_schema: any;
|
|
@@ -119,11 +134,12 @@ export interface ApiActionItem {
|
|
|
119
134
|
/**
|
|
120
135
|
* 面板属性接口定义
|
|
121
136
|
*/
|
|
137
|
+
export type CategoryRequestType = 'trigger' | 'action' | 'tool' | 'mcp' | 'mcp_trigger' | 'model' | 'memory';
|
|
122
138
|
export interface ModernNodeSelectorProps {
|
|
123
139
|
availableCategories?: CategoryItem[];
|
|
124
140
|
initialCategory?: string;
|
|
125
141
|
onSearch?: (params?: LinkSearchParams) => Promise<NodeFetchResult>;
|
|
126
|
-
onFetchCategories?: (type?:
|
|
142
|
+
onFetchCategories?: (type?: CategoryRequestType) => Promise<CategoryItem[]>;
|
|
127
143
|
onFetchNodesByCategory?: (params?: LinkSearchParams) => Promise<NodeFetchResult>;
|
|
128
144
|
onFetchSubCategories?: (categoryId: string) => Promise<CategoryItem[]>;
|
|
129
145
|
restrictToCategory?: string;
|
|
@@ -133,9 +149,13 @@ export interface ModernNodeSelectorProps {
|
|
|
133
149
|
*/
|
|
134
150
|
export interface LinkSearchParams {
|
|
135
151
|
name?: string;
|
|
152
|
+
keyword?: string;
|
|
153
|
+
linkId?: string;
|
|
154
|
+
categoryId?: string | number;
|
|
136
155
|
build_type?: string;
|
|
137
156
|
deployment_type?: string;
|
|
138
157
|
app_domain_category?: string;
|
|
158
|
+
action_type?: string;
|
|
139
159
|
page?: number;
|
|
140
160
|
size?: number;
|
|
141
161
|
type?: string;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { QueryConnectableNodePackageDto } from '../../../api/connectable.types';
|
|
2
|
+
import { ActionItem, NodeFetchResult, NodeTypeItem } from '../types';
|
|
3
|
+
interface LoadConnectableNodeActionsOptions {
|
|
4
|
+
node: NodeTypeItem;
|
|
5
|
+
query: QueryConnectableNodePackageDto | null;
|
|
6
|
+
fallbackToLegacy: boolean;
|
|
7
|
+
fetchConnectablePage: (query: QueryConnectableNodePackageDto) => Promise<NodeFetchResult>;
|
|
8
|
+
fetchLegacyActions: () => Promise<ActionItem[]>;
|
|
9
|
+
filterPage?: (page: NodeFetchResult) => NodeFetchResult;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* 加载连接器动作;connectable 查询不可用或明确未发布时回退旧 `/actions/v2`。
|
|
13
|
+
* 不能回退 `/links/search`,因为该接口在 linkId 场景不会加载 matchedActions。
|
|
14
|
+
*/
|
|
15
|
+
export declare function loadConnectableNodeActions({ node, query, fallbackToLegacy, fetchConnectablePage, fetchLegacyActions, filterPage, }: LoadConnectableNodeActionsOptions): Promise<ActionItem[]>;
|
|
16
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { QueryConnectableNodePackageDto } from '../../../api/connectable.types';
|
|
2
|
+
type ConnectableNodeId = string | number;
|
|
3
|
+
export type ConnectableQueryContext = {
|
|
4
|
+
mode: 'independent';
|
|
5
|
+
} | {
|
|
6
|
+
mode: 'source';
|
|
7
|
+
sourceId: ConnectableNodeId;
|
|
8
|
+
sourceHandle: string;
|
|
9
|
+
} | {
|
|
10
|
+
mode: 'target';
|
|
11
|
+
targetId: ConnectableNodeId;
|
|
12
|
+
targetHandle: string;
|
|
13
|
+
} | {
|
|
14
|
+
mode: 'edge-insert';
|
|
15
|
+
sourceId: ConnectableNodeId;
|
|
16
|
+
sourceHandle: string;
|
|
17
|
+
targetId: ConnectableNodeId;
|
|
18
|
+
targetHandle: string;
|
|
19
|
+
};
|
|
20
|
+
export interface ConnectableQueryOptions {
|
|
21
|
+
scene: string;
|
|
22
|
+
trigger: boolean;
|
|
23
|
+
categoryId?: string | number | null;
|
|
24
|
+
linkId?: string | null;
|
|
25
|
+
keyword?: string | null;
|
|
26
|
+
page?: number | null;
|
|
27
|
+
size?: number | null;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* 校验后端 Long 节点 ID,并保持字符串原值以避免 19 位雪花 ID 精度丢失。
|
|
31
|
+
* number 只接受 JS 安全正整数;临时 ReactFlow id 返回 undefined。
|
|
32
|
+
*/
|
|
33
|
+
export declare const parsePersistedNodeId: (value: ConnectableNodeId) => string | number | undefined;
|
|
34
|
+
/**
|
|
35
|
+
* 将节点新增上下文转换为后端三种合法查询之一。
|
|
36
|
+
*
|
|
37
|
+
* `edge-insert` 暂按 source 查询,原 target 由调用方保留并在本地求交。
|
|
38
|
+
*/
|
|
39
|
+
export declare const buildConnectableQuery: (context: ConnectableQueryContext, options: ConnectableQueryOptions) => QueryConnectableNodePackageDto | null;
|
|
40
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { ApiActionItem, ConnectorInfo } from '../types';
|
|
2
|
+
export interface NormalizedConnectableCategory {
|
|
3
|
+
/** 面板稳定 key;有 categoryId 时与 categoryId 一致。 */
|
|
4
|
+
id: string;
|
|
5
|
+
/** 后端分类筛选参数;缺失时该分类只能展示,不能用于过滤。 */
|
|
6
|
+
categoryId?: string | number;
|
|
7
|
+
name: string;
|
|
8
|
+
description: string;
|
|
9
|
+
icon?: string;
|
|
10
|
+
searchAction: boolean;
|
|
11
|
+
filterable: boolean;
|
|
12
|
+
}
|
|
13
|
+
export interface NormalizedConnectableConnector extends ConnectorInfo {
|
|
14
|
+
selectable: boolean;
|
|
15
|
+
identifierSource?: string;
|
|
16
|
+
}
|
|
17
|
+
export interface NormalizedConnectableAction extends ApiActionItem {
|
|
18
|
+
selectable: boolean;
|
|
19
|
+
identifierSource?: string;
|
|
20
|
+
}
|
|
21
|
+
export interface NormalizedConnectablePluginItem {
|
|
22
|
+
connector: NormalizedConnectableConnector;
|
|
23
|
+
matched_actions: NormalizedConnectableAction[];
|
|
24
|
+
default_expanded: boolean;
|
|
25
|
+
match_type?: string;
|
|
26
|
+
}
|
|
27
|
+
export interface NormalizedConnectablePluginPage {
|
|
28
|
+
items: NormalizedConnectablePluginItem[];
|
|
29
|
+
total: number;
|
|
30
|
+
size: number;
|
|
31
|
+
page: number;
|
|
32
|
+
pages: number;
|
|
33
|
+
}
|
|
34
|
+
export declare const normalizeConnectableCategories: (response: unknown) => NormalizedConnectableCategory[];
|
|
35
|
+
export declare const normalizeConnectablePluginPage: (response: unknown) => NormalizedConnectablePluginPage;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,7 +1,18 @@
|
|
|
1
|
-
import { ActionItem, ApiActionItem, ConnectorInfo, LinkSearchParams, NodeFetchResult } from '../types';
|
|
1
|
+
import { ActionItem, ApiActionItem, CategoryItem, CategoryRequestType, ConnectorInfo, LinkSearchParams, NodeFetchResult } from '../types';
|
|
2
|
+
import { QueryConnectableNodePackageDto } from '../../../api/connectable.types';
|
|
2
3
|
export declare const transformAction: (action: ApiActionItem, connector: ConnectorInfo) => ActionItem;
|
|
4
|
+
/**
|
|
5
|
+
* 将 connectable 分类响应转换成现有面板模型。
|
|
6
|
+
*/
|
|
7
|
+
export declare const transformConnectableCategoriesResponse: (response: unknown) => CategoryItem[];
|
|
8
|
+
/**
|
|
9
|
+
* 将 connectable 节点包分页响应转换成现有面板模型。
|
|
10
|
+
*/
|
|
11
|
+
export declare const transformConnectablePluginResponse: (response: unknown) => NodeFetchResult;
|
|
12
|
+
export declare const fetchConnectableCategories: (query: QueryConnectableNodePackageDto) => Promise<CategoryItem[]>;
|
|
13
|
+
export declare const fetchConnectableNodes: (query: QueryConnectableNodePackageDto) => Promise<NodeFetchResult>;
|
|
3
14
|
export declare const fetchNodesByCategory: (params?: LinkSearchParams) => Promise<NodeFetchResult>;
|
|
4
|
-
export declare const fetchCategories: (type?:
|
|
15
|
+
export declare const fetchCategories: (type?: CategoryRequestType) => Promise<CategoryItem[] | {
|
|
5
16
|
id: any;
|
|
6
17
|
name: any;
|
|
7
18
|
description: any;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { DipNodeSchema } from '../../../api/dip';
|
|
2
|
+
import { ActionItem, NodeFetchResult } from '../types';
|
|
3
|
+
import { PortConnectionEdge, PortConnectionNode } from '../../../utils/portConnectionValidator';
|
|
4
|
+
import { Edge, Node } from '@xyflow/react';
|
|
5
|
+
type SourceSchema = Pick<DipNodeSchema, 'outputs'>;
|
|
6
|
+
type TargetSchema = Pick<DipNodeSchema, 'inputs'>;
|
|
7
|
+
/** 边中插入候选动作执行双侧本地校验所需的稳定上下文。 */
|
|
8
|
+
export interface EdgeInsertActionFilterContext {
|
|
9
|
+
sourceNode: PortConnectionNode;
|
|
10
|
+
targetNode: PortConnectionNode;
|
|
11
|
+
sourceSchema: SourceSchema;
|
|
12
|
+
targetSchema: TargetSchema;
|
|
13
|
+
sourceHandle: string;
|
|
14
|
+
targetHandle: string;
|
|
15
|
+
edges?: readonly PortConnectionEdge[];
|
|
16
|
+
replacedEdgeId?: string;
|
|
17
|
+
}
|
|
18
|
+
export interface EdgeInsertActionFilterStats {
|
|
19
|
+
contextReady: boolean;
|
|
20
|
+
serverActionCount: number;
|
|
21
|
+
compatibleActionCount: number;
|
|
22
|
+
filteredActionCount: number;
|
|
23
|
+
sourceCompatibleActionCount: number;
|
|
24
|
+
targetCompatibleActionCount: number;
|
|
25
|
+
missingActionSchemaCount: number;
|
|
26
|
+
}
|
|
27
|
+
export interface EdgeInsertActionFilterResult {
|
|
28
|
+
actions: ActionItem[];
|
|
29
|
+
stats: EdgeInsertActionFilterStats;
|
|
30
|
+
}
|
|
31
|
+
export interface EdgeInsertEndpointContext {
|
|
32
|
+
sourceId: string | number;
|
|
33
|
+
targetId: string | number;
|
|
34
|
+
sourceHandle: string;
|
|
35
|
+
targetHandle: string;
|
|
36
|
+
}
|
|
37
|
+
export type EdgeInsertActionFilterContextResolutionCode = 'READY' | 'SOURCE_NODE_NOT_FOUND' | 'TARGET_NODE_NOT_FOUND' | 'SOURCE_SCHEMA_NOT_READY' | 'TARGET_SCHEMA_NOT_READY';
|
|
38
|
+
export interface EdgeInsertActionFilterContextResolution {
|
|
39
|
+
code: EdgeInsertActionFilterContextResolutionCode;
|
|
40
|
+
context: EdgeInsertActionFilterContext | null;
|
|
41
|
+
}
|
|
42
|
+
export interface ResolveEdgeInsertActionFilterContextInput {
|
|
43
|
+
edgeContext: EdgeInsertEndpointContext;
|
|
44
|
+
nodes: readonly Node[];
|
|
45
|
+
edges: readonly Edge[];
|
|
46
|
+
replacedEdgeId?: string;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* 对边中插入动作执行 source→candidate 与 candidate→target 的本地求交。
|
|
50
|
+
*
|
|
51
|
+
* 后端明确禁止同时携带 source/target 端点,因此 target 侧使用动作响应中的完整
|
|
52
|
+
* NodeSchema 在前端二次过滤。
|
|
53
|
+
*/
|
|
54
|
+
export declare function filterEdgeInsertActions(actions: readonly ActionItem[], context: EdgeInsertActionFilterContext | null): EdgeInsertActionFilterResult;
|
|
55
|
+
/** 从当前 ReactFlow 快照解析候选过滤所需的原边两端。 */
|
|
56
|
+
export declare function resolveEdgeInsertActionFilterContext({ edgeContext, nodes, edges, replacedEdgeId, }: ResolveEdgeInsertActionFilterContextInput): EdgeInsertActionFilterContextResolution;
|
|
57
|
+
/** 对 connectable 连接器分页中的所有 matchedActions 执行双侧求交并汇总统计。 */
|
|
58
|
+
export declare function filterEdgeInsertNodePage(page: NodeFetchResult, context: EdgeInsertActionFilterContext | null): {
|
|
59
|
+
page: NodeFetchResult;
|
|
60
|
+
stats: EdgeInsertActionFilterStats;
|
|
61
|
+
};
|
|
62
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/nodeAddContext.d.ts
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { ConnectableQueryContext } from './connectableQuery';
|
|
2
|
+
interface EdgeInsertInfo {
|
|
3
|
+
source?: string | number;
|
|
4
|
+
target?: string | number;
|
|
5
|
+
sourceHandle?: string | null;
|
|
6
|
+
sourceHandleId?: string | null;
|
|
7
|
+
targetHandle?: string | null;
|
|
8
|
+
targetHandleId?: string | null;
|
|
9
|
+
}
|
|
10
|
+
export interface NodeAddContextInput {
|
|
11
|
+
sourceNodeId?: string;
|
|
12
|
+
sourceHandle?: string;
|
|
13
|
+
targetNodeId?: string;
|
|
14
|
+
targetHandle?: string;
|
|
15
|
+
edge?: EdgeInsertInfo | null;
|
|
16
|
+
position?: {
|
|
17
|
+
x: number;
|
|
18
|
+
y: number;
|
|
19
|
+
};
|
|
20
|
+
trigger?: boolean;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* 将画布面板上下文收敛为 connectable 查询的四种前端模式。
|
|
24
|
+
*/
|
|
25
|
+
export declare const resolveConnectableQueryContext: (info: NodeAddContextInput | null | undefined) => ConnectableQueryContext | null;
|
|
26
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/queryParams.d.ts
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { NodeProtocol } from '../../../types/NodeProtocol';
|
|
2
|
+
interface CanvasContextNode {
|
|
3
|
+
data?: {
|
|
4
|
+
__isMcpServerCanvas?: unknown;
|
|
5
|
+
};
|
|
6
|
+
}
|
|
7
|
+
interface ResolveNodeSelectorProtocolParams {
|
|
8
|
+
protocol?: string;
|
|
9
|
+
sourceNode?: CanvasContextNode | null;
|
|
10
|
+
targetNode?: CanvasContextNode | null;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Resolve the protocol used by node-catalog requests without changing the
|
|
14
|
+
* selector's entry mode. MCP execution-node selectors have no entry protocol,
|
|
15
|
+
* so they fall back to the canvas marker carried by their source/target node.
|
|
16
|
+
*/
|
|
17
|
+
export declare const resolveNodeSelectorProtocol: ({ protocol, sourceNode, targetNode, }: ResolveNodeSelectorProtocolParams) => NodeProtocol.AI_LANGUAGE_MODEL | NodeProtocol.AI_MEMORY | NodeProtocol.MCP | NodeProtocol.MCP_SERVER;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
3
|
+
* 简化版节点选择面板(暂废的 DIP Next 模式专用)
|
|
4
4
|
*
|
|
5
5
|
* 仅依赖 GET /dip/api/nodes 获取全部节点列表
|
|
6
6
|
* 支持客户端搜索和按 pluginId 分组显示
|
|
7
|
+
* 当前 nodepackage 节点仍通过 Classic 的 ModernNodeSelectorPanel 获取 ACM actions。
|
|
7
8
|
*/
|
|
8
9
|
declare const SimpleNodeSelectorPanel: React.FC;
|
|
9
10
|
export default SimpleNodeSelectorPanel;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ACM 的 Long ID 在 JSON 响应中序列化为字符串,19 位雪花 ID 不能转成 JS number。
|
|
3
|
+
* 请求侧保留字符串可避免精度损失;Jackson 可将纯数字字符串反序列化为 Long。
|
|
4
|
+
*/
|
|
5
|
+
export type ConnectablePersistedNodeId = string | number;
|
|
6
|
+
/**
|
|
7
|
+
* 可连线节点包查询的公共筛选条件。
|
|
8
|
+
*
|
|
9
|
+
* `mode` 是前端判别字段,API 方法发送请求前会将它移除。
|
|
10
|
+
*/
|
|
11
|
+
export interface ConnectableNodePackageQueryBase {
|
|
12
|
+
scene: string;
|
|
13
|
+
trigger: boolean;
|
|
14
|
+
categoryId?: ConnectablePersistedNodeId;
|
|
15
|
+
linkId?: string;
|
|
16
|
+
keyword?: string;
|
|
17
|
+
page?: number;
|
|
18
|
+
size?: number;
|
|
19
|
+
}
|
|
20
|
+
export interface IndependentConnectableNodePackageQuery extends ConnectableNodePackageQueryBase {
|
|
21
|
+
mode: 'independent';
|
|
22
|
+
sourceId?: never;
|
|
23
|
+
sourceHandle?: never;
|
|
24
|
+
targetId?: never;
|
|
25
|
+
targetHandle?: never;
|
|
26
|
+
}
|
|
27
|
+
export interface SourceConnectableNodePackageQuery extends ConnectableNodePackageQueryBase {
|
|
28
|
+
mode: 'source';
|
|
29
|
+
sourceId: ConnectablePersistedNodeId;
|
|
30
|
+
sourceHandle: string;
|
|
31
|
+
targetId?: never;
|
|
32
|
+
targetHandle?: never;
|
|
33
|
+
}
|
|
34
|
+
export interface TargetConnectableNodePackageQuery extends ConnectableNodePackageQueryBase {
|
|
35
|
+
mode: 'target';
|
|
36
|
+
targetId: ConnectablePersistedNodeId;
|
|
37
|
+
targetHandle: string;
|
|
38
|
+
sourceId?: never;
|
|
39
|
+
sourceHandle?: never;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* 前端使用的强类型 QueryConnectableNodePackageDto。
|
|
43
|
+
*
|
|
44
|
+
* 判别联合在编译期排除 source/target 半组参数以及两组参数同时出现的情况。
|
|
45
|
+
*/
|
|
46
|
+
export type QueryConnectableNodePackageDto = IndependentConnectableNodePackageQuery | SourceConnectableNodePackageQuery | TargetConnectableNodePackageQuery;
|
|
47
|
+
interface ConnectableNodePackageRequestBase {
|
|
48
|
+
scene: string;
|
|
49
|
+
trigger: boolean;
|
|
50
|
+
category_id?: ConnectablePersistedNodeId;
|
|
51
|
+
link_id?: string;
|
|
52
|
+
keyword?: string;
|
|
53
|
+
page?: number;
|
|
54
|
+
size?: number;
|
|
55
|
+
}
|
|
56
|
+
/** 实际发送给 ACM SNAKE_CASE ObjectMapper 的 wire DTO。 */
|
|
57
|
+
export type QueryConnectableNodePackageRequestBody = (ConnectableNodePackageRequestBase & {
|
|
58
|
+
source_id?: never;
|
|
59
|
+
source_handle?: never;
|
|
60
|
+
target_id?: never;
|
|
61
|
+
target_handle?: never;
|
|
62
|
+
}) | (ConnectableNodePackageRequestBase & {
|
|
63
|
+
source_id: ConnectablePersistedNodeId;
|
|
64
|
+
source_handle: string;
|
|
65
|
+
target_id?: never;
|
|
66
|
+
target_handle?: never;
|
|
67
|
+
}) | (ConnectableNodePackageRequestBase & {
|
|
68
|
+
target_id: ConnectablePersistedNodeId;
|
|
69
|
+
target_handle: string;
|
|
70
|
+
source_id?: never;
|
|
71
|
+
source_handle?: never;
|
|
72
|
+
});
|
|
73
|
+
/** 移除只在前端使用的判别字段,避免污染后端请求体。 */
|
|
74
|
+
export declare const toConnectableNodePackageRequestBody: (query: QueryConnectableNodePackageDto) => QueryConnectableNodePackageRequestBody;
|
|
75
|
+
export {};
|
|
@@ -300,10 +300,10 @@ export interface DipWorkflowDefinition {
|
|
|
300
300
|
* | `SELECT` | 下拉选择 | Select |
|
|
301
301
|
* | `DATETIME` | 日期时间 | DatePicker |
|
|
302
302
|
* | `OBJECT` | 嵌套对象 | 递归渲染子字段 |
|
|
303
|
-
* | `ARRAY` | 数组/列表 | 动态增减表单项 |
|
|
303
|
+
* | `ARRAY` / `DYNAMIC_ARRAY` | 数组/列表 | 动态增减表单项 |
|
|
304
304
|
* | `KEYVALUE` | 键值对列表 | Key-Value 编辑器 |
|
|
305
305
|
*/
|
|
306
|
-
export type DipFieldType = 'STRING' | 'TEXTAREA' | 'PASSWORD' | 'HIDDEN' | 'NUMBER' | 'BOOLEAN' | 'SELECT' | 'DATETIME' | 'OBJECT' | 'ARRAY' | 'KEYVALUE';
|
|
306
|
+
export type DipFieldType = 'STRING' | 'TEXTAREA' | 'PASSWORD' | 'HIDDEN' | 'NUMBER' | 'BOOLEAN' | 'SELECT' | 'DATETIME' | 'OBJECT' | 'ARRAY' | 'DYNAMIC_ARRAY' | 'KEYVALUE';
|
|
307
307
|
/**
|
|
308
308
|
* 数组元素类型
|
|
309
309
|
*
|
|
@@ -381,8 +381,12 @@ export interface DipFieldValidation {
|
|
|
381
381
|
pattern?: string;
|
|
382
382
|
/** 最小字符长度(STRING / TEXTAREA 类型) */
|
|
383
383
|
minLength?: number;
|
|
384
|
+
/** 最小字符长度(后端 snake_case 字段) */
|
|
385
|
+
min_length?: number;
|
|
384
386
|
/** 最大字符长度(STRING / TEXTAREA 类型) */
|
|
385
387
|
maxLength?: number;
|
|
388
|
+
/** 最大字符长度(后端 snake_case 字段) */
|
|
389
|
+
max_length?: number;
|
|
386
390
|
}
|
|
387
391
|
/**
|
|
388
392
|
* 字段 Schema 定义
|
|
@@ -393,7 +397,7 @@ export interface DipFieldValidation {
|
|
|
393
397
|
*
|
|
394
398
|
* 不同 {@link DipFieldType} 使用不同的可选字段:
|
|
395
399
|
* - `SELECT` → `options`
|
|
396
|
-
* - `ARRAY` → `item_type`, `item_schema`, `item_label`, `min_items`, `max_items`
|
|
400
|
+
* - `ARRAY` / `DYNAMIC_ARRAY` → `item_type`, `item_schema`, `item_label`, `min_items`, `max_items`
|
|
397
401
|
* - `OBJECT` → `properties`
|
|
398
402
|
* - `KEYVALUE` → `key_placeholder`, `value_placeholder`
|
|
399
403
|
* - `DATETIME` → `picker_mode`
|
|
@@ -419,7 +423,7 @@ export interface DipFieldSchema {
|
|
|
419
423
|
example?: string;
|
|
420
424
|
/** 下拉选项列表(仅 type 为 SELECT 时使用) */
|
|
421
425
|
options?: DipSelectOption[];
|
|
422
|
-
/** 数组元素类型(仅 type 为 ARRAY 时使用) */
|
|
426
|
+
/** 数组元素类型(仅 type 为 ARRAY / DYNAMIC_ARRAY 时使用) */
|
|
423
427
|
item_type?: DipItemType;
|
|
424
428
|
/** 数组元素为 OBJECT 时的子字段 Schema(递归定义) */
|
|
425
429
|
item_schema?: DipFieldSchema[];
|
|
@@ -461,6 +465,36 @@ export interface DipPortSchema {
|
|
|
461
465
|
name: string;
|
|
462
466
|
/** UI 显示名称,如 "输入"、"True 分支"、"默认输出" */
|
|
463
467
|
displayName?: string;
|
|
468
|
+
/** ACM SNAKE_CASE 传输字段;消费前由 normalizePortSchema 归一化 */
|
|
469
|
+
display_name?: string;
|
|
470
|
+
/**
|
|
471
|
+
* 端口连接能力类型,缺失或空字符串时按 `main` 处理。
|
|
472
|
+
*
|
|
473
|
+
* 常见值:`main`、`trigger`、`control`、`ai_model`、`ai_tool`、`ai_memory`。
|
|
474
|
+
*/
|
|
475
|
+
type?: string;
|
|
476
|
+
/** 输入端口是否必须存在至少一条连线 */
|
|
477
|
+
required?: boolean;
|
|
478
|
+
/** 端口允许的最大连线数,`null` 或缺失表示不限制 */
|
|
479
|
+
maxConnections?: number | null;
|
|
480
|
+
/** ACM SNAKE_CASE 传输字段 */
|
|
481
|
+
max_connections?: number | null;
|
|
482
|
+
/** 输入端口允许连接的源节点 schema key 白名单,空列表表示不限制 */
|
|
483
|
+
allowedSourceNodeKeys?: string[];
|
|
484
|
+
/** ACM SNAKE_CASE 传输字段 */
|
|
485
|
+
allowed_source_node_keys?: string[];
|
|
486
|
+
/** 输出端口允许连接的目标节点 schema key 白名单,空列表表示不限制 */
|
|
487
|
+
allowedTargetNodeKeys?: string[];
|
|
488
|
+
/** ACM SNAKE_CASE 传输字段 */
|
|
489
|
+
allowed_target_node_keys?: string[];
|
|
490
|
+
/** 输入端口禁止连接的源节点 schema key 黑名单 */
|
|
491
|
+
deniedSourceNodeKeys?: string[];
|
|
492
|
+
/** ACM SNAKE_CASE 传输字段 */
|
|
493
|
+
denied_source_node_keys?: string[];
|
|
494
|
+
/** 输出端口禁止连接的目标节点 schema key 黑名单 */
|
|
495
|
+
deniedTargetNodeKeys?: string[];
|
|
496
|
+
/** ACM SNAKE_CASE 传输字段 */
|
|
497
|
+
denied_target_node_keys?: string[];
|
|
464
498
|
}
|
|
465
499
|
/**
|
|
466
500
|
* 节点输出字段 Schema
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import { QueryConnectableNodePackageDto } from './connectable.types';
|
|
1
2
|
import { DipNodeSchema } from './dip.types';
|
|
2
3
|
import { LinkSearchParams, LinkSearchResponse } from '../Panels/ModernNodeSelectorPanel/types';
|
|
3
4
|
import { AxiosRequestConfig } from 'axios';
|
|
5
|
+
export type { ConnectableNodePackageQueryBase, ConnectablePersistedNodeId, IndependentConnectableNodePackageQuery, QueryConnectableNodePackageDto, QueryConnectableNodePackageRequestBody, SourceConnectableNodePackageQuery, TargetConnectableNodePackageQuery, } from './connectable.types';
|
|
4
6
|
export interface WorkflowRequestOptions {
|
|
5
7
|
method?: AxiosRequestConfig['method'];
|
|
6
8
|
headers?: Record<string, string>;
|
|
@@ -13,6 +15,8 @@ export interface WorkflowApiEndpoints {
|
|
|
13
15
|
nodeCategory: string;
|
|
14
16
|
nodesList: string;
|
|
15
17
|
searchLinks: string;
|
|
18
|
+
connectableNodePackageCategories: string;
|
|
19
|
+
connectableNodePackagePlugins: string;
|
|
16
20
|
actions: string;
|
|
17
21
|
actionNodeSchema: string;
|
|
18
22
|
createNode: string;
|
|
@@ -78,13 +82,19 @@ export declare function apiGetNodesList(params: {
|
|
|
78
82
|
name?: string;
|
|
79
83
|
}): Promise<unknown>;
|
|
80
84
|
export declare function apiSearchLinks(params: LinkSearchParams): Promise<LinkSearchResponse>;
|
|
85
|
+
export declare function apiQueryConnectableNodePackageCategories(query: QueryConnectableNodePackageDto): Promise<unknown>;
|
|
86
|
+
export declare function apiQueryConnectableNodePackagePlugins(query: QueryConnectableNodePackageDto): Promise<unknown>;
|
|
81
87
|
export declare const apiGetActions: (params: {
|
|
82
88
|
linkId?: string;
|
|
83
89
|
name?: string;
|
|
84
90
|
actionType?: string;
|
|
91
|
+
action_type?: string;
|
|
85
92
|
trigger?: boolean;
|
|
86
93
|
protocol?: string;
|
|
87
|
-
|
|
94
|
+
page?: number;
|
|
95
|
+
size?: number;
|
|
96
|
+
flow_id?: string;
|
|
97
|
+
flowId?: string;
|
|
88
98
|
}) => Promise<any>;
|
|
89
99
|
export declare const apiGetActionNodeSchema: (nodeKey: string, version: number) => Promise<DipNodeSchema>;
|
|
90
100
|
export declare function apiCreateNode(data: any): Promise<unknown>;
|
|
@@ -195,4 +205,3 @@ export declare function onlineFlow(id: any): Promise<unknown>;
|
|
|
195
205
|
export declare const apiGetAccountInstanceV2: (linkId?: string | null, actionAccountSchemaId?: string | number) => Promise<unknown>;
|
|
196
206
|
export declare const getAppList: (params: any, formData?: any) => Promise<unknown>;
|
|
197
207
|
export declare const fetchSubFlowList: (name: any, formData?: any) => Promise<unknown>;
|
|
198
|
-
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -3,11 +3,14 @@
|
|
|
3
3
|
*/
|
|
4
4
|
/**
|
|
5
5
|
* 引擎模式
|
|
6
|
+
*
|
|
7
|
+
* 当前 AI 连接流主路径是 CLASSIC。日常描述里的“新版节点”通常指
|
|
8
|
+
* CLASSIC 模式兼容渲染新版 NodeSchema 的 nodepackage 节点,不是 NEXT 模式。
|
|
6
9
|
*/
|
|
7
10
|
export declare enum EngineMode {
|
|
8
|
-
/** 经典模式,使用 ACM
|
|
11
|
+
/** 经典模式,使用 ACM 后端;同时承载 nodepackage 节点的新版 schema 兼容渲染 */
|
|
9
12
|
CLASSIC = "classic",
|
|
10
|
-
/** Next 模式,使用 DIP 后端 + DynamicForm */
|
|
13
|
+
/** Next 模式,使用 DIP 后端 + DynamicForm;当前为暂废保留分支 */
|
|
11
14
|
NEXT = "next"
|
|
12
15
|
}
|
|
13
16
|
/**
|
|
@@ -19,6 +19,8 @@ export declare enum NodeType {
|
|
|
19
19
|
SELF_LOOP = "SelfLoopNode",
|
|
20
20
|
/** MCP服务节点 */
|
|
21
21
|
MCPServer = "MCPServerNode",
|
|
22
|
+
/** MCP网关触发节点 */
|
|
23
|
+
MCP_TRIGGER_NODE = "MCP_TRIGGER_NODE",
|
|
22
24
|
/** 内置MCP节点 */
|
|
23
25
|
BuiltinMCP = "BuiltinMCPNode",
|
|
24
26
|
/** 向量存储节点 */
|
|
@@ -31,6 +33,8 @@ export declare enum NodeType {
|
|
|
31
33
|
AI_SUB_NODE = "AISubNode",
|
|
32
34
|
/** MCP工具节点 */
|
|
33
35
|
MCP_TOOL = "MCPToolNode",
|
|
36
|
+
/** MCP网关工具列表节点 */
|
|
37
|
+
MCP_TOOLS_NODE = "MCP_TOOLS_NODE",
|
|
34
38
|
/** 多分支节点 */
|
|
35
39
|
SWITCH = "SwitchNode",
|
|
36
40
|
/** 便签节点 */
|