From 88de438c0ef62c97277710e8b7c7733e7a69c120 Mon Sep 17 00:00:00 2001 From: Craig Vermeer Date: Wed, 10 Aug 2016 09:54:21 -0400 Subject: [PATCH] 3127 - Modify the itemSort callback for tooltips to accept a third parameter of the data object passed to the chart --- docs/01-Chart-Configuration.md | 2 +- src/core/core.tooltip.js | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/01-Chart-Configuration.md b/docs/01-Chart-Configuration.md index 7eef8c827..edcb882cd 100644 --- a/docs/01-Chart-Configuration.md +++ b/docs/01-Chart-Configuration.md @@ -212,7 +212,7 @@ Name | Type | Default | Description enabled | Boolean | true | Are tooltips enabled custom | Function | null | See [section](#chart-configuration-custom-tooltips) below mode | String | 'single' | Sets which elements appear in the tooltip. Acceptable options are `'single'`, `'label'` or `'x-axis'`.
 
`single` highlights the closest element.
 
`label` highlights elements in all datasets at the same `X` value.
 
`'x-axis'` also highlights elements in all datasets at the same `X` value, but activates when hovering anywhere within the vertical slice of the x-axis representing that `X` value. -itemSort | Function | undefined | Allows sorting of [tooltip items](#chart-configuration-tooltip-item-interface). Must implement a function that can be passed to [Array.prototype.sort](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort) +itemSort | Function | undefined | Allows sorting of [tooltip items](#chart-configuration-tooltip-item-interface). Must implement at minimum a function that can be passed to [Array.prototype.sort](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort). This function can also accept a third parameter that is the data object passed to the chart. backgroundColor | Color | 'rgba(0,0,0,0.8)' | Background color of the tooltip titleFontFamily | String | "'Helvetica Neue', 'Helvetica', 'Arial', sans-serif" | Font family for tooltip title inherited from global font family titleFontSize | Number | 12 | Font size for tooltip title inherited from global font size diff --git a/src/core/core.tooltip.js b/src/core/core.tooltip.js index 6ab623886..8da2fa44e 100755 --- a/src/core/core.tooltip.js +++ b/src/core/core.tooltip.js @@ -292,7 +292,9 @@ module.exports = function(Chart) { // If the user provided a sorting function, use it to modify the tooltip items if (opts.itemSort) { - tooltipItems = tooltipItems.sort(opts.itemSort); + tooltipItems = tooltipItems.sort(function(a,b) { + return opts.itemSort(a,b, data); + }); } // If there is more than one item, show color items -- 2.47.2