From cc9e88aebcbef79f60b560213227792d4324871c Mon Sep 17 00:00:00 2001 From: Evert Timberg Date: Mon, 3 Jul 2017 21:32:10 -0400 Subject: [PATCH] Support an array for line chart pointBorderWidth --- src/controllers/controller.line.js | 2 +- test/specs/controller.line.tests.js | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/src/controllers/controller.line.js b/src/controllers/controller.line.js index 6975b1ebb..97982bded 100644 --- a/src/controllers/controller.line.js +++ b/src/controllers/controller.line.js @@ -137,7 +137,7 @@ module.exports = function(Chart) { if (!isNaN(custom.borderWidth)) { borderWidth = custom.borderWidth; - } else if (!isNaN(dataset.pointBorderWidth)) { + } else if (!isNaN(dataset.pointBorderWidth) || helpers.isArray(dataset.pointBorderWidth)) { borderWidth = helpers.valueAtIndexOrDefault(dataset.pointBorderWidth, index, borderWidth); } else if (!isNaN(dataset.borderWidth)) { borderWidth = dataset.borderWidth; diff --git a/test/specs/controller.line.tests.js b/test/specs/controller.line.tests.js index f1fe61fac..4c9471db9 100644 --- a/test/specs/controller.line.tests.js +++ b/test/specs/controller.line.tests.js @@ -730,4 +730,24 @@ describe('Line controller tests', function() { expect(point._model.borderWidth).toBe(0); }); + + it('should allow an array as the point border width setting', function() { + var chart = window.acquireChart({ + type: 'line', + data: { + datasets: [{ + data: [10, 15, 0, -4], + label: 'dataset1', + pointBorderWidth: [1, 2, 3, 4] + }], + labels: ['label1', 'label2', 'label3', 'label4'] + } + }); + + var meta = chart.getDatasetMeta(0); + expect(meta.data[0]._model.borderWidth).toBe(1); + expect(meta.data[1]._model.borderWidth).toBe(2); + expect(meta.data[2]._model.borderWidth).toBe(3); + expect(meta.data[3]._model.borderWidth).toBe(4); + }); }); -- 2.47.3