Commit graph

729 commits

Author SHA1 Message Date
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
Sipke Schoorstra 27e2deab4d Update workflow server sample project with workflow state exporter 2023-03-24 11:11:27 +01: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 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 3128838fee Update tests 2023-03-09 14:49:40 +01:00
Sipke Schoorstra b1564bf646
HTTP Request with status codes as outcomes (#3768)
* Implement configurable expected status outcomes on HTTP Request activity

* Add Catch all outcome

* Implement dynamic port update
2023-03-07 13:45:58 +01:00
Sipke Schoorstra 1a713b4619
Rename "services" to "contracts" and "implementations" to "services" (#3758) 2023-03-03 22:47:23 +01:00
Sipke Schoorstra 6281299b6a
Update NuGet package references (#3734)
* Update package references

* Accommodate FastEndpoint API changes
2023-02-23 14:49:46 +01:00
Sipke Schoorstra ab59965393 Update sample to use EF Core for default runtime 2023-02-20 14:11:11 +01:00
Sipke Schoorstra a62956b2c0 Wrap Strategy property of Delay activity 2023-02-16 19:59:30 +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
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 0584dc0bdf Add sample with SendHttpRequest 2023-01-23 15:59:06 +01:00
Sipke Schoorstra 93297b6764
Refresh tokens (#3626)
* Remove elastic hosted service for alias/rollover

* Fix dependency issues

* Implement token refresh

* Update appsettings
2023-01-13 22:55:08 +01:00
Sipke Schoorstra 096206d392
Elastic updates (#3623)
* Incremental work

* Incremental work

* Incremental work

* Merge remote-tracking branch 'origin/v3' into v3-elasticsearch-updates

* Incremental work

* Incremental work

* Fix listing with no query

* Restore missing class

* Remove rollover hosted service and expose index configurations

* Rename hosted service
2023-01-13 19:10:20 +01:00
Gürkan Güran dad33e665a Refactor 2023-01-12 19:26:30 +01:00
Sipke Schoorstra edbe68f9e1 Fix sample project 2023-01-12 12:18:50 +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
Gürkan Güran ae0f4b190f Fixed sample program 2023-01-11 11:59:35 +01:00
Gürkan Güran bc97749057 Merge branch 'v3' into elasticsearch
# Conflicts:
#	src/bundles/Elsa.WorkflowServer.Web/Program.cs
#	src/bundles/Elsa.WorkflowServer.Web/appsettings.json
2023-01-11 11:56:35 +01:00
Sipke Schoorstra 92c68099b3 Cleanup sample project file 2023-01-10 15:14:23 +01:00
Sipke Schoorstra 2c65081110
MassTransit activities (#3613)
* Implement MessageReceived for MT

* Implement Publish activity provider

* Only create Publish activity for class types

* Add MassTransit sample project

* Fix comment
2023-01-10 14:32:14 +01:00
Gürkan Güran 26d0586793 Merge branch 'v3' into elasticsearch
# Conflicts:
#	Elsa.sln
2023-01-05 15:19:21 +01:00
Gürkan Güran fcfd092003 Implemented Elasticsearch for workflow instance and log record persistence 2023-01-05 15:10:55 +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 750c2094cc
RunTask activity (#3594)
* Implement RunTask activity
2023-01-04 20:36:38 +01:00
Sipke Schoorstra b4dba6ffe5
Add PublishEvent activity and implement MassTransit dispatcher (#3593) 2023-01-04 15:28:28 +01:00
Sipke Schoorstra 06e62b3bcc
Restore workflow journal (#3582)
* Refactor identity options

* Delete templates

Will be created as part of a separate repo.

* Little cleanup

* Increase token lifetime for reference server app

* Cleanup workflow definition editor plugin

* Fix workflow instance viewer component

* Update identity generator to use hyphen format

* Improve workflow and activity execution pipeline registration API

* Fix workflow journal

* Update backend

* Prevent unnecessary re-render

* Restore autolayout function
2023-01-02 22:24:05 +01:00
gurkanguran 4272d5a49c
Implemented workflow sink module (#3571)
* Implemented workflow sink module

* Sequentual process of saving sinks in single consumer

* Refactor

* Log errors during sink export

* Removed redundant classes

* Use in process messaging in bundle

* Fixed the issue with duplicated ResultVariable key on serializing

* Moved workflowsink modules out of persistence projects

* Moved migrations out of old projects

Co-authored-by: Gürkan Güran <grkngrn@gmail.com>
Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2023-01-01 18:02:38 +01:00
Sipke Schoorstra 7a98cdf60d
Normalize extensions namespaces (#3577) 2022-12-31 16:16:43 +01:00
Sipke Schoorstra e6536636d7
Additional samples + fixes and improvements (#3574)
* Incremental work on samples

* Rename HTTP middleware and update samples

* Rename HTTP Activities to Workflows

* Automatically register core activities when adding Elsa

* Fix feature registration bug

* Add default auth feature

* Make activity serializer more flexible

* Bump designer version

* Add workflow server + designer samples

* Simplify EntityFrameworkCore projects

* Update solution

* Add Sqlite package references to ensure the correct version is used

* Update sample project with EF Core

* Update EF extensions

* Add server + designer sample project

* Cleanup AllInOne project and add some XML comments

* Rename ci.yml and add CI for Docker file
2022-12-30 13:11:29 +01:00
Sipke Schoorstra 9f9c20f553
Add support for workflows as a function (#3569)
* Add support for converting lists of things

* Add support for workflows returning a result

* Formatting

* Fix that While would complete twice

* Add convenience methods to access workflow input

* Schedule the workflow itself instead of just its root

* Add Output dictionary to workflow execution context

* Ad samples to demonstrate workflows returning results
2022-12-28 13:59:46 +01:00
Sipke Schoorstra bbe8ee34c0 Update packages 2022-12-22 15:55:20 +01:00
Sipke Schoorstra 2dcd9bcd73 Add .NET 7 as a target 2022-12-22 15:40:31 +01:00
Sipke Schoorstra 81ddacab0f Update Telnyx activities with correlation client state 2022-12-22 15:13:52 +01:00
Sipke Schoorstra 088158ec54 Finish Hello World ASP.NET sample project 2022-12-21 22:22:21 +01:00
Sipke Schoorstra 3dfede96d3 Move shared test utility to common folder + various incremental changes 2022-12-20 12:13:53 +01:00
Sipke Schoorstra 3d4718ff76 Rename From to Inline 2022-12-11 22:34:24 +01:00
Sipke Schoorstra 84afa064e1 Update samples 2022-11-28 21:34:10 +01:00
Sipke Schoorstra 4933c56af2 Fix broken sample 2022-11-27 13:28:53 +01:00
Sipke Schoorstra ae1590220d Formatting 2022-11-24 21:12:07 +01:00
Sipke Schoorstra 2567eb6535 Implement variable picker 2022-11-23 22:36:43 +01:00
Sipke Schoorstra 8a4e219e07 Minor renaming 2022-11-23 11:20:35 +01:00
Sipke Schoorstra 9981dc1f10 Add Complete activity for completing composite activities 2022-11-22 13:09:14 +01:00
Sipke Schoorstra be3e7ac707 Update Composite and remove completion callback 2022-11-22 12:36:32 +01:00
Sipke Schoorstra 03eba3f6ad Incremental work on composite activity completion 2022-11-21 22:49:11 +01:00
Sipke Schoorstra e40b987446 Small API improvements 2022-11-21 22:01:52 +01:00
Sipke Schoorstra 9dcae97a0e Add support for lazy initialization of output 2022-11-20 20:37:56 +01:00
Sipke Schoorstra 8cc8d1bcbf
Telnyx integration (#3453)
* Incremental work on Telnyx integration

* Incremental port of Telnyx activities

* Fix polymorphic JSON serialization for webhook data

* Fix IsFirstPass logic

* Fix trigger base to prevent activity auto completion

* Temporarily disable persistent snapshotting provider for testing

* Fix namespaces

* Add method to register activities in bulk using marker type

* Fix Telnyx refit client setup

* Register all Telnyx activities by default

* Incremental work on webhook driven resumption and correlation

* Incremental work on post-bookmark signaling

* Fix bookmark resolution

* Include correlation ID with bookmark

* Fix Telnyx resumption input

* Replace bookmark persisted signal with handler

* Fix SpeakText completion

* Add flow outcomes to SpeakText activity

* Update GatherUsingSpeak and GatherUsingaudio

* Refactor "is first pass" concept

* Fix WebhookEvent activity

* Add HTTP absolute URL provider

* Formatting and small changes

* Various API enhancements
2022-11-19 22:30:43 +01:00
Sipke Schoorstra 6947f45693 Remove unused namespaces 2022-11-13 12:45:34 +01:00