From ae098815086c538ecc87bc50216ed2bb59c76210 Mon Sep 17 00:00:00 2001 From: Sipke Schoorstra Date: Thu, 2 Mar 2023 10:08:27 +0100 Subject: [PATCH] Fix missing ports --- .../modules/flowchart/default-activity-template.tsx | 2 +- .../components/toolbox-activities.tsx | 2 +- .../src/services/activity-walker.ts | 13 ++++++------- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/src/designer/elsa-workflows-designer/src/modules/flowchart/default-activity-template.tsx b/src/designer/elsa-workflows-designer/src/modules/flowchart/default-activity-template.tsx index df42bb96d..29d5694fb 100644 --- a/src/designer/elsa-workflows-designer/src/modules/flowchart/default-activity-template.tsx +++ b/src/designer/elsa-workflows-designer/src/modules/flowchart/default-activity-template.tsx @@ -52,7 +52,7 @@ export class DefaultActivityTemplate { {({nodeMap}) => { const activity: Activity = nodeMap[activityId]; const ports = portProvider.getOutboundPorts({activityDescriptor, activity}); - const embeddedPorts = ports.filter(x => x.mode == PortMode.Embedded && x.isBrowsable); + const embeddedPorts = ports.filter(x => x.mode == PortMode.Embedded && x.isBrowsable !== false); const canStartWorkflow = activity?.canStartWorkflow; const icon = this.icon; const hasIcon = !!icon; diff --git a/src/designer/elsa-workflows-designer/src/modules/workflow-definitions/components/toolbox-activities.tsx b/src/designer/elsa-workflows-designer/src/modules/workflow-definitions/components/toolbox-activities.tsx index 12d7e38a9..eecaed274 100644 --- a/src/designer/elsa-workflows-designer/src/modules/workflow-definitions/components/toolbox-activities.tsx +++ b/src/designer/elsa-workflows-designer/src/modules/workflow-definitions/components/toolbox-activities.tsx @@ -52,7 +52,7 @@ export class ToolboxActivities { buildModel = (): any => { const browsableDescriptors = uniqBy(descriptorsStore.activityDescriptors - .filter(x => x.isBrowsable) + .filter(x => x.isBrowsable !== false) .sort((a, b) => a.version > b.version ? 1 : -1), x => `${x.typeName}:${x.version}`); const categorizedActivitiesLookup = groupBy(browsableDescriptors, x => x.category); diff --git a/src/designer/elsa-workflows-designer/src/services/activity-walker.ts b/src/designer/elsa-workflows-designer/src/services/activity-walker.ts index a18e11b1e..c027147c0 100644 --- a/src/designer/elsa-workflows-designer/src/services/activity-walker.ts +++ b/src/designer/elsa-workflows-designer/src/services/activity-walker.ts @@ -81,10 +81,12 @@ function walkRecursive(node: ActivityNode, activity: Activity, collectedActiviti } if (childNode !== node) { - childNode.parents.push(node); - node.children.push(childNode); - collectedActivities.add(port.activity); - walkRecursive(childNode, port.activity, collectedActivities, collectedNodes, descriptors); + if(!!childNode.activity) { + childNode.parents.push(node); + node.children.push(childNode); + collectedActivities.add(port.activity) + walkRecursive(childNode, port.activity, collectedActivities, collectedNodes, descriptors); + } } } } @@ -104,9 +106,6 @@ function getPorts(node: ActivityNode, activity: Activity, descriptors: Array; activityPorts = [...activityPorts, ...activities.map(x => ({port: port.name, activity: x}))];