chartist 1.3.1 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/charts/BarChart/BarChart.d.ts.map +1 -1
- package/dist/charts/LineChart/LineChart.d.ts.map +1 -1
- package/dist/charts/PieChart/PieChart.d.ts +8 -0
- package/dist/charts/PieChart/PieChart.d.ts.map +1 -1
- package/dist/charts/PieChart/PieChart.types.d.ts +5 -1
- package/dist/charts/PieChart/PieChart.types.d.ts.map +1 -1
- package/dist/core/creation.d.ts +2 -2
- package/dist/core/creation.d.ts.map +1 -1
- package/dist/core/types.d.ts +8 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/index.cjs +37 -8
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +37 -8
- package/dist/index.js.map +1 -1
- package/dist/index.umd.js +1 -1
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BarChart.d.ts","sourceRoot":"","sources":["../../../src/charts/BarChart/BarChart.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EACZ,eAAe,EACf,2BAA2B,EAG3B,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAEV,iBAAiB,EAElB,MAAM,YAAY,CAAC;AAoBpB,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAmHzC,qBAAa,QAAS,SAAQ,SAAS,CAAC,mBAAmB,CAAC;cAyCrC,IAAI,EAAE,YAAY;IAxCvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;gBAED,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,EACX,IAAI,EAAE,YAAY,EACrC,OAAO,CAAC,EAAE,eAAe,EACzB,iBAAiB,CAAC,EAAE,iBAAiB,CAAC,eAAe,CAAC;IAWxD;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,2BAA2B;
|
|
1
|
+
{"version":3,"file":"BarChart.d.ts","sourceRoot":"","sources":["../../../src/charts/BarChart/BarChart.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EACZ,eAAe,EACf,2BAA2B,EAG3B,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAEV,iBAAiB,EAElB,MAAM,YAAY,CAAC;AAoBpB,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAmHzC,qBAAa,QAAS,SAAQ,SAAS,CAAC,mBAAmB,CAAC;cAyCrC,IAAI,EAAE,YAAY;IAxCvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;gBAED,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,EACX,IAAI,EAAE,YAAY,EACrC,OAAO,CAAC,EAAE,eAAe,EACzB,iBAAiB,CAAC,EAAE,iBAAiB,CAAC,eAAe,CAAC;IAWxD;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,2BAA2B;CAqZjD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LineChart.d.ts","sourceRoot":"","sources":["../../../src/charts/LineChart/LineChart.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,4BAA4B,EAK5B,oBAAoB,EACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAEV,MAAM,EACN,YAAY,EACZ,iBAAiB,EAClB,MAAM,YAAY,CAAC;AAapB,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,wBAAgB,eAAe,CAC7B,CAAC,SAAS,MAAM,IAAI,CAAC,4BAA4B,EAAE,QAAQ,CAAC,EAE5D,MAAM,EAAE,MAAM,GAAG,YAAY,EAC7B,OAAO,EAAE,4BAA4B,EACrC,GAAG,EAAE,CAAC,mCAeP;AAoGD,qBAAa,SAAU,SAAQ,SAAS,CAAC,oBAAoB,CAAC;cAuFvC,IAAI,EAAE,aAAa;IAtFxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmFG;gBAED,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,EACX,IAAI,EAAE,aAAa,EACtC,OAAO,CAAC,EAAE,gBAAgB,EAC1B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC,gBAAgB,CAAC;IAWzD;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,4BAA4B;
|
|
1
|
+
{"version":3,"file":"LineChart.d.ts","sourceRoot":"","sources":["../../../src/charts/LineChart/LineChart.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,4BAA4B,EAK5B,oBAAoB,EACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAEV,MAAM,EACN,YAAY,EACZ,iBAAiB,EAClB,MAAM,YAAY,CAAC;AAapB,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,wBAAgB,eAAe,CAC7B,CAAC,SAAS,MAAM,IAAI,CAAC,4BAA4B,EAAE,QAAQ,CAAC,EAE5D,MAAM,EAAE,MAAM,GAAG,YAAY,EAC7B,OAAO,EAAE,4BAA4B,EACrC,GAAG,EAAE,CAAC,mCAeP;AAoGD,qBAAa,SAAU,SAAQ,SAAS,CAAC,oBAAoB,CAAC;cAuFvC,IAAI,EAAE,aAAa;IAtFxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmFG;gBAED,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,EACX,IAAI,EAAE,aAAa,EACtC,OAAO,CAAC,EAAE,gBAAgB,EAC1B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC,gBAAgB,CAAC;IAWzD;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,4BAA4B;CA+TlD"}
|
|
@@ -83,6 +83,14 @@ export declare class PieChart extends BaseChart<PieChartEventsTypes> {
|
|
|
83
83
|
* ```
|
|
84
84
|
*/
|
|
85
85
|
constructor(query: string | Element | null, data: PieChartData, options?: PieChartOptions, responsiveOptions?: ResponsiveOptions<PieChartOptions>);
|
|
86
|
+
/**
|
|
87
|
+
* Check if a label has overlapping text then move it the number of pixels up and left based on textSize.
|
|
88
|
+
* @param labelPos - Label position that chartist will be checking does not overlap with the list of LabelPositions.
|
|
89
|
+
* @param existingLabelPos - Label position that has already been placed that chartist will check against.
|
|
90
|
+
* @param textOffset - this is configured with preventOverlappingLabelOffset option.
|
|
91
|
+
* @param length - How many characters long the label is.
|
|
92
|
+
*/
|
|
93
|
+
moveLabel(labelPos: Dot, existingLabelPos: Dot, textOffset: number, length: number): void;
|
|
86
94
|
/**
|
|
87
95
|
* Creates the pie chart
|
|
88
96
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PieChart.d.ts","sourceRoot":"","sources":["../../../src/charts/PieChart/PieChart.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,cAAc,EACd,GAAG,EACH,YAAY,EACZ,eAAe,EACf,2BAA2B,EAI3B,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAkBpD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"PieChart.d.ts","sourceRoot":"","sources":["../../../src/charts/PieChart/PieChart.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,cAAc,EACd,GAAG,EACH,YAAY,EACZ,eAAe,EACf,2BAA2B,EAI3B,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAkBpD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AA8CzC;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,GAAG,EACV,SAAS,EAAE,cAAc,GACxB,cAAc,CAgBhB;AAED,qBAAa,QAAS,SAAQ,SAAS,CAAC,mBAAmB,CAAC;cA8ErC,IAAI,EAAE,YAAY;IA7EvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0EG;gBAED,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,EACX,IAAI,EAAE,YAAY,EACrC,OAAO,CAAC,EAAE,eAAe,EACzB,iBAAiB,CAAC,EAAE,iBAAiB,CAAC,eAAe,CAAC;IAWxD;;;;;;OAMG;IACH,SAAS,CACP,QAAQ,EAAE,GAAG,EACb,gBAAgB,EAAE,GAAG,EACrB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM;IAchB;;;;OAIG;IACH,WAAW,CAAC,OAAO,EAAE,2BAA2B;CAyRjD"}
|
|
@@ -68,8 +68,12 @@ export interface PieChartOptions extends Omit<Options, 'axisX' | 'axisY'> {
|
|
|
68
68
|
* If true empty values will be ignored to avoid drawing unnecessary slices and labels
|
|
69
69
|
*/
|
|
70
70
|
ignoreEmptyValues?: boolean;
|
|
71
|
+
/**
|
|
72
|
+
* If nonzero labels will not overlap.
|
|
73
|
+
*/
|
|
74
|
+
preventOverlappingLabelOffset?: number;
|
|
71
75
|
}
|
|
72
|
-
export declare type PieChartOptionsWithDefaults = RequiredKeys<PieChartOptions, 'chartPadding' | 'startAngle' | 'donutWidth' | 'showLabel' | 'labelOffset' | 'labelPosition' | 'labelInterpolationFnc' | 'labelDirection', 'classNames'>;
|
|
76
|
+
export declare type PieChartOptionsWithDefaults = RequiredKeys<PieChartOptions, 'chartPadding' | 'startAngle' | 'donutWidth' | 'showLabel' | 'labelOffset' | 'labelPosition' | 'labelInterpolationFnc' | 'labelDirection' | 'preventOverlappingLabelOffset', 'classNames'>;
|
|
73
77
|
export declare type PieChartCreatedEvent = Omit<CreatedEvent<PieChartOptions>, 'axisX' | 'axisY'>;
|
|
74
78
|
export interface SliceDrawEvent extends Omit<DrawEvent, 'axisX' | 'axisY' | 'seriesIndex'> {
|
|
75
79
|
type: 'slice';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PieChart.types.d.ts","sourceRoot":"","sources":["../../../src/charts/PieChart/PieChart.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,KAAK,EACL,IAAI,EACJ,UAAU,EACV,YAAY,EACZ,SAAS,EACT,qBAAqB,EACtB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAErD,oBAAY,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;AAE5C,oBAAY,cAAc,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAE/D,oBAAY,cAAc,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;AAExD,oBAAY,mBAAmB,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;AAElE,MAAM,WAAW,GAAG;IAClB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC;IACvE;;OAEG;IACH,UAAU,CAAC,EAAE;QACX,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC;;OAEG;IACH,qBAAqB,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI,GAAG,SAAS,CAAC;IAC9E;;;;OAIG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"PieChart.types.d.ts","sourceRoot":"","sources":["../../../src/charts/PieChart/PieChart.types.ts"],"names":[],"mappings":"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"}
|
package/dist/core/creation.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ChartPadding, ChartRect, Options, Label } from './types';
|
|
1
|
+
import type { ChartPadding, ChartRect, Options, Label, ViewBox } from './types';
|
|
2
2
|
import type { EventEmitter } from '../event';
|
|
3
3
|
import type { Axis } from '../axes';
|
|
4
4
|
import { Svg } from '../svg/Svg';
|
|
@@ -10,7 +10,7 @@ import { Svg } from '../svg/Svg';
|
|
|
10
10
|
* @param className Specify a class to be added to the SVG element
|
|
11
11
|
* @return The created/reinitialized SVG element
|
|
12
12
|
*/
|
|
13
|
-
export declare function createSvg(container: Element, width?: number | string, height?: number | string, className?: string): Svg;
|
|
13
|
+
export declare function createSvg(container: Element, width?: number | string, height?: number | string, className?: string, viewBox?: ViewBox): Svg;
|
|
14
14
|
/**
|
|
15
15
|
* Converts a number into a padding object.
|
|
16
16
|
* @param padding
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"creation.d.ts","sourceRoot":"","sources":["../../src/core/creation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,OAAO,EACP,KAAK,
|
|
1
|
+
{"version":3,"file":"creation.d.ts","sourceRoot":"","sources":["../../src/core/creation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,OAAO,EACP,KAAK,EAIL,OAAO,EACR,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAEpC,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAGjC;;;;;;;GAOG;AACH,wBAAgB,SAAS,CACvB,SAAS,EAAE,OAAO,EAClB,KAAK,GAAE,MAAM,GAAG,MAAe,EAC/B,MAAM,GAAE,MAAM,GAAG,MAAe,EAChC,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,OAAO,OAmClB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,SAAS;;;;;EAiBpD;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO;;;;;;;;;;;;;EA+EzD;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,GAAG,EACV,OAAO,EAAE,MAAM,EAAE,EACjB,YAAY,EAAE,YAAY,QAoB3B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,GAAG,EACd,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,YAAY,QAoB3B;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,EACrC,KAAK,EAAE,GAAG,EACV,OAAO,EAAE,MAAM,EAAE,EACjB,YAAY,EAAE,YAAY,QAiC3B"}
|
package/dist/core/types.d.ts
CHANGED
|
@@ -18,6 +18,10 @@ export interface ChartRect {
|
|
|
18
18
|
}
|
|
19
19
|
export declare type Plugin = (chart: any, options?: any) => void;
|
|
20
20
|
export declare type Meta = any;
|
|
21
|
+
export interface ViewBox {
|
|
22
|
+
width: number;
|
|
23
|
+
height: number;
|
|
24
|
+
}
|
|
21
25
|
export interface Options<TXAxisOptions = AxisOptions, TYAxisOptions = TXAxisOptions> {
|
|
22
26
|
/**
|
|
23
27
|
* Specify a fixed width for the chart as a string (i.e. '100px' or '50%')
|
|
@@ -56,6 +60,10 @@ export interface Options<TXAxisOptions = AxisOptions, TYAxisOptions = TXAxisOpti
|
|
|
56
60
|
*/
|
|
57
61
|
classNames?: Record<string, string>;
|
|
58
62
|
plugins?: (Plugin | [Plugin, any])[];
|
|
63
|
+
/**
|
|
64
|
+
* Define the ViewBox for an SVG, this is optional and only required if you need a scalable chart. This should be used together with responsive options to ensure a proper text size.
|
|
65
|
+
*/
|
|
66
|
+
viewBox?: ViewBox;
|
|
59
67
|
}
|
|
60
68
|
export interface AxisOptions {
|
|
61
69
|
type?: AxisType;
|
package/dist/core/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAElC,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,YAAY,CAAC;IACtB,KAAK,IAAI,MAAM,CAAC;IAChB,MAAM,IAAI,MAAM,CAAC;CAClB;AAGD,oBAAY,MAAM,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;AAGzD,oBAAY,IAAI,GAAG,GAAG,CAAC;AAEvB,MAAM,WAAW,OAAO,CACtB,aAAa,GAAG,WAAW,EAC3B,aAAa,GAAG,aAAa;IAE7B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAC9C;;OAEG;IACH,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB;;OAEG;IACH,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEpC,OAAO,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
|
package/dist/index.cjs
CHANGED
|
@@ -1241,7 +1241,7 @@ function createAnimation(element, attribute, animationDefinition) {
|
|
|
1241
1241
|
* @param className Specify a class to be added to the SVG element
|
|
1242
1242
|
* @return The created/reinitialized SVG element
|
|
1243
1243
|
*/ function createSvg(container) {
|
|
1244
|
-
let width = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "100%", height = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : "100%", className = arguments.length > 3 ? arguments[3] : void 0;
|
|
1244
|
+
let width = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "100%", height = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : "100%", className = arguments.length > 3 ? arguments[3] : void 0, viewBox = arguments.length > 4 ? arguments[4] : void 0;
|
|
1245
1245
|
if (!container) {
|
|
1246
1246
|
throw new Error("Container element is not found");
|
|
1247
1247
|
}
|
|
@@ -1261,6 +1261,11 @@ function createAnimation(element, attribute, animationDefinition) {
|
|
|
1261
1261
|
if (className) {
|
|
1262
1262
|
svg1.addClass(className);
|
|
1263
1263
|
}
|
|
1264
|
+
if (viewBox) {
|
|
1265
|
+
svg1.attr({
|
|
1266
|
+
viewBox: "0 0 ".concat(viewBox.width, " ").concat(viewBox.height)
|
|
1267
|
+
});
|
|
1268
|
+
}
|
|
1264
1269
|
// Add the DOM node to our container
|
|
1265
1270
|
container.appendChild(svg1.getNode());
|
|
1266
1271
|
return svg1;
|
|
@@ -1294,15 +1299,15 @@ function createAnimation(element, attribute, animationDefinition) {
|
|
|
1294
1299
|
* @param options The Object that contains all the optional values for the chart
|
|
1295
1300
|
* @return The chart rectangles coordinates inside the svg element plus the rectangles measurements
|
|
1296
1301
|
*/ function createChartRect(svg, options) {
|
|
1297
|
-
var ref, ref1, ref2, ref3;
|
|
1302
|
+
var ref, ref1, ref2, ref3, ref4, ref5;
|
|
1298
1303
|
const hasAxis = Boolean(options.axisX || options.axisY);
|
|
1299
1304
|
const yAxisOffset = ((ref = options.axisY) === null || ref === void 0 ? void 0 : ref.offset) || 0;
|
|
1300
1305
|
const xAxisOffset = ((ref1 = options.axisX) === null || ref1 === void 0 ? void 0 : ref1.offset) || 0;
|
|
1301
1306
|
const yAxisPosition = (ref2 = options.axisY) === null || ref2 === void 0 ? void 0 : ref2.position;
|
|
1302
1307
|
const xAxisPosition = (ref3 = options.axisX) === null || ref3 === void 0 ? void 0 : ref3.position;
|
|
1303
1308
|
// If width or height results in invalid value (including 0) we fallback to the unitless settings or even 0
|
|
1304
|
-
let width = svg.width() || quantity(options.width).value || 0;
|
|
1305
|
-
let height = svg.height() || quantity(options.height).value || 0;
|
|
1309
|
+
let width = ((ref4 = options.viewBox) === null || ref4 === void 0 ? void 0 : ref4.width) || svg.width() || quantity(options.width).value || 0;
|
|
1310
|
+
let height = ((ref5 = options.viewBox) === null || ref5 === void 0 ? void 0 : ref5.height) || svg.height() || quantity(options.height).value || 0;
|
|
1306
1311
|
const normalizedPadding = normalizePadding(options.chartPadding);
|
|
1307
1312
|
// If settings were to small to cope with offset (legacy) and padding, we'll adjust
|
|
1308
1313
|
width = Math.max(width, yAxisOffset + normalizedPadding.left + normalizedPadding.right);
|
|
@@ -2549,7 +2554,7 @@ class LineChart extends BaseChart {
|
|
|
2549
2554
|
const { data } = this;
|
|
2550
2555
|
const normalizedData = normalizeData(data, options.reverseData, true);
|
|
2551
2556
|
// Create new svg object
|
|
2552
|
-
const svg = createSvg(this.container, options.width, options.height, options.classNames.chart);
|
|
2557
|
+
const svg = createSvg(this.container, options.width, options.height, options.classNames.chart, options.viewBox);
|
|
2553
2558
|
this.svg = svg;
|
|
2554
2559
|
// Create groups for labels, grid and series
|
|
2555
2560
|
const gridGroup = svg.elem("g").addClass(options.classNames.gridGroup);
|
|
@@ -2962,7 +2967,7 @@ class BarChart extends BaseChart {
|
|
|
2962
2967
|
const { data } = this;
|
|
2963
2968
|
const normalizedData = normalizeData(data, options.reverseData, options.horizontalBars ? "x" : "y", true);
|
|
2964
2969
|
// Create new svg element
|
|
2965
|
-
const svg = createSvg(this.container, options.width, options.height, options.classNames.chart + (options.horizontalBars ? " " + options.classNames.horizontalBars : ""));
|
|
2970
|
+
const svg = createSvg(this.container, options.width, options.height, options.classNames.chart + (options.horizontalBars ? " " + options.classNames.horizontalBars : ""), options.viewBox);
|
|
2966
2971
|
const highLow = options.stackBars && options.stackMode !== true && normalizedData.series.length ? getHighLow([
|
|
2967
2972
|
getSerialSums(normalizedData.series)
|
|
2968
2973
|
], options, options.horizontalBars ? "x" : "y") : getHighLow(normalizedData.series, options, options.horizontalBars ? "x" : "y");
|
|
@@ -3277,7 +3282,9 @@ class BarChart extends BaseChart {
|
|
|
3277
3282
|
// Label direction can be 'neutral', 'explode' or 'implode'. The labels anchor will be positioned based on those settings as well as the fact if the labels are on the right or left side of the center of the chart. Usually explode is useful when labels are positioned far away from the center.
|
|
3278
3283
|
labelDirection: "neutral",
|
|
3279
3284
|
// If true empty values will be ignored to avoid drawing unnecessary slices and labels
|
|
3280
|
-
ignoreEmptyValues: false
|
|
3285
|
+
ignoreEmptyValues: false,
|
|
3286
|
+
// If Nonzero check if a label has overlapping text then move it the number of pixels up and left (Should be half of label font size + 1 but you can tweak it as you prefer)
|
|
3287
|
+
preventOverlappingLabelOffset: 0
|
|
3281
3288
|
};
|
|
3282
3289
|
/**
|
|
3283
3290
|
* Determines SVG anchor position based on direction and center parameter
|
|
@@ -3293,6 +3300,19 @@ class BarChart extends BaseChart {
|
|
|
3293
3300
|
}
|
|
3294
3301
|
class PieChart extends BaseChart {
|
|
3295
3302
|
/**
|
|
3303
|
+
* Check if a label has overlapping text then move it the number of pixels up and left based on textSize.
|
|
3304
|
+
* @param labelPos - Label position that chartist will be checking does not overlap with the list of LabelPositions.
|
|
3305
|
+
* @param existingLabelPos - Label position that has already been placed that chartist will check against.
|
|
3306
|
+
* @param textOffset - this is configured with preventOverlappingLabelOffset option.
|
|
3307
|
+
* @param length - How many characters long the label is.
|
|
3308
|
+
*/ moveLabel(labelPos, existingLabelPos, textOffset, length) {
|
|
3309
|
+
if (labelPos.y > existingLabelPos.y - textOffset && labelPos.y < existingLabelPos.y + textOffset && labelPos.x > existingLabelPos.x - length * textOffset && labelPos.x < existingLabelPos.x + length * textOffset) {
|
|
3310
|
+
labelPos.y -= textOffset;
|
|
3311
|
+
labelPos.x -= textOffset;
|
|
3312
|
+
this.moveLabel(labelPos, existingLabelPos, textOffset, length);
|
|
3313
|
+
}
|
|
3314
|
+
}
|
|
3315
|
+
/**
|
|
3296
3316
|
* Creates the pie chart
|
|
3297
3317
|
*
|
|
3298
3318
|
* @param options
|
|
@@ -3301,10 +3321,11 @@ class PieChart extends BaseChart {
|
|
|
3301
3321
|
const normalizedData = normalizeData(data);
|
|
3302
3322
|
const seriesGroups = [];
|
|
3303
3323
|
let labelsGroup;
|
|
3324
|
+
const labelPositions = [];
|
|
3304
3325
|
let labelRadius;
|
|
3305
3326
|
let startAngle = options.startAngle;
|
|
3306
3327
|
// Create SVG.js draw
|
|
3307
|
-
const svg = createSvg(this.container, options.width, options.height, options.donut ? options.classNames.chartDonut : options.classNames.chartPie);
|
|
3328
|
+
const svg = createSvg(this.container, options.width, options.height, options.donut ? options.classNames.chartDonut : options.classNames.chartPie, options.viewBox);
|
|
3308
3329
|
this.svg = svg;
|
|
3309
3330
|
// Calculate charting rect
|
|
3310
3331
|
const chartRect = createChartRect(svg, options);
|
|
@@ -3444,6 +3465,14 @@ class PieChart extends BaseChart {
|
|
|
3444
3465
|
}
|
|
3445
3466
|
const interpolatedValue = options.labelInterpolationFnc(rawValue, index);
|
|
3446
3467
|
if (interpolatedValue || interpolatedValue === 0) {
|
|
3468
|
+
if (options.preventOverlappingLabelOffset) {
|
|
3469
|
+
const textOffset = options.preventOverlappingLabelOffset;
|
|
3470
|
+
const length = String(normalizedData.labels[index]).length;
|
|
3471
|
+
labelPositions.forEach((item)=>{
|
|
3472
|
+
this.moveLabel(labelPosition, item, textOffset, length);
|
|
3473
|
+
});
|
|
3474
|
+
labelPositions.push(labelPosition);
|
|
3475
|
+
}
|
|
3447
3476
|
const labelElement = labelsGroup.elem("text", {
|
|
3448
3477
|
dx: labelPosition.x,
|
|
3449
3478
|
dy: labelPosition.y,
|