Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(ui): Design Prototype for split panel component #4378

Open
wants to merge 13 commits into
base: master
Choose a base branch
from

Conversation

dan-rukas
Copy link
Member

@dan-rukas dan-rukas commented Sep 17, 2024

Context

This PR includes an experimental coded component for the Split Panel design. The goal of this component is to share the final design states and intended behaviors.

Component Summary:

The PanelSplit component is designed to manage and display a list of items, each with customizable properties. It features an interactive ItemList that allows users to select items and toggle their visibility individually or collectively through a master toggle. Upon selecting an item, the PropertiesPanel provides adjustable settings, including (in this example) various display modes and controls for: Visibility, Fill & Outline, Opacity, Outline size.

Features and Behaviors:

  • Properties Panel: Displays detailed properties of the selected item, allowing adjustments in one place.
  • State Management: Manages state updates to ensure changes in display modes and visibility states are accurately reflected across all relevant items.
  • All items control: Provides controls for Visibility, Fill & Outline, Opacity, and Outline Size properties. When selected, adjusting any of these settings simultaneously updates properties for all listed items.
  • Individual item controls: Selecting individual items allows independent control and editing of properties.
  • Responsive Design: The component adapts seamlessly to various screen sizes, ensuring optimal usability across devices.
  • Design System Components: Uses new design system components (in ui-next), typography, and color. Included components: Button, Input, Tabs, Switch, Slider, Label, and Scroll Area

Design Prototype is located in ui-next (patterns page)

Work in progress: This component is not yet finalized. I’m actively iterating and open to suggestions for improvement.
This component is for internal review currently, not intended for production at this stage.

Changes & Results

Adds design prototype for Split Panel component

Testing

Checklist

PR

  • [] My Pull Request title is descriptive, accurate and follows the
    semantic-release format and guidelines.

Code

  • [] My code has been well-documented (function documentation, inline comments,
    etc.)

Public Documentation Updates

  • [] The documentation page has been updated as necessary for any public API
    additions or removals.

Tested Environment

  • [] OS:
  • [] Node version:
  • [] Browser:

testing new PanelSplit component functionality
Updated to include shadcn components and states for each list item in the panel
List items and properties panel working better with all items and individual items
Fixed alignment of elements and rows in the properties panel and list view. Added color styles.
Separates base components from design layouts and patterns
Copy link

netlify bot commented Sep 17, 2024

Deploy Preview for ohif-platform-docs canceled.

Name Link
🔨 Latest commit e8bbafa
🔍 Latest deploy log https://app.netlify.com/sites/ohif-platform-docs/deploys/66eacf58cc33360008aad68e

Copy link

netlify bot commented Sep 17, 2024

Deploy Preview for ohif-dev canceled.

Name Link
🔨 Latest commit e8bbafa
🔍 Latest deploy log https://app.netlify.com/sites/ohif-dev/deploys/66eacf58450b730008f3c97e

Copy link

cypress bot commented Sep 17, 2024

Viewers    Run #4282

Run Properties:  status check passed Passed #4282  •  git commit e8bbafa959: Added working visibility state toggles for items
Project Viewers
Branch Review feat/split-panel-design
Run status status check passed Passed #4282
Run duration 02m 47s
Commit git commit e8bbafa959: Added working visibility state toggles for items
Committer Dan Rukas
View all properties for this run ↗︎

Test results
Tests that failed  Failures 0
Tests that were flaky  Flaky 0
Tests that did not run due to a developer annotating a test with .skip  Pending 2
Tests that did not run due to a failure in a mocha hook  Skipped 0
Tests that passed  Passing 44
View all changes introduced in this branch ↗︎

This tab component now works like other components in the property panel and updates based on what is selected in the list
Currently hiding the stepper (up and down) for Input number field. This will be replaced in the future by a new component
Works on individual items and all items option will toggle visibility for all other items
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