Commit graph

156 commits

Author SHA1 Message Date
Sipke Schoorstra ca25b78457
Fix Break behavior (#4365)
* Fix Break behavior

* Ensure removal of completion callbacks
2023-08-26 01:11:10 +02:00
Sipke Schoorstra 4d37c2a1da
Fix Default Workflow Runtime Race condition (#4362)
* Refactor Telnyx activities to use instance ID for correlating events

* Ensure SetVariable sets value in correct scope

* Fix race condition between new instances that are being resumed

* Fix tests
2023-08-24 21:41:45 +02:00
Sipke Schoorstra 7c99037de2
EF Core NoTracking (#4323)
* Use NoTracking for EF Core

* Use Activity ID as Node ID for modern tooling

* Fix DispatchWorkflow activity

* Update tests and remove redundant ToolVersion
2023-08-12 16:41:16 +02:00
Sipke Schoorstra 3ba6a548e1
Update ForEach activity with local variables (#4315)
* Update ForEach activity with local variables

* Add option to include activity instance ID as part of bookmark hash
2023-08-11 21:59:39 +02:00
Sipke Schoorstra 62ae3b1f6e
Add ability to push variables to scheduled work (#4306) 2023-08-09 22:35:44 +02:00
Sipke Schoorstra a8079090aa
Telnyx fixes (#4300)
* Update flowchart to consider activity instance completion

* Update Telnyx activities to leverage workflow inbox

* Fix Telnyx webhook activities

* Fix TransferCall and IncomingCall activities

* Turn collections into arrays for JS

* Telnyx activity fixes
2023-08-08 20:50:21 +02:00
Sipke Schoorstra 166e11c416
Fix loss of source file + line number (#4293)
Fixes #4287
2023-08-06 20:55:24 +02:00
Sipke Schoorstra 17a59eaa97 Use List instead of HashSet
Fixes #4286
2023-08-05 10:35:48 +02:00
Sipke Schoorstra 4faf40b3ae Improve Telnyx activities 2023-08-04 22:14:41 +02:00
Sipke Schoorstra 815b544f53 Update Flowchart completion logic
In addition to taking into account scheduled work, also check if there are actual activity instances still running
2023-08-04 11:45:07 +02:00
Sipke Schoorstra 226c25169f Improve Flowchart "Start" activity logic
With this change, the user has better control over what activity to use as the starting node. Originally, the designer wouls store the ID of the first activity to have dropped on the designer, which would cause unexpected results when later adding another activity as the root node. The logic is now changed to:

1. Use the trigger node if that node was triggered.
2. Use the Start node, if there is one.
3. Use the first activity that has no inbound connections.
4. Use the first activity in the collection.
2023-08-04 10:15:15 +02:00
Sipke Schoorstra e5e34c821b Add ActivityExecutionRecord entity, persistence and endpoints 2023-07-22 21:05:33 +02:00
Sipke Schoorstra d746456330 Use activity ID as Node ID for workflows created with tool version >= 3 2023-07-21 18:43:31 +02:00
Sipke Schoorstra 2c3e5719ce Fix that flowchart name was not read from JSON 2023-07-16 22:08:08 +02:00
Sipke Schoorstra b9ac7f2c4b Harden Flowchart and Connection JSON serializers 2023-07-12 18:33:19 +02:00
Sipke Schoorstra 9671d85013 Cleanup namespaces 2023-07-09 14:02:41 +02:00
Sipke Schoorstra fe2a897a30 Restructure models in Workflows.Core 2023-07-09 13:12:13 +02:00
Sipke Schoorstra 299f9248f0 Update flowchart JSON converter to handle undefined connections array 2023-06-30 11:23:12 +02:00
gurkanguran f0814f4f64
Fixes the issue with httpendoint not being suspended #4143 (#4171)
* Fixes the issue with httpendoint not being suspended #4143

* Simplify HttpEndpoint and bookmark processor

* Fix issue with null workflow state ID

* Remove implicit instalment of EF Core provider for Trigger and Bookmark store

---------

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2023-06-28 20:55:57 +02:00
Sipke Schoorstra e0dd53b1ad Make collections in activity descriptor read-only 2023-06-28 18:07:16 +02:00
Sipke Schoorstra 90d1905e46 Cleanup 2023-06-28 12:38:06 +02:00
Sipke Schoorstra f84617a259 Make connection JON converter more resilient 2023-06-27 10:29:32 +02:00
Sipke Schoorstra 05680edb35 Move some flow activities to the Branching category 2023-06-24 13:15:11 +02:00
Sipke Schoorstra dab6ce622c Add backwards compatibility for customProperties <- applicationProperties 2023-06-18 22:13:15 +02:00
Sipke Schoorstra ce974a777f Rename application properties of flowchart activity for consistency 2023-06-18 22:06:54 +02:00
Sipke Schoorstra 8b05d89d43 Fix connection serialisation + front end connection error 2023-06-18 21:26:44 +02:00
Sipke Schoorstra b356cdb52b
Refactor connection model (#4146) 2023-06-18 14:32:48 +02:00
Sipke Schoorstra 6449969604 Fix workflow memory issues 2023-05-30 23:00:52 +02:00
Sipke Schoorstra 85bff3a528 Fix output serialization 2023-05-28 20:32:51 +02:00
MariusVuscanNx 5703584ea2
Added modes to the switch activities (#4067) 2023-05-25 22:55:17 +02:00
Sipke Schoorstra 0df76b73ef Generate default ID for flowchart if empty in converter 2023-05-24 14:21:58 +02:00
Sipke Schoorstra 2ae438002d Fix that flowchart doesn't complete
The issue was that the "has pending work" check considered *any* scheduled activity, regardless of the owner. Instead, the flowchart should check the scheduler for any work that *it* scheduled.
2023-05-10 21:46:11 +02:00
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 ed3581569b Make Parallel activity non-browsable
We don't have the right UI for this yet
2023-04-28 15:14:44 +02:00
Sipke Schoorstra a45b7e5fb2
Implement Onboarding sample (#3944)
* Add Parallel activity

* Update polymorphic converter to handle null values

* Add support for converting ExpandoObject into target type

* Update models in Webhooks module

* Add Onboarding sample projects

* Handle null values in converter

* Add error logging to webhook invoker

* Allow activity resumption callbacks to be static

* Handle $ref when serializing expando objects
2023-04-23 20:03:52 +02:00
Sipke Schoorstra 1fd6b55c01 Rename variables in If activity 2023-04-21 23:59:59 +02:00
Sipke Schoorstra e21a6206bb Add Sequence constructor to accept activities array 2023-04-21 23:59:02 +02:00
Sipke Schoorstra 3eb304e1ec
Fix flowchart completion bug (#3928)
* Ensure Flowchart completes when no more work

* Fix workflow instance JSON serializer

* Add tests that cover flowchart completion
2023-04-18 21:28:23 +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
Sipke Schoorstra 17406c1db3 Implement activity cancellation 2023-04-13 20:05:14 +02:00
Sipke Schoorstra c978b8f9b5 Fix FlowDecision serialization 2023-04-07 22:46:20 +02:00
Sipke Schoorstra 5331476081 Add support for implicit looping constructs
Fixes the issue where a workflow would not complete, even though all flow chart activities executed
2023-04-06 22:37:53 +02:00
Sipke Schoorstra 53cb1cc63c Minor changes 2023-04-06 22:36:27 +02:00
gurkanguran b0e5061dce
Handle multiple output connections on import (#3857)
* Add XML comments, cleanup

* Incremental work on persisting "lost" connections

* Fixed issues with connections on import

---------

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
Co-authored-by: Gürkan Güran <gurkanguran@gurkanguransMBP.domain_not_set.invalid>
2023-03-30 10:19:05 +02:00
gurkanguran fab9470504
Importing workflows regardless of the order (#3833)
* Import workflows regardless of the order

* Store original activity json
2023-03-27 12:48:16 +02:00
Sipke Schoorstra cebf6f12e3 Add integration test for reading composite activity output 2023-03-24 22:25:48 +01:00
Sipke Schoorstra ac8e43cbed Ensure variables declared on a Composite activity get declared 2023-03-24 20:58:06 +01:00
Sipke Schoorstra 5aefa30886 Rename helper TryGet to GetOrDefault 2023-03-24 20:57:27 +01:00