From 632e081d9b55c58a8bd61d499e9fc3bc9d1d3f3d Mon Sep 17 00:00:00 2001 From: Thomas Chandelle Date: Fri, 10 Nov 2017 14:53:59 +0100 Subject: [PATCH 1/3] Fixes tooltip callbacks, set return and data type http://www.chartjs.org/docs/latest/configuration/tooltip.html#tooltip-callbacks All functions are called with the same arguments: a tooltip item and the data object passed to the chart. All functions must return either a string or an array of strings --- types/chart.js/index.d.ts | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/types/chart.js/index.d.ts b/types/chart.js/index.d.ts index ef9e8b0675..54e9f4ddda 100644 --- a/types/chart.js/index.d.ts +++ b/types/chart.js/index.d.ts @@ -115,17 +115,17 @@ declare namespace Chart { } interface ChartTooltipCallback { - beforeTitle?(item?: ChartTooltipItem[], data?: any): void; - title?(item?: ChartTooltipItem[], data?: any): void; - afterTitle?(item?: ChartTooltipItem[], data?: any): void; - beforeBody?(item?: ChartTooltipItem[], data?: any): void; - beforeLabel?(tooltipItem?: ChartTooltipItem, data?: any): void; - label?(tooltipItem?: ChartTooltipItem, data?: any): void; - afterLabel?(tooltipItem?: ChartTooltipItem, data?: any): void; - afterBody?(item?: ChartTooltipItem[], data?: any): void; - beforeFooter?(item?: ChartTooltipItem[], data?: any): void; - footer?(item?: ChartTooltipItem[], data?: any): void; - afterFooter?(item?: ChartTooltipItem[], data?: any): void; + beforeTitle?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; + title?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; + afterTitle?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; + beforeBody?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; + beforeLabel?(tooltipItem?: ChartTooltipItem, data?: ChartData): string | string[]; + label?(tooltipItem?: ChartTooltipItem, data?: ChartData): string | string[]; + afterLabel?(tooltipItem?: ChartTooltipItem, data?: ChartData): string | string[]; + afterBody?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; + beforeFooter?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; + footer?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; + afterFooter?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; } interface ChartAnimationParameter { From 904f3cc6c6780b9c07c960abb67b8f674b0916f1 Mon Sep 17 00:00:00 2001 From: Thomas Chandelle Date: Sun, 12 Nov 2017 14:48:44 +0100 Subject: [PATCH 2/3] Add labelColor and labelTextColor in tooltip callbacks --- types/chart.js/index.d.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/types/chart.js/index.d.ts b/types/chart.js/index.d.ts index 54e9f4ddda..51bbc3b49e 100644 --- a/types/chart.js/index.d.ts +++ b/types/chart.js/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for Chart.js 2.6 +// Type definitions for Chart.js 2.7 // Project: https://github.com/nnnick/Chart.js // Definitions by: Alberto Nuti // Fabien Lavocat @@ -114,6 +114,11 @@ declare namespace Chart { index?: number; } + interface ChartTooltipLabelColor { + borderColor: ChartColor; + backgroundColor: ChartColor; + } + interface ChartTooltipCallback { beforeTitle?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; title?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; @@ -121,6 +126,8 @@ declare namespace Chart { beforeBody?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; beforeLabel?(tooltipItem?: ChartTooltipItem, data?: ChartData): string | string[]; label?(tooltipItem?: ChartTooltipItem, data?: ChartData): string | string[]; + labelColor?(tooltipItem?: ChartTooltipItem, chart?: Chart): ChartTooltipLabelColor; + labelTextColor?(tooltipItem?: ChartTooltipItem, chart?: Chart): string; afterLabel?(tooltipItem?: ChartTooltipItem, data?: ChartData): string | string[]; afterBody?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; beforeFooter?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; From 04ee02e9c8c44ed26e4a7f3d8729af59da9d5289 Mon Sep 17 00:00:00 2001 From: Thomas Chandelle Date: Thu, 16 Nov 2017 08:53:18 +0100 Subject: [PATCH 3/3] Make the arguments non-optional, they will always be set by Chart.js --- types/chart.js/index.d.ts | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/types/chart.js/index.d.ts b/types/chart.js/index.d.ts index 51bbc3b49e..549c8041ab 100644 --- a/types/chart.js/index.d.ts +++ b/types/chart.js/index.d.ts @@ -120,19 +120,19 @@ declare namespace Chart { } interface ChartTooltipCallback { - beforeTitle?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; - title?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; - afterTitle?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; - beforeBody?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; - beforeLabel?(tooltipItem?: ChartTooltipItem, data?: ChartData): string | string[]; - label?(tooltipItem?: ChartTooltipItem, data?: ChartData): string | string[]; - labelColor?(tooltipItem?: ChartTooltipItem, chart?: Chart): ChartTooltipLabelColor; - labelTextColor?(tooltipItem?: ChartTooltipItem, chart?: Chart): string; - afterLabel?(tooltipItem?: ChartTooltipItem, data?: ChartData): string | string[]; - afterBody?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; - beforeFooter?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; - footer?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; - afterFooter?(item?: ChartTooltipItem[], data?: ChartData): string | string[]; + beforeTitle?(item: ChartTooltipItem[], data: ChartData): string | string[]; + title?(item: ChartTooltipItem[], data: ChartData): string | string[]; + afterTitle?(item: ChartTooltipItem[], data: ChartData): string | string[]; + beforeBody?(item: ChartTooltipItem[], data: ChartData): string | string[]; + beforeLabel?(tooltipItem: ChartTooltipItem, data: ChartData): string | string[]; + label?(tooltipItem: ChartTooltipItem, data: ChartData): string | string[]; + labelColor?(tooltipItem: ChartTooltipItem, chart: Chart): ChartTooltipLabelColor; + labelTextColor?(tooltipItem: ChartTooltipItem, chart: Chart): string; + afterLabel?(tooltipItem: ChartTooltipItem, data: ChartData): string | string[]; + afterBody?(item: ChartTooltipItem[], data: ChartData): string | string[]; + beforeFooter?(item: ChartTooltipItem[], data: ChartData): string | string[]; + footer?(item: ChartTooltipItem[], data: ChartData): string | string[]; + afterFooter?(item: ChartTooltipItem[], data: ChartData): string | string[]; } interface ChartAnimationParameter {