From: Jukka Kurkela Date: Thu, 19 Nov 2020 18:58:24 +0000 (+0200) Subject: Allow single parameter to Defaults.set (#8050) X-Git-Tag: v3.0.0-beta.7~26 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f96fa2b96dc3e5a0b55a95351fe7bf80876873d4;p=thirdparty%2FChart.js.git Allow single parameter to Defaults.set (#8050) * Allow single parameter to Defaults.set * Review update * Record --- diff --git a/src/core/core.defaults.js b/src/core/core.defaults.js index ac088cc8d..d0bd316e8 100644 --- a/src/core/core.defaults.js +++ b/src/core/core.defaults.js @@ -59,14 +59,21 @@ export class Defaults { this.scales = {}; this.controllers = {}; } + /** - * @param {string} scope - * @param {*} values + * @param {string|object} scope + * @param {object} [values] */ set(scope, values) { - return merge(getScope(this, scope), values); + if (typeof scope === 'string') { + return merge(getScope(this, scope), values); + } + return merge(getScope(this, ''), scope); } + /** + * @param {string} scope + */ get(scope) { return getScope(this, scope); } diff --git a/types/core/index.d.ts b/types/core/index.d.ts index 4691cf1ea..3f9e36a3c 100644 --- a/types/core/index.d.ts +++ b/types/core/index.d.ts @@ -333,6 +333,7 @@ export interface DatasetControllerChartComponent extends ChartComponent { }; } +export type AnyObject = Record; export interface Defaults extends CoreChartOptions, ElementChartOptions { controllers: { [key in ChartType]: DeepPartial< @@ -352,8 +353,9 @@ export interface Defaults extends CoreChartOptions, ElementChartOptions { plugins: PluginOptions; - set(scope: string, values: any): any; - get(scope: string): any; + set(values: AnyObject): AnyObject; + set(scope: string, values: AnyObject): AnyObject; + get(scope: string): AnyObject; /** * Routes the named defaults to fallback to another scope/name.