Commit graph

22 commits

Author SHA1 Message Date
Sipke Schoorstra 892099c235 Refactor UI handler hierarchy and remove sample workflows.
Replaced direct implementation of `IPropertyUIHandler` with a new `PropertyUIHandlerBase` abstract class to simplify UI handler management and introduce a priority mechanism. Removed outdated `SampleWorkflow` and `SlowActivity` code to clean up the repository. Introduced a custom checklist options provider and registered it within the application services.
2025-05-26 20:06:39 +02:00
Sipke Schoorstra e6076d0c7d
Make GetUIPropertiesAsync method virtual
Allow derived classes to override the GetUIPropertiesAsync method by marking it as virtual. This change enhances flexibility and customization for implementations of DropDown and CheckList options providers.
2025-05-25 20:42:29 +02:00
Sipke Schoorstra 4101794f95
Enhance CheckListOptionsProviderBase with additional options
Introduce a `RefreshOnChange` property for dynamic UI updates and a virtual method `GetUIPropertyAdditionalOptions` for adding custom options. These changes improve extensibility and enable developers to better control checklist behavior.
2025-05-25 20:40:02 +02:00
Sipke Schoorstra f8968b5cfc
Simplify CheckListOptions logic
Refactor `StaticCheckListOptionsProvider` to inherit from the new `CheckListOptionsProviderBase` and streamline checklist item generation logic.
2025-05-25 20:38:02 +02:00
Sipke Schoorstra d44b081848
Add RefreshOnChange to support dynamic UI updates
Introduced a `RefreshOnChange` property to `DropDownOptionsProviderBase`, enabling dynamic UI updates for dropdown options. Simplified `ConnectionOptionsProvider` by overriding `RefreshOnChange` and removing redundant code.
2025-05-25 19:48:46 +02:00
Matt 016600b838 Adds Support For New DateTimePicker UI Component And Re-Orders the InputUIHints. 2025-03-13 19:13:16 +00:00
Sipke Schoorstra 271bc959bb
Merge branch 'main' into enh/Connections 2025-02-23 13:27:40 +01:00
Sipke Schoorstra 255bb26dff Refactor code for improved clarity and modern syntax
Refactored multiple classes to align with modern C# coding practices such as object initializers and nullable type handling. Added a new base class for checklist dropdown providers to enhance UI configuration extensibility. Simplified constructors for feature classes by adopting record-like syntax, improving readability and maintainability.
2025-02-15 00:12:52 +01:00
Jérémie DEVILLARD 4565dfcfbc Merge remote-tracking branch 'upstream/main' into enh/Connections 2025-02-10 12:53:51 +01:00
Matthew Knibbs 23bc29e73d Removes Built In SQL Editor Configuration 2025-02-07 16:34:22 +00:00
Jérémie DEVILLARD afc14fab4b add virtual method to DropDownOptions provider to allow customization of options in inherited class.
clean ConnectionOptionsProvider class
2025-01-13 15:52:03 +01:00
Matthew Knibbs f609013a79 Adds SQL UIHints handler and provider. 2025-01-01 16:46:23 +00:00
Matthew Knibbs 97a0b36122 Correct JsonEditor namesapce 2024-12-31 10:22:28 +00:00
Sipke Schoorstra eecebb70be Add ExpressionEditor UI hint
Introduced a new constant 'ExpressionEditor' to the InputUIHints class. This addition will support new functionalities related to handling expression-based inputs in the UI.
2024-11-23 15:58:27 +01:00
Sipke Schoorstra c311ba03ac Refactor syntax for new array initialization
Updated new array initialization syntax from `new[] {}` to `[]` across multiple files for consistency and code brevity. This change enhances readability and aligns with modern C# conventions.
2024-11-23 15:58:19 +01:00
Abhishek 7563abd103
Add Functionality to Copy Entire Path from HTTP Endpoint Activity #133 (#6037) 2024-10-19 10:39:57 +02:00
Sipke Schoorstra f3961c0af5 Update namespaces and correct merge artefacts 2024-10-11 20:41:49 +02:00
Nick Rubenstein 33178f41c1
#5313 Include dropdown when using a nullable enum in an activity input (#5320)
Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2024-05-08 20:16:43 +02:00
Sipke Schoorstra 5d936ad34c Add UI hints for HTTP endpoint and single line fields
Introduced HttpEndpointPathUIHandler to provide additional UI options for the Path input field in the HTTP Endpoint activity. This commits also adds SingleLineProps to offer more options for SingleLine input fields across different modules. The implementation improves UI component interactions.
2023-12-28 20:52:04 +01:00
Sipke Schoorstra 5202b399c3 Add JSON editor UI hint to HTTP activities
This commit introduces a JSON editor UI hint to HTTP activities within Elsa Workflow. It includes creating new classes for a JSON editor options provider and a handler for this UI hint. Also, these additions are registered within the Elsa Workflow. The hint is applied to the 'RequestHeaders' and 'ResponseHeaders' input fields found in HTTP-related activity classes.
2023-12-28 20:21:02 +01:00
Sipke Schoorstra fac292a9e3 Add UI hints to input fields in workflow core modules
Changed a number of instances in both activities and UI Hints classes across multiple modules in the workflow core to utilize UIHints. The UI hint "DropDown" has been added to relevant input fields to improve the user interface. Special handling for Enum properties in the drop-down options provider has also been created.
2023-12-28 19:41:55 +01:00
jdevillard 9175322774
Add a more generic UIHandler to customize how inputAttributes can be handle by UI (#4688)
* add a more generic UIHandler to customize how inputAttributes can be handle by the ui

* Add IPropertyUIHandlerResolver and update PropertyUIHandlerResolver

Introduced a new interface, IPropertyUIHandlerResolver, to resolve UI options for a property. Refactored PropertyUIHandlerResolver to implement this interface and removed the unnecessary partial class structure. Also, cleaned up some unnecessary usings in various files for better code organization.

* Refactor variable name and description in InputDescriptor

The 'uISpecifications' variable in the InputDescriptor model is renamed to 'uiSpecifications' for better readability. Additionally, the associated comment was revised to explain that the dictionary is used by the UI.

* "Refactor codebase for improved organization and cleaner architecture"

The codebase has been significantly refactored, moving several classes to more appropriate namespaces for improved organization and cleaner architecture. This includes shifting UI hint handlers, activities, and memory-related components, amongst others. The changes should improve code readability and maintainability, but as this is a broad refactoring effort, thorough regression testing is advised.

* Add CheckList UIHint with associated handler and provider

This update introduces a new UIHint called CheckList to the Elsa.Workflows.Core. This includes the necessary handler and provider classes. The handler is registered in the WorkflowsFeature.cs, and the CheckList UIHint key has been added to the InputUIHints.cs. Various associated files have been created in both the Elsa.Api.Client and Elsa.Workflows.Core project to support this new UIHint.

---------

Co-authored-by: Jérémie DEVILLARD <jdevillard@users.noreply.github.com>
Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2023-12-26 18:56:29 +01:00