Commit graph

921 commits

Author SHA1 Message Date
Sipke Schoorstra 7423e82bbd Fix order of execution results in CompositeActivity 2021-03-29 13:06:37 +02:00
Sipke Schoorstra b868145d91 Telnyx: Fix extension method name 2021-03-29 13:06:37 +02:00
Sipke Schoorstra 94f297c618 Fix property name of Dial 2021-03-29 13:06:37 +02:00
Sipke Schoorstra eda9a4cb68 Fix actual bridging in CallRingGroup 2021-03-29 13:06:37 +02:00
tomy2105 6773a73a81 Method to skip adding core activites automatically. 2021-03-29 12:05:56 +02:00
Craig Fowler d9000b22b3 Fix build failure: ForEachWorkflowTests
It seems that some work done in these commits, for the
file ForEachBuilderExtensions was responsible:
* 4807ace13c
* dfbba1e176

A couple of the extension methods were missing out a ToList()
which later caused an ArgumentException when setting a property
value via reflection.

I also added an extra exception for the set-value logic.  This way,
if/when there is a problem, the exception will indicate which property
it was trying to set at the time.
2021-03-28 12:39:32 +01:00
Sipke Schoorstra 3ba1582b54 Remove unused namespace 2021-03-26 11:40:22 +01:00
Sipke Schoorstra b4154bf7ea Complete CallRingGroup activity with support for RingAll strategy 2021-03-26 11:40:22 +01:00
Sipke Schoorstra aa0c2fe711 Incremental work on CallRingGroup and other Telnyx activities 2021-03-26 11:40:22 +01:00
Sipke Schoorstra dfbba1e176 Fix casting issue with ForEach and ParallelForEach builder extensions 2021-03-26 11:40:22 +01:00
Sipke Schoorstra 2a22a328c4 Add type parsing support with object target type 2021-03-26 11:40:22 +01:00
Sipke Schoorstra 890789c9cd Incremental work on call ring group activity 2021-03-26 11:40:22 +01:00
Sipke Schoorstra 4807ace13c Implement ring group transfer for prioritized hunt strategy 2021-03-26 11:40:22 +01:00
Sipke Schoorstra ae27cbb301 Remove test property 2021-03-26 11:40:22 +01:00
Sipke Schoorstra 58f79cef11 Add support for nullable enum properties 2021-03-26 11:40:22 +01:00
Sipke Schoorstra 8ace98740a Use dropdown UI hint by default for enum property types 2021-03-26 11:40:22 +01:00
Sipke Schoorstra 423af35493 Fix repeating markup 2021-03-26 11:40:22 +01:00
Sipke Schoorstra 3ac97a0444 Fix loss of multi-text input value 2021-03-26 11:40:22 +01:00
Sipke Schoorstra 6374aa643b Update run-javascript-plugin with updated property name 2021-03-26 11:40:22 +01:00
Sipke Schoorstra 39b8c4b343 Initial version of CallRingGroup 2021-03-26 11:40:22 +01:00
Sipke Schoorstra d6d44ff57b Improve ParallelForEach extensions 2021-03-26 11:40:22 +01:00
Sipke Schoorstra 61b57de61c Turn Fork into self-cleaning scoped activity 2021-03-26 11:40:22 +01:00
Sipke Schoorstra 7e3464c504 WIP: CallRingGroup 2021-03-26 11:40:22 +01:00
Sipke Schoorstra 6fef9874da **BREAKING API** Update Builder API to allow to connect to named activities as well as activities by type name
This replaces the `Then(string activityName)` method with `ThenNamed(string activityName)`.
A new method is added to allow connecting to activities by type name: `ThenTypeNamed(string activityTypeName)`.

The reason for this change and addition is to allow workflow builders to connect to activity types that do not have a corresponding type.
For example, the Telnyx project has an activity type provider that *dynamically* provides activity types based on Telnyx webhook callback types.
2021-03-26 11:40:22 +01:00
Sipke Schoorstra 5d8d05aec5 Stash 2021-03-26 11:40:22 +01:00
Craig Fowler a81d47afff Resolve #785 - improve API for StringValuesModel
This means that the model:
* Implements IConvertible so that Jint may implicitly convert
  it to other types as if it were just a string.
* The Values & Values properties are perhaps a little less confusing
  now, and present a more consistent set of state, regardless of
  the inner model.
* There's a minor simplification to ToString, since String.Join already
  did what we wanted for one or many values.

Notable though is - because this class implements IConvertible,
it is no longer CLS compliant.  We do not currently mark this assembly
as CLS complient so as things stand that's OK.  I do not know if there
are any plans/expectations for CLS compliance in Elsa.

If we do plan to mark the assemblies as compliant then we must mark this
class [CLSCompliant(false)].
2021-03-25 21:10:25 +00:00
tomy2105 25ad50de02 Update elsa-designer-tree-activity.tsx
Double click to open activity.
2021-03-23 20:02:52 +01:00
Sipke Schoorstra 3ab0c94f94 Hide a couple of warnings 2021-03-23 14:52:11 +01:00
Sipke Schoorstra aff01d104a Rename Outcomes property that was hiding Outcomes member from base class 2021-03-23 14:51:53 +01:00
Sipke Schoorstra fe915fc6fd Fix Break activity 2021-03-23 14:05:56 +01:00
Sipke Schoorstra 66dabb8ce9 Add SetVariable overload with updater callback 2021-03-22 22:05:13 +01:00
Sipke Schoorstra 185c2dde44 SetVariable extension improvements 2021-03-22 22:04:49 +01:00
Sipke Schoorstra 48ff06d26e Add workflow context class type constraint 2021-03-22 21:24:30 +01:00
Sipke Schoorstra 3b185d31e9 New fix for Switch activity 2021-03-22 21:23:58 +01:00
Sipke Schoorstra f10d33b77e Fix Switch activity
The Switch activity did not reset its state in full, causing it to not re-evaluate its branches when looping back onto it
2021-03-22 08:40:16 +01:00
Craig Fowler ee7a8cdb1b
Merge pull request #775 from craigfowler/feature/738-Composite-Activities-may-be-triggers
Refactor for comprehension & add test coverage
2021-03-20 11:29:28 +00:00
Craig Fowler 2539f6425a WIP #738 - Integration tests for Trigger Indexer
One of these tests is failing and this is the one which
demonstrates issue #738. The composite activity which begins
with ReceiveSignal doesn't generate a trigger.
2021-03-20 10:42:41 +00:00
Konstantin Mikhailyuk bc986ec003
#667 - Move webhook client api to ElsaClient (#774)
* WIP #667 - Webhook activity project

* WIP #667 - Webhook definition with InMemoryStore

* WIP #667 - Add Webhook activity provider

* Prevent part assembly generation

See https://github.com/dotnet/aspnetcore/issues/24171

* Make optional args optional

* Small changes

* Move Refit client api to ElsaClient

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2021-03-20 07:45:08 +01:00
Konstantin Mikhailyuk caf15ecc70
WIP #667 - Webhook activity project (#718)
* Webhook activity project

* Webhook definition with InMemoryStore

* Add Webhook activity provider

* Prevent part assembly generation. See https://github.com/dotnet/aspnetcore/issues/24171

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2021-03-19 21:15:50 +01:00
Sipke Schoorstra 58648339c8 Build optimized tailwind.css 2021-03-19 21:02:35 +01:00
Sipke Schoorstra ba8b4bffcc Add support for setting default activity property values 2021-03-19 21:02:35 +01:00
Craig Fowler 3943e64c70 WIP #738 - Add test coverage to replace big test
The large/complex test is now removed, replaced by
smaller/simpler unit tests for the individual units in
the overall process of getting triggers.
2021-03-19 19:45:16 +00:00
Sipke Schoorstra a880873337 Update Telnyx activities to use CorrelationId if no CallControlId was specified 2021-03-19 14:25:25 +01:00
Sipke Schoorstra 37eeed2cd0 Implement activity property categorization 2021-03-19 14:25:25 +01:00
Sipke Schoorstra 1dd15f7a21 Fix lifetime scopes 2021-03-19 12:21:19 +01:00
Sipke Schoorstra 63aef00415 Fix type cast issue when evaluating JS expressions with no specialized type 2021-03-19 12:21:04 +01:00
Craig Fowler 6700ac2402 WIP #738 - Simplify unit test
Now that the class is a little less complex, this
simplified unit test covers just what remains.
2021-03-18 21:22:19 +00:00
Craig Fowler 9ec698c7bc WIP #738 - Refactor a troublesome extension method
This extension method is quite complex and is frustrating
when a unit test passes-through it.  That's because extension
methods can't be mocked in tests.
2021-03-18 21:09:04 +00:00
Craig Fowler f00f02041a WIP #738 - Further refactor (remove loop)
This is pretty trivial really, it just cuts down on
indentation and moves the looping into a Linq
map (Select) which builds a collection and then
reduces it (SelectMany) to a flattened collection.

Also remove some needless await'ing.
2021-03-18 20:40:09 +00:00
Craig Fowler d9724e5267 WIP #738 - Refactor-out a further service
The triggers-for-activity-blueprint functionality
is quite complex just on its own, so I have moved this to
a new service.

Once again the integration test which is left behind proves
that it still does the same job.
2021-03-18 20:29:06 +00:00