From 0e189dd5548d0319898313311f4d0d1c10bcc383 Mon Sep 17 00:00:00 2001 From: Michiel Lankamp Date: Fri, 13 Jan 2023 09:06:33 +0100 Subject: [PATCH] fix: updated type for doughnut offset (#11051) --- docs/charts/doughnut.md | 2 +- src/types/index.d.ts | 4 +-- .../controllers/doughnut_spacing_offset.ts | 29 +++++++++++++++++++ 3 files changed, 32 insertions(+), 3 deletions(-) create mode 100644 test/types/controllers/doughnut_spacing_offset.ts diff --git a/docs/charts/doughnut.md b/docs/charts/doughnut.md index 20b16f308..f9f29d521 100644 --- a/docs/charts/doughnut.md +++ b/docs/charts/doughnut.md @@ -116,7 +116,7 @@ The doughnut/pie chart allows a number of properties to be specified for each da | [`hoverBorderJoinStyle`](#interactions) | `'round'`\|`'bevel'`\|`'miter'` | Yes | Yes | `undefined` | [`hoverBorderWidth`](#interactions) | `number` | Yes | Yes | `undefined` | [`hoverOffset`](#interactions) | `number` | Yes | Yes | `0` -| [`offset`](#styling) | `number` | Yes | Yes | `0` +| [`offset`](#styling) | `number`\|`number[]` | Yes | Yes | `0` | [`rotation`](#general) | `number` | - | - | `undefined` | [`spacing`](#styling) | `number` | - | - | `0` | [`weight`](#styling) | `number` | - | - | `1` diff --git a/src/types/index.d.ts b/src/types/index.d.ts index d462f3600..28de6bd68 100644 --- a/src/types/index.d.ts +++ b/src/types/index.d.ts @@ -260,7 +260,7 @@ export interface DoughnutControllerDatasetOptions /** * Arc offset (in pixels). */ - offset: number; + offset: number | number[]; /** * Starting angle to draw this dataset from. @@ -313,7 +313,7 @@ export interface DoughnutControllerChartOptions { /** * Arc offset (in pixels). */ - offset: number; + offset: number | number[]; /** * The outer radius of the chart. String ending with '%' means percentage of maximum radius, number means pixels. diff --git a/test/types/controllers/doughnut_spacing_offset.ts b/test/types/controllers/doughnut_spacing_offset.ts new file mode 100644 index 000000000..228f8f025 --- /dev/null +++ b/test/types/controllers/doughnut_spacing_offset.ts @@ -0,0 +1,29 @@ +import { Chart, ChartMeta, Element } from '../../../src/types.js'; + +const chart = new Chart('id', { + type: 'doughnut', + data: { + datasets: [{ + data: [10, 20, 40, 50, 5], + label: 'Dataset 1', + backgroundColor: [ + 'red', + 'orange', + 'yellow', + 'green', + 'blue' + ] + }], + labels: [ + 'Item 1', + 'Item 2', + 'Item 3', + 'Item 4', + 'Item 5' + ], + }, + options: { + spacing: 50, + offset: [0, 50, 0, 0, 0], + } +}); -- 2.47.3