Commit graph

44 commits

Author SHA1 Message Date
Sipke Schoorstra b5d38b6604 Add methods to handle activity run asynchronously flag
New methods have been added to handle the custom property 'runAsynchronously' on a JsonObject activity. These methods will help in getting and setting a value that indicates whether a specified activity can trigger a workflow asynchronously. This additional level of control can enhance workflow execution based on specific requirements.
2023-12-18 16:04:21 +01:00
Sipke Schoorstra e9f1aade15 Add IsWorkflowDefinitionActivity method to ActivityExtensions
A new method, GetIsWorkflowDefinitionActivity, has been added to the ActivityExtensions class. This method checks a given JsonObject representing an activity to determine if it's a workflow definition activity. It returns true if the activity indeed is; otherwise, it returns false.
2023-12-11 12:44:19 +01:00
Sipke Schoorstra c97282f7d5 Remove ApiHttpMessageHandler and update ElsaClient configuration
The ApiHttpMessageHandler and the related configuration in ElsaClientOptions have been removed. The configuration for creating Api clients in DependencyInjectionExtensions has been updated to handle these changes. This includes the addition of a retry policy in case of transient HTTP error and changing the way clients are created to use the HttpClientFactory directly.
2023-12-09 20:44:11 +01:00
Sipke Schoorstra 225a99f39d
Bulk Import + Export of Workflow Definitions and Instances (#4643)
* Implement bulk export of workflow definitions

* Update Import endpoint with support for file uploads

* Update Import endpoint to return imported workflow count

* Implement workflow instance (bulk) export

* Implement workflow state, bookmark, workflow + activity execution export

* Remove globally imported usings
2023-11-22 14:31:48 +01:00
Sipke Schoorstra e4d6ad22c4
Decouple Expression Types (#4622)
* Refactor Expressions model

* Enable expression type filtering

* Implement dynamic enablement of satelite dependencies
2023-11-14 20:44:42 +01:00
jdevillard 1b48305418
Enhancement/runtime options provider#4491 (#4614)
* add Endpoint to fetch data from options provider

* add Api Client Contract

* add context object in Endpoint

* Update Api Client Contract for Context

---------

Co-authored-by: Jérémie DEVILLARD <jdevillard@users.noreply.github.com>
2023-11-09 13:01:51 +01:00
Sipke Schoorstra 67c16a3c4c
Add WorkflowContext client API (#4585) 2023-10-29 11:36:01 +01:00
Sipke Schoorstra de4cf34c47 Expose HTTP Message Handler factory 2023-10-26 21:10:07 +02:00
Sipke Schoorstra 02ec4c2391
Include NodeId for unique addressability within graph (#4575)
* Leverage ActivityNode for graph querying

* Make workflow definition activity Root port non-browsable

* Update Join activity

* Make NodeId first-class citizen
2023-10-25 22:46:06 +02:00
Sipke Schoorstra 3281523c5c Fix duplicate HTTP client handler registration
#4543
2023-10-18 22:36:54 +02:00
Sipke Schoorstra 03b608410b
Incidents (#4436)
* Implement Incident Strategy interface and resolver

* Add ActivityIncident model

* Add IncidentCount and Incidents properties and update migrations

* Expose incident strategies API endpoint

* Update API client with Incident Strategy models

* Replace Fault with Incidents

* Register fault status when any children have faulted

* Map incident count

* Remove unnecessary AlreadyCompleted result

* Ensure next activities are scheduled only if activity completed normally

* Incident roundtrip and fix workflow instance realtime updates

* Remove unused variable

* Add integration tests
2023-09-14 10:50:02 +02:00
Ray 811f8b4c93
V3 get type definitions request (#4353)
* Update IWorkflowDefinitionsApi.cs

Add GetTypeDefinitions Refit request

* Create GetTypeDefinitionsRequest.cs

Add the Request model.

* Refactor WorkflowDefinitionRequest to seperate resource.

---------

Co-authored-by: Raymon Boer <r.boer@sense-cloud.nl>
2023-08-24 21:44:04 +02:00
Sipke Schoorstra 6a66c3f0ae Add message handler provider API 2023-08-20 20:02:59 +02:00
Sipke Schoorstra 3ff0655fac Add Elsa API client configuration API 2023-08-19 13:37:17 +02:00
RuslanSay 0ea9399f81
Add to ElsaClientOptions.ConfigureHttpClient access to the service provider (#4318) 2023-08-11 23:02:36 +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 c429fe6fcc Update API client 2023-07-31 22:37:57 +02:00
Sipke Schoorstra 0c8bbb935c Implement real time workflow update broadcasting using SignalR 2023-07-25 15:12:27 +02:00
Sipke Schoorstra e5e34c821b Add ActivityExecutionRecord entity, persistence and endpoints 2023-07-22 21:05:33 +02:00
Sipke Schoorstra 6ae59f06d6 Include activity version with execution log 2023-07-18 11:20:00 +02:00
Sipke Schoorstra 1a228a0fe7 Cleanup 2023-07-16 22:15:53 +02:00
Sipke Schoorstra 2b363298e0 Add XML comments 2023-07-16 15:13:48 +02:00
Sipke Schoorstra ae4dce9119 Refactor API client to handle activities as JsonObjects 2023-07-16 15:08:13 +02:00
Sipke Schoorstra 77b1a97682 Cleanup unused code and blanks 2023-07-09 12:33:26 +02:00
Sipke Schoorstra 8bf20732be Restructure folders in API client and add WorkflowInstances API client 2023-07-07 13:53:44 +02:00
Sipke Schoorstra f216316c68 Implement case insensitive dictionary key lookup 2023-07-07 08:56:16 +02:00
Sipke Schoorstra b5e882efc0 Add support for mixed-cased JSON keys 2023-07-06 19:32:30 +02:00
Sipke Schoorstra 13db9bc1ac Add retract client API 2023-07-04 11:57:01 +02:00
Sipke Schoorstra b7c73d555a Fix extension to return default value in case key exists but for null 2023-07-03 15:28:02 +02:00
Sipke Schoorstra 159f27b635 Add activation strategy API client 2023-07-02 18:59:13 +02:00
Sipke Schoorstra 143fbefd55 Add API client for variable types and storage drivers 2023-07-01 22:18:04 +02:00
Sipke Schoorstra fe5cfc220d Add extensions to get and set CanStartWorkflow to API client 2023-07-01 11:39:40 +02:00
Sipke Schoorstra 31abda7d55 Add activity extensions to access metadata properties 2023-06-30 15:52:53 +02:00
Sipke Schoorstra 336e55a230 Add FlowSwitch resolver to API client 2023-06-29 14:51:00 +02:00
Sipke Schoorstra 171e78d8ab Update API client models 2023-06-23 22:38:37 +02:00
Sipke Schoorstra ac57c07e7c Update API client models 2023-06-21 11:10:07 +02:00
Sipke Schoorstra 75eaf1020d Refactor API client model 2023-06-19 15:32:26 +02:00
Sipke Schoorstra 4689e83cf9 Update API client 2023-06-10 20:32:06 +02:00
Sipke Schoorstra 144d9d0aa4 Update Elsa API Client with ActivityDescriptors API 2023-06-10 15:33:32 +02:00
Sipke Schoorstra 5f02e744e2 Add login API client 2023-05-19 14:36:16 +02:00
Sipke Schoorstra c07e561ad3 Update API client 2023-05-16 22:37:08 +02:00
Sipke Schoorstra 3a2b7f40bc Restructure API client 2023-05-16 20:03:12 +02:00
Sipke Schoorstra 3ec9df87c1 Initial work on Elsa Client 2023-04-01 16:15:35 +02:00
Sipke Schoorstra 30c4e5b1e7
Implement API key authentication (#3834)
* Implement API key storage

* Implement API key validation

* Implement EF Core providers
2023-03-26 23:53:17 +02:00