fix(core): add initial selected item focus handling for tabs - #230
Conversation
Signed-off-by: Cory Rylan <crylan@nvidia.com>
- Introduced `initialItemIndex` property in `KeynavListControllerTestElement` to manage initial item focus. - Updated `keynavListConfig` to include `initialItem` for focus management. - Enhanced unit tests to verify initial tab focus behavior in `nve-tabs` component. - Adjusted tab items' tabindex based on selection state for improved accessibility. Signed-off-by: Cory Rylan <crylan@nvidia.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Enterprise Run ID: 📒 Files selected for processing (6)
Included review availability: Your plan provides up to 12 included reviews per hour; 11 remain after this review. 📝 WalkthroughWalkthroughThe key-navigation controller now supports an initial item. Tabs pass the selected tab to this configuration and test the resulting tabindex behavior. The default tabs example selects Details. Documentation navigation updates Datagrid, Forms, Media, and Monaco group structure. ChangesCore initial navigation
Site navigation structure
Estimated code review effort: 3 (Moderate) | ~20 minutes Merge Risk: ⚪ Minimal · up to This localized tabs focus-handling change is merge-ready after normal checks and review, with no actionable merge-blocking risk remaining. Sequence Diagram(s)sequenceDiagram
participant Tabs
participant KeynavListController
participant TabItems
Tabs->>KeynavListController: provide selected tab as initialItem
KeynavListController->>TabItems: initialize tab items
KeynavListController->>TabItems: set selected tab as active
Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Warning There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure. 🔧 ESLint
projects/core/src/internal/controllers/keynav-list.controller.test.tsESLint skipped: missing config or dependency (missing-dependency). The ESLint configuration references a package that is not available in the sandbox. projects/core/src/internal/controllers/keynav-list.controller.tsESLint skipped: the matched ESLint configuration already failed (missing-dependency). projects/core/src/tabs/tabs.examples.tsESLint skipped: the matched ESLint configuration already failed (missing-dependency).
Comment |
|
🎉 This issue has been resolved in version 2.3.2 🎉 |
|
🎉 This issue has been resolved in version 2.0.1 🎉 |
|
🎉 This issue has been resolved in version 2.1.3 🎉 |
Summary by CodeRabbit
New Features
Bug Fixes
Documentation