@digitalsee-ai/rcs 1.1.8 → 2.0.0-beta2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (168) hide show
  1. package/README.md +6 -38
  2. package/README.npm.md +37 -0
  3. package/dist/components/digitalsee/JsonRenderer/index.d.ts +1 -1
  4. package/dist/components/digitalsee/workflow/Canvas/FastOperationButtons.d.ts +5 -2
  5. package/dist/components/digitalsee/workflow/Canvas/FullscreenLoading.d.ts +10 -2
  6. package/dist/components/digitalsee/workflow/Canvas/MiniMap.d.ts +1 -1
  7. package/dist/components/digitalsee/workflow/Canvas/NodePlaceholder.d.ts +12 -0
  8. package/dist/components/digitalsee/workflow/Canvas/WorkflowCanvasHeader.d.ts +3 -6
  9. package/dist/components/digitalsee/workflow/Canvas/actionItemToNodeData.d.ts +1 -6
  10. package/dist/components/digitalsee/workflow/Canvas/constants.d.ts +6 -26
  11. package/dist/components/digitalsee/workflow/Canvas/hooks/{classicNodeAddConnection.d.ts → nodePackageAddConnection.d.ts} +3 -3
  12. package/dist/components/digitalsee/workflow/Canvas/hooks/useCanvasApi.d.ts +4 -2
  13. package/dist/components/digitalsee/workflow/Canvas/hooks/useDataLoading.d.ts +33 -4
  14. package/dist/components/digitalsee/workflow/Canvas/hooks/useNodeAddCallback.d.ts +2 -3
  15. package/dist/components/digitalsee/workflow/Canvas/hooks/useWorkflowCanvasState.d.ts +22 -4
  16. package/dist/components/digitalsee/workflow/Canvas/types.d.ts +18 -6
  17. package/dist/components/digitalsee/workflow/Edges/BaseEdge.d.ts +2 -0
  18. package/dist/components/digitalsee/workflow/Edges/EdgeFactory.d.ts +3 -8
  19. package/dist/components/digitalsee/workflow/Edges/edgeLayout.d.ts +73 -0
  20. package/dist/components/digitalsee/workflow/Handles/CustomHandle.d.ts +1 -0
  21. package/dist/components/digitalsee/workflow/Handles/customHandleConnectable.d.ts +19 -0
  22. package/dist/components/digitalsee/workflow/Nodes/DeclaredNode.d.ts +33 -0
  23. package/dist/components/digitalsee/workflow/Nodes/DynamicNode.d.ts +24 -0
  24. package/dist/components/digitalsee/workflow/Nodes/NodeFactory.d.ts +42 -4
  25. package/dist/components/digitalsee/workflow/Nodes/SuperBaseNode.d.ts +2 -1
  26. package/dist/components/digitalsee/workflow/Nodes/classicPortLayout.d.ts +51 -0
  27. package/dist/components/digitalsee/workflow/Nodes/components/NodeStatusBadge.d.ts +11 -0
  28. package/dist/components/digitalsee/workflow/Nodes/{classicNodePackagePortLayout.d.ts → nodePackagePortLayout.d.ts} +4 -4
  29. package/dist/components/digitalsee/workflow/Nodes/nodeTypeRegistry.d.ts +131 -0
  30. package/dist/components/digitalsee/workflow/Nodes/useNodePackagePorts.d.ts +35 -0
  31. package/dist/components/digitalsee/workflow/NodesConfig/NodePackageConfig/fieldSchemaAdapter.d.ts +14 -0
  32. package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/fields/RichTagInput/help.d.ts +5 -1
  33. package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/index.d.ts +1 -0
  34. package/dist/components/digitalsee/workflow/NodesConfig/components/NodeTest.d.ts +2 -0
  35. package/dist/components/digitalsee/workflow/NodesConfig/components/NodeTest.helpers.d.ts +11 -0
  36. package/dist/components/digitalsee/workflow/NodesConfig/components/VariableModal/tree-help.d.ts +5 -12
  37. package/dist/components/digitalsee/workflow/NodesConfig/submitPayload.d.ts +10 -17
  38. package/dist/components/digitalsee/workflow/Panels/CanvasConfigDebugger.d.ts +1 -1
  39. package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/CategoryItem.d.ts +1 -1
  40. package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/CategoryTabs.d.ts +1 -1
  41. package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/NodeCard.d.ts +1 -1
  42. package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/NodeItem.d.ts +1 -1
  43. package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/PanelHeader.d.ts +1 -1
  44. package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/hooks/useConnectableNodeSelector.d.ts +2 -5
  45. package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/types.d.ts +10 -4
  46. package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/connectableDataSource.d.ts +6 -10
  47. package/dist/components/digitalsee/workflow/Panels/SimpleNodeSelectorPanel/components/NodeListItem.d.ts +1 -1
  48. package/dist/components/digitalsee/workflow/api/dip.types.d.ts +30 -1
  49. package/dist/components/digitalsee/workflow/api/index.d.ts +3 -22
  50. package/dist/components/digitalsee/workflow/builtin/controls/ConfigSubflow/index.d.ts +2 -2
  51. package/dist/components/digitalsee/workflow/builtin/globalConfig/index.d.ts +5 -1
  52. package/dist/components/digitalsee/workflow/config/globalConfig.d.ts +1 -5
  53. package/dist/components/digitalsee/workflow/config/layerConfig.d.ts +14 -0
  54. package/dist/components/digitalsee/workflow/config/themeConfig.d.ts +19 -23
  55. package/dist/components/digitalsee/workflow/constants/nodePackageHandles.d.ts +10 -0
  56. package/dist/components/digitalsee/workflow/context/workflowTriggerContext.d.ts +22 -0
  57. package/dist/components/digitalsee/workflow/coverage/acceptanceManifest.d.ts +30 -0
  58. package/dist/components/digitalsee/workflow/coverage/runtimeCoverage.d.ts +34 -0
  59. package/dist/components/digitalsee/workflow/design-system/AiFlowNodeTestPanel.d.ts +24 -0
  60. package/dist/components/digitalsee/workflow/design-system/AiFlowVariableTree.d.ts +34 -0
  61. package/dist/components/digitalsee/workflow/design-system/index.d.ts +3 -0
  62. package/dist/components/digitalsee/workflow/design-system/tokens.d.ts +103 -0
  63. package/dist/components/digitalsee/workflow/enums/canvas.d.ts +0 -12
  64. package/dist/components/digitalsee/workflow/enums/edge.d.ts +4 -2
  65. package/dist/components/digitalsee/workflow/enums/node.d.ts +5 -6
  66. package/dist/components/digitalsee/workflow/enums/workflow.d.ts +1 -1
  67. package/dist/components/digitalsee/workflow/examples/global-config-example.d.ts +1 -1
  68. package/dist/components/digitalsee/workflow/hooks/state.hooks.d.ts +1 -7
  69. package/dist/components/digitalsee/workflow/hooks/use-flow-data-operation.d.ts +1 -1
  70. package/dist/components/digitalsee/workflow/hooks/useCanvasLayout.d.ts +1 -1
  71. package/dist/components/digitalsee/workflow/hooks/useCanvasMode.d.ts +8 -0
  72. package/dist/components/digitalsee/workflow/hooks/useHandleConnections.d.ts +9 -1
  73. package/dist/components/digitalsee/workflow/hooks/useVariables.d.ts +1 -0
  74. package/dist/components/digitalsee/workflow/hooks/useWorkflow.d.ts +1 -1
  75. package/dist/components/digitalsee/workflow/index.d.ts +18 -44
  76. package/dist/components/digitalsee/workflow/migration/umi.d.ts +1 -2
  77. package/dist/components/digitalsee/workflow/store/workflowSlice.d.ts +5 -2
  78. package/dist/components/digitalsee/workflow/types/Node.d.ts +2 -0
  79. package/dist/components/digitalsee/workflow/types/Workflow.d.ts +1 -1
  80. package/dist/components/digitalsee/workflow/types/engine.d.ts +21 -12
  81. package/dist/components/digitalsee/workflow/types/flowVersion.d.ts +0 -30
  82. package/dist/components/digitalsee/workflow/utils/connectionCheck.d.ts +30 -0
  83. package/dist/components/digitalsee/workflow/utils/layoutUtils.d.ts +2 -2
  84. package/dist/components/digitalsee/workflow/utils/mcpCanvas.d.ts +0 -40
  85. package/dist/components/digitalsee/workflow/utils/mode.d.ts +18 -0
  86. package/dist/components/digitalsee/workflow/utils/nodeAutoConnect.d.ts +24 -0
  87. package/dist/components/digitalsee/workflow/utils/nodeCommon.d.ts +5 -0
  88. package/dist/components/digitalsee/workflow/utils/nodeHandleLayout.d.ts +83 -0
  89. package/dist/components/digitalsee/workflow/utils/nodePackageConnection.d.ts +28 -0
  90. package/dist/components/digitalsee/workflow/utils/nodePackageGraphValidation.d.ts +29 -0
  91. package/dist/components/digitalsee/workflow/utils/nodePackageSchemaCache.d.ts +15 -0
  92. package/dist/components/digitalsee/workflow/utils/onNodeRemoveHook.d.ts +13 -0
  93. package/dist/components/digitalsee/workflow/utils/triggerNode.d.ts +13 -0
  94. package/dist/components/digitalsee/workflow/utils/workflowConnectionValidator.d.ts +1 -3
  95. package/dist/components/digitalsee/workflow/workflow.story-fixtures.d.ts +50 -0
  96. package/dist/components/dynamic-form/context/VariableSelectorContext.d.ts +17 -16
  97. package/dist/components/dynamic-form/index.d.ts +1 -1
  98. package/dist/index-CBoDAvhq.mjs +285 -0
  99. package/dist/{index-CRdKUD0G.mjs → index-zEq02rJh.mjs} +23582 -25697
  100. package/dist/locales/en-US/common.d.ts +29 -52
  101. package/dist/locales/en-US.d.ts +29 -52
  102. package/dist/locales/zh-CN/common.d.ts +29 -52
  103. package/dist/locales/zh-CN.d.ts +29 -52
  104. package/dist/locales/zh-TW/common.d.ts +29 -52
  105. package/dist/locales/zh-TW.d.ts +29 -52
  106. package/dist/rcs.css +1 -1
  107. package/dist/rcs.es.js +65 -61
  108. package/dist/rcs.umd.js +132 -72
  109. package/package.json +38 -23
  110. package/dist/components/digitalsee/workflow/Canvas/FlowVersionManager.d.ts +0 -16
  111. package/dist/components/digitalsee/workflow/Canvas/NextConfigModalWrapper.d.ts +0 -9
  112. package/dist/components/digitalsee/workflow/Canvas/NextWorkflowCanvas.d.ts +0 -4
  113. package/dist/components/digitalsee/workflow/Canvas/NextWorkflowCanvasHeader.d.ts +0 -15
  114. package/dist/components/digitalsee/workflow/Canvas/hooks/createNodeAddHandlerNext.d.ts +0 -38
  115. package/dist/components/digitalsee/workflow/NextNodesConfigModal/index.d.ts +0 -13
  116. package/dist/components/digitalsee/workflow/Nodes/AISubNode.d.ts +0 -9
  117. package/dist/components/digitalsee/workflow/Nodes/ActionNode.d.ts +0 -13
  118. package/dist/components/digitalsee/workflow/Nodes/AgentNode.d.ts +0 -10
  119. package/dist/components/digitalsee/workflow/Nodes/BrowserNode.d.ts +0 -10
  120. package/dist/components/digitalsee/workflow/Nodes/BuiltinMCPNode.d.ts +0 -9
  121. package/dist/components/digitalsee/workflow/Nodes/ConditionNode.d.ts +0 -13
  122. package/dist/components/digitalsee/workflow/Nodes/CustomNode.d.ts +0 -15
  123. package/dist/components/digitalsee/workflow/Nodes/LoopNode.d.ts +0 -4
  124. package/dist/components/digitalsee/workflow/Nodes/MCPServerNode.d.ts +0 -9
  125. package/dist/components/digitalsee/workflow/Nodes/MCPToolNode.d.ts +0 -9
  126. package/dist/components/digitalsee/workflow/Nodes/NextNodeFactory.d.ts +0 -12
  127. package/dist/components/digitalsee/workflow/Nodes/NextNodes/NextActionNode.d.ts +0 -9
  128. package/dist/components/digitalsee/workflow/Nodes/NextNodes/NextBaseNode.d.ts +0 -16
  129. package/dist/components/digitalsee/workflow/Nodes/NextNodes/NextConditionNode.d.ts +0 -10
  130. package/dist/components/digitalsee/workflow/Nodes/NextNodes/NextLoopNode.d.ts +0 -10
  131. package/dist/components/digitalsee/workflow/Nodes/NextNodes/NextSwitchNode.d.ts +0 -10
  132. package/dist/components/digitalsee/workflow/Nodes/NextNodes/NextTriggerNode.d.ts +0 -9
  133. package/dist/components/digitalsee/workflow/Nodes/SelfLoopNode.d.ts +0 -4
  134. package/dist/components/digitalsee/workflow/Nodes/StartNode.d.ts +0 -1
  135. package/dist/components/digitalsee/workflow/Nodes/SwitchNode.d.ts +0 -13
  136. package/dist/components/digitalsee/workflow/Nodes/TriggerNode.d.ts +0 -10
  137. package/dist/components/digitalsee/workflow/Nodes/components/NextNodeDescription.d.ts +0 -16
  138. package/dist/components/digitalsee/workflow/Nodes/components/NextNodeOperations.d.ts +0 -11
  139. package/dist/components/digitalsee/workflow/Nodes/useClassicNodePackagePorts.d.ts +0 -27
  140. package/dist/components/digitalsee/workflow/NodesConfig/NextNodeConfig/CreateCredentialModal.d.ts +0 -13
  141. package/dist/components/digitalsee/workflow/NodesConfig/NextNodeConfig/CredentialSelect.d.ts +0 -17
  142. package/dist/components/digitalsee/workflow/NodesConfig/NextNodeConfig/ModifyCredentialModal.d.ts +0 -17
  143. package/dist/components/digitalsee/workflow/NodesConfig/NextNodeConfig/fieldSchemaAdapter.d.ts +0 -10
  144. package/dist/components/digitalsee/workflow/NodesConfig/NextNodeConfig/index.d.ts +0 -17
  145. package/dist/components/digitalsee/workflow/NodesConfig/components/NextNodeSettings.d.ts +0 -6
  146. package/dist/components/digitalsee/workflow/NodesConfig/components/NextNodeTest.d.ts +0 -6
  147. package/dist/components/digitalsee/workflow/NodesConfig/components/NextVariableModal/index.d.ts +0 -6
  148. package/dist/components/digitalsee/workflow/NodesConfig/components/NextVariableModal/variable-tree-next.d.ts +0 -49
  149. package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/EntryTypeSelector.d.ts +0 -8
  150. package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/components/NodeCardList.d.ts +0 -20
  151. package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/hooks/useNodeActionState.d.ts +0 -28
  152. package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/hooks/useNodeSelectorPresentation.d.ts +0 -25
  153. package/dist/components/digitalsee/workflow/Panels/ModernNodeSelectorPanel/utils/queryParams.d.ts +0 -18
  154. package/dist/components/digitalsee/workflow/constants/nextHandles.d.ts +0 -1
  155. package/dist/components/digitalsee/workflow/utils/classicNodePackageConnection.d.ts +0 -28
  156. package/dist/components/digitalsee/workflow/utils/classicNodePackageGraphValidation.d.ts +0 -29
  157. package/dist/components/digitalsee/workflow/utils/nextNodeSchemaCache.d.ts +0 -14
  158. package/dist/components/digitalsee/workflow/utils/queuedNodeConfigOpen.d.ts +0 -12
  159. package/dist/index-CRdKUD0G.mjs.map +0 -1
  160. package/dist/index-rjDBrC08.mjs +0 -312
  161. package/dist/index-rjDBrC08.mjs.map +0 -1
  162. package/dist/rcs.es.js.map +0 -1
  163. package/dist/rcs.umd.js.map +0 -1
  164. /package/dist/components/digitalsee/workflow/NodesConfig/{NextNodeConfig → NodePackageConfig}/WorkflowNodeSchemaFieldProvider.d.ts +0 -0
  165. /package/dist/components/digitalsee/workflow/NodesConfig/{NextNodeConfig → NodePackageConfig}/fields/WorkflowCodeField.d.ts +0 -0
  166. /package/dist/components/digitalsee/workflow/NodesConfig/{NextNodeConfig → NodePackageConfig}/fields/WorkflowProxyField.d.ts +0 -0
  167. /package/dist/components/digitalsee/workflow/NodesConfig/{NextNodeConfig → NodePackageConfig}/proxyField.d.ts +0 -0
  168. /package/dist/components/digitalsee/workflow/NodesConfig/components/FormFieldRenderer/{next-compatible.d.ts → nodePackage-compatible.d.ts} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@digitalsee-ai/rcs",
3
- "version": "1.1.8",
3
+ "version": "2.0.0-beta2",
4
4
  "packageManager": "pnpm@10.12.1",
5
5
  "repository": {
6
6
  "type": "git"
@@ -20,17 +20,31 @@
20
20
  "node": ">=22"
21
21
  },
22
22
  "scripts": {
23
+ "acceptance:dev": "vite --config vite.acceptance.config.mts",
24
+ "acceptance:api": "node scripts/ai-flow-mock-server.mjs",
25
+ "acceptance:start": "node scripts/acceptance-control.mjs start",
26
+ "acceptance:stop": "node scripts/acceptance-control.mjs stop",
27
+ "acceptance:reset": "node scripts/acceptance-control.mjs reset",
28
+ "acceptance:status": "node scripts/acceptance-control.mjs status",
29
+ "acceptance:tsc": "tsc -p tsconfig.acceptance.json --noEmit",
30
+ "acceptance:mock-test": "vitest run --environment node acceptance/mock/mock-server.test.ts",
31
+ "acceptance:e2e": "playwright test -c acceptance/playwright.config.ts",
32
+ "acceptance:visual": "playwright test -c acceptance/playwright.config.ts visual.spec.ts",
33
+ "acceptance:build": "vite build --config vite.acceptance.config.mts",
23
34
  "dev": "storybook dev -p 8888",
24
35
  "build": "storybook build",
25
36
  "clean": "node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\"",
26
- "build:lib": "pnpm clean && tsc && vite build",
27
- "build:vite": "pnpm clean && vite build",
37
+ "build:lib": "pnpm clean && tsc && node scripts/build-library.mjs",
38
+ "build:vite": "pnpm clean && node scripts/build-library.mjs",
28
39
  "lint": "npx @biomejs/biome lint --write ./src",
29
40
  "format": "npx @biomejs/biome format --write ./src",
30
41
  "format:check": "npx @biomejs/biome format ./src",
31
42
  "check": "npx @biomejs/biome check --write ./src",
32
43
  "check:all": "node scripts/check-all.js",
44
+ "audit:ai-flow-stories": "node scripts/audit-ai-flow-stories.mjs",
33
45
  "lint-staged": "lint-staged",
46
+ "prepack": "cp README.md rcs-readme-backup && cp README.npm.md README.md",
47
+ "postpack": "cp rcs-readme-backup README.md && rm rcs-readme-backup",
34
48
  "prepare": "husky",
35
49
  "test": "vitest",
36
50
  "test:cov": "vitest run --coverage",
@@ -52,13 +66,14 @@
52
66
  "monaco-editor": "*",
53
67
  "react": ">=18.0.0",
54
68
  "react-dom": ">=18.0.0",
55
- "react-intl": ">=3.0.0",
56
- "react-markdown": "*",
69
+ "react-intl": "7.1.14",
70
+ "react-markdown": "9.0.1",
57
71
  "react-monaco-editor": "*",
58
72
  "react-redux": ">=8.0.0"
59
73
  },
60
74
  "files": [
61
- "dist"
75
+ "dist",
76
+ "!dist/**/*.map"
62
77
  ],
63
78
  "dependencies": {
64
79
  "@codemirror/autocomplete": "^6.20.0",
@@ -83,23 +98,23 @@
83
98
  "tailwind-merge": "^2.5.2",
84
99
  "tailwindcss-animate": "^1.0.7",
85
100
  "tw-animate-css": "^1.3.9",
86
- "uuid": "^13.0.0",
101
+ "uuid": "^13.0.2",
87
102
  "zod": "^3.25.76"
88
103
  },
89
104
  "devDependencies": {
90
105
  "@ant-design/icons": "^6.1.0",
91
106
  "@ant-design/pro-components": "^2.8.10",
92
- "@babel/core": "7.27.4",
107
+ "@babel/core": "7.29.7",
93
108
  "@biomejs/biome": "2.4.15",
109
+ "@playwright/test": "^1.61.1",
94
110
  "@radix-ui/react-checkbox": "^1.3.2",
95
111
  "@radix-ui/react-icons": "^1.3.2",
96
112
  "@radix-ui/react-select": "^2.2.6",
97
113
  "@reduxjs/toolkit": "^2.11.2",
98
- "@storybook/addon-docs": "9.0.12",
99
- "@storybook/addon-links": "9.0.12",
100
- "@storybook/addon-themes": "9.0.12",
101
- "@storybook/react-vite": "9.0.12",
102
- "@storybook/test": "8.6.14",
114
+ "@storybook/addon-docs": "9.1.20",
115
+ "@storybook/addon-links": "9.1.20",
116
+ "@storybook/addon-themes": "9.1.20",
117
+ "@storybook/react-vite": "9.1.20",
103
118
  "@tailwindcss/postcss": "4.1.10",
104
119
  "@tailwindcss/vite": "4.1.10",
105
120
  "@testing-library/react": "16.3.0",
@@ -110,12 +125,12 @@
110
125
  "@uiw/codemirror-theme-gruvbox-dark": "^4.25.4",
111
126
  "@uiw/react-codemirror": "^4.25.4",
112
127
  "@vitejs/plugin-react": "4.5.2",
113
- "@vitest/coverage-v8": "3.2.4",
128
+ "@vitest/coverage-v8": "3.2.7",
114
129
  "@xyflow/react": "^12.10.0",
115
130
  "ahooks": "^3.9.6",
116
131
  "antd": "^5.19.0",
117
132
  "autoprefixer": "10.4.21",
118
- "axios": "^1.13.2",
133
+ "axios": "^1.20.0",
119
134
  "babel-loader": "10.0.0",
120
135
  "cspell": "8.19.4",
121
136
  "husky": "9.1.7",
@@ -124,25 +139,25 @@
124
139
  "less": "^4.5.1",
125
140
  "less-loader": "^12.3.0",
126
141
  "lint-staged": "16.1.2",
127
- "lodash-es": "^4.17.22",
142
+ "lodash-es": "^4.18.1",
128
143
  "monaco-editor": "^0.55.1",
129
- "postcss": "8.5.6",
144
+ "postcss": "8.5.26",
130
145
  "prop-types": "15.8.1",
131
- "react": "19.1.0",
132
- "react-dom": "19.1.0",
146
+ "react": "18.3.1",
147
+ "react-dom": "18.3.1",
133
148
  "react-icons": "^5.5.0",
134
- "react-intl": "^8.0.9",
149
+ "react-intl": "7.1.14",
135
150
  "react-markdown": "^10.1.0",
136
151
  "react-monaco-editor": "^0.59.0",
137
152
  "react-redux": "^9.2.0",
138
153
  "slate": "^0.120.0",
139
154
  "slate-history": "^0.113.1",
140
155
  "slate-react": "^0.120.0",
141
- "storybook": "9.0.12",
156
+ "storybook": "9.1.20",
142
157
  "tailwindcss": "4.1.10",
143
158
  "typescript": "5.8.3",
144
- "vite": "6.3.5",
159
+ "vite": "6.4.3",
145
160
  "vite-plugin-dts": "4.5.4",
146
- "vitest": "3.2.4"
161
+ "vitest": "3.2.7"
147
162
  }
148
163
  }
@@ -1,16 +0,0 @@
1
- import { CanvasAPI } from '../types/engine';
2
- import { FlowDraftPayload } from '../types/flowVersion';
3
- interface FlowVersionManagerProps {
4
- flowId: string;
5
- flowName?: string;
6
- dirty: boolean;
7
- canManage: boolean;
8
- onSave?: () => Promise<FlowDraftPayload | undefined>;
9
- getFlowPayload?: () => FlowDraftPayload;
10
- canvasApi?: CanvasAPI;
11
- offlineApi?: (flowId: string) => Promise<void>;
12
- onUnsupported?: () => void;
13
- }
14
- /** 连接流版本发布、下线与历史管理。 */
15
- declare const FlowVersionManager: ({ flowId, flowName, dirty, canManage, onSave, getFlowPayload, canvasApi, offlineApi, onUnsupported, }: FlowVersionManagerProps) => import("react/jsx-runtime").JSX.Element;
16
- export default FlowVersionManager;
@@ -1,9 +0,0 @@
1
- /**
2
- * EngineMode.NEXT 配置弹窗包装器(暂废保留分支)
3
- *
4
- * 职责:
5
- * - 从 ReactFlow store 根据 currentNodeConfigVisibleId 取当前节点数据
6
- * - 管理表单草稿缓存(用户填一半切换节点,草稿保留)
7
- * - 驱动单例 NextNodesConfigModal
8
- */
9
- export declare const NextConfigModalWrapper: () => import("react/jsx-runtime").JSX.Element;
@@ -1,4 +0,0 @@
1
- import { default as React } from 'react';
2
- import { WorkflowCanvasProps } from './constants';
3
- declare const NextWorkflowCanvas: React.FC<WorkflowCanvasProps>;
4
- export default NextWorkflowCanvas;
@@ -1,15 +0,0 @@
1
- import { default as React } from 'react';
2
- import { SaveStatus } from '../enums/workflow';
3
- import { CanvasAPI } from '../types/engine';
4
- interface NextWorkflowCanvasHeaderProps {
5
- onSave?: () => void;
6
- readOnly?: boolean;
7
- unSave?: boolean;
8
- preview?: boolean;
9
- appFlowMode?: boolean;
10
- autoSaveStatus?: SaveStatus;
11
- lastSavedTime?: string;
12
- canvasApi?: CanvasAPI;
13
- }
14
- declare const NextWorkflowCanvasHeader: React.FC<NextWorkflowCanvasHeaderProps>;
15
- export default NextWorkflowCanvasHeader;
@@ -1,38 +0,0 @@
1
- import { WorkflowCanvasStrategy } from '../types';
2
- import { NodeData as NodeFactoryData } from '../../Nodes/NodeFactory';
3
- import { ActionItem } from '../../Panels/ModernNodeSelectorPanel/types';
4
- import { NodeAddInfo } from '../../types/NodeAddContext';
5
- import { Edge, Node } from '@xyflow/react';
6
- interface CreateNodeAddHandlerNextParams {
7
- workflowId?: string;
8
- strategy: WorkflowCanvasStrategy;
9
- store: {
10
- getState: () => {
11
- nodes: Node[];
12
- edges: Edge[];
13
- };
14
- };
15
- addNodes: (nodes: Node<NodeFactoryData>[]) => void;
16
- addEdges: (edges: Edge[]) => void;
17
- removeEdges: (edgeIds: string[]) => void;
18
- handleEdgeAddNode: (position: {
19
- x: number;
20
- y: number;
21
- }, edge?: Edge) => void;
22
- setNodeConfigVisible: (nodeId: string | null) => void;
23
- setNodeFitHumanView: (nodeId: string) => void;
24
- saveFlow: () => Promise<void>;
25
- }
26
- /**
27
- * 创建 NEXT 模式的节点添加处理函数(纯函数,非 Hook)
28
- *
29
- * 该分支目前暂废保留;当前 AI 连接流里的 nodepackage 节点是在
30
- * CLASSIC 画布中兼容渲染新版 NodeSchema,不走这里的添加逻辑。
31
- *
32
- * 与 Classic 模式的关键区别:
33
- * 1. 端口名称完全由 DIP Schema 动态定义(通过 getCachedNextNodeSchema 获取)
34
- * 2. 使用 convertActionItemToNodeDataNext 转换数据(保留 name 字段)
35
- * 3. Loop 节点的特殊端口(loop/done)需要从 Schema 中获取,而不是硬编码
36
- */
37
- export declare function createNodeAddHandlerNext(params: CreateNodeAddHandlerNextParams): (info: NodeAddInfo, nodeData: ActionItem) => Promise<void>;
38
- export {};
@@ -1,13 +0,0 @@
1
- import { NodeType } from '../types/Node';
2
- import { default as React } from 'react';
3
- interface NextNodesConfigModalProps {
4
- visible: boolean;
5
- onClose: () => void;
6
- data: any;
7
- nodeType?: NodeType;
8
- nodeId?: string;
9
- cachedValues?: any;
10
- onValuesChange?: (nodeId: string, values: any) => void;
11
- }
12
- export declare const NextNodesConfigModal: React.FC<NextNodesConfigModalProps>;
13
- export {};
@@ -1,9 +0,0 @@
1
- import { NodeProps } from '@xyflow/react';
2
- import { default as React } from 'react';
3
- /**
4
- * @description AI 子节点,顶部 SOURCE 连入父节点的 ai_* 孤独入桩。
5
- * @param {NodeProps} props React Flow 传入的节点参数。
6
- * @returns {JSX.Element} 渲染后的节点。
7
- */
8
- declare const AISubNode: React.FC<NodeProps>;
9
- export default AISubNode;
@@ -1,13 +0,0 @@
1
- import { NodeData, NodeStatus } from '../types/Node';
2
- import { Node, NodeProps } from '@xyflow/react';
3
- import { default as React } from 'react';
4
- interface ActionNodeProps extends NodeProps<Node<NodeData>> {
5
- status?: NodeStatus;
6
- }
7
- /**
8
- * @description 动作节点,呈现普通执行节点的卡片布局与状态色。
9
- * @param {ActionNodeProps} props React Flow 节点与状态属性。
10
- * @returns {JSX.Element} 渲染后的动作节点。
11
- */
12
- declare const ActionNode: React.FC<ActionNodeProps>;
13
- export default ActionNode;
@@ -1,10 +0,0 @@
1
- import { NodeData } from '../types/Node';
2
- import { Node, NodeProps } from '@xyflow/react';
3
- import { default as React } from 'react';
4
- /**
5
- * @description Agent 节点,包含底部三个孤独 AI 入桩与主输出。
6
- * @param {NodeProps<NodeData>} props React Flow 代理节点参数。
7
- * @returns {JSX.Element} 渲染后的 Agent 节点。
8
- */
9
- declare const AgentNode: React.FC<NodeProps<Node<NodeData>>>;
10
- export default AgentNode;
@@ -1,10 +0,0 @@
1
- import { NodeData } from '../types/Node';
2
- import { Node, NodeProps } from '@xyflow/react';
3
- import { default as React } from 'react';
4
- /**
5
- * @description 浏览器节点,提供底部模型孤独入桩与右侧主输出。
6
- * @param {NodeProps<NodeData>} props React Flow 浏览器节点参数。
7
- * @returns {JSX.Element} 渲染后的浏览器节点。
8
- */
9
- declare const BrowserNode: React.FC<NodeProps<Node<NodeData>>>;
10
- export default BrowserNode;
@@ -1,9 +0,0 @@
1
- import { NodeProps } from '@xyflow/react';
2
- import { default as React } from 'react';
3
- /**
4
- * @description 内置 MCP 节点,显示自定义协议输出的子节点卡片。
5
- * @param {NodeProps} props React Flow 节点参数。
6
- * @returns {JSX.Element} 渲染后的 MCP 子节点。
7
- */
8
- declare const AISubNode: React.FC<NodeProps>;
9
- export default AISubNode;
@@ -1,13 +0,0 @@
1
- import { NodeStatus } from '../types/Node';
2
- import { NodeProps } from '@xyflow/react';
3
- import { default as React } from 'react';
4
- interface ConditionNodeProps extends NodeProps {
5
- status?: NodeStatus;
6
- }
7
- /**
8
- * @description 条件节点,左入右出两路,使用统一卡片视觉呈现条件分支。
9
- * @param {ConditionNodeProps} props React Flow 条件节点参数。
10
- * @returns {JSX.Element} 渲染后的条件节点。
11
- */
12
- declare const ConditionNode: React.FC<ConditionNodeProps>;
13
- export default ConditionNode;
@@ -1,15 +0,0 @@
1
- import { Node, NodeProps } from '@xyflow/react';
2
- import { default as React } from 'react';
3
- import { NodeData } from '../types/Node';
4
- /**
5
- * 自定义节点组件
6
- *
7
- * 该组件演示了如何使用isHovered属性来改变节点的外观
8
- */
9
- /**
10
- * @description 自定义示例节点,通过悬停与选中状态演示样式覆盖。
11
- * @param {NodeProps<NodeData>} props React Flow 节点与数据。
12
- * @returns {JSX.Element} 自定义节点 JSX。
13
- */
14
- declare const CustomNode: React.MemoExoticComponent<({ data, id, selected }: NodeProps<Node<NodeData>>) => import("react/jsx-runtime").JSX.Element>;
15
- export default CustomNode;
@@ -1,4 +0,0 @@
1
- import { NodeProps } from '@xyflow/react';
2
- import { default as React } from 'react';
3
- declare const _default: React.NamedExoticComponent<NodeProps>;
4
- export default _default;
@@ -1,9 +0,0 @@
1
- import { NodeProps } from '@xyflow/react';
2
- import { default as React } from 'react';
3
- /**
4
- * @description MCP Server 节点,承载顶部输入的服务节点卡片。
5
- * @param {NodeProps} props React Flow 节点参数。
6
- * @returns {JSX.Element} 渲染后的 MCP Server 节点。
7
- */
8
- declare const AISubNode: React.FC<NodeProps>;
9
- export default AISubNode;
@@ -1,9 +0,0 @@
1
- import { NodeProps } from '@xyflow/react';
2
- import { default as React } from 'react';
3
- /**
4
- * @description MCP Tool 节点,展示与内建工具协议相连的子节点卡片。
5
- * @param {NodeProps} props React Flow 节点参数。
6
- * @returns {JSX.Element} 渲染后的 MCP Tool 节点。
7
- */
8
- declare const MCPToolNode: React.FC<NodeProps>;
9
- export default MCPToolNode;
@@ -1,12 +0,0 @@
1
- import { ComponentType } from 'react';
2
- /**
3
- * NEXT 模式专属节点工厂(暂废保留分支)
4
- *
5
- * 提供 NEXT 模式的 nodeTypes 映射,所有节点基于 DIP Schema 动态渲染锚点
6
- * 与 classic 模式完全隔离,直接使用 DIP 端口名,无需适配层
7
- * 当前 nodepackage 节点使用 Classic NodeFactory,并在配置面板兼容新版 NodeSchema。
8
- */
9
- declare class NextNodeFactory {
10
- static getNodeTypes(): Record<string, ComponentType<any>>;
11
- }
12
- export default NextNodeFactory;
@@ -1,9 +0,0 @@
1
- import { NodeProps } from '@xyflow/react';
2
- import { default as React } from 'react';
3
- /**
4
- * NEXT 模式动作节点
5
- *
6
- * 基于 NextBaseNode,根据 DIP Schema 动态渲染锚点
7
- */
8
- declare const NextActionNode: React.FC<NodeProps>;
9
- export default NextActionNode;
@@ -1,16 +0,0 @@
1
- import { NodeProps } from '@xyflow/react';
2
- import { default as React } from 'react';
3
- interface NextBaseNodeProps extends NodeProps {
4
- minHeight?: number;
5
- maxHeight?: number;
6
- className?: string;
7
- }
8
- /**
9
- * NEXT 模式基础节点组件(暂废保留分支)
10
- *
11
- * 根据 DIP Schema 动态渲染锚点,直接使用 DIP 端口名作为 handle ID
12
- * 不再需要端口适配层,实现 NEXT 模式与 classic 模式的完全隔离
13
- * 当前 nodepackage 节点仍复用 Classic 节点外观,仅配置面板兼容新版 NodeSchema。
14
- */
15
- declare const NextBaseNode: React.FC<NextBaseNodeProps>;
16
- export default NextBaseNode;
@@ -1,10 +0,0 @@
1
- import { NodeProps } from '@xyflow/react';
2
- import { default as React } from 'react';
3
- /**
4
- * NEXT 模式条件节点
5
- *
6
- * 基于 NextBaseNode,根据 DIP Schema 动态渲染锚点
7
- * 通常会有两个输出端口:true 和 false
8
- */
9
- declare const NextConditionNode: React.FC<NodeProps>;
10
- export default NextConditionNode;
@@ -1,10 +0,0 @@
1
- import { NodeProps } from '@xyflow/react';
2
- import { default as React } from 'react';
3
- /**
4
- * NEXT 模式循环节点
5
- *
6
- * 基于 NextBaseNode,根据 DIP Schema 动态渲染锚点
7
- * 通常会有多个输出端口:loop(循环体)和 done(完成)
8
- */
9
- declare const NextLoopNode: React.FC<NodeProps>;
10
- export default NextLoopNode;
@@ -1,10 +0,0 @@
1
- import { NodeProps } from '@xyflow/react';
2
- import { default as React } from 'react';
3
- /**
4
- * NEXT 模式分支节点
5
- *
6
- * 基于 NextBaseNode,根据 DIP Schema 动态渲染锚点
7
- * 支持多个输出端口(根据配置的分支数量)
8
- */
9
- declare const NextSwitchNode: React.FC<NodeProps>;
10
- export default NextSwitchNode;
@@ -1,9 +0,0 @@
1
- import { NodeProps } from '@xyflow/react';
2
- import { default as React } from 'react';
3
- /**
4
- * NEXT 模式触发节点(Webhook Trigger)
5
- *
6
- * 触发节点无输入,仅保留主输出端口,端口名使用 DIP 规范 main。
7
- */
8
- declare const NextTriggerNode: React.FC<NodeProps>;
9
- export default NextTriggerNode;
@@ -1,4 +0,0 @@
1
- import { NodeProps } from '@xyflow/react';
2
- import { default as React } from 'react';
3
- declare const _default: React.NamedExoticComponent<NodeProps>;
4
- export default _default;
@@ -1 +0,0 @@
1
- export declare const StartNode: () => import("react/jsx-runtime").JSX.Element;
@@ -1,13 +0,0 @@
1
- import { NodeStatus } from '../types/Node';
2
- import { NodeProps } from '@xyflow/react';
3
- import { default as React } from 'react';
4
- interface SwitchNodeProps extends NodeProps {
5
- status?: NodeStatus;
6
- }
7
- /**
8
- * @description Switch多分支节点,根据实例配置动态生成输出插槽。
9
- * @param {SwitchNodeProps} props React Flow Switch节点参数。
10
- * @returns {JSX.Element} 渲染后的Switch节点。
11
- */
12
- declare const SwitchNode: React.FC<SwitchNodeProps>;
13
- export default SwitchNode;
@@ -1,10 +0,0 @@
1
- import { NodeProps } from '@xyflow/react';
2
- import { default as React } from 'react';
3
- /**
4
- * @description 触发节点,负责流程入口卡片及唯一右侧输出。
5
- * nodepackage 触发器(如 Webhook)通过 Schema 动态输出端口;旧触发器保留 legacy output。
6
- * @param {NodeProps} props React Flow 触发节点参数。
7
- * @returns {JSX.Element} 渲染后的触发节点。
8
- */
9
- declare const TriggerNode: React.FC<NodeProps>;
10
- export default TriggerNode;
@@ -1,16 +0,0 @@
1
- import { default as React } from 'react';
2
- interface NextNodeDescriptionProps {
3
- title?: string;
4
- description?: string;
5
- note?: string;
6
- className?: string;
7
- statusIcon?: React.ReactNode;
8
- onNoteChange?: (note: string) => void;
9
- }
10
- /**
11
- * @description Next 模式节点描述组件,展示节点标题、副标题,并提供备注编辑能力。
12
- * 无远程接口调用,仅通过 onNoteChange 回调更新本地 Redux 状态。
13
- * DOM 结构与样式与 NodeDescription 保持一致。
14
- */
15
- declare const NextNodeDescription: React.FC<NextNodeDescriptionProps>;
16
- export default NextNodeDescription;
@@ -1,11 +0,0 @@
1
- import { NodeType } from '../../types/Node';
2
- import { default as React } from 'react';
3
- export interface NextNodeOperationsProps {
4
- nodeId: string;
5
- type: NodeType;
6
- isDisabled?: boolean;
7
- handleViewConfig?: () => void;
8
- className?: string;
9
- }
10
- declare const NextNodeOperations: React.FC<NextNodeOperationsProps>;
11
- export default NextNodeOperations;
@@ -1,27 +0,0 @@
1
- import { DipNodeSchema } from '../api/dip';
2
- import { HandleConfig } from './SuperBaseNode';
3
- import { NodeData, NodeType } from '../types/Node';
4
- type PortLoadStatus = 'legacy' | 'loading' | 'ready' | 'error';
5
- interface UseClassicNodePackagePortsOptions {
6
- nodeType: NodeType;
7
- data: NodeData;
8
- legacyInputs: HandleConfig[];
9
- legacyOutputs: HandleConfig[];
10
- resolvePortSchema?: (schema: DipNodeSchema) => Pick<DipNodeSchema, 'inputs' | 'outputs'>;
11
- }
12
- interface ClassicNodePackagePortsResult {
13
- inputs: HandleConfig[];
14
- outputs: HandleConfig[];
15
- height?: number;
16
- status: PortLoadStatus;
17
- isNodePackage: boolean;
18
- schema: DipNodeSchema | null;
19
- }
20
- /**
21
- * 为 CLASSIC nodepackage 节点加载 NodeSchema 并生成动态端口。
22
- *
23
- * 仅当宿主开启 connectable 能力、引擎是 CLASSIC 且
24
- * isClassicNextCompatibleNode 返回 true 时生效;其它节点完整保留 legacy 端口。
25
- */
26
- export declare function useClassicNodePackagePorts({ nodeType, data, legacyInputs, legacyOutputs, resolvePortSchema, }: UseClassicNodePackagePortsOptions): ClassicNodePackagePortsResult;
27
- export {};
@@ -1,13 +0,0 @@
1
- import { default as React } from 'react';
2
- interface CreateCredentialModalProps {
3
- /** 凭据类型标识,如 "gmail.oauth" */
4
- credentialKey: string;
5
- /** 弹窗是否可见 */
6
- open: boolean;
7
- /** 关闭弹窗 */
8
- onCancel: () => void;
9
- /** 创建成功后回调,传回新实例 ID 供自动选中 */
10
- onCreated: (instanceId: string) => void;
11
- }
12
- export declare const CreateCredentialModal: React.FC<CreateCredentialModalProps>;
13
- export {};
@@ -1,17 +0,0 @@
1
- import { default as React } from 'react';
2
- interface CredentialSelectProps {
3
- /** 凭据类型标识,来自 DipNodeSchema.credentials[0].key */
4
- credentialKey?: string;
5
- /** 展示标签,默认“授权配置” */
6
- label?: string;
7
- /** 是否必填,仅用于标签提示 */
8
- required?: boolean;
9
- /** 当前选中的凭据实例 ID */
10
- value?: string;
11
- /** 选中凭据实例后的回调 */
12
- onChange?: (instanceId: string | undefined) => void;
13
- /** 是否禁用选择和维护凭据 */
14
- disabled?: boolean;
15
- }
16
- declare const CredentialSelect: React.FC<CredentialSelectProps>;
17
- export default CredentialSelect;
@@ -1,17 +0,0 @@
1
- import { default as React } from 'react';
2
- interface ModifyCredentialModalProps {
3
- /** 凭据实例 ID */
4
- instanceId: string;
5
- /** 凭据类型标识 */
6
- credentialKey: string;
7
- /** 弹窗是否可见 */
8
- open: boolean;
9
- /** 关闭弹窗 */
10
- onCancel: () => void;
11
- /** 更新成功后回调 */
12
- onUpdated: () => void;
13
- /** 删除成功后回调 */
14
- onDeleted?: () => void;
15
- }
16
- export declare const ModifyCredentialModal: React.FC<ModifyCredentialModalProps>;
17
- export {};
@@ -1,10 +0,0 @@
1
- import { FieldDef, FormSchema } from '../../../../dynamic-form/types/form-schema';
2
- import { DipFieldSchema } from '../../api/dip';
3
- /**
4
- * 转换单个 DIP FieldSchema → DynamicForm FieldDef
5
- */
6
- export declare function convertFieldSchema(field: DipFieldSchema): FieldDef;
7
- /**
8
- * 将 DIP FieldSchema 数组转换为 DynamicForm FormSchema
9
- */
10
- export declare function convertFieldsToFormSchema(fields: DipFieldSchema[]): FormSchema;
@@ -1,17 +0,0 @@
1
- /**
2
- * EngineMode.NEXT 配置组件(暂废保留分支)
3
- *
4
- * 根据 nodeKey 从 DIP 获取 NodeSchema,用 DynamicForm 渲染配置表单。
5
- * 当 NodeSchema.credentials 非空时,显示凭据选择器。
6
- * 当前日常说的“新版节点”一般指 CLASSIC 兼容渲染 NodeSchema 的 nodepackage 节点,
7
- * 不走这个组件。
8
- */
9
- interface NextNodeConfigProps {
10
- nodeId: string;
11
- data: Record<string, any>;
12
- onSubmitted: (values: Record<string, any>, isRunNodeTest?: boolean) => void | Promise<unknown>;
13
- onValuesChange?: (values: Record<string, any>) => void;
14
- cachedValues?: Record<string, any>;
15
- }
16
- export declare const NextNodeConfig: import('react').ForwardRefExoticComponent<NextNodeConfigProps & import('react').RefAttributes<any>>;
17
- export {};
@@ -1,6 +0,0 @@
1
- import { default as React } from 'react';
2
- interface NextNodeSettingsProps {
3
- nodeId: string;
4
- }
5
- export declare const NextNodeSettings: React.FC<NextNodeSettingsProps>;
6
- export {};