openxiangda-skill-kit 2.3.127 → 2.3.128

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openxiangda-skill-kit",
3
- "version": "2.3.127",
3
+ "version": "2.3.128",
4
4
  "description": "OpenXiangda 2.0 中文 AI 技能的校验、分发与安装。",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -165,15 +165,22 @@ Nest后端注入请求作用域的 `OpenXiangdaWorkflowService`,调用 `delega
165
165
 
166
166
  目录进入独立流程图地址,刷新及浏览器返回保留所查看流程/版本。共享组件按需加载 React Flow 与 ELK 正交布局:所有线段横平竖直、转角为直角;支持画布平移、滚轮缩放、适应全图、聚焦选中和缩略导航。分支标签可选中,详情保留完整条件、顺序和来源;窄屏采用同源节点列表,方向键/Home/End 定位节点。画布布局上限为 200 节点、1024 连线,不提供拖改、删除或连线编辑。
167
167
 
168
+ `WorkflowDiagram`可传入可选`variableChoices`,格式与`WorkflowDesigner`一致:以真实事实路径为键,值为`{ label, value }`选项数组。
169
+ 从当前生成模型目录取得选项,再按实际`subject.factProjection`映射,不在页面维护第二套业务字典。
170
+ 它只提供显示名称,不能新增变量、改写条件或授予权限;每个变量最多64个选项、字典最多128项,并按原事实类型校验。
171
+ 画布分支、提示和可访问列表使用同一中文说明,自定义分支名保留;未知值或类型不兼容时保留原始值,不猜测含义。
172
+ 宿主传给设计器的同一元数据也用于AI建议预览,但预览显示正确不证明模型连接或实际调用可用。
173
+ 只读图保留显式业务条件通向拒绝结果的分支,普通审批拒绝操作的专用终点仍由办理设置/历史说明。
174
+
168
175
  应用自定义管理页面可复用当前用户客户端和共享图组件:
169
176
 
170
177
  ```tsx
171
178
  import { useEffect, useState } from 'react';
172
- import { WorkflowDiagram } from 'openxiangda/react';
179
+ import { WorkflowDiagram, type WorkflowVariableChoices } from 'openxiangda/react';
173
180
  import { loadWorkflowDefinitionGraph, type WorkflowGraphReadResult } from 'openxiangda/core';
174
181
 
175
- export function ReadableWorkflow({ workflowCode, version }: {
176
- workflowCode: string; version: number;
182
+ export function ReadableWorkflow({ workflowCode, version, variableChoices }: {
183
+ workflowCode: string; version: number; variableChoices?: WorkflowVariableChoices;
177
184
  }) {
178
185
  const [result, setResult] = useState<WorkflowGraphReadResult>();
179
186
  const [selected, setSelected] = useState('');
@@ -188,7 +195,7 @@ export function ReadableWorkflow({ workflowCode, version }: {
188
195
  }, [workflowCode, version]);
189
196
  if (error) return <p role="alert">{error}</p>;
190
197
  if (!result) return <p>正在读取流程</p>;
191
- return <WorkflowDiagram graph={result.graph} selectedNodeId={selected} onSelectNode={setSelected} />;
198
+ return <WorkflowDiagram graph={result.graph} variableChoices={variableChoices} selectedNodeId={selected} onSelectNode={setSelected} />;
192
199
  }
193
200
  ```
194
201