From 44c1b078a649d94cf9d3a44000b75b84f2d1d431 Mon Sep 17 00:00:00 2001 From: Sipke Schoorstra Date: Mon, 26 Apr 2021 15:25:22 +0200 Subject: [PATCH 1/7] Fix "workflow not found" message --- .../elsa-workflow-instances-list-screen.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/designer/elsa-workflows-studio/src/components/screens/workflow-instances-list/elsa-workflow-instances-list-screen/elsa-workflow-instances-list-screen.tsx b/src/designer/elsa-workflows-studio/src/components/screens/workflow-instances-list/elsa-workflow-instances-list-screen/elsa-workflow-instances-list-screen.tsx index 776ec980f..87846dbd2 100644 --- a/src/designer/elsa-workflows-studio/src/components/screens/workflow-instances-list/elsa-workflow-instances-list-screen/elsa-workflow-instances-list-screen.tsx +++ b/src/designer/elsa-workflows-studio/src/components/screens/workflow-instances-list/elsa-workflow-instances-list-screen/elsa-workflow-instances-list-screen.tsx @@ -48,7 +48,7 @@ export class ElsaWorkflowInstancesListScreen { async loadWorkflowBlueprints() { const elsaClient = this.createClient(); - const versionOptions: VersionOptions = {isLatestOrPublished: true}; + const versionOptions: VersionOptions = {allVersions: true}; const workflowBlueprintPagedList = await elsaClient.workflowRegistryApi.list(null, null, versionOptions); this.workflowBlueprints = workflowBlueprintPagedList.items; } From 951904a643e662ae20da5b8e1f11d4af29336e9e Mon Sep 17 00:00:00 2001 From: Craig Fowler Date: Mon, 26 Apr 2021 19:29:10 +0100 Subject: [PATCH 2/7] WIP #777 - Add test coverage to repro issue The test coverage here actually proves that for Liquid expressions, the issue has already been fixed as part of other work. Specifically it was fixed in 2a22a328c4ff48dcaef5f711c1b2df17be901a05 in the class StringExtensions.cs --- .../unit/Elsa.UnitTests/Elsa.UnitTests.csproj | 1 + .../Expressions/LiquidHandlerTests.cs | 112 ++++++++++++++++++ .../Expressions/LiteralHandlerTests.cs | 63 ++++++++++ 3 files changed, 176 insertions(+) create mode 100644 test/unit/Elsa.UnitTests/Expressions/LiquidHandlerTests.cs create mode 100644 test/unit/Elsa.UnitTests/Expressions/LiteralHandlerTests.cs diff --git a/test/unit/Elsa.UnitTests/Elsa.UnitTests.csproj b/test/unit/Elsa.UnitTests/Elsa.UnitTests.csproj index bc77e0de7..a50ba8b1f 100644 --- a/test/unit/Elsa.UnitTests/Elsa.UnitTests.csproj +++ b/test/unit/Elsa.UnitTests/Elsa.UnitTests.csproj @@ -22,6 +22,7 @@ runtime; build; native; contentfiles; analyzers; buildtransitive all + diff --git a/test/unit/Elsa.UnitTests/Expressions/LiquidHandlerTests.cs b/test/unit/Elsa.UnitTests/Expressions/LiquidHandlerTests.cs new file mode 100644 index 000000000..950d0a0cb --- /dev/null +++ b/test/unit/Elsa.UnitTests/Expressions/LiquidHandlerTests.cs @@ -0,0 +1,112 @@ +using System; +using System.Text.Encodings.Web; +using System.Threading.Tasks; +using AutoFixture.Xunit2; +using Elsa.Scripting.Liquid.Services; +using Elsa.Services.Models; +using Elsa.Testing.Shared; +using Elsa.Testing.Shared.AutoFixture.Attributes; +using Fluid; +using Moq; +using Xunit; + +namespace Elsa.UnitTests.Expressions +{ + public class LiquidHandlerTests + { + [Theory(DisplayName = "When the desired return type is a string, the EvaluateAsync method should return the expression result"), AutoMoqData] + public async Task EvaluateAsyncShouldReturnExpressionResultWhenReturnTypeIsString([Frozen] ILiquidTemplateManager liquidTemplateManager, + LiquidHandler sut, + string expression, + string expectedResult, + [StubActivityExecutionContext] ActivityExecutionContext context) + { + Mock.Get(liquidTemplateManager) + .Setup(x => x.RenderAsync(expression, It.IsAny(), HtmlEncoder.Default)) + .Returns(() => Task.FromResult(expectedResult)); + + var result = await sut.EvaluateAsync(expression, typeof(string), context, default); + + Assert.Equal(expectedResult, result); + } + + [Theory(DisplayName = "When the desired return type is an object, the EvaluateAsync method should return the expression result"), AutoMoqData] + public async Task EvaluateAsyncShouldReturnExpressionResultWhenReturnTypeIsObject([Frozen] ILiquidTemplateManager liquidTemplateManager, + LiquidHandler sut, + string expression, + string expectedResult, + [StubActivityExecutionContext] ActivityExecutionContext context) + { + Mock.Get(liquidTemplateManager) + .Setup(x => x.RenderAsync(expression, It.IsAny(), HtmlEncoder.Default)) + .Returns(() => Task.FromResult(expectedResult)); + + var result = await sut.EvaluateAsync(expression, typeof(object), context, default); + + Assert.Equal(expectedResult, result); + } + + [Theory(DisplayName = "When the expression result is null, the EvaluateAsync method should return null"), AutoMoqData] + public async Task EvaluateAsyncShouldReturnNullWhenExpressionIsNull([Frozen] ILiquidTemplateManager liquidTemplateManager, + LiquidHandler sut, + string expression, + [StubActivityExecutionContext] ActivityExecutionContext context, + Type returnType) + { + Mock.Get(liquidTemplateManager) + .Setup(x => x.RenderAsync(expression, It.IsAny(), HtmlEncoder.Default)) + .Returns(() => Task.FromResult(null)); + + var result = await sut.EvaluateAsync(expression, returnType, context, default); + + Assert.Null(result); + } + + [Theory(DisplayName = "When the expression result is empty string, the EvaluateAsync method should return null"), AutoMoqData] + public async Task EvaluateAsyncShouldReturnNullWhenExpressionIsEmpty([Frozen] ILiquidTemplateManager liquidTemplateManager, + LiquidHandler sut, + string expression, + [StubActivityExecutionContext] ActivityExecutionContext context, + Type returnType) + { + Mock.Get(liquidTemplateManager) + .Setup(x => x.RenderAsync(expression, It.IsAny(), HtmlEncoder.Default)) + .Returns(() => Task.FromResult(String.Empty)); + + var result = await sut.EvaluateAsync(expression, returnType, context, default); + + Assert.Null(result); + } + + [Theory(DisplayName = "When the expression result is whitespace-only, the EvaluateAsync method should return null"), AutoMoqData] + public async Task EvaluateAsyncShouldReturnNullWhenExpressionIsWhitespaceOnly([Frozen] ILiquidTemplateManager liquidTemplateManager, + LiquidHandler sut, + string expression, + [StubActivityExecutionContext] ActivityExecutionContext context, + Type returnType) + { + Mock.Get(liquidTemplateManager) + .Setup(x => x.RenderAsync(expression, It.IsAny(), HtmlEncoder.Default)) + .Returns(() => Task.FromResult(" ")); + + var result = await sut.EvaluateAsync(expression, returnType, context, default); + + Assert.Null(result); + } + + [Theory(DisplayName = "When the desired return type is DateTime, the EvaluateAsync method should convert the result to a DateTime"), AutoMoqData] + public async Task EvaluateAsyncShouldConvertToDateTimeWhenThatIsDesiredReturnType([Frozen] ILiquidTemplateManager liquidTemplateManager, + LiquidHandler sut, + string expression, + [StubActivityExecutionContext] ActivityExecutionContext context) + { + Mock.Get(liquidTemplateManager) + .Setup(x => x.RenderAsync(expression, It.IsAny(), HtmlEncoder.Default)) + .Returns(() => Task.FromResult("2001-03-04T12:45:32Z")); + + var result = await sut.EvaluateAsync(expression, typeof(DateTime), context, default); + + Assert.Equal(new DateTime(2001, 03, 04, 12, 45, 32, DateTimeKind.Utc), result); + } + } +} \ No newline at end of file diff --git a/test/unit/Elsa.UnitTests/Expressions/LiteralHandlerTests.cs b/test/unit/Elsa.UnitTests/Expressions/LiteralHandlerTests.cs new file mode 100644 index 000000000..bc2e7e341 --- /dev/null +++ b/test/unit/Elsa.UnitTests/Expressions/LiteralHandlerTests.cs @@ -0,0 +1,63 @@ +using System; +using System.Globalization; +using System.Threading.Tasks; +using Elsa.Services.Models; +using Elsa.Testing.Shared; +using Elsa.Testing.Shared.AutoFixture.Attributes; +using Xunit; + +namespace Elsa.Expressions +{ + public class LiteralHandlerTests + { + [Theory(DisplayName = "When the desired return type is a string, the EvaluateAsync method should return the literal expression"), AutoMoqData] + public async Task EvaluateAsyncShouldReturnExpressionLiteralWhenReturnTypeIsString(LiteralHandler sut, + string expression, + [StubActivityExecutionContext] ActivityExecutionContext context) + { + var result = await sut.EvaluateAsync(expression, typeof(string), context, default); + Assert.Equal(expression, result); + } + + [Theory(DisplayName = "When the desired return type is an object, the EvaluateAsync method should return the literal expression"), AutoMoqData] + public async Task EvaluateAsyncShouldReturnExpressionLiteralWhenReturnTypeIsObject(LiteralHandler sut, + string expression, + [StubActivityExecutionContext] ActivityExecutionContext context) + { + var result = await sut.EvaluateAsync(expression, typeof(object), context, default); + Assert.Equal(expression, result); + } + + [Theory(DisplayName = "When the desired return type is not string or object but the expression is null, the EvaluateAsync method should return null"), AutoMoqData] + public async Task EvaluateAsyncShouldReturnNullWhenExpressionIsNull(LiteralHandler sut, + [StubActivityExecutionContext] ActivityExecutionContext context) + { + var result = await sut.EvaluateAsync(null, typeof(Uri), context, default); + Assert.Null(result); + } + + [Theory(DisplayName = "When the desired return type is not string or object but the expression is empty string, the EvaluateAsync method should return null"), AutoMoqData] + public async Task EvaluateAsyncShouldReturnNullWhenExpressionIsEmpty(LiteralHandler sut, + [StubActivityExecutionContext] ActivityExecutionContext context) + { + var result = await sut.EvaluateAsync(string.Empty, typeof(Uri), context, default); + Assert.Null(result); + } + + [Theory(DisplayName = "When the desired return type is not string or object but the expression is whitespace-only, the EvaluateAsync method should return null"), AutoMoqData] + public async Task EvaluateAsyncShouldReturnNullWhenExpressionIsWhitespaceOnly(LiteralHandler sut, + [StubActivityExecutionContext] ActivityExecutionContext context) + { + var result = await sut.EvaluateAsync(" ", typeof(Uri), context, default); + Assert.Null(result); + } + + [Theory(DisplayName = "When the desired return type is DateTime, the EvaluateAsync method should convert the string to a DateTime"), AutoMoqData] + public async Task EvaluateAsyncShouldConvertToDateTimeWhenThatIsDesiredReturnType(LiteralHandler sut, + [StubActivityExecutionContext] ActivityExecutionContext context) + { + var result = await sut.EvaluateAsync("2001-03-04T12:45:32Z", typeof(DateTime), context, default); + Assert.Equal(new DateTime(2001, 03, 04, 12, 45, 32, DateTimeKind.Utc), result); + } + } +} \ No newline at end of file From 39485970cf81fe8cc1f0dab44418e9a3e0eff8bf Mon Sep 17 00:00:00 2001 From: Craig Fowler Date: Mon, 26 Apr 2021 19:34:43 +0100 Subject: [PATCH 3/7] Resolve #777 - Handle 'target type object' Turns out that this is a quick & cheap fix. --- src/core/Elsa.Core/Expressions/LiteralHandler.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/core/Elsa.Core/Expressions/LiteralHandler.cs b/src/core/Elsa.Core/Expressions/LiteralHandler.cs index 148c89ad3..a4520deea 100644 --- a/src/core/Elsa.Core/Expressions/LiteralHandler.cs +++ b/src/core/Elsa.Core/Expressions/LiteralHandler.cs @@ -16,7 +16,7 @@ namespace Elsa.Expressions ActivityExecutionContext context, CancellationToken cancellationToken) { - if (returnType == typeof(string)) + if (returnType == typeof(string) || returnType == typeof(object)) return Task.FromResult(expression); if (string.IsNullOrWhiteSpace(expression)) From 2b52f13d147065d3c00f85b4c9b24070e4308c06 Mon Sep 17 00:00:00 2001 From: Sipke Schoorstra Date: Tue, 27 Apr 2021 10:52:11 +0200 Subject: [PATCH 4/7] Visual fixes --- .../Elsa.Designer.Components.Web.csproj | 562 ++++++++++++++++++ .../Interop/elsa-interop.ts | 1 - .../webpack.config.js | 1 + .../elsa-workflows-studio/package.json | 2 +- .../assets => assets/images}/tile.png | Bin .../src/assets/styles/tailwind.css | 438 +++++++++++--- .../elsa-workflows-studio/src/components.d.ts | 4 + .../controls/elsa-context-menu/readme.md | 4 +- .../controls/elsa-monaco/elsa-monaco-utils.ts | 2 +- .../controls/elsa-pager/elsa-pager.tsx | 2 +- .../pages/elsa-studio-root/assets/logo.png | Bin 0 -> 9825 bytes .../elsa-studio-root/elsa-studio-root.tsx | 10 +- .../pages/elsa-studio-root/readme.md | 7 +- .../elsa-studio-workflow-definitions-edit.tsx | 3 +- .../readme.md | 9 +- .../readme.md | 1 + .../readme.md | 34 ++ .../elsa-studio-workflow-registry/readme.md | 14 +- .../elsa-designer-tree-activity/readme.md | 11 +- .../elsa-designer-tree/elsa-designer-tree.css | 2 +- .../tree/elsa-designer-tree/readme.md | 17 +- .../readme.md | 52 ++ .../elsa-workflow-instances-list-screen.css | 0 .../elsa-workflow-instances-list-screen.tsx | 3 +- .../readme.md | 2 + .../readme.md | 38 ++ .../src/globals/tailwind.css | 438 +++++++++++--- .../elsa-workflows-studio/src/index.html | 4 +- .../elsa-workflows-studio/stencil.config.ts | 7 +- .../elsa-workflows-studio/tailwind.config.js | 2 +- .../elsa-workflows-studio/tailwind.css | 14 + .../Pages/_Host.cshtml | 10 +- .../Pages/_Host.cshtml | 1 + 33 files changed, 1473 insertions(+), 222 deletions(-) rename src/designer/elsa-workflows-studio/src/{components/designers/tree/elsa-designer-tree/assets => assets/images}/tile.png (100%) create mode 100644 src/designer/elsa-workflows-studio/src/components/dashboard/pages/elsa-studio-root/assets/logo.png create mode 100644 src/designer/elsa-workflows-studio/src/components/dashboard/pages/elsa-studio-workflow-instances-view/readme.md create mode 100644 src/designer/elsa-workflows-studio/src/components/screens/workflow-instance-viewer/elsa-workflow-instance-viewer-screen/readme.md delete mode 100644 src/designer/elsa-workflows-studio/src/components/screens/workflow-instances-list/elsa-workflow-instances-list-screen/elsa-workflow-instances-list-screen.css create mode 100644 src/designer/elsa-workflows-studio/src/components/screens/workflow-registry-list/elsa-workflow-registry-list-screen/readme.md diff --git a/src/designer/bindings/aspnet/Elsa.Designer.Components.Web/Elsa.Designer.Components.Web.csproj b/src/designer/bindings/aspnet/Elsa.Designer.Components.Web/Elsa.Designer.Components.Web.csproj index 7e3223954..8fbaf4588 100644 --- a/src/designer/bindings/aspnet/Elsa.Designer.Components.Web/Elsa.Designer.Components.Web.csproj +++ b/src/designer/bindings/aspnet/Elsa.Designer.Components.Web/Elsa.Designer.Components.Web.csproj @@ -20,4 +20,566 @@ + + <_ContentIncludedByDefault Remove="wwwroot\1117.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\1117.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\1151.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\1151.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\137.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\137.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\1432.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\1432.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\1537.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\1537.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\160.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\160.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\1604.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\1604.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\1606.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\1606.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\162.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\162.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\1750.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\1750.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\1761.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\1761.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\185.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\185.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\2034.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\2034.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\2091.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\2091.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\2208.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\2208.elsa-workflows.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\2208.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\2300.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\2300.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\2315.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\2315.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\2364.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\2364.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\2396.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\2396.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\2414.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\2414.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\2540.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\2540.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\2545.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\2545.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\260.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\260.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\2661.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\2661.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\2711.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\2711.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\2754.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\2754.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\2776.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\2776.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\2784.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\2784.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\2804.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\2804.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\2898.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\2898.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\294.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\294.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\2946.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\2946.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\2998.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\2998.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3013.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3013.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3037.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3037.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3048.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3048.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3077.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3077.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3078.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3078.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3115.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3115.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3119.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3119.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\316.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\316.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3192.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3192.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3377.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3377.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3419.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3419.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3526.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3526.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\356.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\356.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3560.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3560.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3563.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3563.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3595.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3595.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\364.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\364.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3654.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3654.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3769.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3769.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3878.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3878.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3909.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3909.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\3911.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\3911.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\4019.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\4019.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\4057.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\4057.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\41.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\41.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\4116.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\4116.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\414.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\414.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\4153.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\4153.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\4392.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\4392.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\4424.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\4424.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\4486.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\4486.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\4530.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\4530.elsa-workflows.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\4530.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\4585.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\4585.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\4595.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\4595.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\4829.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\4829.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\4981.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\4981.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\512.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\512.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\5124.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\5124.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\5185.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\5185.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\5200.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\5200.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\5313.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\5313.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\5375.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\5375.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\5490.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\5490.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\5515.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\5515.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\5538.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\5538.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\5578.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\5578.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\5636.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\5636.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\5662.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\5662.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\575.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\575.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\5765.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\5765.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\5785.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\5785.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\5836.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\5836.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\5888.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\5888.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\5911.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\5911.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\5961.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\5961.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\599.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\599.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6003.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6003.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6118.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6118.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6157.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6157.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6208.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6208.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6243.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6243.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6274.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6274.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6301.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6301.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6333.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6333.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\64.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\64.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6445.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6445.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6447.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6447.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6568.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6568.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6625.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6625.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\663.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\663.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6687.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6687.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6719.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6719.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6748.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6748.elsa-workflows.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\6748.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6763.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6763.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6810.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6810.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6907.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6907.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6925.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6925.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\6950.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\6950.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7013.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7013.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7072.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7072.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7073.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7073.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7093.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7093.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7199.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7199.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7204.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7204.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7208.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7208.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7220.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7220.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7232.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7232.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\725.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\725.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7289.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7289.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7295.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7295.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7366.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7366.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7512.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7512.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7541.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7541.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7607.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7607.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7625.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7625.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7644.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7644.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7697.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7697.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7739.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7739.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7776.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7776.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7791.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7791.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7792.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7792.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7851.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7851.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7905.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7905.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\7909.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\7909.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\797.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\797.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\8022.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\8022.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\8035.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\8035.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\8079.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\8079.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\8207.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\8207.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\8274.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\8274.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\8321.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\8321.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\8397.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\8397.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\8442.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\8442.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\847.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\847.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\8503.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\8503.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\8763.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\8763.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\8773.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\8773.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\8841.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\8841.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\8898.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\8898.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\8946.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\8946.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\8958.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\8958.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\8978.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\8978.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9033.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9033.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9051.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9051.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9062.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9062.elsa-workflows.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\9062.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9111.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9111.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9156.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9156.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9157.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9157.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9158.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9158.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9175.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9175.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9206.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9206.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9313.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9313.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9319.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9319.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9339.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9339.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9361.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9361.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9405.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9405.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9410.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9410.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9426.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9426.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9440.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9440.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9519.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9519.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9544.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9544.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9814.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9814.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9866.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9866.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9874.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9874.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\988.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\988.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\9971.elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\9971.elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\elsa-workflows.js" /> + <_ContentIncludedByDefault Remove="wwwroot\elsa-workflows.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min-maps\vs\base\worker\workerMain.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min-maps\vs\editor\editor.main.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min-maps\vs\editor\editor.main.nls.de.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min-maps\vs\editor\editor.main.nls.es.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min-maps\vs\editor\editor.main.nls.fr.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min-maps\vs\editor\editor.main.nls.it.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min-maps\vs\editor\editor.main.nls.ja.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min-maps\vs\editor\editor.main.nls.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min-maps\vs\editor\editor.main.nls.ko.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min-maps\vs\editor\editor.main.nls.ru.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min-maps\vs\editor\editor.main.nls.zh-cn.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min-maps\vs\editor\editor.main.nls.zh-tw.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min-maps\vs\loader.js.map" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\base\browser\ui\codicons\codicon\codicon.ttf" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\base\worker\workerMain.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\base\worker\workerMain.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\abap\abap.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\abap\abap.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\apex\apex.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\apex\apex.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\azcli\azcli.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\azcli\azcli.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\bat\bat.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\bat\bat.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\cameligo\cameligo.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\cameligo\cameligo.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\clojure\clojure.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\clojure\clojure.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\coffee\coffee.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\coffee\coffee.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\cpp\cpp.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\cpp\cpp.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\csharp\csharp.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\csharp\csharp.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\csp\csp.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\csp\csp.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\css\css.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\css\css.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\dart\dart.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\dart\dart.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\dockerfile\dockerfile.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\dockerfile\dockerfile.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\ecl\ecl.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\ecl\ecl.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\fsharp\fsharp.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\fsharp\fsharp.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\go\go.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\go\go.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\graphql\graphql.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\graphql\graphql.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\handlebars\handlebars.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\handlebars\handlebars.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\hcl\hcl.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\hcl\hcl.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\html\html.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\html\html.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\ini\ini.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\ini\ini.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\javascript\javascript.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\javascript\javascript.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\java\java.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\java\java.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\julia\julia.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\julia\julia.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\kotlin\kotlin.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\kotlin\kotlin.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\less\less.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\less\less.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\lexon\lexon.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\lexon\lexon.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\lua\lua.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\lua\lua.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\m3\m3.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\m3\m3.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\markdown\markdown.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\markdown\markdown.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\mips\mips.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\mips\mips.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\msdax\msdax.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\msdax\msdax.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\mysql\mysql.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\mysql\mysql.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\objective-c\objective-c.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\objective-c\objective-c.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\pascaligo\pascaligo.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\pascaligo\pascaligo.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\pascal\pascal.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\pascal\pascal.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\perl\perl.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\perl\perl.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\pgsql\pgsql.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\pgsql\pgsql.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\php\php.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\php\php.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\postiats\postiats.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\postiats\postiats.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\powerquery\powerquery.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\powerquery\powerquery.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\powershell\powershell.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\powershell\powershell.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\pug\pug.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\pug\pug.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\python\python.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\python\python.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\razor\razor.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\razor\razor.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\redis\redis.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\redis\redis.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\redshift\redshift.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\redshift\redshift.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\restructuredtext\restructuredtext.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\restructuredtext\restructuredtext.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\ruby\ruby.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\ruby\ruby.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\rust\rust.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\rust\rust.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\r\r.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\r\r.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\sb\sb.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\sb\sb.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\scala\scala.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\scala\scala.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\scheme\scheme.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\scheme\scheme.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\scss\scss.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\scss\scss.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\shell\shell.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\shell\shell.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\solidity\solidity.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\solidity\solidity.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\sophia\sophia.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\sophia\sophia.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\sql\sql.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\sql\sql.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\st\st.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\st\st.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\swift\swift.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\swift\swift.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\systemverilog\systemverilog.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\systemverilog\systemverilog.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\tcl\tcl.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\tcl\tcl.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\twig\twig.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\twig\twig.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\typescript\typescript.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\typescript\typescript.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\vb\vb.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\vb\vb.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\xml\xml.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\xml\xml.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\yaml\yaml.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\basic-languages\yaml\yaml.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.css" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.de.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.de.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.es.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.es.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.fr.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.fr.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.it.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.it.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.ja.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.ja.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.ko.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.ko.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.ru.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.ru.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.zh-cn.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.zh-cn.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.zh-tw.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\editor\editor.main.nls.zh-tw.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\language\css\cssMode.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\language\css\cssMode.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\language\css\cssWorker.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\language\css\cssWorker.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\language\html\htmlMode.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\language\html\htmlMode.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\language\html\htmlWorker.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\language\html\htmlWorker.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\language\json\jsonMode.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\language\json\jsonMode.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\language\json\jsonWorker.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\language\json\jsonWorker.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\language\typescript\tsMode.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\language\typescript\tsMode.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\language\typescript\tsWorker.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\language\typescript\tsWorker.js.LICENSE.txt" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\loader.js" /> + <_ContentIncludedByDefault Remove="wwwroot\monaco-editor\min\vs\loader.js.LICENSE.txt" /> + + diff --git a/src/designer/bindings/aspnet/Elsa.Designer.Components.Web/Interop/elsa-interop.ts b/src/designer/bindings/aspnet/Elsa.Designer.Components.Web/Interop/elsa-interop.ts index f3d2fcbdf..e69de29bb 100644 --- a/src/designer/bindings/aspnet/Elsa.Designer.Components.Web/Interop/elsa-interop.ts +++ b/src/designer/bindings/aspnet/Elsa.Designer.Components.Web/Interop/elsa-interop.ts @@ -1 +0,0 @@ -import "../../../../elsa-workflows-studio/dist/elsa-workflows-studio/elsa-workflows-studio.esm"; \ No newline at end of file diff --git a/src/designer/bindings/aspnet/Elsa.Designer.Components.Web/webpack.config.js b/src/designer/bindings/aspnet/Elsa.Designer.Components.Web/webpack.config.js index a6a3f981a..a5c71fbe3 100644 --- a/src/designer/bindings/aspnet/Elsa.Designer.Components.Web/webpack.config.js +++ b/src/designer/bindings/aspnet/Elsa.Designer.Components.Web/webpack.config.js @@ -33,6 +33,7 @@ module.exports = env => { plugins: [ new CopyPlugin({ patterns: [ + { from: "../../../elsa-workflows-studio/dist/elsa-workflows-studio", to: "elsa-workflows-studio" }, { from: "node_modules/monaco-editor/min", to: "monaco-editor/min" }, { from: "node_modules/monaco-editor/min-maps", to: "monaco-editor/min-maps" }, ], diff --git a/src/designer/elsa-workflows-studio/package.json b/src/designer/elsa-workflows-studio/package.json index 31d8e312b..1d60d0559 100644 --- a/src/designer/elsa-workflows-studio/package.json +++ b/src/designer/elsa-workflows-studio/package.json @@ -16,7 +16,7 @@ ], "scripts": { "push:preview": "npm publish --access-public --tag preview", - "build": "npm run build:tailwind:prod & stencil build --dev", + "build": "npm run build:tailwind:prod & stencil build", "build:dev": "stencil build --dev --tailwind:dev", "start:dev": "stencil build --dev --tailwind:dev --watch --serve", "start": "stencil build --watch --serve", diff --git a/src/designer/elsa-workflows-studio/src/components/designers/tree/elsa-designer-tree/assets/tile.png b/src/designer/elsa-workflows-studio/src/assets/images/tile.png similarity index 100% rename from src/designer/elsa-workflows-studio/src/components/designers/tree/elsa-designer-tree/assets/tile.png rename to src/designer/elsa-workflows-studio/src/assets/images/tile.png diff --git a/src/designer/elsa-workflows-studio/src/assets/styles/tailwind.css b/src/designer/elsa-workflows-studio/src/assets/styles/tailwind.css index 3ef76e0fa..070e70d6d 100644 --- a/src/designer/elsa-workflows-studio/src/assets/styles/tailwind.css +++ b/src/designer/elsa-workflows-studio/src/assets/styles/tailwind.css @@ -695,10 +695,60 @@ select { } } -.space-x-0 > :not([hidden]) ~ :not([hidden]) { - --tw-space-x-reverse: 0; - margin-right: calc(0px * var(--tw-space-x-reverse)); - margin-left: calc(0px * calc(1 - var(--tw-space-x-reverse))); +.prose-red a { + color: #dc2626; +} + +.prose-red a code { + color: #dc2626; +} + +.prose-yellow a { + color: #d97706; +} + +.prose-yellow a code { + color: #d97706; +} + +.prose-green a { + color: #059669; +} + +.prose-green a code { + color: #059669; +} + +.prose-blue a { + color: #2563eb; +} + +.prose-blue a code { + color: #2563eb; +} + +.prose-pink a { + color: #db2777; +} + +.prose-pink a code { + color: #db2777; +} + +.prose-light-blue a { + color: #0284c7; +} + +.prose-light-blue a code { + color: #0284c7; +} + +.prose-cool-gray a { + color: #4b5563; +} + +.prose-cool-gray a code { + color: #4b5563; } .space-y-1 > :not([hidden]) ~ :not([hidden]) { @@ -707,12 +757,6 @@ select { margin-bottom: calc(0.25rem * var(--tw-space-y-reverse)); } -.space-x-2 > :not([hidden]) ~ :not([hidden]) { - --tw-space-x-reverse: 0; - margin-right: calc(0.5rem * var(--tw-space-x-reverse)); - margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse))); -} - .space-y-3 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse))); @@ -755,18 +799,6 @@ select { margin-left: calc(2.5rem * calc(1 - var(--tw-space-x-reverse))); } -.space-x-0\.5 > :not([hidden]) ~ :not([hidden]) { - --tw-space-x-reverse: 0; - margin-right: calc(0.125rem * var(--tw-space-x-reverse)); - margin-left: calc(0.125rem * calc(1 - var(--tw-space-x-reverse))); -} - -.-space-x-1 > :not([hidden]) ~ :not([hidden]) { - --tw-space-x-reverse: 0; - margin-right: calc(-0.25rem * var(--tw-space-x-reverse)); - margin-left: calc(-0.25rem * calc(1 - var(--tw-space-x-reverse))); -} - .divide-y > :not([hidden]) ~ :not([hidden]) { --tw-divide-y-reverse: 0; border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse))); @@ -824,11 +856,6 @@ select { background-color: rgba(107, 114, 128, var(--tw-bg-opacity)); } -.bg-gray-600 { - --tw-bg-opacity: 1; - background-color: rgba(75, 85, 99, var(--tw-bg-opacity)); -} - .bg-gray-800 { --tw-bg-opacity: 1; background-color: rgba(31, 41, 55, var(--tw-bg-opacity)); @@ -844,21 +871,11 @@ select { background-color: rgba(254, 226, 226, var(--tw-bg-opacity)); } -.bg-red-500 { - --tw-bg-opacity: 1; - background-color: rgba(239, 68, 68, var(--tw-bg-opacity)); -} - .bg-red-600 { --tw-bg-opacity: 1; background-color: rgba(220, 38, 38, var(--tw-bg-opacity)); } -.bg-yellow-600 { - --tw-bg-opacity: 1; - background-color: rgba(217, 119, 6, var(--tw-bg-opacity)); -} - .bg-green-50 { --tw-bg-opacity: 1; background-color: rgba(236, 253, 245, var(--tw-bg-opacity)); @@ -884,21 +901,11 @@ select { background-color: rgba(96, 165, 250, var(--tw-bg-opacity)); } -.bg-blue-500 { - --tw-bg-opacity: 1; - background-color: rgba(59, 130, 246, var(--tw-bg-opacity)); -} - .bg-blue-600 { --tw-bg-opacity: 1; background-color: rgba(37, 99, 235, var(--tw-bg-opacity)); } -.bg-pink-600 { - --tw-bg-opacity: 1; - background-color: rgba(219, 39, 119, var(--tw-bg-opacity)); -} - .bg-light-blue-50 { --tw-bg-opacity: 1; background-color: rgba(240, 249, 255, var(--tw-bg-opacity)); @@ -929,31 +936,16 @@ select { background-color: rgba(55, 65, 81, var(--tw-bg-opacity)); } -.hover\:bg-red-400:hover { - --tw-bg-opacity: 1; - background-color: rgba(248, 113, 113, var(--tw-bg-opacity)); -} - .hover\:bg-red-700:hover { --tw-bg-opacity: 1; background-color: rgba(185, 28, 28, var(--tw-bg-opacity)); } -.hover\:bg-green-400:hover { - --tw-bg-opacity: 1; - background-color: rgba(52, 211, 153, var(--tw-bg-opacity)); -} - .hover\:bg-green-500:hover { --tw-bg-opacity: 1; background-color: rgba(16, 185, 129, var(--tw-bg-opacity)); } -.hover\:bg-blue-400:hover { - --tw-bg-opacity: 1; - background-color: rgba(96, 165, 250, var(--tw-bg-opacity)); -} - .hover\:bg-blue-700:hover { --tw-bg-opacity: 1; background-color: rgba(29, 78, 216, var(--tw-bg-opacity)); @@ -1181,10 +1173,6 @@ select { height: 0.25rem; } -.h-2 { - height: 0.5rem; -} - .h-4 { height: 1rem; } @@ -1205,10 +1193,6 @@ select { height: 2rem; } -.h-9 { - height: 2.25rem; -} - .h-10 { height: 2.5rem; } @@ -1225,10 +1209,6 @@ select { height: 0.375rem; } -.h-2\.5 { - height: 0.625rem; -} - .h-full { height: 100%; } @@ -1409,10 +1389,6 @@ select { margin-right: -0.375rem; } -.max-w-none { - max-width: none; -} - .max-w-sm { max-width: 24rem; } @@ -2156,10 +2132,6 @@ select { width: 0.25rem; } -.w-2 { - width: 0.5rem; -} - .w-4 { width: 1rem; } @@ -2176,10 +2148,6 @@ select { width: 2rem; } -.w-9 { - width: 2.25rem; -} - .w-10 { width: 2.5rem; } @@ -2204,10 +2172,6 @@ select { width: 0.375rem; } -.w-2\.5 { - width: 0.625rem; -} - .w-1\/12 { width: 8.333333%; } @@ -2473,7 +2437,77 @@ svg.jtk-connector.jtk-hover path { color: rgba(96, 165, 250, var(--tw-text-opacity)); } +.w-2-5 { + width: 0.625rem; +} + +.h-2-5 { + height: 0.625rem; +} + +.space-x-0-5 > :not([hidden]) ~ :not([hidden]) { + --tw-space-x-reverse: 0; + margin-right: calc(0.125rem * var(--tw-space-x-reverse)); + margin-left: calc(0.125rem * calc(1 - var(--tw-space-x-reverse))); +} + @media (min-width: 640px) { + .sm\:prose-red a { + color: #dc2626; + } + + .sm\:prose-red a code { + color: #dc2626; + } + + .sm\:prose-yellow a { + color: #d97706; + } + + .sm\:prose-yellow a code { + color: #d97706; + } + + .sm\:prose-green a { + color: #059669; + } + + .sm\:prose-green a code { + color: #059669; + } + + .sm\:prose-blue a { + color: #2563eb; + } + + .sm\:prose-blue a code { + color: #2563eb; + } + + .sm\:prose-pink a { + color: #db2777; + } + + .sm\:prose-pink a code { + color: #db2777; + } + + .sm\:prose-light-blue a { + color: #0284c7; + } + + .sm\:prose-light-blue a code { + color: #0284c7; + } + + .sm\:prose-cool-gray a { + color: #4b5563; + } + + .sm\:prose-cool-gray a code { + color: #4b5563; + } + .sm\:divide-y-0 > :not([hidden]) ~ :not([hidden]) { --tw-divide-y-reverse: 0; border-top-width: calc(0px * calc(1 - var(--tw-divide-y-reverse))); @@ -2670,6 +2704,62 @@ svg.jtk-connector.jtk-hover path { } @media (min-width: 768px) { + .md\:prose-red a { + color: #dc2626; + } + + .md\:prose-red a code { + color: #dc2626; + } + + .md\:prose-yellow a { + color: #d97706; + } + + .md\:prose-yellow a code { + color: #d97706; + } + + .md\:prose-green a { + color: #059669; + } + + .md\:prose-green a code { + color: #059669; + } + + .md\:prose-blue a { + color: #2563eb; + } + + .md\:prose-blue a code { + color: #2563eb; + } + + .md\:prose-pink a { + color: #db2777; + } + + .md\:prose-pink a code { + color: #db2777; + } + + .md\:prose-light-blue a { + color: #0284c7; + } + + .md\:prose-light-blue a code { + color: #0284c7; + } + + .md\:prose-cool-gray a { + color: #4b5563; + } + + .md\:prose-cool-gray a code { + color: #4b5563; + } + .md\:block { display: block; } @@ -2684,6 +2774,62 @@ svg.jtk-connector.jtk-hover path { } @media (min-width: 1024px) { + .lg\:prose-red a { + color: #dc2626; + } + + .lg\:prose-red a code { + color: #dc2626; + } + + .lg\:prose-yellow a { + color: #d97706; + } + + .lg\:prose-yellow a code { + color: #d97706; + } + + .lg\:prose-green a { + color: #059669; + } + + .lg\:prose-green a code { + color: #059669; + } + + .lg\:prose-blue a { + color: #2563eb; + } + + .lg\:prose-blue a code { + color: #2563eb; + } + + .lg\:prose-pink a { + color: #db2777; + } + + .lg\:prose-pink a code { + color: #db2777; + } + + .lg\:prose-light-blue a { + color: #0284c7; + } + + .lg\:prose-light-blue a code { + color: #0284c7; + } + + .lg\:prose-cool-gray a { + color: #4b5563; + } + + .lg\:prose-cool-gray a code { + color: #4b5563; + } + .lg\:px-8 { padding-left: 2rem; padding-right: 2rem; @@ -2695,7 +2841,117 @@ svg.jtk-connector.jtk-hover path { } @media (min-width: 1280px) { + .xl\:prose-red a { + color: #dc2626; + } + + .xl\:prose-red a code { + color: #dc2626; + } + + .xl\:prose-yellow a { + color: #d97706; + } + + .xl\:prose-yellow a code { + color: #d97706; + } + + .xl\:prose-green a { + color: #059669; + } + + .xl\:prose-green a code { + color: #059669; + } + + .xl\:prose-blue a { + color: #2563eb; + } + + .xl\:prose-blue a code { + color: #2563eb; + } + + .xl\:prose-pink a { + color: #db2777; + } + + .xl\:prose-pink a code { + color: #db2777; + } + + .xl\:prose-light-blue a { + color: #0284c7; + } + + .xl\:prose-light-blue a code { + color: #0284c7; + } + + .xl\:prose-cool-gray a { + color: #4b5563; + } + + .xl\:prose-cool-gray a code { + color: #4b5563; + } } @media (min-width: 1536px) { -} + .\32xl\:prose-red a { + color: #dc2626; + } + + .\32xl\:prose-red a code { + color: #dc2626; + } + + .\32xl\:prose-yellow a { + color: #d97706; + } + + .\32xl\:prose-yellow a code { + color: #d97706; + } + + .\32xl\:prose-green a { + color: #059669; + } + + .\32xl\:prose-green a code { + color: #059669; + } + + .\32xl\:prose-blue a { + color: #2563eb; + } + + .\32xl\:prose-blue a code { + color: #2563eb; + } + + .\32xl\:prose-pink a { + color: #db2777; + } + + .\32xl\:prose-pink a code { + color: #db2777; + } + + .\32xl\:prose-light-blue a { + color: #0284c7; + } + + .\32xl\:prose-light-blue a code { + color: #0284c7; + } + + .\32xl\:prose-cool-gray a { + color: #4b5563; + } + + .\32xl\:prose-cool-gray a code { + color: #4b5563; + } +} \ No newline at end of file diff --git a/src/designer/elsa-workflows-studio/src/components.d.ts b/src/designer/elsa-workflows-studio/src/components.d.ts index 49d8d45a6..eb9eef061 100644 --- a/src/designer/elsa-workflows-studio/src/components.d.ts +++ b/src/designer/elsa-workflows-studio/src/components.d.ts @@ -131,10 +131,12 @@ export namespace Components { "propertyModel": ActivityDefinitionProperty; } interface ElsaStudioRoot { + "monacoLibPath": string; "serverUrl": string; } interface ElsaStudioWorkflowDefinitionsEdit { "match": MatchResults; + "monacoLibPath": string; "serverUrl": string; } interface ElsaStudioWorkflowDefinitionsList { @@ -602,10 +604,12 @@ declare namespace LocalJSX { "propertyModel"?: ActivityDefinitionProperty; } interface ElsaStudioRoot { + "monacoLibPath"?: string; "serverUrl"?: string; } interface ElsaStudioWorkflowDefinitionsEdit { "match"?: MatchResults; + "monacoLibPath"?: string; "serverUrl"?: string; } interface ElsaStudioWorkflowDefinitionsList { diff --git a/src/designer/elsa-workflows-studio/src/components/controls/elsa-context-menu/readme.md b/src/designer/elsa-workflows-studio/src/components/controls/elsa-context-menu/readme.md index 5c9aff4c4..3411bafb5 100644 --- a/src/designer/elsa-workflows-studio/src/components/controls/elsa-context-menu/readme.md +++ b/src/designer/elsa-workflows-studio/src/components/controls/elsa-context-menu/readme.md @@ -17,16 +17,16 @@ ### Used by - - [elsa-studio-workflow-registry](../../dashboard/pages/elsa-studio-workflow-registry) - [elsa-workflow-definitions-list-screen](../../screens/workflow-definition-list/elsa-workflow-definitions-screen) - [elsa-workflow-instances-list-screen](../../screens/workflow-instances-list/elsa-workflow-instances-list-screen) + - [elsa-workflow-registry-list-screen](../../screens/workflow-registry-list/elsa-workflow-registry-list-screen) ### Graph ```mermaid graph TD; - elsa-studio-workflow-registry --> elsa-context-menu elsa-workflow-definitions-list-screen --> elsa-context-menu elsa-workflow-instances-list-screen --> elsa-context-menu + elsa-workflow-registry-list-screen --> elsa-context-menu style elsa-context-menu fill:#f9f,stroke:#333,stroke-width:4px ``` diff --git a/src/designer/elsa-workflows-studio/src/components/controls/elsa-monaco/elsa-monaco-utils.ts b/src/designer/elsa-workflows-studio/src/components/controls/elsa-monaco/elsa-monaco-utils.ts index 8e247e57d..440af3953 100644 --- a/src/designer/elsa-workflows-studio/src/components/controls/elsa-monaco/elsa-monaco-utils.ts +++ b/src/designer/elsa-workflows-studio/src/components/controls/elsa-monaco/elsa-monaco-utils.ts @@ -9,7 +9,7 @@ export function initializeMonacoWorker(libPath?: string) { return; if (!libPath) - libPath = 'build/assets/js'; + libPath = 'assets/js'; const origin = document.location.origin; const baseUrl = `${origin}/${libPath}/monaco-editor/min`; diff --git a/src/designer/elsa-workflows-studio/src/components/controls/elsa-pager/elsa-pager.tsx b/src/designer/elsa-workflows-studio/src/components/controls/elsa-pager/elsa-pager.tsx index d206708fb..92e0fdd9e 100644 --- a/src/designer/elsa-workflows-studio/src/components/controls/elsa-pager/elsa-pager.tsx +++ b/src/designer/elsa-workflows-studio/src/components/controls/elsa-pager/elsa-pager.tsx @@ -136,7 +136,7 @@ export class ElsaPager {