@highcharts/grid-pro 2.1.1 → 2.3.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.
Files changed (455) hide show
  1. package/LICENSE.txt +6 -0
  2. package/README.md +15 -9
  3. package/css/grid-pro.css +1289 -1153
  4. package/css/modules/grid-base-variables.css +131 -0
  5. package/css/modules/grid-button-variables.css +140 -0
  6. package/css/modules/grid-caption-variables.css +11 -0
  7. package/css/modules/grid-description-variables.css +11 -0
  8. package/css/modules/grid-input-variables.css +114 -0
  9. package/css/modules/grid-link-variables.css +18 -0
  10. package/css/modules/grid-menu-variables.css +50 -0
  11. package/css/modules/grid-pagination-variables.css +12 -0
  12. package/css/modules/grid-popup-variables.css +24 -0
  13. package/css/modules/grid-pro.css +234 -0
  14. package/css/modules/grid-table-variables.css +385 -0
  15. package/css/modules/grid-theme-default.css +55 -0
  16. package/es-modules/Accessibility/A11yI18n.js +4 -5
  17. package/es-modules/Accessibility/Accessibility.js +5 -5
  18. package/es-modules/Accessibility/AccessibilityComponent.d.ts +3 -3
  19. package/es-modules/Accessibility/AccessibilityComponent.js +4 -3
  20. package/es-modules/Accessibility/Components/AnnotationsA11y.js +4 -3
  21. package/es-modules/Accessibility/Components/ContainerComponent.js +4 -3
  22. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +9 -9
  23. package/es-modules/Accessibility/Components/LegendComponent.js +5 -5
  24. package/es-modules/Accessibility/Components/MenuComponent.js +5 -5
  25. package/es-modules/Accessibility/Components/NavigatorComponent.js +6 -7
  26. package/es-modules/Accessibility/Components/RangeSelectorComponent.js +5 -5
  27. package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +15 -5
  28. package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +7 -7
  29. package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +4 -3
  30. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +7 -7
  31. package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +5 -5
  32. package/es-modules/Accessibility/Components/ZoomComponent.js +5 -5
  33. package/es-modules/Accessibility/FocusBorder.js +5 -5
  34. package/es-modules/Accessibility/HighContrastMode.js +4 -3
  35. package/es-modules/Accessibility/HighContrastTheme.js +4 -3
  36. package/es-modules/Accessibility/KeyboardNavigation.js +5 -5
  37. package/es-modules/Accessibility/KeyboardNavigationHandler.js +5 -5
  38. package/es-modules/Accessibility/Options/A11yDefaults.d.ts +11 -0
  39. package/es-modules/Accessibility/Options/A11yDefaults.js +15 -3
  40. package/es-modules/Accessibility/Options/DeprecatedOptions.d.ts +58 -0
  41. package/es-modules/Accessibility/Options/DeprecatedOptions.js +11 -5
  42. package/es-modules/Accessibility/Options/LangDefaults.js +13 -3
  43. package/es-modules/Accessibility/ProxyElement.js +6 -8
  44. package/es-modules/Accessibility/ProxyProvider.js +5 -5
  45. package/es-modules/Accessibility/Utils/Announcer.js +6 -6
  46. package/es-modules/Accessibility/Utils/ChartUtilities.js +5 -5
  47. package/es-modules/Accessibility/Utils/DOMElementProvider.js +4 -3
  48. package/es-modules/Accessibility/Utils/EventProvider.d.ts +3 -3
  49. package/es-modules/Accessibility/Utils/EventProvider.js +10 -5
  50. package/es-modules/Accessibility/Utils/HTMLUtilities.js +5 -5
  51. package/es-modules/Core/Animation/AnimationOptions.d.ts +42 -0
  52. package/es-modules/Core/Animation/AnimationOptions.js +10 -0
  53. package/es-modules/Core/Animation/AnimationUtilities.js +40 -5
  54. package/es-modules/Core/Animation/Fx.d.ts +1 -130
  55. package/es-modules/Core/Animation/Fx.js +14 -8
  56. package/es-modules/Core/Animation/FxBase.d.ts +1 -0
  57. package/es-modules/Core/Animation/FxBase.js +11 -0
  58. package/es-modules/Core/Callback.d.ts +56 -0
  59. package/es-modules/Core/Callback.js +10 -0
  60. package/es-modules/Core/Chart/Chart.d.ts +659 -400
  61. package/es-modules/Core/Chart/Chart.js +112 -95
  62. package/es-modules/Core/Chart/Chart3D.d.ts +123 -233
  63. package/es-modules/Core/Chart/Chart3D.js +23 -37
  64. package/es-modules/Core/Chart/ChartBase.d.ts +3 -0
  65. package/es-modules/Core/Chart/ChartBase.js +11 -0
  66. package/es-modules/Core/Chart/ChartDefaults.js +18 -12
  67. package/es-modules/Core/Chart/ChartNavigationComposition.d.ts +1 -55
  68. package/es-modules/Core/Chart/ChartNavigationComposition.js +13 -13
  69. package/es-modules/Core/Chart/ChartOptions.d.ts +1225 -0
  70. package/es-modules/Core/Chart/ChartOptions.js +10 -0
  71. package/es-modules/Core/Chart/GanttChart.d.ts +0 -38
  72. package/es-modules/Core/Chart/GanttChart.js +5 -5
  73. package/es-modules/Core/Chart/MapChart.d.ts +9 -4
  74. package/es-modules/Core/Chart/MapChart.js +14 -5
  75. package/es-modules/Core/Chart/StockChart.d.ts +0 -85
  76. package/es-modules/Core/Chart/StockChart.js +35 -18
  77. package/es-modules/Core/Color/Color.d.ts +16 -24
  78. package/es-modules/Core/Color/Color.js +27 -10
  79. package/es-modules/Core/Color/ColorString.d.ts +0 -23
  80. package/es-modules/Core/Color/ColorString.js +11 -0
  81. package/es-modules/Core/Color/ColorType.d.ts +0 -33
  82. package/es-modules/Core/Color/ColorType.js +11 -0
  83. package/es-modules/Core/Color/GradientColor.d.ts +0 -33
  84. package/es-modules/Core/Color/GradientColor.js +11 -0
  85. package/es-modules/Core/Color/Palettes.d.ts +1 -84
  86. package/es-modules/Core/Color/Palettes.js +2 -1
  87. package/es-modules/Core/Defaults.d.ts +6 -0
  88. package/es-modules/Core/Defaults.js +66 -75
  89. package/es-modules/Core/Delaunay.d.ts +52 -0
  90. package/es-modules/Core/Delaunay.js +310 -0
  91. package/es-modules/Core/Foundation.d.ts +1 -19
  92. package/es-modules/Core/Foundation.js +8 -6
  93. package/es-modules/Core/Geometry/CircleObject.d.ts +5 -0
  94. package/es-modules/Core/Geometry/CircleObject.js +10 -0
  95. package/es-modules/Core/Geometry/CircleUtilities.d.ts +1 -189
  96. package/es-modules/Core/Geometry/CircleUtilities.js +18 -17
  97. package/es-modules/Core/Geometry/GeometryObject.d.ts +7 -0
  98. package/es-modules/Core/Geometry/GeometryObject.js +10 -0
  99. package/es-modules/Core/Geometry/GeometryUtilities.d.ts +1 -48
  100. package/es-modules/Core/Geometry/GeometryUtilities.js +9 -7
  101. package/es-modules/Core/Geometry/IntersectionObject.d.ts +7 -0
  102. package/es-modules/Core/Geometry/IntersectionObject.js +10 -0
  103. package/es-modules/Core/Geometry/PolygonClip.d.ts +1 -19
  104. package/es-modules/Core/Geometry/PolygonClip.js +9 -7
  105. package/es-modules/Core/Globals.d.ts +9 -31
  106. package/es-modules/Core/Globals.js +9 -10
  107. package/es-modules/Core/GlobalsBase.d.ts +35 -0
  108. package/es-modules/Core/GlobalsBase.js +11 -0
  109. package/es-modules/Core/HttpUtilities.d.ts +54 -17
  110. package/es-modules/Core/HttpUtilities.js +16 -16
  111. package/es-modules/Core/JSON.d.ts +29 -0
  112. package/es-modules/Core/JSON.js +13 -0
  113. package/es-modules/Core/KeyboardEvent.d.ts +1 -0
  114. package/es-modules/Core/KeyboardEvent.js +11 -0
  115. package/es-modules/Core/MSPointer.d.ts +1 -74
  116. package/es-modules/Core/MSPointer.js +24 -15
  117. package/es-modules/Core/Math3D.d.ts +1 -117
  118. package/es-modules/Core/Math3D.js +14 -12
  119. package/es-modules/Core/Options.d.ts +338 -0
  120. package/es-modules/Core/Options.js +10 -0
  121. package/es-modules/Core/Pointer.d.ts +71 -445
  122. package/es-modules/Core/Pointer.js +74 -69
  123. package/es-modules/Core/PointerEvent.d.ts +20 -0
  124. package/es-modules/Core/PointerEvent.js +11 -0
  125. package/es-modules/Core/Renderer/AlignObject.d.ts +25 -27
  126. package/es-modules/Core/Renderer/AlignObject.js +11 -0
  127. package/es-modules/Core/Renderer/BBoxObject.d.ts +20 -31
  128. package/es-modules/Core/Renderer/BBoxObject.js +11 -0
  129. package/es-modules/Core/Renderer/CSSObject.d.ts +268 -59
  130. package/es-modules/Core/Renderer/CSSObject.js +10 -0
  131. package/es-modules/Core/Renderer/DOMElementType.d.ts +1 -33
  132. package/es-modules/Core/Renderer/DOMElementType.js +11 -0
  133. package/es-modules/Core/Renderer/DashStyleValue.d.ts +1 -27
  134. package/es-modules/Core/Renderer/DashStyleValue.js +11 -0
  135. package/es-modules/Core/Renderer/FontMetricsObject.d.ts +6 -26
  136. package/es-modules/Core/Renderer/FontMetricsObject.js +11 -0
  137. package/es-modules/Core/Renderer/HTML/AST.d.ts +3 -15
  138. package/es-modules/Core/Renderer/HTML/AST.js +24 -15
  139. package/es-modules/Core/Renderer/HTML/HTMLAttributes.d.ts +1 -25
  140. package/es-modules/Core/Renderer/HTML/HTMLAttributes.js +11 -0
  141. package/es-modules/Core/Renderer/HTML/HTMLElement.d.ts +0 -54
  142. package/es-modules/Core/Renderer/HTML/HTMLElement.js +28 -24
  143. package/es-modules/Core/Renderer/PolygonBoxObject.d.ts +15 -12
  144. package/es-modules/Core/Renderer/PolygonBoxObject.js +11 -0
  145. package/es-modules/Core/Renderer/Position3DObject.d.ts +6 -30
  146. package/es-modules/Core/Renderer/Position3DObject.js +11 -0
  147. package/es-modules/Core/Renderer/PositionObject.d.ts +9 -23
  148. package/es-modules/Core/Renderer/PositionObject.js +11 -0
  149. package/es-modules/Core/Renderer/RectangleObject.d.ts +6 -30
  150. package/es-modules/Core/Renderer/RectangleObject.js +11 -0
  151. package/es-modules/Core/Renderer/RendererRegistry.d.ts +1 -29
  152. package/es-modules/Core/Renderer/RendererRegistry.js +6 -3
  153. package/es-modules/Core/Renderer/RendererType.d.ts +1 -53
  154. package/es-modules/Core/Renderer/RendererType.js +11 -0
  155. package/es-modules/Core/Renderer/RendererUtilities.d.ts +1 -26
  156. package/es-modules/Core/Renderer/RendererUtilities.js +41 -23
  157. package/es-modules/Core/Renderer/SVG/ButtonThemeObject.d.ts +26 -31
  158. package/es-modules/Core/Renderer/SVG/SVGArc3D.d.ts +1 -44
  159. package/es-modules/Core/Renderer/SVG/SVGAttributes.d.ts +15 -51
  160. package/es-modules/Core/Renderer/SVG/SVGAttributes3D.d.ts +1 -42
  161. package/es-modules/Core/Renderer/SVG/SVGCuboid.d.ts +1 -42
  162. package/es-modules/Core/Renderer/SVG/SVGElement.d.ts +459 -0
  163. package/es-modules/Core/Renderer/SVG/SVGElement3D.d.ts +1 -0
  164. package/es-modules/Core/Renderer/SVG/SVGElementBase.d.ts +0 -23
  165. package/es-modules/Core/Renderer/SVG/SVGLabel.d.ts +14 -0
  166. package/es-modules/Core/Renderer/SVG/SVGPath.d.ts +18 -56
  167. package/es-modules/Core/Renderer/SVG/SVGPath3D.d.ts +0 -30
  168. package/es-modules/Core/Renderer/SVG/SVGRenderer.d.ts +652 -0
  169. package/es-modules/Core/Renderer/SVG/SVGRenderer3D.d.ts +1 -0
  170. package/es-modules/Core/Renderer/SVG/SVGRendererBase.d.ts +0 -24
  171. package/es-modules/Core/Renderer/SVG/SymbolOptions.d.ts +3 -26
  172. package/es-modules/Core/Renderer/SVG/SymbolType.d.ts +1 -41
  173. package/es-modules/Core/Renderer/SVG/Symbols.d.ts +146 -0
  174. package/es-modules/Core/Renderer/SVG/TextBuilder.d.ts +1 -0
  175. package/es-modules/Core/Renderer/ShadowOptionsObject.d.ts +21 -30
  176. package/es-modules/Core/Renderer/ShadowOptionsObject.js +11 -0
  177. package/es-modules/Core/Renderer/SizeObject.d.ts +0 -23
  178. package/es-modules/Core/Renderer/SizeObject.js +11 -0
  179. package/es-modules/Core/Responsive.d.ts +94 -29
  180. package/es-modules/Core/Responsive.js +17 -12
  181. package/es-modules/Core/Templating.d.ts +17 -1
  182. package/es-modules/Core/Templating.js +12 -8
  183. package/es-modules/Core/Time.d.ts +18 -1
  184. package/es-modules/Core/Time.js +6 -5
  185. package/es-modules/Core/Tooltip.d.ts +67 -123
  186. package/es-modules/Core/Tooltip.js +161 -108
  187. package/es-modules/Core/TooltipOptions.d.ts +724 -0
  188. package/es-modules/Core/TooltipOptions.js +10 -0
  189. package/es-modules/Core/Utilities.d.ts +32 -703
  190. package/es-modules/Core/Utilities.js +28 -1443
  191. package/es-modules/Data/ColumnUtils.d.ts +83 -80
  192. package/es-modules/Data/ColumnUtils.js +106 -116
  193. package/es-modules/Data/Connectors/CSVConnector.d.ts +9 -14
  194. package/es-modules/Data/Connectors/CSVConnector.js +6 -7
  195. package/es-modules/Data/Connectors/CSVConnectorOptions.d.ts +3 -3
  196. package/es-modules/Data/Connectors/DataConnector.d.ts +63 -54
  197. package/es-modules/Data/Connectors/DataConnector.js +67 -56
  198. package/es-modules/Data/Connectors/DataConnectorOptions.d.ts +3 -3
  199. package/es-modules/Data/Connectors/DataConnectorType.d.ts +3 -3
  200. package/es-modules/Data/Connectors/GoogleSheetsConnector.d.ts +40 -42
  201. package/es-modules/Data/Connectors/GoogleSheetsConnector.js +76 -91
  202. package/es-modules/Data/Connectors/GoogleSheetsConnectorOptions.d.ts +7 -5
  203. package/es-modules/Data/Connectors/HTMLTableConnector.d.ts +23 -28
  204. package/es-modules/Data/Connectors/HTMLTableConnector.js +6 -7
  205. package/es-modules/Data/Connectors/HTMLTableConnectorOptions.d.ts +3 -3
  206. package/es-modules/Data/Connectors/JSONConnector.d.ts +9 -14
  207. package/es-modules/Data/Connectors/JSONConnector.js +6 -7
  208. package/es-modules/Data/Connectors/JSONConnectorOptions.d.ts +3 -3
  209. package/es-modules/Data/Converters/CSVConverter.d.ts +5 -5
  210. package/es-modules/Data/Converters/CSVConverter.js +6 -7
  211. package/es-modules/Data/Converters/CSVConverterOptions.d.ts +5 -5
  212. package/es-modules/Data/Converters/DataConverter.d.ts +76 -78
  213. package/es-modules/Data/Converters/DataConverter.js +29 -56
  214. package/es-modules/Data/Converters/DataConverterType.d.ts +3 -3
  215. package/es-modules/Data/Converters/DataConverterUtils.d.ts +88 -81
  216. package/es-modules/Data/Converters/DataConverterUtils.js +172 -184
  217. package/es-modules/Data/Converters/GoogleSheetsConverter.d.ts +4 -4
  218. package/es-modules/Data/Converters/GoogleSheetsConverter.js +6 -6
  219. package/es-modules/Data/Converters/GoogleSheetsConverterOptions.d.ts +5 -5
  220. package/es-modules/Data/Converters/HTMLTableConverter.d.ts +4 -4
  221. package/es-modules/Data/Converters/HTMLTableConverter.js +5 -6
  222. package/es-modules/Data/Converters/HTMLTableConverterOptions.d.ts +5 -5
  223. package/es-modules/Data/Converters/JSONConverter.d.ts +7 -7
  224. package/es-modules/Data/Converters/JSONConverter.js +9 -9
  225. package/es-modules/Data/Converters/JSONConverterOptions.d.ts +5 -5
  226. package/es-modules/Data/DataCursor.d.ts +65 -70
  227. package/es-modules/Data/DataCursor.js +122 -142
  228. package/es-modules/Data/DataEvent.d.ts +55 -57
  229. package/es-modules/Data/DataEvent.js +3 -3
  230. package/es-modules/Data/DataPool.d.ts +10 -17
  231. package/es-modules/Data/DataPool.js +23 -12
  232. package/es-modules/Data/DataPoolOptions.d.ts +3 -3
  233. package/es-modules/Data/DataTable.d.ts +115 -117
  234. package/es-modules/Data/DataTable.js +67 -33
  235. package/es-modules/Data/DataTableCore.d.ts +11 -11
  236. package/es-modules/Data/DataTableCore.js +7 -7
  237. package/es-modules/Data/DataTableOptions.js +3 -3
  238. package/es-modules/Data/Formula/Formula.js +3 -3
  239. package/es-modules/Data/Formula/FormulaParser.js +4 -5
  240. package/es-modules/Data/Formula/FormulaProcessor.js +4 -5
  241. package/es-modules/Data/Formula/FormulaTypes.js +3 -3
  242. package/es-modules/Data/Formula/Functions/ABS.js +3 -3
  243. package/es-modules/Data/Formula/Functions/AND.js +3 -3
  244. package/es-modules/Data/Formula/Functions/AVERAGE.js +3 -3
  245. package/es-modules/Data/Formula/Functions/AVERAGEA.js +3 -3
  246. package/es-modules/Data/Formula/Functions/COUNT.js +3 -3
  247. package/es-modules/Data/Formula/Functions/COUNTA.js +3 -3
  248. package/es-modules/Data/Formula/Functions/IF.js +3 -3
  249. package/es-modules/Data/Formula/Functions/ISNA.js +3 -3
  250. package/es-modules/Data/Formula/Functions/MAX.js +3 -3
  251. package/es-modules/Data/Formula/Functions/MEDIAN.js +3 -3
  252. package/es-modules/Data/Formula/Functions/MIN.js +3 -3
  253. package/es-modules/Data/Formula/Functions/MOD.js +3 -3
  254. package/es-modules/Data/Formula/Functions/MODE.js +3 -3
  255. package/es-modules/Data/Formula/Functions/NOT.js +3 -3
  256. package/es-modules/Data/Formula/Functions/OR.js +3 -3
  257. package/es-modules/Data/Formula/Functions/PRODUCT.js +3 -3
  258. package/es-modules/Data/Formula/Functions/SUM.js +3 -3
  259. package/es-modules/Data/Formula/Functions/XOR.js +3 -3
  260. package/es-modules/Data/Modifiers/ChainModifier.d.ts +29 -34
  261. package/es-modules/Data/Modifiers/ChainModifier.js +10 -11
  262. package/es-modules/Data/Modifiers/ChainModifierOptions.js +3 -3
  263. package/es-modules/Data/Modifiers/DataModifier.d.ts +36 -41
  264. package/es-modules/Data/Modifiers/DataModifier.js +34 -56
  265. package/es-modules/Data/Modifiers/DataModifierEvent.js +3 -3
  266. package/es-modules/Data/Modifiers/DataModifierOptions.js +3 -3
  267. package/es-modules/Data/Modifiers/DataModifierType.d.ts +3 -3
  268. package/es-modules/Data/Modifiers/FilterModifier.d.ts +4 -4
  269. package/es-modules/Data/Modifiers/FilterModifier.js +6 -7
  270. package/es-modules/Data/Modifiers/FilterModifierOptions.d.ts +3 -2
  271. package/es-modules/Data/Modifiers/FilterModifierOptions.js +3 -3
  272. package/es-modules/Data/Modifiers/InvertModifier.d.ts +4 -4
  273. package/es-modules/Data/Modifiers/InvertModifier.js +6 -7
  274. package/es-modules/Data/Modifiers/InvertModifierOptions.js +3 -3
  275. package/es-modules/Data/Modifiers/MathModifier.d.ts +5 -4
  276. package/es-modules/Data/Modifiers/MathModifier.js +3 -3
  277. package/es-modules/Data/Modifiers/MathModifierOptions.js +3 -3
  278. package/es-modules/Data/Modifiers/RangeModifier.d.ts +4 -4
  279. package/es-modules/Data/Modifiers/RangeModifier.js +6 -7
  280. package/es-modules/Data/Modifiers/RangeModifierOptions.js +3 -3
  281. package/es-modules/Data/Modifiers/SortModifier.d.ts +6 -11
  282. package/es-modules/Data/Modifiers/SortModifier.js +35 -10
  283. package/es-modules/Data/Modifiers/SortModifierOptions.d.ts +43 -6
  284. package/es-modules/Data/Modifiers/SortModifierOptions.js +3 -3
  285. package/es-modules/Grid/Core/Accessibility/A11yOptions.d.ts +77 -0
  286. package/es-modules/Grid/Core/Accessibility/A11yOptions.js +4 -3
  287. package/es-modules/Grid/Core/Accessibility/Accessibility.d.ts +68 -1
  288. package/es-modules/Grid/Core/Accessibility/Accessibility.js +179 -7
  289. package/es-modules/Grid/Core/Credits.js +3 -3
  290. package/es-modules/Grid/Core/Data/DataProvider.d.ts +97 -0
  291. package/es-modules/Grid/Core/Data/DataProvider.js +89 -0
  292. package/es-modules/Grid/Core/Data/DataProviderRegistry.d.ts +20 -0
  293. package/es-modules/Grid/Core/Data/DataProviderRegistry.js +52 -0
  294. package/es-modules/Grid/Core/Data/DataProviderType.d.ts +19 -0
  295. package/es-modules/Grid/Core/Data/DataProviderType.js +15 -0
  296. package/es-modules/Grid/Core/Data/LocalDataProvider.d.ts +165 -0
  297. package/es-modules/Grid/Core/Data/LocalDataProvider.js +341 -0
  298. package/es-modules/Grid/Core/Defaults.js +21 -7
  299. package/es-modules/Grid/Core/Globals.d.ts +20 -16
  300. package/es-modules/Grid/Core/Globals.js +13 -11
  301. package/es-modules/Grid/Core/Grid.d.ts +43 -23
  302. package/es-modules/Grid/Core/Grid.js +316 -136
  303. package/es-modules/Grid/Core/GridUtils.d.ts +33 -0
  304. package/es-modules/Grid/Core/GridUtils.js +53 -6
  305. package/es-modules/Grid/Core/Options.d.ts +162 -5
  306. package/es-modules/Grid/Core/Options.js +3 -3
  307. package/es-modules/Grid/Core/Pagination/Pagination.d.ts +3 -0
  308. package/es-modules/Grid/Core/Pagination/Pagination.js +66 -26
  309. package/es-modules/Grid/Core/Pagination/PaginationOptions.d.ts +4 -40
  310. package/es-modules/Grid/Core/Pagination/PaginationOptions.js +11 -0
  311. package/es-modules/Grid/Core/Querying/FilteringController.js +4 -5
  312. package/es-modules/Grid/Core/Querying/PaginationController.d.ts +2 -2
  313. package/es-modules/Grid/Core/Querying/PaginationController.js +6 -6
  314. package/es-modules/Grid/Core/Querying/QueryingController.d.ts +1 -1
  315. package/es-modules/Grid/Core/Querying/QueryingController.js +5 -29
  316. package/es-modules/Grid/Core/Querying/SortingController.d.ts +15 -0
  317. package/es-modules/Grid/Core/Querying/SortingController.js +89 -51
  318. package/es-modules/Grid/Core/Responsive/ResponsiveComposition.d.ts +53 -0
  319. package/es-modules/Grid/Core/Responsive/ResponsiveComposition.js +229 -0
  320. package/es-modules/Grid/Core/Responsive/ResponsiveOptions.d.ts +58 -0
  321. package/es-modules/Grid/Core/Responsive/ResponsiveOptions.js +15 -0
  322. package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/ColumnFiltering.js +5 -6
  323. package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterCell.d.ts +3 -3
  324. package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterCell.js +6 -7
  325. package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterRow.d.ts +1 -1
  326. package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterRow.js +5 -5
  327. package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilteringTypes.js +3 -3
  328. package/es-modules/Grid/Core/Table/Actions/ColumnSorting.d.ts +29 -3
  329. package/es-modules/Grid/Core/Table/Actions/ColumnSorting.js +136 -26
  330. package/es-modules/Grid/Core/Table/Actions/ColumnsResizer.js +4 -6
  331. package/es-modules/Grid/Core/Table/Actions/RowsVirtualizer.d.ts +94 -3
  332. package/es-modules/Grid/Core/Table/Actions/RowsVirtualizer.js +481 -91
  333. package/es-modules/Grid/Core/Table/Body/CellContextMenu.d.ts +11 -0
  334. package/es-modules/Grid/Core/Table/Body/CellContextMenu.js +84 -0
  335. package/es-modules/Grid/Core/Table/Body/TableCell.d.ts +36 -15
  336. package/es-modules/Grid/Core/Table/Body/TableCell.js +89 -33
  337. package/es-modules/Grid/Core/Table/Body/TableRow.d.ts +15 -5
  338. package/es-modules/Grid/Core/Table/Body/TableRow.js +70 -19
  339. package/es-modules/Grid/Core/Table/Cell.d.ts +16 -10
  340. package/es-modules/Grid/Core/Table/Cell.js +41 -6
  341. package/es-modules/Grid/Core/Table/CellContent/CellContent.js +3 -3
  342. package/es-modules/Grid/Core/Table/CellContent/TextContent.js +7 -12
  343. package/es-modules/Grid/Core/Table/Column.d.ts +11 -5
  344. package/es-modules/Grid/Core/Table/Column.js +26 -37
  345. package/es-modules/Grid/Core/Table/ColumnResizing/AdjacentResizingMode.js +3 -3
  346. package/es-modules/Grid/Core/Table/ColumnResizing/ColumnResizing.js +3 -3
  347. package/es-modules/Grid/Core/Table/ColumnResizing/DistributedResizingMode.js +3 -3
  348. package/es-modules/Grid/Core/Table/ColumnResizing/IndependentResizingMode.js +12 -11
  349. package/es-modules/Grid/Core/Table/ColumnResizing/ResizingMode.js +7 -6
  350. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ColumnToolbar.d.ts +5 -0
  351. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ColumnToolbar.js +21 -7
  352. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/FilterPopup.js +4 -5
  353. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/FilterMenuButton.js +4 -5
  354. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/SortMenuButton.d.ts +9 -0
  355. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/SortMenuButton.js +37 -9
  356. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuPopup.js +5 -4
  357. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/StateHelpers.js +11 -7
  358. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/FilterToolbarButton.js +4 -5
  359. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/MenuToolbarButton.js +4 -5
  360. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/SortToolbarButton.d.ts +4 -1
  361. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/SortToolbarButton.js +88 -15
  362. package/es-modules/Grid/Core/Table/Header/HeaderCell.d.ts +8 -3
  363. package/es-modules/Grid/Core/Table/Header/HeaderCell.js +36 -15
  364. package/es-modules/Grid/Core/Table/Header/HeaderRow.js +7 -8
  365. package/es-modules/Grid/Core/Table/Header/TableHeader.d.ts +1 -1
  366. package/es-modules/Grid/Core/Table/Header/TableHeader.js +6 -6
  367. package/es-modules/Grid/Core/Table/Row.d.ts +1 -1
  368. package/es-modules/Grid/Core/Table/Row.js +5 -5
  369. package/es-modules/Grid/Core/Table/Table.d.ts +68 -12
  370. package/es-modules/Grid/Core/Table/Table.js +296 -92
  371. package/es-modules/Grid/Core/UI/Button.js +3 -3
  372. package/es-modules/Grid/Core/UI/ContextMenu.js +3 -3
  373. package/es-modules/Grid/Core/UI/ContextMenuButton.d.ts +6 -7
  374. package/es-modules/Grid/Core/UI/ContextMenuButton.js +8 -6
  375. package/es-modules/Grid/Core/UI/Popup.js +10 -12
  376. package/es-modules/Grid/Core/UI/SvgIcons.d.ts +42 -7
  377. package/es-modules/Grid/Core/UI/SvgIcons.js +209 -36
  378. package/es-modules/Grid/Core/UI/Toolbar.d.ts +5 -0
  379. package/es-modules/Grid/Core/UI/Toolbar.js +3 -3
  380. package/es-modules/Grid/Core/UI/ToolbarButton.d.ts +4 -12
  381. package/es-modules/Grid/Core/UI/ToolbarButton.js +11 -29
  382. package/es-modules/Grid/Pro/CellEditing/CellEditMode.d.ts +4 -45
  383. package/es-modules/Grid/Pro/CellEditing/CellEditMode.js +16 -0
  384. package/es-modules/Grid/Pro/CellEditing/CellEditing.js +13 -13
  385. package/es-modules/Grid/Pro/CellEditing/CellEditingComposition.js +4 -5
  386. package/es-modules/Grid/Pro/CellRendering/CellContentPro.js +3 -3
  387. package/es-modules/Grid/Pro/CellRendering/CellRenderer.js +3 -3
  388. package/es-modules/Grid/Pro/CellRendering/CellRendererRegistry.js +3 -3
  389. package/es-modules/Grid/Pro/CellRendering/CellRendererType.d.ts +1 -34
  390. package/es-modules/Grid/Pro/CellRendering/CellRendererType.js +15 -0
  391. package/es-modules/Grid/Pro/CellRendering/CellRenderersComposition.d.ts +1 -1
  392. package/es-modules/Grid/Pro/CellRendering/CellRenderersComposition.js +7 -5
  393. package/es-modules/Grid/Pro/CellRendering/ContentTypes/CheckboxContent.d.ts +2 -2
  394. package/es-modules/Grid/Pro/CellRendering/ContentTypes/CheckboxContent.js +3 -3
  395. package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateInputContent.js +3 -3
  396. package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateInputContentBase.js +3 -3
  397. package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateTimeInputContent.js +3 -3
  398. package/es-modules/Grid/Pro/CellRendering/ContentTypes/NumberInputContent.js +4 -5
  399. package/es-modules/Grid/Pro/CellRendering/ContentTypes/SelectContent.d.ts +2 -2
  400. package/es-modules/Grid/Pro/CellRendering/ContentTypes/SelectContent.js +3 -3
  401. package/es-modules/Grid/Pro/CellRendering/ContentTypes/SparklineContent.d.ts +7 -5
  402. package/es-modules/Grid/Pro/CellRendering/ContentTypes/SparklineContent.js +4 -5
  403. package/es-modules/Grid/Pro/CellRendering/ContentTypes/TextInputContent.d.ts +2 -2
  404. package/es-modules/Grid/Pro/CellRendering/ContentTypes/TextInputContent.js +4 -5
  405. package/es-modules/Grid/Pro/CellRendering/ContentTypes/TimeInputContent.js +3 -3
  406. package/es-modules/Grid/Pro/CellRendering/Renderers/CheckboxRenderer.js +4 -5
  407. package/es-modules/Grid/Pro/CellRendering/Renderers/DateInputRenderer.js +4 -5
  408. package/es-modules/Grid/Pro/CellRendering/Renderers/DateInputRendererBase.js +3 -3
  409. package/es-modules/Grid/Pro/CellRendering/Renderers/DateTimeInputRenderer.js +4 -5
  410. package/es-modules/Grid/Pro/CellRendering/Renderers/NumberInputRenderer.js +4 -5
  411. package/es-modules/Grid/Pro/CellRendering/Renderers/SelectRenderer.js +4 -5
  412. package/es-modules/Grid/Pro/CellRendering/Renderers/SparklineRenderer.d.ts +4 -4
  413. package/es-modules/Grid/Pro/CellRendering/Renderers/SparklineRenderer.js +4 -5
  414. package/es-modules/Grid/Pro/CellRendering/Renderers/TextInputRenderer.js +4 -5
  415. package/es-modules/Grid/Pro/CellRendering/Renderers/TextRenderer.js +4 -5
  416. package/es-modules/Grid/Pro/CellRendering/Renderers/TimeInputRenderer.js +4 -5
  417. package/es-modules/Grid/Pro/ColumnTypes/Validator.d.ts +10 -1
  418. package/es-modules/Grid/Pro/ColumnTypes/Validator.js +56 -12
  419. package/es-modules/Grid/Pro/ColumnTypes/ValidatorComposition.d.ts +1 -1
  420. package/es-modules/Grid/Pro/ColumnTypes/ValidatorComposition.js +6 -7
  421. package/es-modules/Grid/Pro/Credits/CreditsPro.js +3 -3
  422. package/es-modules/Grid/Pro/Credits/CreditsProComposition.js +4 -6
  423. package/es-modules/Grid/Pro/Data/DataSourceHelper.d.ts +74 -0
  424. package/es-modules/Grid/Pro/Data/DataSourceHelper.js +246 -0
  425. package/es-modules/Grid/Pro/Data/QuerySerializer.d.ts +46 -0
  426. package/es-modules/Grid/Pro/Data/QuerySerializer.js +169 -0
  427. package/es-modules/Grid/Pro/Data/RemoteDataProvider.d.ts +187 -0
  428. package/es-modules/Grid/Pro/Data/RemoteDataProvider.js +500 -0
  429. package/es-modules/Grid/Pro/Export/Exporting.js +5 -7
  430. package/es-modules/Grid/Pro/Export/ExportingComposition.js +4 -5
  431. package/es-modules/Grid/Pro/GridEvents.d.ts +1 -0
  432. package/es-modules/Grid/Pro/GridEvents.js +4 -5
  433. package/es-modules/Grid/Pro/Pagination/PaginationComposition.d.ts +0 -1
  434. package/es-modules/Grid/Pro/Pagination/PaginationComposition.js +4 -5
  435. package/es-modules/Grid/index.js +3 -3
  436. package/es-modules/Shared/BaseForm.js +4 -5
  437. package/es-modules/Shared/DownloadURL.d.ts +1 -85
  438. package/es-modules/Shared/DownloadURL.js +15 -13
  439. package/es-modules/Shared/LangOptionsCore.d.ts +4 -3
  440. package/es-modules/Shared/TimeBase.d.ts +1 -46
  441. package/es-modules/Shared/TimeBase.js +11 -10
  442. package/es-modules/Shared/Types.d.ts +11 -3
  443. package/es-modules/Shared/Utilities.d.ts +576 -0
  444. package/es-modules/Shared/Utilities.js +1368 -0
  445. package/es-modules/masters/grid-pro.src.d.ts +18 -19
  446. package/es-modules/masters/grid-pro.src.js +24 -9
  447. package/grid-pro.d.ts +18 -19
  448. package/grid-pro.js +6 -5
  449. package/grid-pro.js.map +1 -1
  450. package/grid-pro.src.d.ts +18 -19
  451. package/grid-pro.src.js +8132 -4531
  452. package/package.json +1 -1
  453. package/es-modules/Grid/Core/Pagination/Icons.d.ts +0 -7
  454. package/es-modules/Grid/Core/Pagination/Icons.js +0 -7
  455. package/es-modules/Grid/Pro/highcharts.d.ts +0 -7
@@ -0,0 +1,1225 @@
1
+ import type { AlignObject } from '../Renderer/AlignObject';
2
+ import type { ButtonRelativeToValue } from '../../Maps/MapNavigationOptions';
3
+ import type AnimationOptions from '../../Core/Animation/AnimationOptions';
4
+ import type Axis from '../Axis/Axis';
5
+ import type Chart from './Chart';
6
+ import type ColorType from '../../Core/Color/ColorType';
7
+ import type CSSObject from '../Renderer/CSSObject';
8
+ import type { GeoJSON, TopoJSON } from '../../Maps/GeoJSON';
9
+ import type { HTMLDOMElement } from '../Renderer/DOMElementType';
10
+ import type { NumberFormatterCallbackFunction } from '../Options';
11
+ import type { SeriesTypeOptions } from '../Series/SeriesType';
12
+ import type ShadowOptionsObject from '../Renderer/ShadowOptionsObject';
13
+ import type SVGAttributes from '../Renderer/SVG/SVGAttributes';
14
+ declare module '../Options' {
15
+ interface Options {
16
+ /**
17
+ * General options for the chart.
18
+ */
19
+ chart: ChartOptions;
20
+ }
21
+ }
22
+ export interface ChartAddSeriesCallbackFunction {
23
+ (this: Chart, event: ChartAddSeriesEventObject): void;
24
+ }
25
+ export interface ChartAddSeriesEventObject {
26
+ options: SeriesTypeOptions;
27
+ preventDefault: Function;
28
+ target: Chart;
29
+ type: 'addSeries';
30
+ }
31
+ export interface ChartClickCallbackFunction {
32
+ (this: Chart, event: PointerEvent): void;
33
+ }
34
+ export interface ChartClickEventAxisObject {
35
+ axis: Axis;
36
+ value: number;
37
+ }
38
+ export interface ChartClickEventObject {
39
+ xAxis: Array<ChartClickEventAxisObject>;
40
+ yAxis: Array<ChartClickEventAxisObject>;
41
+ zAxis?: Array<ChartClickEventAxisObject>;
42
+ }
43
+ /**
44
+ * Event listeners for the chart.
45
+ */
46
+ export interface ChartEventsOptions {
47
+ /**
48
+ * Fires when a series is added to the chart after load time, using the
49
+ * `addSeries` method. One parameter, `event`, is passed to the
50
+ * function, containing common event information. Through
51
+ * `event.options` you can access the series options that were passed to
52
+ * the `addSeries` method. Returning false prevents the series from
53
+ * being added.
54
+ *
55
+ * @sample {highcharts} highcharts/chart/events-addseries/
56
+ * Alert on add series
57
+ * @sample {highstock} stock/chart/events-addseries/
58
+ * Alert on add series
59
+ *
60
+ * @since 1.2.0
61
+ */
62
+ addSeries?: ChartAddSeriesCallbackFunction;
63
+ /**
64
+ * Fires when clicking on the plot background. One parameter, `event`,
65
+ * is passed to the function, containing common event information.
66
+ *
67
+ * Information on the clicked spot can be found through `event.xAxis`
68
+ * and `event.yAxis`, which are arrays containing the axes of each
69
+ * dimension and each axis' value at the clicked spot. The primary axes
70
+ * are `event.xAxis[0]` and `event.yAxis[0]`. Remember the unit of a
71
+ * datetime axis is milliseconds since 1970-01-01 00:00:00.
72
+ *
73
+ * ```js
74
+ * click: function(e) {
75
+ * console.log(
76
+ * Highcharts.dateFormat('%Y-%m-%d %H:%M:%S', e.xAxis[0].value),
77
+ * e.yAxis[0].value
78
+ * )
79
+ * }
80
+ * ```
81
+ *
82
+ * @sample {highcharts} highcharts/chart/events-click/
83
+ * Alert coordinates on click
84
+ * @sample {highcharts} highcharts/chart/events-container/
85
+ * Alternatively, attach event to container
86
+ * @sample {highstock} stock/chart/events-click/
87
+ * Alert coordinates on click
88
+ * @sample {highstock} highcharts/chart/events-container/
89
+ * Alternatively, attach event to container
90
+ * @sample {highmaps} maps/chart/events-click/
91
+ * Record coordinates on click
92
+ * @sample {highmaps} highcharts/chart/events-container/
93
+ * Alternatively, attach event to container
94
+ *
95
+ * @since 1.2.0
96
+ */
97
+ click?: ChartClickCallbackFunction;
98
+ /**
99
+ * Fires when the chart is finished loading. Since v4.2.2, it also waits
100
+ * for images to be loaded, for example from point markers. One
101
+ * parameter, `event`, is passed to the function, containing common
102
+ * event information.
103
+ *
104
+ * There is also a second parameter to the chart constructor where a
105
+ * callback function can be passed to be executed on chart.load.
106
+ *
107
+ * @sample {highcharts} highcharts/chart/events-load/
108
+ * Alert on chart load
109
+ * @sample {highcharts} highcharts/chart/events-render/
110
+ * Load vs Redraw vs Render
111
+ * @sample {highstock} stock/chart/events-load/
112
+ * Alert on chart load
113
+ * @sample {highmaps} maps/chart/events-load/
114
+ * Add series on chart load
115
+ */
116
+ load?: ChartLoadCallbackFunction;
117
+ /**
118
+ * Fires when the chart is redrawn, either after a call to
119
+ * `chart.redraw()` or after an axis, series or point is modified with
120
+ * the `redraw` option set to `true`. One parameter, `event`, is passed
121
+ * to the function, containing common event information.
122
+ *
123
+ * @sample {highcharts} highcharts/chart/events-redraw/
124
+ * Alert on chart redraw
125
+ * @sample {highcharts} highcharts/chart/events-render/
126
+ * Load vs Redraw vs Render
127
+ * @sample {highstock} stock/chart/events-redraw/
128
+ * Alert on chart redraw when adding a series or moving the
129
+ * zoomed range
130
+ * @sample {highmaps} maps/chart/events-redraw/
131
+ * Set subtitle on chart redraw
132
+ *
133
+ * @since 1.2.0
134
+ */
135
+ redraw?: ChartRedrawCallbackFunction;
136
+ /**
137
+ * Fires after initial load of the chart (directly after the `load`
138
+ * event), and after each redraw (directly after the `redraw` event).
139
+ *
140
+ * @sample {highcharts} highcharts/chart/events-render/
141
+ * Load vs Redraw vs Render
142
+ *
143
+ * @since 5.0.7
144
+ */
145
+ render?: ChartRenderCallbackFunction;
146
+ /**
147
+ * Fires when an area of the chart has been selected. Selection is
148
+ * enabled by setting the chart's zoomType. One parameter, `event`, is
149
+ * passed to the function, containing common event information. The
150
+ * default action for the selection event is to zoom the chart to the
151
+ * selected area. It can be prevented by calling
152
+ * `event.preventDefault()` or return false.
153
+ *
154
+ * Information on the selected area can be found through `event.xAxis`
155
+ * and `event.yAxis`, which are arrays containing the axes of each
156
+ * dimension and each axis' min and max values. The primary axes are
157
+ * `event.xAxis[0]` and `event.yAxis[0]`. Remember the unit of a
158
+ * datetime axis is milliseconds since 1970-01-01 00:00:00.
159
+ *
160
+ * ```js
161
+ * selection: function(event) {
162
+ * // log the min and max of the primary, datetime x-axis
163
+ * console.log(
164
+ * Highcharts.dateFormat(
165
+ * '%Y-%m-%d %H:%M:%S',
166
+ * event.xAxis[0].min
167
+ * ),
168
+ * Highcharts.dateFormat(
169
+ * '%Y-%m-%d %H:%M:%S',
170
+ * event.xAxis[0].max
171
+ * )
172
+ * );
173
+ * // log the min and max of the y axis
174
+ * console.log(event.yAxis[0].min, event.yAxis[0].max);
175
+ * }
176
+ * ```
177
+ *
178
+ * @sample {highcharts} highcharts/chart/events-selection/
179
+ * Report on selection and reset
180
+ * @sample {highcharts} highcharts/chart/events-selection-points/
181
+ * Select a range of points through a drag selection
182
+ * @sample {highstock} stock/chart/events-selection/
183
+ * Report on selection and reset
184
+ * @sample {highstock} highcharts/chart/events-selection-points/
185
+ * Select a range of points through a drag selection
186
+ * (Highcharts)
187
+ */
188
+ selection?: ChartSelectionCallbackFunction;
189
+ }
190
+ export interface ChartLoadCallbackFunction {
191
+ (this: Chart, event: Event): void;
192
+ }
193
+ /**
194
+ * General options for the chart.
195
+ */
196
+ export interface ChartOptions {
197
+ /**
198
+ * When using multiple axes, align the thresholds. When this is true, other
199
+ * ticks will also be aligned.
200
+ *
201
+ * Note that for line series and some other series types, the `threshold`
202
+ * option is set to `null` by default. This will in turn cause their y-axis
203
+ * to not have a threshold. In order to avoid that, set the series
204
+ * `threshold` to 0 or another number.
205
+ *
206
+ * If `startOnTick` or `endOnTick` in the axis options are set to false, or
207
+ * if the axis is logarithmic, the threshold will not be aligned.
208
+ *
209
+ * @sample {highcharts} highcharts/chart/alignthresholds/ Set to true
210
+ *
211
+ * @since 10.0.0
212
+ * @product highcharts highstock gantt
213
+ */
214
+ alignThresholds?: boolean;
215
+ /**
216
+ * When using multiple axes, the ticks of two or more opposite axes
217
+ * will automatically be aligned by adding ticks to the axis or axes
218
+ * with the least ticks, as if `tickAmount` were specified.
219
+ *
220
+ * This can be prevented by setting `alignTicks` to false. If the grid
221
+ * lines look messy, it's a good idea to hide them for the secondary
222
+ * axis by setting `gridLineWidth` to 0.
223
+ *
224
+ * If `startOnTick` or `endOnTick` in the axis options are set to false,
225
+ * then the `alignTicks ` will be disabled for the axis.
226
+ *
227
+ * Disabled for logarithmic axes.
228
+ *
229
+ * @sample {highcharts} highcharts/chart/alignticks-true/
230
+ * True by default
231
+ * @sample {highcharts} highcharts/chart/alignticks-false/
232
+ * False
233
+ * @sample {highstock} stock/chart/alignticks-true/
234
+ * True by default
235
+ * @sample {highstock} stock/chart/alignticks-false/
236
+ * False
237
+ *
238
+ * @default true
239
+ * @product highcharts highstock gantt
240
+ */
241
+ alignTicks?: boolean;
242
+ /**
243
+ * Set the overall animation for all chart updating. Animation can be
244
+ * disabled throughout the chart by setting it to false here. It can
245
+ * be overridden for each individual API method as a function parameter.
246
+ * The only animation not affected by this option is the initial series
247
+ * animation, see [plotOptions.series.animation](
248
+ * #plotOptions.series.animation).
249
+ *
250
+ * The animation can either be set as a boolean or a configuration
251
+ * object. If `true`, it will use the 'swing' jQuery easing and a
252
+ * duration of 500 ms. If used as a configuration object, the following
253
+ * properties are supported:
254
+ *
255
+ * - `defer`: The animation delay time in milliseconds.
256
+ *
257
+ * - `duration`: The duration of the animation in milliseconds.
258
+ *
259
+ * - `easing`: A string reference to an easing function set on the
260
+ * `Math` object. See
261
+ * [the easing demo](https://jsfiddle.net/gh/get/library/pure/highcharts/highcharts/tree/master/samples/highcharts/plotoptions/series-animation-easing/).
262
+ *
263
+ * When zooming on a series with less than 100 points, the chart redraw
264
+ * will be done with animation, but in case of more data points, it is
265
+ * necessary to set this option to ensure animation on zoom.
266
+ *
267
+ * @sample {highcharts} highcharts/chart/animation-none/
268
+ * Updating with no animation
269
+ * @sample {highcharts} highcharts/chart/animation-duration/
270
+ * With a longer duration
271
+ * @sample {highcharts} highcharts/chart/animation-easing/
272
+ * With a jQuery UI easing
273
+ * @sample {highmaps} maps/chart/animation-none/
274
+ * Updating with no animation
275
+ * @sample {highmaps} maps/chart/animation-duration/
276
+ * With a longer duration
277
+ *
278
+ * @default true
279
+ */
280
+ animation?: (boolean | Partial<AnimationOptions>);
281
+ /**
282
+ * When a chart with an x and a y-axis is rendered, we first pre-render the
283
+ * labels of both in order to measure them. Then, if either of the axis
284
+ * labels take up so much space that it significantly affects the length of
285
+ * the other axis, we repeat the process.
286
+ *
287
+ * By default we stop at two axis layout runs, but it may be that the second
288
+ * run also alter the space required by either axis, for example if it
289
+ * causes the labels to rotate. In this situation, a subsequent redraw of
290
+ * the chart may cause the tick and label placement to change for apparently
291
+ * no reason.
292
+ *
293
+ * Use the `axisLayoutRuns` option to set the maximum allowed number of
294
+ * repetitions. But keep in mind that the default value of 2 is set because
295
+ * every run costs performance time.
296
+ *
297
+ * **Note:** Changing that option to higher than the default might decrease
298
+ * performance significantly, especially with bigger sets of data.
299
+ *
300
+ * @default 2
301
+ * @since 11.3.0
302
+ */
303
+ axisLayoutRuns?: number;
304
+ /**
305
+ * The background color of the outer chart area.
306
+ *
307
+ * @see In styled mode, the background is set with the
308
+ * `.highcharts-background` class.
309
+ *
310
+ * @sample {highcharts} highcharts/chart/backgroundcolor-color/
311
+ * Color
312
+ * @sample {highcharts} highcharts/chart/backgroundcolor-gradient/
313
+ * Gradient
314
+ * @sample {highstock} stock/chart/backgroundcolor-color/
315
+ * Color
316
+ * @sample {highstock} stock/chart/backgroundcolor-gradient/
317
+ * Gradient
318
+ * @sample {highmaps} maps/chart/backgroundcolor-color/
319
+ * Color
320
+ * @sample {highmaps} maps/chart/backgroundcolor-gradient/
321
+ * Gradient
322
+ */
323
+ backgroundColor?: ColorType;
324
+ /**
325
+ * The color of the outer chart border.
326
+ *
327
+ * @see In styled mode, the stroke is set with the
328
+ * `.highcharts-background` class.
329
+ *
330
+ * @sample {highcharts} highcharts/chart/bordercolor/
331
+ * Brown border
332
+ * @sample {highstock} stock/chart/border/
333
+ * Brown border
334
+ * @sample {highmaps} maps/chart/border/
335
+ * Border options
336
+ */
337
+ borderColor?: ColorType;
338
+ /**
339
+ * The corner radius of the outer chart border.
340
+ *
341
+ * @sample {highcharts} highcharts/chart/borderradius/
342
+ * 20px radius
343
+ * @sample {highstock} stock/chart/border/
344
+ * 10px radius
345
+ * @sample {highmaps} maps/chart/border/
346
+ * Border options
347
+ */
348
+ borderRadius?: number;
349
+ /**
350
+ * The pixel width of the outer chart border.
351
+ *
352
+ * @see In styled mode, the stroke is set with the
353
+ * `.highcharts-background` class.
354
+ *
355
+ * @sample {highcharts} highcharts/chart/borderwidth/
356
+ * 5px border
357
+ * @sample {highstock} stock/chart/border/
358
+ * 2px border
359
+ * @sample {highmaps} maps/chart/border/
360
+ * Border options
361
+ *
362
+ * @default 0
363
+ */
364
+ borderWidth?: number;
365
+ /**
366
+ * A CSS class name to apply to the charts container `div`, allowing
367
+ * unique CSS styling for each chart.
368
+ */
369
+ className?: string;
370
+ /**
371
+ * In styled mode, this sets how many colors the class names
372
+ * should rotate between. With ten colors, series (or points) are
373
+ * given class names like `highcharts-color-0`, `highcharts-color-1`
374
+ * [...] `highcharts-color-9`. The equivalent in non-styled mode
375
+ * is to set colors using the [colors](#colors) setting.
376
+ *
377
+ * @since 5.0.0
378
+ */
379
+ colorCount?: number;
380
+ /**
381
+ * The default series type for the chart. Can be any of the chart types
382
+ * listed under [plotOptions](#plotOptions) and [series](#series) or can
383
+ * be a series provided by an additional module.
384
+ *
385
+ * In TypeScript this option has no effect in sense of typing and
386
+ * instead the `type` option must always be set in the series.
387
+ *
388
+ * @sample {highcharts} highcharts/chart/type-bar/
389
+ * Bar
390
+ * @sample {highstock} stock/chart/type/
391
+ * Areaspline
392
+ * @sample {highmaps} maps/chart/type-mapline/
393
+ * Mapline
394
+ *
395
+ * @default {highcharts} line
396
+ * @default {highstock} line
397
+ * @default {highmaps} map
398
+ * @since 2.1.0
399
+ */
400
+ defaultSeriesType?: string;
401
+ /**
402
+ * By default, (because of memory and performance reasons) the chart does
403
+ * not copy the data but keeps it as a reference. In some cases, this might
404
+ * result in mutating the original data source. In order to prevent that,
405
+ * set that property to false. Please note that changing that might decrease
406
+ * performance, especially with bigger sets of data.
407
+ *
408
+ * @since 10.1.0
409
+ */
410
+ allowMutatingData?: boolean;
411
+ /**
412
+ * Event listeners for the chart.
413
+ */
414
+ events?: ChartEventsOptions;
415
+ /**
416
+ * An explicit width for the chart. By default (when `null`) the width
417
+ * is calculated from the offset width of the containing element.
418
+ *
419
+ * @sample {highcharts} highcharts/chart/width/
420
+ * 800px wide
421
+ * @sample {highstock} stock/chart/width/
422
+ * 800px wide
423
+ * @sample {highmaps} maps/chart/size/
424
+ * Chart with explicit size
425
+ */
426
+ height?: (null | number | string);
427
+ /**
428
+ * If true, the axes will scale to the remaining visible series once
429
+ * one series is hidden. If false, hiding and showing a series will
430
+ * not affect the axes or the other series. For stacks, once one series
431
+ * within the stack is hidden, the rest of the stack will close in
432
+ * around it even if the axis is not affected.
433
+ *
434
+ * @sample {highcharts} highcharts/chart/ignorehiddenseries-true/
435
+ * True by default
436
+ * @sample {highcharts} highcharts/chart/ignorehiddenseries-false/
437
+ * False
438
+ * @sample {highcharts} highcharts/chart/ignorehiddenseries-true-stacked/
439
+ * True with stack
440
+ * @sample {highstock} stock/chart/ignorehiddenseries-true/
441
+ * True by default
442
+ * @sample {highstock} stock/chart/ignorehiddenseries-false/
443
+ * False
444
+ *
445
+ * @since 1.2.0
446
+ * @product highcharts highstock gantt
447
+ */
448
+ ignoreHiddenSeries?: boolean;
449
+ /**
450
+ * Whether to invert the axes so that the x axis is vertical and y axis
451
+ * is horizontal. When `true`, the x axis is [reversed](#xAxis.reversed)
452
+ * by default.
453
+ *
454
+ * @productdesc {highcharts}
455
+ * If a bar series is present in the chart, it will be inverted
456
+ * automatically. Inverting the chart doesn't have an effect if there
457
+ * are no cartesian series in the chart.
458
+ *
459
+ * @sample {highcharts} highcharts/chart/inverted/
460
+ * Inverted line
461
+ * @sample {highstock} stock/navigator/inverted/
462
+ * Inverted stock chart
463
+ *
464
+ * @default false
465
+ * @product highcharts highstock gantt
466
+ */
467
+ inverted?: boolean;
468
+ /**
469
+ * Default `mapData` for all series, in terms of a GeoJSON or TopoJSON
470
+ * object. If set to a string, it functions as an index into the
471
+ * `Highcharts.maps` array.
472
+ *
473
+ * For picking out individual shapes and geometries to use for each series
474
+ * of the map, see [series.mapData](#series.map.mapData).
475
+ *
476
+ * @sample maps/demo/geojson
477
+ * Loading GeoJSON data
478
+ * @sample maps/chart/topojson
479
+ * Loading TopoJSON data
480
+ *
481
+ * @since 5.0.0
482
+ * @product highmaps
483
+ */
484
+ map?: string | GeoJSON | TopoJSON;
485
+ /**
486
+ * Set lat/lon transformation definitions for the chart. If not defined,
487
+ * these are extracted from the map data.
488
+ *
489
+ * @since 5.0.0
490
+ * @product highmaps
491
+ */
492
+ mapTransforms?: any;
493
+ /**
494
+ * The margin between the outer edge of the chart and the plot area.
495
+ * The numbers in the array designate top, right, bottom and left
496
+ * respectively. Use the options `marginTop`, `marginRight`,
497
+ * `marginBottom` and `marginLeft` for shorthand setting of one option.
498
+ *
499
+ * By default there is no margin. The actual space is dynamically
500
+ * calculated from the offset of axis labels, axis title, title,
501
+ * subtitle and legend in addition to the `spacingTop`, `spacingRight`,
502
+ * `spacingBottom` and `spacingLeft` options.
503
+ *
504
+ * @sample {highcharts} highcharts/chart/margins-zero/
505
+ * Zero margins
506
+ * @sample {highstock} stock/chart/margin-zero/
507
+ * Zero margins
508
+ */
509
+ margin?: (number | Array<number>);
510
+ /**
511
+ * The margin between the bottom outer edge of the chart and the plot
512
+ * area. Use this to set a fixed pixel value for the margin as opposed
513
+ * to the default dynamic margin. See also `spacingBottom`.
514
+ *
515
+ * @sample {highcharts} highcharts/chart/marginbottom/
516
+ * 100px bottom margin
517
+ * @sample {highstock} stock/chart/marginbottom/
518
+ * 100px bottom margin
519
+ * @sample {highmaps} maps/chart/margin/
520
+ * 100px margins
521
+ *
522
+ * @since 2.0
523
+ */
524
+ marginBottom?: number;
525
+ /**
526
+ * The margin between the left outer edge of the chart and the plot
527
+ * area. Use this to set a fixed pixel value for the margin as opposed
528
+ * to the default dynamic margin. See also `spacingLeft`.
529
+ *
530
+ * @sample {highcharts} highcharts/chart/marginleft/
531
+ * 150px left margin
532
+ * @sample {highstock} stock/chart/marginleft/
533
+ * 150px left margin
534
+ * @sample {highmaps} maps/chart/margin/
535
+ * 100px margins
536
+ *
537
+ * @since 2.0
538
+ */
539
+ marginLeft?: number;
540
+ /**
541
+ * The margin between the right outer edge of the chart and the plot
542
+ * area. Use this to set a fixed pixel value for the margin as opposed
543
+ * to the default dynamic margin. See also `spacingRight`.
544
+ *
545
+ * @sample {highcharts} highcharts/chart/marginright/
546
+ * 100px right margin
547
+ * @sample {highstock} stock/chart/marginright/
548
+ * 100px right margin
549
+ * @sample {highmaps} maps/chart/margin/
550
+ * 100px margins
551
+ *
552
+ * @since 22.0
553
+ */
554
+ marginRight?: number;
555
+ /**
556
+ * The margin between the top outer edge of the chart and the plot area.
557
+ * Use this to set a fixed pixel value for the margin as opposed to
558
+ * the default dynamic margin. See also `spacingTop`.
559
+ *
560
+ * @sample {highcharts} highcharts/chart/margintop/
561
+ * 100px top margin
562
+ * @sample {highstock} stock/chart/margintop/
563
+ * 100px top margin
564
+ * @sample {highmaps} maps/chart/margin/
565
+ * 100px margins
566
+ *
567
+ * @since 2.0
568
+ */
569
+ marginTop?: number;
570
+ /**
571
+ * Callback function to override the default function that formats all
572
+ * the numbers in the chart. Returns a string with the formatted number.
573
+ *
574
+ * @sample highcharts/members/highcharts-numberformat
575
+ * Arabic digits in Highcharts
576
+ *
577
+ * @since 8.0.0
578
+ */
579
+ numberFormatter?: NumberFormatterCallbackFunction;
580
+ /**
581
+ * Allows setting a key to switch between zooming and panning. Can be
582
+ * one of `alt`, `ctrl`, `meta` (the command key on Mac and Windows
583
+ * key on Windows) or `shift`. The keys are mapped directly to the key
584
+ * properties of the click event argument (`event.altKey`,
585
+ * `event.ctrlKey`, `event.metaKey` and `event.shiftKey`).
586
+ *
587
+ * @since 4.0.3
588
+ * @product highcharts gantt
589
+ * @validvalue ["alt", "ctrl", "meta", "shift"]
590
+ */
591
+ panKey?: 'ctrl' | 'shift';
592
+ /**
593
+ * Allow panning in a chart. Best used with [panKey](#chart.panKey)
594
+ * to combine zooming and panning.
595
+ *
596
+ * On touch devices, when the [tooltip.followTouchMove](
597
+ * #tooltip.followTouchMove) option is `true` (default), panning
598
+ * requires two fingers. To allow panning with one finger, set
599
+ * `followTouchMove` to `false`.
600
+ *
601
+ * **Note:** If both zooming and panning are enabled without keys, zooming
602
+ * will take precedence by default. To prioritize panning, either set
603
+ * [chart.zooming.key](#chart.zooming.key) or panKey.
604
+ *
605
+ * @sample {highcharts} highcharts/chart/pankey/
606
+ * Zooming and panning
607
+ * @sample {highstock} stock/chart/panning/
608
+ * Zooming and xy panning
609
+ */
610
+ panning?: ChartPanningOptions;
611
+ /**
612
+ * Equivalent to [zoomType](#chart.zoomType), but for multitouch
613
+ * gestures only. By default, the `pinchType` is the same as the
614
+ * `zoomType` setting. However, pinching can be enabled separately in
615
+ * some cases, for example in stock charts where a mouse drag pans the
616
+ * chart, while pinching is enabled. When [tooltip.followTouchMove](
617
+ * #tooltip.followTouchMove) is true, pinchType only applies to
618
+ * two-finger touches.
619
+ *
620
+ * @default {highcharts} undefined
621
+ * @default {highstock} undefined
622
+ * @since 3.0
623
+ * @product highcharts highstock gantt
624
+ * @deprecated
625
+ */
626
+ pinchType?: ChartPinchTypeValue;
627
+ /**
628
+ * The background color or gradient for the plot area.
629
+ *
630
+ * @see In styled mode, the plot background is set with the
631
+ * `.highcharts-plot-background` class.
632
+ *
633
+ * @sample {highcharts} highcharts/chart/plotbackgroundcolor-color/
634
+ * Color
635
+ * @sample {highcharts} highcharts/chart/plotbackgroundcolor-gradient/
636
+ * Gradient
637
+ * @sample {highstock} stock/chart/plotbackgroundcolor-color/
638
+ * Color
639
+ * @sample {highstock} stock/chart/plotbackgroundcolor-gradient/
640
+ * Gradient
641
+ * @sample {highmaps} maps/chart/plotbackgroundcolor-color/
642
+ * Color
643
+ * @sample {highmaps} maps/chart/plotbackgroundcolor-gradient/
644
+ * Gradient
645
+ */
646
+ plotBackgroundColor?: ColorType;
647
+ /**
648
+ * The URL for an image to use as the plot background. To set an image
649
+ * as the background for the entire chart, set a CSS background image
650
+ * to the container element. Note that for the image to be applied to
651
+ * exported charts, its URL needs to be accessible by the export server.
652
+ *
653
+ * @see In styled mode, a plot background image can be set with the
654
+ * `.highcharts-plot-background` class and a [custom pattern](
655
+ * https://www.highcharts.com/docs/chart-design-and-style/gradients-shadows-and-patterns).
656
+ *
657
+ * @sample {highcharts} highcharts/chart/plotbackgroundimage/
658
+ * Skies
659
+ * @sample {highstock} stock/chart/plotbackgroundimage/
660
+ * Skies
661
+ */
662
+ plotBackgroundImage?: string;
663
+ /**
664
+ * The color of the inner chart or plot area border.
665
+ *
666
+ * @see In styled mode, a plot border stroke can be set with the
667
+ * `.highcharts-plot-border` class.
668
+ *
669
+ * @sample {highcharts} highcharts/chart/plotbordercolor/
670
+ * Blue border
671
+ * @sample {highstock} stock/chart/plotborder/
672
+ * Blue border
673
+ * @sample {highmaps} maps/chart/plotborder/
674
+ * Plot border options
675
+ */
676
+ plotBorderColor?: ColorType;
677
+ /**
678
+ * The pixel width of the plot area border.
679
+ *
680
+ * @sample {highcharts} highcharts/chart/plotborderwidth/
681
+ * 1px border
682
+ * @sample {highstock} stock/chart/plotborder/
683
+ * 2px border
684
+ * @sample {highmaps} maps/chart/plotborder/
685
+ * Plot border options
686
+ *
687
+ * @default 0
688
+ */
689
+ plotBorderWidth?: number;
690
+ /**
691
+ * Whether to apply a drop shadow to the plot area. Requires that
692
+ * plotBackgroundColor be set. The shadow can be an object configuration
693
+ * containing `color`, `offsetX`, `offsetY`, `opacity` and `width`.
694
+ *
695
+ * @sample {highcharts} highcharts/chart/plotshadow/
696
+ * Plot shadow
697
+ * @sample {highstock} stock/chart/plotshadow/
698
+ * Plot shadow
699
+ * @sample {highmaps} maps/chart/plotborder/
700
+ * Plot border options
701
+ *
702
+ * @default false
703
+ */
704
+ plotShadow?: (boolean | Partial<ShadowOptionsObject>);
705
+ /**
706
+ * Whether to reflow the chart to fit the width of the container div
707
+ * on resizing the window.
708
+ *
709
+ * @sample {highcharts} highcharts/chart/reflow-true/
710
+ * True by default
711
+ * @sample {highcharts} highcharts/chart/reflow-false/
712
+ * False
713
+ * @sample {highstock} stock/chart/reflow-true/
714
+ * True by default
715
+ * @sample {highstock} stock/chart/reflow-false/
716
+ * False
717
+ * @sample {highmaps} maps/chart/reflow-true/
718
+ * True by default
719
+ * @sample {highmaps} maps/chart/reflow-false/
720
+ * False
721
+ *
722
+ * @since 2.1
723
+ */
724
+ reflow?: boolean;
725
+ /**
726
+ * The HTML element where the chart will be rendered. If it is a string,
727
+ * the element by that id is used. The HTML element can also be passed
728
+ * by direct reference, or as the first argument of the chart
729
+ * constructor, in which case the option is not needed.
730
+ *
731
+ * @sample {highcharts} highcharts/chart/reflow-true/
732
+ * String
733
+ * @sample {highcharts} highcharts/chart/renderto-object/
734
+ * Object reference
735
+ * @sample {highstock} stock/chart/renderto-string/
736
+ * String
737
+ * @sample {highstock} stock/chart/renderto-object/
738
+ * Object reference
739
+ */
740
+ renderTo?: (string | HTMLDOMElement);
741
+ /**
742
+ * The button that appears after a selection zoom, allowing the user
743
+ * to reset zoom. This option is deprecated in favor of
744
+ * [zooming](#chart.zooming).
745
+ *
746
+ * @since 2.2
747
+ * @deprecated 10.2.1
748
+ */
749
+ resetZoomButton?: ChartResetZoomButtonOptions;
750
+ /**
751
+ * Whether to apply a drop shadow to the outer chart area. Requires
752
+ * that backgroundColor be set. The shadow can be an object
753
+ * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and
754
+ * `width`.
755
+ *
756
+ * @sample {highcharts} highcharts/chart/shadow/
757
+ * Shadow
758
+ * @sample {highstock} stock/chart/shadow/
759
+ * Shadow
760
+ * @sample {highmaps} maps/chart/border/
761
+ * Chart border and shadow
762
+ *
763
+ * @default false
764
+ */
765
+ shadow?: (boolean | Partial<ShadowOptionsObject>);
766
+ /**
767
+ * The background color of the marker square when selecting (zooming
768
+ * in on) an area of the chart.
769
+ *
770
+ * @see In styled mode, the selection marker fill is set with the
771
+ * `.highcharts-selection-marker` class.
772
+ *
773
+ * @default rgba(51,92,173,0.25)
774
+ * @since 2.1.7
775
+ */
776
+ selectionMarkerFill?: ColorType;
777
+ /**
778
+ * Whether to apply a drop shadow to the global series group. This causes
779
+ * all the series to have the same shadow. Contrary to the `series.shadow`
780
+ * option, this prevents items from casting shadows on each other, like for
781
+ * others series in a stack. The shadow can be an object configuration
782
+ * containing `color`, `offsetX`, `offsetY`, `opacity` and `width`.
783
+ *
784
+ * @sample highcharts/chart/seriesgroupshadow/
785
+ * Shadow
786
+ *
787
+ * @default false
788
+ */
789
+ seriesGroupShadow?: (boolean | Partial<ShadowOptionsObject>);
790
+ /**
791
+ * Whether to show the axes initially. This only applies to empty charts
792
+ * where series are added dynamically, as axes are automatically added
793
+ * to cartesian series.
794
+ *
795
+ * @sample {highcharts} highcharts/chart/showaxes-false/
796
+ * False by default
797
+ * @sample {highcharts} highcharts/chart/showaxes-true/
798
+ * True
799
+ *
800
+ * @since 1.2.5
801
+ * @product highcharts gantt
802
+ */
803
+ showAxes?: boolean;
804
+ /**
805
+ * The space between the bottom edge of the chart and the content (plot
806
+ * area, axis title and labels, title, subtitle or legend in top
807
+ * position).
808
+ *
809
+ * @sample {highcharts} highcharts/chart/spacingbottom/
810
+ * Spacing bottom set to 100
811
+ * @sample {highstock} stock/chart/spacingbottom/
812
+ * Spacing bottom set to 100
813
+ * @sample {highmaps} maps/chart/spacing/
814
+ * Spacing 100 all around
815
+ *
816
+ * @default 15
817
+ * @since 2.1
818
+ */
819
+ spacing?: Array<number>;
820
+ /**
821
+ * The space between the bottom edge of the chart and the content (plot
822
+ * area, axis title and labels, title, subtitle or legend in top
823
+ * position).
824
+ *
825
+ * @sample {highcharts} highcharts/chart/spacingbottom/
826
+ * Spacing bottom set to 100
827
+ * @sample {highstock} stock/chart/spacingbottom/
828
+ * Spacing bottom set to 100
829
+ * @sample {highmaps} maps/chart/spacing/
830
+ * Spacing 100 all around
831
+ *
832
+ * @default 15
833
+ * @since 2.1
834
+ */
835
+ spacingBottom?: number;
836
+ /**
837
+ * The space between the left edge of the chart and the content (plot
838
+ * area, axis title and labels, title, subtitle or legend in top
839
+ * position).
840
+ *
841
+ * @sample {highcharts} highcharts/chart/spacingleft/
842
+ * Spacing left set to 100
843
+ * @sample {highstock} stock/chart/spacingleft/
844
+ * Spacing left set to 100
845
+ * @sample {highmaps} maps/chart/spacing/
846
+ * Spacing 100 all around
847
+ *
848
+ * @default 10
849
+ * @since 2.1
850
+ */
851
+ spacingLeft?: number;
852
+ /**
853
+ * The space between the right edge of the chart and the content (plot
854
+ * area, axis title and labels, title, subtitle or legend in top
855
+ * position).
856
+ *
857
+ * @sample {highcharts} highcharts/chart/spacingright-100/
858
+ * Spacing set to 100
859
+ * @sample {highcharts} highcharts/chart/spacingright-legend/
860
+ * Legend in right position with default spacing
861
+ * @sample {highstock} stock/chart/spacingright/
862
+ * Spacing set to 100
863
+ * @sample {highmaps} maps/chart/spacing/
864
+ * Spacing 100 all around
865
+ *
866
+ * @default 10
867
+ * @since 2.1
868
+ */
869
+ spacingRight?: number;
870
+ /**
871
+ * The space between the top edge of the chart and the content (plot
872
+ * area, axis title and labels, title, subtitle or legend in top
873
+ * position).
874
+ *
875
+ * @sample {highcharts} highcharts/chart/spacingtop-100/
876
+ * A top spacing of 100
877
+ * @sample {highcharts} highcharts/chart/spacingtop-10/
878
+ * Floating chart title makes the plot area align to the default
879
+ * spacingTop of 10.
880
+ * @sample {highstock} stock/chart/spacingtop/
881
+ * A top spacing of 100
882
+ * @sample {highmaps} maps/chart/spacing/
883
+ * Spacing 100 all around
884
+ *
885
+ * @default 10
886
+ * @since 2.1
887
+ */
888
+ spacingTop?: number;
889
+ /**
890
+ * Additional CSS styles to apply inline to the container `div` and the root
891
+ * SVG.
892
+ *
893
+ * According to the CSS syntax documentation, it is recommended to quote
894
+ * font family names that contain white space, digits, or punctuation
895
+ * characters other than hyphens. In such cases, wrap the fontFamily
896
+ * name as follows: `fontFamily: '"Font name"'`.
897
+ *
898
+ * Since v11, the root font size is 1rem by default, and all child element
899
+ * are given a relative `em` font size by default. This allows implementers
900
+ * to control all the chart's font sizes by only setting the root level.
901
+ *
902
+ * @see In styled mode, general chart styles can be set with the
903
+ * `.highcharts-root` class.
904
+ * @sample {highcharts} highcharts/chart/style-serif-font/
905
+ * Using a serif type font
906
+ * @sample {highcharts} highcharts/chart/style-special-font/
907
+ * Using a font with special character in name
908
+ * @sample {highcharts} highcharts/members/relative-font-size/
909
+ * Relative font sizes
910
+ * @sample {highcharts} highcharts/css/em/
911
+ * Styled mode with relative font sizes
912
+ * @sample {highstock} stock/chart/style/
913
+ * Using a serif type font
914
+ * @sample {highmaps} maps/chart/style-serif-font/
915
+ * Using a serif type font
916
+ *
917
+ * @default {"fontFamily": "-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', sans-serif", "fontSize":"1rem"}
918
+ */
919
+ style?: CSSObject;
920
+ /**
921
+ * Whether to apply styled mode. When in styled mode, no presentational
922
+ * attributes or CSS are applied to the chart SVG. Instead, CSS rules
923
+ * are required to style the chart. The default style sheet is
924
+ * available from `https://code.highcharts.com/css/highcharts.css`.
925
+ *
926
+ * [Read more in the docs](https://www.highcharts.com/docs/chart-design-and-style/style-by-css)
927
+ * on what classes and variables are available.
928
+ *
929
+ * @sample highcharts/css/colors
930
+ * Color theming with CSS
931
+ * @sample highcharts/css/prefers-color-scheme
932
+ * Dynamic theme based on system settings
933
+ *
934
+ * @default false
935
+ * @since 7.0
936
+ */
937
+ styledMode?: boolean;
938
+ /**
939
+ * The default series type for the chart. Can be any of the chart types
940
+ * listed under [plotOptions](#plotOptions) and [series](#series) or can
941
+ * be a series provided by an additional module.
942
+ *
943
+ * In TypeScript this option has no effect in sense of typing and
944
+ * instead the `type` option must always be set in the series.
945
+ *
946
+ * @sample {highcharts} highcharts/chart/type-bar/
947
+ * Bar
948
+ * @sample {highstock} stock/chart/type/
949
+ * Areaspline
950
+ * @sample {highmaps} maps/chart/type-mapline/
951
+ * Mapline
952
+ *
953
+ * @default {highcharts} line
954
+ * @default {highstock} line
955
+ * @default {highmaps} map
956
+ * @since 2.1.0
957
+ */
958
+ type?: string;
959
+ /**
960
+ * An explicit height for the chart. If a _number_, the height is
961
+ * given in pixels. If given a _percentage string_ (for example
962
+ * `'56%'`), the height is given as the percentage of the actual chart
963
+ * width. This allows for preserving the aspect ratio across responsive
964
+ * sizes.
965
+ *
966
+ * By default (when `null`) the height is calculated from the offset
967
+ * height of the containing element, or 400 pixels if the containing
968
+ * element's height is 0.
969
+ *
970
+ * @sample {highcharts} highcharts/chart/height/
971
+ * Forced 200px height
972
+ * @sample {highstock} stock/chart/height/
973
+ * 300px height
974
+ * @sample {highmaps} maps/chart/size/
975
+ * Chart with explicit size
976
+ * @sample highcharts/chart/height-percent/
977
+ * Highcharts with percentage height
978
+ * @sample highcharts/chart/height-inherited/
979
+ * Chart with inherited height
980
+ */
981
+ width?: (null | number);
982
+ /**
983
+ * Enables zooming by a single touch, in combination with
984
+ * [chart.zoomType](#chart.zoomType). When enabled, two-finger pinch
985
+ * will still work as set up by [chart.pinchType](#chart.pinchType).
986
+ * However, `zoomBySingleTouch` will interfere with touch-dragging the
987
+ * chart to read the tooltip. And especially when vertical zooming is
988
+ * enabled, it will make it hard to scroll vertically on the page.
989
+ * @since 9.0.0
990
+ * @sample highcharts/chart/zoombysingletouch
991
+ * Zoom by single touch enabled, with buttons to toggle
992
+ * @product highcharts highstock gantt
993
+ * @deprecated
994
+ */
995
+ zoomBySingleTouch?: boolean;
996
+ /**
997
+ * Chart zooming options.
998
+ *
999
+ * @sample highcharts/plotoptions/sankey-node-color
1000
+ * Zooming in sankey series
1001
+ * @sample highcharts/series-treegraph/link-types
1002
+ * Zooming in treegraph series
1003
+ *
1004
+ * @since 10.2.1
1005
+ */
1006
+ zooming: Partial<ChartZoomingOptions>;
1007
+ /**
1008
+ * Decides in what dimensions the user can zoom by dragging the mouse.
1009
+ * Can be one of `x`, `y` or `xy`.
1010
+ *
1011
+ * @see [panKey](#chart.panKey)
1012
+ *
1013
+ * @sample {highcharts} highcharts/chart/zoomtype-none/
1014
+ * None by default
1015
+ * @sample {highcharts} highcharts/chart/zoomtype-x/
1016
+ * X
1017
+ * @sample {highcharts} highcharts/chart/zoomtype-y/
1018
+ * Y
1019
+ * @sample {highcharts} highcharts/chart/zoomtype-xy/
1020
+ * Xy
1021
+ * @sample {highcharts} highcharts/chart/zoomtype-polar/
1022
+ * Zoom on polar chart
1023
+ * @sample {highstock} stock/demo/basic-line/
1024
+ * None by default
1025
+ * @sample {highstock} stock/chart/zoomtype-x/
1026
+ * X
1027
+ * @sample {highstock} stock/chart/zoomtype-y/
1028
+ * Y
1029
+ * @sample {highstock} stock/chart/zoomtype-xy/
1030
+ * Xy
1031
+ * @sample {highstock} stock/chart/zoomtype-xy/
1032
+ * Map with selection zoom
1033
+ *
1034
+ * @validvalue ["x", "y", "xy"]
1035
+ * @deprecated
1036
+ */
1037
+ zoomType?: ('x' | 'xy' | 'y');
1038
+ }
1039
+ /**
1040
+ * Allow panning in a chart. Best used with [panKey](#chart.panKey)
1041
+ * to combine zooming and panning.
1042
+ *
1043
+ * On touch devices, when the [tooltip.followTouchMove](
1044
+ * #tooltip.followTouchMove) option is `true` (default), panning
1045
+ * requires two fingers. To allow panning with one finger, set
1046
+ * `followTouchMove` to `false`.
1047
+ *
1048
+ * @sample {highcharts} highcharts/chart/pankey/
1049
+ * Zooming and panning
1050
+ * @sample {highstock} stock/chart/panning/
1051
+ * Zooming and xy panning
1052
+ */
1053
+ export interface ChartPanningOptions {
1054
+ /**
1055
+ * Enable or disable chart panning.
1056
+ *
1057
+ * @default {highcharts} false
1058
+ * @default {highstock|highmaps} true
1059
+ */
1060
+ enabled: boolean;
1061
+ /**
1062
+ * Decides in what dimensions the user can pan the chart. Can be
1063
+ * one of `x`, `y`, or `xy`.
1064
+ *
1065
+ * During panning, all axes will behave as if
1066
+ * [`startOnTick`](#yAxis.startOnTick) and
1067
+ * [`endOnTick`](#yAxis.endOnTick) were set to `false`. After the
1068
+ * panning action is finished, the axes will adjust to their actual
1069
+ * settings.
1070
+ *
1071
+ * **Note:** For non-cartesian series, the only supported panning type
1072
+ * is `xy`, as zooming in a single direction is not applicable due to
1073
+ * the radial nature of the coordinate system.
1074
+ *
1075
+ * @sample {highcharts} highcharts/chart/panning-type
1076
+ * Zooming and xy panning
1077
+ *
1078
+ * @product highcharts highstock gantt
1079
+ */
1080
+ type: ChartPanningTypeValue;
1081
+ }
1082
+ export type ChartPanningTypeValue = ('x' | 'y' | 'xy');
1083
+ export type ChartPinchTypeValue = ('x' | 'y' | 'xy');
1084
+ export interface ChartRedrawCallbackFunction {
1085
+ (this: Chart, event: Event): void;
1086
+ }
1087
+ export interface ChartRenderCallbackFunction {
1088
+ (this: Chart, event: Event): void;
1089
+ }
1090
+ /**
1091
+ * The button that appears after a selection zoom, allowing the user
1092
+ * to reset zoom.
1093
+ */
1094
+ export interface ChartResetZoomButtonOptions {
1095
+ /**
1096
+ * The position of the button.
1097
+ *
1098
+ * Note: Adjusting position values might cause overlap with chart
1099
+ * elements. Ensure coordinates do not obstruct other components or
1100
+ * data visibility.
1101
+ *
1102
+ * @sample {highcharts} highcharts/chart/resetzoombutton-position/
1103
+ * Above the plot area
1104
+ * @sample {highstock} highcharts/chart/resetzoombutton-position/
1105
+ * Above the plot area
1106
+ * @sample {highmaps} highcharts/chart/resetzoombutton-position/
1107
+ * Above the plot area
1108
+ *
1109
+ * @since 10.2.1
1110
+ */
1111
+ position?: AlignObject;
1112
+ /**
1113
+ * What frame the button placement should be related to. Can be
1114
+ * either `plotBox` or `spacingBox`.
1115
+ *
1116
+ * @sample {highcharts} highcharts/chart/resetzoombutton-relativeto/
1117
+ * Relative to the chart
1118
+ * @sample {highstock} highcharts/chart/resetzoombutton-relativeto/
1119
+ * Relative to the chart
1120
+ *
1121
+ * @default plot
1122
+ */
1123
+ relativeTo?: ButtonRelativeToValue;
1124
+ /**
1125
+ * A collection of attributes for the button. The object takes SVG
1126
+ * attributes like `fill`, `stroke`, `stroke-width` or `r`, the
1127
+ * border radius. The theme also supports `style`, a collection of
1128
+ * CSS properties for the text. Equivalent attributes for the hover
1129
+ * state are given in `theme.states.hover`.
1130
+ *
1131
+ * @sample {highcharts} highcharts/chart/resetzoombutton-theme/
1132
+ * Theming the button
1133
+ * @sample {highstock} highcharts/chart/resetzoombutton-theme/
1134
+ * Theming the button
1135
+ *
1136
+ * @since 10.2.1
1137
+ */
1138
+ theme?: SVGAttributes;
1139
+ }
1140
+ export interface ChartSelectionAxisContextObject {
1141
+ axis: Axis;
1142
+ max: number;
1143
+ min: number;
1144
+ }
1145
+ export interface ChartSelectionCallbackFunction {
1146
+ (this: Chart, event: ChartSelectionContextObject): (boolean | undefined);
1147
+ }
1148
+ export interface ChartSelectionContextObject {
1149
+ xAxis: Array<ChartSelectionAxisContextObject>;
1150
+ yAxis: Array<ChartSelectionAxisContextObject>;
1151
+ }
1152
+ /**
1153
+ * Chart zooming options.
1154
+ * @since 10.2.1
1155
+ *
1156
+ * @sample highcharts/plotoptions/sankey-node-color
1157
+ * Zooming in sankey series
1158
+ * @sample highcharts/series-treegraph/link-types
1159
+ * Zooming in treegraph series
1160
+ */
1161
+ export interface ChartZoomingOptions {
1162
+ /**
1163
+ * Set a key to hold when dragging to zoom the chart. This is useful to
1164
+ * avoid zooming while moving points. Should be set different than
1165
+ * [chart.panKey](#chart.panKey).
1166
+ *
1167
+ * **Note:** If both zooming and panning are enabled without keys, zooming
1168
+ * will take precedence by default. To prioritize panning, either set
1169
+ * zooming key or [chart.panKey](#chart.panKey).
1170
+ *
1171
+ * @default {highcharts} undefined
1172
+ * @validvalue ["alt", "ctrl", "meta", "shift"]
1173
+ * @requires modules/draggable-points
1174
+ */
1175
+ key?: string;
1176
+ /**
1177
+ * Equivalent to [type](#chart.zooming.type), but for multitouch
1178
+ * gestures only. By default, the `pinchType` is the same as the
1179
+ * `type` setting. However, pinching can be enabled separately in
1180
+ * some cases, for example in stock charts where a mouse drag pans the
1181
+ * chart, while pinching is enabled. When [tooltip.followTouchMove](
1182
+ * #tooltip.followTouchMove) is true, pinchType only applies to
1183
+ * two-finger touches.
1184
+ *
1185
+ * @default {highcharts} undefined
1186
+ * @default {highstock} x
1187
+ * @product highcharts highstock gantt
1188
+ * @validvalue ["x", "y", "xy"]
1189
+ */
1190
+ pinchType?: string;
1191
+ /**
1192
+ * The button that appears after a selection zoom, allowing the user
1193
+ * to reset zoom.
1194
+ */
1195
+ resetButton?: ChartResetZoomButtonOptions;
1196
+ /**
1197
+ * Enables zooming by a single touch, in combination with
1198
+ * [chart.zooming.type](#chart.zooming.type). When enabled, two-finger
1199
+ * pinch will still work as set up by [chart.zooming.pinchType]
1200
+ * (#chart.zooming.pinchType). However, `singleTouch` will interfere
1201
+ * with touch-dragging the chart to read the tooltip. And especially
1202
+ * when vertical zooming is enabled, it will make it hard to scroll
1203
+ * vertically on the page.
1204
+ *
1205
+ * @sample highcharts/chart/zoombysingletouch
1206
+ * Zoom by single touch enabled, with buttons to toggle
1207
+ *
1208
+ * @product highcharts highstock gantt
1209
+ */
1210
+ singleTouch: boolean;
1211
+ /**
1212
+ * Decides in what dimensions the user can zoom by dragging the mouse.
1213
+ * Can be one of `x`, `y` or `xy`.
1214
+ *
1215
+ * **Note:** For non-cartesian series, the only supported zooming type
1216
+ * is `xy`, as zooming in a single direction is not applicable due to
1217
+ * the radial nature of the coordinate system.
1218
+ *
1219
+ * @default {highcharts} undefined
1220
+ * @product highcharts highstock gantt
1221
+ */
1222
+ type?: ChartZoomingTypeValue;
1223
+ }
1224
+ export type ChartZoomingTypeValue = ('x' | 'xy' | 'y');
1225
+ export default ChartOptions;