@nocobase/flow-engine
Version:
A standalone flow engine for NocoBase, managing workflows, models, and actions.
89 lines (87 loc) • 3.29 kB
JavaScript
/**
* This file is part of the NocoBase (R) project.
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
* Authors: NocoBase Team.
*
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
* For more information, please refer to: https://www.nocobase.com/agreement.
*/
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var setupRuntimeContextSteps_exports = {};
__export(setupRuntimeContextSteps_exports, {
setupRuntimeContextSteps: () => setupRuntimeContextSteps
});
module.exports = __toCommonJS(setupRuntimeContextSteps_exports);
function setupRuntimeContextSteps(ctx, flowSteps, model, flowKey) {
var _a;
const steps = {};
const stepsMetaProperties = {};
for (const stepKey in flowSteps) {
if (Object.prototype.hasOwnProperty.call(flowSteps, stepKey)) {
const flowStep = flowSteps[stepKey];
const paramsProperties = {};
if (flowStep.uiSchema && typeof flowStep.uiSchema === "object") {
for (const [paramKey, paramSchema] of Object.entries(flowStep.uiSchema)) {
if (paramSchema && typeof paramSchema === "object") {
const schema = paramSchema;
paramsProperties[paramKey] = {
type: schema.type || "any",
title: schema.title || ((_a = schema["x-decorator-props"]) == null ? void 0 : _a.label) || paramKey,
interface: schema["x-component"],
uiSchema: schema
};
}
}
}
const hasParams = Object.keys(paramsProperties).length > 0;
stepsMetaProperties[stepKey] = {
type: "object",
title: ctx.t(flowStep.title) || stepKey,
display: hasParams ? "default" : "none",
properties: hasParams ? {
params: {
type: "object",
title: "Parameters",
display: "flatten",
properties: paramsProperties
}
} : void 0
};
steps[stepKey] = {
get params() {
return model.getStepParams(flowKey, stepKey) || {};
},
get uiSchema() {
return flowStep.uiSchema;
},
result: void 0
// result 会在运行时被设置
};
}
}
ctx.defineProperty("steps", {
get: /* @__PURE__ */ __name(() => steps, "get")
});
}
__name(setupRuntimeContextSteps, "setupRuntimeContextSteps");
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
setupRuntimeContextSteps
});