Commit graph

96 commits

Author SHA1 Message Date
Sipke Schoorstra 47ed8e3571
Cleanup IActivity interface (#4010)
* Update activity names and descriptions

* Rename JS functions

* Make endpoint class internal

* Pre-create workflow instance ID when dispatching workflows
2023-05-08 22:38:59 +02:00
Sipke Schoorstra 307962c0f5 Revert "Simplify IActivity (#3991)"
This reverts commit ae9f4104c6.
2023-05-03 10:24:36 +02:00
Sipke Schoorstra ae9f4104c6
Simplify IActivity (#3991)
* Cleanup IActivity interface and update activity ctors

* Increase XML comment coverage
2023-05-02 20:05:36 +02:00
Sipke Schoorstra 437eb3f9dc Update workflow definition reference updater to include version ID 2023-05-02 09:57:44 +02:00
gurkanguran 453dbd2196
Auto update consuming workflows' composite activity references (#3950)
* Update consuming workflows when the composite activity published

* Display auto-update option and notifications in designer

* Update consuming workflows with a separate api call

* Display notification only if there are consuming workflows found

---------

Co-authored-by: Gürkan Güran <gguran@interfirst.com>
Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2023-04-27 17:33:48 +02:00
gurkanguran e9f3cb9329
Publish workflows imported programatically (#3958) 2023-04-27 14:52:07 +02:00
Sipke Schoorstra 0ea463fdd0
Add JSON workflow provider (#3955)
* Refactor import models

* Update API endpoints

* Add console sample to run workflow from JSON

* Add FluentStorage provider for JSON workflows + sample
2023-04-25 22:15:11 +02:00
Sipke Schoorstra 10c5d0c848 Fix serialization bug and update AllInOne reference app with support for webhooks 2023-04-24 13:44:34 +02:00
Sipke Schoorstra eb2c866fc0 Update CompleteTask endpoint to use permissions instead of policy 2023-04-22 20:43:54 +02:00
Sipke Schoorstra 81c85fbdbf Update Execute endpoint to return workflow state 2023-04-21 23:59:39 +02:00
Sipke Schoorstra 53dcd11f17
Send HTTP error when workflow faults (#3937)
* Implement workflow fault handling in HTTP context

* Handle faulted workflows across process boundariesl
2023-04-20 20:45:27 +02:00
Gürkan Güran 6cbad8b5d7 Completed missing bulk actions functionalities 2023-04-20 09:59:09 +02:00
Sipke Schoorstra 10c721786a
Workflow Context Updates (#3933)
* Incremental work on context activity

* Add extensions to get and set context params

* Update polymorphic converter to handle objects serialized to primitives

* Add convenience factory methods for SetWorkflowContextParameter activity

* Add API endpoint to list available provider types

* Implement workflow context provider selection property panel

* Update context provider picker to be based on selected providers

* Make SendEmail support different types of input for To, Cc and Bcc fields

* Fix EF Core WorkflowDefinitionStore to use polymorphic serialization for metadata

* Add JS support for getting workflow contexts

* Add Installed Features endpoint

* Update polymorphic object converter to skip start array

* Update activity execution middleware to handle background execution

* Fix sample program to include activity middleware for contexts

* Comments and cleanup
2023-04-19 21:28:58 +02:00
Sipke Schoorstra 548bb34d3e Cleanup 2023-04-18 21:41:32 +02:00
gurkanguran ecb95cc35d
Display generated version number on the designer (#3923)
* Implemented get version endpoint

* Get version from backend to display on designer

* Updated github pipelines

---------

Co-authored-by: Gürkan Güran <gguran@interfirst.com>
2023-04-18 21:29:55 +02:00
Sipke Schoorstra c3ed7e7865
Improve JSON serializationfor workflow state (#3913)
* Incremental work on WorkflowStateSerializer

* Update Flow HTTP Request activity to default to Done outcome

* Fix reference handling

* Fix polymorphic object converter

* Add comments

* Add support for registering type alias during DI setup via options

* Fix trigger and bookmark payload persistence

* Update sample model

* Add support for custom dictionary types

* Split general serializer options provider into focused serializer services

* Formatting

* Update migrations
2023-04-17 00:11:58 +02:00
Gürkan Güran 20d9b79abe Fix unpublish button 2023-04-14 17:36:41 +02:00
Sipke Schoorstra 56b284c230
Quartz.NET integration (#3887)
* update Quartz.NET module

* Small cleanup

* Fix Timer activity
2023-04-11 20:17:15 +02:00
Sipke Schoorstra 7a09944732
Refactor scheduling and background activity execution (#3884)
* Refactor background activity execution

* Refactor scheduler

* Remove Jobs module

* Add XML comments
2023-04-09 23:35:32 +02:00
MariusVuscanNx 45f27f91f5
Import publish execute integration test (#3872)
* Import publish execute integration test

* Update test

* Extracted import logic into WorkflowDefinitionImporter

* Removed the WorkflowDefinitionRequest model and done a model rename

---------

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2023-04-05 19:07:04 +02:00
Sipke Schoorstra 3045725790 Prevent composite root activities from being returned after POST and PUBLISH 2023-04-03 19:48:37 +02:00
Sipke Schoorstra a11a7c0a12 Cleanup 2023-04-02 19:19:12 +02:00
Sipke Schoorstra 3ec9df87c1 Initial work on Elsa Client 2023-04-01 16:15:35 +02:00
gurkanguran e4789cf85b
Reference variable with Id instead of Name to prevent issues with updating name (#3814)
* Implemented Id property for variable for memory reference

* Removed debugger

* Fixed the issue with memory block reference of variable

* Fixed infinite recursive calling issue

* Handle variables with ID already containing

* Update JS variable getters based on declared variables

* Prevent Export from including composite roots

* Update JS evaluator with support for reading and writing variables in scope

* Fix polymorphic converter with support for arrays

---------

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2023-03-22 22:50:26 +01:00
Sipke Schoorstra 57882a5a80 Add support for triggering event synchronous and specific workflow instance targeting 2023-03-20 21:38:00 +01:00
Sipke Schoorstra fad27d0fb0
Refactor composite activity input and scoped memory (#3815)
* Incremental work

* Enable control over when to include full compositie root

* Cleanup

* Update WorkflowDefinitionActivity

* Implement input as variables

* Delete unused class

* Remove less common types

* Rename ExpandoObject to JSON

* Implement variable scoping

* Remove parent/child relationship from MemoryRegister

* Add support for sending input to "trigger event" endpoint

* Add support for configuring input storage driver

* Remove unused namespace imports

* Auto-register activity types when running a workflow

* Fix missing variables from containers
2023-03-20 19:55:11 +01:00
Sipke Schoorstra dc2dcb44a9 Fix missing fields on export 2023-03-15 21:40:28 +01:00
Sipke Schoorstra c1dca8fbe2
Fixes for Journal (#3792)
* Include NodeID in execution log and update workflow journal component

* Recreate Runtime migrations
2023-03-14 08:03:44 +01:00
Sipke Schoorstra d8b95db04e Add support for providing workflow input via dispatch endpoint 2023-03-13 12:31:23 +01:00
Sipke Schoorstra d45f6f2f85 Fix delete workflow definition version 2023-03-12 20:59:11 +01:00
Sipke Schoorstra 297d6eaa65 Fix loss of input + variables 2023-03-08 19:39:56 +01:00
Sipke Schoorstra e6ce1cebb3 Stash 2023-03-08 00:31:51 +01:00
Sipke Schoorstra 21f8980adb Improve workflow versioning logic 2023-03-07 23:31:09 +01:00
Sipke Schoorstra 1ac64b8197
Store & display evaluated activity state in workflow instance viewer (#3776)
* Implement activity state persistence

* Add sort API

* Implement activity state view

* Update EF Core migrations
2023-03-07 21:40:53 +01:00
Sipke Schoorstra 1a713b4619
Rename "services" to "contracts" and "implementations" to "services" (#3758) 2023-03-03 22:47:23 +01:00
Sipke Schoorstra 00bd3228f6 Restructure contracts vs services namespace 2023-03-03 14:48:05 +01:00
Ifran Laloe 280b905092
Fix Version Constraint error when saving workflows (#3752)
* Fix Version Constraint error when saving workflows

* Moved publishing event to the start of PublishAsync()

---------

Co-authored-by: Ifran Laloe <i.laloe@betabit.nl>
2023-03-02 10:31:24 +01:00
Sipke Schoorstra bb669c2cfe
Sycnrhonize access to publish / save workflow definition endpoint (#3743)
* Refactor SaveAsync and Store APIs

* Synchronize Publish endpoint
2023-02-28 15:14:45 +01:00
Sipke Schoorstra 431db1c353
Refactor store APIs (#3740)
* Add array support for input/output arguments

* Add alias support for nullable types

* Refactor workflow definition store API

* Fix array and ui hint setting of input/output definition

* Refactor workflow instance store API

* Add XML comments

* Refactor trigger and bookmark store API
2023-02-27 14:14:50 +01:00
Sipke Schoorstra 5b1a5cba7f
Enable composite activity version control (#3732)
* Update activity to store settings about which version to use

* Break up big function

* Implement activity version control UI
2023-02-23 11:46:03 +01:00
Sipke Schoorstra 5f6454b59c
Workflow as Activity - input/output (#3699)
* Restructure component folders

* Restructure JavaScript module folders

* Remove ActivityType field from descriptor 

No longer necessary.

* Incremental work on synthetic properties

* Implement synthetic property persistence

* Add JS functions to return input from composed activity

* Cleanup

* Take into account versioning

* Fix versioning

* Add Output management

* Implement output handling
2023-02-13 12:15:20 +01:00
Sipke Schoorstra 0dd3e2bad8
Tweaks and fixes (#3672)
* Various additions and tweaks

* Fix WriteHttpResponse when no content type provided

* Bump designer version

* Return when sending response

* Remove faulty validation
2023-02-03 14:29:44 +01:00
Sipke Schoorstra 41b356a02b Refactor draft version selection 2023-01-30 17:29:54 +01:00
gurkanguran 407bfa6913
Use workflow definition as activity (#3654)
* Implemented usage of workflow definitions as activities

* Updated designer

* Removed activity definitions module

* Allow user to mark workflow to be used as activity

* Refactor

* Refactor

* Cleanup csproj

* Cleanup WorkflowDefinitionActivity

* Pascalize typename

* Fix JS intellisense initial load issue

* Add XML comments

* Add Jobs dependency

* Hide Composite root port from designer

* Move finding workflow activities logic to lower level

* Generate unique identities across hierarchy

* Refactor

* Revert "Generate unique identities across hierarchy"

This reverts commit 74f5e7830309ee76af6ab3a000a5e1ec41f1e90c.

* Implement unique node IDs

* Introduce new VersionOptions option

* Remove unused namespaces

---------

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2023-01-28 00:36:03 +01:00
Sipke Schoorstra 6dba654e9f Make HTTP bookmark processing reusable 2023-01-24 21:03:50 +01:00
Sipke Schoorstra 28e9922060
JavaScript intellisense (#3639)
* Incremental work

* Incremental work

* Incremental work

* Initial support for intellisense

* Implement variable type definition provider
2023-01-19 14:09:58 +01:00
Sipke Schoorstra 894cd00218 Add XML comments to Execute endpoint 2023-01-14 12:24:32 +01:00
Sipke Schoorstra 006479c2b7
Finish Azure Service Bus activities (#3617)
* Incremental work on Azure Service Bus

* Update Azure Service Bus activities
2023-01-12 11:59:31 +01:00
Sipke Schoorstra 6994f2e24d
Webhooks (#3598)
* Incremental work

* Implement samples

* Update samples

* Small refactorings

Closes #3592
2023-01-05 13:55:08 +01:00
Sipke Schoorstra b4dba6ffe5
Add PublishEvent activity and implement MassTransit dispatcher (#3593) 2023-01-04 15:28:28 +01:00