Adds SQL UIHints handler and provider.
This commit is contained in:
parent
97a0b36122
commit
f609013a79
|
|
@ -23,6 +23,7 @@ using Elsa.Workflows.Services;
|
|||
using Elsa.Workflows.UIHints.CheckList;
|
||||
using Elsa.Workflows.UIHints.Dropdown;
|
||||
using Elsa.Workflows.UIHints.JsonEditor;
|
||||
using Elsa.Workflows.UIHints.SqlEditor;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
|
||||
namespace Elsa.Workflows.Features;
|
||||
|
|
@ -229,11 +230,13 @@ public class WorkflowsFeature : FeatureBase
|
|||
.AddScoped<IUIHintHandler, DropDownUIHintHandler>()
|
||||
.AddScoped<IUIHintHandler, CheckListUIHintHandler>()
|
||||
.AddScoped<IUIHintHandler, JsonEditorUIHintHandler>()
|
||||
.AddScoped<IUIHintHandler, SqlEditorUIHintHandler>()
|
||||
|
||||
// UI property handlers.
|
||||
.AddScoped<IPropertyUIHandler, StaticCheckListOptionsProvider>()
|
||||
.AddScoped<IPropertyUIHandler, StaticDropDownOptionsProvider>()
|
||||
.AddScoped<IPropertyUIHandler, JsonCodeOptionsProvider>()
|
||||
.AddScoped<IPropertyUIHandler, SqlCodeOptionsProvider>()
|
||||
|
||||
// Logger state generators.
|
||||
.AddSingleton(WorkflowLoggerStateGenerator)
|
||||
|
|
|
|||
|
|
@ -21,5 +21,6 @@ public static class InputUIHints
|
|||
public const string OutputPicker = "output-picker";
|
||||
public const string OutcomePicker = "outcome-picker";
|
||||
public const string JsonEditor = "json-editor";
|
||||
public const string SqlEditor = "sql-editor";
|
||||
public const string DynamicOutcomes = "dynamic-outcomes";
|
||||
}
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
using System.Reflection;
|
||||
using Elsa.Workflows.UIHints.CodeEditor;
|
||||
|
||||
// ReSharper disable once CheckNamespace
|
||||
namespace Elsa.Workflows.UIHints.SqlEditor;
|
||||
|
||||
internal class SqlCodeOptionsProvider : CodeEditorOptionsProviderBase
|
||||
{
|
||||
protected override string GetLanguage(PropertyInfo propertyInfo, object? context) => "sql";
|
||||
}
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
using System.Reflection;
|
||||
|
||||
namespace Elsa.Workflows.UIHints.SqlEditor;
|
||||
|
||||
/// <inheritdoc />
|
||||
public class SqlEditorUIHintHandler : IUIHintHandler
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public string UIHint => InputUIHints.SqlEditor;
|
||||
|
||||
/// <inheritdoc />
|
||||
public ValueTask<IEnumerable<Type>> GetPropertyUIHandlersAsync(PropertyInfo propertyInfo, CancellationToken cancellationToken)
|
||||
{
|
||||
return new([typeof(SqlCodeOptionsProvider)]);
|
||||
}
|
||||
}
|
||||
Loading…
Reference in a new issue