Skip to content

feat(ui_showcase): Implement UI showcase toolkit#448

Draft
hawkkiller wants to merge 23 commits intomainfrom
feat/ui-showcase
Draft

feat(ui_showcase): Implement UI showcase toolkit#448
hawkkiller wants to merge 23 commits intomainfrom
feat/ui-showcase

Conversation

@hawkkiller
Copy link
Owner

No description provided.

@hawkkiller hawkkiller self-assigned this Jul 31, 2025
- Updated `SomeButtonPreview` to display an `ElevatedButton` with an app bar showing the active node's path.
- Refactored `ShowcaseRoot` to manage selected nodes using state, allowing dynamic updates to the displayed widget based on user selection.
- Introduced `ActiveNodeProvider` to manage the active node context across the widget tree.
- Updated `pubspec.yaml` to include `go_router` dependency.
- Refactored routing logic in `go_router.dart` to use `GoRouter` directly.
- Simplified `SomeButtonPreview` by removing unnecessary app bar and streamlining the button display.
- Enhanced `ShowcaseDesktop` to include active node metadata and breadcrumbs for better navigation context.
- Added `isSelected` parameter to `ShowcaseTreeView` to conditionally style node text based on selection.
- Improved tree node expansion logic to reflect the selected node's state, enhancing user interaction and visual feedback.
- Introduced a new `_TreeNodeWidget` to encapsulate node rendering logic, enhancing code organization.
- Updated node selection handling with haptic feedback and improved visual feedback for selected and hovered states.
- Simplified tree node building logic and ensured consistent animation styles across node interactions.
- Enhanced the ShowcaseDesktop to streamline active node metadata display.
- Added `SomeCardPreview` to showcase card components alongside buttons.
- Refactored `SomeButtonPreview` to utilize `ComponentPreview` for better input handling.
- Introduced new input widgets: `StringInput` and `IntegerInput` for dynamic user interaction.
- Implemented `ShowcaseTreeView` and `ShowcaseView` for improved navigation and display of showcase nodes.
- Added `ActiveNodeMetadata` for contextual information about the selected node.
- Updated exports in `ui_showcase.dart` to include new components and inputs.
- Introduced `CardPreview` component to showcase card functionality.
- Updated main application to include the new `CardPreview` in the showcase nodes.
- Added `ShowcaseNodeMixin` to enhance integration with showcase nodes.
- Simplified `CardPreview` by removing the `ShowcaseNodeMixin`.
- Cleaned up `ShowcaseNode` by deleting the unused mixin code, enhancing maintainability.
- Refactored `SomeButtonPreview` to use `ValueNotifier` for enabling/disabling the button and updated the label controller.
- Introduced a new `BooleanInput` widget for handling boolean values with a switch interface.
- Adjusted spacing in the `Sidebar` widget for improved layout.
- Updated exports in `ui_showcase.dart` to include the new `BooleanInput` component.
- Refactored the routing to support theme options through `ThemeOptionProvider`.
- Introduced `ThemeOptionInput` for selecting themes within the UI.
- Updated `ComponentPreview` to utilize the new theme management system.
- Removed the deprecated `theme_switcher.dart` file and adjusted imports accordingly.
- Enhanced input widgets (`BooleanInput`, `IntegerInput`, `StringInput`) to support state restoration using `PageStorageReader` mixin.
- Introduced `_ComponentPreviewStandard` for displaying a sidebar alongside the main content.
- Updated `_ComponentPreviewSmall` to open the sidebar in a fullscreen dialog.
- Removed redundant code and improved layout for better usability in the showcase view.
Adds the ui_showcase package to the workspace for better
dependency management.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant