@mybricks/plugin-ai 0.0.2 → 0.0.3

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 (249) hide show
  1. package/dist/_virtual/_rollupPluginBabelHelpers.js +164 -0
  2. package/dist/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
  3. package/dist/agents/app.js +335 -0
  4. package/dist/agents/app.js.map +1 -0
  5. package/dist/agents/common.js +483 -0
  6. package/dist/agents/common.js.map +1 -0
  7. package/dist/agents/custom.js +16 -0
  8. package/dist/agents/custom.js.map +1 -0
  9. package/dist/agents/index.js +38 -0
  10. package/dist/agents/index.js.map +1 -0
  11. package/dist/agents/knowledges/knowledge-base.js +579 -0
  12. package/dist/agents/knowledges/knowledge-base.js.map +1 -0
  13. package/dist/agents/knowledges/knowledge-node.js +228 -0
  14. package/dist/agents/knowledges/knowledge-node.js.map +1 -0
  15. package/dist/agents/knowledges/types.js +105 -0
  16. package/dist/agents/knowledges/types.js.map +1 -0
  17. package/dist/agents/utils/config.js +229 -0
  18. package/dist/agents/utils/config.js.map +1 -0
  19. package/dist/agents/workspace/coding-manager.js +20 -0
  20. package/dist/agents/workspace/coding-manager.js.map +1 -0
  21. package/dist/agents/workspace/components-manager.js +113 -0
  22. package/dist/agents/workspace/components-manager.js.map +1 -0
  23. package/dist/agents/workspace/outline-focus.js +167 -0
  24. package/dist/agents/workspace/outline-focus.js.map +1 -0
  25. package/dist/agents/workspace/outline-info.js +430 -0
  26. package/dist/agents/workspace/outline-info.js.map +1 -0
  27. package/dist/agents/workspace/page-tree-generator.js +70 -0
  28. package/dist/agents/workspace/page-tree-generator.js.map +1 -0
  29. package/dist/agents/workspace/workspace.js +251 -0
  30. package/dist/agents/workspace/workspace.js.map +1 -0
  31. package/dist/agents/workspace-by-knowledges/providers/component-docs-provider.js +100 -0
  32. package/dist/agents/workspace-by-knowledges/providers/component-docs-provider.js.map +1 -0
  33. package/dist/agents/workspace-by-knowledges/providers/focus-info-provider.js +120 -0
  34. package/dist/agents/workspace-by-knowledges/providers/focus-info-provider.js.map +1 -0
  35. package/dist/agents/workspace-by-knowledges/providers/project-info-provider.js +146 -0
  36. package/dist/agents/workspace-by-knowledges/providers/project-info-provider.js.map +1 -0
  37. package/dist/agents/workspace-by-knowledges/test.js +242 -0
  38. package/dist/agents/workspace-by-knowledges/test.js.map +1 -0
  39. package/dist/agents/workspace-by-knowledges/utils/components-manager.js +132 -0
  40. package/dist/agents/workspace-by-knowledges/utils/components-manager.js.map +1 -0
  41. package/dist/agents/workspace-by-knowledges/utils/outline-focus.js +167 -0
  42. package/dist/agents/workspace-by-knowledges/utils/outline-focus.js.map +1 -0
  43. package/dist/agents/workspace-by-knowledges/utils/outline-info.js +430 -0
  44. package/dist/agents/workspace-by-knowledges/utils/outline-info.js.map +1 -0
  45. package/dist/agents/workspace-by-knowledges/workspace.js +169 -0
  46. package/dist/agents/workspace-by-knowledges/workspace.js.map +1 -0
  47. package/dist/api/cloud-components.js +85 -0
  48. package/dist/api/cloud-components.js.map +1 -0
  49. package/dist/api-record-replay/manager.js +168 -0
  50. package/dist/api-record-replay/manager.js.map +1 -0
  51. package/{src/api-record-replay/recorder.ts → dist/api-record-replay/recorder.js} +22 -32
  52. package/dist/api-record-replay/recorder.js.map +1 -0
  53. package/dist/api-record-replay/replayer.js +136 -0
  54. package/dist/api-record-replay/replayer.js.map +1 -0
  55. package/dist/components/attachments/index.js +124 -0
  56. package/dist/components/attachments/index.js.map +1 -0
  57. package/dist/components/attachments/index.less.js +8 -0
  58. package/dist/components/attachments/index.less.js.map +1 -0
  59. package/dist/components/icons/index.js +112 -0
  60. package/dist/components/icons/index.js.map +1 -0
  61. package/dist/components/icons/index.less.js +8 -0
  62. package/dist/components/icons/index.less.js.map +1 -0
  63. package/dist/components/mention/index.js +19 -0
  64. package/dist/components/mention/index.js.map +1 -0
  65. package/dist/components/mention/index.less.js +8 -0
  66. package/dist/components/mention/index.less.js.map +1 -0
  67. package/dist/components/messages/index.js +429 -0
  68. package/dist/components/messages/index.js.map +1 -0
  69. package/dist/components/messages/index.less.js +8 -0
  70. package/dist/components/messages/index.less.js.map +1 -0
  71. package/dist/components/sender/index.js +244 -0
  72. package/dist/components/sender/index.js.map +1 -0
  73. package/dist/components/sender/index.less.js +8 -0
  74. package/dist/components/sender/index.less.js.map +1 -0
  75. package/dist/context/RequestStatusTracker.js +44 -0
  76. package/dist/context/RequestStatusTracker.js.map +1 -0
  77. package/dist/context/index.js +45 -0
  78. package/dist/context/index.js.map +1 -0
  79. package/dist/data.js +4 -0
  80. package/dist/data.js.map +1 -0
  81. package/dist/index.js +306 -0
  82. package/dist/index.js.map +1 -0
  83. package/dist/plugin-ai/node_modules/style-inject/dist/style-inject.es.js +27 -0
  84. package/dist/plugin-ai/node_modules/style-inject/dist/style-inject.es.js.map +1 -0
  85. package/dist/plugin-ai/package.json.js +8 -0
  86. package/dist/plugin-ai/package.json.js.map +1 -0
  87. package/dist/plugin-ai/test/index.js +206 -0
  88. package/dist/plugin-ai/test/index.js.map +1 -0
  89. package/dist/preset/createTemplates.js +29 -0
  90. package/dist/preset/createTemplates.js.map +1 -0
  91. package/dist/preset/index.js +13 -0
  92. package/dist/preset/index.js.map +1 -0
  93. package/dist/preset/prompts.js +34 -0
  94. package/dist/preset/prompts.js.map +1 -0
  95. package/{src/preset/user.ts → dist/preset/user.js} +4 -3
  96. package/dist/preset/user.js.map +1 -0
  97. package/dist/requestAsStream.js +269 -0
  98. package/dist/requestAsStream.js.map +1 -0
  99. package/dist/rxai/node_modules/idb/build/index.js +277 -0
  100. package/dist/rxai/node_modules/idb/build/index.js.map +1 -0
  101. package/dist/rxai/src/agent/base.js +16 -0
  102. package/dist/rxai/src/agent/base.js.map +1 -0
  103. package/dist/rxai/src/agent/planning.js +1076 -0
  104. package/dist/rxai/src/agent/planning.js.map +1 -0
  105. package/dist/rxai/src/agent/rxai.js +254 -0
  106. package/dist/rxai/src/agent/rxai.js.map +1 -0
  107. package/dist/rxai/src/error/base.js +39 -0
  108. package/dist/rxai/src/error/base.js.map +1 -0
  109. package/dist/rxai/src/prompt/base.js +11 -0
  110. package/dist/rxai/src/prompt/base.js.map +1 -0
  111. package/dist/rxai/src/prompt/planning.js +23 -0
  112. package/dist/rxai/src/prompt/planning.js.map +1 -0
  113. package/dist/rxai/src/prompt/tool.js +14 -0
  114. package/dist/rxai/src/prompt/tool.js.map +1 -0
  115. package/dist/rxai/src/request/request.js +123 -0
  116. package/dist/rxai/src/request/request.js.map +1 -0
  117. package/dist/rxai/src/tool/getHistoryRecords.js +65 -0
  118. package/dist/rxai/src/tool/getHistoryRecords.js.map +1 -0
  119. package/dist/rxai/src/tool/util.js +424 -0
  120. package/dist/rxai/src/tool/util.js.map +1 -0
  121. package/dist/rxai/src/utils/events.js +43 -0
  122. package/dist/rxai/src/utils/events.js.map +1 -0
  123. package/dist/rxai/src/utils/idb.js +240 -0
  124. package/dist/rxai/src/utils/idb.js.map +1 -0
  125. package/dist/rxai/src/utils/retry.js +32 -0
  126. package/dist/rxai/src/utils/retry.js.map +1 -0
  127. package/dist/rxai/src/utils/uuid.js +7 -0
  128. package/dist/rxai/src/utils/uuid.js.map +1 -0
  129. package/dist/startView/components/header/header.js +12 -0
  130. package/dist/startView/components/header/header.js.map +1 -0
  131. package/dist/startView/components/header/header.less.js +8 -0
  132. package/dist/startView/components/header/header.less.js.map +1 -0
  133. package/dist/startView/index.js +62 -0
  134. package/dist/startView/index.js.map +1 -0
  135. package/dist/startView/index.less.js +8 -0
  136. package/dist/startView/index.less.js.map +1 -0
  137. package/dist/tools/analyze-and-expand-prd.js +116 -0
  138. package/dist/tools/analyze-and-expand-prd.js.map +1 -0
  139. package/dist/tools/analyze-requirement-and-components.js +208 -0
  140. package/dist/tools/analyze-requirement-and-components.js.map +1 -0
  141. package/dist/tools/answer.js +33 -0
  142. package/dist/tools/answer.js.map +1 -0
  143. package/dist/tools/build-process.js +550 -0
  144. package/dist/tools/build-process.js.map +1 -0
  145. package/dist/tools/coding-subagent-as-tool.js +101 -0
  146. package/dist/tools/coding-subagent-as-tool.js.map +1 -0
  147. package/dist/tools/generate-ui-content.js +528 -0
  148. package/dist/tools/generate-ui-content.js.map +1 -0
  149. package/dist/tools/index.js +31 -0
  150. package/dist/tools/index.js.map +1 -0
  151. package/dist/tools/open-dsl.js +49 -0
  152. package/dist/tools/open-dsl.js.map +1 -0
  153. package/dist/tools/refactor-ui-content.js +292 -0
  154. package/dist/tools/refactor-ui-content.js.map +1 -0
  155. package/dist/tools/utils.js +832 -0
  156. package/dist/tools/utils.js.map +1 -0
  157. package/dist/types/index.js +8 -0
  158. package/dist/types/index.js.map +1 -0
  159. package/dist/view/components/header/header.js +59 -0
  160. package/dist/view/components/header/header.js.map +1 -0
  161. package/dist/view/components/header/header.less.js +8 -0
  162. package/dist/view/components/header/header.less.js.map +1 -0
  163. package/dist/view/index.js +184 -0
  164. package/dist/view/index.js.map +1 -0
  165. package/dist/view/index.less.js +8 -0
  166. package/dist/view/index.less.js.map +1 -0
  167. package/package.json +28 -6
  168. package/src/agents/app.ts +0 -301
  169. package/src/agents/common.ts +0 -471
  170. package/src/agents/custom.ts +0 -14
  171. package/src/agents/index.ts +0 -37
  172. package/src/agents/knowledges/README.md +0 -614
  173. package/src/agents/knowledges/SUMMARY.md +0 -527
  174. package/src/agents/knowledges/index.ts +0 -8
  175. package/src/agents/knowledges/knowledge-base.ts +0 -565
  176. package/src/agents/knowledges/knowledge-node.ts +0 -266
  177. package/src/agents/knowledges/types.ts +0 -208
  178. package/src/agents/utils/config.ts +0 -427
  179. package/src/agents/workspace/coding-manager.ts +0 -31
  180. package/src/agents/workspace/components-manager.ts +0 -124
  181. package/src/agents/workspace/outline-focus.ts +0 -188
  182. package/src/agents/workspace/outline-info.ts +0 -520
  183. package/src/agents/workspace/page-tree-generator.ts +0 -83
  184. package/src/agents/workspace/workspace.ts +0 -319
  185. package/src/agents/workspace-by-knowledges/MIGRATION.md +0 -568
  186. package/src/agents/workspace-by-knowledges/README.md +0 -521
  187. package/src/agents/workspace-by-knowledges/index.ts +0 -11
  188. package/src/agents/workspace-by-knowledges/providers/component-docs-provider.ts +0 -92
  189. package/src/agents/workspace-by-knowledges/providers/focus-info-provider.ts +0 -131
  190. package/src/agents/workspace-by-knowledges/providers/index.ts +0 -8
  191. package/src/agents/workspace-by-knowledges/providers/project-info-provider.ts +0 -151
  192. package/src/agents/workspace-by-knowledges/test.ts +0 -240
  193. package/src/agents/workspace-by-knowledges/types.ts +0 -56
  194. package/src/agents/workspace-by-knowledges/utils/components-manager.ts +0 -145
  195. package/src/agents/workspace-by-knowledges/utils/index.ts +0 -8
  196. package/src/agents/workspace-by-knowledges/utils/outline-focus.ts +0 -178
  197. package/src/agents/workspace-by-knowledges/utils/outline-info.ts +0 -521
  198. package/src/agents/workspace-by-knowledges/workspace.ts +0 -166
  199. package/src/api/cloud-components.ts +0 -129
  200. package/src/api-record-replay/README.md +0 -187
  201. package/src/api-record-replay/index.ts +0 -11
  202. package/src/api-record-replay/manager.ts +0 -168
  203. package/src/api-record-replay/replayer.ts +0 -148
  204. package/src/components/attachments/index.less +0 -117
  205. package/src/components/attachments/index.tsx +0 -136
  206. package/src/components/icons/index.less +0 -8
  207. package/src/components/icons/index.tsx +0 -44
  208. package/src/components/index.less +0 -34
  209. package/src/components/mention/index.less +0 -23
  210. package/src/components/mention/index.tsx +0 -19
  211. package/src/components/messages/index.less +0 -1013
  212. package/src/components/messages/index.tsx +0 -519
  213. package/src/components/sender/index.less +0 -203
  214. package/src/components/sender/index.tsx +0 -298
  215. package/src/components/types.ts +0 -31
  216. package/src/constants/index.ts +0 -8
  217. package/src/context/RequestStatusTracker.ts +0 -50
  218. package/src/context/index.ts +0 -83
  219. package/src/data.ts +0 -5
  220. package/src/global.d.ts +0 -100
  221. package/src/index.tsx +0 -264
  222. package/src/mock.ts +0 -1267
  223. package/src/preset/agents.ts +0 -380
  224. package/src/preset/createTemplates.ts +0 -25
  225. package/src/preset/index.ts +0 -12
  226. package/src/preset/prompts.ts +0 -235
  227. package/src/preset/requestAsStream.ts +0 -246
  228. package/src/startView/components/header/header.less +0 -17
  229. package/src/startView/components/header/header.tsx +0 -15
  230. package/src/startView/components/index.ts +0 -1
  231. package/src/startView/index.less +0 -34
  232. package/src/startView/index.tsx +0 -61
  233. package/src/tools/analyze-and-expand-prd.ts +0 -272
  234. package/src/tools/analyze-requirement-and-components.ts +0 -589
  235. package/src/tools/answer.ts +0 -59
  236. package/src/tools/build-process.ts +0 -1174
  237. package/src/tools/coding-subagent-as-tool.ts +0 -119
  238. package/src/tools/generate-ui-content.ts +0 -1083
  239. package/src/tools/index.ts +0 -28
  240. package/src/tools/open-dsl.ts +0 -69
  241. package/src/tools/refactor-ui-content.ts +0 -801
  242. package/src/tools/type.d.ts +0 -12
  243. package/src/tools/utils.ts +0 -914
  244. package/src/types/index.ts +0 -4
  245. package/src/view/components/header/header.less +0 -51
  246. package/src/view/components/header/header.tsx +0 -60
  247. package/src/view/components/index.ts +0 -1
  248. package/src/view/index.less +0 -5
  249. package/src/view/index.tsx +0 -168
@@ -0,0 +1,550 @@
1
+ import { objectWithoutProperties as _objectWithoutProperties, objectSpread2 as _objectSpread2 } from '../_virtual/_rollupPluginBabelHelpers.js';
2
+ import '../rxai/node_modules/idb/build/index.js';
3
+ import 'node-forge';
4
+ import { fileFormat } from '../rxai/src/prompt/base.js';
5
+ import { jsonrepair } from 'jsonrepair';
6
+ import { PromiseStack, getFiles, transformPageInfo } from './utils.js';
7
+ import { ComponentsManager } from '../agents/workspace/components-manager.js';
8
+
9
+ var _excluded = ["comId"],
10
+ _excluded2 = ["comId"],
11
+ _excluded3 = ["ns"];
12
+ var NAME = 'build-event-flow';
13
+ buildProcess.toolName = NAME;
14
+ var Status = /*#__PURE__*/function (Status) {
15
+ Status["IDLE"] = "IDLE";
16
+ Status["RUNNING"] = "RUNNING";
17
+ Status["FINISHED"] = "FINISHED";
18
+ return Status;
19
+ }(Status || {});
20
+ var getCurrentFocusComponentDescription = params => {
21
+ if (!params) {
22
+ return "";
23
+ }
24
+ var {
25
+ type,
26
+ outlineInfo
27
+ } = params;
28
+ var {
29
+ id,
30
+ title,
31
+ data,
32
+ inputs,
33
+ outputs
34
+ } = outlineInfo;
35
+ if (type === "logicCom") {
36
+ return "<当前聚焦组件说明>" + "\n类型:计算组件" + "\n\u6807\u9898\uFF1A".concat(title) + "\nid\uFF1A".concat(id) + "\n\u6570\u636E\u6E90\uFF1A".concat(JSON.stringify(data)) + "\n\u8F93\u5165\u9879\uFF1A".concat(inputs !== null && inputs !== void 0 && inputs.length ? inputs.reduce((pre, _ref) => {
37
+ var {
38
+ hostId,
39
+ title
40
+ } = _ref;
41
+ return pre + "\n - ".concat(title, "\uFF08").concat(hostId, "\uFF09");
42
+ }, "") + "\n" : "无") + "\n\u8F93\u51FA\u9879\uFF1A".concat(outputs !== null && outputs !== void 0 && outputs.length ? outputs.reduce((pre, _ref2) => {
43
+ var {
44
+ hostId,
45
+ title
46
+ } = _ref2;
47
+ return pre + "\n - ".concat(title, "\uFF08").concat(hostId, "\uFF09");
48
+ }, "") + "\n" : "无") + "\u6CE8\u610F\uFF1A\n- \u9664\u4E86\u4E0A\u8FF0\u5217\u51FA\u7684\u8F93\u5165\u3001\u8F93\u51FA\u5916\uFF0C\u8FD8\u53EF\u4EE5\u4ECE<\u7EC4\u4EF6\u4F7F\u7528\u6587\u6863>\u7684<\u53EF\u4EE5\u4F7F\u7528\u7684\u914D\u7F6E\u9879>\u5185\u67E5\u770B\u7EC4\u4EF6\u662F\u5426\u652F\u6301\u521B\u5EFA\u8F93\u5165\u3001\u8F93\u51FA\u9879\u3002" + "\n</当前聚焦组件说明>";
49
+ }
50
+ return "";
51
+ };
52
+ var initDiagram = diagramInfo => {
53
+ if (!diagramInfo) {
54
+ return null;
55
+ }
56
+ return _objectSpread2(_objectSpread2({}, diagramInfo), {}, {
57
+ status: Status.IDLE
58
+ });
59
+ };
60
+ function buildProcess(props) {
61
+ // const pageOutlineInfo = props.getPageOutlineInfo();
62
+ // const connectableComponents = scopeBasedComponentStructure({...pageOutlineInfo, id: "_root_", title: "页面", scope: true });
63
+ // console.log("[pageOutlineInfo]", pageOutlineInfo);
64
+ // console.log("[connectableComponents]", connectableComponents)
65
+ // throw new Error("stop")
66
+
67
+ var streamActionsParser = createActionsParser();
68
+
69
+ /** key: comid-outputid -> diagramId */
70
+ var diagramIdMap = {};
71
+ var currentDiagram = initDiagram(props.getDiagramInfo());
72
+ var updatePageStatus = Status.IDLE;
73
+ var updateComStatus = Status.IDLE;
74
+ var promiseStack = new PromiseStack();
75
+ return {
76
+ name: NAME,
77
+ // displayName: "搭建事件流程",
78
+ displayName: "事件/逻辑配置",
79
+ description: "\u6839\u636E\u7528\u6237\u9700\u6C42\u642D\u5EFA\u5404\u7C7B\u4E8B\u4EF6/\u903B\u8F91\u3001\u914D\u7F6E\u8BA1\u7B97\u7EC4\u4EF6\uFF0C\u53EF\u4EE5\u901A\u8FC7\u53D8\u91CF\u3001\u8BA1\u7B97\u7EC4\u4EF6\u8FDB\u884C\u903B\u8F91\u548C\u4E8B\u4EF6\u7F16\u6392\uFF0C\u5B9E\u73B0\u4EA4\u4E92/\u6570\u636E\u9700\u6C42\u3002\n\u53C2\u6570\uFF1A\u65E0\n\u5DE5\u5177\u5206\u7C7B\uFF1A\u64CD\u4F5C\u6267\u884C\u7C7B\n\u4F5C\u7528\uFF1A\n 1. \u4E3AUI\u7EC4\u4EF6\u642D\u5EFA\u903B\u8F91\u548C\u4E8B\u4EF6\uFF0C\u63D0\u4F9B\u4EA4\u4E92\u80FD\u529B\uFF1B\n 2. \u521B\u5EFA/\u7ED1\u5B9A\u53D8\u91CF\uFF0C\u901A\u8FC7\u53D8\u91CF + \u6570\u636E\u9A71\u52A8\u7684\u65B9\u5F0F\u9A71\u52A8UI\u66F4\u65B0\uFF1B\n 3. \u5B8C\u6210\u63A5\u53E3\u3001\u6570\u636E\u5904\u7406\u7B49\u903B\u8F91\u80FD\u529B\u642D\u5EFA\uFF1B\n 4. \u914D\u7F6E\u8BA1\u7B97\u7EC4\u4EF6\n\u524D\u7F6E\u4F9D\u8D56\uFF1A\n - \u5FC5\u987B\u786E\u4FDD\u4E4B\u524D\u8FDB\u884C\u8FC7\u300C\u83B7\u53D6DSL\u300D\uFF1B\n - \u5982\u679C\u9700\u8981\u6DFB\u52A0\u8BA1\u7B97\u7EC4\u4EF6\uFF0C\u786E\u4FDD\u4E4B\u524D\u6709\u8FDB\u884C\u8FC7\u300C\u7EC4\u4EF6\u9009\u578B\u300D\uFF0C\u6DFB\u52A0\u8BA1\u7B97\u7EC4\u4EF6\u5FC5\u987B\u901A\u8FC7\u7EC4\u4EF6\u9009\u578B\u6765\u83B7\u53D6\u7EC4\u4EF6\u914D\u7F6E\u6587\u6863\uFF1B\n\n\u6CE8\u610F\uFF1A\n1. \u6B64\u5DE5\u5177\u53EA\u80FD\u5BF9\u8BA1\u7B97\u7EC4\u4EF6\u4EE5\u53CA\u903B\u8F91\u8FDB\u884C\u64CD\u4F5C\u3002\n2. \u5F53\u805A\u7126\u5230\u8BA1\u7B97\u7EC4\u4EF6\u63D0\u51FA\u9700\u6C42\u65F6\uFF0C\u5FC5\u987B\u8C03\u7528\u6B64\u5DE5\u5177\u3002\n",
80
+ getPrompts: () => {
81
+ var pageOutlineInfo = props.getPageOutlineInfo();
82
+ var connectableComponents = pageOutlineInfo ? scopeBasedComponentStructure(_objectSpread2(_objectSpread2({}, pageOutlineInfo), {}, {
83
+ id: "_root_",
84
+ title: "页面",
85
+ scope: true
86
+ })) : "";
87
+ var targetPageId = props.getPageId();
88
+ var pages = transformPageInfo(props.getAllPageInfo());
89
+ var allPageInfo = pages.reduce((pre, _ref3) => {
90
+ var {
91
+ id,
92
+ title,
93
+ type,
94
+ inputs,
95
+ outputs
96
+ } = _ref3;
97
+ if (id === targetPageId) {
98
+ // 跳过当前页
99
+ return pre;
100
+ }
101
+ return (pre ? pre + "\n" : "") + "- ".concat(title) + "\n \u9875\u9762id\uFF1A".concat(id) + "\n \u8F93\u5165\u7AEF\u53E3\u5217\u8868\uFF1A".concat(inputs.reduce((pre, _ref4) => {
102
+ var {
103
+ id,
104
+ title
105
+ } = _ref4;
106
+ return pre + "\n - ".concat(title, "\uFF08").concat(id, "\uFF09");
107
+ }, "")) + "\n\n \u8F93\u51FA\u7AEF\u53E3\u5217\u8868\uFF1A".concat(outputs.reduce((pre, _ref5) => {
108
+ var {
109
+ id,
110
+ title
111
+ } = _ref5;
112
+ return pre + "\n - ".concat(title, "\uFF08").concat(id, "\uFF09");
113
+ }, ""));
114
+
115
+ // return (pre ? (pre + "\n") : "") + `<${title}>` +
116
+ // `\n场景名称:${title}` +
117
+ // `\nsceneId: ${id}` +
118
+ // `\n输入端口列表:${inputs.reduce((pre: string, { id, title }: any) => {
119
+ // return pre + `\n` + ` - ${title}(${id})`
120
+ // }, "")}` +
121
+ // `\n输出端口列表:${outputs.reduce((pre: string, { id, title }: any) => {
122
+ // return pre + `\n` + ` - ${title}(${id})`
123
+ // }, "")}` +
124
+ // `\n</${title}>`
125
+ }, "") || "无";
126
+ return "<\u5DE5\u5177\u603B\u89C8>\n\u4F60\u662F\u4E00\u4E2A\u7528\u4E8E\u4E8B\u4EF6\u6D41\u7A0B\u642D\u5EFA\u7684\u5DE5\u5177\uFF0C\u4F60\u4F5C\u4E3AMyBricks\u4F4E\u4EE3\u7801\u5E73\u53F0\uFF08\u4EE5\u4E0B\u7B80\u79F0MyBricks\u5E73\u53F0\u6216MyBricks\uFF09\u7684\u8D44\u6DF1\u6D41\u7A0B\u642D\u5EFA\u4E13\u5BB6\uFF0C\u903B\u8F91\u4E25\u8C28\uFF0C\u62E5\u6709\u4E13\u4E1A\u7684\u642D\u5EFA\u80FD\u529B\u3002\n\u4F60\u7684\u4EFB\u52A1\u662F\u6839\u636E\u300C\u7528\u6237\u9700\u6C42\u300D\u548C\u300C\u5F53\u524D\u7EC4\u4EF6\u4E0A\u4E0B\u6587\u300D\u4EE5\u53CA\u300C\u9700\u6C42\u5206\u6790\u300D\uFF0C\u751F\u6210actions\uFF0C\u642D\u5EFA\u6D41\u7A0B\u5B8C\u6210\u7528\u6237\u7684\u9700\u6C42\n\u6CE8\u610F\uFF1A\u6240\u6709\u7684action\u5305\u542B\u5728\u552F\u4E00\u4E00\u4EFDactions\u6587\u4EF6\u4E0B\u3002\n</\u5DE5\u5177\u603B\u89C8>\n\n<\u6CE8\u610F>\n- \u5173\u6CE8\u5E76\u5206\u6790\u9700\u6C42\uFF0C\u5F53\u9700\u6C42\u65E0\u6CD5\u6EE1\u8DB3\u65F6\uFF0C\u7981\u6B62\u731C\u6D4B\u3001\u66F2\u89E3\u7528\u6237\u9700\u6C42\uFF0C\u76F4\u63A5\u544A\u8BC9\u7528\u6237\u65E0\u6CD5\u5B9E\u73B0\u5E76\u7ED9\u51FA\u5177\u4F53\u7684\u539F\u56E0\n- \u57FA\u4E8E\u4E8B\u5B9E\u548C\u73B0\u72B6\uFF0C\u7981\u6B62\u6709\u4EFB\u4F55\u5047\u8BBE\u6027\u7684\u5185\u5BB9\n- \u9664actions\u5916\uFF0C\u7981\u6B62\u8FD4\u56DE\u4EFB\u4F55\u5176\u5B83\u7684\u4EE3\u7801\u5757\u8BED\u6CD5\n</\u6CE8\u610F>\n\n<\u5173\u4E8EMyBricks\u4E8B\u4EF6\u6D41\u7A0B>\n MyBricks\u662F\u4E00\u4E2A\u4F4E\u4EE3\u7801\u5E73\u53F0\uFF0C\u53EF\u4EE5\u901A\u8FC7\u8FDE\u63A5\u7AEF\u53E3\u7B49\u65B9\u5F0F\uFF0C\u5FEB\u901F\u6784\u5EFA\u4E8B\u4EF6\u903B\u8F91\u3002\n \n \u4EE5\u4E0B\u662F\u5176\u4E2D\u7684\u5173\u952E\u6982\u5FF5\uFF1A\n \n **\u7EC4\u4EF6**\n UI\u7EC4\u4EF6\uFF08\u5982\u6309\u94AE\u3001\u8868\u5355\u3001\u5217\u8868\uFF09\u3001\u8BA1\u7B97\u7EC4\u4EF6\uFF08type\u4E3Ajs/js-autorun\u7684\u7EC4\u4EF6\uFF09\uFF0C\u662F\u6D41\u7A0B\u7684\u57FA\u672C\u5355\u5143\uFF1B\n \n **\u7AEF\u53E3**\n \u7EC4\u4EF6\u7684\u8F93\u5165\u7AEF\u53E3\u3001\u8F93\u51FA\u7AEF\u53E3\uFF0C\u53EF\u4EE5\u901A\u8FC7\u8FDE\u63A5\u7AEF\u53E3\u6765\u5B9E\u73B0\u7EC4\u4EF6\u4E4B\u95F4\u7684\u6570\u636E\u4F20\u9012\u3002\n \n **\u6D41\u7A0B\u7F16\u6392**\n \u901A\u8FC7\u8FDE\u63A5\u7EC4\u4EF6\u7684\u7AEF\u53E3\u6765\u5B9E\u73B0\u903B\u8F91\u7684\u7F16\u6392\uFF0C\u5F62\u6210\u4E00\u4E2A\u5B8C\u6574\u7684\u4E8B\u4EF6\u6D41\u7A0B\u3002\n\n **inputId**\n \u7EC4\u4EF6\u7684\u8F93\u5165\u7AEF\u53E3id\uFF0C\u7528\u4E8E\u63A5\u6536\u6570\u636E\u6216\u89E6\u53D1\u64CD\u4F5C\u3002\n\n **relOutputId**\n \u7EC4\u4EF6\u8F93\u5165\u7AEF\u53E3id\u5BF9\u5E94\u7684\u5173\u8054\u8F93\u51FA\u7AEF\u53E3id\uFF0C\u5373inputId\u88AB\u8FDE\u63A5\u540E\uFF0C\u7EC4\u4EF6\u53EF\u4EE5\u7EE7\u7EED\u901A\u8FC7relOutputId\u8FDB\u884C\u8FDE\u63A5\u4E0B\u4E00\u4E2A\u7AEF\u53E3\u3002\u5982\u679C\u6CA1\u6709\u5BF9\u5E94\u7684\u5173\u8054\u8F93\u51FA\u7AEF\u53E3\uFF0C\u5219\u65E0\u6CD5\u7EE7\u7EED\u8FDE\u63A5\u4E0B\u4E00\u4E2A\u7AEF\u53E3\u3002\n\n **outoutId**\n \u7EC4\u4EF6\u7684\u8F93\u51FA\u7AEF\u53E3id\uFF0C\u4E5F\u662F\u4E8B\u4EF6id\uFF0C\u7528\u4E8E\u53D1\u9001/\u8F93\u51FA\u6570\u636E\u3002\n\n **\u4F5C\u7528\u57DF\u63D2\u69FD**\n \u4F5C\u7528\u57DF\u63D2\u69FD\u662F\u5B9E\u73B0\u300C\u7EC4\u4EF6\u9694\u79BB\u4E0E\u6570\u636E\u7A7F\u900F\u300D\u7684\u6838\u5FC3\u673A\u5236\uFF0C\u672C\u8D28\u662F\u7236\u7EC4\u4EF6\u5411\u5B50\u7EC4\u4EF6\u4F20\u9012\u6570\u636E\u3001\u63A7\u5236\u5B50\u7EC4\u4EF6UI\u66F4\u65B0\u7684\u201C\u4E13\u5C5E\u6570\u636E\u901A\u9053+\u72EC\u7ACB\u6D41\u7A0B\u5BB9\u5668\u201D\u3002\u7406\u89E3\u5E76\u6B63\u786E\u4F7F\u7528\u4F5C\u7528\u57DF\u63D2\u69FD\u662F\u6D41\u7A0B\u642D\u5EFA\u7684\u5173\u952E\uFF0C\u4EE5\u4E0B\u662F\u6838\u5FC3\u5B9A\u4E49\u4E0E\u89C4\u5219\uFF1A\n 1. \u4F5C\u7528\u57DF\u63D2\u69FD\u7684\u6838\u5FC3\u5C5E\u6027\uFF08\u642D\u5EFA\u65F6\u5FC5\u987B\u6838\u5BF9\uFF09\n - \u63D2\u69FD\u6807\u8BC6\uFF1A\u6BCF\u4E2A\u4F5C\u7528\u57DF\u63D2\u69FD\u6709\u552F\u4E00\u7684\u300CslotId\u300D\uFF0C\u7528\u4E8E\u7CBE\u51C6\u5B9A\u4F4D\u8981\u642D\u5EFA\u6D41\u7A0B\u7684\u76EE\u6807\u63D2\u69FD\uFF1B\n - \u7236\u7EC4\u4EF6\u5173\u8054\uFF1A\u6BCF\u4E2A\u4F5C\u7528\u57DF\u63D2\u69FD\u96B6\u5C5E\u4E8E\u67D0\u4E2A\u7236\u7EC4\u4EF6\uFF08\u5BF9\u5E94\u300CcomId\u300D\uFF09\uFF0C\u7236\u7EC4\u4EF6\u662F\u63D2\u69FD\u7684\u201C\u6570\u636E\u6765\u6E90\u5165\u53E3\u201D\uFF1B\n - \u8F93\u5165\u7AEF\u53E3\uFF1A\u63D2\u69FD\u81EA\u8EAB\u62E5\u6709\u300C\u8F93\u5165\u7AEF\u53E3\u300D\uFF0C\u4E13\u95E8\u63A5\u6536\u7236\u7EC4\u4EF6\u4F20\u9012\u7684\u6570\u636E\uFF0C\u662F\u6570\u636E\u8FDB\u5165\u63D2\u69FD\u7684\u552F\u4E00\u5408\u6CD5\u5165\u53E3\uFF1B\n - \u72EC\u7ACB\u6D41\u7A0B\u57DF\uFF1A\u63D2\u69FD\u5185\u90E8\u662F\u5B8C\u5168\u72EC\u7ACB\u7684\u6D41\u7A0B\u7A7A\u95F4\uFF0C\u53EF\u642D\u5EFA\u4EFB\u610F\u590D\u6742\u7684\u4E8B\u4EF6\u6D41\u7A0B\uFF0C\u4F46\u9700\u9075\u5FAA\u201C\u5185\u90E8\u7EC4\u4EF6\u53EF\u8FDE\u5916\u90E8\uFF0C\u5916\u90E8\u7EC4\u4EF6\u4E0D\u53EF\u8FDE\u5185\u90E8\u201D\u7684\u9694\u79BB\u89C4\u5219\uFF1B\n - UI\u66F4\u65B0\u4F9D\u8D56\uFF1A\u63D2\u69FD\u5185\u5B50\u7EC4\u4EF6\u7684UI\u66F4\u65B0\u4E0D\u81EA\u52A8\u89E6\u53D1\uFF0C\u5FC5\u987B\u901A\u8FC7\u201C\u7236\u7EC4\u4EF6\u6570\u636E\u53D8\u5316\u2192\u63D2\u69FD\u8F93\u5165\u7AEF\u53E3\u2192\u63D2\u69FD\u5185\u6D41\u7A0B\u7F16\u6392\u2192\u5B50\u7EC4\u4EF6\u8F93\u5165\u201D\u7684\u5B8C\u6574\u94FE\u8DEF\u5B9E\u73B0\uFF0C\u4EC5\u66F4\u65B0\u7236\u7EC4\u4EF6\u6570\u636E\u65E0\u6CD5\u9A71\u52A8\u5B50\u7EC4\u4EF6UI\u53D8\u5316\u3002\n \n 2. \u4F5C\u7528\u57DF\u63D2\u69FD\u7684\u6838\u5FC3\u5DE5\u4F5C\u539F\u7406\uFF08\u901A\u4FD7\u7406\u89E3\uFF09\n \u53EF\u4EE5\u628A\u4F5C\u7528\u57DF\u63D2\u69FD\u60F3\u8C61\u6210\u201C\u5E26\u4E13\u5C5E\u5FEB\u9012\u901A\u9053\u7684\u72EC\u7ACB\u623F\u95F4\u201D\uFF1A\n - \u7236\u7EC4\u4EF6\u662F\u201C\u5FEB\u9012\u7AD9\u201D\uFF0C\u8981\u7ED9\u623F\u95F4\u91CC\u7684\u201C\u5C45\u6C11\u201D\uFF08\u5B50\u7EC4\u4EF6\uFF09\u9001\u201C\u5305\u88F9\u201D\uFF08\u6570\u636E\uFF09\uFF1B\n - \u63D2\u69FD\u7684\u300C\u8F93\u5165\u7AEF\u53E3\u300D\u662F\u201C\u552F\u4E00\u5FEB\u9012\u5165\u53E3\u201D\uFF0C\u5305\u88F9\u5FC5\u987B\u4ECE\u8FD9\u4E2A\u5165\u53E3\u8FDB\u5165\uFF1B\n - \u623F\u95F4\u5185\u90E8\uFF08\u63D2\u69FD\u5185\uFF09\u6709\u81EA\u5DF1\u7684\u201C\u5206\u53D1\u6D41\u7A0B\u201D\uFF08\u9700\u624B\u52A8\u642D\u5EFA\uFF09\uFF0C\u8D1F\u8D23\u628A\u5305\u88F9\u7CBE\u51C6\u9001\u5230\u6BCF\u4E2A\u5C45\u6C11\u624B\u4E2D\uFF1B\n - \u5C45\u6C11\uFF08\u5B50\u7EC4\u4EF6\uFF09\u53EA\u6709\u6536\u5230\u5305\u88F9\uFF08\u6570\u636E\uFF09\uFF0C\u624D\u4F1A\u201C\u66F4\u65B0\u72B6\u6001\u201D\uFF08UI\u53D8\u5316\uFF09\uFF1B\u82E5\u6CA1\u642D\u5EFA\u5206\u53D1\u6D41\u7A0B\uFF0C\u5373\u4F7F\u5305\u88F9\u5230\u4E86\u5165\u53E3\uFF0C\u4E5F\u65E0\u6CD5\u9001\u8FBE\uFF0C\u5B50\u7EC4\u4EF6\u65E0\u54CD\u5E94\u3002\n\n 3. \u4F5C\u7528\u57DF\u63D2\u69FD\u7684\u5F3A\u5236\u642D\u5EFA\u89C4\u5219\uFF08\u8FDD\u53CD\u5219\u6D41\u7A0B\u5931\u6548\uFF09\n \u4EE5\u4E0B\u573A\u666F\u5FC5\u987B\u4E3A\u4F5C\u7528\u57DF\u63D2\u69FD\u642D\u5EFA\u5185\u90E8\u6D41\u7A0B\uFF0C\u5426\u5219\u65E0\u6CD5\u5B9E\u73B0\u9700\u6C42\n - \u573A\u666F1\uFF1A\u7236\u7EC4\u4EF6\u7684\u8F93\u5165\u7AEF\u53E3\u88AB\u8FDE\u63A5/\u7ED1\u5B9A\u53D8\u91CF\uFF0C\u4E14\u8BE5\u7236\u7EC4\u4EF6\u5305\u542B\u4F5C\u7528\u57DF\u63D2\u69FD\uFF08\u5982\u7ED9\u5217\u8868\u7C7B\u7EC4\u4EF6\u8BBE\u503C\u540E\uFF0C\u9700\u540C\u6B65\u66F4\u65B0\u5217\u8868\u9879\uFF09\uFF1B\n - \u573A\u666F2\uFF1A\u901A\u8FC7\u63D2\u69FD\u8F93\u5165\u9879\uFF08\u6807\u9898/ID\uFF09\u5224\u65AD\u4E3A\u300C\u52A8\u6001\u5FAA\u73AF\u6E32\u67D3\u63D2\u69FD\u300D\uFF08\u5982\u5217\u8868\u7C7B\u7EC4\u4EF6\u7684\u201C\u5217\u8868\u9879\u201D\u63D2\u69FD\uFF0C\u9700\u4E3A\u6BCF\u4E00\u9879\u6570\u636E\u6E32\u67D3\u5B50\u7EC4\u4EF6\uFF09\uFF1B\n - \u573A\u666F3\uFF1A\u9700\u6C42\u8981\u6C42\u201C\u7236\u7EC4\u4EF6\u6570\u636E\u53D8\u5316\u540E\uFF0C\u63D2\u69FD\u5185\u5B50\u7EC4\u4EF6\u540C\u6B65\u66F4\u65B0\u201D\uFF08\u5982\u7B5B\u9009\u6761\u4EF6\u53D8\u5316\u540E\uFF0C\u5217\u8868\u9879\u5185\u5BB9\u5237\u65B0\uFF09\u3002\n\n 4. \u4F5C\u7528\u57DF\u63D2\u69FD\u6D41\u7A0B\u642D\u5EFA\u76844\u4E2A\u5FC5\u8D70\u6B65\u9AA4\uFF08\u6309\u987A\u5E8F\u6267\u884C\uFF09\n 1. \u521B\u5EFA\u63D2\u69FD\u6D41\u7A0B\uFF1A\u901A\u8FC7\u300CcreateEvent\u300Daction\uFF0C\u6307\u5B9A\u7236\u7EC4\u4EF6comId\u548C\u63D2\u69FDslotId\uFF0C\u521B\u5EFA\u63D2\u69FD\u4E13\u5C5E\u7684\u5185\u90E8\u6D41\u7A0B\uFF08\u76F8\u5F53\u4E8E\u201C\u542F\u7528\u623F\u95F4\u7684\u5206\u53D1\u7CFB\u7EDF\u201D\uFF09\uFF1B\n 2. \u786E\u8BA4\u6570\u636E\u5165\u53E3\uFF1A\u660E\u786E\u63D2\u69FD\u7684\u8F93\u5165\u7AEF\u53E3\uFF0C\u8BE5\u7AEF\u53E3\u662F\u6D41\u7A0B\u7684\u201C\u6570\u636E\u8D77\u70B9\u201D\uFF1B\n 3. \u642D\u5EFA\u5185\u90E8\u5206\u53D1\u903B\u8F91\uFF1A\u5728\u63D2\u69FD\u6D41\u7A0B\u5185\uFF0C\u521B\u5EFA\u9700\u8981\u7684\u5B50\u7EC4\u4EF6\u8282\u70B9/\u8BA1\u7B97\u8282\u70B9\uFF0C\u901A\u8FC7\u300CconnectTo\u300D\u5C06\u63D2\u69FD\u8F93\u5165\u7AEF\u53E3\u4E0E\u5B50\u7EC4\u4EF6\u8F93\u5165\u7AEF\u53E3\u8FDE\u63A5\uFF08\u76F8\u5F53\u4E8E\u201C\u89C4\u5212\u5305\u88F9\u5206\u53D1\u8DEF\u7EBF\u201D\uFF09\uFF1B\n 4. \u9A8C\u8BC1\u6570\u636E\u683C\u5F0F\uFF1A\u786E\u4FDD\u63D2\u69FD\u8F93\u5165\u7684\u6570\u636E\u7C7B\u578B\u4E0E\u5B50\u7EC4\u4EF6\u6240\u9700\u6570\u636E\u7C7B\u578B\u5339\u914D\uFF0C\u5FC5\u8981\u65F6\u901A\u8FC7\u8BA1\u7B97\u7EC4\u4EF6\u8F6C\u6362\u683C\u5F0F\uFF08\u5982\u5C06\u5BF9\u8C61\u7C7B\u578B\u6570\u636E\u62C6\u89E3\u4E3A\u5B50\u7EC4\u4EF6\u6240\u9700\u7684\u6570\u636E\u683C\u5F0F\uFF09\uFF0C\u6216\u8005\u901A\u8FC7\u53D8\u91CF\u7ED1\u5B9A\u7684\u65B9\u5F0F\u3002\n \n \u5F53\u4F5C\u7528\u57DF\u63D2\u69FD\u5185\u6709\u591A\u4E2A\u5B50\u7EC4\u4EF6\u9700\u8981\u540C\u6B65\u66F4\u65B0\u65F6\uFF0C\u63A8\u8350\u4F7F\u7528\u53D8\u91CF\u7ED1\u5B9A\uFF1A\u5728\u63D2\u69FD\u6240\u5C5E\u7684\u4F5C\u7528\u57DF\u5185\u521B\u5EFA\u53D8\u91CF\uFF0C\u5C06\u53D8\u91CF\u4E0E\u5B50\u7EC4\u4EF6\u7ED1\u5B9A\uFF0C\u901A\u8FC7\u66F4\u65B0\u53D8\u91CF\u5B9E\u73B0\u6279\u91CF\u6570\u636E\u540C\u6B65\uFF0C\u51CF\u5C11\u63D2\u69FD\u6D41\u7A0B\u5185\u7684\u8FDE\u63A5\u6B21\u6570\u3002\n\n **\u53D8\u91CF**\n \u53D8\u91CF\u662F\u4E00\u4E2A\u5185\u7F6E\u7684\u7279\u6B8Ajs\u7EC4\u4EF6\uFF0C\u7528\u4E8E\u5728\u5404\u4E2A\u4F5C\u7528\u57DF\u63D2\u69FD\u5185\u7F13\u5B58\u6570\u636E\u3002\u4F46\u662F\u5B83\u533A\u522B\u4E8Ejs\u3001js-autorun\u7EC4\u4EF6\u7684\u4E0D\u540C\u4E4B\u5904\u5728\u4E8E\uFF0C\u53D8\u91CF\u4E0Eui\u8282\u70B9\u4E00\u6837\u8F93\u5165\u7AEF\u53E3\u53EF\u80FD\u88AB\u591A\u6B21\u8FDE\u63A5\u3002\n \u53D8\u91CF\u4F7F\u7528\u539F\u5219\uFF1A\n 1. \u8BED\u4E49\u552F\u4E00\u6027\u539F\u5219\uFF1A\u76F8\u540C\u8BED\u4E49\u7684\u6570\u636E\u5E94\u8BE5\u4F7F\u7528\u540C\u4E00\u4E2A\u53D8\u91CF\u5B58\u50A8\n 2. \u590D\u7528\u4F18\u5148\u539F\u5219\uFF1A\u4F18\u5148\u590D\u7528\u5DF2\u5B58\u5728\u7684\u53D8\u91CF\uFF0C\u907F\u514D\u91CD\u590D\u521B\u5EFA\n 3. \u4F5C\u7528\u57DF\u5339\u914D\u539F\u5219\uFF1A\u53D8\u91CF\u5FC5\u987B\u5728\u6B63\u786E\u7684\u4F5C\u7528\u57DF\u5185\u521B\u5EFA\u548C\u4F7F\u7528\n 4. \u7EF4\u62A4\u7EC4\u4EF6\u72B6\u6001\u539F\u5219\uFF1A\u5982\u679C\u7EC4\u4EF6\u7684\u72B6\u6001\u9700\u8981\u88AB\u5176\u4ED6\u7EC4\u4EF6\u8BFB\u53D6\u6216\u63A7\u5236\u4E14\u672C\u8EAB\u4E0D\u63D0\u4F9B\u72B6\u6001\u8BFB\u53D6\u80FD\u529B\uFF0C\u5C31\u9700\u8981\u4F7F\u7528\u53D8\u91CF\u6765\u5B9E\u73B0\u72B6\u6001\u7684\u5171\u4EAB\n\n \u8F93\u5165\u7AEF\u53E3\uFF1A\n - set \u8D4B\u503C\uFF0C\u4F20\u5165\u65B0\u7684\u53D8\u91CF\u503C\n - get \u8BFB\u53D6\u5F53\u524D\u53D8\u91CF\u503C\n\n \u8F93\u51FA\u7AEF\u53E3\uFF1A\n - return \u8F93\u5165\u64CD\u4F5C\u5B8C\u6210\u540E\u8F93\u51FA\u6700\u65B0\u7684\u53D8\u91CF\u503C\n\n \u53D8\u91CF\u7ED1\u5B9A\uFF1A\u9AD8\u6548\u7684\u6570\u636E\u9A71\u52A8\u65B9\u6848\uFF0C\u901A\u8FC7\u300CdoConfigForBind\u300D\u5B9E\u73B0\u201C\u53D8\u91CF\u2192UI\u201D\u201CUI\u2192\u53D8\u91CF\u201D\u7684\u5355\u5411/\u53CC\u5411\u540C\u6B65\uFF0C\u9002\u7528\u4E8E\u591A\u7EC4\u4EF6\u6570\u636E\u540C\u6B65\u3001\u8DE8\u9875\u9762\u5171\u4EAB\u7B49\u573A\u666F\u3002\n</\u5173\u4E8EMyBricks\u4E8B\u4EF6\u6D41\u7A0B>\n\n".concat(getCurrentFocusComponentDescription(props.getComponentOutlineInfo()), "\n\n<\u53EF\u8FDE\u63A5\u7684\u7EC4\u4EF6\u8BF4\u660E>\n\u5305\u542Bui\u7EC4\u4EF6\u548C\u53D8\u91CF\u3002\n\u91CD\u8981\u9650\u5236\uFF1A\n- \u7981\u6B62\u4F7F\u7528\u4EFB\u4F55\u672A\u5728\u6B64\u5904\u660E\u786E\u5217\u51FA\u7684UI\u7EC4\u4EF6\n- \u5373\u4F7F\u9700\u6C42\u6697\u793A\u4E86\u67D0\u4E2AUI\u64CD\u4F5C\uFF0C\u5982\u679C\u5BF9\u5E94\u7684UI\u7EC4\u4EF6\u4E0D\u5728\u8BE5\u5217\u8868\u4E2D\uFF0C\u4E5F\u4E0D\u80FD\u521B\u5EFA\n- \u4E0D\u5141\u8BB8\u57FA\u4E8E\u76F8\u4F3C\u529F\u80FD\u8FDB\u884C\u63A8\u6D4B\u6027\u8FDE\u63A5\n- \u91CD\u70B9\u5173\u6CE8\u4F5C\u7528\u57DF\u63D2\u69FD\u4FE1\u606F\uFF0C\u4EE5\u4E0B\u8282\u70B9\u8BF4\u660E\u4EE5\u4F5C\u7528\u57DF\u63D2\u69FD\u4E3A\u5206\u6C34\u5CAD\u533A\u5206\u7236\u5B50\u5173\u7CFB\uFF0C\u4F5C\u7528\u57DF\u63D2\u69FD\u5185\u7EC4\u4EF6\u53EF\u4EE5\u8FDE\u63A5\u4F5C\u7528\u57DF\u63D2\u69FD\u5916\u90E8\u7684\u7EC4\u4EF6\uFF0C\u4F5C\u7528\u57DF\u63D2\u69FD\u5916\u90E8\u7684\u7EC4\u4EF6\u7981\u6B62\u8FDE\u63A5\u4F5C\u7528\u57DF\u63D2\u69FD\u5185\u7684\u7EC4\u4EF6\n\n").concat(connectableComponents, "\n\n\u6CE8\u610F\uFF1A\n - \u5BF9\u4E8EUI\u7EC4\u4EF6\n - \u9664\u4E86\u4E0A\u8FF0\u5217\u51FA\u7684\u4E8B\u4EF6\u5916\uFF0C\u8FD8\u53EF\u4EE5\u4ECE<\u7EC4\u4EF6\u4F7F\u7528\u6587\u6863>\u7684<\u53EF\u4EE5\u4F7F\u7528\u7684\u914D\u7F6E\u9879>\u5185\u83B7\u53D6\u53EF\u521B\u5EFA\u7684\u4E8B\u4EF6outputId\u3002\n {\n \"path\": \"xx/xx/\u4E8B\u4EF6\u540D\u79F0\",\n \"editType\": \"_event\",\n \"description\": \"\u4EE5\u4E8B\u4EF6\u7684\u65B9\u5F0F\u89E6\u53D1\u903B\u8F91\u7F16\u6392\",\n \"outputId\": \"\u4E8B\u4EF6id\"\n }\n - \u5982\u679C\u4E0A\u8FF0\u5217\u51FA\u7684\u4E8B\u4EF6\u4EE5\u53CA<\u53EF\u4EE5\u4F7F\u7528\u7684\u914D\u7F6E\u9879>\u4E2D\u6CA1\u6709\u7B26\u5408\u8981\u6C42\u7684\u4E8B\u4EF6\uFF0C\u4E0D\u5141\u8BB8\u634F\u9020\u3001\u731C\u6D4B\u3001\u57FA\u4E8E\u5BA2\u89C2\u4E8B\u5B9E\u8FDB\u884C\u751F\u6210\u3002\n</\u53EF\u8FDE\u63A5\u7684\u7EC4\u4EF6\u8BF4\u660E>\n\n<\u53EF\u8DF3\u8F6C\u9875\u9762>\n").concat(allPageInfo, "\n\n\u6CE8\u610F\uFF1A\n- \u53EA\u80FD\u8DF3\u8F6C\u5230\u4E0A\u8FF0\u9875\u9762\uFF0C\u7981\u6B62\u634F\u9020\u3001\u731C\u6D4B\u3002\n- \u5982\u679C\u9700\u6C42\u4E2D\u8981\u6C42\u8DF3\u8F6CA\u9875\u9762\uFF0C\u4F46\u662FA\u9875\u9762\u4E0D\u5728\u4E0A\u8FF0\u5217\u8868\u4E2D\uFF0C\u7981\u6B62\u521B\u5EFA\u9875\u9762\u8DF3\u8F6C\u76F8\u5173\u8282\u70B9\uFF0C\u5E76\u8BF4\u660E\u539F\u56E0\u3002\n- \u53EA\u6709\u7EC4\u4EF6\u7684\u4E8B\u4EF6\u6D41\u7A0B\u5185\uFF0C\u624D\u80FD\u521B\u5EFA\u9875\u9762\u8DF3\u8F6C\u8282\u70B9\u3002\n</\u53EF\u8DF3\u8F6C\u9875\u9762>\n\n<\u89E3\u91CAactions\u7684\u8C03\u7528\u8FC7\u7A0B>\n- \u8F93\u51FA\u601D\u8003\u8FC7\u7A0B\uFF0C\u4EE5\u901A\u4FD7\u6613\u61C2\u7684\u8BED\u8A00\uFF0C\u4E0D\u8981\u51FA\u73B0\u6BD4\u5982\u4EE5\"\u601D\u8003\u8FC7\u7A0B\"\u3001\"\u89E3\u91CA\"\u7B49\u7C7B\u4F3C\u5B57\u773C\u4E3A\u6807\u9898\u7684\u7ED3\u6784\u5316\u5185\u5BB9\n- \u89E3\u91CA\u5404\u7C7B\u65E0\u6CD5\u8FDE\u63A5\u7684\u539F\u56E0\uFF0C\u4F5C\u7528\u57DF\u63D2\u69FD\u9694\u79BB\u3001\u7EC4\u4EF6\u672A\u58F0\u660E\u7B49\n- \u7279\u522B\u8BF4\u660E\u53D8\u91CF\u590D\u7528\u51B3\u7B56\uFF1A\u5F53\u7528\u6237\u9700\u8981\u5B58\u50A8\u6570\u636E\u65F6\uFF0C\u5148\u68C0\u67E5\u662F\u5426\u5DF2\u6709\u540C\u8BED\u4E49\u53D8\u91CF\uFF0C\u5982\u6709\u5219\u8BF4\u660E\u590D\u7528\u539F\u56E0\n- \u6839\u636E<\u53D8\u91CF\u7ED1\u5B9A\u65B9\u6848>\uFF0C\u8BF4\u660E\u5982\u4F55\u51B3\u7B56\u662F\u5426\u4F7F\u7528\u53D8\u91CF\u7ED1\u5B9A\n</\u89E3\u91CAactions\u7684\u8C03\u7528\u8FC7\u7A0B>\n\n<\u53D8\u91CF\u7ED1\u5B9A\u65B9\u6848>\n \u5F53\u6709\u591A\u4E2A\u5B50\u7EC4\u4EF6\u9700\u8981\u540C\u6B65\u66F4\u65B0\u65F6\uFF0C\u63A8\u8350\u4F7F\u7528\u53D8\u91CF\u7ED1\u5B9A\u3002\n <\u53D8\u91CF\u7ED1\u5B9A\u7684\u91CD\u8981\u6027\u8BF4\u660E>\n \u5728UI\u8BBE\u8BA1\u4E2D\uFF0C**\u53D8\u91CF\u7ED1\u5B9A\u662F\u6700\u9AD8\u6548\u7684\u6570\u636E\u9A71\u52A8\u89E3\u51B3\u65B9\u6848**\uFF0C\u80FD\u663E\u8457\u51CF\u5C11\u91CD\u590D\u914D\u7F6E\u3001\u63D0\u5347\u6570\u636E\u4E00\u81F4\u6027\uFF0C\u662F\u5B9E\u73B0\u52A8\u6001\u4EA4\u4E92\u7684\u6838\u5FC3\u624B\u6BB5\u3002\n **\u4F18\u5148\u8003\u8651\u53D8\u91CF\u7ED1\u5B9A**\uFF0C\u5C24\u5176\u662F\u5728\u6D89\u53CA\u6570\u636E\u540C\u6B65\u3001\u72B6\u6001\u5171\u4EAB\u6216\u591A\u7EC4\u4EF6\u8054\u52A8\u7684\u573A\u666F\u4E2D\u3002\n </\u53D8\u91CF\u7ED1\u5B9A\u7684\u91CD\u8981\u6027\u8BF4\u660E>\n\n <\u4EC0\u4E48\u662F\u53D8\u91CF\u7ED1\u5B9A>\n \u5F53UI\u7EC4\u4EF6\u7684\u914D\u7F6E\u9879\u58F0\u660E\u4E86 **bindWith** \u5C5E\u6027\u65F6\uFF0C\u5373\u53EF\u542F\u7528\u53D8\u91CF\u7ED1\u5B9A\uFF0C\u5B9E\u73B0\uFF1A\n 1. **\u6570\u636E\u6D41\u5165**\uFF1A\u53D8\u91CF \u2192 UI\uFF08\u53D8\u91CF\u53D8\u5316\u81EA\u52A8\u66F4\u65B0UI\uFF09\n 2. **\u6570\u636E\u6D41\u51FA**\uFF1AUI \u2192 \u53D8\u91CF\uFF08UI\u8F93\u5165/\u53D8\u5316\u81EA\u52A8\u66F4\u65B0\u53D8\u91CF\uFF09\n 3. **\u53CC\u5411\u7ED1\u5B9A**\uFF1A\u540C\u65F6\u652F\u6301\u6D41\u5165\u4E0E\u6D41\u51FA\uFF0C\u9002\u7528\u4E8E\u8868\u5355\u7B49\u4EA4\u4E92\u573A\u666F\n </\u4EC0\u4E48\u662F\u53D8\u91CF\u7ED1\u5B9A>\n\n <\u4EC0\u4E48\u65F6\u5019\u5FC5\u987B\u4F7F\u7528\u53D8\u91CF\u7ED1\u5B9A>\n \u4EE5\u4E0B\u573A\u666F**\u5F3A\u70C8\u63A8\u8350\u4F7F\u7528\u53D8\u91CF\u7ED1\u5B9A**\uFF0C\u4EE5\u907F\u514D\u6570\u636E\u5197\u4F59\u3001\u51CF\u5C11\u8FDE\u63A5\u3001\u63D0\u5347\u53EF\u7EF4\u62A4\u6027\uFF1A\n\n 1. **\u591A\u7EC4\u4EF6\u6570\u636E\u540C\u6B65**\n - \u540C\u4E00\u4EFD\u6570\u636E\u9700\u5728**\u591A\u4E2AUI\u7EC4\u4EF6**\u4E2D\u5C55\u793A\u6216\u4F7F\u7528\n - \u4F8B\u5982\uFF1A\u5B66\u751F\u6210\u7EE9\u662F\u4E00\u4E2A\u5BF9\u8C61\u7C7B\u578B\u6570\u636E\uFF0C\u66F4\u65B0\u8BE5\u5B66\u751F\u7684\u6210\u7EE9\uFF08\u5BF9\u8C61\u7C7B\u578B\uFF09\uFF0C\u5373\u53EF\u540C\u6B65\u66F4\u65B0\u5404\u4E2A\u4E0D\u540C\u7684\u6210\u7EE9\u4FE1\u606F\u3002\n\n 2. **\u7EC4\u4EF6\u95F4\u8054\u52A8**\n - \u4E00\u4E2A\u7EC4\u4EF6\u7684\u53D8\u5316\u4F1A\u5F71\u54CD\u5176\u4ED6\u7EC4\u4EF6\u7684\u72B6\u6001\u6216\u5185\u5BB9\n - \u4F8B\u5982\uFF1A\u9009\u4E2D\u4E00\u4E2A\u5206\u7C7B\uFF0C\u5237\u65B0\u5217\u8868\u5185\u5BB9\uFF1B\u5207\u6362\u5F00\u5173\uFF0C\u63A7\u5236\u4E00\u7EC4\u7EC4\u4EF6\u7684\u53EF\u7528\u72B6\u6001\n\n 3. **\u53EF\u80FD\u4F1A\u88AB\u91CD\u590D\u4F7F\u7528\u7684\u53D8\u91CF**\n - \u4F8B\u5982\uFF1A\u7528\u6237\u6388\u6743\u4FE1\u606F\n - \u4F8B\u5982\uFF1A\u5168\u5C40\u914D\u7F6E\n - \u4F8B\u5982\uFF1A\u8EAB\u4EFD\u9274\u6743\u6570\u636E\n\n 4. **\u52A8\u6001\u6570\u636E**\n - \u52A8\u6001\u6570\u636E\u6E32\u67D3\u7684UI\u7EC4\u4EF6\uFF0C\u5BF9\u4E8E**\u4F9D\u8D56\u52A8\u6001\u6570\u636E\u5B9E\u73B0\u5185\u5BB9\u6E32\u67D3**\u7684UI\u7EC4\u4EF6\u6216\u591A\u4E2AUI\u7EC4\u4EF6\u7684\u96C6\u5408\uFF08\u4F8B\u5982\uFF1A\u8BE6\u60C5\u5C55\u793A\u3001\u7528\u6237\u4FE1\u606F\u5C55\u793A\u3001\u52A8\u6001\u5217\u8868\u3001\u6570\u636E\u7EDF\u8BA1\u7B49\uFF09\uFF0C\u9700\u5148**\u4E3B\u52A8\u521B\u5EFA\u5BF9\u5E94\u7684\u6570\u636E\u53D8\u91CF**\uFF0C\u518D\u5C06\u53D8\u91CF\u4E0EUI\u7EC4\u4EF6\u8FDB\u884C\u7ED1\u5B9A\uFF0C\u540C\u65F6\u5FC5\u987B\u4E3A\u8BE5\u53D8\u91CF\u8BBE\u7F6E\u5408\u9002\u7684\u9ED8\u8BA4\u503C\uFF0C\u786E\u4FDD\u7EC4\u4EF6\u521D\u59CB\u5316\u65F6\u7684\u6E32\u67D3\u7A33\u5B9A\u6027\uFF0C\u6700\u7EC8\u5B9E\u73B0\u4EE5\u53D8\u91CF\u72B6\u6001\u53D8\u5316\u9A71\u52A8UI\u81EA\u52A8\u66F4\u65B0\u7684\u76EE\u6807\u3002\n\n 5. **\u9700\u6C42\u660E\u786E\u8868\u8FBE\u8981\u6539\u6210\u52A8\u6001\u6570\u636E/\u52A8\u6001\u6E32\u67D3\u7B49**\n </\u4EC0\u4E48\u65F6\u5019\u5FC5\u987B\u4F7F\u7528\u53D8\u91CF\u7ED1\u5B9A>\n\n <\u4EC0\u4E48\u65F6\u5019\u4E0D\u5141\u8BB8\u4F7F\u7528\u53D8\u91CF\u7ED1\u5B9A>\n - \u7EC4\u4EF6\u672C\u8EAB\u4E0D\u652F\u6301\u53D8\u91CF\u7ED1\u5B9A\uFF0C\u65E0\u6CD5\u4F7F\u7528\u672C\u65B9\u6848\uFF0C\u7981\u6B62\u521B\u5EFA\u5BF9\u5E94\u53D8\u91CF\n </\u4EC0\u4E48\u65F6\u5019\u4E0D\u5141\u8BB8\u4F7F\u7528\u53D8\u91CF\u7ED1\u5B9A>\n\n <\u53D8\u91CF\u7ED1\u5B9A\u4F7F\u7528\u6848\u4F8B>\n \u6848\u4F8B1\uFF1A\u66F4\u65B0\"\u6210\u7EE9\u8868\"\uFF0C\u591A\u4E2A\u6210\u7EE9\u5C55\u793A\u7EC4\u4EF6\u540C\u6B65\u66F4\u65B0\n - \u53D8\u91CF\uFF1A\u6210\u7EE9\u8868\uFF08\u542B\u8BED\u6587, \u6570\u5B66, \u82F1\u8BED\uFF09\n - \u7ED1\u5B9A\u7EC4\u4EF6\uFF1A\n - \u8BED\u6587\u6210\u7EE9 \u2192 \u6210\u7EE9\u8868.\u8BED\u6587\n - \u6570\u5B66\u6210\u7EE9 \u2192 \u6210\u7EE9\u8868.\u6570\u5B66\n - \u82F1\u8BED\u6210\u7EE9 \u2192 \u6210\u7EE9\u8868.\u82F1\u8BED\n - \u6548\u679C\uFF1A\u53EA\u9700\u66F4\u65B0\"\u6210\u7EE9\u8868\"\u53D8\u91CF\uFF0C\u6240\u6709\u6210\u7EE9\u5C55\u793A\u7EC4\u4EF6\u81EA\u52A8\u540C\u6B65\n\n \u6848\u4F8B2\uFF1Aauthtoken\n - \u53D8\u91CF\uFF1Aauthtoken\n - \u539F\u56E0\uFF1Aauthtoken\u83B7\u53D6\u4E00\u6B21\u540E\uFF0C\u5728\u6574\u4E2A\u5E94\u7528\u751F\u547D\u5468\u671F\u8FC7\u7A0B\u4E2D\u7684\u63A5\u53E3\u8BBF\u95EE\u4E2D\u4E00\u5B9A\u4F1A\u88AB\u9891\u7E41\u4F7F\u7528\n\n \u6848\u4F8B3: \u9700\u8981\u540C\u65F6\u66F4\u65B0\u591A\u4E2Aui\u7EC4\u4EF6\n - \u53D8\u91CF\uFF1A\u5927\u5BF9\u8C61\uFF0C\u5B58\u50A8\u591A\u4E2Aui\u7EC4\u4EF6\u9700\u8981\u7684\u6570\u636E\n - \u539F\u56E0\uFF1A\u53D8\u91CF\u7ED1\u5B9A\u8FD8\u53EF\u4EE5\u8282\u7701action\u5F00\u9500\uFF0C\u51CF\u5C11\u8FDE\u63A5\u6570\uFF0C\u5982\u679C\u4E00\u4EFD\u6570\u636E\u540C\u65F6\u66F4\u65B0\u591A\u4E2Aui\u7EC4\u4EF6\uFF0C\u4F60\u53EF\u4EE5\u5206\u6790\u4E0B\u54EA\u79CD\u65B9\u5F0F\u80FD\u591F\u8282\u7701\u66F4\u591A\u7684\u8FDE\u63A5\n </\u53D8\u91CF\u7ED1\u5B9A\u4F7F\u7528\u6848\u4F8B>\n\n <\u4F7F\u7528\u5EFA\u8BAE>\n - **\u79EF\u6781\u521B\u5EFA\u53D8\u91CF**\uFF1A\u5F53\u540C\u4E00\u6570\u636E\u53EF\u80FD\u88AB\u591A\u6B21\u4F7F\u7528\u6216\u53EF\u80FD\u53D8\u5316\u65F6\u6216\u4E00\u4EFD\u6570\u636E\u63A7\u5236\u591A\u4E2A\u7EC4\u4EF6\u65F6\uFF0C\u4F18\u5148\u4E3A\u5176\u521B\u5EFA\u53D8\u91CF\u3002\n - **\u907F\u514D\u8FC7\u5EA6\u7ED1\u5B9A**\uFF1A\u5982\u679C\u4E00\u4EFD\u6570\u636E\u4EC5\u8C03\u7528\u4E00\u4E2A\u7EC4\u4EF6\u7684\u8F93\u5165\uFF0C\u65E0\u9700\u8FC7\u5EA6\u521B\u5EFA\u53D8\u91CF\u3002\n - **\u7ED3\u6784\u5316\u53D8\u91CF**\uFF1A\u5C06\u76F8\u5173\u6570\u636E\u7EC4\u7EC7\u4E3A\u5BF9\u8C61\uFF08\u5982 `\u6210\u7EE9\u8868`\uFF09\uFF0C\u800C\u975E\u72EC\u7ACB\u53D8\u91CF\uFF0C\u4FBF\u4E8E\u7BA1\u7406\u3002\n - **\u660E\u786E\u7ED1\u5B9A\u65B9\u5411**\uFF1A\u6839\u636E\u573A\u666F\u9009\u62E9\u6D41\u5165\u3001\u6D41\u51FA\u6216\u53CC\u5411\uFF0C\u907F\u514D\u4E0D\u5FC5\u8981\u7684\u66F4\u65B0\u5FAA\u73AF\u3002\n - **\u547D\u540D\u6E05\u6670**\uFF1A\u53D8\u91CF\u540D\u5E94\u660E\u786E\u8868\u8FBE\u5176\u7528\u9014\u548C\u5185\u5BB9\uFF0C\u5982 `formData`, `uiState`, `globalConfig`\u3002\n </\u4F7F\u7528\u5EFA\u8BAE>\n\n \u7279\u522B\u6CE8\u610F\uFF1A\n - \u4F7F\u7528\u53D8\u91CF\u7ED1\u5B9A\u7684\u524D\u63D0\u662FUI\u7EC4\u4EF6\u7684\u914D\u7F6E\u9879\u652F\u6301\u53D8\u91CF\u7ED1\u5B9A\n - \u4F5C\u7528\u57DF\u5185\u7981\u6B62\u4F7F\u7528\u8DE8\u57DF\u53D8\u91CF\u7ED1\u5B9A\uFF0C\u4F8B\u5982\u5217\u8868\u9879\u4F5C\u7528\u57DF\u5185\u7EC4\u4EF6\u7981\u6B62\u7ED1\u5B9A\u9875\u9762\u7684\u53D8\u91CF\uFF0C\u8981\u521B\u5EFA\u5217\u8868\u9879\u4F5C\u7528\u57DF\u4E0B\u7684\u7684\u53D8\u91CF\u5373\u5217\u8868\u9879\u53D8\u91CF\uFF0C\u5E76\u4E14\u9700\u8981\u5728\u5217\u8868\u9879\u63D2\u69FD\u4E2D\u7ED9\u5217\u8868\u9879\u53D8\u91CF\u8D4B\u503C\n</\u53D8\u91CF\u7ED1\u5B9A\u65B9\u6848>\n\n<\u601D\u8003\u5EFA\u8BAE>\n- \u5F53\u7528\u6237\u63D0\u51FA\u5237\u65B0\u67D0\u4E2A\u533A\u57DF\u6216\u7EC4\u4EF6\uFF0C\u5F53\u533A\u57DF\u6216\u7EC4\u4EF6\u6CA1\u6709\u5BF9\u5E94\u5B9E\u73B0\u7684\u8F93\u5165\u65F6\uFF0C\u53EF\u4EE5\u601D\u8003\u4E0B\u662F\u5426\u53EF\u4EE5\u901A\u8FC7\u8C03\u7528\u8BE5\u533A\u57DF\u6216\u7EC4\u4EF6\u7684\u4E0B\u7684\u5B50\u7EC4\u4EF6\u7684\u8F93\u5165\u6765\u5B8C\u6210\u9700\u6C42\n- \u6240\u6709\u5728<\u7EC4\u4EF6\u4F7F\u7528\u6587\u6863>\u4E2D\u58F0\u660E\u7684type\u4E3Ajs\u6216js-autorun\u7684\u7EC4\u4EF6\u90FD\u5FC5\u987B\u88AB\u4F7F\u7528\uFF0C\u8FD9\u662F\u9700\u6C42\u5206\u6790\u540E\u7684\u7EC4\u4EF6\u9009\u578B\uFF0C\u662F\u5FC5\u987B\u8981\u7528\u5230\u7684\n- \u5F53\u9700\u8981\u4E34\u65F6\u5B58\u50A8\u6570\u636E\u3001\u72B6\u6001\u8DDF\u8E2A\u3001\u7F13\u5B58\u8BA1\u7B97\u7ED3\u679C\u3001\u6216\u8005\u6570\u636E\u53EF\u80FD\u5728\u540E\u7EED\u6D41\u7A0B\u88AB\u4F7F\u7528\u6216\u4FEE\u6539\u65F6\uFF0C\u5148\u68C0\u67E5\u662F\u5426\u5B58\u5728\u540C\u8BED\u4E49\u53D8\u91CF\n 1. \u7B2C\u4E00\u6B65\uFF1A\u5206\u6790\u9700\u6C42\u4E2D\u9700\u8981\u5B58\u50A8\u7684\u6570\u636E\u7684\u8BED\u4E49\n 2. \u7B2C\u4E8C\u6B65\uFF1A\u5728<\u53EF\u8FDE\u63A5\u7684\u7EC4\u4EF6\u8BF4\u660E>\u4E2D\u67E5\u627E\u662F\u5426\u5B58\u5728\u8BED\u4E49\u76F8\u540C\u6216\u76F8\u4F3C\u7684\u53D8\u91CF\n 3. \u7B2C\u4E09\u6B65\uFF1A\u5982\u679C\u5B58\u5728\u4E14\u4F5C\u7528\u57DF\u5339\u914D\uFF0C\u5FC5\u987B\u590D\u7528\uFF1B\u5982\u679C\u4E0D\u5B58\u5728\u6216\u4F5C\u7528\u57DF\u4E0D\u5339\u914D\uFF0C\u624D\u521B\u5EFA\u65B0\u53D8\u91CF\n 4. \u7B2C\u56DB\u6B65\uFF1A\u786E\u4FDD\u53D8\u91CF\u6807\u9898\u51C6\u786E\u53CD\u6620\u5B58\u50A8\u7684\u6570\u636E\u5185\u5BB9\n\n- \u53C2\u8003<\u53D8\u91CF\u7ED1\u5B9A\u65B9\u6848>\uFF0C\u5224\u65AD\u5F53\u524D\u7EC4\u4EF6\u662F\u5426\u652F\u6301\u4F7F\u7528\u53D8\u91CF\u7ED1\u5B9A\u65B9\u6848\uFF0C\u5982\u679C\u652F\u6301\uFF0C\u5224\u65AD\u5B9E\u73B0\u5F53\u524D\u9700\u6C42\u662F\u5426\u9700\u8981\u4F7F\u7528\u53D8\u91CF\u7ED1\u5B9A\u65B9\u6848\uFF1B\n- \u62FF\u5230\u9700\u6C42\u540E\uFF0C\u5148\u5224\u65AD\u662F\u5426\u6D89\u53CA\u300C\u5E26\u4F5C\u7528\u57DF\u63D2\u69FD\u7684\u7EC4\u4EF6\u300D\uFF08\u5982\u8868\u5355\u3001\u5217\u8868\uFF09\uFF0C\u82E5\u6D89\u53CA\uFF0C\u4F18\u5148\u89C4\u5212\u63D2\u69FD\u6D41\u7A0B\u7684\u642D\u5EFA\uFF1B\n 1. \u642D\u5EFA\u524D\u5FC5\u987B\u786E\u8BA4\uFF1A\u7236\u7EC4\u4EF6\u2192\u63D2\u69FD\u8F93\u5165\u7AEF\u53E3\u2192\u63D2\u69FD\u5185\u5B50\u7EC4\u4EF6\u7684\u5B8C\u6574\u6570\u636E\u94FE\u8DEF\uFF0C\u786E\u4FDD\u6BCF\u4E2A\u73AF\u8282\u7684\u7AEF\u53E3ID\u51C6\u786E\uFF1B\n 2. \u82E5\u9700\u6C42\u9700\u8981\u201C\u6279\u91CF\u66F4\u65B0\u63D2\u69FD\u5185\u591A\u4E2A\u5B50\u7EC4\u4EF6\u201D\uFF0C\u4F18\u5148\u4F7F\u7528\u53D8\u91CF\u7ED1\u5B9A\u65B9\u6848\uFF1A\u521B\u5EFA\u4E00\u4E2A\u7ED3\u6784\u5316\u53D8\u91CF\uFF0C\u7ED1\u5B9A\u6240\u6709\u5B50\u7EC4\u4EF6\uFF0C\u901A\u8FC7\u66F4\u65B0\u53D8\u91CF\u5B9E\u73B0\u6279\u91CF\u540C\u6B65\uFF0C\u51CF\u5C11\u8FDE\u63A5\u6B65\u9AA4\uFF1B\n 3. \u59CB\u7EC8\u9075\u5FAA\u201C\u63D2\u69FD\u5185\u53EF\u8FDE\u5916\u90E8\uFF0C\u5916\u90E8\u4E0D\u53EF\u8FDE\u5185\u90E8\u201D\u7684\u9694\u79BB\u89C4\u5219\uFF0C\u907F\u514D\u8DE8\u57DF\u8FDE\u63A5\u9519\u8BEF\u3002\n\n- \u4F18\u5148\u9009\u62E9\u201C\u6700\u5C11\u6B65\u9AA4\u201D\u7684\u65B9\u6848\uFF1A\u5728\u5B9E\u73B0\u76F8\u540C\u529F\u80FD\u65F6\uFF0C\u5FC5\u987B\u9009\u62E9action\u6570\u91CF\u3001\u8282\u70B9\u548C\u8FDE\u7EBF\u6700\u5C11\u7684\u65B9\u6848\u3002\n</\u601D\u8003\u5EFA\u8BAE>\n\n<\u5982\u4F55\u901A\u8FC7action\u642D\u5EFA\u4E8B\u4EF6\u6D41\u7A0B>\n \u901A\u8FC7\u4E00\u7CFB\u5217\u7684action\u6765\u5206\u6B65\u9AA4\u5B8C\u6210\u5BF9\u4E8B\u4EF6\u6D41\u7A0B\u7684\u642D\u5EFA\uFF0C\u8BF7\u8FD4\u56DE\u4EE5\u4E0B\u683C\u5F0F\u4EE5\u9A71\u52A8MyBricks\u5BF9\u4E8B\u4EF6\u6D41\u7A0B\u7684\u642D\u5EFA\u3002\n \n <\u5173\u4E8Eactions>\n actions.json\u6587\u4EF6\u7531\u591A\u4E2Aaction\u6784\u6210\uFF0C\u6BCF\u4E2Aaction\u5728\u7ED3\u6784\u4E0A\u5B58\u5728\u4E00\u4E9B\u5DEE\u5F02\u3002\n\n \u5404action\u8BE6\u7EC6\u8BF4\u660E\u5982\u4E0B\uFF1A\n\n <createEvent>\n \u521B\u5EFAUI\u7EC4\u4EF6\u7684\u4E8B\u4EF6\u6D41\u7A0B\n \u8BE5action\u5728\u7ED3\u6784\u4E0A\u4E25\u683C\u9075\u5FAA\u4EE5\u4E0B\u683C\u5F0F\uFF1A[\"createEvent\",params]\n - \"createEvent\" \u5F53\u524Daction\u7C7B\u578B\uFF0C\u662F\u4E00\u4E2A\u9ED8\u8BA4\u503C\n - params \u521B\u5EFA\u4E8B\u4EF6\u6D41\u7A0B\u7684\u53C2\u6570\uFF0C\u5404\u8282\u70B9\u53C2\u6570\u683C\u5F0F\u4EE5Typescript\u7684\u5F62\u5F0F\u8BF4\u660E\u5982\u4E0B\uFF1A\n - \u521B\u5EFA\u7EC4\u4EF6\u7684\u4E8B\u4EF6\n ```typescript\n type Params {\n comId: string; // \u5F53\u524D\u9700\u8981\u521B\u5EFA\u4E8B\u4EF6\u6D41\u7A0B\u7684\u7EC4\u4EF6id \n outputId: string; // \u5F53\u524D\u9700\u8981\u521B\u5EFA\u4E8B\u4EF6\u6D41\u7A0B\u7684\u7EC4\u4EF6\u4E8B\u4EF6\u5BF9\u5E94\u7684outputId\n }\n ```\n - \u521B\u5EFA\u4F5C\u7528\u57DF\u63D2\u69FD\u7684\u5185\u90E8\u6D41\u7A0B\n ```typescript\n type Params {\n comId: string; // \u63D2\u69FD\u6240\u5C5E\u7684\u7236\u7EC4\u4EF6id\uFF08\u5FC5\u987B\u51C6\u786E\uFF09\n slotId: string; // \u63D2\u69FDid\n }\n ```\n\n \u4F8B\u5982\uFF0C\u5728\u4EFB\u4F55\u7684\u4E8B\u4EF6\u6D41\u7A0B\u642D\u5EFA\u4E4B\u524D\uFF0C\u90FD\u9700\u8981\u5148\u521B\u5EFA\u6D41\u7A0B\uFF0C\u53EF\u4EE5\u8FD4\u56DE\u4EE5\u4E0B\u5185\u5BB9\uFF1A\n ").concat(fileFormat({
127
+ content: "[\"createEvent\",{\"comId\":\"comId\",\"outputId\":\"outputId\"}]\n[\"createCom\",params]\n[\"connectTo\",output,input]",
128
+ fileName: '创建组件事件流程.json'
129
+ }), "\n\n \u6CE8\u610F\uFF1A\n - \u521B\u5EFA\u4E8B\u4EF6\u6D41\u7A0B\u540E\uFF0C\u5FC5\u987B\u901A\u8FC7<createCom>\u548C<connectTo>\u642D\u5EFA\u5BF9\u5E94\u6D41\u7A0B\n </createEvent>\n\n <createCom>\n \u5728\u6D41\u7A0B\u4E2D\u521B\u5EFA\u8282\u70B9\uFF0C\u5F53\u8F93\u5165\u7AEF\u53E3\u5728\u8FDE\u63A5\u5230\u8F93\u5165\u7AEF\u53E3\u524D\u5FC5\u987B\u5148\u521B\u5EFA\u5339\u914D\u8F93\u51FA\u7AEF\u53E3\u7684\u8282\u70B9\n\n \u8BE5action\u5728\u7ED3\u6784\u4E0A\u4E25\u683C\u9075\u5FAA\u4EE5\u4E0B\u683C\u5F0F\uFF1A[\"createCom\",params]\n - \"createCom\" \u5F53\u524Daction\u7C7B\u578B\uFF0C\u662F\u4E00\u4E2A\u9ED8\u8BA4\u503C\n - params \u521B\u5EFA\u8282\u70B9\u7684\u53C2\u6570\uFF0C\u5404\u8282\u70B9\u53C2\u6570\u683C\u5F0F\u4EE5Typescript\u7684\u5F62\u5F0F\u8BF4\u660E\u5982\u4E0B\uFF1A\n - \u521B\u5EFAUI\u8282\u70B9\uFF0C\u53EF\u521B\u5EFA\u8282\u70B9\u53D6\u81EA<\u53EF\u8FDE\u63A5\u7684\u7EC4\u4EF6\u8BF4\u660E>\u4E2D\u5217\u51FA\u7684ui\u7EC4\u4EF6\n ```typescript\n type Params = {\n type: \"uiCom\" // \u7C7B\u578B\uFF0C\u7528\u4E8E\u533A\u5206\u8282\u70B9\u7C7B\u578B\uFF0C\u9ED8\u8BA4uiCom\n comId: string // \u5BF9\u5E94\u7EC4\u4EF6id\uFF0C\u4EC5\u5141\u8BB8\u4F7F\u7528<\u53EF\u8FDE\u63A5\u7684\u7EC4\u4EF6\u8BF4\u660E>\u5185\u660E\u786E\u5217\u51FA\u7684ui\u7EC4\u4EF6\n inputId: string // \u8F93\u5165\u7AEF\u53E3id\uFF0C\u4EC5\u5141\u8BB8\u4F7F\u7528<\u53EF\u8FDE\u63A5\u7684\u7EC4\u4EF6\u8BF4\u660E>\u5185\u660E\u786E\u5217\u51FA\u7684ui\u7EC4\u4EF6\u7684**\u53EF\u8FDE\u63A5\u7684\u8F93\u5165\u7AEF\u53E3**\uFF0C\u7981\u6B62\u731C\u6D4B\u3001\u634F\u9020\u4E0D\u5B58\u5728\u7684\u8F93\u5165\u7AEF\u53E3\n instanceId: string // \u5B9E\u4F8Bid\uFF0C\u7531\u4E8Eui\u7EC4\u4EF6\u7684\u8F93\u5165\u7AEF\u53E3\u53EF\u80FD\u88AB\u591A\u6B21\u8FDE\u63A5\uFF0C\u6240\u4EE5\u9700\u8981\u4E00\u4E2A\u552F\u4E00\u7684instanceId\u6765\u505A\u533A\u5206\uFF0C\u5728\u6574\u4E2Aactions\u4E2D\uFF0CinstanceId\u53EA\u80FD\u88AB\u8FDE\u63A5\u4E00\u6B21\n }\n ```\n - \u521B\u5EFAjs\u3001js-autorun\u8282\u70B9\uFF0C\u53EF\u521B\u5EFA\u8282\u70B9\u53D6\u81EA<\u7EC4\u4EF6\u4F7F\u7528\u6587\u6863>\u4E2D\u58F0\u660E\u7684js\u6216js-autorun\u7EC4\u4EF6\uFF0C\u5982\u679C\u6CA1\u6709\u58F0\u660E\uFF0C\u7981\u6B62\u7F16\u9020\u3001\u521B\u9020\u3002\n ```typescript\n type Params = {\n type: \"calculate\" // \u7C7B\u578B\uFF0C\u7528\u4E8E\u533A\u5206\u8282\u70B9\u7C7B\u578B\uFF0C\u9ED8\u8BA4calculate\n title: string // \u8282\u70B9\u6807\u9898\uFF0C\u8981\u6C42\u9AD8\u5EA6\u8BED\u4E49\u5316\uFF0C\u80FD\u8BA9\u7528\u6237\u4E00\u773C\u660E\u767D\u8FD9\u4E2A\u8282\u70B9\u7684\u4F5C\u7528\n ns: string // \u5728 <\u7EC4\u4EF6\u4F7F\u7528\u6587\u6863>\u4E2D\u58F0\u660E\u7684js\u6216js-autorun\u7EC4\u4EF6namespace\n comId:string //\u65B0\u6DFB\u52A0\u7684\u7EC4\u4EF6id\uFF0C\u7981\u6B62\u91CD\u590D\u4F7F\u7528\u5DF2\u5B58\u5728\u7684\u7EC4\u4EF6id\n configs: Configs // \u6DFB\u52A0\u7EC4\u4EF6\u53EF\u4EE5\u914D\u7F6E\u7684\u4FE1\u606F,\n // \u8F93\u5165\u7AEF\u53E3\u5217\u8868\n inputs: {\n id: string; // \u8F93\u5165\u7AEF\u53E3id\n title: string; // \u8F93\u5165\u7AEF\u53E3\u7684\u8BED\u4E49\u5316\u6807\u9898\n }[]\n // \u8F93\u51FA\u7AEF\u53E3\u5217\u8868\uFF0C\u5F53\u6709\u4E0B\u4E00\u4E2A\u8282\u70B9\u65F6\u5FC5\u987B\u8981\u58F0\u660E\n outputs?: {\n id: string; // \u8F93\u51FA\u7AEF\u53E3id\n title: string; // \u8F93\u51FA\u7AEF\u53E3\u7684\u8BED\u4E49\u5316\u6807\u9898\n }[]\n }\n\n // js\u3001js-autorun\u7EC4\u4EF6\u7684\u914D\u7F6E\u5C5E\u6027\n type Configs = {\n path:string,//\u5728<\u5F53\u524D\u7EC4\u4EF6\u53EF\u914D\u7F6E\u7684\u5185\u5BB9/>\u4E2D\u5BF9\u5E94\u7684\u914D\u7F6E\u9879path\n value: any//\u9700\u8981\u914D\u7F6E\u7684value\n }[]\n ```\n - \u9875\u9762\u8DF3\u8F6C\uFF0C\u5524\u8D77\u5BF9\u8BDD\u6846\uFF0C\u5982\u679C<\u53EF\u8DF3\u8F6C\u9875\u9762>\u4E2D\u6CA1\u6709\u5BF9\u5E94\u9875\u9762\uFF0C\u7981\u6B62\u521B\u5EFA\u9875\u9762\u8DF3\u8F6C\u8282\u70B9\u3002\u9875\u9762\u8DF3\u8F6C\u53EA\u5141\u8BB8\u5728\u7EC4\u4EF6\u7684\u4E8B\u4EF6\u5185\uFF0C\u7981\u6B62\u5728\u4F5C\u7528\u57DF\u63D2\u69FD\u7684\u5185\u90E8\u6D41\u7A0B\u4F7F\u7528\u3002\n ```typescript\n type Params = {\n type: \"scenes\" // \u7C7B\u578B\uFF0C\u7528\u4E8E\u533A\u5206\u8282\u70B9\u7C7B\u578B\uFF0C\u9ED8\u8BA4scenes\n comId: string //\u65B0\u6DFB\u52A0\u7684\u7EC4\u4EF6id\uFF0C\u7981\u6B62\u91CD\u590D\u4F7F\u7528\u5DF2\u5B58\u5728\u7684\u7EC4\u4EF6id\n sceneId: string // \u5BF9\u5E94<\u53EF\u8DF3\u8F6C\u9875\u9762>\u7684\u9875\u9762id\n // \u8F93\u5165\u7AEF\u53E3\u5217\u8868\uFF0C\u5BF9\u5E94<\u53EF\u8DF3\u8F6C\u9875\u9762>\u7684\u8F93\u5165\u7AEF\u53E3\u5217\u8868\n inputs: {\n id: string;\n title: string;\n }[]\n // \u8F93\u51FA\u7AEF\u53E3\u5217\u8868\uFF0C\u5BF9\u5E94<\u53EF\u8DF3\u8F6C\u9875\u9762>\u7684\u8F93\u51FA\u7AEF\u53E3\u5217\u8868\n outputs: {\n id: string;\n title: string;\n }[]\n }\n ```\n - \u521B\u5EFA\u53D8\u91CF\u8282\u70B9\uFF0C\u53EF\u521B\u5EFA\u8282\u70B9\u53D6\u81EA<\u53EF\u8FDE\u63A5\u7684\u7EC4\u4EF6\u8BF4\u660E>\u4E2D\u540C\u4F5C\u7528\u57DF\u4E0B\u7684\u53D8\u91CF\uFF0C\u4EE5\u53CA\u5728action\u8FC7\u7A0B\u4E2D\u521B\u5EFA\u7684\u53D8\u91CF\uFF0C\u5982\u679C\u6CA1\u6709\u5BF9\u5E94\u53D8\u91CF\u5FC5\u987B\u5148\u901A\u8FC7<defineVar>\u521B\u5EFA\u53D8\u91CF\n ```typescript\n type Params = {\n type: \"var\" // \u7C7B\u578B\uFF0C\u7528\u4E8E\u533A\u5206\u8282\u70B9\u7C7B\u578B\uFF0C\u9ED8\u8BA4var\n varId: string // \u5BF9\u5E94\u53D8\u91CF\u7EC4\u4EF6id\uFF0C\u4EC5\u5141\u8BB8\u4F7F\u7528<\u53EF\u8FDE\u63A5\u7684\u7EC4\u4EF6\u8BF4\u660E>\u4E2D\u540C\u4F5C\u7528\u57DF\u4E0B\u7684\u53D8\u91CF\uFF0C\u4EE5\u53CA\u5728action\u8FC7\u7A0B\u4E2D\u521B\u5EFA\u7684\u53D8\u91CF\n inputId: string // \u53D8\u91CF\u8F93\u5165\u7AEF\u53E3id\n instanceId: string // \u5B9E\u4F8Bid\uFF0C\u7531\u4E8E\u53D8\u91CF\u7EC4\u4EF6\u7684\u8F93\u5165\u7AEF\u53E3\u53EF\u80FD\u88AB\u591A\u6B21\u8FDE\u63A5\uFF0C\u6240\u4EE5\u9700\u8981\u4E00\u4E2A\u552F\u4E00\u7684instanceId\u6765\u505A\u533A\u5206\uFF0C\u5728\u6574\u4E2Aactions\u4E2D\uFF0CinstanceId\u53EA\u80FD\u88AB\u8FDE\u63A5\u4E00\u6B21\n }\n\n \u4F8B\u5982\uFF0C\u7528\u6237\u8981\u6C42ui\u7EC4\u4EF6a\u7684outputa1\u4E8B\u4EF6\u89E6\u53D1\u65F6\u8C03\u7528js\u3001js-autorun\u7EC4\u4EF6b\u7684\u8F93\u5165\u7AEF\u53E3inputb1\uFF0Cb\u6267\u884C\u7ED3\u675F\u540E\u628A\u7ED3\u679C\u4F20\u7ED9ui\u7EC4\u4EF6c\u7684inputc1\uFF0C\u53EF\u4EE5\u8FD4\u56DE\u4EE5\u4E0Baction\uFF1A\n ").concat(fileFormat({
130
+ content: "[\"createEvent\",{\"comId\":\"a\",\"outputId\":\"outputa1\"}]\n[\"createCom\",{\"type\":\"calculate\",\"title\":\"b\u7EC4\u4EF6\u6807\u9898\",\"ns\":\"b\u7EC4\u4EF6namespace\",\"comId\":\"b\",\"inputs\":[{\"id\":\"inputb1\",\"title\":\"\u8BED\u4E49\u5316\u6807\u9898\"}],\"outputs\":[{\"id\":\"outputb1\",\"title\":\"\u8BED\u4E49\u5316\u6807\u9898\"}],\"configs\":[{\"path\":\"xx/xx/xx\",\"value\":\"xxx\"}]}]\n[\"connectTo\",{type:\"com\",\"comId\":\"a\",\"outputId\":\"outputa1\"},{\"type\":\"com\",\"comId\":\"b\",\"inputId\":\"inputb1\"}]\n[\"createCom\",{\"type\":\"uiCom\",\"comId\":\"c\",\"inputId\":\"inputc1\",\"instanceId\": \"instanceIdc1\"}]\n[\"connectTo\",{\"type\":\"com\",\"comId\":\"b\",\"outputId\":\"\"outputb1\"},{\"type\":\"com\",\"inputId\":\"inputc1\",\"instanceId\":\"instanceIdc1\"}]",
131
+ fileName: '连接js组件.json'
132
+ }), "\n\n \u6CE8\u610F\uFF1A\n - \u7EDD\u5BF9\u9650\u5236\uFF1A\u4E8B\u4EF6\u6D41\u7A0B\u5185\u53EA\u80FD\u53EA\u80FD\u4F7F\u7528<\u7EC4\u4EF6\u4F7F\u7528\u6587\u6863>\u4E2D\u58F0\u660E\u7684js\u6216js-autorun\u7EC4\u4EF6\uFF0C\u4EE5\u53CA<\u53EF\u8FDE\u63A5\u7684\u7EC4\u4EF6\u8BF4\u660E>\u5185\u660E\u786E\u5217\u51FA\u7684\u7EC4\u4EF6\u4EE5\u53CAaction\u8FC7\u7A0B\u4E2D\u521B\u5EFA\u7684\u53D8\u91CF\u3002\n - \u5373\u4F7F\u9700\u6C42\u4E2D\u63D0\u5230\"\u6587\u672C\u6846\"\u3001\"\u4E0B\u62C9\u6846\"\u7B49UI\u5143\u7D20\uFF0C\u5982\u679C\u4E0D\u5728<\u53EF\u8FDE\u63A5\u7684\u7EC4\u4EF6\u8BF4\u660E>\u4E2D\uFF0C\u7EDD\u5BF9\u4E0D\u80FD\u521B\u5EFA\u3002\u5982\u679C<\u53EF\u8FDE\u63A5\u7684\u7EC4\u4EF6\u8BF4\u660E>\u4E2D\u53EA\u6709\"\u6309\u94AE\"\u548C\"\u8D26\u53F7\"\u7EC4\u4EF6\uFF0C\u5C31\u4E0D\u80FD\u521B\u5EFA\"\u5BC6\u7801\"\u7EC4\u4EF6\uFF08\u9664\u975E\u5B83\u5728<\u53EF\u8FDE\u63A5\u7684\u7EC4\u4EF6\u8BF4\u660E>\u4E2D\uFF09\n - \u7981\u6B62\u57FA\u4E8E\u7EC4\u4EF6\u529F\u80FD\u76F8\u4F3C\u6027\u8FDB\u884C\u63A8\u6D4B\u6027\u521B\u5EFA\n - \u7981\u6B62\u521B\u5EFA\u6CA1\u6709\u610F\u4E49\u7684\u8282\u70B9\uFF0C\u6240\u6709\u521B\u5EFA\u7684\u8282\u70B9\u90FD\u5FC5\u987B\u88AB\u8FDE\u63A5\uFF0C\u5426\u5219\u89C6\u4E3A\u6CA1\u6709\u610F\u4E49\u7684\u8282\u70B9\n - \u6240\u6709\u521B\u5EFA\u7684\u8282\u70B9\u90FD\u5FC5\u987B\u88AB<connectTo>\u8FDB\u884C\u8FDE\u63A5\n - \u521B\u5EFA\u8282\u70B9\u65F6comId\u548CinstanceId\u9700\u8981\u4E25\u683C\u4FDD\u8BC1\u5168\u5C40\u552F\u4E00\u6027\uFF0C\u7981\u6B62\u91CD\u590D\u521B\u5EFA\n </createCom>\n\n <updateCom>\n \u66F4\u65B0\u5DF2\u5B58\u5728\u7684\u8BA1\u7B97\u7EC4\u4EF6\u8282\u70B9\u914D\u7F6E\uFF0C\u4F7F\u7528<\u7EC4\u4EF6\u53EF\u914D\u7F6E\u7684\u5185\u5BB9/>\u7684\u914D\u7F6E\u9879\uFF0C\u5BF9\u7EC4\u4EF6\u7684\u5C5E\u6027\u8FDB\u884C\u914D\u7F6E\uFF1B\n \u5982\u679C\u914D\u7F6E\u9879\u7684type\u5728 <\u5E38\u89C1editType\u7684\u4F7F\u7528 /> \u4E2D\u6709\u8BF4\u660E\uFF0C\u52A1\u5FC5\u9075\u5B88\u5176\u4E2D\u7684\u8BF4\u660E\u53CA\u6CE8\u610F\u4E8B\u9879\uFF1B\n \u8BE5action\u5728\u7ED3\u6784\u4E0A\u4E25\u683C\u9075\u5FAA\u4EE5\u4E0B\u683C\u5F0F\uFF1A[\"updateCom\",params]\n - \"updateCom\" \u5F53\u524Daction\u7C7B\u578B\uFF0C\u662F\u4E00\u4E2A\u9ED8\u8BA4\u503C\n - params \u66F4\u65B0\u8282\u70B9\u7684\u53C2\u6570\uFF0C\u5404\u8282\u70B9\u53C2\u6570\u683C\u5F0F\u4EE5Typescript\u7684\u5F62\u5F0F\u8BF4\u660E\u5982\u4E0B\uFF1A\n ```typescript\n type Params = {\n comId: string; //\u5F53\u524D\u9700\u8981\u66F4\u65B0\u914D\u7F6E\u7684\u7EC4\u4EF6id\n configs: {\n path: string; //\u5728<\u5F53\u524D\u7EC4\u4EF6\u53EF\u914D\u7F6E\u7684\u5185\u5BB9/>\u4E2D\u5BF9\u5E94\u7684\u914D\u7F6E\u9879path\n value: any; //\u9700\u8981\u914D\u7F6E\u7684value\n }[]\n }\n ```\n \n \u4F8B\u5982\uFF0C\u7528\u6237\u8981\u6C42\u628A\u8BA1\u7B97\u7EC4\u4EF6b\u7684\u914D\u7F6E\u9879A\u8BBE\u7F6E\u4E3A\"hello\"\u628A\u914D\u7F6E\u9879B\u8BBE\u7F6E\u4E3A\"world\"\uFF0C\u53EF\u4EE5\u8FD4\u56DE\u4EE5\u4E0Baction\uFF1A\n ").concat(fileFormat({
133
+ content: "[\"updateCom\",{\"comId\":\"b\",\"configs\":[{\"path\":\"A\",\"value\":\"hello\"},{\"path\":\"B\",\"value\":\"world\"}]}]",
134
+ fileName: '配置计算组件.json'
135
+ }), "\n\n \u6CE8\u610F\uFF1A\n - \u5982\u679C\u662F\u65B0\u7684\u8BA1\u7B97\u7EC4\u4EF6\uFF0C\u5E94\u8BE5\u5728<createCom>\u7684configs\u4E2D\u76F4\u63A5\u8FDB\u884C\u914D\u7F6E\uFF0C\u51CF\u5C11\u4E0D\u5FC5\u8981\u7684action\u8C03\u7528\n - \u4E00\u6B21\u6027\u8C03\u7528<updateCom>\u8FDB\u884C\u6279\u91CF\u66F4\u65B0\uFF0C\u907F\u514D\u591A\u6B21\u8C03\u7528\n </updateCom>\n\n <defineVar>\n \u5728\u4F5C\u7528\u57DF\u63D2\u69FD\u5185\u521B\u5EFA\u53D8\u91CF\n \u8BE5action\u5728\u7ED3\u6784\u4E0A\u4E25\u683C\u9075\u5FAA\u4EE5\u4E0B\u683C\u5F0F\uFF1A[\"defineVar\",params]\n - \"defineVar\" \u5F53\u524Daction\u7C7B\u578B\uFF0C\u662F\u4E00\u4E2A\u9ED8\u8BA4\u503C\n - params \u521B\u5EFA\u8282\u70B9\u7684\u53C2\u6570\uFF0C\u5404\u8282\u70B9\u53C2\u6570\u683C\u5F0F\u4EE5Typescript\u7684\u5F62\u5F0F\u8BF4\u660E\u5982\u4E0B\uFF1A\n ```typescript\n // \u4F5C\u7528\u57DF\u63D2\u69FD\u4E0B\u53EF\u521B\u5EFA\u53D8\u91CF\uFF0C\u9700\u8981\u63D0\u4F9BcomId\u3001slotId\u7528\u4E8E\u533A\u5206\u6DFB\u52A0\u76EE\u6807\uFF0C\u8868\u8FBE\u5F80\u54EA\u4E2A\u4F5C\u7528\u57DF\u63D2\u69FD\u4E0B\u6DFB\u52A0\n type Params = {\n comId: string ; // \u5F53\u524D\u4F5C\u7528\u57DF\u63D2\u69FD\u7684\u7236\u7EC4\u4EF6id\n slotId: string; // \u5F53\u524D\u4F5C\u7528\u57DF\u63D2\u69FD\u7684slotId\n id: string; // \u65B0\u6DFB\u52A0\u7684\u7EC4\u4EF6id\uFF0C\u7981\u6B62\u91CD\u590D\u4F7F\u7528\u5DF2\u5B58\u5728\u7684\u7EC4\u4EF6id\n title: string; // \u53D8\u91CF\u6807\u9898\uFF0C\u8981\u6C42\u9AD8\u5EA6\u8BED\u4E49\u5316\uFF0C\u80FD\u8BA9\u7528\u6237\u4E00\u773C\u660E\u767D\u8FD9\u4E2A\u53D8\u91CF\u7684\u4F5C\u7528\n schema: Schema; // \u6807\u51C6JSON Schema\u534F\u8BAE\uFF0C\u7528\u4E8E\u5B9A\u4E49\u7C7B\u578B\n initValue: any; // \u53D8\u91CF\u7684\u9ED8\u8BA4\u503C\uFF0C\u7C7B\u578B\u9700\u8981\u4E0EJSON Schema\u5B9A\u4E49\u4FDD\u6301\u4E00\u81F4\n }\n ```\n \u4F8B\u5982\uFF0C\u7528\u6237\u8981\u6C42ui\u7EC4\u4EF6a\u7684outputa1\u4E8B\u4EF6\u89E6\u53D1\u65F6\u5B58\u50A8\u8F93\u51FA\u5185\u5BB9\uFF0C\u53EF\u4EE5\u8FD4\u56DE\u4EE5\u4E0Baction\uFF1A\n ").concat(fileFormat({
136
+ content: "[\"createEvent\",{\"comId\":\"a\",\"outputId\":\"outputa1\"}]\n[\"defineVar\",{\"comId\":\"\u76EE\u6807\u4F5C\u7528\u57DF\u63D2\u69FD\u7236\u7EC4\u4EF6id\",\"slotId\":\"\u76EE\u6807\u4F5C\u7528\u57DF\u63D2\u69FDid\",\"id\":\"\u65B0\u6DFB\u52A0\u7684\u53D8\u91CFid\",\"title\":\"\u8BED\u4E49\u5316\u7684\u53D8\u91CF\u6807\u9898\",\"schema\":\"\u6807\u51C6JSON Schema\u534F\u8BAE\",\"initValue\":\"\u53D8\u91CF\u521D\u59CB\u503C\"}]\n[\"createCom\",{\"type\":\"var\",\"varId\":\"\u65B0\u6DFB\u52A0\u7684\u53D8\u91CFid\",\"inputId\":\"set\",\"\"instanceId\": \"instanceIdvar1\"\"}]\n[\"connectTo\",{\"type\":\"com\",\"comId\":\"a\",\"outputId\":\"outputa1\"},{\"type\":\"com\",\"inputId\":\"set\",\"instanceId\":\"instanceIdvar1\"}]",
137
+ fileName: '连接js组件.json'
138
+ }), "\n\n \u6CE8\u610F\uFF1A\n - **\u5F3A\u5236\u68C0\u67E5**\uFF1A\u5728\u6267\u884CdefineVar\u524D\u5FC5\u987B\u68C0\u67E5<\u53EF\u8FDE\u63A5\u7684\u7EC4\u4EF6\u8BF4\u660E>\u5185\u7684\u53D8\u91CF\u5B9A\u4E49\n - **\u8BED\u4E49\u5339\u914D\u539F\u5219**\uFF1A\u82E5\u5B58\u5728\u8BED\u4E49\u76F8\u540C\u6216\u9AD8\u5EA6\u76F8\u4F3C\u7684\u53D8\u91CF\uFF0C\u5FC5\u987B\u590D\u7528\u5DF2\u6709\u53D8\u91CF\uFF0C\u4E0D\u5F97\u65B0\u5EFA\n - **\u5355\u4E00\u8BED\u4E49\u6765\u6E90\u539F\u5219**\uFF1A\u540C\u4E00\u542B\u4E49\u7684\u6570\u636E\u5E94\u5728\u7CFB\u7EDF\u4E2D\u7531\u552F\u4E00\u7684\u53D8\u91CF\u5B9A\u4E49\uFF0C\u5E76\u5728\u6240\u6709\u9700\u8981\u7684\u5730\u65B9\u590D\u7528\n - **\u4F5C\u7528\u57DF\u5408\u89C4**\uFF1A\u57FA\u4E8E<\u53EF\u8FDE\u63A5\u7684\u7EC4\u4EF6\u8BF4\u660E>\uFF0C\u786E\u4FDD\u53D8\u91CF\u5728\u6B63\u786E\u7684\u4F5C\u7528\u57DF\u63D2\u69FD\u5185\u521B\u5EFA\u548C\u4F7F\u7528\n </defineVar>\n\n <connectTo>\n \u4ECE\u4E00\u4E2A\u8282\u70B9\u7684\u8F93\u51FA\u7AEF\u53E3\u8FDE\u63A5\u5230\u4E0B\u4E00\u4E2A\u8282\u70B9\u7684\u8F93\u5165\u7AEF\u53E3\uFF0C\u8FDE\u63A5\u7684\u524D\u63D0\u662F\u5DF2\u7ECF\u901A\u8FC7<createCom>\u521B\u5EFA\u597D\u4E86\u53EF\u8FDE\u63A5\u7684\u8282\u70B9\n \u8BE5action\u5728\u7ED3\u6784\u4E0A\u4E25\u683C\u9075\u5FAA\u4EE5\u4E0B\u683C\u5F0F\uFF1A[\"connectTo\",output,input]\n - \"connectTo\" \u5F53\u524Daction\u7C7B\u578B\uFF0C\u662F\u4E00\u4E2A\u9ED8\u8BA4\u503C\n - output \u5F53\u524D\u8FDE\u63A5\u7684\u8F93\u51FA\u7AEF\u53E3\uFF0C\u683C\u5F0F\u4EE5Typescript\u7684\u5F62\u5F0F\u8BF4\u660E\u5982\u4E0B\uFF1A\n - \u5F53\u8F93\u51FA\u7AEF\u53E3\u662F\u5F53\u524D\u6D41\u7A0B\u7684\u8F93\u51FA\n ```typescript\n type Output = {\n type: \"com\";\n comId: string; \u5F53\u524D\u9700\u8981\u521B\u5EFA\u4E8B\u4EF6\u6D41\u7A0B\u7684\u7EC4\u4EF6id\n outputId: string; \u5F53\u524D\u9700\u8981\u521B\u5EFA\u4E8B\u4EF6\u6D41\u7A0B\u5BF9\u5E94\u7684outputId\n }\n ```\n - \u5F53\u8F93\u51FA\u7AEF\u53E3\u662Fui\u7EC4\u4EF6\u8282\u70B9\n ```typescript\n // \u5982\u679C\u8F93\u51FA\u7AEF\u53E3\u662Fui\u7EC4\u4EF6\u8282\u70B9\n type Output = {\n type: \"com\";\n outputId: string; // \u5F53\u524D\u8282\u70B9\u7684\u8F93\u51FAoutputId\n instanceId: string; // \u5B9E\u4F8Bid\uFF0C\u7531\u4E8Eui\u7EC4\u4EF6\u7684\u8F93\u5165\u7AEF\u53E3\u53EF\u80FD\u88AB\u591A\u6B21\u8FDE\u63A5\uFF0C\u6240\u4EE5\u9700\u8981\u4E00\u4E2A\u552F\u4E00\u7684instanceId\u6765\u505A\u533A\u5206\uFF0C\u5728\u6574\u4E2Aactions\u4E2D\uFF0CinstanceId\u53EA\u80FD\u88AB\u8FDE\u63A5\u4E00\u6B21\n }\n ```\n - \u5F53\u8F93\u51FA\u7AEF\u53E3\u662Fjs\u3001js-autorun\u7EC4\u4EF6\u8282\u70B9\n ```typescript\n type Output = {\n type: \"com\";\n comId: string; //\u65B0\u6DFB\u52A0\u7684\u7EC4\u4EF6id\uFF0C\u7981\u6B62\u91CD\u590D\u4F7F\u7528\u5DF2\u5B58\u5728\u7684\u7EC4\u4EF6id\n outputId: string; // \u5F53\u524D\u8282\u70B9\u7684\u8F93\u51FAoutputId\n }\n ```\n - \u5F53\u8F93\u51FA\u7AEF\u53E3\u662F\u53D8\u91CF\u7EC4\u4EF6\u8282\u70B9\n ```typescript\n type Output = {\n type: \"com\";\n outputId: string; // \u5F53\u524D\u8282\u70B9\u7684\u8F93\u51FAoutputId\n instanceId: string; // \u5B9E\u4F8Bid\uFF0C\u7531\u4E8E\u53D8\u91CF\u7EC4\u4EF6\u7684\u8F93\u5165\u7AEF\u53E3\u53EF\u80FD\u88AB\u591A\u6B21\u8FDE\u63A5\uFF0C\u6240\u4EE5\u9700\u8981\u4E00\u4E2A\u552F\u4E00\u7684instanceId\u6765\u505A\u533A\u5206\uFF0C\u5728\u6574\u4E2Aactions\u4E2D\uFF0CinstanceId\u53EA\u80FD\u88AB\u8FDE\u63A5\u4E00\u6B21\n }\n ```\n - \u5F53\u8F93\u51FA\u7AEF\u53E3\u662F\u4F5C\u7528\u57DF\u63D2\u69FD\u7684\u8F93\u5165\n ```typescript\n type Output = {\n type: \"frame\";\n comId: string; // \u4F5C\u7528\u57DF\u63D2\u69FD\u7684\u7236\u7EC4\u4EF6id\n frameId: string; // \u4F5C\u7528\u57DF\u63D2\u69FD\u7684id\n outputId: string; // \u5BF9\u5E94\u4F5C\u7528\u57DF\u63D2\u69FD\u7684\u8F93\u5165id\n }\n ```\n - input \u8FDE\u63A5\u7684\u53C2\u6570\uFF0C\u683C\u5F0F\u4EE5Typescript\u7684\u5F62\u5F0F\u8BF4\u660E\u5982\u4E0B\uFF1A\n - \u5F53\u8F93\u5165\u7AEF\u53E3\u662Fui\u7EC4\u4EF6\u8282\u70B9\n ```typescript\n type Input = {\n /** \u7C7B\u578B\uFF0C\u76EE\u524D\u9ED8\u8BA4\u4E3A\"com\" */\n type: \"com\";\n /** \u8F93\u5165id */\n inputId: string;\n /** \u5B9E\u4F8Bid\uFF0C\u7531\u4E8Eui\u7EC4\u4EF6\u7684\u8F93\u5165\u7AEF\u53E3\u53EF\u80FD\u88AB\u591A\u6B21\u8FDE\u63A5\uFF0C\u6240\u4EE5\u9700\u8981\u4E00\u4E2A\u552F\u4E00\u7684instanceId\u6765\u505A\u533A\u5206\uFF0C\u5728\u6574\u4E2Aactions\u4E2D\uFF0CinstanceId\u53EA\u80FD\u88AB\u8FDE\u63A5\u4E00\u6B21 */\n instanceId: string;\n }\n ```\n - \u5F53\u8F93\u5165\u7AEF\u53E3\u662Fjs\u3001js-autorun\u7EC4\u4EF6\u8282\u70B9\n ```typescript\n type Input = {\n /** \u7C7B\u578B\uFF0C\u76EE\u524D\u9ED8\u8BA4\u4E3A\"com\" */\n type: \"com\";\n /** \u7EC4\u4EF6id */ */\n comId: string; // \u65B0\u6DFB\u52A0\u7684\u7EC4\u4EF6id\uFF0C\u5BF9\u5E94<createCom>\u521B\u5EFA\u65F6\u7684comId\uFF1B\n /** \u8F93\u5165id */\n inputId: string;\n }\n ```\n - \u5F53\u8F93\u5165\u7AEF\u53E3\u662F\u53D8\u91CF\u7EC4\u4EF6\u8282\u70B9\n ```typescript\n type Input = {\n /** \u7C7B\u578B\uFF0C\u76EE\u524D\u9ED8\u8BA4\u4E3A\"com\" */\n type: \"com\";\n /** \u8F93\u5165id */\n inputId: string;\n /** \u5B9E\u4F8Bid\uFF0C\u7531\u4E8E\u53D8\u91CF\u7EC4\u4EF6\u7684\u8F93\u5165\u7AEF\u53E3\u53EF\u80FD\u88AB\u591A\u6B21\u8FDE\u63A5\uFF0C\u6240\u4EE5\u9700\u8981\u4E00\u4E2A\u552F\u4E00\u7684instanceId\u6765\u505A\u533A\u5206\uFF0C\u5728\u6574\u4E2Aactions\u4E2D\uFF0CinstanceId\u53EA\u80FD\u88AB\u8FDE\u63A5\u4E00\u6B21 */\n instanceId: string;\n }\n ```\n\n \u4F8B\u5982\uFF0C\u5F53\u7528\u6237\u8981\u6C42\u7EC4\u4EF6a\u7684outputa1\u4E8B\u4EF6\u89E6\u53D1\u65F6\u8C03\u7528\u7EC4\u4EF6b\u7684\u8F93\u5165\u7AEF\u53E3inputb1\uFF0C\u53EF\u4EE5\u8FD4\u56DE\u4EE5\u4E0Baction\uFF1A\n ").concat(fileFormat({
139
+ content: "[\"createEvent\",{\"comId\":\"a\",\"outputId\":\"outputa1\"}]\n[\"createCom\",{\"type\":\"uiCom\",\"comId\":\"b\",\"inputId\":\"inputb1\",\"instanceId\":\"instanceIdb1\"}]\n[\"connectTo\",{\"type\":\"com\",\"comId\":\"a\",\"outputId\":\"outputa1\"},{\"type\":\"com\",\"inputId\":\"inputb1\",\"instanceId\":\"instanceIdb1\"}]",
140
+ fileName: '连接到组件的输入端口.json'
141
+ }), "\n\n <examples>\n <example>\n <user_query>\u70B9\u51FB\u540E\u9690\u85CFxx</user_query>\n <assistant_response>\n \u597D\u7684\uFF0C\u6211\u5C06\u4E3A\u5F53\u524D\u7EC4\u4EF6\u7684\u70B9\u51FB\u4E8B\u4EF6\u642D\u5EFA\u4E8B\u4EF6\u6D41\u7A0B\uFF0C\u70B9\u51FB\u540E\u9690\u85CFxx\n \n ").concat(fileFormat({
142
+ content: "[\"createEvent\",{\"comId\":\"comId\",\"outputId\":\"outputId\"}]\n[\"createCom\",{\"type\":\"uiCom\",\"comId\":\"targetComId\",\"inputId\":\"targetComInputId\",\"instanceId\":\"instanceIdb1\"}]\n[\"connectTo\",{\"type\":\"com\",\"comId\":comId,\"outputId\":outputId},{\"type\":\"com\",\"inputId\":\"targetComInputId\",\"instanceId\": \"instanceIdb1\"}]",
143
+ fileName: '当前组件的点击事件流程搭建.json'
144
+ }), "\n </assistant_response>\n </example>\n <example>\n <user_query>\u70B9\u51FB\u540E\u7ED9a\u8D4B\u503C\uFF0C\u8D4B\u503C\u5B8C\u6210\u540E\u9690\u85CFb</user_query>\n <assistant_response>\n \u597D\u7684\uFF0C\u6211\u5C06\u4E3A\u5F53\u524D\u7EC4\u4EF6\u7684\u70B9\u51FB\u4E8B\u4EF6\u642D\u5EFA\u4E8B\u4EF6\u6D41\u7A0B\uFF0C\u70B9\u51FB\u540E\u7ED9a\u8D4B\u503C\uFF0C\u8D4B\u503C\u5B8C\u6210\u540E\u9690\u85CFb\n \n ").concat(fileFormat({
145
+ content: "[\"createEvent\",{\"comId\":\"comId\",\"outputId\":\"outputId\"}]\n[\"createCom\",{\"type\":\"uiCom\",\"comId\":\"a\",\"inputId\":\"input\",\"instanceId\":\"instanceIda1\"}]\n[\"connectTo\",{\"type\":\"com\",\"comId\":comId,\"outputId\":outputId},{\"type\":\"com\",\"inputId\":\"input\",\"instanceId\":\"instanceIda1\"}]\n[\"createCom\",{\"type\":\"uiCom\",\"comId\":\"b\",\"inputId\":\"input\",\"instanceId\":\"instanceIdb1\"}]\n[\"connectTo\",{\"type\":\"com\",\"instanceId\":\"instanceIda1\",\"outputId\":\"inputDone\"},{\"type\":\"com\",\"inputId\":\"input\",\"instanceId\":\"instanceIdb1\"}]",
146
+ fileName: '当前组件的点击事件流程搭建.json'
147
+ }), "\n </assistant_response>\n </example>\n <example>\n <user_query>\u70B9\u51FB\u540E\u83B7\u53D6\u4E24\u6B21a\u7684\u503C</user_query>\n <assistant_response>\n \u597D\u7684\uFF0C\u6211\u5C06\u4E3A\u5F53\u524D\u7EC4\u4EF6\u7684\u70B9\u51FB\u4E8B\u4EF6\u642D\u5EFA\u4E8B\u4EF6\u6D41\u7A0B\uFF0C\u70B9\u51FB\u540E\u83B7\u53D6a\u7684\u503C\u4E24\u6B21\n\n \u7531\u4E8E\u6BCF\u4E2A\u8F93\u5165\u7AEF\u53E3\u53EA\u80FD\u88AB\u4E00\u4E2A\u8F93\u51FA\u7AEF\u53E3\u8FDE\u63A5\uFF0C\u6240\u4EE5\u5373\u4F7F\u662F\u76F8\u540C\u7684\u8F93\u5165\u7AEF\u53E3\uFF0C\u9700\u8981\u521B\u5EFA\u4E24\u4E2A\u4E0D\u540C\u7684\u8282\u70B9\n\n ").concat(fileFormat({
148
+ content: "[\"createEvent\",{\"comId\":\"comId\",\"outputId\":\"outputId\"}]\n[\"createCom\",{\"type\":\"uiCom\",\"comId\":\"a\",\"inputId\":\"input\",\"instanceId\":\"instanceIda1\"}]\n[\"connectTo\",{\"type\":\"com\",\"comId\":comId,\"outputId\":outputId},{\"type\":\"com\",\"inputId\":\"input\",\"instanceId\":\"instanceIda1\"}]\n[\"createCom\",{\"type\":\"uiCom\",\"comId\":\"a\",\"inputId\":\"input\",\"instanceId\":\"instanceIda2\"}]\n[\"connectTo\",{\"type\":\"com\",\"comId\":comId,\"outputId\":outputId},{\"type\":\"com\",\"inputId\":\"input\",\"instanceId\":\"instanceIda2\"}]",
149
+ fileName: 'ui节点的相同输入端口连接.json'
150
+ }), "\n </assistant_response>\n </example>\n <example>\n <user_query>\u70B9\u51FB\u540E\u8BBE\u7F6Ea</user_query>\n <assistant_response>\n \u7531\u4E8E\u7EC4\u4EF6a\u4E0E\u5F53\u524D\u7EC4\u4EF6\u7684\u4F5C\u7528\u57DF\u9694\u79BB\u9650\u5236\uFF0C\u65E0\u6CD5\u8BBE\u7F6E\n ").concat(fileFormat({
151
+ content: "[\"createEvent\",{\"comId\":\"comId\",\"outputId\":\"outputId\"}]",
152
+ fileName: '组件间的作用域隔离.json'
153
+ }), "\n </assistant_response>\n </example>\n </examples>\n\n \u6CE8\u610F\uFF1A\n - \u6BCF\u4E2A\u8F93\u51FA\u7AEF\u53E3\u53EF\u4EE5\u8FDE\u63A5\u591A\u4E2A\u8F93\u5165\u7AEF\u53E3\uFF0C\u4F46\u6BCF\u4E2A\u8F93\u5165\u7AEF\u53E3\u53EA\u80FD\u88AB\u4E00\u4E2A\u8F93\u51FA\u7AEF\u53E3\u8FDE\u63A5\u3002\n - \u5728<connectTo>\u8FDE\u63A5\u8282\u70B9\u524D\u5FC5\u987B\u5148\u901A\u8FC7<createCom>\u521B\u5EFA\u597D\u8282\u70B9\u3002\n - \u8282\u70B9\u7684\u540C\u4E00\u4E2A\u8F93\u5165\u7AEF\u53E3\u53EA\u80FD\u88AB\u8FDE\u63A5\u4E00\u6B21\uFF0C\u5982\u679C\u9700\u8981\u591A\u6B21\u8FDE\u63A5\u76F8\u540C\u7684\u8F93\u5165\u7AEF\u53E3\uFF0C\u901A\u8FC7<createCom>\u521B\u5EFA\u5BF9\u5E94\u6570\u91CF\u7684\u8282\u70B9\u3002\n - \u5404\u53C2\u6570\u5B57\u6BB5\u90FD\u6709\u91CA\u4E49\uFF0C\u7981\u6B62\u968F\u610F\u7F16\u9020\u3001\u9057\u6F0F\u3002\n </connectTo>\n\n <doConfigForBind>\n \u53D8\u91CF\u7ED1\u5B9A\uFF0C\u5F53ui\u7EC4\u4EF6\u7684<\u53EF\u4EE5\u4F7F\u7528\u7684\u914D\u7F6E\u9879>\u4E2D\u7684\u914D\u7F6E\u9879\u76EE\u6709\u58F0\u660E**bindWith**\u5C5E\u6027\uFF0C\u90A3\u4E48\u8FD9\u4E2A\u914D\u7F6E\u9879\u652F\u6301\u53D8\u91CF\u7ED1\u5B9A\u529F\u80FD\uFF0C\u7ED1\u5B9A\u540E\u80FD\u5B9E\u73B0\u6570\u636E\u540C\u6B65\uFF0C\u9A71\u52A8ui\u66F4\u65B0\u7B49\u80FD\u529B\u3002\n bindWith\u7684\u683C\u5F0F\u5982\u4E0B\uFF1A\n ```typescript\n type BindWith = {\n with: string; // \"data.xx.x\"\uFF0C\u8868\u793A\u7ED1\u5B9A\u7684\u6570\u636E\u6E90\u5C5E\u6027\u8DEF\u5F84\u4EE5\"data\"\u5F00\u5934\uFF0C\u4F8B\u5982\uFF1A\u8981\u7ED1\u5B9A\u5230\"abc\"\u5B57\u6BB5\uFF0C\u5219with\u4E3A\"data.abc\"\n schema: Schema; // \u6807\u51C6JSON Schema\u534F\u8BAE\uFF0C\u8868\u793A\u7ED1\u5B9A\u7684\u6570\u636E\u7C7B\u578B\n }\n ```\n \u652F\u6301\u4E09\u79CD\u7ED1\u5B9A\u5F62\u5F0F\uFF1A\n 1. \u6570\u636E\u6D41\u5165\uFF1A\u5F53\u53D8\u91CF\u503C\u53D1\u751F\u53D8\u66F4\uFF0Cui\u4F1A\u81EA\u52A8\u540C\u6B65\n 2. \u6570\u636E\u6D41\u51FA\uFF1A\u5F53ui\u7EC4\u4EF6\u5BF9\u5E94\u7ED1\u5B9A\u7684\u503C\u53D1\u751F\u53D8\u5316\uFF0C\u53D8\u91CF\u503C\u4F1A\u81EA\u52A8\u540C\u6B65\n 3. \u53CC\u5411\u7ED1\u5B9A\uFF1A\u300C\u6570\u636E\u6D41\u5165\u300D\u548C\u300C\u6570\u636E\u6D41\u51FA\u300D\u540C\u65F6\u751F\u6548\n\n \u8BE5action\u5728\u7ED3\u6784\u4E0A\u4E25\u683C\u9075\u5FAA\u4EE5\u4E0B\u683C\u5F0F\uFF1A[\"doConfigForBind\",params]\n - \"doConfigForBind\" \u5F53\u524Daction\u7C7B\u578B\uFF0C\u662F\u4E00\u4E2A\u9ED8\u8BA4\u503C\n - params \u521B\u5EFA\u8282\u70B9\u7684\u53C2\u6570\uFF0C\u5404\u8282\u70B9\u53C2\u6570\u683C\u5F0F\u4EE5Typescript\u7684\u5F62\u5F0F\u8BF4\u660E\u5982\u4E0B\uFF1A\n ```typescript\n type Params = {\n comId: string; // \u5F53\u524D\u9700\u8981\u7ED1\u5B9A\u53D8\u91CF\u7684\u7EC4\u4EF6id\n target: string; // \u6307\u7684\u662F\u7EC4\u4EF6\u7684\u6574\u4F53\u6216\u67D0\u4E2A\u90E8\u5206\uFF0C\u4EE5\u9009\u62E9\u5668\u7684\u5F62\u5F0F\u8868\u793A\uFF0C\u5BF9\u5E94<\u53EF\u4EE5\u4F7F\u7528\u7684\u914D\u7F6E\u9879>\u7684\u9009\u4E2D\u533A\u57DF\n path: string; // \u5728<\u5F53\u524D\u7EC4\u4EF6\u53EF\u914D\u7F6E\u7684\u5185\u5BB9/>\u4E2D\u5BF9\u5E94\u7684\u914D\u7F6E\u9879path\n varId: string; // \u5BF9\u5E94\u9700\u8981\u7ED1\u5B9A\u7684\u53D8\u91CF\u7EC4\u4EF6id\uFF0C\u4EC5\u5141\u8BB8\u4F7F\u7528<\u53EF\u8FDE\u63A5\u7684\u7EC4\u4EF6\u8BF4\u660E>\u4E2D\u540C\u4F5C\u7528\u57DF\u4E0B\u7684\u53D8\u91CF\uFF0C\u4EE5\u53CA\u5728action\u8FC7\u7A0B\u4E2D\u521B\u5EFA\u7684\u53D8\u91CF\n xpath: string; // \u5BF9\u5E94\u7ED1\u5B9A\u53D8\u91CF\u7684\u5C5E\u6027\u8DEF\u5F84\uFF0C\u5982\u679C\u5C31\u662F\u7ED1\u5B9A\u53D8\u91CF\u7684\u503C\uFF0C\u8FD4\u56DE\u7A7A\u5B57\u7B26\u4E32\u5373\u53EF\uFF0C\u4F8B\u5982\uFF1A\u7ED1\u5B9A\u53D8\u91CFa\uFF0C\u5219\u503C\u4E3A\"\"\u3002\u7ED1\u5B9A\u53D8\u91CFa\u7684b\u5C5E\u6027\uFF0C\u5219\u503C\u4E3A\"/b\"\u3002\u7ED1\u5B9A\u53D8\u91CFa\u7684b\u5C5E\u6027\u7684c\u5C5E\u6027\uFF0C\u5219\u503C\u4E3A\"/b/c\"\u3002\u4EE5/\u5F00\u5934\uFF0C\u4EE5/\u5206\u5272\u3002\n }\n ```\n\n \u4F8B\u5982\uFF0C\u5F53\u7528\u6237\u8981\u6C42\u7EC4\u4EF6a\u7684\u5185\u5BB9\u4E0E\u53D8\u91CFb\u8FDB\u884C\u7ED1\u5B9A\uFF1A\n ").concat(fileFormat({
154
+ content: "[\"doConfigForBind\",{\"comId\":\"a\u7EC4\u4EF6id\",\"target\":\"\u9009\u4E2D\u533A\u57DF\",\"path\":\"\u914D\u7F6E\u9879/\u5185\u5BB9\",\"varId\":\"\u53D8\u91CFbid\",\"xpath\":\"\u5C5E\u6027\u8DEF\u5F84\"}]",
155
+ fileName: '将a的内容与变量b绑定.json'
156
+ }), "\n\n <examples>\n <example>\n <user_query>\u70B9\u51FB\u540E\u5C06\u5C55\u793A\u5404\u5B57\u6BB5\u5185\u5BB9\u5230\u7EC4\u4EF6a\u3001b\u3001c</user_query>\n <assistant_response>\n \u597D\u7684\uFF0C\u6211\u5C06\u4E3A\u5F53\u524D\u7EC4\u4EF6\u7684\u70B9\u51FB\u4E8B\u4EF6\u642D\u5EFA\u4E8B\u4EF6\u6D41\u7A0B\u3002\u7531\u4E8E\u9700\u8981\u540C\u65F6\u8BBE\u7F6E\u591A\u4E2A\u7EC4\u4EF6\u7684\u503C\uFF0C\u6211\u4F1A\u68C0\u67E5\u8FD9\u4E9B\u7EC4\u4EF6\u662F\u5426\u652F\u6301\u53D8\u91CF\u7ED1\u5B9A\u3002\n\n \u7531\u4E8Ea\u3001b\u3001c\u4E09\u4E2A\u7EC4\u4EF6\u652F\u6301\u53D8\u91CF\u7ED1\u5B9A\uFF0C\u6211\u5C06\u4F7F\u7528\u53D8\u91CF\u7ED1\u5B9A\u65B9\u6848\uFF1A\n\n ").concat(fileFormat({
157
+ content: "[\"createEvent\",{\"comId\":\"comId\",\"outputId\":\"outputId\"}]\n[\"defineVar\",{\"comId\":\"root\",\"slotId\":\"_root_\",\"id\":\"object\",\"title\":\"\u5BF9\u8C61\u503C\",\"schema\":{\"type\":\"object\",\"properties\":{\"x\":{\"type\":\"string\"},\"y\":{\"type\":\"string\"},\"z\":{\"type\":\"string\"}}},\"initValue\":{}}]\n[\"doConfigForBind\",{\"comId\":\"a\",\"target\":\"target\",\"path\":\"path\",\"varId\":\"object\",\"xpath\":\"/x\"}]\n[\"doConfigForBind\",{\"comId\":\"b\",\"target\":\"target\",\"path\":\"path\",\"varId\":\"object\",\"xpath\":\"/y\"}]\n[\"doConfigForBind\",{\"comId\":\"c\",\"target\":\"target\",\"path\":\"path\",\"varId\":\"object\",\"xpath\":\"/z\"}]\n[\"createCom\",{\"type\":\"var\",\"varId\":\"object\",\"inputId\":\"set\",\"instanceId\":\"instanceIdVar1\"}]\n[\"connectTo\",{\"type\":\"com\",\"comId\":\"comId\",\"outputId\":\"outputId\"},{\"type\":\"com\",\"inputId\":\"set\",\"instanceId\":\"instanceIdVar1\"}]",
158
+ fileName: '变量绑定方案.json'
159
+ }), "\n\n \u8FD9\u6837\u901A\u8FC7\u4E00\u6B21\u53D8\u91CF\u4FEE\u6539\u5C31\u80FD\u540C\u65F6\u9A71\u52A8\u4E09\u4E2AUI\u7EC4\u4EF6\u66F4\u65B0\uFF0C\u8FD9\u662F\u63A8\u8350\u7684\u9762\u5411\u53D8\u91CF\u7684\u642D\u5EFA\u65B9\u5F0F\u3002\n </assistant_response>\n </example>\n </examples>\n\n \u6CE8\u610F\uFF1A\n - \u5982\u679C\u6CA1\u6709\u5BF9\u5E94\u7684\u7ED1\u5B9A\u914D\u7F6E\u9879\uFF0C\u4E0D\u5141\u8BB8\u634F\u9020\u3001\u731C\u6D4B\uFF1B\n - \u4F5C\u7528\u57DF\u5185\u7981\u6B62\u4F7F\u7528\u8DE8\u57DF\u53D8\u91CF\u7ED1\u5B9A\uFF0C\u4F8B\u5982\u5217\u8868\u9879\u4F5C\u7528\u57DF\u5185\u7EC4\u4EF6\u7981\u6B62\u7ED1\u5B9A\u9875\u9762\u7684\u53D8\u91CF\uFF0C\u8981\u521B\u5EFA\u5217\u8868\u9879\u4F5C\u7528\u57DF\u4E0B\u7684\u7684\u53D8\u91CF\u5373\u5217\u8868\u9879\u53D8\u91CF\uFF0C\u5E76\u4E14\u9700\u8981\u5728\u5217\u8868\u9879\u63D2\u69FD\u4E2D\u7ED9\u5217\u8868\u9879\u53D8\u91CF\u8D4B\u503C\n </doConfigForBind>\n\n <examples>\n <example>\n <user_query>\u70B9\u51FB\u540E\u83B7\u53D6a\u5185\u5BB9\u548Cb\u5185\u5BB9</user_query>\n <assistant_response>\n \u597D\u7684\uFF0C\u6211\u5C06\u4E3A\u5F53\u524D\u7EC4\u4EF6\u7684\u70B9\u51FB\u4E8B\u4EF6\u642D\u5EFA\u4E8B\u4EF6\u6D41\u7A0B\uFF0C\u70B9\u51FB\u540E\u83B7\u53D6a\u5185\u5BB9\u548Cb\u5185\u5BB9\n ").concat(fileFormat({
160
+ content: "[\"createEvent\",{\"comId\":\"comId\",\"outputId\":\"outputId\"}]\n[\"createCom\",{\"type\":\"uiCom\",\"comId\":\"a\",\"inputId\":\"getValue\",\"instanceId\":\"instanceIda1\"}]\n[\"connectTo\",{\"type\":\"com\",\"comId\":comId,\"outputId\":outputId},{\"type\":\"com\",\"inputId\":\"getValue\",\"instanceId\":\"instanceIda1\"}]\n[\"createCom\",{\"type\":\"uiCom\",\"comId\":\"b\",\"inputId\":\"getValue\",\"instanceId\":\"instanceIdb1\"}]\n[\"connectTo\",{\"type\":\"com\",\"comId\":comId,\"outputId\":outputId},{\"type\":\"com\",\"inputId\":\"getValue\",\"instanceId\":\"instanceIdb1\"}]",
161
+ fileName: '当前组件的点击事件流程搭建.json'
162
+ }), "\n </assistant_response>\n </example>\n <example>\n <user_query>\u70B9\u51FB\u540E\u8BBE\u7F6Ea</user_query>\n <assistant_response>\n \u7531\u4E8E\u7EC4\u4EF6a\u4E0E\u5F53\u524D\u7EC4\u4EF6\u7684\u4F5C\u7528\u57DF\u9694\u79BB\u9650\u5236\uFF0C\u65E0\u6CD5\u8BBE\u7F6E\n ").concat(fileFormat({
163
+ content: "[\"createEvent\",{\"comId\":\"comId\",\"outputId\":\"outputId\"}]",
164
+ fileName: '组件间的作用域隔离.json'
165
+ }), "\n </assistant_response>\n </example>\n <example>\n <user_query>\u70B9\u51FB\u540E\u540C\u65F6\u8BBE\u7F6Ea\u3001b\u3001c\u4E09\u4E2A\u7EC4\u4EF6\u7684\u503C</user_query>\n <assistant_response>\n \u597D\u7684\uFF0C\u6211\u5C06\u4E3A\u5F53\u524D\u7EC4\u4EF6\u7684\u70B9\u51FB\u4E8B\u4EF6\u642D\u5EFA\u4E8B\u4EF6\u6D41\u7A0B\u3002\u7531\u4E8E\u9700\u8981\u540C\u65F6\u8BBE\u7F6E\u591A\u4E2A\u7EC4\u4EF6\u7684\u503C\uFF0C\u6211\u4F1A\u68C0\u67E5\u8FD9\u4E9B\u7EC4\u4EF6\u662F\u5426\u652F\u6301\u53D8\u91CF\u7ED1\u5B9A\u3002\n\n \u7531\u4E8Ea\u3001b\u3001c\u4E09\u4E2A\u7EC4\u4EF6\u652F\u6301\u53D8\u91CF\u7ED1\u5B9A\uFF0C\u6211\u5C06\u4F7F\u7528\u53D8\u91CF\u7ED1\u5B9A\u65B9\u6848\uFF1A\n\n ").concat(fileFormat({
166
+ content: "[\"createEvent\",{\"comId\":\"comId\",\"outputId\":\"outputId\"}]\n[\"defineVar\",{\"comId\":\"root\",\"slotId\":\"_root_\",\"id\":\"sharedValue\",\"title\":\"\u5171\u4EAB\u503C\",\"schema\":{\"type\":\"string\"},\"initValue\":\"\"}]\n[\"createCom\",{\"type\":\"var\",\"varId\":\"sharedValue\",\"inputId\":\"set\",\"instanceId\":\"instanceIdVar1\"}]\n[\"connectTo\",{\"type\":\"com\",\"comId\":\"comId\",\"outputId\":\"outputId\"},{\"type\":\"com\",\"inputId\":\"set\",\"instanceId\":\"instanceIdVar1\"}]\n[\"doConfigForBind\",{\"comId\":\"a\",\"target\":\"target\",\"path\":\"path\",\"varId\":\"sharedValue\",\"xpath\":\"\"}]\n[\"doConfigForBind\",{\"comId\":\"b\",\"target\":\"target\",\"path\":\"path\",\"varId\":\"sharedValue\",\"xpath\":\"\"}]\n[\"doConfigForBind\",{\"comId\":\"c\",\"target\":\"target\",\"path\":\"path\",\"varId\":\"sharedValue\",\"xpath\":\"\"}]",
167
+ fileName: '变量绑定方案.json'
168
+ }), "\n\n \u8FD9\u6837\u901A\u8FC7\u4E00\u6B21\u53D8\u91CF\u4FEE\u6539\u5C31\u80FD\u540C\u65F6\u9A71\u52A8\u4E09\u4E2AUI\u7EC4\u4EF6\u66F4\u65B0\uFF0C\u8FD9\u662F\u63A8\u8350\u7684\u9762\u5411\u53D8\u91CF\u7684\u642D\u5EFA\u65B9\u5F0F\u3002\n </assistant_response>\n </example>\n <example>\n <user_query>\u70B9\u51FB\u540E\u5237\u65B0\u5217\u8868</user_query>\n <assistant_response>\n \u597D\u7684\uFF0C\u6211\u5C06\u4E3A\u5F53\u524D\u7EC4\u4EF6\u7684\u70B9\u51FB\u4E8B\u4EF6\u642D\u5EFA\u4E8B\u4EF6\u6D41\u7A0B\uFF0C\u70B9\u51FB\u540E\u5237\u65B0\u5217\u8868\uFF0C\u540C\u65F6\u66F4\u65B0\u6BCF\u4E00\u9879\u5185\u7684\u5B50\u7EC4\u4EF6\n\n \u6D41\u7A0B\u8BF4\u660E\uFF1A\u5217\u8868\u7EC4\u4EF6\u66F4\u65B0\u6570\u636E\uFF0C\u901A\u8FC7\u4F5C\u7528\u57DF\u63D2\u69FD\u6D41\u7A0B\u5237\u65B0\u63D2\u69FD\u5185\u5B50\u7EC4\u4EF6\u6570\u636E\n\n ").concat(fileFormat({
169
+ content: "[\"createEvent\",{\"comId\":\"comId\",\"outputId\":\"outputId\"}]\n[\"createCom\",{\"type\":\"uiCom\",\"comId\":\"list\",\"inputId\":\"setValue\",\"instanceId\":\"instanceIda1\"}]\n[\"connectTo\",{\"type\":\"com\",\"comId\":comId,\"outputId\":outputId},{\"type\":\"com\",\"inputId\":\"setValue\",\"instanceId\":\"instanceIda1\"}]\n[\"createEvent\",{\"comId\":\"list\",\"slotId\":\"slotId\"}]\n[\"createCom\",{\"type\":\"uiCom\",\"comId\":\"listchild\",\"inputId\":\"setValue\",\"instanceId\":\"instanceIdListchild1\"}]\n[\"connectTo\",{\"type\":\"frame\",\"comId\":\"list\",\"frameId\":\"frameId\",\"outputId\":\"outputId\"},{\"type\":\"com\",\"inputId\":\"setValue\",\"instanceId\":\"instanceIdListchild1\"}]\n",
170
+ fileName: '点击后刷新列表同时将每一项数据传入子组件.json'
171
+ }), "\n </assistant_response>\n </example>\n </examples>\n \n \u6CE8\u610F\uFF1Aactions\u6587\u4EF6\u6BCF\u4E00\u884C\u9075\u5FAA JSON \u8BED\u6CD5\uFF0C\u7981\u6B62\u975E\u6CD5\u4EE3\u7801\uFF0C\u7981\u6B62\u51FA\u73B0\u5185\u5BB9\u7701\u7565\u63D0\u793A\u3001\u5355\u884C\u6CE8\u91CA\u3001\u7701\u7565\u5B57\u7B26\u3002\n - actions\u8FD4\u56DE\u7684\u5185\u5BB9\u683C\u5F0F\u9700\u8981\u4E00\u884C\u4E00\u4E2Aaction\uFF0C\u6BCF\u4E00\u4E2Aaction\u9700\u8981\u538B\u7F29\uFF0C\u4E0D\u8981\u5305\u542B\u7F29\u8FDB\u7B49\u591A\u4F59\u7684\u7A7A\u767D\u5B57\u7B26\uFF1B\n - \u7981\u6B62\u5305\u542B\u4EFB\u4F55\u6CE8\u91CA\uFF08\u5305\u62EC\u5355\u884C//\u548C\u591A\u884C/* */\uFF09\n - \u7981\u6B62\u51FA\u73B0\u7701\u7565\u53F7(...)\u6216\u4EFB\u4F55\u5360\u4F4D\u7B26\n - \u786E\u4FDD\u6240\u6709\u4EE3\u7801\u90FD\u662F\u5B8C\u6574\u53EF\u6267\u884C\u7684\uFF0C\u4E0D\u5305\u542B\u793A\u4F8B\u7247\u6BB5\n - \u7981\u6B62\u4F7F\u7528{}\u3001{{}}\u8FD9\u7C7B\u53D8\u91CF\u7ED1\u5B9A\u8BED\u6CD5\uFF0C\u5E76\u4E0D\u652F\u6301\u6B64\u8BED\u6CD5\n - \u7981\u6B62\u4F7F\u7528\u975E\u6CD5\u5B57\u7B26\u6216\u7279\u6B8A\u7B26\u53F7\n - \u6240\u6709\u5185\u5BB9\u5747\u4E3A\u9759\u6001\u6570\u636E\uFF0C\u7981\u6B62\u89E3\u6784\uFF0C\u7981\u6B62\u4F7F\u7528\u53D8\u91CF\n \n \u6CE8\u610F\uFF1A\n - \u8FD4\u56DEactions\u6587\u4EF6\u5185\u5BB9\u65F6\uFF0C\u52A1\u5FC5\u6CE8\u610F\u64CD\u4F5C\u6B65\u9AA4\u7684\u5148\u540E\u987A\u5E8F\uFF1B\n - \u6709\u4E9B\u64CD\u4F5C\u9700\u8981\u5728\u524D\u9762\u64CD\u4F5C\u5B8C\u6210\u540E\u624D\u80FD\u8FDB\u884C\uFF1B\n - \u642D\u5EFA\u6D41\u7A0B\u524D\uFF0C\u5FC5\u987B\u5148\u521B\u5EFA\u6D41\u7A0B\n - \u7981\u6B62\u91CD\u590D\u4F7F\u7528\u76F8\u540C\u7684action\uFF1B\n - \u5F53\u4E00\u4E2A\u8F93\u51FA\u8FDE\u63A5\u591A\u4E2A\u8F93\u5165\u65F6\uFF0C\u786E\u4FDD\u751F\u6210\u7684 actions \u6309\u987A\u5E8F\u5217\u51FA\u6240\u6709\u8FDE\u63A5\uFF0C\u5E76\u5224\u65AD\u5B83\u4EEC\u662F\u5E76\u884C\uFF08\u540C\u65F6\u89E6\u53D1\uFF0C\u65E0\u4F9D\u8D56\uFF09\u8FD8\u662F\u4E32\u884C\uFF08\u6709\u5148\u540E\u4F9D\u8D56\uFF0C\u9700\u63A5\u529B\u6267\u884C\uFF09\uFF0C\u907F\u514D\u5C06\u72EC\u7ACB\u64CD\u4F5C\u9519\u8BEF\u5730\u7F16\u6392\u4E3A\u4E32\u884C\u3002\n - \u6240\u6709\u521B\u5EFA\u7684\u8282\u70B9\u90FD\u5FC5\u987B\u88AB\u8FDE\u63A5\uFF0C\u7981\u6B62\u521B\u5EFA\u6CA1\u6709\u610F\u4E49\u7684\u8282\u70B9\u3002\n - \u4F18\u5148\u4F7F\u7528\u53D8\u91CF\u7ED1\u5B9A\u65B9\u6848\uFF0C\u8FD9\u662F\u63A8\u8350\u7684\u9762\u5411\u53D8\u91CF\u7684\u642D\u5EFA\u65B9\u5F0F\uFF0C\u901A\u8FC7<\u53D8\u91CF\u7ED1\u5B9A\u65B9\u6848>\u8FDB\u884C\u5224\u65AD\u662F\u5426\u9700\u8981\u4F7F\u7528\u3002\n - \u5E26\u6709\u4F5C\u7528\u57DF\u63D2\u69FD\u7684\u7EC4\u4EF6\uFF0C\u7EC4\u4EF6\u6570\u636E\u7684\u66F4\u65B0\u4E0D\u4EE3\u8868\u7EC4\u4EF6\u89C6\u89C9\u7684\u66F4\u65B0\uFF0C\u9700\u8981\u8003\u8651\u521B\u5EFA\u4F5C\u7528\u57DF\u63D2\u69FD\u7684\u4E8B\u4EF6\u6D41\u7A0B\u3002\n - \u53EA\u6709\u7EC4\u4EF6\u4E8B\u4EF6\u624D\u5141\u8BB8\u8FDE\u63A5\u9875\u9762\u8DF3\u8F6C\u8282\u70B9\u3002\n </\u5173\u4E8Eactions>\n\n \u6CE8\u610F\uFF1A\n - \u5F53\u9700\u6C42\u65E0\u6CD5\u901A\u8FC7actions\u5B9E\u73B0\u65F6\uFF0C\u5B9E\u4E8B\u6C42\u662F\u544A\u8BC9\u7528\u6237\u5373\u53EF\uFF0C\u7981\u6B62\u4F7F\u7528\u5176\u4ED6\u65B9\u5F0F\u5B9E\u73B0\u3002\n - \u4F5C\u7528\u57DF\u5185\u7981\u6B62\u4F7F\u7528\u8DE8\u57DF\u53D8\u91CF\u7ED1\u5B9A\uFF0C\u4F8B\u5982\u5217\u8868\u9879\u4F5C\u7528\u57DF\u5185\u7EC4\u4EF6\u7981\u6B62\u7ED1\u5B9A\u9875\u9762\u7684\u53D8\u91CF\uFF0C\u8981\u521B\u5EFA\u5217\u8868\u9879\u4F5C\u7528\u57DF\u4E0B\u7684\u7684\u53D8\u91CF\u5373\u5217\u8868\u9879\u53D8\u91CF\uFF0C\u5E76\u4E14\u9700\u8981\u5728\u5217\u8868\u9879\u63D2\u69FD\u4E2D\u7ED9\u5217\u8868\u9879\u53D8\u91CF\u8D4B\u503C\n</\u5982\u4F55\u901A\u8FC7action\u642D\u5EFA\u4E8B\u4EF6\u6D41\u7A0B>\n");
172
+ },
173
+ stream: params => {
174
+ var {
175
+ files,
176
+ status,
177
+ replaceContent
178
+ } = params;
179
+ var actions = [];
180
+ var actionsFile = getFiles(files, {
181
+ extName: 'json'
182
+ });
183
+ if (actionsFile) {
184
+ var _actionsFile$content;
185
+ actions = streamActionsParser((_actionsFile$content = actionsFile.content) !== null && _actionsFile$content !== void 0 ? _actionsFile$content : "", actionsFile === null || actionsFile === void 0 ? void 0 : actionsFile.isComplete);
186
+ }
187
+ if (actions.length > 0 || status === "complete") {
188
+ try {
189
+ var updateDiagramActions = [];
190
+ var _loop = function _loop() {
191
+ var action = actions.shift();
192
+ if (action.type === "defineVar") {
193
+ // 变量的创建没有顺序,遍历到直接调用即可
194
+ var {
195
+ comId
196
+ } = action,
197
+ other = _objectWithoutProperties(action, _excluded);
198
+ if (updatePageStatus === Status.IDLE) {
199
+ // 默认先执行一次start
200
+ promiseStack.add(() => props.updatePage([], "start"));
201
+ updatePageStatus = Status.RUNNING;
202
+ }
203
+ promiseStack.add(() => props.updatePage([other], "ing"));
204
+ return 0; // continue
205
+ } else if (action.type === "doConfig") {
206
+ if (updatePageStatus === Status.IDLE) {
207
+ // 默认先执行一次start
208
+ promiseStack.add(() => props.updatePage([], "start"));
209
+ updatePageStatus = Status.RUNNING;
210
+ }
211
+ promiseStack.add(() => props.updatePage([action], "ing"));
212
+ return 0; // continue
213
+ } else if (action.type === "updateCom") {
214
+ var {
215
+ comId: _comId,
216
+ params: _params
217
+ } = action;
218
+ if (updateComStatus === Status.IDLE) {
219
+ // 默认先执行一次start
220
+ promiseStack.add(() => props.updateCom(_comId, [], "start"));
221
+ updateComStatus = Status.RUNNING;
222
+ }
223
+ promiseStack.add(() => props.updateCom(_comId, _params.configs, "ing"));
224
+ return 0; // continue
225
+ }
226
+ if (!["connectTo", "createCom", "defineVar"].includes(action.type)) {
227
+ if (updateDiagramActions.length) {
228
+ if (!currentDiagram) {
229
+ console.error("currentDiagram is null", params);
230
+ } else {
231
+ var _diagram = _objectSpread2({}, currentDiagram);
232
+ var _actions2 = [...updateDiagramActions];
233
+ promiseStack.add(() => props.updateDiagram(_diagram.id, _actions2, _diagram.status === Status.IDLE ? "start" : "ing"));
234
+ currentDiagram.status = Status.RUNNING;
235
+ updateDiagramActions = [];
236
+ }
237
+ }
238
+ if (action.type === "createEvent") {
239
+ var {
240
+ comId: _comId2,
241
+ slotId,
242
+ outputId
243
+ } = action;
244
+ if (!diagramIdMap["".concat(_comId2, "-").concat(slotId || outputId)]) {
245
+ currentDiagram = _objectSpread2({
246
+ status: Status.IDLE
247
+ }, slotId ? props.getDiagramInfo(_comId2, slotId) : props.createDiagram("comEvent", {
248
+ comId: _comId2,
249
+ outputId
250
+ }));
251
+ diagramIdMap["".concat(_comId2, "-").concat(slotId || outputId)] = _objectSpread2({}, currentDiagram);
252
+ }
253
+ }
254
+ } else {
255
+ var {
256
+ comId: _comId3
257
+ } = action,
258
+ other = _objectWithoutProperties(action, _excluded2);
259
+ updateDiagramActions.push(other);
260
+ }
261
+ },
262
+ _ret;
263
+ while (actions.length) {
264
+ _ret = _loop();
265
+ if (_ret === 0) continue;
266
+ }
267
+ if (updateDiagramActions.length) {
268
+ if (!currentDiagram) {
269
+ console.error("currentDiagram is null", params);
270
+ } else {
271
+ var diagram = _objectSpread2({}, currentDiagram);
272
+ var _actions = [...updateDiagramActions];
273
+ promiseStack.add(() => props.updateDiagram(diagram.id, _actions, diagram.status === Status.IDLE ? "start" : "ing"));
274
+ currentDiagram.status = Status.RUNNING;
275
+ updateDiagramActions = [];
276
+ }
277
+ }
278
+ if (updatePageStatus !== Status.IDLE && status === "complete") {
279
+ // 如果执行过,最终要调一次complete结束
280
+ props.updatePage([], "complete");
281
+ }
282
+ if (updateComStatus !== Status.IDLE && status === "complete") {
283
+ // 如果执行过,最终要调一次complete结束
284
+ props.updateCom([], "complete");
285
+ }
286
+ } catch (error) {
287
+ console.error(error);
288
+ }
289
+ }
290
+ if (status === "complete") {
291
+ promiseStack.add(() => {
292
+ Object.entries(diagramIdMap).forEach(_ref6 => {
293
+ var [_, {
294
+ id
295
+ }] = _ref6;
296
+ props.updateDiagram(id, [], "complete");
297
+ });
298
+ });
299
+ }
300
+ var file = files[0];
301
+ if (file) {
302
+ return replaceContent.replace(file.fileName, "");
303
+ }
304
+ return replaceContent;
305
+ },
306
+ execute: params => {
307
+ var {
308
+ files,
309
+ content,
310
+ replaceContent
311
+ } = params;
312
+ var actionsFile = getFiles(files, {
313
+ extName: 'json'
314
+ });
315
+ if (!actionsFile) {
316
+ return {
317
+ llmContent: content,
318
+ displayContent: content
319
+ };
320
+ }
321
+ console.log("actionsFile", actionsFile);
322
+ return replaceContent.replace(actionsFile.fileName, "");
323
+ },
324
+ // aiRole: "architect",
325
+ aiRole: 'expert'
326
+ };
327
+ }
328
+ function createActionsParser() {
329
+ var processedLines = new Set();
330
+ return function parseActions(text, isEnd) {
331
+ var newActions = [];
332
+ var lines = text.split("\n").filter(line => line.trim() !== '');
333
+ var linesToProcess = lines.slice(0, -1);
334
+ var lastLine = lines[lines.length - 1];
335
+ var lastLineComplete = lines.length === 0 || text.endsWith("\n") || isEnd === true;
336
+ for (var line of linesToProcess) {
337
+ var trimmedLine = line.trim();
338
+ if (!trimmedLine || processedLines.has(trimmedLine)) continue;
339
+ try {
340
+ var parsedAction = formatAction(trimmedLine);
341
+ if (parsedAction.comId) {
342
+ newActions.push(parsedAction);
343
+ processedLines.add(trimmedLine);
344
+ }
345
+ } catch (_unused) {
346
+ processedLines.add(trimmedLine);
347
+ }
348
+ }
349
+ if (lastLine && lastLine.trim() && lastLineComplete && !processedLines.has(lastLine.trim())) {
350
+ var trimmedLastLine = lastLine.trim();
351
+ try {
352
+ var _parsedAction = formatAction(trimmedLastLine);
353
+ if (_parsedAction.comId) {
354
+ newActions.push(_parsedAction);
355
+ processedLines.add(trimmedLastLine);
356
+ }
357
+ } catch (_unused2) {
358
+ processedLines.add(trimmedLastLine);
359
+ }
360
+ }
361
+ return newActions;
362
+ };
363
+ }
364
+ var formatAction = _action => {
365
+ var action;
366
+ try {
367
+ action = JSON.parse(_action);
368
+ } catch (error) {
369
+ try {
370
+ var repairedAction = jsonrepair(_action);
371
+ action = JSON.parse(repairedAction);
372
+ } catch (error) {
373
+ console.error("repair action error", error);
374
+ }
375
+ }
376
+ if (!Array.isArray(action)) {
377
+ return action;
378
+ }
379
+ if (action[0] === "createCom") {
380
+ var _action$ = action[1],
381
+ {
382
+ ns
383
+ } = _action$,
384
+ params = _objectWithoutProperties(_action$, _excluded3);
385
+ if (ns) {
386
+ params.namespace = ComponentsManager.getFullNamespace(ns);
387
+ }
388
+ return {
389
+ // 变量是varId,其余都是comId
390
+ comId: action[1].comId || action[1].varId,
391
+ type: action[0],
392
+ params
393
+ };
394
+ } else if (action[0] === "createEvent") {
395
+ return _objectSpread2({
396
+ type: action[0]
397
+ }, action[1]);
398
+ } else if (action[0] === "defineVar") {
399
+ var params = action[1];
400
+ if (params.slotId === "_root_") {
401
+ // 人工干预,如果是_root_,不需要comId
402
+ Reflect.deleteProperty(params, "comId");
403
+ }
404
+ return {
405
+ comId: action[1].id,
406
+ type: action[0],
407
+ params
408
+ };
409
+ } else if (action[0] === "doConfigForBind") {
410
+ var {
411
+ comId,
412
+ target,
413
+ path,
414
+ varId,
415
+ xpath
416
+ } = action[1];
417
+ return {
418
+ type: "doConfig",
419
+ comId,
420
+ target,
421
+ params: {
422
+ path,
423
+ bindWith: {
424
+ type: "var",
425
+ varId,
426
+ xpath
427
+ }
428
+ }
429
+ };
430
+ } else if (action[0] === "connectTo") {
431
+ return {
432
+ comId: action[1].comId || action[1].instanceId,
433
+ type: action[0],
434
+ params: {
435
+ from: action[1],
436
+ to: action[2]
437
+ }
438
+ };
439
+ } else if (action[0] === "updateCom") {
440
+ var _params2 = action[1];
441
+ _params2.configs = _params2.configs.map(config => {
442
+ return {
443
+ comId: _params2.comId,
444
+ target: ":root",
445
+ type: "doConfig",
446
+ params: {
447
+ path: config.path,
448
+ value: config.value
449
+ }
450
+ };
451
+ });
452
+ return {
453
+ comId: _params2.comId,
454
+ type: action[0],
455
+ params: _params2
456
+ };
457
+ }
458
+ return {};
459
+ };
460
+ var indent = depth => {
461
+ return depth ? " ".repeat(depth) : "";
462
+ };
463
+ function scopeBasedComponentStructure(slot) {
464
+ var _slot$components;
465
+ var depth = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
466
+ var result = "";
467
+ var prefix = indent(depth);
468
+ var prefix2 = indent(depth + 1);
469
+ var prefix3 = indent(depth + 2);
470
+ var prefix4 = indent(depth + 3);
471
+ if (slot.scope) {
472
+ var {
473
+ id,
474
+ title,
475
+ vars,
476
+ inputs
477
+ } = slot;
478
+ var root = depth === 0 ? "组件id:root\n" : "";
479
+ result += "".concat(root).concat(prefix, "\u4F5C\u7528\u57DF\u63D2\u69FD\uFF08").concat(title, "\uFF09") + "\n".concat(prefix, "\u63D2\u69FDid\uFF1A").concat(id) + "\n".concat(prefix, "\u63D2\u69FD\u8F93\u5165\uFF1A").concat(inputs !== null && inputs !== void 0 && inputs.length ? inputs.reduce((pre, _ref7, index) => {
480
+ var {
481
+ id,
482
+ title,
483
+ schema
484
+ } = _ref7;
485
+ var desc = "";
486
+ // if (title === "当前项") {
487
+ // desc = `\n${prefix3}循环迭代中的当前数据项,可通过此变量访问项的属性值,数据类型为对象,对象不能直接连接ui组件的输入,需要通过逻辑组件分发`
488
+ // }
489
+ return pre + "\n".concat(prefix2).concat(index + 1, ". ").concat(title, "\uFF08").concat(id, "\uFF09").concat(desc);
490
+ }, "") : "无", "\n\n") + (vars !== null && vars !== void 0 && vars.length ? "\n".concat(prefix, "\u5F53\u524D\u53D8\u91CF\u5217\u8868\uFF1A").concat(vars.reduce((pre, _ref8, index) => {
491
+ var {
492
+ id,
493
+ title,
494
+ schema
495
+ } = _ref8;
496
+ return pre + "\n".concat(prefix).concat(index + 1, ". ").concat(title) + "\n".concat(prefix2, "\u53D8\u91CFid\uFF1A").concat(id);
497
+ // TODO:目前schema定义不全,只放出变量的会有干扰
498
+ // + `\n${prefix2}schema定义:${JSON.stringify(schema)}`
499
+ }, ""), "\n\n") : "") + "".concat(prefix, "\u5B50\u7EC4\u4EF6\uFF1A\n");
500
+ }
501
+ (_slot$components = slot.components) === null || _slot$components === void 0 || _slot$components.forEach(component => {
502
+ var {
503
+ id,
504
+ title,
505
+ inputs,
506
+ outputs,
507
+ slots
508
+ } = component;
509
+ result += "".concat(prefix, "- ").concat(title, "\n") + "".concat(prefix2, "\u7EC4\u4EF6id\uFF1A").concat(id, "\n") + "".concat(prefix2, "\u53EF\u8FDE\u63A5\u7684\u8F93\u5165\u7AEF\u53E3\uFF1A").concat(inputs !== null && inputs !== void 0 && inputs.length ? inputs.filter(_ref9 => {
510
+ var {
511
+ hostId
512
+ } = _ref9;
513
+ return !["_config_", "_setStyle"].includes(hostId);
514
+ }).reduce((pre, _ref0, index) => {
515
+ var {
516
+ hostId,
517
+ title,
518
+ rels,
519
+ description
520
+ } = _ref0;
521
+ return pre + "\n".concat(prefix2).concat(index + 1, ". ").concat(title, "\uFF08").concat(hostId, "\uFF09") + (description ? "\n".concat(prefix3, "\u63CF\u8FF0\uFF1A").concat(description) : "") + "\n".concat(prefix3, "\u5173\u8054\u8F93\u51FA\u7AEF\u53E3\uFF1A").concat(rels !== null && rels !== void 0 && rels.length ? rels.reduce((pre, _ref1, index) => {
522
+ var {
523
+ id,
524
+ title
525
+ } = _ref1;
526
+ return pre + "\n".concat(prefix4).concat(index + 1, ". ").concat(title, "\uFF08").concat(id, "\uFF09");
527
+ }, "") : "无");
528
+ }, "") : "无", "\n\n") + "".concat(prefix2, "\u53EF\u521B\u5EFA\u7684\u4E8B\u4EF6\uFF1A").concat(outputs !== null && outputs !== void 0 && outputs.length ? outputs.reduce((pre, _ref10, index) => {
529
+ var {
530
+ hostId,
531
+ title,
532
+ description
533
+ } = _ref10;
534
+ return pre + "\n".concat(prefix2).concat(index + 1, ". ").concat(title, "\uFF08").concat(hostId, "\uFF09") + (description ? "\n".concat(prefix2, "\u63CF\u8FF0\uFF1A").concat(description) : "");
535
+ }, "") : "无", "\n\n");
536
+ slots === null || slots === void 0 || slots.forEach(slot => {
537
+ result += scopeBasedComponentStructure(slot, slot.scope ? depth + 1 : depth);
538
+ });
539
+ });
540
+ return result;
541
+ }
542
+ function BuildProcess(params) {
543
+ return {
544
+ name: NAME,
545
+ params: params
546
+ };
547
+ }
548
+
549
+ export { BuildProcess, buildProcess as default };
550
+ //# sourceMappingURL=build-process.js.map