Fix Container type (#6584)
Fixes an incorrect type use: IContainer lives in System.ComponentModel and does not represent a container activity. The correct type to use is `Container`.
This commit is contained in:
parent
612fd26388
commit
d92512f087
|
|
@ -10,27 +10,13 @@ using Elsa.Workflows.Memory;
|
|||
using Elsa.Workflows.Models;
|
||||
using Elsa.Workflows.UIHints;
|
||||
using Humanizer;
|
||||
using Container = Elsa.Workflows.Activities.Container;
|
||||
|
||||
namespace Elsa.Workflows;
|
||||
|
||||
/// <inheritdoc />
|
||||
public class ActivityDescriber : IActivityDescriber
|
||||
public class ActivityDescriber(IPropertyDefaultValueResolver defaultValueResolver, IActivityFactory activityFactory, IPropertyUIHandlerResolver propertyUIHandlerResolver) : IActivityDescriber
|
||||
{
|
||||
//private readonly IPropertyOptionsResolver _optionsResolver;
|
||||
private readonly IPropertyDefaultValueResolver _defaultValueResolver;
|
||||
private readonly IActivityFactory _activityFactory;
|
||||
private readonly IPropertyUIHandlerResolver _propertyUIHandlerResolver;
|
||||
/// <summary>
|
||||
/// Constructor.
|
||||
/// </summary>
|
||||
public ActivityDescriber(IPropertyDefaultValueResolver defaultValueResolver, IActivityFactory activityFactory, IPropertyUIHandlerResolver propertyUIHandlerResolver)
|
||||
{
|
||||
//_optionsResolver = optionsResolver;
|
||||
_defaultValueResolver = defaultValueResolver;
|
||||
_activityFactory = activityFactory;
|
||||
_propertyUIHandlerResolver = propertyUIHandlerResolver;
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public async Task<ActivityDescriptor> DescribeActivityAsync([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicProperties)] Type activityType, CancellationToken cancellationToken = default)
|
||||
{
|
||||
|
|
@ -90,14 +76,14 @@ public class ActivityDescriber : IActivityDescriber
|
|||
Ports = allPorts.ToList(),
|
||||
Inputs = (await DescribeInputPropertiesAsync(inputProperties, cancellationToken)).ToList(),
|
||||
Outputs = (await DescribeOutputPropertiesAsync(outputProperties, cancellationToken)).ToList(),
|
||||
IsContainer = typeof(IContainer).IsAssignableFrom(activityType),
|
||||
IsContainer = typeof(Container).IsAssignableFrom(activityType),
|
||||
IsBrowsable = browsableAttr == null || browsableAttr.Browsable,
|
||||
IsStart = isStart,
|
||||
IsTerminal = isTerminal,
|
||||
Attributes = attributes,
|
||||
Constructor = context =>
|
||||
{
|
||||
var activity = _activityFactory.Create(activityType, context);
|
||||
var activity = activityFactory.Create(activityType, context);
|
||||
activity.Type = fullTypeName;
|
||||
return activity;
|
||||
}
|
||||
|
|
@ -158,7 +144,7 @@ public class ActivityDescriber : IActivityDescriber
|
|||
if (wrappedPropertyType.IsNullableType())
|
||||
wrappedPropertyType = wrappedPropertyType.GetTypeOfNullable();
|
||||
|
||||
var uiSpecification = await _propertyUIHandlerResolver.GetUIPropertiesAsync(propertyInfo, null, cancellationToken);
|
||||
var uiSpecification = await propertyUIHandlerResolver.GetUIPropertiesAsync(propertyInfo, null, cancellationToken);
|
||||
|
||||
return new InputDescriptor
|
||||
(
|
||||
|
|
@ -172,7 +158,7 @@ public class ActivityDescriber : IActivityDescriber
|
|||
descriptionAttribute?.Description ?? inputAttribute?.Description,
|
||||
inputAttribute?.Category,
|
||||
inputAttribute?.Order ?? 0,
|
||||
_defaultValueResolver.GetDefaultValue(propertyInfo),
|
||||
defaultValueResolver.GetDefaultValue(propertyInfo),
|
||||
inputAttribute?.DefaultSyntax,
|
||||
inputAttribute?.IsReadOnly ?? false,
|
||||
inputAttribute?.IsBrowsable ?? true,
|
||||
|
|
|
|||
Loading…
Reference in a new issue