diff --git a/.github/workflows/packages.yml b/.github/workflows/packages.yml
index af32dc99..d1995a03 100644
--- a/.github/workflows/packages.yml
+++ b/.github/workflows/packages.yml
@@ -5,6 +5,7 @@ on:
branches:
- 'main'
- 'feature/*'
+ - 'issue/*'
- 'enhancement/*'
- 'patch/*'
- 'fix/*'
diff --git a/src/modules/Elsa.Studio.ActivityPortProviders/Providers/FlowSwitchPortProvider.cs b/src/modules/Elsa.Studio.ActivityPortProviders/Providers/FlowSwitchPortProvider.cs
index a8089898..2f96625f 100644
--- a/src/modules/Elsa.Studio.ActivityPortProviders/Providers/FlowSwitchPortProvider.cs
+++ b/src/modules/Elsa.Studio.ActivityPortProviders/Providers/FlowSwitchPortProvider.cs
@@ -5,12 +5,14 @@
using Elsa.Api.Client.Shared.Models;
using Elsa.Studio.Workflows.Domain.Contexts;
using Elsa.Studio.Workflows.Domain.Providers;
+using JetBrains.Annotations;
namespace Elsa.Studio.ActivityPortProviders.Providers;
///
/// Provides ports for the FlowSwitch activity based on its cases.
///
+[UsedImplicitly]
public class FlowSwitchPortProvider : ActivityPortProviderBase
{
///
@@ -23,7 +25,7 @@ public override IEnumerable GetPorts(PortProviderContext context)
{
PropertyNamingPolicy = JsonNamingPolicy.CamelCase
};
-
+
var cases = context.Activity.GetProperty>(options, "cases") ?? new List();
foreach (var @case in cases)
@@ -36,6 +38,9 @@ public override IEnumerable GetPorts(PortProviderContext context)
};
}
+ if (cases.Any(x => x.Label == "Default"))
+ yield break;
+
yield return new Port
{
Name = "Default",
diff --git a/src/modules/Elsa.Studio.ActivityPortProviders/Providers/SwitchPortProvider.cs b/src/modules/Elsa.Studio.ActivityPortProviders/Providers/SwitchPortProvider.cs
index 5d6c4c6c..e0dd624b 100644
--- a/src/modules/Elsa.Studio.ActivityPortProviders/Providers/SwitchPortProvider.cs
+++ b/src/modules/Elsa.Studio.ActivityPortProviders/Providers/SwitchPortProvider.cs
@@ -18,7 +18,7 @@ public class SwitchPortProvider : ActivityPortProviderBase
///
public override IEnumerable GetPorts(PortProviderContext context)
{
- var cases = GetCases(context.Activity);
+ var cases = GetCases(context.Activity).ToList();
foreach (var @case in cases)
{
@@ -31,6 +31,9 @@ public override IEnumerable GetPorts(PortProviderContext context)
};
}
+ if (cases.Any(x => GetLabel(x) == "Default"))
+ yield break;
+
yield return new Port
{
Name = "Default",