This is an automated email from the ASF dual-hosted git repository.

rusackas pushed a commit to branch chore/ts-migration-non-dashboard
in repository https://gitbox.apache.org/repos/asf/superset.git

commit e2a75392a5ddb0d5a4de98141369fdbdc304bcb9
Author: Evan Rusackas <[email protected]>
AuthorDate: Wed Jan 14 22:01:26 2026 -0800

    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 <[email protected]>
---
 .../src/components/Chart/ChartRenderer.test.tsx              |  7 ++++---
 superset-frontend/src/components/Chart/ChartRenderer.tsx     | 12 +++---------
 2 files changed, 7 insertions(+), 12 deletions(-)

diff --git a/superset-frontend/src/components/Chart/ChartRenderer.test.tsx 
b/superset-frontend/src/components/Chart/ChartRenderer.test.tsx
index 1d362f084a..c54b40f5f3 100644
--- a/superset-frontend/src/components/Chart/ChartRenderer.test.tsx
+++ b/superset-frontend/src/components/Chart/ChartRenderer.test.tsx
@@ -22,6 +22,7 @@ import {
   getChartMetadataRegistry,
   VizType,
   JsonObject,
+  FeatureFlagMap,
 } from '@superset-ui/core';
 import ChartRenderer, {
   ChartRendererProps,
@@ -93,15 +94,15 @@ const requiredProps: Partial<ChartRendererProps> = {
 
 declare global {
   interface Window {
-    featureFlags: Record<string, boolean>;
+    featureFlags: FeatureFlagMap;
   }
 }
 
 beforeAll(() => {
-  window.featureFlags = { DRILL_TO_DETAIL: true };
+  window.featureFlags = { DRILL_TO_DETAIL: true } as FeatureFlagMap;
 });
 afterAll(() => {
-  window.featureFlags = {};
+  window.featureFlags = {} as FeatureFlagMap;
 });
 
 test('should render SuperChart', () => {
diff --git a/superset-frontend/src/components/Chart/ChartRenderer.tsx 
b/superset-frontend/src/components/Chart/ChartRenderer.tsx
index a2c66662ea..4cc57617fb 100644
--- a/superset-frontend/src/components/Chart/ChartRenderer.tsx
+++ b/superset-frontend/src/components/Chart/ChartRenderer.tsx
@@ -32,6 +32,7 @@ import {
   JsonObject,
   LatestQueryFormData,
   AgGridChartState,
+  ContextMenuFilters,
 } from '@superset-ui/core';
 import { logging } from '@apache-superset/core';
 import { t } from '@apache-superset/core/ui';
@@ -52,13 +53,6 @@ interface LegendState {
   [name: string]: boolean;
 }
 
-// Types for context menu filters
-interface ContextMenuFilter {
-  col: string;
-  val: FilterValue | FilterValue[];
-  op?: string;
-}
-
 // Types for chart actions
 interface ChartActions {
   chartRenderingSucceeded: (chartId: number) => Dispatch;
@@ -153,7 +147,7 @@ interface ChartHooks {
   onContextMenu?: (
     offsetX: number,
     offsetY: number,
-    filters?: ContextMenuFilter[],
+    filters?: ContextMenuFilters,
   ) => void;
   onError: (error: Error, info: { componentStack: string } | null) => void;
   setControlValue: (name: string, value: unknown) => void;
@@ -379,7 +373,7 @@ class ChartRenderer extends Component<ChartRendererProps, 
ChartRendererState> {
   handleOnContextMenu(
     offsetX: number,
     offsetY: number,
-    filters?: ContextMenuFilter[],
+    filters?: ContextMenuFilters,
   ): void {
     this.contextMenuRef.current?.open(offsetX, offsetY, filters);
     this.setState({ inContextMenu: true });

Reply via email to