* Use NoTracking for EF Core
* Use Activity ID as Node ID for modern tooling
* Fix DispatchWorkflow activity
* Update tests and remove redundant ToolVersion
* Initial implementation of workflow inbox, submission and delivery
* Implement persistence providers
* Update EF Core migrations
* Rename Services to Stores in Dapper module
* Use default serializer for primitive arrays
* Update MongoDB provider to map BookmarkId to be primary key
* Implement MongoDB provider for activity execution logs
* Use EF Core by default
* Fix private JSON constructor logic
* Implemented MongoDb
* Use main entity models in mongodb
* Fixed object serialization issue
* Fixed issues caused by duplicate collection names
* Optimized count query
* Fixed the issues after merge
* Revert "Fixed the issues after merge"
This reverts commit 5568af60cfc107b8ee68fd4c89fbb02946f8a6a3.
* Use expression helper to solve mongodb query issue
* Handle null values during deserialization
* Moved MongoDb project to persistence folder
* Did some refactor and added type serializer for variable fix
* Modularize mongodb indices creation
* Fixed the build
* Implement variable serializer
* Update SQLite migrations
---------
Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
* 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>
* search workflowdefinition
* filter workflowinstance
* also add version options
* initiate search field
* add search to workflowinstance
* extend search with description and definitionversionid
* make everything work for workflow definition and instance search
* add ElsaDbContextOptions
* set Schema from elsaDbContextOptions
* file rename
* add options as arg to DbContextOptionsBuilderExtensions
* add options to module extensions in Elsa.EntityFrameworkCore.MySql
* add options to module extensions in Elsa.EntityFrameworkCore.PostgreSql
* add options to module extensions in Elsa.EntityFrameworkCore.Sqlite
* add options to module extensions in Elsa.EntityFrameworkCore.SqlServer
* add validations
* update doc strings
* Update activity names and descriptions
* Rename JS functions
* Make endpoint class internal
* Pre-create workflow instance ID when dispatching workflows
* Incremental work on context activity
* Add extensions to get and set context params
* Update polymorphic converter to handle objects serialized to primitives
* Add convenience factory methods for SetWorkflowContextParameter activity
* Add API endpoint to list available provider types
* Implement workflow context provider selection property panel
* Update context provider picker to be based on selected providers
* Make SendEmail support different types of input for To, Cc and Bcc fields
* Fix EF Core WorkflowDefinitionStore to use polymorphic serialization for metadata
* Add JS support for getting workflow contexts
* Add Installed Features endpoint
* Update polymorphic object converter to skip start array
* Update activity execution middleware to handle background execution
* Fix sample program to include activity middleware for contexts
* Comments and cleanup
* Fix WF Definition and Instance EF Impl.
Both Workflow Definition and Workflow Instance Browsers weren't paging correctly due to a missing Paginate IQueryable extension. Matched implementation detail for the Workflow Instance EF provider
* Workflow Instance browser persistence
Lookup settings are persisted in local storage for the workflow instance browser. Can be switched to session storage very easily, doesn't persist the search textbox value for now
* Workflow Definition browser persistence
Also added reset button for Workflow Instance settings, obviously resets everything to defaults and then persists
* Refactor HTTP route table population
* Update workflow definition EF store to use abstract IWorkflowInstanceStore
This decoupling is necessary, because the application might not be using EF Core, but e.g. Elasticsearch
* Move workflow state persistence to the default workflow runtime feature
* Update JS handler to provide access to variables during trigger indexing
* Configure Proto.Actor runtime with different workflow pipeline
* Add sample using Proto.Actor runtime
* Replace BookmarkGrain with DB based persistence
* 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
* 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