Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Proposed change
This PR changes the way to define strategies.
original-states
andenergy
strategies has been migrated to the new API.Dashboard and view strategies has been split into 2 class. This class share the same interface so we can easily extends it to other elements (section within a view for example). Also a config editor can be easily added by adding
getConfigElement
method to the class (#17916 will be edited with this changes)Config format
The options has been moved to the root (to be consistent with card config). Backward compatibility for current custom strategies has been added with a drawback :
options
property can not be used.Before
After
Generate method parameters
narrow
)Before
After
Note
I kept the custom element registry for storing the strategies (and custom ones) even if it's not valid because it will be easier for developer to have similar way to register strategies than cards.
A backward compatibility has been added to avoid issues with custom strategies that are not using the new format.
Type of change
Example configuration
Additional information
Checklist
If user exposed functionality or configuration variables are added/changed: