weaver-e10-builder 1.6.5 → 1.6.6

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 (37) hide show
  1. package/dist/commands/actionflow.d.ts.map +1 -1
  2. package/dist/commands/actionflow.js +16 -1
  3. package/dist/commands/actionflow.js.map +1 -1
  4. package/dist/commands/menu-permission.d.ts +11 -0
  5. package/dist/commands/menu-permission.d.ts.map +1 -1
  6. package/dist/commands/menu-permission.js +113 -26
  7. package/dist/commands/menu-permission.js.map +1 -1
  8. package/dist/commands/menu.d.ts +16 -5
  9. package/dist/commands/menu.d.ts.map +1 -1
  10. package/dist/commands/menu.js +153 -42
  11. package/dist/commands/menu.js.map +1 -1
  12. package/dist/services/actionflow/context_discovery.d.ts +16 -0
  13. package/dist/services/actionflow/context_discovery.d.ts.map +1 -0
  14. package/dist/services/actionflow/context_discovery.js +73 -0
  15. package/dist/services/actionflow/context_discovery.js.map +1 -0
  16. package/dist/services/actionflow/context_preflight.d.ts +0 -9
  17. package/dist/services/actionflow/context_preflight.d.ts.map +1 -1
  18. package/dist/services/actionflow/context_preflight.js +0 -59
  19. package/dist/services/actionflow/context_preflight.js.map +1 -1
  20. package/dist/services/actionflow/execution_setting.d.ts +11 -0
  21. package/dist/services/actionflow/execution_setting.d.ts.map +1 -0
  22. package/dist/services/actionflow/execution_setting.js +205 -0
  23. package/dist/services/actionflow/execution_setting.js.map +1 -0
  24. package/dist/services/actionflow/preflight_service.d.ts.map +1 -1
  25. package/dist/services/actionflow/preflight_service.js +107 -7
  26. package/dist/services/actionflow/preflight_service.js.map +1 -1
  27. package/dist/services/menu-catalog.d.ts +19 -0
  28. package/dist/services/menu-catalog.d.ts.map +1 -1
  29. package/dist/services/menu-catalog.js +31 -1
  30. package/dist/services/menu-catalog.js.map +1 -1
  31. package/package.json +1 -1
  32. package/skill-docs/SKILL.md +162 -163
  33. package/skill-docs/_catalog.md +1 -1
  34. package/skill-docs/actionflows/SKILL.md +8 -2
  35. package/skill-docs/actionflows/references/trigger_runtime_notes.md +6 -6
  36. package/skill-docs/references/common/ref-cli-commands.md +12 -11
  37. package/skill-docs/references/menu/system-menus.md +44 -1
@@ -0,0 +1,205 @@
1
+ function base(client) {
2
+ return (client.auth?.getBaseUrl() || '').replace(/\/$/, '');
3
+ }
4
+ function requireData(response, label) {
5
+ if (!response || response.status === false || (response.code != null && response.code !== 200)) {
6
+ throw new Error(`${label}失败:${response?.msg || response?.code || '接口未返回成功结果'}`);
7
+ }
8
+ if (!response.data || typeof response.data !== 'object')
9
+ throw new Error(`${label}失败:接口未返回有效数据`);
10
+ return response.data;
11
+ }
12
+ /** 租户执行设置上限(前端 InputNumber 使用的最大值)。 */
13
+ export async function getExecutionSettingRules(client) {
14
+ return requireData(await client.get(base(client) + '/api/bs/esb/setting/application/getEsbExecuteSettings'), '读取动作流执行设置上限');
15
+ }
16
+ /** 某个动作流当前生效的执行设置。 */
17
+ export async function getExecutionSetting(client, appId) {
18
+ if (!/^\d+$/.test(String(appId)))
19
+ throw new Error('execution-setting-get 需要数字 appId');
20
+ return requireData(await client.get(base(client) + `/api/bs/esb/setting/application/getExecuteSettingByAppId?appId=${encodeURIComponent(appId)}`), '读取动作流执行设置');
21
+ }
22
+ function positiveInteger(value, label) {
23
+ const text = String(value ?? '').trim();
24
+ if (!/^\d+$/.test(text) || Number(text) < 1 || !Number.isSafeInteger(Number(text))) {
25
+ throw new Error(`${label} 必须是大于 0 的整数`);
26
+ }
27
+ return text;
28
+ }
29
+ function checkLimit(value, limitValue, label) {
30
+ const limit = Number(limitValue);
31
+ if (Number.isFinite(limit) && limit > 0 && Number(value) > limit) {
32
+ throw new Error(`${label}不能超过当前租户上限 ${limit}`);
33
+ }
34
+ }
35
+ function normalizeFlag(value, label) {
36
+ if (value === true || value === 1 || value === '1')
37
+ return 1;
38
+ if (value === false || value === 0 || value === '0')
39
+ return 0;
40
+ throw new Error(`${label} 只能是 true/false 或 1/0`);
41
+ }
42
+ function reminderRows(current, patches) {
43
+ if (!Array.isArray(current))
44
+ throw new Error('动作流提醒配置未完整返回,停止保存以避免覆盖提醒设置');
45
+ const rows = new Map(current.map((row) => [String(row.configType), { ...row }]));
46
+ if (patches === undefined)
47
+ return [...rows.values()];
48
+ if (!Array.isArray(patches))
49
+ throw new Error('reminders 必须是数组');
50
+ const seen = new Set();
51
+ for (const patch of patches) {
52
+ if (!patch || typeof patch !== 'object')
53
+ throw new Error('reminders 的每项都必须是对象');
54
+ const configType = String(patch.configType ?? '').trim();
55
+ if (!/^[1-6]$/.test(configType))
56
+ throw new Error('提醒 configType 必须是 1 到 6');
57
+ if (seen.has(configType))
58
+ throw new Error(`reminders 中 configType=${configType} 重复`);
59
+ seen.add(configType);
60
+ const previous = rows.get(configType);
61
+ if (!previous)
62
+ throw new Error(`平台未返回提醒类型 configType=${configType}`);
63
+ const next = { ...previous };
64
+ if (Object.prototype.hasOwnProperty.call(patch, 'enabled')) {
65
+ next.status = normalizeFlag(patch.enabled, `reminders[${configType}].enabled`) ? '1' : '2';
66
+ }
67
+ if (Object.prototype.hasOwnProperty.call(patch, 'status')) {
68
+ const status = String(patch.status);
69
+ if (status !== '1' && status !== '2')
70
+ throw new Error(`reminders[${configType}].status 必须是 1(启用)或 2(关闭)`);
71
+ next.status = status;
72
+ }
73
+ if (Object.prototype.hasOwnProperty.call(patch, 'remindType')) {
74
+ const remindType = String(patch.remindType);
75
+ if (!['1', '2', '3'].includes(remindType))
76
+ throw new Error(`reminders[${configType}].remindType 必须是 1、2 或 3`);
77
+ next.remindType = remindType;
78
+ if (remindType !== '1')
79
+ next.remindUser = [];
80
+ else if (String(previous.remindType) !== '1')
81
+ next.remindUser = [];
82
+ }
83
+ if (Object.prototype.hasOwnProperty.call(patch, 'remindUser')) {
84
+ if (String(next.remindType) !== '1')
85
+ throw new Error(`reminders[${configType}].remindUser 仅适用于 remindType=1(手动选择)`);
86
+ if (!Array.isArray(patch.remindUser))
87
+ throw new Error(`reminders[${configType}].remindUser 必须是数组`);
88
+ next.remindUser = patch.remindUser.map((user, index) => {
89
+ const id = String(user?.id ?? '').trim();
90
+ if (!/^\d+$/.test(id))
91
+ throw new Error(`reminders[${configType}].remindUser[${index}].id 必须是人员数字 ID`);
92
+ return { id, name: String(user?.name ?? '') };
93
+ });
94
+ }
95
+ rows.set(configType, next);
96
+ }
97
+ return [...rows.values()].sort((a, b) => Number(a.configType) - Number(b.configType));
98
+ }
99
+ /**
100
+ * 按前端执行设置表单保存。先读现值并合并,因为后端 save 接口会把省略的字段置空。
101
+ * CLI 只改传入的选项,其余执行配置及提醒配置沿用回读值。
102
+ */
103
+ export async function updateExecutionSetting(client, input) {
104
+ const appId = String(input.appId ?? '').trim();
105
+ if (!/^\d+$/.test(appId))
106
+ throw new Error('execution-setting-set 需要数字 appId');
107
+ const has = (key) => Object.prototype.hasOwnProperty.call(input, key);
108
+ const configKeys = ['actuator', 'controlMode', 'concurrentNum', 'maxExecuteTimeout', 'maxCycleTimes', 'maxQueryNum', 'memoryKb', 'maxExecuteMemory', 'streamlineFlag', 'reminders', 'remindConfigData'];
109
+ if (!configKeys.some(has)) {
110
+ throw new Error(`至少指定一个要修改的选项:${configKeys.join('、')}`);
111
+ }
112
+ const [current, rules] = await Promise.all([
113
+ getExecutionSetting(client, appId),
114
+ getExecutionSettingRules(client),
115
+ ]);
116
+ const controlMode = String(has('controlMode') ? input.controlMode : current.controlMode || '').trim();
117
+ if (controlMode !== 'max' && controlMode !== 'low')
118
+ throw new Error('controlMode 必须是 max(高并发)或 low(低并发)');
119
+ const actuator = String(has('actuator') ? input.actuator : current.actuator || rules.actuator || '').trim();
120
+ if (!['main', 'low'].includes(actuator))
121
+ throw new Error('actuator 必须是 main(主执行器)或 low(慢速执行器)');
122
+ if (has('actuator') && current.editActuator === false && actuator !== current.actuator) {
123
+ throw new Error('当前动作流的触发类型锁定了执行器,前端不允许修改');
124
+ }
125
+ const remindersInput = has('reminders') ? input.reminders : input.remindConfigData;
126
+ const reminders = reminderRows(current.remindConfigData, remindersInput);
127
+ const body = {
128
+ esbFlowId: appId,
129
+ actuator,
130
+ controlMode,
131
+ maxTenantConcurrentNum: current.maxTenantConcurrentNum ?? '',
132
+ maxConcurrentNum: current.maxConcurrentNum ?? '',
133
+ lowConcurrentNum: current.lowConcurrentNum ?? '',
134
+ maxExecuteTimeout: current.maxExecuteTimeout ?? '',
135
+ maxCycleTimes: current.maxCycleTimes ?? '',
136
+ maxQueryNum: current.maxQueryNum ?? '',
137
+ maxExecuteMemory: current.maxExecuteMemory ?? '',
138
+ streamlineFlag: current.streamlineFlag ?? 0,
139
+ remindConfigData: reminders,
140
+ };
141
+ if (has('concurrentNum')) {
142
+ const value = positiveInteger(input.concurrentNum, 'concurrentNum');
143
+ const capKey = controlMode === 'max' ? 'maxConcurrentNum' : 'lowConcurrentNum';
144
+ checkLimit(value, rules[capKey], 'concurrentNum');
145
+ body[capKey] = value;
146
+ }
147
+ const boundedFields = [
148
+ { inputKey: 'maxExecuteTimeout', bodyKey: 'maxExecuteTimeout', label: 'maxExecuteTimeout', ruleKey: controlMode === 'max' ? 'maxExecuteTimeout' : 'lowMaxExecuteTimeout' },
149
+ { inputKey: 'maxCycleTimes', bodyKey: 'maxCycleTimes', label: 'maxCycleTimes', ruleKey: controlMode === 'max' ? 'maxCycleTimes' : 'lowMaxCycleTimes' },
150
+ { inputKey: 'maxQueryNum', bodyKey: 'maxQueryNum', label: 'maxQueryNum', ruleKey: controlMode === 'max' ? 'maxQueryNum' : 'lowMaxQueryNum' },
151
+ ];
152
+ for (const field of boundedFields) {
153
+ if (!has(field.inputKey))
154
+ continue;
155
+ const value = positiveInteger(input[field.inputKey], field.label);
156
+ checkLimit(value, rules[field.ruleKey], field.label);
157
+ body[field.bodyKey] = value;
158
+ }
159
+ if (has('memoryKb') || has('maxExecuteMemory')) {
160
+ const value = positiveInteger(has('memoryKb') ? input.memoryKb : input.maxExecuteMemory, 'memoryKb');
161
+ const capKey = controlMode === 'max' ? 'maxExecuteMemory' : 'lowMaxExecuteMemory';
162
+ checkLimit(value, rules[capKey], 'memoryKb');
163
+ body.maxExecuteMemory = value;
164
+ }
165
+ if (has('streamlineFlag')) {
166
+ body.streamlineFlag = normalizeFlag(input.streamlineFlag, 'streamlineFlag');
167
+ }
168
+ requireData(await client.post(base(client) + '/api/bs/esb/setting/application/saveEsbExecuteSetting', body), '保存动作流执行设置');
169
+ const after = await getExecutionSetting(client, appId);
170
+ const expectedConcurrencyKey = controlMode === 'max' ? 'maxConcurrentNum' : 'lowConcurrentNum';
171
+ const actualReminders = new Map((Array.isArray(after.remindConfigData) ? after.remindConfigData : []).map((row) => [String(row.configType), row]));
172
+ const remindersMatch = reminders.every((row) => {
173
+ const actual = actualReminders.get(String(row.configType));
174
+ if (!actual || String(actual.status) !== String(row.status) || String(actual.remindType) !== String(row.remindType))
175
+ return false;
176
+ const expectedIds = (row.remindUser || []).map((user) => String(user.id)).sort();
177
+ const actualIds = (actual.remindUser || []).map((user) => String(user.id)).sort();
178
+ return expectedIds.join(',') === actualIds.join(',');
179
+ });
180
+ if (String(after.controlMode) !== controlMode
181
+ || String(after.actuator) !== actuator
182
+ || (has('concurrentNum') && String(after[expectedConcurrencyKey] ?? '') !== body[expectedConcurrencyKey])
183
+ || (has('maxExecuteTimeout') && String(after.maxExecuteTimeout ?? '') !== body.maxExecuteTimeout)
184
+ || (has('maxCycleTimes') && String(after.maxCycleTimes ?? '') !== body.maxCycleTimes)
185
+ || (has('maxQueryNum') && String(after.maxQueryNum ?? '') !== body.maxQueryNum)
186
+ || ((has('memoryKb') || has('maxExecuteMemory')) && String(after.maxExecuteMemory ?? '') !== body.maxExecuteMemory)
187
+ || (has('streamlineFlag') && Number(after.streamlineFlag) !== body.streamlineFlag)
188
+ || !remindersMatch) {
189
+ throw new Error('执行设置保存接口已返回成功,但回读结果与请求不一致');
190
+ }
191
+ return {
192
+ appId,
193
+ actuator: after.actuator,
194
+ controlMode: after.controlMode,
195
+ concurrency: controlMode === 'max' ? after.maxConcurrentNum : after.lowConcurrentNum,
196
+ maxExecuteTimeout: after.maxExecuteTimeout,
197
+ maxCycleTimes: after.maxCycleTimes,
198
+ maxQueryNum: after.maxQueryNum,
199
+ maxExecuteMemory: after.maxExecuteMemory,
200
+ memoryUnit: 'KB',
201
+ streamlineFlag: after.streamlineFlag,
202
+ remindConfigData: after.remindConfigData,
203
+ };
204
+ }
205
+ //# sourceMappingURL=execution_setting.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution_setting.js","sourceRoot":"","sources":["../../../src/services/actionflow/execution_setting.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"preflight_service.d.ts","sourceRoot":"","sources":["../../../src/services/actionflow/preflight_service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"preflight_service.d.ts","sourceRoot":"","sources":["../../../src/services/actionflow/preflight_service.ts"],"names":[],"mappings":"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"}
@@ -2192,6 +2192,79 @@ export function syncQueryFieldsToDraft(draft, plan) {
2192
2192
  for (let i = 0; i < pa.length && i < da.length; i++)
2193
2193
  syncStep(pa[i], da[i]);
2194
2194
  }
2195
+ /**
2196
+ * 收集计划里明确引用到指定数据源的输出字段。
2197
+ * 字段 ID 只从 context/query_result 引用对象读取,随后必须和实时字段接口结果匹配;
2198
+ * 不从展示名或 paramKey 尾段单独推导新字段。
2199
+ */
2200
+ function referencedDataSourceFieldIds(plan, sourceStep, sourceId) {
2201
+ const ids = new Set();
2202
+ const componentType = String(sourceStep.type || '');
2203
+ const sourceRefs = new Set([sourceStep.ref, sourceStep.id, sourceStep.nodeId]
2204
+ .map((value) => String(value || '').trim()).filter(Boolean));
2205
+ const pending = [plan.actions || [], plan.event || {}];
2206
+ const seen = new WeakSet();
2207
+ while (pending.length) {
2208
+ const value = pending.pop();
2209
+ if (!value || typeof value !== 'object')
2210
+ continue;
2211
+ if (seen.has(value))
2212
+ continue;
2213
+ seen.add(value);
2214
+ if (Array.isArray(value)) {
2215
+ pending.push(...value);
2216
+ continue;
2217
+ }
2218
+ const kind = String(value.kind || value.assignmentKind || value.type || '').toLowerCase();
2219
+ if (kind === 'query_result') {
2220
+ const source = String(value.source || value.sourceRef || '').trim();
2221
+ const formId = String(value.formId || '').trim();
2222
+ if ((source && sourceRefs.has(source)) || (!source && formId === sourceId)) {
2223
+ const fieldId = String(value.fieldId || '').trim();
2224
+ if (fieldId) {
2225
+ // 分组查询的输出别名由 EnquiryForm.groupMessage 的真实配置决定;
2226
+ // 将别名反向映射到该配置中的源字段,确保源字段也进入 queryFields。
2227
+ const groupMessage = Array.isArray(sourceStep.params?.groupMessage) ? sourceStep.params.groupMessage : [];
2228
+ let isAggregateAlias = false;
2229
+ for (const item of groupMessage) {
2230
+ const field = String(item?.field || '').trim();
2231
+ const aggregator = String(item?.aggregator || '').trim().toLowerCase();
2232
+ if (field && aggregator && fieldId === `s_${aggregator}_${field}`) {
2233
+ ids.add(field);
2234
+ isAggregateAlias = true;
2235
+ }
2236
+ }
2237
+ if (!isAggregateAlias)
2238
+ ids.add(fieldId);
2239
+ }
2240
+ }
2241
+ }
2242
+ if (kind === 'context' || kind === 'platform_context') {
2243
+ const key = String(value.paramKey || value.key || '').trim();
2244
+ if (componentType === 'DateTrigger' && key.startsWith('dataResponse.')) {
2245
+ const fieldId = key.slice('dataResponse.'.length).split(/[.\[\]]/)[0].trim();
2246
+ if (fieldId)
2247
+ ids.add(fieldId);
2248
+ }
2249
+ else if (sourceId) {
2250
+ const roots = [`${sourceId}.`, `FormData.${sourceId}.`, `FormData.${sourceId}[`, `SelectParams.${sourceId}.`];
2251
+ const root = roots.find((candidate) => key.startsWith(candidate));
2252
+ if (root) {
2253
+ const suffix = key.slice(root.length).split(/[.\[\]]/).filter(Boolean);
2254
+ const fieldId = suffix[suffix.length - 1] || '';
2255
+ if (fieldId)
2256
+ ids.add(fieldId);
2257
+ }
2258
+ }
2259
+ }
2260
+ pending.push(...Object.values(value));
2261
+ }
2262
+ return [...ids];
2263
+ }
2264
+ function canonicalQueryFieldId(value) {
2265
+ const id = String(value || '').trim();
2266
+ return id.startsWith('field_') ? id.slice('field_'.length) : id;
2267
+ }
2195
2268
  /**
2196
2269
  * 归一化 showDataSourceFields 的返回值。
2197
2270
  *
@@ -2750,20 +2823,30 @@ export async function preflightContext(plan, appId, client) {
2750
2823
  if (!id)
2751
2824
  continue;
2752
2825
  byId.set(id, field);
2753
- // 兼容旧 plan/API 返回不带 field_ 前缀的裸字段 ID,
2754
- // 但最终一定替换成当前租户字段选择器的真实 ID。
2755
- byId.set(id.startsWith('field_') ? id.slice('field_'.length) : `field_${id}`, field);
2826
+ const canonicalId = canonicalQueryFieldId(id);
2827
+ if (!byId.has(canonicalId))
2828
+ byId.set(canonicalId, field);
2756
2829
  }
2757
2830
  const requested = Array.isArray(params.queryFields) && params.queryFields.length ? params.queryFields : null;
2758
2831
  if (requested) {
2759
- params.queryFields = requested.map((field) => {
2760
- const live = byId.get(String(field?.id || ''));
2761
- return live ? { ...live, ...field, id: String(live.id) } : { ...field };
2762
- });
2832
+ params.queryFields = requested.map((field, fieldIndex) => {
2833
+ const requestedId = String(field?.id || '');
2834
+ const live = byId.get(requestedId) || byId.get(canonicalQueryFieldId(requestedId));
2835
+ if (!live) {
2836
+ errors.push(`${step.type}.queryFields[${fieldIndex}].id='${requestedId}' 未匹配到 showDataSourceFields 返回的真实字段。`);
2837
+ return null;
2838
+ }
2839
+ // 平台返回的完整字段对象是权威值;plan 只保留显式选择,不得用简写 DTO 覆盖元数据。
2840
+ return { ...field, ...live, id: String(live.id) };
2841
+ }).filter(Boolean);
2763
2842
  }
2764
2843
  else if (selectable.length) {
2765
2844
  params.queryFields = selectable;
2766
2845
  }
2846
+ else if (['EnquiryForm', 'TimeBatchTrigger', 'DateTrigger'].includes(step.type)) {
2847
+ params.queryFields = [];
2848
+ errors.push(`${step.type}.queryFields: showDataSourceFields 未返回可选字段,拒绝用其他字段接口或本地默认值拼造输出字段。`);
2849
+ }
2767
2850
  else {
2768
2851
  const mainFields = fields
2769
2852
  .filter((field) => String(field.subFormId ?? '-1') === '-1')
@@ -2778,6 +2861,23 @@ export async function preflightContext(plan, appId, client) {
2778
2861
  return true;
2779
2862
  });
2780
2863
  }
2864
+ // queryFields 不只是展示配置:getComponentContext 会据此裁剪运行时上下文。
2865
+ // 把后续动态映射明确引用的字段并入查询集,并要求它们能在当前租户字段接口中命中。
2866
+ const requiredFieldIds = referencedDataSourceFieldIds(plan, step, formId);
2867
+ const queryFields = Array.isArray(params.queryFields) ? params.queryFields : (params.queryFields = []);
2868
+ const selectedIds = new Set(queryFields.map((field) => canonicalQueryFieldId(field?.id)));
2869
+ for (const requiredId of requiredFieldIds) {
2870
+ const live = byId.get(requiredId) || byId.get(canonicalQueryFieldId(requiredId));
2871
+ if (!live) {
2872
+ errors.push(`${step.type}.queryFields 缺少动态引用字段 '${requiredId}',且该字段未在当前 showDataSourceFields 返回结果中找到。`);
2873
+ continue;
2874
+ }
2875
+ const canonicalId = canonicalQueryFieldId(live.id);
2876
+ if (selectedIds.has(canonicalId))
2877
+ continue;
2878
+ queryFields.push({ ...live });
2879
+ selectedIds.add(canonicalId);
2880
+ }
2781
2881
  }
2782
2882
  }
2783
2883
  }