@carbon/charts 1.9.0-rc.5 → 1.10.1

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.
Files changed (256) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/LICENSE.md +201 -0
  3. package/README.md +9 -19
  4. package/dist/_baseEach-603421de.mjs.map +1 -1
  5. package/dist/_baseEach-cdac417f.js.map +1 -1
  6. package/dist/angle-utils-6f166b40.js.map +1 -1
  7. package/dist/angle-utils-8b6ce998.mjs.map +1 -1
  8. package/dist/axis-chart.d.ts +13 -13
  9. package/dist/chart.d.ts +18 -18
  10. package/dist/charts/alluvial.d.ts +10 -10
  11. package/dist/charts/area-stacked.d.ts +8 -8
  12. package/dist/charts/area.d.ts +8 -8
  13. package/dist/charts/bar-grouped.d.ts +8 -8
  14. package/dist/charts/bar-simple.d.ts +8 -8
  15. package/dist/charts/bar-stacked.d.ts +8 -8
  16. package/dist/charts/boxplot.d.ts +10 -10
  17. package/dist/charts/bubble.d.ts +8 -8
  18. package/dist/charts/bullet.d.ts +10 -10
  19. package/dist/charts/choropleth.d.ts +14 -14
  20. package/dist/charts/circle-pack.d.ts +10 -10
  21. package/dist/charts/combo.d.ts +9 -9
  22. package/dist/charts/donut.d.ts +8 -8
  23. package/dist/charts/gauge.d.ts +10 -10
  24. package/dist/charts/heatmap.d.ts +14 -14
  25. package/dist/charts/histogram.d.ts +10 -10
  26. package/dist/charts/index.d.ts +27 -27
  27. package/dist/charts/line.d.ts +8 -8
  28. package/dist/charts/lollipop.d.ts +8 -8
  29. package/dist/charts/meter.d.ts +10 -10
  30. package/dist/charts/pie.d.ts +10 -10
  31. package/dist/charts/radar.d.ts +10 -10
  32. package/dist/charts/scatter.d.ts +8 -8
  33. package/dist/charts/tree.d.ts +10 -10
  34. package/dist/charts/treemap.d.ts +10 -10
  35. package/dist/charts/wordcloud.d.ts +10 -10
  36. package/dist/choropleth-4ac6ac20.js.map +1 -1
  37. package/dist/choropleth-f473ea0d.mjs.map +1 -1
  38. package/dist/color-scale-utils-5eb3eeaa.mjs.map +1 -1
  39. package/dist/color-scale-utils-7d463811.js.map +1 -1
  40. package/dist/components/axes/axis.d.ts +24 -24
  41. package/dist/components/axes/chart-clip.d.ts +13 -13
  42. package/dist/components/axes/grid-brush.d.ts +10 -10
  43. package/dist/components/axes/grid.d.ts +22 -22
  44. package/dist/components/axes/hover-axis.d.ts +10 -10
  45. package/dist/components/axes/index.d.ts +12 -12
  46. package/dist/components/axes/ruler-binned.d.ts +10 -7
  47. package/dist/components/axes/ruler-stacked.d.ts +4 -4
  48. package/dist/components/axes/ruler.d.ts +30 -27
  49. package/dist/components/axes/toolbar.d.ts +40 -40
  50. package/dist/components/axes/two-dimensional-axes.d.ts +16 -16
  51. package/dist/components/axes/zero-line.d.ts +7 -7
  52. package/dist/components/axes/zoom-bar.d.ts +31 -28
  53. package/dist/components/component.d.ts +30 -30
  54. package/dist/components/diagrams/buildPaths.d.ts +40 -40
  55. package/dist/components/diagrams/index.d.ts +2 -2
  56. package/dist/components/diagrams/markerDefinitions.d.ts +37 -37
  57. package/dist/components/essentials/canvas-chart-clip.d.ts +6 -6
  58. package/dist/components/essentials/color-scale-legend.d.ts +20 -20
  59. package/dist/components/essentials/geo-projection.d.ts +16 -16
  60. package/dist/components/essentials/highlights.d.ts +13 -13
  61. package/dist/components/essentials/index.d.ts +11 -11
  62. package/dist/components/essentials/legend.d.ts +11 -11
  63. package/dist/components/essentials/modal.d.ts +14 -14
  64. package/dist/components/essentials/threshold.d.ts +20 -20
  65. package/dist/components/essentials/title-meter.d.ts +30 -30
  66. package/dist/components/essentials/title.d.ts +20 -20
  67. package/dist/components/essentials/tooltip-axis.d.ts +4 -4
  68. package/dist/components/essentials/tooltip.d.ts +22 -22
  69. package/dist/components/graphs/alluvial.d.ts +14 -14
  70. package/dist/components/graphs/area-stacked.d.ts +11 -11
  71. package/dist/components/graphs/area.d.ts +12 -12
  72. package/dist/components/graphs/bar-grouped.d.ts +22 -22
  73. package/dist/components/graphs/bar-simple.d.ts +12 -12
  74. package/dist/components/graphs/bar-stacked.d.ts +13 -13
  75. package/dist/components/graphs/bar.d.ts +5 -5
  76. package/dist/components/graphs/boxplot.d.ts +9 -9
  77. package/dist/components/graphs/bubble.d.ts +13 -13
  78. package/dist/components/graphs/bullet.d.ts +12 -12
  79. package/dist/components/graphs/choropleth.d.ts +6 -6
  80. package/dist/components/graphs/circle-pack.d.ts +19 -19
  81. package/dist/components/graphs/donut.d.ts +9 -9
  82. package/dist/components/graphs/gauge.d.ts +27 -27
  83. package/dist/components/graphs/heatmap.d.ts +25 -25
  84. package/dist/components/graphs/histogram.d.ts +12 -12
  85. package/dist/components/graphs/index.d.ts +28 -28
  86. package/dist/components/graphs/line.d.ts +11 -11
  87. package/dist/components/graphs/lollipop.d.ts +14 -14
  88. package/dist/components/graphs/meter.d.ts +10 -10
  89. package/dist/components/graphs/pie.d.ts +16 -16
  90. package/dist/components/graphs/radar.d.ts +25 -25
  91. package/dist/components/graphs/scatter-stacked.d.ts +8 -8
  92. package/dist/components/graphs/scatter.d.ts +21 -21
  93. package/dist/components/graphs/skeleton-lines.d.ts +12 -12
  94. package/dist/components/graphs/skeleton.d.ts +23 -23
  95. package/dist/components/graphs/tree.d.ts +9 -9
  96. package/dist/components/graphs/treemap.d.ts +11 -11
  97. package/dist/components/graphs/wordcloud.d.ts +12 -12
  98. package/dist/components/index.d.ts +6 -6
  99. package/dist/components/layout/index.d.ts +2 -2
  100. package/dist/components/layout/layout.d.ts +18 -18
  101. package/dist/components/layout/spacer.d.ts +5 -5
  102. package/dist/configuration-non-customizable.d.ts +263 -263
  103. package/dist/configuration.d.ts +48 -48
  104. package/dist/demo/charts/alluvial.d.ts +109 -109
  105. package/dist/demo/charts/area.d.ts +224 -224
  106. package/dist/demo/charts/bar.d.ts +681 -681
  107. package/dist/demo/charts/boxplot.d.ts +34 -34
  108. package/dist/demo/charts/bubble.d.ts +141 -141
  109. package/dist/demo/charts/bullet.d.ts +24 -24
  110. package/dist/demo/charts/chart-types.d.ts +128 -128
  111. package/dist/demo/charts/choropleth.d.ts +738 -738
  112. package/dist/demo/charts/circle-pack.d.ts +91 -91
  113. package/dist/demo/charts/combo.d.ts +482 -482
  114. package/dist/demo/charts/donut.d.ts +64 -64
  115. package/dist/demo/charts/gauge.d.ts +40 -40
  116. package/dist/demo/charts/heatmap.d.ts +125 -125
  117. package/dist/demo/charts/hightlight.d.ts +40 -40
  118. package/dist/demo/charts/histogram.d.ts +63 -63
  119. package/dist/demo/charts/index.d.ts +55 -62
  120. package/dist/demo/charts/line.d.ts +361 -361
  121. package/dist/demo/charts/lollipop.d.ts +39 -39
  122. package/dist/demo/charts/meter.d.ts +95 -95
  123. package/dist/demo/charts/pie.d.ts +46 -46
  124. package/dist/demo/charts/radar.d.ts +63 -63
  125. package/dist/demo/charts/scatter.d.ts +118 -118
  126. package/dist/demo/charts/step.d.ts +96 -96
  127. package/dist/demo/charts/time-series-axis.d.ts +293 -293
  128. package/dist/demo/charts/toolbar.d.ts +12 -12
  129. package/dist/demo/charts/topojson-110.d.ts +360 -360
  130. package/dist/demo/charts/tree.d.ts +30 -30
  131. package/dist/demo/charts/treemap.d.ts +15 -15
  132. package/dist/demo/charts/wordcloud.d.ts +14 -14
  133. package/dist/demo/charts/zoom-bar.d.ts +79 -79
  134. package/dist/demo/index.d.ts +4 -4
  135. package/dist/demo/index.js +153 -166
  136. package/dist/demo/index.js.map +1 -1
  137. package/dist/demo/index.mjs +1645 -1834
  138. package/dist/demo/index.mjs.map +1 -1
  139. package/dist/demo/styles.css +567 -262
  140. package/dist/demo/styles.css.map +1 -1
  141. package/dist/demo/utils/index.d.ts +2 -2
  142. package/dist/demo/utils/sandbox.d.ts +38 -39
  143. package/dist/demo/utils/story-widgets.d.ts +7 -7
  144. package/dist/index-a266373c.mjs.map +1 -1
  145. package/dist/index-becfb567.mjs.map +1 -1
  146. package/dist/index-d865d500.js.map +1 -1
  147. package/dist/index-f23685eb.js.map +1 -1
  148. package/dist/index.d.ts +13 -11
  149. package/dist/index.js.map +1 -1
  150. package/dist/index.mjs.map +1 -1
  151. package/dist/interfaces/a11y.d.ts +12 -12
  152. package/dist/interfaces/axis-scales.d.ts +201 -201
  153. package/dist/interfaces/charts.d.ts +520 -517
  154. package/dist/interfaces/components.d.ts +231 -231
  155. package/dist/interfaces/enums.d.ts +261 -261
  156. package/dist/interfaces/events.d.ts +239 -239
  157. package/dist/interfaces/index.d.ts +12 -11
  158. package/dist/interfaces/layout.d.ts +21 -21
  159. package/dist/interfaces/model.d.ts +35 -35
  160. package/dist/interfaces/services.d.ts +20 -20
  161. package/dist/interfaces/truncation.d.ts +17 -17
  162. package/dist/model/alluvial.d.ts +8 -8
  163. package/dist/model/binned-charts.d.ts +7 -7
  164. package/dist/model/boxplot.d.ts +14 -14
  165. package/dist/model/bullet.d.ts +14 -14
  166. package/dist/model/cartesian-charts.d.ts +24 -24
  167. package/dist/model/choropleth.d.ts +29 -29
  168. package/dist/model/circle-pack.d.ts +36 -36
  169. package/dist/model/gauge.d.ts +9 -9
  170. package/dist/model/heatmap.d.ts +57 -57
  171. package/dist/model/index.d.ts +16 -16
  172. package/dist/model/index.js.map +1 -1
  173. package/dist/model/index.mjs.map +1 -1
  174. package/dist/model/meter.d.ts +20 -20
  175. package/dist/model/model.d.ts +110 -110
  176. package/dist/model/pie.d.ts +9 -9
  177. package/dist/model/radar.d.ts +7 -7
  178. package/dist/model/tree.d.ts +14 -14
  179. package/dist/model/treemap.d.ts +8 -8
  180. package/dist/model/wordcloud.d.ts +7 -7
  181. package/dist/services/angle-utils.d.ts +15 -15
  182. package/dist/services/canvas-zoom.d.ts +11 -11
  183. package/dist/services/color-scale-utils.d.ts +2 -2
  184. package/dist/services/curves.d.ts +24 -24
  185. package/dist/services/essentials/dom-utils.d.ts +45 -45
  186. package/dist/services/essentials/events.d.ts +8 -8
  187. package/dist/services/essentials/files.d.ts +7 -7
  188. package/dist/services/essentials/gradient-utils.d.ts +6 -6
  189. package/dist/services/essentials/index.d.ts +5 -5
  190. package/dist/services/essentials/transitions.d.ts +13 -13
  191. package/dist/services/index.d.ts +9 -9
  192. package/dist/services/scales-cartesian.d.ts +89 -89
  193. package/dist/services/service.d.ts +11 -11
  194. package/dist/services/time-series.d.ts +13 -13
  195. package/dist/services/zoom.d.ts +21 -21
  196. package/dist/styles.css +0 -21919
  197. package/dist/styles.css.map +1 -1
  198. package/dist/styles.min.css +1 -1
  199. package/dist/styles.min.css.map +1 -1
  200. package/dist/tools.d.ts +150 -144
  201. package/package.json +48 -33
  202. package/{dist/styles/colors.scss → scss/_colors.scss} +1 -1
  203. package/{dist/styles/tokens.scss → scss/_tokens.scss} +6 -15
  204. package/scss/demos.scss +427 -0
  205. package/scss/index.scss +31 -0
  206. package/dist/styles/styles.scss +0 -40
  207. /package/{dist/styles → scss}/_chart-holder.scss +0 -0
  208. /package/{dist/styles/color-palatte.scss → scss/_color-palette.scss} +0 -0
  209. /package/{dist/styles → scss}/_type.scss +0 -0
  210. /package/{dist/styles → scss}/components/_axis.scss +0 -0
  211. /package/{dist/styles → scss}/components/_callouts.scss +0 -0
  212. /package/{dist/styles → scss}/components/_color-legend.scss +0 -0
  213. /package/{dist/styles → scss}/components/_edge.scss +0 -0
  214. /package/{dist/styles → scss}/components/_grid-brush.scss +0 -0
  215. /package/{dist/styles → scss}/components/_grid.scss +0 -0
  216. /package/{dist/styles → scss}/components/_highlights.scss +0 -0
  217. /package/{dist/styles → scss}/components/_layout.scss +0 -0
  218. /package/{dist/styles → scss}/components/_legend.scss +0 -0
  219. /package/{dist/styles → scss}/components/_marker.scss +0 -0
  220. /package/{dist/styles → scss}/components/_meter-title.scss +0 -0
  221. /package/{dist/styles → scss}/components/_modal.scss +0 -0
  222. /package/{dist/styles → scss}/components/_ruler.scss +0 -0
  223. /package/{dist/styles → scss}/components/_skeleton-lines.scss +0 -0
  224. /package/{dist/styles → scss}/components/_skeleton.scss +0 -0
  225. /package/{dist/styles → scss}/components/_threshold.scss +0 -0
  226. /package/{dist/styles → scss}/components/_title.scss +0 -0
  227. /package/{dist/styles → scss}/components/_toolbar.scss +0 -0
  228. /package/{dist/styles → scss}/components/_tooltip.scss +0 -0
  229. /package/{dist/styles → scss}/components/_zero-line.scss +0 -0
  230. /package/{dist/styles → scss}/components/_zoom-bar.scss +0 -0
  231. /package/{dist/styles → scss}/components/diagrams/_card-node.scss +0 -0
  232. /package/{dist/styles → scss}/components/diagrams/_edge.scss +0 -0
  233. /package/{dist/styles → scss}/components/diagrams/_marker.scss +0 -0
  234. /package/{dist/styles → scss}/components/diagrams/_shape-node.scss +0 -0
  235. /package/{dist/styles → scss}/components/diagrams/index.scss +0 -0
  236. /package/{dist/styles → scss}/components/index.scss +0 -0
  237. /package/{dist/styles → scss}/graphs/_alluvial.scss +0 -0
  238. /package/{dist/styles → scss}/graphs/_area.scss +0 -0
  239. /package/{dist/styles → scss}/graphs/_bubble.scss +0 -0
  240. /package/{dist/styles → scss}/graphs/_bullet.scss +0 -0
  241. /package/{dist/styles → scss}/graphs/_choropleth.scss +0 -0
  242. /package/{dist/styles → scss}/graphs/_circle-pack.scss +0 -0
  243. /package/{dist/styles → scss}/graphs/_donut.scss +0 -0
  244. /package/{dist/styles → scss}/graphs/_gauge.scss +0 -0
  245. /package/{dist/styles → scss}/graphs/_heatmap.scss +0 -0
  246. /package/{dist/styles → scss}/graphs/_line.scss +0 -0
  247. /package/{dist/styles → scss}/graphs/_lollipop.scss +0 -0
  248. /package/{dist/styles → scss}/graphs/_meter.scss +0 -0
  249. /package/{dist/styles → scss}/graphs/_pie.scss +0 -0
  250. /package/{dist/styles → scss}/graphs/_radar.scss +0 -0
  251. /package/{dist/styles → scss}/graphs/_scatter-stacked.scss +0 -0
  252. /package/{dist/styles → scss}/graphs/_scatter.scss +0 -0
  253. /package/{dist/styles → scss}/graphs/_tree.scss +0 -0
  254. /package/{dist/styles → scss}/graphs/_treemap.scss +0 -0
  255. /package/{dist/styles → scss}/graphs/_wordcloud.scss +0 -0
  256. /package/{dist/styles → scss}/graphs/index.scss +0 -0
@@ -1,201 +1,201 @@
1
- import type { AxisDomain } from 'd3';
2
- import type { Locale } from 'date-fns';
3
- import type { AxisTitleOrientations, ScaleTypes, TickRotations } from './enums';
4
- import type { ThresholdOptions } from './components';
5
- import type { TruncationOptions } from './truncation';
6
- export interface BasedAxisOptions {
7
- /**
8
- * type of the scale used on axis
9
- */
10
- scaleType?: ScaleTypes;
11
- /**
12
- * Whether the Axis should use the specified domain
13
- * instead of it being dynamically generated based on data extents.
14
- * The type of values should depend on the scale type.
15
- * Example for continuous axis scale: [-100, 100]
16
- * Example for discrete axis scale: ['Qty', 'More', 'Sold']
17
- * No need to define domain for percentage axis scale
18
- */
19
- domain?: AxisDomain[];
20
- /**
21
- * an additional key from the charting data that is used to
22
- * extend the domain of an axis by
23
- * (e.g. in the bullet graph we need both the marker &
24
- * the data values to define the domain of the linear scale)
25
- */
26
- extendLinearDomainBy?: string;
27
- /**
28
- * Whether the Axis should be forced to include 0 as a starting point
29
- * (or ending point, in case of all negative axis).
30
- * Default: true
31
- */
32
- includeZero?: boolean;
33
- /**
34
- * identifies what key within the data the axis values would map to
35
- */
36
- mapsTo?: string;
37
- /**
38
- * optional title for the scales
39
- */
40
- title?: string;
41
- /**
42
- * Override for the orientation of the title (for vertical axes).
43
- * The title string can be overrided to be rotated left or right.
44
- */
45
- titleOrientation?: AxisTitleOrientations;
46
- /**
47
- * thresholds
48
- * @example
49
- * [
50
- * { value: 10000 },
51
- * { value: 40020, valueFormatter: (x) => x },
52
- * { value: 55000, label: "Custom label", fillColor: "#03a9f4" },
53
- * ]
54
- */
55
- thresholds?: ThresholdOptions[];
56
- /**
57
- * tick configuration
58
- */
59
- ticks?: {
60
- /**
61
- * number of ticks to show
62
- */
63
- number?: number;
64
- /**
65
- * minimum tick value
66
- */
67
- min?: number;
68
- /**
69
- * maximum tick value
70
- */
71
- max?: number;
72
- /**
73
- * minimum width of a tick
74
- * before getting rotated (in pixels)
75
- */
76
- rotateIfSmallerThan?: number;
77
- /**
78
- * when to rotate ticks
79
- */
80
- rotation?: TickRotations;
81
- /**
82
- * function to format the ticks
83
- */
84
- formatter?: (tick: number, i: number) => string;
85
- /**
86
- * optional custom array of tick values that is within the domain of data
87
- */
88
- values?: any[];
89
- };
90
- truncation?: TruncationOptions;
91
- /**
92
- * is axis visible or not
93
- */
94
- visible?: boolean;
95
- /**
96
- * Bins to display (Histogram)
97
- * bins: 20
98
- * bins: [0, 20, 40, 60]
99
- * bins: [new Date(...), new Date(...), ...]
100
- */
101
- bins?: number | any[];
102
- /**
103
- * limit the visible axis domain to only the binned area
104
- */
105
- limitDomainToBins?: boolean;
106
- /**
107
- * should be set to `true` on the domain
108
- * axis that's being broken into bins
109
- */
110
- binned?: boolean;
111
- }
112
- /**
113
- * options to configure a scale. not all options are used by all scales
114
- */
115
- export interface AxisOptions extends BasedAxisOptions {
116
- /**
117
- * option for stacked axis
118
- */
119
- stacked?: boolean;
120
- /**
121
- * option for percentage axis scale
122
- */
123
- percentage?: boolean;
124
- }
125
- export interface ComboChartAxisOptions extends AxisOptions {
126
- /**
127
- * should be set to `true` for the
128
- * left axis to be the primary axis
129
- */
130
- main?: boolean;
131
- /**
132
- * used to map data on the secondary axis
133
- */
134
- correspondingDatasets?: Array<string>;
135
- }
136
- export interface BinnedAxisOptions {
137
- /**
138
- * should be set to `true` on the domain
139
- * axis that's being broken into bins
140
- */
141
- binned?: boolean;
142
- /**
143
- * Bins to display (Histogram)
144
- * bins: 20
145
- * bins: [0, 20, 40, 60]
146
- * bins: [new Date(...), new Date(...), ...]
147
- */
148
- bins?: number | any[];
149
- /**
150
- * limit the visible axis domain to only the binned area
151
- */
152
- limitDomainToBins?: boolean;
153
- }
154
- /**
155
- * customize time series scales
156
- */
157
- export interface TimeScaleOptions {
158
- addSpaceOnEdges?: number;
159
- /**
160
- * if it's true, days are shown as mon-sun,
161
- * otherwise days are shown as number 1-31
162
- */
163
- showDayName?: boolean;
164
- /**
165
- * formats for each time interval
166
- */
167
- timeIntervalFormats?: TimeIntervalFormats;
168
- /**
169
- * locale object, for more information see https://date-fns.org/v2.11.0/docs/Locale.
170
- * example: `import { fr as localeObject } from 'date-fns/locale'`.
171
- * available locale objects are: https://github.com/date-fns/date-fns/tree/master/src/locale
172
- */
173
- localeObject?: Locale;
174
- }
175
- /**
176
- * time scales: customize ticks format for different time intervals
177
- */
178
- export interface TickFormats {
179
- primary?: string;
180
- secondary?: string;
181
- }
182
- export interface TimeIntervalFormats {
183
- '15seconds'?: TickFormats;
184
- minute?: TickFormats;
185
- '30minutes'?: TickFormats;
186
- hourly?: TickFormats;
187
- daily?: TickFormats;
188
- weekly?: TickFormats;
189
- monthly?: TickFormats;
190
- quarterly?: TickFormats;
191
- yearly?: TickFormats;
192
- }
193
- /**
194
- * customize the axes components
195
- */
196
- export interface AxesOptions<AxesOptionType> {
197
- left?: AxesOptionType;
198
- bottom?: AxesOptionType;
199
- right?: AxesOptionType;
200
- top?: AxesOptionType;
201
- }
1
+ import { AxisDomain } from 'd3';
2
+ import { Locale } from 'date-fns';
3
+ import { AxisTitleOrientations, ScaleTypes, TickRotations } from './enums';
4
+ import { ThresholdOptions } from './components';
5
+ import { TruncationOptions } from './truncation';
6
+ export interface BasedAxisOptions {
7
+ /**
8
+ * type of the scale used on axis
9
+ */
10
+ scaleType?: ScaleTypes;
11
+ /**
12
+ * Whether the Axis should use the specified domain
13
+ * instead of it being dynamically generated based on data extents.
14
+ * The type of values should depend on the scale type.
15
+ * Example for continuous axis scale: [-100, 100]
16
+ * Example for discrete axis scale: ['Qty', 'More', 'Sold']
17
+ * No need to define domain for percentage axis scale
18
+ */
19
+ domain?: AxisDomain[];
20
+ /**
21
+ * an additional key from the charting data that is used to
22
+ * extend the domain of an axis by
23
+ * (e.g. in the bullet graph we need both the marker &
24
+ * the data values to define the domain of the linear scale)
25
+ */
26
+ extendLinearDomainBy?: string;
27
+ /**
28
+ * Whether the Axis should be forced to include 0 as a starting point
29
+ * (or ending point, in case of all negative axis).
30
+ * Default: true
31
+ */
32
+ includeZero?: boolean;
33
+ /**
34
+ * identifies what key within the data the axis values would map to
35
+ */
36
+ mapsTo?: string;
37
+ /**
38
+ * optional title for the scales
39
+ */
40
+ title?: string;
41
+ /**
42
+ * Override for the orientation of the title (for vertical axes).
43
+ * The title string can be overrided to be rotated left or right.
44
+ */
45
+ titleOrientation?: AxisTitleOrientations;
46
+ /**
47
+ * thresholds
48
+ * @example
49
+ * [
50
+ * { value: 10000 },
51
+ * { value: 40020, valueFormatter: (x) => x },
52
+ * { value: 55000, label: "Custom label", fillColor: "#03a9f4" },
53
+ * ]
54
+ */
55
+ thresholds?: ThresholdOptions[];
56
+ /**
57
+ * tick configuration
58
+ */
59
+ ticks?: {
60
+ /**
61
+ * number of ticks to show
62
+ */
63
+ number?: number;
64
+ /**
65
+ * minimum tick value
66
+ */
67
+ min?: number;
68
+ /**
69
+ * maximum tick value
70
+ */
71
+ max?: number;
72
+ /**
73
+ * minimum width of a tick
74
+ * before getting rotated (in pixels)
75
+ */
76
+ rotateIfSmallerThan?: number;
77
+ /**
78
+ * when to rotate ticks
79
+ */
80
+ rotation?: TickRotations;
81
+ /**
82
+ * function to format the ticks
83
+ */
84
+ formatter?: (tick: number, i: number) => string;
85
+ /**
86
+ * optional custom array of tick values that is within the domain of data
87
+ */
88
+ values?: any[];
89
+ };
90
+ truncation?: TruncationOptions;
91
+ /**
92
+ * is axis visible or not
93
+ */
94
+ visible?: boolean;
95
+ /**
96
+ * Bins to display (Histogram)
97
+ * bins: 20
98
+ * bins: [0, 20, 40, 60]
99
+ * bins: [new Date(...), new Date(...), ...]
100
+ */
101
+ bins?: number | any[];
102
+ /**
103
+ * limit the visible axis domain to only the binned area
104
+ */
105
+ limitDomainToBins?: boolean;
106
+ /**
107
+ * should be set to `true` on the domain
108
+ * axis that's being broken into bins
109
+ */
110
+ binned?: boolean;
111
+ }
112
+ /**
113
+ * options to configure a scale. not all options are used by all scales
114
+ */
115
+ export interface AxisOptions extends BasedAxisOptions {
116
+ /**
117
+ * option for stacked axis
118
+ */
119
+ stacked?: boolean;
120
+ /**
121
+ * option for percentage axis scale
122
+ */
123
+ percentage?: boolean;
124
+ }
125
+ export interface ComboChartAxisOptions extends AxisOptions {
126
+ /**
127
+ * should be set to `true` for the
128
+ * left axis to be the primary axis
129
+ */
130
+ main?: boolean;
131
+ /**
132
+ * used to map data on the secondary axis
133
+ */
134
+ correspondingDatasets?: Array<string>;
135
+ }
136
+ export interface BinnedAxisOptions {
137
+ /**
138
+ * should be set to `true` on the domain
139
+ * axis that's being broken into bins
140
+ */
141
+ binned?: boolean;
142
+ /**
143
+ * Bins to display (Histogram)
144
+ * bins: 20
145
+ * bins: [0, 20, 40, 60]
146
+ * bins: [new Date(...), new Date(...), ...]
147
+ */
148
+ bins?: number | any[];
149
+ /**
150
+ * limit the visible axis domain to only the binned area
151
+ */
152
+ limitDomainToBins?: boolean;
153
+ }
154
+ /**
155
+ * customize time series scales
156
+ */
157
+ export interface TimeScaleOptions {
158
+ addSpaceOnEdges?: number;
159
+ /**
160
+ * if it's true, days are shown as mon-sun,
161
+ * otherwise days are shown as number 1-31
162
+ */
163
+ showDayName?: boolean;
164
+ /**
165
+ * formats for each time interval
166
+ */
167
+ timeIntervalFormats?: TimeIntervalFormats;
168
+ /**
169
+ * locale object, for more information see https://date-fns.org/v2.11.0/docs/Locale.
170
+ * example: `import { fr as localeObject } from 'date-fns/locale'`.
171
+ * available locale objects are: https://github.com/date-fns/date-fns/tree/master/src/locale
172
+ */
173
+ localeObject?: Locale;
174
+ }
175
+ /**
176
+ * time scales: customize ticks format for different time intervals
177
+ */
178
+ export interface TickFormats {
179
+ primary?: string;
180
+ secondary?: string;
181
+ }
182
+ export interface TimeIntervalFormats {
183
+ '15seconds'?: TickFormats;
184
+ minute?: TickFormats;
185
+ '30minutes'?: TickFormats;
186
+ hourly?: TickFormats;
187
+ daily?: TickFormats;
188
+ weekly?: TickFormats;
189
+ monthly?: TickFormats;
190
+ quarterly?: TickFormats;
191
+ yearly?: TickFormats;
192
+ }
193
+ /**
194
+ * customize the axes components
195
+ */
196
+ export interface AxesOptions<AxesOptionType> {
197
+ left?: AxesOptionType;
198
+ bottom?: AxesOptionType;
199
+ right?: AxesOptionType;
200
+ top?: AxesOptionType;
201
+ }