Commit Graph

18745 Commits

Author SHA1 Message Date
Evan Rusackas
0ec29bdd67 fix(tests): exclude compiled esm/lib directories from jest
Add modulePathIgnorePatterns to exclude compiled output directories
(esm/ and lib/) in packages and plugins from being tested by jest.
These directories contain transpiled build artifacts that have issues
with _jsx references in jest.mock() calls.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:39 +01:00
Evan Rusackas
4f1da90bc0 style: format with prettier
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:39 +01:00
Evan Rusackas
14092b5609 style: format with prettier
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:39 +01:00
Evan Rusackas
7d0d97bae7 fix(tests): fix test failures in ChartRenderer, ExploreChartHeader, and Chart
- ChartRenderer.test.tsx: Remove viz_type from formData to allow vizType
  prop to take precedence for suppressContextMenu test, use as unknown
  for test data type assertions
- ExploreChartHeader.test.tsx: Fix placeholder text assertion - use
  findByDisplayValue instead of findByText since chart has a title
- ExploreViewContainer: Pass exploreState prop to ExploreChartPanel
  to match original behavior of spread props
- ExploreChartPanel: Add exploreState to props interface

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:39 +01:00
Evan Rusackas
8ff65607e6 fix(types): add missing properties to DatasourceEditor types after rebase
- Add type_generic to Column interface for string column filtering
- Add currency_code_column to DatasourceObject interface for currency
  code column selection
- Fix theme possibly undefined errors with optional chaining and
  fallback values
- Fix SelectValue type assignments with proper type casts
- Change fontWeightMedium to fontWeightStrong (fontWeightMedium
  doesn't exist in theme)

These fixes address TypeScript errors introduced after rebasing on
master which included the Dynamic currency feature.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:38 +01:00
Evan Rusackas
121e4960a3 fix(types): resolve TypeScript errors in explore and report components
- Fix ExploreViewContainer type assertions for props passing
- Fix ExploreChartHeader.test.tsx with proper type imports
- Fix logger.test.ts with correct middleware typing
- Fix exploreReducer.ts with proper control state and function parameter types
- Fix test files (getChartDataUri, getChartKey, getExploreUrl, getSimpleSQLExpression)
- Fix HeaderReportDropdown and ReportModal type issues
- Fix useExploreAdditionalActionsMenu menu item literal types
- Update ExploreState interface to match expected types

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:38 +01:00
Evan Rusackas
1b406e2134 fix(types): address CI type errors in explore components
- Fix ExploreChartHeader.test.tsx: add missing ChartState properties to test props
- Fix ResultSet/index.tsx: use 'base' for mountExploreUrl, map columns to names
- Fix CopyToClipboardButton.test.tsx: pass data as array instead of object
- Fix ExploreChartPanel/index.tsx: use undefined instead of null, add form_data check,
  wrap setControlValue to adapt signature
- Fix ExploreViewContainer/index.tsx: remove unused KeyboardEvent import, fix history
  state types, cast form_data for isMatrixifyEnabled

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:38 +01:00
Evan Rusackas
9d082798c7 fix(types): improve type safety in explore components
- Fix embedded/utils.ts: use `as unknown as QueryFormData` for proper type cast
- Fix SaveDatasetModal: use 'base' instead of null for mountExploreUrl
- Fix ExploreChartHeader: add color_namespace to metadata type, fix FaveStar props,
  cast report to ReportObject, fix AlteredSliceTag formData types
- Fix useExploreAdditionalActionsMenu: fix StreamingProgress import, add ExploreSlice
  interface, fix onClick handlers with proper React.MouseEvent types, fix getChartPermalink
  datasource checks, fix VizType casts, fix exportType cast
- Fix FilterValue.tsx and FiltersConfigForm.tsx: use correct type for waitForAsyncData
  parameter in 202 response handling

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:38 +01:00
Evan Rusackas
8ba307b9d0 fix(types): fix TypeScript errors across multiple files
- DrillDetailPane: Cast datasourceType to DatasourceType enum
- FilterValue: Cast result types to ChartDataResponseResult
- FiltersConfigForm: Cast result types to ChartDataResponseResult
- embedded/utils: Change null to undefined and add QueryFormData cast
- embedded/utils.test: Add any casts for mock resolved values
- saveModalActions: Change null to undefined
- DataTableControl: Fix data prop type to array
- DataTableControls: Filter undefined from formattedTimeColumns
- useResultsPane: Cast ensureIsArray result to QueryResultInterface
- EmbedCodeContent: Use LatestQueryFormData type and guard datasource
- AnnotationLayerControl: Use Payload type and cast parameters
- ViewQueryModal: Cast ensureIsArray result to Result type

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:38 +01:00
Evan Rusackas
b03b68c342 fix(types): fix hooks and queriesData type issues in ChartRenderer
- Cast hooks to any to bypass onAddFilter signature mismatch
- Convert null to undefined for queriesData

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:38 +01:00
Evan Rusackas
d705549bc4 fix(types): fix remaining type mismatches in Chart components
- Use DataRecordFilters for initialValues type
- Fix postTransformProps type to match ChartRenderer
- Fix contextMenuRef type to use RefObject<ChartContextMenuRef>
- Use 'as unknown as' pattern for AnnotationLayer casts in tests
- Fix SUPERSET_WEBSERVER_TIMEOUT cast in test

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:38 +01:00
Evan Rusackas
5f023db487 fix(types): fix setControlValue type and thunk dispatch cast
- Change setControlValue type from Function to proper signature
- Use simpler 'as any' cast for thunk dispatch in mock store tests

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:37 +01:00
Evan Rusackas
b35866a863 fix(types): resolve remaining TypeScript errors in chartActions tests
- Use Awaited<ReturnType<...>> for async stub return type
- Fix SupersetClient.post mock implementations with proper type casting
- Use AnnotationSourceType.Native enum instead of string literal
- Add thunk action type assertion for store.dispatch calls

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:37 +01:00
Evan Rusackas
b3d99a2811 fix(types): align initialValues type and declare webpack globals
- Change initialValues type from object to Record<string, unknown>
- Add declaration for __webpack_require__ webpack global

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:37 +01:00
Evan Rusackas
dc009447de fix(types): use ContextMenuFilters from core and fix FeatureFlagMap type
- Import ContextMenuFilters from @superset-ui/core instead of local interface
- Update handleOnContextMenu to use ContextMenuFilters type
- Import and use FeatureFlagMap for window.featureFlags declaration in tests

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:37 +01:00
Evan Rusackas
aebca03533 fix(types): add chartRenderingSucceeded to Actions type
Add missing chartRenderingSucceeded method to Actions type in Chart.tsx
to match the ChartActions interface expected by ChartRenderer.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:37 +01:00
Evan Rusackas
c2c50a2afc fix(types): resolve TypeScript errors in Chart and chartActions tests
- Use ChartSource enum instead of string literals in Chart.tsx
- Add proper type casting for mock return types in chartActions.test.ts
- Add missing third argument (undefined) to ThunkAction calls
- Use AnnotationType/SourceType/Style enums instead of string literals
- Add `as unknown as` casting where mock types don't match actual types

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:37 +01:00
Evan Rusackas
b0b45cca04 fix(tests): add type casting for mock return types in chartActions tests
Add `as unknown as` casting to mock implementations to satisfy TypeScript's
strict type checking while preserving the original test behavior.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:37 +01:00
Evan Rusackas
5048433eab fix(types): widen onCellChange id parameter to string | number
Collection item IDs can be either string or number.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:36 +01:00
Evan Rusackas
eca23a1277 fix: address code review feedback
- Add safety check for empty json.result array in chartAction.ts
- Fix grammar: "active" -> "activate" in ReportModal error message
- Fix error message to be generic: remove "attached to this dashboard"

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:36 +01:00
Evan Rusackas
0afbc3ea3d fix(types): address code review feedback
- Add default value `inline = false` for Field component
- Fix onCellChange type from `boolean` to `unknown` in CollectionTable

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:36 +01:00
Evan Rusackas
8ccf4dfb75 fix(types): add type safety to DatasourceEditor and related components
- Add proper type definitions for DatabaseState and QueryResult interfaces
- Fix SpatialControl value type to use proper SpatialType union
- Fix DatabaseSelector and TableSelector db prop types
- Add proper type casts for itemRenderers in CollectionTable
- Remove non-existent props (controlId, canEdit, dbId, inline)
- Add missing sortColumns prop to CollectionTable
- Fix ResultTable props with proper defaults
- Add setCachedChanges to exploreUtils buildV1ChartDataPayload

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:36 +01:00
Evan Rusackas
9c3759a65d fix(types): address code review feedback for TypeScript migrations
- Fix filterField type mismatch in ReportModal reducer - map 'dashboard_id'/'chart_id' to 'dashboard'/'chart' properties
- Fix chartAction.ts type errors: properly type getExploreUrl params, handle null URLs, fix waitForAsyncData types
- Fix SliceUpdatedAction owners type mismatch - handle both number[] and {value, label}[] formats

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:36 +01:00
Evan Rusackas
c6da8acbc7 fix: resolve remaining TypeScript errors and code review feedback
- actions.ts: add error handling to editReport, guard against empty charts
- chartAction.ts: fix RootState type, cast SupersetClient calls, add AnnotationLayerWithOverrides type

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:36 +01:00
Evan Rusackas
0a3babf41a fix: resolve TypeScript errors in migrated files
- common.ts: wrap return in Boolean() for proper boolean type
- logger.test.ts: add dispatch property to MockStore interface
- exploreReducer.ts: use flexible ExtendedControlState interface, fix SliceUpdatedAction owners type
- ReportModal/actions.ts: use ThunkDispatch for thunk actions, add error handling to addReport
- ReportModal/reducer.ts: cast through unknown for dynamic property access

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:36 +01:00
Evan Rusackas
ff3b98e388 fix(chart): use setDataMask prop as fallback when actions.updateDataMask is absent
Ensures custom setDataMask handlers work in non-dashboard/embedded contexts.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:35 +01:00
Evan Rusackas
bef90c6283 fix(chart): remove unused POST_CHART_FORM_DATA constant
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:35 +01:00
Evan Rusackas
0da6adefa3 fix(chart): use derived vizType for drill-to-detail behavior check
Use vizType (derived from currentFormData) instead of formData.viz_type
so drill-to-detail props are correctly enabled/disabled when the user
changes visualization type without re-running the query.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:35 +01:00
Evan Rusackas
2a39dcfe16 fix(reports): only show success toast when delete succeeds
Move DELETE_REPORT dispatch and success toast from .finally() to .then()
so they only execute on successful deletion, not on failure.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:35 +01:00
Evan Rusackas
599e46ee21 fix: remove unused ChartDataResponse interface
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:35 +01:00
Evan Rusackas
574afe41c8 chore(frontend): migrate non-dashboard JS/JSX files to TypeScript
Migrates 15 core JavaScript/JSX files and 11 test files to TypeScript
as part of the ongoing frontend modernization effort.

Files migrated:
- src/utils/common.js → common.ts
- src/middleware/loggerMiddleware.js → loggerMiddleware.ts
- src/visualizations/presets/MainPreset.js → MainPreset.ts
- src/features/reports/ReportModal/actions.js → actions.ts
- src/features/reports/ReportModal/reducer.js → reducer.ts
- 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
- 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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 13:07:35 +01:00
Evan Rusackas
ae10e105c2 fix(chart): enable cross-filter on bar charts without dimensions (#37407)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 17:14:24 -08:00
dependabot[bot]
901dca58f7 chore(deps): bump JustinBeckwith/linkinator-action from 2.3 to 2.4 (#37562)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-31 03:06:30 -08:00
dependabot[bot]
d95a3d8426 chore(deps-dev): bump @applitools/eyes-storybook from 3.63.9 to 3.63.10 in /superset-frontend (#37566)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-31 03:06:09 -08:00
alok kumar priyadarshi
70b95ca1b9 fix(build): eliminate PostgreSQL extra installation on Python 3.12-based Superset Docker images (#37587) 2026-01-31 15:54:19 +07:00
Michael S. Molina
004f02746f fix(build): Increase ForkTsCheckerWebpackPlugin memory limit to fix OOM error (#37583) 2026-01-31 14:22:17 +07:00
Beto Dealmeida
5d20dc57d7 feat(oauth2): add PKCE support for database OAuth2 authentication (#37067) 2026-01-30 23:28:10 -05:00
Beto Dealmeida
05c2354997 feat: AWS Cross-Account IAM Authentication for Aurora (#37585) 2026-01-30 19:18:34 -05:00
Vitor Avila
6043e7e7e3 fix: more DB OAuth2 fixes (#37398) 2026-01-30 21:11:26 -03:00
Amin Ghadersohi
1ee14c5993 fix(mcp): improve prompts, resources, and instructions clarity (#37389) 2026-01-30 12:25:38 -08:00
Felipe López
9764a84402 fix(charts): Table chart shows an error on row limit (#37218) 2026-01-30 11:45:50 -08:00
JUST.in DO IT
570cc3e5f8 feat(sqllab): treeview table selection ui (#37298) 2026-01-30 11:07:56 -08:00
dependabot[bot]
66519c3a85 chore(deps-dev): bump fetch-mock from 11.1.5 to 12.6.0 in /superset-frontend/packages/superset-ui-core (#36662)
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: hainenber <dotronghai96@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Evan Rusackas <evan@rusackas.com>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: hainenber <dotronghai96@gmail.com>
2026-01-30 21:27:35 +07:00
dependabot[bot]
1f43138888 chore(deps): bump babel-loader from 9.2.1 to 10.0.0 in /docs (#37541)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-30 21:06:23 +07:00
dependabot[bot]
652d029a2d chore(deps-dev): bump @types/node from 25.0.10 to 25.1.0 in /superset-frontend (#37563)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-30 21:03:26 +07:00
dependabot[bot]
e67b1f5326 chore(deps-dev): bump baseline-browser-mapping from 2.9.18 to 2.9.19 in /superset-frontend (#37565)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-30 20:56:46 +07:00
dependabot[bot]
fa79a467e4 chore(deps): bump googleapis from 170.1.0 to 171.0.0 in /superset-frontend (#37564)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-30 16:57:04 +07:00
Pedro Rodrigues
2cce0308d4 fix: big number drill to details column data (#37068) 2026-01-30 12:32:49 +03:00
dependabot[bot]
c7fd1a2f65 chore(deps-dev): bump @types/node from 25.0.10 to 25.1.0 in /superset-websocket (#37539)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-30 10:22:41 +07:00
dependabot[bot]
ab4f646ef6 chore(deps): bump @babel/core from 7.28.5 to 7.28.6 in /docs (#37540)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-30 10:22:15 +07:00