Commit graph

32 commits

Author SHA1 Message Date
Sipke Schoorstra 0bb2ddcfee
Support sub-workflow dependency handling of JSON workflows (#4098)
* Change "Usable as Activity" setting into checkbox

* Update client model

* Update query to use shadow property

* Update UsableAsActivity usages

* Implement staged provisioning of workflows

* Add tests

* Update migrations
2023-06-03 12:28:10 +02:00
Sipke Schoorstra c99280b792 Add methods to add multiple workflows from a given assembly 2023-05-28 16:20:16 +02:00
Sipke Schoorstra 6f455f7e70
Update DSL implementation and integration (#4073) 2023-05-28 11:54:12 +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 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 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
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 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 83fb433ffc Add alias for dictionary type 2023-03-07 22:02:46 +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
Sipke Schoorstra 1d1808af89
Workflow input/output (#3726)
* Improve activity JSON converter

Handles wrapped and unwrapped input

* Add SetWorkflowOutput activity

* Implement handling of child workflow output
2023-02-21 11:47:20 +01:00
Sipke Schoorstra e74133c52b
Add dictionary support (#3704) 2023-02-15 12:09:45 +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 0e1922621e
HTTP activity body parsing (#3631)
* Implement content parsers and update SendHttpRequest

* Fix parsers

* Fix parser ordering

* Implement content parsing for HTTP Endpoint activity

* Cleanup

* Remove unused models

* Update file name to match class name
2023-01-16 19:42:45 +01:00
Sipke Schoorstra c6ceb247e1 Fix dependency issues 2023-01-13 20:10:05 +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
Gürkan Güran fcfd092003 Implemented Elasticsearch for workflow instance and log record persistence 2023-01-05 15:10:55 +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
Sipke Schoorstra 7a98cdf60d
Normalize extensions namespaces (#3577) 2022-12-31 16:16:43 +01:00
Sipke Schoorstra a4011278cc Implement implicit FastEndpoint assembly collection for discovery 2022-12-09 12:25:39 +01:00
Sipke Schoorstra bc573386b9 Add Guid as variable type 2022-11-28 14:24:54 +01:00
Sipke Schoorstra b5a2e95ed3
Implement types API endpoint (#3479) 2022-11-26 22:27:33 +01:00
Sipke Schoorstra c3a3d85f47 Only register browsable, concrete activity types 2022-11-23 11:21:15 +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 b3bae39bfe
Default Runtime & Persistence (#3287)
* Delete DefaultWorkflowInvoker.cs

* Incremental work

* Refactor runtime

* Implement workflow state store + bookmark store

* Cleanup

* Update migrations

* Move store abstractions to management and runtime projects

* Consolidate persistence providers into single package

* Generate migrations

* Regenerate migrations

* Fix DI of memory stores

* Update migrations

* Refactor definition reference due to unserializable record

* Update web server bundle to use EF core by default

* Update Bookmark.cs

Fixes System Text Json deserialization
2022-09-04 17:04:14 +02:00
Sipke Schoorstra e942f799ec Add default implementations for job queue and scheduler 2022-08-11 12:45:07 +02:00
Sipke Schoorstra 4ed7f4b5da
Designer Activity Definitions (#3221)
* Incremental work on custom activities

* Incremental work on refactoring versioned entities

* Add ActivityDefinition infrastructure

* Incremental work on activity definition manager

* Incremental work on API endpoints

* Refactored flowchart component to include hierarchical nav

* Incremental work on modularization of designer component

* Restructuring into modules

* Rename CustomActivities module

* Apply security

* Fix activity definition GET endpoint

* Incremental work on activity definition provider

* Incremental work on activity definition execution

* Update ActivityDefinitionMaterializer.cs

* Update ActivityDefinitionActivityProvider.cs

* Add activity definition referenced version update handler

* Maintain position of not found activity

* Fix prefix naming
2022-07-21 16:18:42 +02:00
Sipke Schoorstra a28d2eb63a
Features API (#3081)
* Rename module and features

* Move Mediator, AspNetCore and Expressions to modules folder

* Update labels-widget.tsx
2022-05-27 12:36:39 +02:00