feat: migrate Dialog component from @headlessui/react to @radix-ui/react-dialog#38
Conversation
ErnieAtLYD
commented
Aug 31, 2025
- Replace the Dialog component implementation from using @headlessui/react to @radix-ui/react-dialog for enhanced accessibility features. Update usage examples and documentation to reflect the new API and add backward compatibility notes for the legacy Dialog API.
…act-dialog Replace the Dialog component implementation from using @headlessui/react to @radix-ui/react-dialog for enhanced accessibility features. Update usage examples and documentatio to reflect the new API and add backward compatibility notes for the legacy Dialog API.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This comment was marked as outdated.
This comment was marked as outdated.
…ix UI This commit replaces the HeadlessUI dialog implementation with Radix UI components for better control and customization. It removes unused imports and refactors the dialog te suite to align with the new library's API. The commit also cleans up legacy code, updates comments to reflect the new library usage, and ensures that the dialog component maintains accessibility standards. Additionally, it introduces new base Dialog components for a more modular structure.
- Replace @headlessui/react with @radix-ui/react-dialog - Maintain backward compatibility with legacy Dialog API - Add new composable Radix UI Dialog components - Update tests to work with Radix UI (no more JSDOM issues) - Remove unused dependencies (@playwright/experimental-ct-react, vite) - Update CLAUDE.md documentation with new architecture - All tests passing with improved reliability 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
- Remove restoreFocus prop which was removed during Radix UI migration - Radix UI handles focus restoration automatically - Fixes TypeScript error in focus management test 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit updates the package.json to apply prettier formatting to YAML files in addition to json, md, css, and scss files. This ensures consistent formatting across more file types in the codebase.
|
Looks like there are a few issues preventing this PR from being merged!
If you'd like me to help, just leave a comment, like Feel free to include any additional details that might help me get this PR into a better state. You can manage your notification settings |
|
Claude finished @ErnieAtLYD's task —— View job Dialog Component Migration ReviewI've completed my analysis of the PR that migrates the Dialog component from @headlessui/react to @radix-ui/react-dialog. Here's my comprehensive review: ✅ Code Quality & Best PracticesExcellent implementation with several highlights:
Minor Suggestions:
✅ Migration StrategyWell-executed migration:
|
This commit introduces several improvements to the dialog component, enhancing accessibility by adding JSDoc comments to the base dialog components, overlay, content, header, footer, title, and description. Additionally, the test suite has been expanded to include user event interactions, ensuring that the `onClose` callback is triggered when the backdrop is clicked. The async test setup with `userEvent` has been implemented to simulate user interactions more accurately. BREAKING CHANGE: The order of exports in `dialog.tsx` has been modified, which may affect consumers relying on the previous order.
|
Claude finished @ErnieAtLYD's task —— View job Dialog Component Migration ReviewReviewing the migration from @headlessui/react to @radix-ui/react-dialog... Todo List
✅ Code Quality & Best PracticesExcellent implementation with strong points:
Minor Suggestions:
✅ Migration StrategyWell-executed approach:
|