Show chevron on hover in VerticalSubViewsContainer Header#8532
Draft
kube wants to merge 22 commits intocf/h-5655-refactor-selection-logicfrom
Draft
Show chevron on hover in VerticalSubViewsContainer Header#8532kube wants to merge 22 commits intocf/h-5655-refactor-selection-logicfrom
kube wants to merge 22 commits intocf/h-5655-refactor-selection-logicfrom
Conversation
Extract common filterable list pattern into createFilterableListSubView factory. Refactor nodes-list, types-list, parameters-list, and differential-equations-list to use the shared component, reducing duplication of selection handling, row styles, and empty state rendering. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…is menu - Update list item styles: 32px height, 8px border radius, 14px font, semantic color tokens, neutral hover/selected backgrounds - Replace inline delete button with horizontal ellipsis (TbDots) that opens a Menu with a destructive "Delete" action - Ellipsis button fades in on row hover with subtle icon slide animation, stays visible while menu is open via data-state selector - Add text overflow ellipsis to all list item names - Update nodes-list font size and colors to match design tokens Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…tons - Add getMenuItems config param so the container owns Menu rendering - Extract RowMenu component that skips rendering when items array is empty - Move menu item definitions from renderItem to getMenuItems in all subviews - Replace TbFilter with LuListFilter, add LuArrowDownWideNarrow (sort) and LuSearch (search) icon buttons in the header (no-ops for now) - Place filter/sort/search buttons before subview-specific actions Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…hen menu open - Use stopPropagation on ellipsis button instead of DOM query guard - Show hover background on row when its menu is open via :has selector Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Scope chevron hover to toggle section only, not full header row - Show header actions and info tooltip only on hover/focus-within with opacity animation - Add outlined variant to InfoIconTooltip, used in subview headers - Move item icons to FilterableListItem.icon prop with consistent rendering - Wrap list items in content/name containers in filterable-list-sub-view - Remove redundant wrapper styles from individual subview lists - Add alwaysShowHeaderAction option to SubView, used by visualizer - Align row menu to bottom-end Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add optional `icon` prop to SubView type and update VerticalSubViewsContainer to render distinct main vs collapsible header styles matching the Figma design. Main headers now show an outline icon + subtle text with a bottom border. All PropertiesPanel main SubViews (Place, Transition, Arc, Parameter, Type, Differential Equation) now include Lucide outline icons and use alwaysShowHeaderAction where applicable. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Create constants/entity-icons.tsx as the single source of truth for all Petri net entity icons (outline and filled variants). Update FilterableListSubView to control icon size and default color centrally, with an iconColor override used by TokenTypes for per-type coloring. All list subviews now show their entity icon consistently. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
… subviews Internalize listItemNameStyle within FilterableListSubView so renderItem returns plain text/nodes wrapped automatically. Simplify all list subview renderItem callbacks to return strings instead of styled spans. Reorder LEFT_SIDEBAR_SUBVIEWS to show Nodes first. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Change SubView.icon from ReactNode to ComponentType<{ size: number }> so
the container controls the icon size (HEADER_ICON_SIZE = 16). All SubView
consumers now pass icon components directly instead of rendered elements.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…e entity icons Clicking in the list container but not on an item now calls clearSelection to deselect all. Also update Parameter/TokenType/DifferentialEquation icons. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Increase default panel content horizontal padding to 4 and use negative margin on FilterableListSubView to reduce its effective padding to 3. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…terable list and menu - Add Arrow Up/Down keyboard navigation with focused item tracking - Support Shift+Click and Shift+Arrow range selection via selectRange helper - Ctrl/Cmd+Click toggles multi-selection with anchor tracking - Escape clears selection and resets focus state - Clamp focus/anchor indices when item list shrinks - Auto-scroll focused items into view - Add ARIA listbox/option roles for accessibility - Suppress default browser focus outline on list container - Add _highlighted styles to Menu items and submenu triggers for keyboard focus Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Convert headerRowStyle to cva with isCollapsed variant that sets borderBottomColor to transparent, avoiding visual double-borders between collapsed sections. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace raw [44px] with token value for consistent sizing. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Clear focusedIndex and anchorIndex on blur when focus moves outside the list container, so stale keyboard state doesn't persist. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace fixed minWidth with flex: 1 so the title input expands to use all remaining space in the left section. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
2 Skipped Deployments
|
Merged
3 tasks
Collaborator
Author
|
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
This stack of pull requests is managed by Graphite. Learn more about stacking. |
This was referenced Mar 12, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.

🌟 What is the purpose of this PR?
🔗 Related links
🚫 Blocked by
🔍 What does this change?
Pre-Merge Checklist 🚀
🚢 Has this modified a publishable library?
This PR:
📜 Does this require a change to the docs?
The changes in this PR:
🕸️ Does this require a change to the Turbo Graph?
The changes in this PR:
turbo.json's have been updated to reflect this🐾 Next steps
🛡 What tests cover this?
❓ How to test this?
📹 Demo