diff --git a/packages/ag-charts-community/src/api/preset/gauge.ts b/packages/ag-charts-community/src/api/preset/gauge.ts index 0c9ee9fda2..97378090cf 100644 --- a/packages/ag-charts-community/src/api/preset/gauge.ts +++ b/packages/ag-charts-community/src/api/preset/gauge.ts @@ -1,7 +1,9 @@ +import type { RequireOptional } from 'ag-charts-core'; import { type AgBaseGaugePresetOptions, type AgCartesianAxisOptions, type AgCartesianAxisPosition, + type AgChartTooltipOptions, type AgGaugeChartOptions, type AgGaugeOptions, type AgLinearGaugeOptions, @@ -17,6 +19,21 @@ import { import { mergeArrayDefaults, mergeDefaults } from '../../util/object'; import { IGNORED_PROP, pickProps } from './presetUtils'; +function pickTooltipProps(tooltip: AgChartTooltipOptions | undefined): AgChartTooltipOptions | undefined { + if (tooltip === undefined) return undefined; + + const { enabled, showArrow, range, position, delay, wrapping } = tooltip; + const result: RequireOptional = { + enabled, + showArrow, + range, + position, + delay, + wrapping, + }; + return Object.fromEntries(Object.entries(result).filter(([_, value]) => value !== undefined)); +} + function isRadialGauge(opts: AgGaugeOptions): opts is AgRadialGaugeOptions { return opts.type === 'radial-gauge'; } @@ -111,6 +128,7 @@ function radialGaugeOptions(opts: AgRadialGaugeOptions) { subtitle, theme, title, + tooltip: pickTooltipProps(tooltip), width, }); @@ -238,6 +256,7 @@ function linearGaugeOptions(opts: AgLinearGaugeOptions): AgGaugeChartOptions { subtitle, theme, title, + tooltip: pickTooltipProps(tooltip), width, }); const scaleOpts = pickProps(scale, { @@ -361,6 +380,7 @@ export function gauge( subtitle, theme, title, + tooltip, width, } = opts; return pickProps(opts, { @@ -378,6 +398,7 @@ export function gauge( subtitle, theme, title, + tooltip, width, }); } diff --git a/packages/ag-charts-enterprise/src/series/linear-gauge/linearGaugeModule.ts b/packages/ag-charts-enterprise/src/series/linear-gauge/linearGaugeModule.ts index 510396770e..f3c9079320 100644 --- a/packages/ag-charts-enterprise/src/series/linear-gauge/linearGaugeModule.ts +++ b/packages/ag-charts-enterprise/src/series/linear-gauge/linearGaugeModule.ts @@ -24,6 +24,9 @@ export const LinearGaugeModule: _ModuleSupport.SeriesModule<'linear-gauge'> = { themeTemplate: { minWidth: 200, minHeight: 200, + tooltip: { + enabled: false, + }, series: { thickness: 50, bar: { @@ -62,9 +65,6 @@ export const LinearGaugeModule: _ModuleSupport.SeriesModule<'linear-gauge'> = { color: DEFAULT_INVERTED_LABEL_COLOUR, }, margin: 4, - tooltip: { - enabled: false, - }, }, axes: { [CARTESIAN_AXIS_TYPE.NUMBER]: { diff --git a/packages/ag-charts-enterprise/src/series/radial-gauge/radialGaugeModule.ts b/packages/ag-charts-enterprise/src/series/radial-gauge/radialGaugeModule.ts index db0e2df2e4..32a05032af 100644 --- a/packages/ag-charts-enterprise/src/series/radial-gauge/radialGaugeModule.ts +++ b/packages/ag-charts-enterprise/src/series/radial-gauge/radialGaugeModule.ts @@ -24,6 +24,9 @@ export const RadialGaugeModule: _ModuleSupport.SeriesModule<'radial-gauge'> = { themeTemplate: { minWidth: 200, minHeight: 200, + tooltip: { + enabled: false, + }, series: { outerRadiusRatio: 1, innerRadiusRatio: 0.8, @@ -73,9 +76,6 @@ export const RadialGaugeModule: _ModuleSupport.SeriesModule<'radial-gauge'> = { fontFamily: { ref: 'fontFamily' }, color: DEFAULT_MUTED_LABEL_COLOUR, }, - tooltip: { - enabled: false, - }, }, axes: { [POLAR_AXIS_TYPE.ANGLE_NUMBER]: { diff --git a/packages/ag-charts-types/src/chart/themeOptions.ts b/packages/ag-charts-types/src/chart/themeOptions.ts index 4663d72e4d..a339a67aa3 100644 --- a/packages/ag-charts-types/src/chart/themeOptions.ts +++ b/packages/ag-charts-types/src/chart/themeOptions.ts @@ -240,6 +240,7 @@ export type AgBaseGaugePresetThemeOptions = Pick< | 'padding' | 'subtitle' | 'title' + | 'tooltip' | 'width' >; diff --git a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-bar-highlight-chromium-linux.png b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-bar-highlight-chromium-linux.png index 121685bc7c..f9cbf539a3 100644 Binary files a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-bar-highlight-chromium-linux.png and b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-bar-highlight-chromium-linux.png differ diff --git a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-corners-container-chromium-linux.png b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-corners-container-chromium-linux.png index a879c658b9..cdac1da25c 100644 Binary files a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-corners-container-chromium-linux.png and b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-corners-container-chromium-linux.png differ diff --git a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-corners-item-chromium-linux.png b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-corners-item-chromium-linux.png index 391e62a2b8..ea32ebeea2 100644 Binary files a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-corners-item-chromium-linux.png and b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-corners-item-chromium-linux.png differ diff --git a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-corners-segmented-container-chromium-linux.png b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-corners-segmented-container-chromium-linux.png index a74be1e8a9..0d5176f210 100644 Binary files a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-corners-segmented-container-chromium-linux.png and b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-corners-segmented-container-chromium-linux.png differ diff --git a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-corners-segmented-item-chromium-linux.png b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-corners-segmented-item-chromium-linux.png index e645c25497..a8ac468365 100644 Binary files a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-corners-segmented-item-chromium-linux.png and b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-corners-segmented-item-chromium-linux.png differ diff --git a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-target0-highlight-chromium-linux.png b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-target0-highlight-chromium-linux.png index 4ceb171b7e..bf7b869852 100644 Binary files a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-target0-highlight-chromium-linux.png and b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-target0-highlight-chromium-linux.png differ diff --git a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-target2-highlight-chromium-linux.png b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-target2-highlight-chromium-linux.png index b14b70d318..368e00c914 100644 Binary files a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-target2-highlight-chromium-linux.png and b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/linear-gauge-target2-highlight-chromium-linux.png differ diff --git a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-corners-container-chromium-linux.png b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-corners-container-chromium-linux.png index 3117c91a22..8a19742cfb 100644 Binary files a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-corners-container-chromium-linux.png and b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-corners-container-chromium-linux.png differ diff --git a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-corners-item-chromium-linux.png b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-corners-item-chromium-linux.png index 7f8c27b0cd..5147746d4f 100644 Binary files a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-corners-item-chromium-linux.png and b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-corners-item-chromium-linux.png differ diff --git a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-corners-segmented-container-chromium-linux.png b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-corners-segmented-container-chromium-linux.png index 4d64b4b124..ff6c3336d8 100644 Binary files a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-corners-segmented-container-chromium-linux.png and b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-corners-segmented-container-chromium-linux.png differ diff --git a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-corners-segmented-item-chromium-linux.png b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-corners-segmented-item-chromium-linux.png index c2aa7c8d5c..7de5527bc2 100644 Binary files a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-corners-segmented-item-chromium-linux.png and b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-corners-segmented-item-chromium-linux.png differ diff --git a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-hideNeedle-hideBar-chromium-linux.png b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-hideNeedle-hideBar-chromium-linux.png index 6c56885f80..b637d78e92 100644 Binary files a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-hideNeedle-hideBar-chromium-linux.png and b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-hideNeedle-hideBar-chromium-linux.png differ diff --git a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-hideNeedle-showBar-chromium-linux.png b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-hideNeedle-showBar-chromium-linux.png index cb66ebb812..cda858b58b 100644 Binary files a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-hideNeedle-showBar-chromium-linux.png and b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-hideNeedle-showBar-chromium-linux.png differ diff --git a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-showNeedle-hideBar-chromium-linux.png b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-showNeedle-hideBar-chromium-linux.png index 7514ab8b09..660e28c4d4 100644 Binary files a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-showNeedle-hideBar-chromium-linux.png and b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-showNeedle-hideBar-chromium-linux.png differ diff --git a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-showNeedle-showBar-chromium-linux.png b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-showNeedle-showBar-chromium-linux.png index ce07f877c4..2188130dbd 100644 Binary files a/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-showNeedle-showBar-chromium-linux.png and b/packages/ag-charts-website/e2e/keyboard-nav.spec.ts-snapshots/radial-gauge-showNeedle-showBar-chromium-linux.png differ