Adding color support for environments #829
Open
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.
PR Description
This PR introduces full environment color support throughout the application, enabling users to assign and visualize colors for different environments (e.g., red for prod, green for dev).
Key changes include:
Model Update: Added a color field to EnvironmentModel as a String? to store hex colors (e.g., #FF5733), ensuring serialization compatibility with Hive.
State Management: Enhanced EnvironmentsProvider to handle color in loadEnvironments, addEnvironment, updateEnvironment, and duplicateEnvironment.
UI Enhancements: Updated
EnvironmentPopupMenu
to display environment colors across the entirePopupMenuItem
,Create a new file named
EnvEditorTitleAction
as a mirror ofEditorTitleAction
, to add a color palette section feature that is available only for the environment page.TODO: Added automatic unique color assignment for new environments and random color generation as a fallback, ensuring visual distinction.
Related Issues
Checklist
main
branch before making this PRflutter upgrade
and verify)flutter test
) and all tests are passingAdded/updated tests?
We encourage you to add relevant test cases.
OS on which you have developed and tested the feature?