rusackas opened a new pull request, #37107: URL: https://github.com/apache/superset/pull/37107
## Summary Migrates 15 core JavaScript/JSX files and 11 test files to TypeScript as part of the ongoing frontend modernization effort. ### Files Migrated **Utilities & Middleware (3 files)** - `src/utils/common.js` → `common.ts` - `src/middleware/loggerMiddleware.js` → `loggerMiddleware.ts` - `src/visualizations/presets/MainPreset.js` → `MainPreset.ts` **Reports (2 files)** - `src/features/reports/ReportModal/actions.js` → `actions.ts` - `src/features/reports/ReportModal/reducer.js` → `reducer.ts` **Explore (6 files)** - `src/explore/exploreUtils/index.js` → `index.ts` - `src/explore/reducers/exploreReducer.js` → `exploreReducer.ts` - `src/explore/components/EmbedCodeContent.jsx` → `EmbedCodeContent.tsx` - `src/explore/components/ExploreChartHeader/index.jsx` → `index.tsx` - `src/explore/components/ExploreViewContainer/index.jsx` → `index.tsx` - `src/explore/components/useExploreAdditionalActionsMenu/index.jsx` → `index.tsx` **Chart & Datasource (4 files)** - `src/components/Chart/chartAction.js` → `chartAction.ts` - `src/components/Chart/ChartRenderer.jsx` → `ChartRenderer.tsx` - `src/components/Datasource/components/DatasourceEditor/DatasourceEditor.jsx` → `DatasourceEditor.tsx` - `src/components/Datasource/utils/index.js` → `index.ts` ### Key Improvements - Added proper TypeScript interfaces for all components and functions - Replaced PropTypes with TypeScript interfaces - Added typed Redux actions and state interfaces - **Zero `any` types** used throughout ## Testing Instructions 1. Verify type checking passes: `npm run type` (note: pre-existing TS6305 errors in packages/plugins are unrelated) 2. Verify linting passes: `npm run lint` 3. Run affected tests: `npm run test -- --testPathPattern="(common|logger|MainPreset|ReportModal|exploreUtils|exploreReducer|EmbedCodeContent|ExploreChartHeader|ExploreViewContainer|useExploreAdditionalActionsMenu|chartAction|ChartRenderer|DatasourceEditor)"` ## Additional Information This PR excludes dashboard-related files which will be migrated in a separate PR due to their interconnected nature. 🤖 Generated with [Claude Code](https://claude.ai/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]
