Commit graph

779 commits

Author SHA1 Message Date
Craig Fowler 77a8f5be52 WIP #564 - Rename Elsa.Activities.Timers
The project/NuGet package for common logic relating to
temporal actions has been renamed:
  Elsa.Activities.Timers → Elsa.Activities.Temporal.Common

Whilst large numbers of files are "changed" by this commit,
it's just a straight move to a new path.
2021-02-28 20:49:34 +01:00
Craig Fowler ac44bf4535 WIP #564 - Bulk namepace change: Timers → Temporal
The name "Timers" is being replaced with "Temporal".  This commit
changes just the code (not project names/directories).
2021-02-28 20:49:34 +01:00
Jens Willmer 5ea9afb87e Time since option 2021-02-26 11:29:55 +01:00
Jens Willmer ab842d9193 Fixed code highlighting and auto complete 2021-02-26 11:28:55 +01:00
Sipke Schoorstra be718db55d Update WorkflowPersistenceBehavior in client package 2021-02-25 15:57:30 +01:00
Sipke Schoorstra 046cf53b06
Add WorkflowExecutionBurstStarting event to allow for persisting status changes before executing activities that potentially take a long time to finish (#666)
* Add WorkflowExecutionBurstStarting event to allow for persisting status changes before executing activities that potentially take a long time to finish

* Also persist workflow instance when burst is starting and behavior set to WorkflowPassCompleted
2021-02-25 15:43:12 +01:00
Sipke Schoorstra 5584ccfc90 Add sample project demonstrating invoking workflows from controllers 2021-02-25 13:33:14 +01:00
Sipke Schoorstra 3814ea6ff4
Update OutcomeResult to try a default connection via implicit "Done" outcome (#655)
* Update OutcomeResult to try a default connection via implicit "Done" outcome

* Add demo project for auto-connected activities
2021-02-24 14:29:56 +01:00
Craig Fowler b583c7f1a9
Resolves #485 - Add PurgeVariables functionality (#654)
* Trivial - Add VS Code workspace

* Trivial - Add VSCode build task & extra ignore

On GNU/Linux, auto-generated .directory
files should be ignored.

* WIP #485 - Boilerplate for unit test project

* WIP #485 - Add test coverage (Remove/RemoveAll)

* WIP #485 - Implement RemoveAll

* Remove redundant logic, covered by IDictionary

Per the following, the contract for a generic IDictionary,
the Remove method already deals with non-existent keys.

  https://docs.microsoft.com/en-us/dotnet/api/system.collections.generic.idictionary-2.remove?view=net-5.0#System_Collections_Generic_IDictionary_2_Remove__0_

* Resolve #485 - Add PurgeVariables methods

These are convenience methods upon ActivityExecutionContext
and WorkflowExecutionContext, consistent with their current APIs.

Also in this commit are tests for those simple methods.
There's a bit of test-scaffold as well included, such as:
* Autofixture Xunit2 integration
* New project for unit tests
* Customize attribute for avoiding crashes on Autofixture recursion
* Reusable specimen builder for creating IServiceProvider which
  resolves services from Autofixture
* Custonize attribute for a parameter to use that ^^ specimen builder
2021-02-24 14:29:03 +01:00
Sipke Schoorstra b2d6859331 Undo dictionary serialization processing 2021-02-22 16:27:43 +01:00
Sipke Schoorstra 7aa299553b Formatting 2021-02-21 11:00:35 +01:00
Sipke Schoorstra 05c15a2eaf Autogenerate switch case labels 2021-02-20 21:21:18 +01:00
Sipke Schoorstra f048e6d3ef
Refactor Switch builder API (#649)
* Refactor Switch builder API

* Remove unused namespaces
2021-02-20 20:47:56 +01:00
Sipke Schoorstra 0bf3fecf18 Rename IfElse to If 2021-02-20 15:56:32 +01:00
Sipke Schoorstra 49108a9544 Add missing bindings project 2021-02-20 15:42:49 +01:00
Sipke Schoorstra a29905bae2
Introduce AmbientActivityExecutionContext to support direct access to composite activity input properties from child activities (#648) 2021-02-20 15:23:39 +01:00
Sipke Schoorstra 15f1411838
Add support for scoped variables (#647) 2021-02-20 12:45:16 +01:00
Sipke Schoorstra 94dce2466b
Improve Finish activity (#646)
* Update Finish behavior to exit out of composite activities (including root workflows)

* Update Finish activity to evict contained scopes
2021-02-20 11:12:29 +01:00
Sipke Schoorstra a8fe51d15e Update samples 2021-02-17 21:47:28 +01:00
Sipke Schoorstra 7e33f7d23a Update samples 2021-02-17 21:43:56 +01:00
Sipke Schoorstra ce7222af28 Small MongoDB provider improvements 2021-02-17 21:43:42 +01:00
Sipke Schoorstra 3f173d6468 Implement unwinding of Switch activity 2021-02-17 21:43:16 +01:00
Sipke Schoorstra a67f07ac70 Small ForEach builder API improvements 2021-02-17 21:42:42 +01:00
Sipke Schoorstra bc496ddcc3 Small Workflow Context API improvements 2021-02-17 21:42:09 +01:00
Sipke Schoorstra 3280570252 Add convenience overload to enqueue workflow by type 2021-02-17 21:41:25 +01:00
Sipke Schoorstra 4d748c8371 Small SendEmail API enhancements 2021-02-17 21:40:50 +01:00
Sipke Schoorstra 86980a752e
Designer web component (#636)
* Activity picker dialog

* Activity picker

* Activity editor

* Activity property fields

* Blazor bindings for Elsa designer

* Only index triggers from published & enabled workflow definitions

* Handle case of null workflow blueprint not found

* Add check for zero duration and general scheduler exceptions

* Don't rethrow expression evaluation failure

* Workflow definition settings editor modal

* Integration between stencil and blazor 🎉

* Fix expression type conversion

* Add publish button and restructure components

* Fix up workflow definition ID vs workflow definition version ID

* Update EF Core migrations

* Fix Workflow Publisher

* Fix version display

* Add Import menu item
2021-02-16 09:55:13 +01:00
Sipke Schoorstra eda7bf0e0e Add convenience methods for activity execution logging 2021-02-13 14:58:05 +01:00
Sipke Schoorstra bf9129a661 Add convenience methods for activity execution logging 2021-02-13 14:38:21 +01:00
Sipke Schoorstra 73cf01a1e1 Update package.json 2021-02-13 11:16:35 +01:00
Sipke Schoorstra a02147d2ee Fix Finish + CompositeActivity 2021-02-13 11:16:20 +01:00
Sipke Schoorstra 1200705d91 Remove yarn.lock 2021-02-13 10:50:09 +01:00
Sipke Schoorstra 663dc47c89
Stash (#629) 2021-02-13 10:31:34 +01:00
Sipke Schoorstra f6268acfd1
Add Break activity (#628)
* Add Break activity

* Add activity type registration helpers

* Add sample project for Break activity
2021-02-13 10:29:03 +01:00
Sipke Schoorstra b18dff82cd Add ForEach sample project 2021-02-11 11:02:08 +01:00
Sipke Schoorstra e3bb394a03 Update ForEach to not store a copy of the list
Instead, rely on the Items property being set before each new iteration (which happens by default)
2021-02-11 11:01:57 +01:00
Sipke Schoorstra 040e132725 Cleanup 2021-02-11 10:45:34 +01:00
Sipke Schoorstra 565e54febd Formatting 2021-02-11 10:43:20 +01:00
Sipke Schoorstra 3e2e97ab60 Fix UserTask activity 2021-02-11 10:43:09 +01:00
TfcYe cec4f09d02
troubleshoot usertask demo (#604)
Co-authored-by: yeminhua <yeminhua@bianfeng.com>
2021-02-11 10:35:00 +01:00
Sipke Schoorstra 3dd255f5b0 Formatting 2021-02-11 10:23:10 +01:00
Sipke Schoorstra 3bd73c7f06 Simplify EF Core sample 2021-02-11 10:23:00 +01:00
Sipke Schoorstra f4fff18698 Update serializer settings to allow for objects with reference loops 2021-02-10 21:57:49 +01:00
Sipke Schoorstra 173107de12
Add Blazor Dashboard Workflow Instance List View extensibility (#617)
* Add extensibility support for workflow instance Context Menu
* Add extensibility support for workflow instance Bulk Actions
2021-02-10 12:53:45 +01:00
Sipke Schoorstra de6fce52d4 Re-enable re-queueing of messages for locked workflows and update timer activities to not execute if scheduled time lies in future 2021-02-09 21:31:09 +01:00
Sipke Schoorstra 3e12cd59ce Remove rescheduling for now 2021-02-09 18:46:50 +01:00
Sipke Schoorstra 446e645577
Workflow Instance Bulk Actions on Blazor Dashboard (#613)
* Implement bulk delete + retry
2021-02-09 11:18:12 +01:00
Sipke Schoorstra ccbb10d66f Update RunWorkflowDefinitionConsumer with distributed lock on correlation
Prevents creating duplicate workflow instances with same correlation ID and workflow definition.
2021-02-03 22:54:20 +01:00
Sipke Schoorstra 0c3ad4f9e1 Add tailwind.css 2021-02-02 12:42:47 +01:00
Sipke Schoorstra d0113605f3
Retry faulted workflow from dashboard (#607)
* Cleanup ClientApp assets

* Update favicons

* Implement Retry from dashboard option
2021-02-02 12:15:09 +01:00