rusackas opened a new pull request, #37880: URL: https://github.com/apache/superset/pull/37880
### SUMMARY Migrate the Explore Controls drag-and-drop functionality from react-dnd to @dnd-kit for React 18 compatibility. This PR is part of a larger effort to migrate the codebase from react-dnd to @dnd-kit, which is better maintained and fully compatible with React 18's concurrent rendering. ### BEFORE/AFTER SCREENSHOTS OR COVERAGE N/A - No visual changes. Drag-and-drop functionality remains the same. ### TESTING INSTRUCTIONS 1. Open the Explore view 2. Test dragging columns/metrics from the datasource panel to control dropzones 3. Test reordering columns/metrics within control panels 4. Verify drag feedback and animations work correctly ### ADDITIONAL INFORMATION #### Files Changed - `spec/helpers/testing-library.tsx` - Added `useDndKit: true` option for tests - `src/explore/components/DatasourcePanel/DatasourcePanelDragOption/index.tsx` - Updated drag source - `src/explore/components/ExploreContainer/ExploreDndContext.tsx` - NEW: DndContext wrapper with handlers - `src/explore/components/ExploreContainer/index.tsx` - Export new context - `src/explore/components/controls/ContourControl/index.tsx` - Added sortable props - `src/explore/components/controls/DndColumnSelectControl/DndColumnSelect.tsx` - Added sortable props - `src/explore/components/controls/DndColumnSelectControl/DndFilterSelect.tsx` - Added sortable props - `src/explore/components/controls/DndColumnSelectControl/DndMetricSelect.tsx` - Added sortable props - `src/explore/components/controls/DndColumnSelectControl/DndSelectLabel.tsx` - Added SortableContext - `src/explore/components/controls/DndColumnSelectControl/OptionWrapper.tsx` - Migrated to @dnd-kit/sortable - `src/explore/components/controls/OptionControls/index.tsx` - Migrated to @dnd-kit/sortable - Various test files updated to use `useDndKit: true` #### Note on CI The pre-commit type-checking hook may fail due to a pre-existing unrelated error (`ColorSchemeEnum` not exported from `@superset-ui/chart-controls`). This is caused by stale build artifacts and is not related to these changes. 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
