using Elsa.Extensions; using Elsa.Features.Abstractions; using Elsa.Features.Attributes; using Elsa.Features.Services; using Elsa.JavaScript.Activities; using Elsa.JavaScript.Extensions; using Elsa.JavaScript.Features; using Elsa.Workflows.Core.Contracts; using Elsa.Workflows.Management.HostedServices; using Elsa.Workflows.Management.Scripting.JavaScript; using JetBrains.Annotations; using Microsoft.Extensions.DependencyInjection; namespace Elsa.Workflows.Management.Features; /// /// Installs JavaScript activities. /// [DependsOn(typeof(JavaScriptFeature))] [PublicAPI] public class JavaScriptIntegrationFeature : FeatureBase { /// public JavaScriptIntegrationFeature(IModule module) : base(module) { } /// public override void Configure() { Module.UseWorkflowManagement(management => management.AddActivity()); } /// public override void ConfigureHostedServices() { ConfigureHostedService(); } /// public override void Apply() { Services .AddSingleton() .AddFunctionDefinitionProvider(); } }