From: Evert Timberg Date: Mon, 6 Jan 2020 12:40:49 +0000 (-0500) Subject: Handle font sizes that are set as strings (#6921) X-Git-Tag: v3.0.0-alpha~154 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=ac85ce41db282368de50cf7dfdb9cf386cbfbf62;p=thirdparty%2FChart.js.git Handle font sizes that are set as strings (#6921) --- diff --git a/src/helpers/helpers.options.js b/src/helpers/helpers.options.js index 15e20f161..4eb84707c 100644 --- a/src/helpers/helpers.options.js +++ b/src/helpers/helpers.options.js @@ -90,8 +90,13 @@ export function toPadding(value) { * @private */ export function _parseFont(options) { - var size = valueOrDefault(options.fontSize, defaults.fontSize); - var font = { + let size = valueOrDefault(options.fontSize, defaults.fontSize); + + if (typeof size === 'string') { + size = parseInt(size, 10); + } + + const font = { family: valueOrDefault(options.fontFamily, defaults.fontFamily), lineHeight: toLineHeight(valueOrDefault(options.lineHeight, defaults.lineHeight), size), size: size, diff --git a/test/specs/helpers.options.tests.js b/test/specs/helpers.options.tests.js index f41dde4fb..268e9a9f6 100644 --- a/test/specs/helpers.options.tests.js +++ b/test/specs/helpers.options.tests.js @@ -113,6 +113,21 @@ describe('Chart.helpers.options', function() { weight: null }); }); + it ('should handle a string font size', function() { + expect(parseFont({ + fontFamily: 'bla', + lineHeight: 8, + fontSize: '21', + fontStyle: 'zzz' + })).toEqual({ + family: 'bla', + lineHeight: 8 * 21, + size: 21, + string: 'zzz 21px bla', + style: 'zzz', + weight: null + }); + }); it('should return null as a font string if fontSize or fontFamily are missing', function() { const fontFamily = Chart.defaults.fontFamily; const fontSize = Chart.defaults.fontSize;