@highcharts/grid-pro 2.0.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 (442) hide show
  1. package/README.md +35 -0
  2. package/css/grid-pro.css +1756 -0
  3. package/es-modules/Accessibility/A11yI18n.d.ts +95 -0
  4. package/es-modules/Accessibility/A11yI18n.js +290 -0
  5. package/es-modules/Accessibility/Accessibility.d.ts +116 -0
  6. package/es-modules/Accessibility/Accessibility.js +402 -0
  7. package/es-modules/Accessibility/AccessibilityComponent.d.ts +97 -0
  8. package/es-modules/Accessibility/AccessibilityComponent.js +147 -0
  9. package/es-modules/Accessibility/Components/AnnotationsA11y.d.ts +43 -0
  10. package/es-modules/Accessibility/Components/AnnotationsA11y.js +160 -0
  11. package/es-modules/Accessibility/Components/ContainerComponent.d.ts +48 -0
  12. package/es-modules/Accessibility/Components/ContainerComponent.js +142 -0
  13. package/es-modules/Accessibility/Components/InfoRegionsComponent.d.ts +144 -0
  14. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +555 -0
  15. package/es-modules/Accessibility/Components/LegendComponent.d.ts +124 -0
  16. package/es-modules/Accessibility/Components/LegendComponent.js +474 -0
  17. package/es-modules/Accessibility/Components/MenuComponent.d.ts +93 -0
  18. package/es-modules/Accessibility/Components/MenuComponent.js +430 -0
  19. package/es-modules/Accessibility/Components/NavigatorComponent.d.ts +57 -0
  20. package/es-modules/Accessibility/Components/NavigatorComponent.js +235 -0
  21. package/es-modules/Accessibility/Components/RangeSelectorComponent.d.ts +126 -0
  22. package/es-modules/Accessibility/Components/RangeSelectorComponent.js +473 -0
  23. package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.d.ts +18 -0
  24. package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +234 -0
  25. package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.d.ts +87 -0
  26. package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +309 -0
  27. package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.d.ts +53 -0
  28. package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +130 -0
  29. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.d.ts +28 -0
  30. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +415 -0
  31. package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.d.ts +114 -0
  32. package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +721 -0
  33. package/es-modules/Accessibility/Components/ZoomComponent.d.ts +96 -0
  34. package/es-modules/Accessibility/Components/ZoomComponent.js +314 -0
  35. package/es-modules/Accessibility/FocusBorder.d.ts +40 -0
  36. package/es-modules/Accessibility/FocusBorder.js +301 -0
  37. package/es-modules/Accessibility/HighContrastMode.d.ts +35 -0
  38. package/es-modules/Accessibility/HighContrastMode.js +100 -0
  39. package/es-modules/Accessibility/HighContrastTheme.d.ts +11 -0
  40. package/es-modules/Accessibility/HighContrastTheme.js +212 -0
  41. package/es-modules/Accessibility/KeyboardNavigation.d.ts +133 -0
  42. package/es-modules/Accessibility/KeyboardNavigation.js +450 -0
  43. package/es-modules/Accessibility/KeyboardNavigationHandler.d.ts +48 -0
  44. package/es-modules/Accessibility/KeyboardNavigationHandler.js +126 -0
  45. package/es-modules/Accessibility/Options/A11yDefaults.d.ts +68 -0
  46. package/es-modules/Accessibility/Options/A11yDefaults.js +971 -0
  47. package/es-modules/Accessibility/Options/DeprecatedOptions.d.ts +22 -0
  48. package/es-modules/Accessibility/Options/DeprecatedOptions.js +265 -0
  49. package/es-modules/Accessibility/Options/LangDefaults.d.ts +4 -0
  50. package/es-modules/Accessibility/Options/LangDefaults.js +440 -0
  51. package/es-modules/Accessibility/ProxyElement.d.ts +78 -0
  52. package/es-modules/Accessibility/ProxyElement.js +223 -0
  53. package/es-modules/Accessibility/ProxyProvider.d.ts +90 -0
  54. package/es-modules/Accessibility/ProxyProvider.js +315 -0
  55. package/es-modules/Accessibility/Utils/Announcer.d.ts +26 -0
  56. package/es-modules/Accessibility/Utils/Announcer.js +90 -0
  57. package/es-modules/Accessibility/Utils/ChartUtilities.d.ts +90 -0
  58. package/es-modules/Accessibility/Utils/ChartUtilities.js +298 -0
  59. package/es-modules/Accessibility/Utils/DOMElementProvider.d.ts +20 -0
  60. package/es-modules/Accessibility/Utils/DOMElementProvider.js +69 -0
  61. package/es-modules/Accessibility/Utils/EventProvider.d.ts +26 -0
  62. package/es-modules/Accessibility/Utils/EventProvider.js +65 -0
  63. package/es-modules/Accessibility/Utils/HTMLUtilities.d.ts +108 -0
  64. package/es-modules/Accessibility/Utils/HTMLUtilities.js +319 -0
  65. package/es-modules/Core/Animation/AnimationUtilities.d.ts +107 -0
  66. package/es-modules/Core/Animation/AnimationUtilities.js +200 -0
  67. package/es-modules/Core/Animation/Fx.d.ts +130 -0
  68. package/es-modules/Core/Animation/Fx.js +388 -0
  69. package/es-modules/Core/Chart/Chart.d.ts +1009 -0
  70. package/es-modules/Core/Chart/Chart.js +3008 -0
  71. package/es-modules/Core/Chart/Chart3D.d.ts +276 -0
  72. package/es-modules/Core/Chart/Chart3D.js +1686 -0
  73. package/es-modules/Core/Chart/ChartDefaults.d.ts +8 -0
  74. package/es-modules/Core/Chart/ChartDefaults.js +1304 -0
  75. package/es-modules/Core/Chart/ChartNavigationComposition.d.ts +55 -0
  76. package/es-modules/Core/Chart/ChartNavigationComposition.js +90 -0
  77. package/es-modules/Core/Chart/GanttChart.d.ts +74 -0
  78. package/es-modules/Core/Chart/GanttChart.js +189 -0
  79. package/es-modules/Core/Chart/MapChart.d.ts +132 -0
  80. package/es-modules/Core/Chart/MapChart.js +232 -0
  81. package/es-modules/Core/Chart/StockChart.d.ts +117 -0
  82. package/es-modules/Core/Chart/StockChart.js +641 -0
  83. package/es-modules/Core/Color/Color.d.ts +112 -0
  84. package/es-modules/Core/Color/Color.js +418 -0
  85. package/es-modules/Core/Color/Palettes.d.ts +84 -0
  86. package/es-modules/Core/Color/Palettes.js +23 -0
  87. package/es-modules/Core/Defaults.d.ts +42 -0
  88. package/es-modules/Core/Defaults.js +2977 -0
  89. package/es-modules/Core/Foundation.d.ts +19 -0
  90. package/es-modules/Core/Foundation.js +63 -0
  91. package/es-modules/Core/Geometry/CircleUtilities.d.ts +189 -0
  92. package/es-modules/Core/Geometry/CircleUtilities.js +388 -0
  93. package/es-modules/Core/Geometry/GeometryUtilities.d.ts +48 -0
  94. package/es-modules/Core/Geometry/GeometryUtilities.js +105 -0
  95. package/es-modules/Core/Geometry/PolygonClip.d.ts +19 -0
  96. package/es-modules/Core/Geometry/PolygonClip.js +96 -0
  97. package/es-modules/Core/Globals.d.ts +110 -0
  98. package/es-modules/Core/Globals.js +127 -0
  99. package/es-modules/Core/HttpUtilities.d.ts +61 -0
  100. package/es-modules/Core/HttpUtilities.js +214 -0
  101. package/es-modules/Core/MSPointer.d.ts +74 -0
  102. package/es-modules/Core/MSPointer.js +218 -0
  103. package/es-modules/Core/Math3D.d.ts +117 -0
  104. package/es-modules/Core/Math3D.js +250 -0
  105. package/es-modules/Core/Pointer.d.ts +590 -0
  106. package/es-modules/Core/Pointer.js +1631 -0
  107. package/es-modules/Core/Renderer/HTML/AST.d.ts +163 -0
  108. package/es-modules/Core/Renderer/HTML/AST.js +562 -0
  109. package/es-modules/Core/Renderer/HTML/HTMLElement.d.ts +76 -0
  110. package/es-modules/Core/Renderer/HTML/HTMLElement.js +471 -0
  111. package/es-modules/Core/Renderer/RendererRegistry.d.ts +29 -0
  112. package/es-modules/Core/Renderer/RendererRegistry.js +76 -0
  113. package/es-modules/Core/Renderer/RendererUtilities.d.ts +26 -0
  114. package/es-modules/Core/Renderer/RendererUtilities.js +172 -0
  115. package/es-modules/Core/Responsive.d.ts +55 -0
  116. package/es-modules/Core/Responsive.js +260 -0
  117. package/es-modules/Core/Templating.d.ts +125 -0
  118. package/es-modules/Core/Templating.js +428 -0
  119. package/es-modules/Core/Time.d.ts +69 -0
  120. package/es-modules/Core/Time.js +172 -0
  121. package/es-modules/Core/Tooltip.d.ts +297 -0
  122. package/es-modules/Core/Tooltip.js +1377 -0
  123. package/es-modules/Core/Utilities.d.ts +770 -0
  124. package/es-modules/Core/Utilities.js +1989 -0
  125. package/es-modules/Data/ColumnUtils.d.ts +87 -0
  126. package/es-modules/Data/ColumnUtils.js +140 -0
  127. package/es-modules/Data/Connectors/CSVConnector.d.ts +63 -0
  128. package/es-modules/Data/Connectors/CSVConnector.js +149 -0
  129. package/es-modules/Data/Connectors/CSVConnectorOptions.d.ts +149 -0
  130. package/es-modules/Data/Connectors/DataConnector.d.ts +204 -0
  131. package/es-modules/Data/Connectors/DataConnector.js +345 -0
  132. package/es-modules/Data/Connectors/DataConnectorOptions.d.ts +87 -0
  133. package/es-modules/Data/Connectors/DataConnectorType.d.ts +45 -0
  134. package/es-modules/Data/Connectors/GoogleSheetsConnector.d.ts +65 -0
  135. package/es-modules/Data/Connectors/GoogleSheetsConnector.js +226 -0
  136. package/es-modules/Data/Connectors/GoogleSheetsConnectorOptions.d.ts +167 -0
  137. package/es-modules/Data/Connectors/HTMLTableConnector.d.ts +77 -0
  138. package/es-modules/Data/Connectors/HTMLTableConnector.js +119 -0
  139. package/es-modules/Data/Connectors/HTMLTableConnectorOptions.d.ts +49 -0
  140. package/es-modules/Data/Connectors/JSONConnector.d.ts +64 -0
  141. package/es-modules/Data/Connectors/JSONConnector.js +156 -0
  142. package/es-modules/Data/Connectors/JSONConnectorOptions.d.ts +185 -0
  143. package/es-modules/Data/Converters/CSVConverter.d.ts +64 -0
  144. package/es-modules/Data/Converters/CSVConverter.js +374 -0
  145. package/es-modules/Data/Converters/CSVConverterOptions.d.ts +53 -0
  146. package/es-modules/Data/Converters/DataConverter.d.ts +168 -0
  147. package/es-modules/Data/Converters/DataConverter.js +387 -0
  148. package/es-modules/Data/Converters/DataConverterType.d.ts +40 -0
  149. package/es-modules/Data/Converters/DataConverterUtils.d.ts +82 -0
  150. package/es-modules/Data/Converters/DataConverterUtils.js +216 -0
  151. package/es-modules/Data/Converters/GoogleSheetsConverter.d.ts +46 -0
  152. package/es-modules/Data/Converters/GoogleSheetsConverter.js +135 -0
  153. package/es-modules/Data/Converters/GoogleSheetsConverterOptions.d.ts +52 -0
  154. package/es-modules/Data/Converters/HTMLTableConverter.d.ts +72 -0
  155. package/es-modules/Data/Converters/HTMLTableConverter.js +362 -0
  156. package/es-modules/Data/Converters/HTMLTableConverterOptions.d.ts +51 -0
  157. package/es-modules/Data/Converters/JSONConverter.d.ts +99 -0
  158. package/es-modules/Data/Converters/JSONConverter.js +239 -0
  159. package/es-modules/Data/Converters/JSONConverterOptions.d.ts +52 -0
  160. package/es-modules/Data/DataCursor.d.ts +176 -0
  161. package/es-modules/Data/DataCursor.js +379 -0
  162. package/es-modules/Data/DataEvent.d.ts +81 -0
  163. package/es-modules/Data/DataEvent.js +14 -0
  164. package/es-modules/Data/DataPool.d.ts +130 -0
  165. package/es-modules/Data/DataPool.js +257 -0
  166. package/es-modules/Data/DataPoolOptions.d.ts +66 -0
  167. package/es-modules/Data/DataTable.d.ts +563 -0
  168. package/es-modules/Data/DataTable.js +930 -0
  169. package/es-modules/Data/DataTableCore.d.ts +165 -0
  170. package/es-modules/Data/DataTableCore.js +316 -0
  171. package/es-modules/Data/DataTableOptions.d.ts +25 -0
  172. package/es-modules/Data/DataTableOptions.js +15 -0
  173. package/es-modules/Data/Formula/Formula.d.ts +21 -0
  174. package/es-modules/Data/Formula/Formula.js +54 -0
  175. package/es-modules/Data/Formula/FormulaParser.d.ts +31 -0
  176. package/es-modules/Data/Formula/FormulaParser.js +488 -0
  177. package/es-modules/Data/Formula/FormulaProcessor.d.ts +155 -0
  178. package/es-modules/Data/Formula/FormulaProcessor.js +529 -0
  179. package/es-modules/Data/Formula/FormulaTypes.d.ts +138 -0
  180. package/es-modules/Data/Formula/FormulaTypes.js +135 -0
  181. package/es-modules/Data/Formula/Functions/ABS.d.ts +19 -0
  182. package/es-modules/Data/Formula/Functions/ABS.js +67 -0
  183. package/es-modules/Data/Formula/Functions/AND.d.ts +20 -0
  184. package/es-modules/Data/Formula/Functions/AND.js +59 -0
  185. package/es-modules/Data/Formula/Functions/AVERAGE.d.ts +20 -0
  186. package/es-modules/Data/Formula/Functions/AVERAGE.js +74 -0
  187. package/es-modules/Data/Formula/Functions/AVERAGEA.d.ts +20 -0
  188. package/es-modules/Data/Formula/Functions/AVERAGEA.js +90 -0
  189. package/es-modules/Data/Formula/Functions/COUNT.d.ts +20 -0
  190. package/es-modules/Data/Formula/Functions/COUNT.js +65 -0
  191. package/es-modules/Data/Formula/Functions/COUNTA.d.ts +20 -0
  192. package/es-modules/Data/Formula/Functions/COUNTA.js +71 -0
  193. package/es-modules/Data/Formula/Functions/IF.d.ts +21 -0
  194. package/es-modules/Data/Formula/Functions/IF.js +54 -0
  195. package/es-modules/Data/Formula/Functions/ISNA.d.ts +20 -0
  196. package/es-modules/Data/Formula/Functions/ISNA.js +52 -0
  197. package/es-modules/Data/Formula/Functions/MAX.d.ts +20 -0
  198. package/es-modules/Data/Formula/Functions/MAX.js +69 -0
  199. package/es-modules/Data/Formula/Functions/MEDIAN.d.ts +20 -0
  200. package/es-modules/Data/Formula/Functions/MEDIAN.js +78 -0
  201. package/es-modules/Data/Formula/Functions/MIN.d.ts +20 -0
  202. package/es-modules/Data/Formula/Functions/MIN.js +69 -0
  203. package/es-modules/Data/Formula/Functions/MOD.d.ts +20 -0
  204. package/es-modules/Data/Formula/Functions/MOD.js +63 -0
  205. package/es-modules/Data/Formula/Functions/MODE.d.ts +41 -0
  206. package/es-modules/Data/Formula/Functions/MODE.js +149 -0
  207. package/es-modules/Data/Formula/Functions/NOT.d.ts +20 -0
  208. package/es-modules/Data/Formula/Functions/NOT.js +60 -0
  209. package/es-modules/Data/Formula/Functions/OR.d.ts +20 -0
  210. package/es-modules/Data/Formula/Functions/OR.js +62 -0
  211. package/es-modules/Data/Formula/Functions/PRODUCT.d.ts +20 -0
  212. package/es-modules/Data/Formula/Functions/PRODUCT.js +68 -0
  213. package/es-modules/Data/Formula/Functions/SUM.d.ts +20 -0
  214. package/es-modules/Data/Formula/Functions/SUM.js +65 -0
  215. package/es-modules/Data/Formula/Functions/XOR.d.ts +20 -0
  216. package/es-modules/Data/Formula/Functions/XOR.js +81 -0
  217. package/es-modules/Data/Modifiers/ChainModifier.d.ts +128 -0
  218. package/es-modules/Data/Modifiers/ChainModifier.js +231 -0
  219. package/es-modules/Data/Modifiers/ChainModifierOptions.d.ts +20 -0
  220. package/es-modules/Data/Modifiers/ChainModifierOptions.js +14 -0
  221. package/es-modules/Data/Modifiers/DataModifier.d.ts +117 -0
  222. package/es-modules/Data/Modifiers/DataModifier.js +202 -0
  223. package/es-modules/Data/Modifiers/DataModifierEvent.d.ts +28 -0
  224. package/es-modules/Data/Modifiers/DataModifierEvent.js +15 -0
  225. package/es-modules/Data/Modifiers/DataModifierOptions.d.ts +11 -0
  226. package/es-modules/Data/Modifiers/DataModifierOptions.js +15 -0
  227. package/es-modules/Data/Modifiers/DataModifierType.d.ts +44 -0
  228. package/es-modules/Data/Modifiers/FilterModifier.d.ts +53 -0
  229. package/es-modules/Data/Modifiers/FilterModifier.js +172 -0
  230. package/es-modules/Data/Modifiers/FilterModifierOptions.d.ts +110 -0
  231. package/es-modules/Data/Modifiers/FilterModifierOptions.js +14 -0
  232. package/es-modules/Data/Modifiers/InvertModifier.d.ts +48 -0
  233. package/es-modules/Data/Modifiers/InvertModifier.js +116 -0
  234. package/es-modules/Data/Modifiers/InvertModifierOptions.d.ts +11 -0
  235. package/es-modules/Data/Modifiers/InvertModifierOptions.js +15 -0
  236. package/es-modules/Data/Modifiers/MathModifier.d.ts +68 -0
  237. package/es-modules/Data/Modifiers/MathModifier.js +165 -0
  238. package/es-modules/Data/Modifiers/MathModifierOptions.d.ts +50 -0
  239. package/es-modules/Data/Modifiers/MathModifierOptions.js +14 -0
  240. package/es-modules/Data/Modifiers/RangeModifier.d.ts +46 -0
  241. package/es-modules/Data/Modifiers/RangeModifier.js +96 -0
  242. package/es-modules/Data/Modifiers/RangeModifierOptions.d.ts +22 -0
  243. package/es-modules/Data/Modifiers/RangeModifierOptions.js +15 -0
  244. package/es-modules/Data/Modifiers/SortModifier.d.ts +54 -0
  245. package/es-modules/Data/Modifiers/SortModifier.js +144 -0
  246. package/es-modules/Data/Modifiers/SortModifierOptions.d.ts +44 -0
  247. package/es-modules/Data/Modifiers/SortModifierOptions.js +14 -0
  248. package/es-modules/Grid/Core/Accessibility/A11yOptions.d.ts +148 -0
  249. package/es-modules/Grid/Core/Accessibility/A11yOptions.js +17 -0
  250. package/es-modules/Grid/Core/Accessibility/Accessibility.d.ts +115 -0
  251. package/es-modules/Grid/Core/Accessibility/Accessibility.js +231 -0
  252. package/es-modules/Grid/Core/Credits.d.ts +57 -0
  253. package/es-modules/Grid/Core/Credits.js +125 -0
  254. package/es-modules/Grid/Core/Defaults.d.ts +20 -0
  255. package/es-modules/Grid/Core/Defaults.js +148 -0
  256. package/es-modules/Grid/Core/Globals.d.ts +103 -0
  257. package/es-modules/Grid/Core/Globals.js +134 -0
  258. package/es-modules/Grid/Core/Grid.d.ts +295 -0
  259. package/es-modules/Grid/Core/Grid.js +730 -0
  260. package/es-modules/Grid/Core/GridUtils.d.ts +110 -0
  261. package/es-modules/Grid/Core/GridUtils.js +191 -0
  262. package/es-modules/Grid/Core/Options.d.ts +599 -0
  263. package/es-modules/Grid/Core/Options.js +16 -0
  264. package/es-modules/Grid/Core/Pagination/Icons.d.ts +7 -0
  265. package/es-modules/Grid/Core/Pagination/Icons.js +7 -0
  266. package/es-modules/Grid/Core/Pagination/Pagination.d.ts +278 -0
  267. package/es-modules/Grid/Core/Pagination/Pagination.js +842 -0
  268. package/es-modules/Grid/Core/Pagination/PaginationOptions.d.ts +228 -0
  269. package/es-modules/Grid/Core/Querying/FilteringController.d.ts +66 -0
  270. package/es-modules/Grid/Core/Querying/FilteringController.js +256 -0
  271. package/es-modules/Grid/Core/Querying/PaginationController.d.ts +50 -0
  272. package/es-modules/Grid/Core/Querying/PaginationController.js +101 -0
  273. package/es-modules/Grid/Core/Querying/QueryingController.d.ts +58 -0
  274. package/es-modules/Grid/Core/Querying/QueryingController.js +127 -0
  275. package/es-modules/Grid/Core/Querying/SortingController.d.ts +67 -0
  276. package/es-modules/Grid/Core/Querying/SortingController.js +136 -0
  277. package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/ColumnFiltering.d.ts +114 -0
  278. package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/ColumnFiltering.js +351 -0
  279. package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterCell.d.ts +14 -0
  280. package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterCell.js +86 -0
  281. package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterRow.d.ts +19 -0
  282. package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterRow.js +80 -0
  283. package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilteringTypes.d.ts +52 -0
  284. package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilteringTypes.js +81 -0
  285. package/es-modules/Grid/Core/Table/Actions/ColumnSorting.d.ts +56 -0
  286. package/es-modules/Grid/Core/Table/Actions/ColumnSorting.js +170 -0
  287. package/es-modules/Grid/Core/Table/Actions/ColumnsResizer.d.ts +55 -0
  288. package/es-modules/Grid/Core/Table/Actions/ColumnsResizer.js +182 -0
  289. package/es-modules/Grid/Core/Table/Actions/RowsVirtualizer.d.ts +87 -0
  290. package/es-modules/Grid/Core/Table/Actions/RowsVirtualizer.js +346 -0
  291. package/es-modules/Grid/Core/Table/Body/TableCell.d.ts +88 -0
  292. package/es-modules/Grid/Core/Table/Body/TableCell.js +231 -0
  293. package/es-modules/Grid/Core/Table/Body/TableRow.d.ts +79 -0
  294. package/es-modules/Grid/Core/Table/Body/TableRow.js +177 -0
  295. package/es-modules/Grid/Core/Table/Cell.d.ts +92 -0
  296. package/es-modules/Grid/Core/Table/Cell.js +223 -0
  297. package/es-modules/Grid/Core/Table/CellContent/CellContent.d.ts +30 -0
  298. package/es-modules/Grid/Core/Table/CellContent/CellContent.js +40 -0
  299. package/es-modules/Grid/Core/Table/CellContent/TextContent.d.ts +19 -0
  300. package/es-modules/Grid/Core/Table/CellContent/TextContent.js +98 -0
  301. package/es-modules/Grid/Core/Table/Column.d.ts +136 -0
  302. package/es-modules/Grid/Core/Table/Column.js +230 -0
  303. package/es-modules/Grid/Core/Table/ColumnResizing/AdjacentResizingMode.d.ts +7 -0
  304. package/es-modules/Grid/Core/Table/ColumnResizing/AdjacentResizingMode.js +62 -0
  305. package/es-modules/Grid/Core/Table/ColumnResizing/ColumnResizing.d.ts +32 -0
  306. package/es-modules/Grid/Core/Table/ColumnResizing/ColumnResizing.js +68 -0
  307. package/es-modules/Grid/Core/Table/ColumnResizing/DistributedResizingMode.d.ts +7 -0
  308. package/es-modules/Grid/Core/Table/ColumnResizing/DistributedResizingMode.js +53 -0
  309. package/es-modules/Grid/Core/Table/ColumnResizing/IndependentResizingMode.d.ts +7 -0
  310. package/es-modules/Grid/Core/Table/ColumnResizing/IndependentResizingMode.js +63 -0
  311. package/es-modules/Grid/Core/Table/ColumnResizing/ResizingMode.d.ts +92 -0
  312. package/es-modules/Grid/Core/Table/ColumnResizing/ResizingMode.js +194 -0
  313. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ColumnToolbar.d.ts +68 -0
  314. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ColumnToolbar.js +187 -0
  315. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/FilterPopup.d.ts +29 -0
  316. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/FilterPopup.js +77 -0
  317. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/FilterMenuButton.d.ts +13 -0
  318. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/FilterMenuButton.js +79 -0
  319. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/SortMenuButton.d.ts +12 -0
  320. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/SortMenuButton.js +71 -0
  321. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuPopup.d.ts +12 -0
  322. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuPopup.js +66 -0
  323. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/StateHelpers.d.ts +25 -0
  324. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/StateHelpers.js +65 -0
  325. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/FilterToolbarButton.d.ts +12 -0
  326. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/FilterToolbarButton.js +81 -0
  327. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/MenuToolbarButton.d.ts +12 -0
  328. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/MenuToolbarButton.js +80 -0
  329. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/SortToolbarButton.d.ts +11 -0
  330. package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/SortToolbarButton.js +81 -0
  331. package/es-modules/Grid/Core/Table/Header/HeaderCell.d.ts +70 -0
  332. package/es-modules/Grid/Core/Table/Header/HeaderCell.js +225 -0
  333. package/es-modules/Grid/Core/Table/Header/HeaderRow.d.ts +53 -0
  334. package/es-modules/Grid/Core/Table/Header/HeaderRow.js +182 -0
  335. package/es-modules/Grid/Core/Table/Header/TableHeader.d.ts +65 -0
  336. package/es-modules/Grid/Core/Table/Header/TableHeader.js +159 -0
  337. package/es-modules/Grid/Core/Table/Row.d.ts +76 -0
  338. package/es-modules/Grid/Core/Table/Row.js +131 -0
  339. package/es-modules/Grid/Core/Table/Table.d.ts +181 -0
  340. package/es-modules/Grid/Core/Table/Table.js +399 -0
  341. package/es-modules/Grid/Core/UI/Button.d.ts +31 -0
  342. package/es-modules/Grid/Core/UI/Button.js +16 -0
  343. package/es-modules/Grid/Core/UI/ContextMenu.d.ts +38 -0
  344. package/es-modules/Grid/Core/UI/ContextMenu.js +132 -0
  345. package/es-modules/Grid/Core/UI/ContextMenuButton.d.ts +126 -0
  346. package/es-modules/Grid/Core/UI/ContextMenuButton.js +183 -0
  347. package/es-modules/Grid/Core/UI/Popup.d.ts +149 -0
  348. package/es-modules/Grid/Core/UI/Popup.js +271 -0
  349. package/es-modules/Grid/Core/UI/SvgIcons.d.ts +53 -0
  350. package/es-modules/Grid/Core/UI/SvgIcons.js +158 -0
  351. package/es-modules/Grid/Core/UI/Toolbar.d.ts +16 -0
  352. package/es-modules/Grid/Core/UI/Toolbar.js +16 -0
  353. package/es-modules/Grid/Core/UI/ToolbarButton.d.ts +135 -0
  354. package/es-modules/Grid/Core/UI/ToolbarButton.js +191 -0
  355. package/es-modules/Grid/Pro/CellEditing/CellEditMode.d.ts +112 -0
  356. package/es-modules/Grid/Pro/CellEditing/CellEditing.d.ts +80 -0
  357. package/es-modules/Grid/Pro/CellEditing/CellEditing.js +211 -0
  358. package/es-modules/Grid/Pro/CellEditing/CellEditingComposition.d.ts +123 -0
  359. package/es-modules/Grid/Pro/CellEditing/CellEditingComposition.js +198 -0
  360. package/es-modules/Grid/Pro/CellRendering/CellContentPro.d.ts +23 -0
  361. package/es-modules/Grid/Pro/CellRendering/CellContentPro.js +45 -0
  362. package/es-modules/Grid/Pro/CellRendering/CellRenderer.d.ts +50 -0
  363. package/es-modules/Grid/Pro/CellRendering/CellRenderer.js +41 -0
  364. package/es-modules/Grid/Pro/CellRendering/CellRendererRegistry.d.ts +18 -0
  365. package/es-modules/Grid/Pro/CellRendering/CellRendererRegistry.js +58 -0
  366. package/es-modules/Grid/Pro/CellRendering/CellRendererType.d.ts +48 -0
  367. package/es-modules/Grid/Pro/CellRendering/CellRenderersComposition.d.ts +18 -0
  368. package/es-modules/Grid/Pro/CellRendering/CellRenderersComposition.js +79 -0
  369. package/es-modules/Grid/Pro/CellRendering/ContentTypes/CheckboxContent.d.ts +30 -0
  370. package/es-modules/Grid/Pro/CellRendering/ContentTypes/CheckboxContent.js +122 -0
  371. package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateInputContent.d.ts +12 -0
  372. package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateInputContent.js +39 -0
  373. package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateInputContentBase.d.ts +66 -0
  374. package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateInputContentBase.js +145 -0
  375. package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateTimeInputContent.d.ts +12 -0
  376. package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateTimeInputContent.js +38 -0
  377. package/es-modules/Grid/Pro/CellRendering/ContentTypes/NumberInputContent.d.ts +58 -0
  378. package/es-modules/Grid/Pro/CellRendering/ContentTypes/NumberInputContent.js +158 -0
  379. package/es-modules/Grid/Pro/CellRendering/ContentTypes/SelectContent.d.ts +58 -0
  380. package/es-modules/Grid/Pro/CellRendering/ContentTypes/SelectContent.js +173 -0
  381. package/es-modules/Grid/Pro/CellRendering/ContentTypes/SparklineContent.d.ts +28 -0
  382. package/es-modules/Grid/Pro/CellRendering/ContentTypes/SparklineContent.js +157 -0
  383. package/es-modules/Grid/Pro/CellRendering/ContentTypes/TextInputContent.d.ts +58 -0
  384. package/es-modules/Grid/Pro/CellRendering/ContentTypes/TextInputContent.js +168 -0
  385. package/es-modules/Grid/Pro/CellRendering/ContentTypes/TimeInputContent.d.ts +13 -0
  386. package/es-modules/Grid/Pro/CellRendering/ContentTypes/TimeInputContent.js +41 -0
  387. package/es-modules/Grid/Pro/CellRendering/Renderers/CheckboxRenderer.d.ts +50 -0
  388. package/es-modules/Grid/Pro/CellRendering/Renderers/CheckboxRenderer.js +65 -0
  389. package/es-modules/Grid/Pro/CellRendering/Renderers/DateInputRenderer.d.ts +37 -0
  390. package/es-modules/Grid/Pro/CellRendering/Renderers/DateInputRenderer.js +65 -0
  391. package/es-modules/Grid/Pro/CellRendering/Renderers/DateInputRendererBase.d.ts +26 -0
  392. package/es-modules/Grid/Pro/CellRendering/Renderers/DateInputRendererBase.js +16 -0
  393. package/es-modules/Grid/Pro/CellRendering/Renderers/DateTimeInputRenderer.d.ts +37 -0
  394. package/es-modules/Grid/Pro/CellRendering/Renderers/DateTimeInputRenderer.js +64 -0
  395. package/es-modules/Grid/Pro/CellRendering/Renderers/NumberInputRenderer.d.ts +52 -0
  396. package/es-modules/Grid/Pro/CellRendering/Renderers/NumberInputRenderer.js +64 -0
  397. package/es-modules/Grid/Pro/CellRendering/Renderers/SelectRenderer.d.ts +74 -0
  398. package/es-modules/Grid/Pro/CellRendering/Renderers/SelectRenderer.js +66 -0
  399. package/es-modules/Grid/Pro/CellRendering/Renderers/SparklineRenderer.d.ts +45 -0
  400. package/es-modules/Grid/Pro/CellRendering/Renderers/SparklineRenderer.js +89 -0
  401. package/es-modules/Grid/Pro/CellRendering/Renderers/TextInputRenderer.d.ts +54 -0
  402. package/es-modules/Grid/Pro/CellRendering/Renderers/TextInputRenderer.js +65 -0
  403. package/es-modules/Grid/Pro/CellRendering/Renderers/TextRenderer.d.ts +43 -0
  404. package/es-modules/Grid/Pro/CellRendering/Renderers/TextRenderer.js +74 -0
  405. package/es-modules/Grid/Pro/CellRendering/Renderers/TimeInputRenderer.d.ts +37 -0
  406. package/es-modules/Grid/Pro/CellRendering/Renderers/TimeInputRenderer.js +64 -0
  407. package/es-modules/Grid/Pro/ColumnTypes/ColumnDataType.d.ts +29 -0
  408. package/es-modules/Grid/Pro/ColumnTypes/Validator.d.ts +118 -0
  409. package/es-modules/Grid/Pro/ColumnTypes/Validator.js +270 -0
  410. package/es-modules/Grid/Pro/ColumnTypes/ValidatorComposition.d.ts +32 -0
  411. package/es-modules/Grid/Pro/ColumnTypes/ValidatorComposition.js +63 -0
  412. package/es-modules/Grid/Pro/Credits/CreditsPro.d.ts +35 -0
  413. package/es-modules/Grid/Pro/Credits/CreditsPro.js +112 -0
  414. package/es-modules/Grid/Pro/Credits/CreditsProComposition.d.ts +28 -0
  415. package/es-modules/Grid/Pro/Credits/CreditsProComposition.js +61 -0
  416. package/es-modules/Grid/Pro/Export/Exporting.d.ts +68 -0
  417. package/es-modules/Grid/Pro/Export/Exporting.js +202 -0
  418. package/es-modules/Grid/Pro/Export/ExportingComposition.d.ts +68 -0
  419. package/es-modules/Grid/Pro/Export/ExportingComposition.js +55 -0
  420. package/es-modules/Grid/Pro/GridEvents.d.ts +119 -0
  421. package/es-modules/Grid/Pro/GridEvents.js +107 -0
  422. package/es-modules/Grid/Pro/Pagination/PaginationComposition.d.ts +75 -0
  423. package/es-modules/Grid/Pro/Pagination/PaginationComposition.js +76 -0
  424. package/es-modules/Grid/Pro/highcharts.d.ts +7 -0
  425. package/es-modules/Grid/index.d.ts +5 -0
  426. package/es-modules/Grid/index.js +19 -0
  427. package/es-modules/Shared/BaseForm.d.ts +49 -0
  428. package/es-modules/Shared/BaseForm.js +126 -0
  429. package/es-modules/Shared/DownloadURL.d.ts +85 -0
  430. package/es-modules/Shared/DownloadURL.js +198 -0
  431. package/es-modules/Shared/LangOptionsCore.d.ts +27 -0
  432. package/es-modules/Shared/TimeBase.d.ts +353 -0
  433. package/es-modules/Shared/TimeBase.js +830 -0
  434. package/es-modules/Shared/Types.d.ts +48 -0
  435. package/es-modules/masters/grid-pro.src.d.ts +99 -0
  436. package/es-modules/masters/grid-pro.src.js +129 -0
  437. package/grid-pro.d.ts +50 -0
  438. package/grid-pro.js +12 -0
  439. package/grid-pro.js.map +1 -0
  440. package/grid-pro.src.d.ts +50 -0
  441. package/grid-pro.src.js +26623 -0
  442. package/package.json +21 -0
@@ -0,0 +1,2977 @@
1
+ /* *
2
+ *
3
+ * (c) 2010-2025 Torstein Honsi
4
+ *
5
+ * License: www.highcharts.com/license
6
+ *
7
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
8
+ *
9
+ * */
10
+ 'use strict';
11
+ import ChartDefaults from './Chart/ChartDefaults.js';
12
+ import H from './Globals.js';
13
+ const { isTouchDevice } = H;
14
+ import Palettes from './Color/Palettes.js';
15
+ import Time from './Time.js';
16
+ import U from './Utilities.js';
17
+ const { fireEvent, merge } = U;
18
+ /* *
19
+ *
20
+ * API Options
21
+ *
22
+ * */
23
+ /**
24
+ * Global default settings.
25
+ *
26
+ * @name Highcharts.defaultOptions
27
+ * @type {Highcharts.Options}
28
+ */ /**
29
+ * @optionparent
30
+ * @private
31
+ */
32
+ const defaultOptions = {
33
+ /**
34
+ * An array containing the default colors for the chart's series. When
35
+ * all colors are used, new colors are pulled from the start again.
36
+ *
37
+ * Default colors can also be set on a series or series.type basis,
38
+ * see [column.colors](#plotOptions.column.colors),
39
+ * [pie.colors](#plotOptions.pie.colors).
40
+ *
41
+ * In styled mode, the colors option doesn't exist. Instead, colors
42
+ * are defined in CSS and applied either through series or point class
43
+ * names, or through the [chart.colorCount](#chart.colorCount) option.
44
+ *
45
+ * @sample {highcharts} highcharts/chart/colors/
46
+ * Assign a global color theme
47
+ * @sample highcharts/members/theme-v10/
48
+ * Latest release styled like version 10
49
+ *
50
+ * @type {Array<(Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject)>}
51
+ * @default [
52
+ * "#2caffe",
53
+ * "#544fc5",
54
+ * "#00e272",
55
+ * "#fe6a35",
56
+ * "#6b8abc",
57
+ * "#d568fb",
58
+ * "#2ee0ca",
59
+ * "#fa4b42",
60
+ * "#feb56a",
61
+ * "#91e8e1"
62
+ * ]
63
+ */
64
+ colors: Palettes.colors,
65
+ /**
66
+ * Styled mode only. Configuration object for adding SVG definitions for
67
+ * reusable elements. See [gradients, shadows and
68
+ * patterns](https://www.highcharts.com/docs/chart-design-and-style/gradients-shadows-and-patterns)
69
+ * for more information and code examples.
70
+ *
71
+ * @type {*}
72
+ * @since 5.0.0
73
+ * @apioption defs
74
+ */
75
+ /**
76
+ * @ignore-option
77
+ */
78
+ symbols: ['circle', 'diamond', 'square', 'triangle', 'triangle-down'],
79
+ /**
80
+ * An object containing language-related strings and settings. A typical
81
+ * setup uses `Highcharts.setOptions` to make the options apply to all
82
+ * charts in the same page.
83
+ *
84
+ * Some language options, like `months` and `weekdays`, are only used
85
+ * with non-locale-aware date formats.
86
+ *
87
+ * ```js
88
+ * Highcharts.setOptions({
89
+ * lang: {
90
+ * locale: 'fr'
91
+ * }
92
+ * });
93
+ * ```
94
+ *
95
+ * @optionparent lang
96
+ */
97
+ lang: {
98
+ weekFrom: 'week from',
99
+ /**
100
+ * The default chart title.
101
+ *
102
+ * @since 12.2.0
103
+ */
104
+ chartTitle: 'Chart title',
105
+ /**
106
+ * The browser locale to use for date and number formatting. The actual
107
+ * locale used for each chart is determined in three steps:
108
+ * 1. If this `lang.locale` option is specified, it is used.
109
+ * 2. Else, look for the closest ancestor HTML element with a `lang`
110
+ * attribute, typically the `<html>` element.
111
+ * 3. If no 'lang' attribute is found, use the default browser locale.
112
+ *
113
+ * Use `en-GB`, British English, for approximate consistency with
114
+ * Highcharts v < 12.
115
+ *
116
+ * @sample highcharts/lang/locale/
117
+ * Set the locale using the `lang.locale` option
118
+ * @sample highcharts/lang/locale-attribute/
119
+ * Pick up the locale from the HTML `lang` attribute
120
+ * @sample highcharts/members/highcharts-numberformat
121
+ * Arabic locale with digits and dates *
122
+ *
123
+ * @since 12.0.0
124
+ * @type {string|Array<string>}
125
+ */
126
+ locale: void 0,
127
+ /**
128
+ * The loading text that appears when the chart is set into the loading
129
+ * state following a call to `chart.showLoading`.
130
+ */
131
+ loading: 'Loading...',
132
+ /**
133
+ * An array containing the months names. Corresponds to the `%B` format
134
+ * in `Highcharts.dateFormat()`. Defaults to 'undefined',
135
+ * meaning the default month names are used according to the
136
+ * `lang.locale` or browser settings.
137
+ *
138
+ * @type {Array<string>}
139
+ */
140
+ months: void 0,
141
+ /**
142
+ * [Format string](https://www.highcharts.com/docs/chart-concepts/templating) for the default series name.
143
+ *
144
+ * @since 12.2.0
145
+ */
146
+ seriesName: 'Series {add index 1}',
147
+ /**
148
+ * An array containing the months names in abbreviated form. Corresponds
149
+ * to the `%b` format in `Highcharts.dateFormat()`. Defaults to
150
+ * 'undefined', meaning the default short month names are used according
151
+ * to the `lang.locale` or browser settings.
152
+ *
153
+ * @type {Array<string>}
154
+ */
155
+ shortMonths: void 0,
156
+ /**
157
+ * An array containing the weekday names. Corresponds
158
+ * to the `%A` format in `Highcharts.dateFormat()`. Defaults to
159
+ * 'undefined', meaning the default weekday names are used according to
160
+ * the `lang.locale` or browser settings.
161
+ *
162
+ * @type {Array<string>}
163
+ */
164
+ weekdays: void 0,
165
+ /**
166
+ * Short week days, starting Sunday. Corresponds to the `%a` format in
167
+ * `Highcharts.dateFormat()`. Defaults to 'undefined', meaning
168
+ * the default short weekday names are used according to the
169
+ * `lang.locale` or browser settings.
170
+ *
171
+ * @sample highcharts/lang/shortweekdays/
172
+ * Finnish two-letter abbreviations
173
+ *
174
+ * @type {Array<string>}
175
+ * @since 4.2.4
176
+ * @apioption lang.shortWeekdays
177
+ */
178
+ /**
179
+ * What to show in a date field for invalid dates. Defaults to an empty
180
+ * string.
181
+ *
182
+ * @type {string}
183
+ * @since 4.1.8
184
+ * @product highcharts highstock
185
+ * @apioption lang.invalidDate
186
+ */
187
+ /**
188
+ * The title appearing on hovering the zoom in button. The text itself
189
+ * defaults to "+" and can be changed in the button options.
190
+ *
191
+ * @type {string}
192
+ * @default Zoom in
193
+ * @product highmaps
194
+ * @apioption lang.zoomIn
195
+ */
196
+ /**
197
+ * The title appearing on hovering the zoom out button. The text itself
198
+ * defaults to "-" and can be changed in the button options.
199
+ *
200
+ * @type {string}
201
+ * @default Zoom out
202
+ * @product highmaps
203
+ * @apioption lang.zoomOut
204
+ */
205
+ /**
206
+ * The default decimal point used in the `Highcharts.numberFormat`
207
+ * method unless otherwise specified in the function arguments. Defaults
208
+ * to the locale decimal point as determined by `lang.locale`.
209
+ *
210
+ * @type {string}
211
+ * @default undefined
212
+ * @since 1.2.2
213
+ * @apioption lang.decimalPoint
214
+ */
215
+ /**
216
+ * [Metric prefixes](https://en.wikipedia.org/wiki/Metric_prefix) used
217
+ * to shorten high numbers in axis labels. Replacing any of the
218
+ * positions with `null` causes the full number to be written. Setting
219
+ * `numericSymbols` to `undefined` disables shortening altogether.
220
+ *
221
+ * @sample {highcharts} highcharts/lang/numericsymbols/
222
+ * Replacing the symbols with text
223
+ * @sample {highstock} highcharts/lang/numericsymbols/
224
+ * Replacing the symbols with text
225
+ *
226
+ * @type {Array<string>}
227
+ * @default ["k", "M", "G", "T", "P", "E"]
228
+ * @since 2.3.0
229
+ */
230
+ numericSymbols: ['k', 'M', 'G', 'T', 'P', 'E'],
231
+ /**
232
+ * The default name for a pie slice (point).
233
+ * @since 12.2.0
234
+ */
235
+ pieSliceName: 'Slice',
236
+ /**
237
+ * The magnitude of [numericSymbols](#lang.numericSymbol) replacements.
238
+ * Use 10000 for Japanese, Korean and various Chinese locales, which
239
+ * use symbols for 10^4, 10^8 and 10^12.
240
+ *
241
+ * @sample highcharts/lang/numericsymbolmagnitude/
242
+ * 10000 magnitude for Japanese
243
+ *
244
+ * @type {number}
245
+ * @default 1000
246
+ * @since 5.0.3
247
+ * @apioption lang.numericSymbolMagnitude
248
+ */
249
+ /**
250
+ * The default thousands separator used in the `Highcharts.numberFormat`
251
+ * method unless otherwise specified in the function arguments. Defaults
252
+ * to the locale thousands separator as determined by `lang.locale`.
253
+ *
254
+ * @type {string}
255
+ * @default undefined
256
+ * @since 1.2.2
257
+ * @apioption lang.thousandsSep
258
+ */
259
+ /**
260
+ * The text for the label appearing when a chart is zoomed.
261
+ *
262
+ * @since 1.2.4
263
+ */
264
+ resetZoom: 'Reset zoom',
265
+ /**
266
+ * The tooltip title for the label appearing when a chart is zoomed.
267
+ *
268
+ * @since 1.2.4
269
+ */
270
+ /**
271
+ * The default title of the Y axis
272
+ *
273
+ * @since 12.2.0
274
+ */
275
+ yAxisTitle: 'Values',
276
+ resetZoomTitle: 'Reset zoom level 1:1'
277
+ },
278
+ /**
279
+ * Global options that don't apply to each chart. These options must be set
280
+ * using the `Highcharts.setOptions` method.
281
+ *
282
+ * ```js
283
+ * Highcharts.setOptions({
284
+ * global: {
285
+ * buttonTheme: {
286
+ * fill: '#d0d0d0'
287
+ * }
288
+ * }
289
+ * });
290
+ * ```
291
+ */
292
+ global: {
293
+ /**
294
+ * General theme for buttons. This applies to the zoom button, exporting
295
+ * context menu, map navigation, range selector buttons and custom
296
+ * buttons generated using the `SVGRenderer.button` function. However,
297
+ * each of these may be overridden with more specific options.
298
+ *
299
+ * @sample highcharts/global/buttontheme
300
+ * General button theme
301
+ * @since 11.4.2
302
+ */
303
+ buttonTheme: {
304
+ /**
305
+ * The fill color for buttons
306
+ */
307
+ fill: "#f7f7f7" /* Palette.neutralColor3 */,
308
+ /**
309
+ * The padding of buttons
310
+ */
311
+ padding: 8,
312
+ /**
313
+ * The border radius for buttons
314
+ */
315
+ r: 2,
316
+ /**
317
+ * The stroke color for buttons
318
+ */
319
+ stroke: "#cccccc" /* Palette.neutralColor20 */,
320
+ /**
321
+ * The stroke width for buttons
322
+ */
323
+ 'stroke-width': 1,
324
+ /**
325
+ * CSS styling for the buttons' text
326
+ */
327
+ style: {
328
+ color: "#333333" /* Palette.neutralColor80 */,
329
+ cursor: 'pointer',
330
+ fontSize: '0.8em',
331
+ fontWeight: 'normal'
332
+ },
333
+ /**
334
+ * State overrides for the buttons
335
+ */
336
+ states: {
337
+ /**
338
+ * Hover state overrides for the buttons are applied in addition
339
+ * to the normal state options
340
+ */
341
+ hover: {
342
+ fill: "#e6e6e6" /* Palette.neutralColor10 */
343
+ },
344
+ /**
345
+ * Select state overrides for the buttons are applied in
346
+ * addition to the normal state options
347
+ */
348
+ select: {
349
+ fill: "#e6e9ff" /* Palette.highlightColor10 */,
350
+ style: {
351
+ color: "#000000" /* Palette.neutralColor100 */,
352
+ fontWeight: 'bold'
353
+ }
354
+ },
355
+ /**
356
+ * Disabled state overrides for the buttons are applied in
357
+ * addition to the normal state options
358
+ */
359
+ disabled: {
360
+ /**
361
+ * Disabled state CSS style overrides for the buttons' text
362
+ */
363
+ style: {
364
+ color: "#cccccc" /* Palette.neutralColor20 */
365
+ }
366
+ }
367
+ }
368
+ }
369
+ },
370
+ /**
371
+ * Time options that can apply globally or to individual charts. These
372
+ * settings affect how `datetime` axes are laid out, how tooltips are
373
+ * formatted, how series
374
+ * [pointIntervalUnit](#plotOptions.series.pointIntervalUnit) works and how
375
+ * the Highcharts Stock range selector handles time.
376
+ *
377
+ * The common use case is that all charts in the same Highcharts object
378
+ * share the same time settings, in which case the global settings are set
379
+ * using `setOptions`.
380
+ *
381
+ * ```js
382
+ * // Apply time settings globally
383
+ * Highcharts.setOptions({
384
+ * time: {
385
+ * timezone: 'Europe/London'
386
+ * }
387
+ * });
388
+ * // Apply time settings by instance
389
+ * const chart = Highcharts.chart('container', {
390
+ * time: {
391
+ * timezone: 'America/New_York'
392
+ * },
393
+ * series: [{
394
+ * data: [1, 4, 3, 5]
395
+ * }]
396
+ * });
397
+ *
398
+ * // Use the Time object
399
+ * console.log(
400
+ * 'Current time in New York',
401
+ * chart.time.dateFormat('%Y-%m-%d %H:%M:%S', Date.now())
402
+ * );
403
+ * ```
404
+ *
405
+ * Since v6.0.5, the time options were moved from the `global` object to the
406
+ * `time` object, and time options can be set on each individual chart.
407
+ *
408
+ * @sample {highcharts|highstock}
409
+ * highcharts/time/timezone/
410
+ * Set the timezone globally
411
+ * @sample {highcharts}
412
+ * highcharts/time/individual/
413
+ * Set the timezone per chart instance
414
+ * @sample {highstock}
415
+ * stock/time/individual/
416
+ * Set the timezone per chart instance
417
+ *
418
+ * @since 6.0.5
419
+ * @optionparent time
420
+ */
421
+ time: {
422
+ /**
423
+ * A custom `Date` class for advanced date handling. For example,
424
+ * [JDate](https://github.com/tahajahangir/jdate) can be hooked in to
425
+ * handle Jalali dates.
426
+ *
427
+ * @type {*}
428
+ * @since 4.0.4
429
+ * @product highcharts highstock gantt
430
+ */
431
+ Date: void 0,
432
+ /**
433
+ * A named time zone. Supported time zone names rely on the browser
434
+ * implementations, as described in the [mdn
435
+ * docs](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#timezone).
436
+ * If the given time zone is not recognized by the browser, Highcharts
437
+ * provides a warning and falls back to returning a 0 offset,
438
+ * corresponding to the UTC time zone.
439
+ *
440
+ * The time zone affects axis scaling, tickmark placement and
441
+ * time display in `Highcharts.dateFormat`.
442
+ *
443
+ * Setting `timezone` to `undefined` falls back to the default browser
444
+ * timezone setting.
445
+ *
446
+ * Until v11.2.0, this option depended on moment.js.
447
+ *
448
+ * @sample {highcharts|highstock} highcharts/time/timezone/ Europe/Oslo
449
+ *
450
+ * @type {string}
451
+ * @since 5.0.7
452
+ * @product highcharts highstock gantt
453
+ */
454
+ timezone: 'UTC',
455
+ /**
456
+ * The timezone offset in minutes. Positive values are west, negative
457
+ * values are east of UTC, as in the ECMAScript
458
+ * [getTimezoneOffset](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getTimezoneOffset)
459
+ * method. Use this to display UTC based data in a predefined time zone.
460
+ *
461
+ * This option is deprecated as of v11.4.1 and will be removed in a
462
+ * future release. Use the [time.timezone](#time.timezone) option
463
+ * instead.
464
+ *
465
+ * @see [time.getTimezoneOffset](#time.getTimezoneOffset)
466
+ *
467
+ * @sample {highcharts|highstock} highcharts/time/timezoneoffset/
468
+ * Timezone offset
469
+ *
470
+ * @since 3.0.8
471
+ * @deprecated 11.4.2
472
+ * @product highcharts highstock gantt
473
+ */
474
+ timezoneOffset: 0,
475
+ /**
476
+ * Whether to use UTC time for axis scaling, tickmark placement and
477
+ * time display in `Highcharts.dateFormat`. Advantages of using UTC
478
+ * is that the time displays equally regardless of the user agent's
479
+ * time zone settings. Local time can be used when the data is loaded
480
+ * in real time or when correct Daylight Saving Time transitions are
481
+ * required.
482
+ *
483
+ * Setting `useUTC` to true is equivalent to setting `time.timezone` to
484
+ * `"UTC"`. Setting `useUTC` to false is equivalent to setting
485
+ * `time.timezone` to `undefined`.
486
+ *
487
+ * @see [time.timezone](#timezone)
488
+ *
489
+ * @sample {highcharts} highcharts/time/useutc-true/
490
+ * True by default
491
+ * @sample {highcharts} highcharts/time/useutc-false/
492
+ * False
493
+ *
494
+ * @deprecated
495
+ */
496
+ useUTC: void 0
497
+ },
498
+ chart: ChartDefaults,
499
+ /**
500
+ * The chart's main title.
501
+ *
502
+ * @sample {highmaps} maps/title/title/
503
+ * Title options demonstrated
504
+ * @sample {highcharts} highcharts/title/align-auto/
505
+ * Default title alignment
506
+ */
507
+ title: {
508
+ /**
509
+ * When the title is floating, the plot area will not move to make space
510
+ * for it.
511
+ *
512
+ * @sample {highcharts} highcharts/chart/zoomtype-none/
513
+ * False by default
514
+ * @sample {highcharts} highcharts/title/floating/
515
+ * True - title on top of the plot area
516
+ * @sample {highstock} stock/chart/title-floating/
517
+ * True - title on top of the plot area
518
+ *
519
+ * @type {boolean}
520
+ * @default false
521
+ * @since 2.1
522
+ * @apioption title.floating
523
+ */
524
+ /**
525
+ * Whether to
526
+ * [use HTML](https://www.highcharts.com/docs/chart-concepts/labels-and-string-formatting#html)
527
+ * to render the text.
528
+ *
529
+ * @type {boolean}
530
+ * @default false
531
+ * @apioption title.useHTML
532
+ */
533
+ /**
534
+ * The vertical alignment of the title. Can be one of `"top"`,
535
+ * `"middle"` and `"bottom"`. When a value is given, the title behaves
536
+ * as if [floating](#title.floating) were `true`.
537
+ *
538
+ * @sample {highcharts} highcharts/title/verticalalign/
539
+ * Chart title in bottom right corner
540
+ * @sample {highstock} stock/chart/title-verticalalign/
541
+ * Chart title in bottom right corner
542
+ *
543
+ * @type {Highcharts.VerticalAlignValue}
544
+ * @since 2.1
545
+ * @apioption title.verticalAlign
546
+ */
547
+ /**
548
+ * The x position of the title relative to the alignment within
549
+ * `chart.spacingLeft` and `chart.spacingRight`.
550
+ *
551
+ * @sample {highcharts} highcharts/title/align/
552
+ * Aligned to the plot area (x = 70px = margin left - spacing
553
+ * left)
554
+ * @sample {highstock} stock/chart/title-align/
555
+ * Aligned to the plot area (x = 50px = margin left - spacing
556
+ * left)
557
+ *
558
+ * @type {number}
559
+ * @default 0
560
+ * @since 2.0
561
+ * @apioption title.x
562
+ */
563
+ /**
564
+ * The y position of the title relative to the alignment within
565
+ * [chart.spacingTop](#chart.spacingTop) and [chart.spacingBottom](
566
+ * #chart.spacingBottom). By default it depends on the font size.
567
+ *
568
+ * @sample {highcharts} highcharts/title/y/
569
+ * Title inside the plot area
570
+ * @sample {highstock} stock/chart/title-verticalalign/
571
+ * Chart title in bottom right corner
572
+ *
573
+ * @type {number}
574
+ * @since 2.0
575
+ * @apioption title.y
576
+ */
577
+ /**
578
+ * CSS styles for the title. Use this for font styling, but use `align`,
579
+ * `x` and `y` for text alignment.
580
+ *
581
+ * Note that the default [title.minScale](#title.minScale) option also
582
+ * affects the rendered font size. In order to keep the font size fixed
583
+ * regardless of title length, set `minScale` to 1.
584
+ *
585
+ * In styled mode, the title style is given in the `.highcharts-title`
586
+ * class.
587
+ *
588
+ * @sample {highcharts} highcharts/title/style/
589
+ * Custom color and weight
590
+ * @sample {highstock} stock/chart/title-style/
591
+ * Custom color and weight
592
+ * @sample highcharts/css/titles/
593
+ * Styled mode
594
+ *
595
+ * @type {Highcharts.CSSObject}
596
+ * @default {highcharts|highmaps} { "color": "#333333", "fontSize": "18px" }
597
+ * @default {highstock} { "color": "#333333", "fontSize": "16px" }
598
+ */
599
+ style: {
600
+ color: "#333333" /* Palette.neutralColor80 */,
601
+ fontWeight: 'bold'
602
+ },
603
+ /**
604
+ * The title of the chart. To disable the title, set the `text` to
605
+ * `undefined`.
606
+ *
607
+ * @sample {highcharts} highcharts/title/text/
608
+ * Custom title
609
+ * @sample {highstock} stock/chart/title-text/
610
+ * Custom title
611
+ *
612
+ * @default {highcharts|highmaps} Chart title
613
+ * @default {highstock} undefined
614
+ */
615
+ text: 'Chart title',
616
+ /**
617
+ * The horizontal alignment of the title. Can be one of "left", "center"
618
+ * and "right".
619
+ *
620
+ * Since v12 it defaults to `undefined`, meaning the alignment is
621
+ * computed for best fit. If the text fits in one line, it aligned to
622
+ * the center, but if it is wrapped into multiple lines, it is aligned
623
+ * to the left.
624
+ *
625
+ * @sample {highcharts} highcharts/title/align-auto/
626
+ * Default alignment, dynamic
627
+ * @sample {highcharts} highcharts/title/align/
628
+ * Aligned to the plot area (x = 70px = margin left - spacing
629
+ * left)
630
+ * @sample {highstock} stock/chart/title-align/
631
+ * Aligned to the plot area (x = 50px = margin left - spacing
632
+ * left)
633
+ *
634
+ * @type {Highcharts.AlignValue}
635
+ * @default undefined
636
+ * @since 2.0
637
+ * @apioption title.align
638
+ */
639
+ /**
640
+ * The margin between the title and the plot area, or if a subtitle
641
+ * is present, the margin between the subtitle and the plot area.
642
+ *
643
+ * @sample {highcharts} highcharts/title/margin-50/
644
+ * A chart title margin of 50
645
+ * @sample {highcharts} highcharts/title/margin-subtitle/
646
+ * The same margin applied with a subtitle
647
+ * @sample {highstock} stock/chart/title-margin/
648
+ * A chart title margin of 50
649
+ *
650
+ * @since 2.1
651
+ */
652
+ margin: 15,
653
+ /**
654
+ * When the title is too wide to fit in the chart, the default behavior
655
+ * is to scale it down to fit, or apply word wrap if it is scaled down
656
+ * to `minScale` and still doesn't fit.
657
+ *
658
+ * The default value reflects the scale, when using default font sizes,
659
+ * when the title font size matches that of the subtitle. The title
660
+ * still stands out as it is bold by default.
661
+ *
662
+ * Set `minScale` to 1 to avoid downscaling.
663
+ *
664
+ * @sample {highcharts} highcharts/title/align-auto/
665
+ * Downscaling demonstrated
666
+ *
667
+ * @since 12.0.0
668
+ */
669
+ minScale: 0.67
670
+ },
671
+ /**
672
+ * The chart's subtitle. This can be used both to display a subtitle below
673
+ * the main title, and to display random text anywhere in the chart. The
674
+ * subtitle can be updated after chart initialization through the
675
+ * `Chart.setTitle` method.
676
+ *
677
+ * @sample {highcharts} highcharts/title/align-auto/
678
+ * Default title alignment
679
+ * @sample {highmaps} maps/title/subtitle/
680
+ * Subtitle options demonstrated
681
+ */
682
+ subtitle: {
683
+ /**
684
+ * The horizontal alignment of the subtitle. Can be one of "left",
685
+ * "center" and "right". Since v12, it defaults to `undefined`, meaning
686
+ * the actual alignment is inherited from the alignment of the main
687
+ * title.
688
+ *
689
+ * @sample {highcharts} highcharts/title/align-auto/
690
+ * Default title and subtitle alignment, dynamic
691
+ * @sample {highcharts} highcharts/subtitle/align/
692
+ * Footnote at right of plot area
693
+ * @sample {highstock} stock/chart/subtitle-footnote
694
+ * Footnote at bottom right of plot area
695
+ *
696
+ * @type {Highcharts.AlignValue}
697
+ * @default undefined
698
+ * @since 2.0
699
+ * @apioption subtitle.align
700
+ */
701
+ /**
702
+ * When the subtitle is floating, the plot area will not move to make
703
+ * space for it.
704
+ *
705
+ * @sample {highcharts} highcharts/subtitle/floating/
706
+ * Floating title and subtitle
707
+ * @sample {highstock} stock/chart/subtitle-footnote
708
+ * Footnote floating at bottom right of plot area
709
+ *
710
+ * @type {boolean}
711
+ * @default false
712
+ * @since 2.1
713
+ * @apioption subtitle.floating
714
+ */
715
+ /**
716
+ * CSS styles for the title.
717
+ *
718
+ * In styled mode, the subtitle style is given in the
719
+ * `.highcharts-subtitle` class.
720
+ *
721
+ * @sample {highcharts} highcharts/subtitle/style/
722
+ * Custom color and weight
723
+ * @sample {highcharts} highcharts/css/titles/
724
+ * Styled mode
725
+ * @sample {highstock} stock/chart/subtitle-style
726
+ * Custom color and weight
727
+ * @sample {highstock} highcharts/css/titles/
728
+ * Styled mode
729
+ * @sample {highmaps} highcharts/css/titles/
730
+ * Styled mode
731
+ *
732
+ * @type {Highcharts.CSSObject}
733
+ * @default {"color": "#666666"}
734
+ * @apioption subtitle.style
735
+ */
736
+ /**
737
+ * Whether to
738
+ * [use HTML](https://www.highcharts.com/docs/chart-concepts/labels-and-string-formatting#html)
739
+ * to render the text.
740
+ *
741
+ * @type {boolean}
742
+ * @default false
743
+ * @apioption subtitle.useHTML
744
+ */
745
+ /**
746
+ * The vertical alignment of the title. Can be one of `"top"`,
747
+ * `"middle"` and `"bottom"`. When middle, the subtitle behaves as
748
+ * floating.
749
+ *
750
+ * @sample {highcharts} highcharts/subtitle/verticalalign/
751
+ * Footnote at the bottom right of plot area
752
+ * @sample {highstock} stock/chart/subtitle-footnote
753
+ * Footnote at the bottom right of plot area
754
+ *
755
+ * @type {Highcharts.VerticalAlignValue}
756
+ * @since 2.1
757
+ * @apioption subtitle.verticalAlign
758
+ */
759
+ /**
760
+ * The x position of the subtitle relative to the alignment within
761
+ * `chart.spacingLeft` and `chart.spacingRight`.
762
+ *
763
+ * @sample {highcharts} highcharts/subtitle/align/
764
+ * Footnote at right of plot area
765
+ * @sample {highstock} stock/chart/subtitle-footnote
766
+ * Footnote at the bottom right of plot area
767
+ *
768
+ * @type {number}
769
+ * @default 0
770
+ * @since 2.0
771
+ * @apioption subtitle.x
772
+ */
773
+ /**
774
+ * The y position of the subtitle relative to the alignment within
775
+ * `chart.spacingTop` and `chart.spacingBottom`. By default the subtitle
776
+ * is laid out below the title unless the title is floating.
777
+ *
778
+ * @sample {highcharts} highcharts/subtitle/verticalalign/
779
+ * Footnote at the bottom right of plot area
780
+ * @sample {highstock} stock/chart/subtitle-footnote
781
+ * Footnote at the bottom right of plot area
782
+ *
783
+ * @type {number}
784
+ * @since 2.0
785
+ * @apioption subtitle.y
786
+ */
787
+ /**
788
+ * CSS styles for the title.
789
+ *
790
+ * In styled mode, the subtitle style is given in the
791
+ * `.highcharts-subtitle` class.
792
+ *
793
+ * @sample {highcharts} highcharts/subtitle/style/
794
+ * Custom color and weight
795
+ * @sample {highcharts} highcharts/css/titles/
796
+ * Styled mode
797
+ * @sample {highstock} stock/chart/subtitle-style
798
+ * Custom color and weight
799
+ * @sample {highstock} highcharts/css/titles/
800
+ * Styled mode
801
+ * @sample {highmaps} highcharts/css/titles/
802
+ * Styled mode
803
+ *
804
+ * @type {Highcharts.CSSObject}
805
+ * @default {"color": "#666666"}
806
+ */
807
+ style: {
808
+ color: "#666666" /* Palette.neutralColor60 */,
809
+ /**
810
+ * @type {number|string}
811
+ */
812
+ fontSize: '0.8em'
813
+ },
814
+ /**
815
+ * The subtitle of the chart.
816
+ *
817
+ * @sample {highcharts|highstock} highcharts/subtitle/text/
818
+ * Custom subtitle
819
+ * @sample {highcharts|highstock} highcharts/subtitle/text-formatted/
820
+ * Formatted and linked text.
821
+ */
822
+ text: ''
823
+ },
824
+ /**
825
+ * The chart's caption, which will render below the chart and will be part
826
+ * of exported charts. The caption can be updated after chart initialization
827
+ * through the `Chart.update` or `Chart.caption.update` methods.
828
+ *
829
+ * @sample highcharts/caption/text/
830
+ * A chart with a caption
831
+ * @since 7.2.0
832
+ */
833
+ caption: {
834
+ /**
835
+ * When the caption is floating, the plot area will not move to make
836
+ * space for it.
837
+ *
838
+ * @type {boolean}
839
+ * @default false
840
+ * @apioption caption.floating
841
+ */
842
+ /**
843
+ * The margin between the caption and the plot area.
844
+ */
845
+ margin: 15,
846
+ /**
847
+ * Whether to
848
+ * [use HTML](https://www.highcharts.com/docs/chart-concepts/labels-and-string-formatting#html)
849
+ * to render the text.
850
+ *
851
+ * @type {boolean}
852
+ * @default false
853
+ * @apioption caption.useHTML
854
+ */
855
+ /**
856
+ * The x position of the caption relative to the alignment within
857
+ * `chart.spacingLeft` and `chart.spacingRight`.
858
+ *
859
+ * @type {number}
860
+ * @default 0
861
+ * @apioption caption.x
862
+ */
863
+ /**
864
+ * The y position of the caption relative to the alignment within
865
+ * `chart.spacingTop` and `chart.spacingBottom`.
866
+ *
867
+ * @type {number}
868
+ * @apioption caption.y
869
+ */
870
+ /**
871
+ * CSS styles for the caption.
872
+ *
873
+ * In styled mode, the caption style is given in the
874
+ * `.highcharts-caption` class.
875
+ *
876
+ * @sample {highcharts} highcharts/css/titles/
877
+ * Styled mode
878
+ *
879
+ * @type {Highcharts.CSSObject}
880
+ * @default {"color": "#666666"}
881
+ */
882
+ style: {
883
+ color: "#666666" /* Palette.neutralColor60 */,
884
+ /**
885
+ * @type {number|string}
886
+ */
887
+ fontSize: '0.8em'
888
+ },
889
+ /**
890
+ * The caption text of the chart.
891
+ *
892
+ * @sample {highcharts} highcharts/caption/text/
893
+ * Custom caption
894
+ */
895
+ text: '',
896
+ /**
897
+ * The horizontal alignment of the caption. Can be one of "left",
898
+ * "center" and "right".
899
+ *
900
+ * @type {Highcharts.AlignValue}
901
+ */
902
+ align: 'left',
903
+ /**
904
+ * The vertical alignment of the caption. Can be one of `"top"`,
905
+ * `"middle"` and `"bottom"`. When middle, the caption behaves as
906
+ * floating.
907
+ *
908
+ * @type {Highcharts.VerticalAlignValue}
909
+ */
910
+ verticalAlign: 'bottom'
911
+ },
912
+ /**
913
+ * The plotOptions is a wrapper object for config objects for each series
914
+ * type. The config objects for each series can also be overridden for
915
+ * each series item as given in the series array.
916
+ *
917
+ * Configuration options for the series are given in three levels. Options
918
+ * for all series in a chart are given in the [plotOptions.series](
919
+ * #plotOptions.series) object. Then options for all series of a specific
920
+ * type are given in the plotOptions of that type, for example
921
+ * `plotOptions.line`. Next, options for one single series are given in
922
+ * [the series array](#series).
923
+ */
924
+ plotOptions: {},
925
+ /**
926
+ * The legend is a box containing a symbol and name for each series
927
+ * item or point item in the chart. Each series (or points in case
928
+ * of pie charts) is represented by a symbol and its name in the legend.
929
+ *
930
+ * It is possible to override the symbol creator function and create
931
+ * [custom legend symbols](https://jsfiddle.net/gh/get/library/pure/highcharts/highcharts/tree/master/samples/highcharts/studies/legend-custom-symbol/).
932
+ *
933
+ * @productdesc {highmaps}
934
+ * A Highmaps legend by default contains one legend item per series, but if
935
+ * a `colorAxis` is defined, the axis will be displayed in the legend.
936
+ * Either as a gradient, or as multiple legend items for `dataClasses`.
937
+ */
938
+ legend: {
939
+ /**
940
+ * The background color of the legend.
941
+ *
942
+ * @see In styled mode, the legend background fill can be applied with
943
+ * the `.highcharts-legend-box` class.
944
+ *
945
+ * @sample {highcharts} highcharts/legend/backgroundcolor/
946
+ * Yellowish background
947
+ * @sample {highstock} stock/legend/align/
948
+ * Various legend options
949
+ * @sample {highmaps} maps/legend/border-background/
950
+ * Border and background options
951
+ *
952
+ * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
953
+ * @apioption legend.backgroundColor
954
+ */
955
+ /**
956
+ * The width of the drawn border around the legend.
957
+ *
958
+ * @see In styled mode, the legend border stroke width can be applied
959
+ * with the `.highcharts-legend-box` class.
960
+ *
961
+ * @sample {highcharts} highcharts/legend/borderwidth/
962
+ * 2px border width
963
+ * @sample {highstock} stock/legend/align/
964
+ * Various legend options
965
+ * @sample {highmaps} maps/legend/border-background/
966
+ * Border and background options
967
+ *
968
+ * @type {number}
969
+ * @default 0
970
+ * @apioption legend.borderWidth
971
+ */
972
+ /**
973
+ * Enable or disable the legend. There is also a series-specific option,
974
+ * [showInLegend](#plotOptions.series.showInLegend), that can hide the
975
+ * series from the legend. In some series types this is `false` by
976
+ * default, so it must set to `true` in order to show the legend for the
977
+ * series.
978
+ *
979
+ * @sample {highcharts} highcharts/legend/enabled-false/ Legend disabled
980
+ * @sample {highstock} stock/legend/align/ Various legend options
981
+ * @sample {highmaps} maps/legend/enabled-false/ Legend disabled
982
+ *
983
+ * @default {highstock} false
984
+ * @default {highmaps} true
985
+ * @default {gantt} false
986
+ */
987
+ enabled: true,
988
+ /**
989
+ * The horizontal alignment of the legend box within the chart area.
990
+ * Valid values are `left`, `center` and `right`.
991
+ *
992
+ * In the case that the legend is aligned in a corner position, the
993
+ * `layout` option will determine whether to place it above/below
994
+ * or on the side of the plot area.
995
+ *
996
+ * @sample {highcharts} highcharts/legend/align/
997
+ * Legend at the right of the chart
998
+ * @sample {highstock} stock/legend/align/
999
+ * Various legend options
1000
+ * @sample {highmaps} maps/legend/alignment/
1001
+ * Legend alignment
1002
+ *
1003
+ * @type {Highcharts.AlignValue}
1004
+ * @since 2.0
1005
+ */
1006
+ align: 'center',
1007
+ /**
1008
+ * If the [layout](legend.layout) is `horizontal` and the legend items
1009
+ * span over two lines or more, whether to align the items into vertical
1010
+ * columns. Setting this to `false` makes room for more items, but will
1011
+ * look more messy.
1012
+ *
1013
+ * @since 6.1.0
1014
+ */
1015
+ alignColumns: true,
1016
+ /**
1017
+ * A CSS class name to apply to the legend group.
1018
+ */
1019
+ className: 'highcharts-no-tooltip',
1020
+ /**
1021
+ * General event handlers for the legend. These event hooks can
1022
+ * also be attached to the legend at run time using the
1023
+ * `Highcharts.addEvent` function.
1024
+ *
1025
+ * @declare Highcharts.LegendEventsOptionsObject
1026
+ *
1027
+ * @private
1028
+ */
1029
+ events: {},
1030
+ /**
1031
+ * Fires when the legend item belonging to the series is clicked. One
1032
+ * parameter, `event`, is passed to the function. The default action
1033
+ * is to toggle the visibility of the series, point or data class. This
1034
+ * can be prevented by returning `false` or calling
1035
+ * `event.preventDefault()`.
1036
+ *
1037
+ * @sample {highcharts} highcharts/legend/itemclick/
1038
+ * Confirm hiding and showing
1039
+ * @sample {highcharts} highcharts/legend/pie-legend-itemclick/
1040
+ * Confirm toggle visibility of pie slices
1041
+ *
1042
+ * @type {Highcharts.LegendItemClickCallbackFunction}
1043
+ * @context Highcharts.Legend
1044
+ * @apioption legend.events.itemClick
1045
+ */
1046
+ /**
1047
+ * When the legend is floating, the plot area ignores it and is allowed
1048
+ * to be placed below it.
1049
+ *
1050
+ * @sample {highcharts} highcharts/legend/floating-false/
1051
+ * False by default
1052
+ * @sample {highcharts} highcharts/legend/floating-true/
1053
+ * True
1054
+ * @sample {highmaps} maps/legend/alignment/
1055
+ * Floating legend
1056
+ *
1057
+ * @type {boolean}
1058
+ * @default false
1059
+ * @since 2.1
1060
+ * @apioption legend.floating
1061
+ */
1062
+ /**
1063
+ * The layout of the legend items. Can be one of `horizontal` or
1064
+ * `vertical` or `proximate`. When `proximate`, the legend items will be
1065
+ * placed as close as possible to the graphs they're representing,
1066
+ * except in inverted charts or when the legend position doesn't allow
1067
+ * it.
1068
+ *
1069
+ * @sample {highcharts} highcharts/legend/layout-horizontal/
1070
+ * Horizontal by default
1071
+ * @sample {highcharts} highcharts/legend/layout-vertical/
1072
+ * Vertical
1073
+ * @sample highcharts/legend/layout-proximate
1074
+ * Labels proximate to the data
1075
+ * @sample {highstock} stock/legend/layout-horizontal/
1076
+ * Horizontal by default
1077
+ * @sample {highmaps} maps/legend/padding-itemmargin/
1078
+ * Vertical with data classes
1079
+ * @sample {highmaps} maps/legend/layout-vertical/
1080
+ * Vertical with color axis gradient
1081
+ *
1082
+ * @validvalue ["horizontal", "vertical", "proximate"]
1083
+ */
1084
+ layout: 'horizontal',
1085
+ /**
1086
+ * In a legend with horizontal layout, the itemDistance defines the
1087
+ * pixel distance between each item.
1088
+ *
1089
+ * @sample {highcharts} highcharts/legend/layout-horizontal/
1090
+ * 50px item distance
1091
+ * @sample {highstock} highcharts/legend/layout-horizontal/
1092
+ * 50px item distance
1093
+ *
1094
+ * @type {number}
1095
+ * @default {highcharts} 20
1096
+ * @default {highstock} 20
1097
+ * @default {highmaps} 8
1098
+ * @since 3.0.3
1099
+ * @apioption legend.itemDistance
1100
+ */
1101
+ /**
1102
+ * The pixel bottom margin for each legend item.
1103
+ *
1104
+ * @sample {highcharts|highstock} highcharts/legend/padding-itemmargin/
1105
+ * Padding and item margins demonstrated
1106
+ * @sample {highmaps} maps/legend/padding-itemmargin/
1107
+ * Padding and item margins demonstrated
1108
+ *
1109
+ * @since 2.2.0
1110
+ */
1111
+ itemMarginBottom: 2,
1112
+ /**
1113
+ * The pixel top margin for each legend item.
1114
+ *
1115
+ * @sample {highcharts|highstock} highcharts/legend/padding-itemmargin/
1116
+ * Padding and item margins demonstrated
1117
+ * @sample {highmaps} maps/legend/padding-itemmargin/
1118
+ * Padding and item margins demonstrated
1119
+ *
1120
+ * @since 2.2.0
1121
+ */
1122
+ itemMarginTop: 2,
1123
+ /**
1124
+ * The width for each legend item. By default the items are laid out
1125
+ * successively. In a [horizontal layout](legend.layout), if the items
1126
+ * are laid out across two rows or more, they will be vertically aligned
1127
+ * depending on the [legend.alignColumns](legend.alignColumns) option.
1128
+ *
1129
+ * @sample {highcharts} highcharts/legend/itemwidth-default/
1130
+ * Undefined by default
1131
+ * @sample {highcharts} highcharts/legend/itemwidth-80/
1132
+ * 80 for aligned legend items
1133
+ *
1134
+ * @type {number}
1135
+ * @since 2.0
1136
+ * @apioption legend.itemWidth
1137
+ */
1138
+ /**
1139
+ * A [format string](https://www.highcharts.com/docs/chart-concepts/labels-and-string-formatting)
1140
+ * for each legend label. Available variables relates to properties on
1141
+ * the series, or the point in case of pies.
1142
+ *
1143
+ * @type {string}
1144
+ * @default {name}
1145
+ * @since 1.3
1146
+ * @apioption legend.labelFormat
1147
+ */
1148
+ /* eslint-disable valid-jsdoc */
1149
+ /**
1150
+ * Callback function to format each of the series' labels. The `this`
1151
+ * keyword refers to the series object, or the point object in case of
1152
+ * pie charts. By default the series or point name is printed.
1153
+ *
1154
+ * @productdesc {highmaps}
1155
+ * In Highmaps the context can also be a data class in case of a
1156
+ * `colorAxis`.
1157
+ *
1158
+ * @sample {highcharts} highcharts/legend/labelformatter/
1159
+ * Add text
1160
+ * @sample {highmaps} maps/legend/labelformatter/
1161
+ * Data classes with label formatter
1162
+ *
1163
+ * @type {Highcharts.FormatterCallbackFunction<Point|Series>}
1164
+ */
1165
+ labelFormatter: function () {
1166
+ // eslint-enable valid-jsdoc
1167
+ return this.name;
1168
+ },
1169
+ /**
1170
+ * Line height for the legend items. Deprecated as of 2.1\. Instead,
1171
+ * the line height for each item can be set using
1172
+ * `itemStyle.lineHeight`, and the padding between items using
1173
+ * `itemMarginTop` and `itemMarginBottom`.
1174
+ *
1175
+ * @sample {highcharts} highcharts/legend/lineheight/
1176
+ * Setting padding
1177
+ *
1178
+ * @deprecated
1179
+ *
1180
+ * @type {number}
1181
+ * @default 16
1182
+ * @since 2.0
1183
+ * @product highcharts gantt
1184
+ * @apioption legend.lineHeight
1185
+ */
1186
+ /**
1187
+ * If the plot area sized is calculated automatically and the legend is
1188
+ * not floating, the legend margin is the space between the legend and
1189
+ * the axis labels or plot area.
1190
+ *
1191
+ * @sample {highcharts} highcharts/legend/margin-default/
1192
+ * 12 pixels by default
1193
+ * @sample {highcharts} highcharts/legend/margin-30/
1194
+ * 30 pixels
1195
+ *
1196
+ * @type {number}
1197
+ * @default 12
1198
+ * @since 2.1
1199
+ * @apioption legend.margin
1200
+ */
1201
+ /**
1202
+ * Maximum width for the legend. Can be a percentage of the chart width,
1203
+ * or an integer representing how many pixels wide the legend can be.
1204
+ *
1205
+ * @sample {highcharts} highcharts/legend/maxwidth/
1206
+ * Max width set to 7%
1207
+ *
1208
+ * @type {number|string}
1209
+ * @apioption legend.maxWidth
1210
+ */
1211
+ /**
1212
+ * Maximum pixel height for the legend. When the maximum height is
1213
+ * extended, navigation will show.
1214
+ *
1215
+ * @type {number}
1216
+ * @since 2.3.0
1217
+ * @apioption legend.maxHeight
1218
+ */
1219
+ /**
1220
+ * The color of the drawn border around the legend.
1221
+ *
1222
+ * @see In styled mode, the legend border stroke can be applied with the
1223
+ * `.highcharts-legend-box` class.
1224
+ *
1225
+ * @sample {highcharts} highcharts/legend/bordercolor/
1226
+ * Brown border
1227
+ * @sample {highstock} stock/legend/align/
1228
+ * Various legend options
1229
+ * @sample {highmaps} maps/legend/border-background/
1230
+ * Border and background options
1231
+ *
1232
+ * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
1233
+ */
1234
+ borderColor: "#999999" /* Palette.neutralColor40 */,
1235
+ /**
1236
+ * The border corner radius of the legend.
1237
+ *
1238
+ * @sample {highcharts} highcharts/legend/borderradius-default/
1239
+ * Square by default
1240
+ * @sample {highcharts} highcharts/legend/borderradius-round/
1241
+ * 5px rounded
1242
+ * @sample {highmaps} maps/legend/border-background/
1243
+ * Border and background options
1244
+ */
1245
+ borderRadius: 0,
1246
+ /**
1247
+ * Options for the paging or navigation appearing when the legend is
1248
+ * overflown. Navigation works well on screen, but not in static
1249
+ * exported images. One way of working around that is to
1250
+ * [increase the chart height in
1251
+ * export](https://jsfiddle.net/gh/get/library/pure/highcharts/highcharts/tree/master/samples/highcharts/legend/navigation-enabled-false/).
1252
+ *
1253
+ * @sample highcharts/legend/scrollable-vertical/
1254
+ * Legend with vertical scrollable extension
1255
+ * @sample highcharts/legend/scrollable-horizontal/
1256
+ * Legend with horizontal scrollable extension
1257
+ *
1258
+ */
1259
+ navigation: {
1260
+ /**
1261
+ * How to animate the pages when navigating up or down. A value of
1262
+ * `true` applies the default navigation given in the
1263
+ * `chart.animation` option. Additional options can be given as an
1264
+ * object containing values for easing and duration.
1265
+ *
1266
+ * @sample {highcharts} highcharts/legend/navigation/
1267
+ * Legend page navigation demonstrated
1268
+ * @sample {highstock} highcharts/legend/navigation/
1269
+ * Legend page navigation demonstrated
1270
+ *
1271
+ * @type {boolean|Partial<Highcharts.AnimationOptionsObject>}
1272
+ * @default true
1273
+ * @since 2.2.4
1274
+ * @apioption legend.navigation.animation
1275
+ */
1276
+ /**
1277
+ * The pixel size of the up and down arrows in the legend paging
1278
+ * navigation.
1279
+ *
1280
+ * @sample {highcharts} highcharts/legend/navigation/
1281
+ * Legend page navigation demonstrated
1282
+ * @sample {highstock} highcharts/legend/navigation/
1283
+ * Legend page navigation demonstrated
1284
+ *
1285
+ * @type {number}
1286
+ * @default 12
1287
+ * @since 2.2.4
1288
+ * @apioption legend.navigation.arrowSize
1289
+ */
1290
+ /**
1291
+ * Whether to enable the legend navigation. In most cases, disabling
1292
+ * the navigation results in an unwanted overflow.
1293
+ *
1294
+ * See also the
1295
+ * [adapt chart to legend](https://github.com/highcharts/adapt-chart-to-legend)
1296
+ * plugin for a solution to extend the chart height to make room for
1297
+ * the legend, optionally in exported charts only.
1298
+ *
1299
+ * @type {boolean}
1300
+ * @default true
1301
+ * @since 4.2.4
1302
+ * @apioption legend.navigation.enabled
1303
+ */
1304
+ /**
1305
+ * Text styles for the legend page navigation.
1306
+ *
1307
+ * @see In styled mode, the navigation items are styled with the
1308
+ * `.highcharts-legend-navigation` class.
1309
+ *
1310
+ * @sample {highcharts} highcharts/legend/navigation/
1311
+ * Legend page navigation demonstrated
1312
+ * @sample {highstock} highcharts/legend/navigation/
1313
+ * Legend page navigation demonstrated
1314
+ *
1315
+ * @type {Highcharts.CSSObject}
1316
+ * @since 2.2.4
1317
+ * @apioption legend.navigation.style
1318
+ */
1319
+ style: {
1320
+ /**
1321
+ * @type {number|string}
1322
+ */
1323
+ fontSize: '0.8em'
1324
+ },
1325
+ /**
1326
+ * The color for the active up or down arrow in the legend page
1327
+ * navigation.
1328
+ *
1329
+ * @see In styled mode, the active arrow be styled with the
1330
+ * `.highcharts-legend-nav-active` class.
1331
+ *
1332
+ * @sample {highcharts} highcharts/legend/navigation/
1333
+ * Legend page navigation demonstrated
1334
+ * @sample {highstock} highcharts/legend/navigation/
1335
+ * Legend page navigation demonstrated
1336
+ *
1337
+ * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
1338
+ * @since 2.2.4
1339
+ */
1340
+ activeColor: "#0022ff" /* Palette.highlightColor100 */,
1341
+ /**
1342
+ * The color of the inactive up or down arrow in the legend page
1343
+ * navigation. .
1344
+ *
1345
+ * @see In styled mode, the inactive arrow be styled with the
1346
+ * `.highcharts-legend-nav-inactive` class.
1347
+ *
1348
+ * @sample {highcharts} highcharts/legend/navigation/
1349
+ * Legend page navigation demonstrated
1350
+ * @sample {highstock} highcharts/legend/navigation/
1351
+ * Legend page navigation demonstrated
1352
+ *
1353
+ * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
1354
+ * @since 2.2.4
1355
+ */
1356
+ inactiveColor: "#cccccc" /* Palette.neutralColor20 */
1357
+ },
1358
+ /**
1359
+ * The inner padding of the legend box.
1360
+ *
1361
+ * @sample {highcharts|highstock} highcharts/legend/padding-itemmargin/
1362
+ * Padding and item margins demonstrated
1363
+ * @sample {highmaps} maps/legend/padding-itemmargin/
1364
+ * Padding and item margins demonstrated
1365
+ *
1366
+ * @type {number}
1367
+ * @default 8
1368
+ * @since 2.2.0
1369
+ * @apioption legend.padding
1370
+ */
1371
+ /**
1372
+ * Whether to reverse the order of the legend items compared to the
1373
+ * order of the series or points as defined in the configuration object.
1374
+ *
1375
+ * @see [yAxis.reversedStacks](#yAxis.reversedStacks),
1376
+ * [series.legendIndex](#series.legendIndex)
1377
+ *
1378
+ * @sample {highcharts} highcharts/legend/reversed/
1379
+ * Stacked bar with reversed legend
1380
+ *
1381
+ * @type {boolean}
1382
+ * @default false
1383
+ * @since 1.2.5
1384
+ * @apioption legend.reversed
1385
+ */
1386
+ /**
1387
+ * Whether to show the symbol on the right side of the text rather than
1388
+ * the left side. This is common in Arabic and Hebrew.
1389
+ *
1390
+ * @sample {highcharts} highcharts/legend/rtl/
1391
+ * Symbol to the right
1392
+ *
1393
+ * @type {boolean}
1394
+ * @default false
1395
+ * @since 2.2
1396
+ * @apioption legend.rtl
1397
+ */
1398
+ /**
1399
+ * CSS styles for the legend area. In the 1.x versions the position
1400
+ * of the legend area was determined by CSS. In 2.x, the position is
1401
+ * determined by properties like `align`, `verticalAlign`, `x` and `y`,
1402
+ * but the styles are still parsed for backwards compatibility.
1403
+ *
1404
+ * @deprecated
1405
+ *
1406
+ * @type {Highcharts.CSSObject}
1407
+ * @product highcharts highstock
1408
+ * @apioption legend.style
1409
+ */
1410
+ /**
1411
+ * CSS styles for each legend item. Only a subset of CSS is supported,
1412
+ * notably those options related to text. The default `textOverflow`
1413
+ * property makes long texts truncate. Set it to `undefined` to wrap
1414
+ * text instead. A `width` property can be added to control the text
1415
+ * width.
1416
+ *
1417
+ * @see In styled mode, the legend items can be styled with the
1418
+ * `.highcharts-legend-item` class.
1419
+ *
1420
+ * @sample {highcharts} highcharts/legend/itemstyle/
1421
+ * Bold black text
1422
+ * @sample {highmaps} maps/legend/itemstyle/
1423
+ * Item text styles
1424
+ *
1425
+ * @type {Highcharts.CSSObject}
1426
+ * @default {"color": "#333333", "cursor": "pointer", "fontSize": "0.8em", "fontWeight": "bold", "textOverflow": "ellipsis"}
1427
+ */
1428
+ itemStyle: {
1429
+ /**
1430
+ * @ignore
1431
+ */
1432
+ color: "#333333" /* Palette.neutralColor80 */,
1433
+ /**
1434
+ * @ignore
1435
+ */
1436
+ cursor: 'pointer',
1437
+ /**
1438
+ * @ignore
1439
+ */
1440
+ fontSize: '0.8em',
1441
+ /**
1442
+ * @ignore
1443
+ */
1444
+ textDecoration: 'none',
1445
+ /**
1446
+ * @ignore
1447
+ */
1448
+ textOverflow: 'ellipsis'
1449
+ },
1450
+ /**
1451
+ * CSS styles for each legend item in hover mode. Only a subset of
1452
+ * CSS is supported, notably those options related to text. Properties
1453
+ * are inherited from `style` unless overridden here.
1454
+ *
1455
+ * @see In styled mode, the hovered legend items can be styled with
1456
+ * the `.highcharts-legend-item:hover` pseudo-class.
1457
+ *
1458
+ * @sample {highcharts} highcharts/legend/itemhoverstyle/
1459
+ * Red on hover
1460
+ * @sample {highmaps} maps/legend/itemstyle/
1461
+ * Item text styles
1462
+ *
1463
+ * @type {Highcharts.CSSObject}
1464
+ * @default {"color": "#000000"}
1465
+ */
1466
+ itemHoverStyle: {
1467
+ /**
1468
+ * @ignore
1469
+ */
1470
+ color: "#000000" /* Palette.neutralColor100 */
1471
+ },
1472
+ /**
1473
+ * CSS styles for each legend item when the corresponding series or
1474
+ * point is hidden. Only a subset of CSS is supported, notably those
1475
+ * options related to text. Properties are inherited from `style`
1476
+ * unless overridden here.
1477
+ *
1478
+ * @see In styled mode, the hidden legend items can be styled with
1479
+ * the `.highcharts-legend-item-hidden` class.
1480
+ *
1481
+ * @sample {highcharts} highcharts/legend/itemhiddenstyle/
1482
+ * Darker gray color
1483
+ *
1484
+ * @type {Highcharts.CSSObject}
1485
+ * @default {"color": "#cccccc"}
1486
+ */
1487
+ itemHiddenStyle: {
1488
+ /**
1489
+ * @ignore
1490
+ */
1491
+ color: "#666666" /* Palette.neutralColor60 */,
1492
+ /**
1493
+ * @ignore
1494
+ */
1495
+ textDecoration: 'line-through'
1496
+ },
1497
+ /**
1498
+ * Whether to apply a drop shadow to the legend. A `backgroundColor`
1499
+ * also needs to be applied for this to take effect. The shadow can be
1500
+ * an object configuration containing `color`, `offsetX`, `offsetY`,
1501
+ * `opacity` and `width`.
1502
+ *
1503
+ * @sample {highcharts} highcharts/legend/shadow/
1504
+ * White background and drop shadow
1505
+ * @sample {highstock} stock/legend/align/
1506
+ * Various legend options
1507
+ * @sample {highmaps} maps/legend/border-background/
1508
+ * Border and background options
1509
+ *
1510
+ * @type {boolean|Highcharts.CSSObject}
1511
+ */
1512
+ shadow: false,
1513
+ /**
1514
+ * Default styling for the checkbox next to a legend item when
1515
+ * `showCheckbox` is true.
1516
+ *
1517
+ * @type {Highcharts.CSSObject}
1518
+ * @default {"width": "13px", "height": "13px", "position":"absolute"}
1519
+ */
1520
+ itemCheckboxStyle: {
1521
+ /**
1522
+ * @ignore
1523
+ */
1524
+ position: 'absolute',
1525
+ /**
1526
+ * @ignore
1527
+ */
1528
+ width: '13px', // For IE precision
1529
+ /**
1530
+ * @ignore
1531
+ */
1532
+ height: '13px'
1533
+ },
1534
+ /// itemWidth: undefined,
1535
+ /**
1536
+ * When this is true, the legend symbol width will be the same as
1537
+ * the symbol height, which in turn defaults to the font size of the
1538
+ * legend items.
1539
+ *
1540
+ * @since 5.0.0
1541
+ */
1542
+ squareSymbol: true,
1543
+ /**
1544
+ * The pixel height of the symbol for series types that use a rectangle
1545
+ * in the legend. Defaults to the font size of legend items.
1546
+ *
1547
+ * Note: This option is a default source of color axis height, if the
1548
+ * [colorAxis.height](https://api.highcharts.com/highcharts/colorAxis.height)
1549
+ * option is not set.
1550
+ *
1551
+ * @productdesc {highmaps}
1552
+ * In Highmaps, when the symbol is the gradient of a vertical color
1553
+ * axis, the height defaults to 200.
1554
+ *
1555
+ * @sample {highmaps} maps/legend/layout-vertical-sized/
1556
+ * Sized vertical gradient
1557
+ * @sample {highmaps} maps/legend/padding-itemmargin/
1558
+ * No distance between data classes
1559
+ *
1560
+ * @type {number}
1561
+ * @since 3.0.8
1562
+ * @apioption legend.symbolHeight
1563
+ */
1564
+ /**
1565
+ * The border radius of the symbol for series types that use a rectangle
1566
+ * in the legend. Defaults to half the `symbolHeight`, effectively
1567
+ * creating a circle.
1568
+ *
1569
+ * For color axis scales, it defaults to 3.
1570
+ *
1571
+ * @sample {highcharts} highcharts/legend/symbolradius/
1572
+ * Round symbols
1573
+ * @sample {highstock} highcharts/legend/symbolradius/
1574
+ * Round symbols
1575
+ * @sample {highmaps} highcharts/legend/symbolradius/
1576
+ * Round symbols
1577
+ *
1578
+ * @type {number}
1579
+ * @since 3.0.8
1580
+ * @apioption legend.symbolRadius
1581
+ */
1582
+ /**
1583
+ * The pixel width of the legend item symbol. When the `squareSymbol`
1584
+ * option is set, this defaults to the `symbolHeight`, otherwise 16.
1585
+ *
1586
+ * Note: This option is a default source of color axis width, if the
1587
+ * [colorAxis.width](https://api.highcharts.com/highcharts/colorAxis.width)
1588
+ * option is not set.
1589
+ *
1590
+ * @productdesc {highmaps}
1591
+ * In Highmaps, when the symbol is the gradient of a horizontal color
1592
+ * axis, the width defaults to 200.
1593
+ *
1594
+ * @sample {highcharts} highcharts/legend/symbolwidth/
1595
+ * Greater symbol width and padding
1596
+ * @sample {highmaps} maps/legend/padding-itemmargin/
1597
+ * Padding and item margins demonstrated
1598
+ * @sample {highmaps} maps/legend/layout-vertical-sized/
1599
+ * Sized vertical gradient
1600
+ *
1601
+ * @type {number}
1602
+ * @apioption legend.symbolWidth
1603
+ */
1604
+ /**
1605
+ * Whether to [use HTML](https://www.highcharts.com/docs/chart-concepts/labels-and-string-formatting#html)
1606
+ * to render the legend item texts.
1607
+ *
1608
+ * Prior to 4.1.7, when using HTML, [legend.navigation](
1609
+ * #legend.navigation) was disabled.
1610
+ *
1611
+ * @sample highcharts/legend/scrollable-vertical/
1612
+ * Legend with vertical scrollable extension
1613
+ * @sample highcharts/legend/scrollable-horizontal/
1614
+ * Legend with horizontal scrollable extension
1615
+ *
1616
+ * @type {boolean}
1617
+ * @default false
1618
+ * @apioption legend.useHTML
1619
+ */
1620
+ /**
1621
+ * For a color axis with data classes, how many decimals to render in
1622
+ * the legend. The default preserves the decimals of the range numbers.
1623
+ *
1624
+ * @type {number}
1625
+ * @default -1
1626
+ * @product highcharts highmaps
1627
+ * @apioption legend.valueDecimals
1628
+ */
1629
+ /**
1630
+ * For a color axis with data classes, a suffix for the range numbers in
1631
+ * the legend.
1632
+ *
1633
+ * @type {string}
1634
+ * @default ''
1635
+ * @product highcharts highmaps
1636
+ * @apioption legend.valueSuffix
1637
+ */
1638
+ /**
1639
+ * The width of the legend box. If a number is set, it translates to
1640
+ * pixels. Since v7.0.2 it allows setting a percent string of the full
1641
+ * chart width, for example `40%`.
1642
+ *
1643
+ * Defaults to the full chart width for legends below or above the
1644
+ * chart, half the chart width for legends to the left and right.
1645
+ *
1646
+ * @sample {highcharts} highcharts/legend/width/
1647
+ * Aligned to the plot area
1648
+ * @sample {highcharts} highcharts/legend/width-percent/
1649
+ * A percent of the chart width
1650
+ *
1651
+ * @type {number|string}
1652
+ * @since 2.0
1653
+ * @apioption legend.width
1654
+ */
1655
+ /**
1656
+ * The pixel padding between the legend item symbol and the legend
1657
+ * item text.
1658
+ *
1659
+ * @sample {highcharts} highcharts/legend/symbolpadding/
1660
+ * Greater symbol width and padding
1661
+ */
1662
+ symbolPadding: 5,
1663
+ /**
1664
+ * The vertical alignment of the legend box. Can be one of `top`,
1665
+ * `middle` or `bottom`. Vertical position can be further determined
1666
+ * by the `y` option.
1667
+ *
1668
+ * In the case that the legend is aligned in a corner position, the
1669
+ * `layout` option will determine whether to place it above/below
1670
+ * or on the side of the plot area.
1671
+ *
1672
+ * When the [layout](#legend.layout) option is `proximate`, the
1673
+ * `verticalAlign` option doesn't apply.
1674
+ *
1675
+ * @sample {highcharts} highcharts/legend/verticalalign/
1676
+ * Legend 100px from the top of the chart
1677
+ * @sample {highstock} stock/legend/align/
1678
+ * Various legend options
1679
+ * @sample {highmaps} maps/legend/alignment/
1680
+ * Legend alignment
1681
+ *
1682
+ * @type {Highcharts.VerticalAlignValue}
1683
+ * @since 2.0
1684
+ */
1685
+ verticalAlign: 'bottom',
1686
+ // Width: undefined,
1687
+ /**
1688
+ * The x offset of the legend relative to its horizontal alignment
1689
+ * `align` within chart.spacingLeft and chart.spacingRight. Negative
1690
+ * x moves it to the left, positive x moves it to the right.
1691
+ *
1692
+ * @sample {highcharts} highcharts/legend/width/
1693
+ * Aligned to the plot area
1694
+ *
1695
+ * @since 2.0
1696
+ */
1697
+ x: 0,
1698
+ /**
1699
+ * The vertical offset of the legend relative to it's vertical alignment
1700
+ * `verticalAlign` within chart.spacingTop and chart.spacingBottom.
1701
+ * Negative y moves it up, positive y moves it down.
1702
+ *
1703
+ * @sample {highcharts} highcharts/legend/verticalalign/
1704
+ * Legend 100px from the top of the chart
1705
+ * @sample {highstock} stock/legend/align/
1706
+ * Various legend options
1707
+ * @sample {highmaps} maps/legend/alignment/
1708
+ * Legend alignment
1709
+ *
1710
+ * @since 2.0
1711
+ */
1712
+ y: 0,
1713
+ /**
1714
+ * A title to be added on top of the legend.
1715
+ *
1716
+ * @sample {highcharts} highcharts/legend/title/
1717
+ * Legend title
1718
+ * @sample {highmaps} maps/legend/alignment/
1719
+ * Legend with title
1720
+ *
1721
+ * @since 3.0
1722
+ */
1723
+ title: {
1724
+ /**
1725
+ * A text or HTML string for the title.
1726
+ *
1727
+ * @type {string}
1728
+ * @since 3.0
1729
+ * @apioption legend.title.text
1730
+ */
1731
+ /**
1732
+ * Generic CSS styles for the legend title.
1733
+ *
1734
+ * @see In styled mode, the legend title is styled with the
1735
+ * `.highcharts-legend-title` class.
1736
+ *
1737
+ * @type {Highcharts.CSSObject}
1738
+ * @default {"fontSize": "0.8em", "fontWeight": "bold"}
1739
+ * @since 3.0
1740
+ */
1741
+ style: {
1742
+ /**
1743
+ * @ignore
1744
+ */
1745
+ color: "#333333" /* Palette.neutralColor80 */,
1746
+ /**
1747
+ * @ignore
1748
+ */
1749
+ fontSize: '0.8em',
1750
+ /**
1751
+ * @ignore
1752
+ */
1753
+ fontWeight: 'bold'
1754
+ }
1755
+ }
1756
+ },
1757
+ /**
1758
+ * The loading options control the appearance of the loading screen
1759
+ * that covers the plot area on chart operations. This screen only
1760
+ * appears after an explicit call to `chart.showLoading()`. It is a
1761
+ * utility for developers to communicate to the end user that something
1762
+ * is going on, for example while retrieving new data via an XHR connection.
1763
+ * The "Loading..." text itself is not part of this configuration
1764
+ * object, but part of the `lang` object.
1765
+ */
1766
+ loading: {
1767
+ /**
1768
+ * The duration in milliseconds of the fade out effect.
1769
+ *
1770
+ * @sample highcharts/loading/hideduration/
1771
+ * Fade in and out over a second
1772
+ *
1773
+ * @type {number}
1774
+ * @default 100
1775
+ * @since 1.2.0
1776
+ * @apioption loading.hideDuration
1777
+ */
1778
+ /**
1779
+ * The duration in milliseconds of the fade in effect.
1780
+ *
1781
+ * @sample highcharts/loading/hideduration/
1782
+ * Fade in and out over a second
1783
+ *
1784
+ * @type {number}
1785
+ * @default 100
1786
+ * @since 1.2.0
1787
+ * @apioption loading.showDuration
1788
+ */
1789
+ /**
1790
+ * CSS styles for the loading label `span`.
1791
+ *
1792
+ * @see In styled mode, the loading label is styled with the
1793
+ * `.highcharts-loading-inner` class.
1794
+ *
1795
+ * @sample {highcharts|highmaps} highcharts/loading/labelstyle/
1796
+ * Vertically centered
1797
+ * @sample {highstock} stock/loading/general/
1798
+ * Label styles
1799
+ *
1800
+ * @type {Highcharts.CSSObject}
1801
+ * @default {"fontWeight": "bold", "position": "relative", "top": "45%"}
1802
+ * @since 1.2.0
1803
+ */
1804
+ labelStyle: {
1805
+ /**
1806
+ * @ignore
1807
+ */
1808
+ fontWeight: 'bold',
1809
+ /**
1810
+ * @ignore
1811
+ */
1812
+ position: 'relative',
1813
+ /**
1814
+ * @ignore
1815
+ */
1816
+ top: '45%'
1817
+ },
1818
+ /**
1819
+ * CSS styles for the loading screen that covers the plot area.
1820
+ *
1821
+ * In styled mode, the loading label is styled with the
1822
+ * `.highcharts-loading` class.
1823
+ *
1824
+ * @sample {highcharts|highmaps} highcharts/loading/style/
1825
+ * Gray plot area, white text
1826
+ * @sample {highstock} stock/loading/general/
1827
+ * Gray plot area, white text
1828
+ *
1829
+ * @type {Highcharts.CSSObject}
1830
+ * @default {"position": "absolute", "backgroundColor": "#ffffff", "opacity": 0.5, "textAlign": "center"}
1831
+ * @since 1.2.0
1832
+ */
1833
+ style: {
1834
+ /**
1835
+ * @ignore
1836
+ */
1837
+ position: 'absolute',
1838
+ /**
1839
+ * @ignore
1840
+ */
1841
+ backgroundColor: "#ffffff" /* Palette.backgroundColor */,
1842
+ /**
1843
+ * @ignore
1844
+ */
1845
+ opacity: 0.5,
1846
+ /**
1847
+ * @ignore
1848
+ */
1849
+ textAlign: 'center'
1850
+ }
1851
+ },
1852
+ /**
1853
+ * Options for the tooltip that appears when the user hovers over a
1854
+ * series or point.
1855
+ *
1856
+ * @declare Highcharts.TooltipOptions
1857
+ */
1858
+ tooltip: {
1859
+ /**
1860
+ * The color of the tooltip border. When `undefined`, the border takes
1861
+ * the color of the corresponding series or point.
1862
+ *
1863
+ * Note that the [borderWidth](#tooltip.borderWidth) is usually 0 by
1864
+ * default, so the border color may not be visible until a border width
1865
+ * is set.
1866
+ *
1867
+ * @sample {highcharts} highcharts/tooltip/bordercolor-default/ Follow
1868
+ * series by default
1869
+ * @sample {highcharts} highcharts/tooltip/bordercolor-black/ Black
1870
+ * border
1871
+ * @sample {highstock} stock/tooltip/general/ Styled tooltip
1872
+ * @sample {highmaps} maps/tooltip/background-border/ Background and
1873
+ * border demo
1874
+ *
1875
+ * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
1876
+ * @apioption tooltip.borderColor
1877
+ */
1878
+ /**
1879
+ * A CSS class name to apply to the tooltip's container div,
1880
+ * allowing unique CSS styling for each chart.
1881
+ *
1882
+ * @type {string}
1883
+ * @apioption tooltip.className
1884
+ */
1885
+ /**
1886
+ * Since 4.1, the crosshair definitions are moved to the Axis object
1887
+ * in order for a better separation from the tooltip. See
1888
+ * [xAxis.crosshair](#xAxis.crosshair).
1889
+ *
1890
+ * @sample {highcharts} highcharts/tooltip/crosshairs-x/
1891
+ * Enable a crosshair for the x value
1892
+ *
1893
+ * @deprecated
1894
+ *
1895
+ * @type {*}
1896
+ * @default true
1897
+ * @apioption tooltip.crosshairs
1898
+ */
1899
+ /**
1900
+ * Distance from point to tooltip in pixels.
1901
+ *
1902
+ * @type {number}
1903
+ * @default 16
1904
+ * @apioption tooltip.distance
1905
+ */
1906
+ /**
1907
+ * Whether the tooltip should be fixed to one position in the chart, or
1908
+ * located next to the point or mouse. When the tooltip is fixed, the
1909
+ * position can be further specified with the
1910
+ * [tooltip.position](#tooltip.position) options set.
1911
+ *
1912
+ * @sample highcharts/tooltip/fixed/
1913
+ * Fixed tooltip and position options
1914
+ * @sample {highstock} stock/tooltip/fixed/
1915
+ * Stock chart with fixed tooltip
1916
+ * @sample {highmaps} maps/tooltip/fixed/
1917
+ * Map with fixed tooltip
1918
+ *
1919
+ * @type {boolean}
1920
+ * @default false
1921
+ * @since 12.2.0
1922
+ * @apioption tooltip.fixed
1923
+ */
1924
+ /**
1925
+ * Whether the tooltip should follow the mouse as it moves across
1926
+ * columns, pie slices and other point types with an extent.
1927
+ * By default it behaves this way for pie, polygon, map, sankey
1928
+ * and wordcloud series by override in the `plotOptions`
1929
+ * for those series types.
1930
+ *
1931
+ * Does not apply if [split](#tooltip.split) is `true`.
1932
+ *
1933
+ * For touch moves to behave the same way, [followTouchMove](
1934
+ * #tooltip.followTouchMove) must be `true` also.
1935
+ *
1936
+ * @sample highcharts/tooltip/followpointer/
1937
+ * Tooltip follow pointer comparison
1938
+ *
1939
+ * @type {boolean}
1940
+ * @default {highcharts} false
1941
+ * @default {highstock} false
1942
+ * @default {highmaps} true
1943
+ * @since 3.0
1944
+ * @apioption tooltip.followPointer
1945
+ */
1946
+ /**
1947
+ * Whether the tooltip should update as the finger moves on a touch
1948
+ * device. If this is `true` and [chart.panning](#chart.panning) is
1949
+ * set,`followTouchMove` will take over one-finger touches, so the user
1950
+ * needs to use two fingers for zooming and panning.
1951
+ *
1952
+ * Note the difference to [followPointer](#tooltip.followPointer) that
1953
+ * only defines the _position_ of the tooltip. If `followPointer` is
1954
+ * false in for example a column series, the tooltip will show above or
1955
+ * below the column, but as `followTouchMove` is true, the tooltip will
1956
+ * jump from column to column as the user swipes across the plot area.
1957
+ *
1958
+ * @type {boolean}
1959
+ * @default {highcharts} true
1960
+ * @default {highstock} true
1961
+ * @default {highmaps} false
1962
+ * @since 3.0.1
1963
+ * @apioption tooltip.followTouchMove
1964
+ */
1965
+ /**
1966
+ * A [format string](https://www.highcharts.com/docs/chart-concepts/labels-and-string-formatting)
1967
+ * for the whole shared tooltip. When format strings are a requirement,
1968
+ * it is usually more convenient to use `headerFormat`, `pointFormat`
1969
+ * and `footerFormat`, but the `format` option allows combining them
1970
+ * into one setting.
1971
+ *
1972
+ * The context of the format string is the same as that of the
1973
+ * `tooltip.formatter` callback.
1974
+ *
1975
+ * @sample {highcharts} highcharts/tooltip/format-shared/
1976
+ * Format for shared tooltip
1977
+ *
1978
+ * @type {string}
1979
+ * @default undefined
1980
+ * @since 11.1.0
1981
+ * @apioption tooltip.format
1982
+ */
1983
+ /**
1984
+ * Callback function to format the text of the tooltip from scratch. In
1985
+ * case of single or [shared](#tooltip.shared) tooltips, a string should
1986
+ * be returned. In case of [split](#tooltip.split) tooltips, it should
1987
+ * return an array where the first item is the header, and subsequent
1988
+ * items are mapped to the points. Return `false` to disable tooltip for
1989
+ * a specific point on series.
1990
+ *
1991
+ * A subset of HTML is supported. Unless `useHTML` is true, the HTML of
1992
+ * the tooltip is parsed and converted to SVG, therefore this isn't a
1993
+ * complete HTML renderer. The following HTML tags are supported: `b`,
1994
+ * `br`, `em`, `i`, `span`, `strong`. Spans can be styled with a `style`
1995
+ * attribute, but only text-related CSS, that is shared with SVG, is
1996
+ * handled.
1997
+ *
1998
+ * The context of the formatter (since v12) is the
1999
+ * [Point](https://api.highcharts.com/class-reference/Highcharts.Point)
2000
+ * instance. If the tooltip is shared or split, an array `this.points`
2001
+ * contains all points of the hovered x-value.
2002
+ *
2003
+ * Common properties from the Point to use in the formatter include:
2004
+ *
2005
+ * - **Point.percentage**:
2006
+ * Stacked series and pies only. The point's percentage of the total.
2007
+ *
2008
+ * - **Point.points**:
2009
+ * In a shared or split tooltip, this is an array containing all the
2010
+ * hovered points.
2011
+ *
2012
+ * - **this.series**:
2013
+ * The series object. The series name is available through
2014
+ * `this.series.name`.
2015
+ *
2016
+ * - **this.total**:
2017
+ * The total value at this point's x value in a stacked series, or the
2018
+ * sum of all slices in a pie series.
2019
+ *
2020
+ * - **this.x**:
2021
+ * The x value.
2022
+ *
2023
+ * - **this.y**:
2024
+ * The y value.
2025
+ *
2026
+ * @sample {highcharts} highcharts/tooltip/formatter-simple/
2027
+ * Simple string formatting
2028
+ * @sample {highcharts} highcharts/tooltip/formatter-shared/
2029
+ * Formatting with shared tooltip
2030
+ * @sample {highcharts|highstock} highcharts/tooltip/formatter-split/
2031
+ * Formatting with split tooltip
2032
+ * @sample highcharts/tooltip/formatter-conditional-default/
2033
+ * Extending default formatter
2034
+ * @sample {highstock} stock/tooltip/formatter/
2035
+ * Formatting with shared tooltip
2036
+ * @sample {highmaps} maps/tooltip/formatter/
2037
+ * String formatting
2038
+ *
2039
+ * @type {Highcharts.TooltipFormatterCallbackFunction}
2040
+ * @apioption tooltip.formatter
2041
+ */
2042
+ /**
2043
+ * Callback function to format the text of the tooltip for
2044
+ * visible null points.
2045
+ * Works analogously to [formatter](#tooltip.formatter).
2046
+ *
2047
+ * @sample highcharts/plotoptions/series-nullformat
2048
+ * Format data label and tooltip for null point.
2049
+ *
2050
+ * @type {Highcharts.TooltipFormatterCallbackFunction}
2051
+ * @apioption tooltip.nullFormatter
2052
+ */
2053
+ /**
2054
+ * Whether to allow the tooltip to render outside the chart's SVG
2055
+ * element box. By default (`false`), the tooltip is rendered within the
2056
+ * chart's SVG element, which results in the tooltip being aligned
2057
+ * inside the chart area. For small charts, this may result in clipping
2058
+ * or overlapping. When `true`, a separate SVG element is created and
2059
+ * overlaid on the page, allowing the tooltip to be aligned inside the
2060
+ * page itself. Beware that with this option active, CSS classes on the
2061
+ * chart's target container, with classnames matching the pattern
2062
+ * 'highcharts-*', will be set on the tooltip as well. This is done to
2063
+ * support theming for tooltips with this option.
2064
+ *
2065
+ * Defaults to `true` if `chart.scrollablePlotArea` is activated,
2066
+ * otherwise `false`.
2067
+ *
2068
+ * @sample highcharts/tooltip/outside
2069
+ * Small charts with tooltips outside
2070
+ *
2071
+ * @type {boolean|undefined}
2072
+ * @default undefined
2073
+ * @since 6.1.1
2074
+ * @apioption tooltip.outside
2075
+ */
2076
+ /**
2077
+ * A callback function for formatting the HTML output for a single point
2078
+ * in the tooltip. Like the `pointFormat` string, but with more
2079
+ * flexibility.
2080
+ *
2081
+ * @type {Highcharts.FormatterCallbackFunction<Highcharts.Point>}
2082
+ * @since 4.1.0
2083
+ * @context Highcharts.Point
2084
+ * @apioption tooltip.pointFormatter
2085
+ */
2086
+ /**
2087
+ * A callback function to place the tooltip in a custom position. The
2088
+ * callback receives three parameters: `labelWidth`, `labelHeight` and
2089
+ * `point`, where point contains values for `plotX` and `plotY` telling
2090
+ * where the reference point is in the plot area. Add `chart.plotLeft`
2091
+ * and `chart.plotTop` to get the full coordinates.
2092
+ *
2093
+ * To find the actual hovered `Point` instance, use
2094
+ * `this.chart.hoverPoint`. For shared or split tooltips, all the hover
2095
+ * points are available in `this.chart.hoverPoints`.
2096
+ *
2097
+ * Since v7, when [tooltip.split](#tooltip.split) option is enabled,
2098
+ * positioner is called for each of the boxes separately, including
2099
+ * xAxis header. xAxis header is not a point, instead `point` argument
2100
+ * contains info: `{ plotX: Number, plotY: Number, isHeader: Boolean }`
2101
+ *
2102
+ * Since v12.2, the [tooltip.fixed](#tooltip.fixed) option combined with
2103
+ * [tooltip.position](#tooltip.position) covers most of the use cases
2104
+ * for custom tooltip positioning.
2105
+ *
2106
+ * The return should be an object containing x and y values, for example
2107
+ * `{ x: 100, y: 100 }`.
2108
+ *
2109
+ * @sample {highcharts} highcharts/tooltip/positioner/
2110
+ * A fixed tooltip position
2111
+ * @sample {highstock} stock/tooltip/positioner/
2112
+ * A fixed tooltip position on top of the chart
2113
+ * @sample {highmaps} maps/tooltip/positioner/
2114
+ * A fixed tooltip position
2115
+ * @sample {highstock} stock/tooltip/split-positioner/
2116
+ * Split tooltip with fixed positions
2117
+ * @sample {highstock} stock/tooltip/positioner-scrollable-plotarea/
2118
+ * Scrollable plot area combined with tooltip positioner
2119
+ *
2120
+ * @see [position](#tooltip.position)
2121
+ *
2122
+ * @type {Highcharts.TooltipPositionerCallbackFunction}
2123
+ * @since 2.2.4
2124
+ * @apioption tooltip.positioner
2125
+ */
2126
+ /**
2127
+ * Shows tooltip for all points with the same X value. Splits the
2128
+ * tooltip into one label per series, with the header close to the axis.
2129
+ * This is recommended over [shared](#tooltip.shared)
2130
+ * tooltips for charts with multiple line series, generally making them
2131
+ * easier to read. This option takes precedence over `tooltip.shared`.
2132
+ *
2133
+ * Not supported for [polar](#chart.polar) and [inverted](#chart.inverted) charts.
2134
+ *
2135
+ * @productdesc {highstock} In Highcharts Stock, tooltips are split
2136
+ * by default since v6.0.0. Stock charts typically contain
2137
+ * multi-dimension points and multiple panes, making split tooltips
2138
+ * the preferred layout over
2139
+ * the previous `shared` tooltip.
2140
+ *
2141
+ * @sample highcharts/tooltip/split/
2142
+ * Split tooltip
2143
+ * @sample {highcharts|highstock} highcharts/tooltip/formatter-split/
2144
+ * Split tooltip and custom formatter callback
2145
+ *
2146
+ * @type {boolean}
2147
+ * @default {highcharts} false
2148
+ * @default {highstock} true
2149
+ * @since 5.0.0
2150
+ * @product highcharts highstock
2151
+ * @apioption tooltip.split
2152
+ */
2153
+ /**
2154
+ * Prevents the tooltip from switching or closing, when touched or
2155
+ * pointed.
2156
+ *
2157
+ * @sample highcharts/tooltip/stickoncontact/
2158
+ * Tooltip sticks on pointer contact
2159
+ *
2160
+ * @type {boolean}
2161
+ * @since 8.0.1
2162
+ * @apioption tooltip.stickOnContact
2163
+ */
2164
+ /**
2165
+ * Use HTML to render the contents of the tooltip instead of SVG. Using
2166
+ * HTML allows advanced formatting like tables and images in the
2167
+ * tooltip. It is also recommended for rtl languages as it works around
2168
+ * rtl bugs in early Firefox.
2169
+ *
2170
+ * @sample {highcharts|highstock} highcharts/tooltip/footerformat/
2171
+ * A table for value alignment
2172
+ * @sample {highcharts|highstock} highcharts/tooltip/fullhtml/
2173
+ * Full HTML tooltip
2174
+ * @sample {highmaps} maps/tooltip/usehtml/
2175
+ * Pure HTML tooltip
2176
+ *
2177
+ * @type {boolean}
2178
+ * @default false
2179
+ * @since 2.2
2180
+ * @apioption tooltip.useHTML
2181
+ */
2182
+ /**
2183
+ * How many decimals to show in each series' y value. This is
2184
+ * overridable in each series' tooltip options object. The default is to
2185
+ * preserve all decimals.
2186
+ *
2187
+ * @sample {highcharts|highstock} highcharts/tooltip/valuedecimals/
2188
+ * Set decimals, prefix and suffix for the value
2189
+ * @sample {highmaps} maps/tooltip/valuedecimals/
2190
+ * Set decimals, prefix and suffix for the value
2191
+ *
2192
+ * @type {number|undefined}
2193
+ * @since 2.2
2194
+ * @apioption tooltip.valueDecimals
2195
+ */
2196
+ /**
2197
+ * A string to prepend to each series' y value. Overridable in each
2198
+ * series' tooltip options object.
2199
+ *
2200
+ * @sample {highcharts|highstock} highcharts/tooltip/valuedecimals/
2201
+ * Set decimals, prefix and suffix for the value
2202
+ * @sample {highmaps} maps/tooltip/valuedecimals/
2203
+ * Set decimals, prefix and suffix for the value
2204
+ *
2205
+ * @type {string}
2206
+ * @since 2.2
2207
+ * @apioption tooltip.valuePrefix
2208
+ */
2209
+ /**
2210
+ * A string to append to each series' y value. Overridable in each
2211
+ * series' tooltip options object.
2212
+ *
2213
+ * @sample {highcharts|highstock} highcharts/tooltip/valuedecimals/
2214
+ * Set decimals, prefix and suffix for the value
2215
+ * @sample {highmaps} maps/tooltip/valuedecimals/
2216
+ * Set decimals, prefix and suffix for the value
2217
+ *
2218
+ * @type {string}
2219
+ * @since 2.2
2220
+ * @apioption tooltip.valueSuffix
2221
+ */
2222
+ /**
2223
+ * The format for the date in the tooltip header if the X axis is a
2224
+ * datetime axis. The default is a best guess based on the smallest
2225
+ * distance between points in the chart.
2226
+ *
2227
+ * @sample {highcharts} highcharts/tooltip/xdateformat/
2228
+ * A different format
2229
+ *
2230
+ * @type {string|Highcharts.DateTimeFormatOptions}
2231
+ * @product highcharts highstock gantt
2232
+ * @apioption tooltip.xDateFormat
2233
+ */
2234
+ /**
2235
+ * How many decimals to show for the `point.change`
2236
+ * or the `point.cumulativeSum` value when the `series.compare`
2237
+ * or the `series.cumulative` option is set.
2238
+ * This is overridable in each series' tooltip options object.
2239
+ *
2240
+ * @type {number}
2241
+ * @default 2
2242
+ * @since 1.0.1
2243
+ * @product highstock
2244
+ * @apioption tooltip.changeDecimals
2245
+ */
2246
+ /**
2247
+ * Enable or disable the tooltip.
2248
+ *
2249
+ * @sample {highcharts} highcharts/tooltip/enabled/
2250
+ * Disabled
2251
+ * @sample {highcharts} highcharts/plotoptions/series-point-events-mouseover/
2252
+ * Disable tooltip and show values on chart instead
2253
+ */
2254
+ enabled: true,
2255
+ /**
2256
+ * Enable or disable animation of the tooltip.
2257
+ *
2258
+ * @type {boolean|Partial<Highcharts.AnimationOptionsObject>}
2259
+ * @since 2.3.0
2260
+ */
2261
+ animation: {
2262
+ duration: 300,
2263
+ // EaseOutCirc
2264
+ easing: (x) => Math.sqrt(1 - Math.pow(x - 1, 2))
2265
+ },
2266
+ /**
2267
+ * The radius of the rounded border corners.
2268
+ *
2269
+ * @sample {highcharts} highcharts/tooltip/bordercolor-default/
2270
+ * Default border radius
2271
+ * @sample {highcharts} highcharts/tooltip/borderradius-0/
2272
+ * Square borders
2273
+ * @sample {highmaps} maps/tooltip/background-border/
2274
+ * Background and border demo
2275
+ */
2276
+ borderRadius: 3,
2277
+ /**
2278
+ * For series on datetime axes, the date format in the tooltip's
2279
+ * header will by default be guessed based on the closest data points.
2280
+ * This member gives the default string representations used for
2281
+ * each unit. For an overview of the string or object configuration, see
2282
+ * [dateFormat](/class-reference/Highcharts.Time#dateFormat).
2283
+ *
2284
+ * @see [xAxis.dateTimeLabelFormats](#xAxis.dateTimeLabelFormats)
2285
+ *
2286
+ * @type {Highcharts.Dictionary<string|Highcharts.DateTimeFormatOptions>}
2287
+ * @product highcharts highstock gantt
2288
+ */
2289
+ dateTimeLabelFormats: {
2290
+ /** @internal */
2291
+ millisecond: '%[AebHMSL]',
2292
+ /** @internal */
2293
+ second: '%[AebHMS]',
2294
+ /** @internal */
2295
+ minute: '%[AebHM]',
2296
+ /** @internal */
2297
+ hour: '%[AebHM]',
2298
+ /** @internal */
2299
+ day: '%[AebY]',
2300
+ /** @internal */
2301
+ week: '%v %[AebY]',
2302
+ /** @internal */
2303
+ month: '%[BY]',
2304
+ /** @internal */
2305
+ year: '%Y'
2306
+ },
2307
+ /**
2308
+ * A string to append to the tooltip format.
2309
+ *
2310
+ * @sample {highcharts} highcharts/tooltip/footerformat/
2311
+ * A table for value alignment
2312
+ * @sample {highmaps} maps/tooltip/format/
2313
+ * Format demo
2314
+ *
2315
+ * @since 2.2
2316
+ */
2317
+ footerFormat: '',
2318
+ /**
2319
+ * The name of a symbol to use for the border around the tooltip
2320
+ * header. Applies only when [tooltip.split](#tooltip.split) is
2321
+ * enabled.
2322
+ *
2323
+ * Custom callbacks for symbol path generation can also be added to
2324
+ * `Highcharts.SVGRenderer.prototype.symbols` the same way as for
2325
+ * [series.marker.symbol](plotOptions.line.marker.symbol).
2326
+ *
2327
+ * @see [tooltip.shape](#tooltip.shape)
2328
+ *
2329
+ * @sample {highstock} stock/tooltip/split-positioner/
2330
+ * Different shapes for header and split boxes
2331
+ *
2332
+ * @type {Highcharts.TooltipShapeValue}
2333
+ * @validvalue ["callout", "rect"]
2334
+ * @since 7.0
2335
+ */
2336
+ headerShape: 'callout',
2337
+ /**
2338
+ * The number of milliseconds to wait until the tooltip is hidden when
2339
+ * mouse out from a point or chart.
2340
+ *
2341
+ * @since 3.0
2342
+ */
2343
+ hideDelay: 500,
2344
+ /**
2345
+ * Padding inside the tooltip, in pixels.
2346
+ *
2347
+ * @since 5.0.0
2348
+ */
2349
+ padding: 8,
2350
+ /**
2351
+ * Positioning options for fixed tooltip, taking effect only when
2352
+ * [tooltip.fixed](#tooltip.fixed) is `true`.
2353
+ *
2354
+ * @sample {highcharts} highcharts/tooltip/fixed/
2355
+ * Fixed tooltip and position options
2356
+ * @sample {highstock} stock/tooltip/fixed/
2357
+ * Stock chart with fixed tooltip
2358
+ * @sample {highmaps} maps/tooltip/fixed/
2359
+ * Map with fixed tooltip
2360
+ *
2361
+ * @since 12.2.0
2362
+ */
2363
+ position: {
2364
+ /**
2365
+ * The horizontal alignment of the fixed tooltip.
2366
+ *
2367
+ * @sample highcharts/tooltip/fixed/
2368
+ * Fixed tooltip
2369
+ * @sample {highstock} stock/tooltip/fixed/
2370
+ * Stock chart with fixed tooltip
2371
+ *
2372
+ * @type {Highcharts.AlignValue}
2373
+ * @default left
2374
+ * @apioption tooltip.position.align
2375
+ */
2376
+ /**
2377
+ * The vertical alignment of the fixed tooltip.
2378
+ *
2379
+ * @sample highcharts/tooltip/fixed/
2380
+ * Fixed tooltip
2381
+ * @sample {highstock} stock/tooltip/fixed/
2382
+ * Stock chart with fixed tooltip
2383
+ *
2384
+ * @type {Highcharts.VerticalAlignValue}
2385
+ * @default top
2386
+ * @apioption tooltip.position.verticalAlign
2387
+ */
2388
+ /**
2389
+ * What the fixed tooltip alignment should be relative to.
2390
+ *
2391
+ * The default, `pane`, means that it is aligned within the plot
2392
+ * area for that given series. If the tooltip is split (as default
2393
+ * in Stock charts), each partial tooltip is aligned within the
2394
+ * series' pane.
2395
+ *
2396
+ * @sample highcharts/tooltip/fixed/
2397
+ * Fixed tooltip
2398
+ * @sample {highstock} stock/tooltip/fixed/
2399
+ * Stock chart with fixed tooltip
2400
+ *
2401
+ * @type {string}
2402
+ * @default pane
2403
+ * @validvalue ["pane", "chart", "plotBox", "spacingBox"]
2404
+ * @apioption tooltip.position.relativeTo
2405
+ */
2406
+ /**
2407
+ * X pixel offset from the given position. Can be used to shy away
2408
+ * from axis lines, grid lines etc to avoid the tooltip overlapping
2409
+ * other elements.
2410
+ *
2411
+ * @sample highcharts/tooltip/fixed/
2412
+ * Fixed tooltip
2413
+ * @sample {highstock} stock/tooltip/fixed/
2414
+ * Stock chart with fixed tooltip
2415
+ */
2416
+ x: 0,
2417
+ /**
2418
+ * Y pixel offset from the given position. Can be used to shy away
2419
+ * from axis lines, grid lines etc to avoid the tooltip overlapping
2420
+ * other elements.
2421
+ *
2422
+ * @sample highcharts/tooltip/fixed/
2423
+ * Fixed tooltip
2424
+ * @sample {highstock} stock/tooltip/fixed/
2425
+ * Stock chart with fixed tooltip
2426
+ */
2427
+ y: 3
2428
+ },
2429
+ /**
2430
+ * The name of a symbol to use for the border around the tooltip. Can
2431
+ * be one of: `"callout"`, `"circle"` or `"rect"`. When
2432
+ * [tooltip.split](#tooltip.split)
2433
+ * option is enabled, shape is applied to all boxes except header, which
2434
+ * is controlled by
2435
+ * [tooltip.headerShape](#tooltip.headerShape).
2436
+ *
2437
+ * Custom callbacks for symbol path generation can also be added to
2438
+ * `Highcharts.SVGRenderer.prototype.symbols` the same way as for
2439
+ * [series.marker.symbol](plotOptions.line.marker.symbol).
2440
+ *
2441
+ * Defaults to `callout` for floating tooltip, `rect` for
2442
+ * [fixed](#tooltip.fixed) tooltip.
2443
+ *
2444
+ * @type {Highcharts.TooltipShapeValue}
2445
+ * @since 4.0
2446
+ * @default undefined
2447
+ * @apioption tooltip.shape
2448
+ */
2449
+ /**
2450
+ * Shows information in the tooltip for all points with the same X
2451
+ * value. When the tooltip is shared, the entire plot area will capture
2452
+ * mouse movement or touch events. Tooltip texts for series types with
2453
+ * ordered data (not pie, scatter, flags etc) will be shown in a single
2454
+ * bubble. This is recommended for single series charts and for
2455
+ * tablet/mobile optimized charts.
2456
+ *
2457
+ * See also [tooltip.split](#tooltip.split), that is better suited for
2458
+ * charts with many series, especially line-type series. The
2459
+ * `tooltip.split` option takes precedence over `tooltip.shared`.
2460
+ *
2461
+ * @sample {highcharts} highcharts/tooltip/shared-false/
2462
+ * False by default
2463
+ * @sample {highcharts} highcharts/tooltip/shared-true/
2464
+ * True
2465
+ * @sample {highcharts} highcharts/tooltip/shared-x-crosshair/
2466
+ * True with x axis crosshair
2467
+ * @sample {highcharts} highcharts/tooltip/shared-true-mixed-types/
2468
+ * True with mixed series types
2469
+ *
2470
+ * @since 2.1
2471
+ * @product highcharts highstock
2472
+ */
2473
+ shared: false,
2474
+ /**
2475
+ * Proximity snap for graphs or single points. It defaults to 10 for
2476
+ * mouse-powered devices and 25 for touch devices.
2477
+ *
2478
+ * Note that in most cases the whole plot area captures the mouse
2479
+ * movement, and in these cases `tooltip.snap` doesn't make sense. This
2480
+ * applies when [stickyTracking](#plotOptions.series.stickyTracking)
2481
+ * is `true` (default) and when the tooltip is [shared](#tooltip.shared)
2482
+ * or [split](#tooltip.split).
2483
+ *
2484
+ * @sample {highcharts} highcharts/tooltip/bordercolor-default/
2485
+ * 10 px by default
2486
+ * @sample {highcharts} highcharts/tooltip/snap-50/
2487
+ * 50 px on graph
2488
+ *
2489
+ * @type {number}
2490
+ * @default 10/25
2491
+ * @since 1.2.0
2492
+ * @product highcharts highstock
2493
+ */
2494
+ snap: isTouchDevice ? 25 : 10,
2495
+ /**
2496
+ * The HTML of the tooltip header line. The context is the
2497
+ * [Point class](https://api.highcharts.com/class-reference/Highcharts.Point).
2498
+ * Variables are enclosed in curly brackets. Examples of common
2499
+ * variables to include are `x`, `y`, `series.name` and `series.color`
2500
+ * and other properties on the same form. The `point.key` variable
2501
+ * contains the category name, x value or datetime string depending on
2502
+ * the type of axis. For datetime axes, the `point.key` date format can
2503
+ * be set using `tooltip.xDateFormat`.
2504
+ *
2505
+ * @sample {highcharts} highcharts/tooltip/footerformat/
2506
+ * An HTML table in the tooltip
2507
+ * @sample {highstock} highcharts/tooltip/footerformat/
2508
+ * An HTML table in the tooltip
2509
+ * @sample {highmaps} maps/tooltip/format/
2510
+ * Format demo
2511
+ *
2512
+ * @type {string}
2513
+ * @apioption tooltip.headerFormat
2514
+ */
2515
+ headerFormat: '<span style="font-size: 0.8em">{ucfirst point.key}</span><br/>',
2516
+ /**
2517
+ * The HTML of the null point's line in the tooltip. Works analogously
2518
+ * to [pointFormat](#tooltip.pointFormat).
2519
+ *
2520
+ * @sample {highcharts} highcharts/series/null-interaction
2521
+ * Line chart with null interaction
2522
+ * @sample {highcharts} highcharts/plotoptions/series-nullformat
2523
+ * Heatmap with null interaction
2524
+ *
2525
+ * @type {string}
2526
+ * @apioption tooltip.nullFormat
2527
+ */
2528
+ /**
2529
+ * The HTML of the point's line in the tooltip. The context is the
2530
+ * [Point class](https://api.highcharts.com/class-reference/Highcharts.Point).
2531
+ * Variables are enclosed in curly brackets. Examples of common
2532
+ * variables to include are `x`, `y`, `series.name` and `series.color`
2533
+ * and other properties on the same form. Furthermore, `y` can be
2534
+ * extended by the `tooltip.valuePrefix` and `tooltip.valueSuffix`
2535
+ * variables. This can also be overridden for each series, which makes
2536
+ * it a good hook for displaying units.
2537
+ *
2538
+ * In styled mode, the dot is colored by a class name rather than the
2539
+ * point color.
2540
+ *
2541
+ * @sample {highcharts} highcharts/tooltip/pointformat/
2542
+ * A different point format with value suffix
2543
+ * @sample {highcharts|highstock} highcharts/tooltip/pointformat-extra-information/
2544
+ * Show extra information about points in the tooltip
2545
+ * @sample {highmaps} maps/tooltip/format/
2546
+ * Format demo
2547
+ *
2548
+ * @type {string}
2549
+ * @since 2.2
2550
+ * @apioption tooltip.pointFormat
2551
+ */
2552
+ pointFormat: '<span style="color:{point.color}">\u25CF</span> {series.name}: <b>{point.y}</b><br/>',
2553
+ /**
2554
+ * The background color or gradient for the tooltip.
2555
+ *
2556
+ * In styled mode, the stroke width is set in the
2557
+ * `.highcharts-tooltip-box` class.
2558
+ *
2559
+ * @sample {highcharts} highcharts/tooltip/backgroundcolor-solid/
2560
+ * Yellowish background
2561
+ * @sample {highcharts} highcharts/tooltip/backgroundcolor-gradient/
2562
+ * Gradient
2563
+ * @sample {highcharts} highcharts/css/tooltip-border-background/
2564
+ * Tooltip in styled mode
2565
+ * @sample {highstock} stock/tooltip/general/
2566
+ * Custom tooltip
2567
+ * @sample {highstock} highcharts/css/tooltip-border-background/
2568
+ * Tooltip in styled mode
2569
+ * @sample {highmaps} maps/tooltip/background-border/
2570
+ * Background and border demo
2571
+ * @sample {highmaps} highcharts/css/tooltip-border-background/
2572
+ * Tooltip in styled mode
2573
+ *
2574
+ * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
2575
+ */
2576
+ backgroundColor: "#ffffff" /* Palette.backgroundColor */,
2577
+ /**
2578
+ * The pixel width of the tooltip border. Defaults to 0 for single
2579
+ * tooltips and fixed tooltips, otherwise 1 for split tooltips.
2580
+ *
2581
+ * In styled mode, the stroke width is set in the
2582
+ * `.highcharts-tooltip-box` class.
2583
+ *
2584
+ * @sample {highcharts} highcharts/tooltip/bordercolor-default/
2585
+ * 2 pixels
2586
+ * @sample {highcharts} highcharts/tooltip/borderwidth/
2587
+ * No border (shadow only)
2588
+ * @sample {highcharts} highcharts/css/tooltip-border-background/
2589
+ * Tooltip in styled mode
2590
+ * @sample {highstock} stock/tooltip/general/
2591
+ * Custom tooltip
2592
+ * @sample {highstock} highcharts/css/tooltip-border-background/
2593
+ * Tooltip in styled mode
2594
+ * @sample {highmaps} maps/tooltip/background-border/
2595
+ * Background and border demo
2596
+ * @sample {highmaps} highcharts/css/tooltip-border-background/
2597
+ * Tooltip in styled mode
2598
+ *
2599
+ * @type {number}
2600
+ */
2601
+ borderWidth: void 0,
2602
+ /**
2603
+ * Whether to apply a drop shadow to the tooltip. Defaults to true,
2604
+ * unless the tooltip is [fixed](#tooltip.fixed).
2605
+ *
2606
+ * @sample {highcharts} highcharts/tooltip/bordercolor-default/
2607
+ * True by default
2608
+ * @sample {highcharts} highcharts/tooltip/shadow/
2609
+ * False
2610
+ * @sample {highmaps} maps/tooltip/positioner/
2611
+ * Fixed tooltip position, border and shadow disabled
2612
+ *
2613
+ * @type {boolean|Highcharts.ShadowOptionsObject}
2614
+ * @default undefined
2615
+ * @apioption tooltip.shadow
2616
+ */
2617
+ /**
2618
+ * Prevents the tooltip from switching or closing when touched or
2619
+ * pointed.
2620
+ *
2621
+ * @sample highcharts/tooltip/stickoncontact/
2622
+ * Tooltip sticks on pointer contact
2623
+ *
2624
+ * @since 8.0.1
2625
+ */
2626
+ stickOnContact: false,
2627
+ /**
2628
+ * CSS styles for the tooltip. The tooltip can also be styled through
2629
+ * the CSS class `.highcharts-tooltip`.
2630
+ *
2631
+ * Note that the default `pointerEvents` style makes the tooltip ignore
2632
+ * mouse events, so in order to use clickable tooltips, this value must
2633
+ * be set to `auto`.
2634
+ *
2635
+ * @sample {highcharts} highcharts/tooltip/style/
2636
+ * Greater padding, bold text
2637
+ *
2638
+ * @type {Highcharts.CSSObject}
2639
+ */
2640
+ style: {
2641
+ /** @internal */
2642
+ color: "#333333" /* Palette.neutralColor80 */,
2643
+ /** @internal */
2644
+ cursor: 'default',
2645
+ /**
2646
+ * @type {number|string}
2647
+ */
2648
+ fontSize: '0.8em'
2649
+ },
2650
+ /**
2651
+ * Use HTML to render the contents of the tooltip instead of SVG. Using
2652
+ * HTML allows advanced formatting like tables and images in the
2653
+ * tooltip. It is also recommended for rtl languages as it works around
2654
+ * rtl bugs in early Firefox.
2655
+ *
2656
+ * @sample {highcharts|highstock} highcharts/tooltip/footerformat/
2657
+ * A table for value alignment
2658
+ * @sample {highcharts|highstock} highcharts/tooltip/fullhtml/
2659
+ * Full HTML tooltip
2660
+ * @sample {highmaps} maps/tooltip/usehtml/
2661
+ * Pure HTML tooltip
2662
+ *
2663
+ * @since 2.2
2664
+ */
2665
+ useHTML: false
2666
+ },
2667
+ /**
2668
+ * Highchart by default puts a credits label in the lower right corner
2669
+ * of the chart. This can be changed using these options.
2670
+ */
2671
+ credits: {
2672
+ /**
2673
+ * Credits for map source to be concatenated with conventional credit
2674
+ * text. By default this is a format string that collects copyright
2675
+ * information from the map if available.
2676
+ *
2677
+ * @see [mapTextFull](#credits.mapTextFull)
2678
+ * @see [text](#credits.text)
2679
+ *
2680
+ * @type {string}
2681
+ * @default \u00a9 <a href="{geojson.copyrightUrl}">{geojson.copyrightShort}</a>
2682
+ * @since 4.2.2
2683
+ * @product highmaps
2684
+ * @apioption credits.mapText
2685
+ */
2686
+ /**
2687
+ * Detailed credits for map source to be displayed on hover of credits
2688
+ * text. By default this is a format string that collects copyright
2689
+ * information from the map if available.
2690
+ *
2691
+ * @see [mapText](#credits.mapText)
2692
+ * @see [text](#credits.text)
2693
+ *
2694
+ * @type {string}
2695
+ * @default {geojson.copyright}
2696
+ * @since 4.2.2
2697
+ * @product highmaps
2698
+ * @apioption credits.mapTextFull
2699
+ */
2700
+ /**
2701
+ * Whether to show the credits text.
2702
+ *
2703
+ * @sample {highcharts} highcharts/credits/enabled-false/
2704
+ * Credits disabled
2705
+ * @sample {highstock} stock/credits/enabled/
2706
+ * Credits disabled
2707
+ * @sample {highmaps} maps/credits/enabled-false/
2708
+ * Credits disabled
2709
+ */
2710
+ enabled: true,
2711
+ /**
2712
+ * The URL for the credits label.
2713
+ *
2714
+ * @sample {highcharts} highcharts/credits/href/
2715
+ * Custom URL and text
2716
+ * @sample {highmaps} maps/credits/customized/
2717
+ * Custom URL and text
2718
+ */
2719
+ href: 'https://www.highcharts.com?credits',
2720
+ /**
2721
+ * Position configuration for the credits label.
2722
+ *
2723
+ * @sample {highcharts} highcharts/credits/position-left/
2724
+ * Left aligned
2725
+ * @sample {highcharts} highcharts/credits/position-left/
2726
+ * Left aligned
2727
+ * @sample {highmaps} maps/credits/customized/
2728
+ * Left aligned
2729
+ * @sample {highmaps} maps/credits/customized/
2730
+ * Left aligned
2731
+ *
2732
+ * @type {Highcharts.AlignObject}
2733
+ * @since 2.1
2734
+ */
2735
+ position: {
2736
+ /** @internal */
2737
+ align: 'right',
2738
+ /** @internal */
2739
+ x: -10,
2740
+ /** @internal */
2741
+ verticalAlign: 'bottom',
2742
+ /** @internal */
2743
+ y: -5
2744
+ },
2745
+ /**
2746
+ * CSS styles for the credits label.
2747
+ *
2748
+ * @see In styled mode, credits styles can be set with the
2749
+ * `.highcharts-credits` class.
2750
+ *
2751
+ * @type {Highcharts.CSSObject}
2752
+ */
2753
+ style: {
2754
+ /** @internal */
2755
+ cursor: 'pointer',
2756
+ /** @internal */
2757
+ color: "#999999" /* Palette.neutralColor40 */,
2758
+ /**
2759
+ * @type {number|string}
2760
+ */
2761
+ fontSize: '0.6em'
2762
+ },
2763
+ /**
2764
+ * The text for the credits label.
2765
+ *
2766
+ * @productdesc {highmaps}
2767
+ * If a map is loaded as GeoJSON, the text defaults to
2768
+ * `Highcharts @ {map-credits}`. Otherwise, it defaults to
2769
+ * `Highcharts.com`.
2770
+ *
2771
+ * @sample {highcharts} highcharts/credits/href/
2772
+ * Custom URL and text
2773
+ * @sample {highmaps} maps/credits/customized/
2774
+ * Custom URL and text
2775
+ */
2776
+ text: 'Highcharts.com'
2777
+ }
2778
+ };
2779
+ const defaultTime = new Time(defaultOptions.time, defaultOptions.lang);
2780
+ /**
2781
+ * Get the updated default options. Until 3.0.7, merely exposing defaultOptions
2782
+ * for outside modules wasn't enough because the setOptions method created a new
2783
+ * object.
2784
+ *
2785
+ * @function Highcharts.getOptions
2786
+ *
2787
+ * @return {Highcharts.Options}
2788
+ * Default options.
2789
+ */
2790
+ function getOptions() {
2791
+ return defaultOptions;
2792
+ }
2793
+ /**
2794
+ * Merge the default options with custom options and return the new options
2795
+ * structure. Commonly used for defining reusable templates.
2796
+ *
2797
+ * @sample highcharts/members/setoptions Applying a global theme
2798
+ *
2799
+ * @function Highcharts.setOptions
2800
+ *
2801
+ * @param {Highcharts.Options} options
2802
+ * The new custom chart options.
2803
+ *
2804
+ * @return {Highcharts.Options}
2805
+ * Updated options.
2806
+ */
2807
+ function setOptions(options) {
2808
+ fireEvent(H, 'setOptions', { options });
2809
+ // Copy in the default options
2810
+ merge(true, defaultOptions, options);
2811
+ // Update the time object
2812
+ if (options.time) {
2813
+ defaultTime.update(defaultOptions.time);
2814
+ }
2815
+ if (options.lang && 'locale' in options.lang) {
2816
+ defaultTime.update({
2817
+ locale: options.lang.locale
2818
+ });
2819
+ }
2820
+ if (options.lang?.chartTitle) {
2821
+ defaultOptions.title = {
2822
+ ...defaultOptions.title,
2823
+ text: options.lang.chartTitle
2824
+ };
2825
+ }
2826
+ return defaultOptions;
2827
+ }
2828
+ /* *
2829
+ *
2830
+ * Default Export
2831
+ *
2832
+ * */
2833
+ const DefaultOptions = {
2834
+ defaultOptions,
2835
+ defaultTime,
2836
+ getOptions,
2837
+ setOptions
2838
+ };
2839
+ export default DefaultOptions;
2840
+ /* *
2841
+ *
2842
+ * API Declarations
2843
+ *
2844
+ * */
2845
+ /**
2846
+ * @typedef {"plotBox"|"spacingBox"} Highcharts.ButtonRelativeToValue
2847
+ */
2848
+ /**
2849
+ * Gets fired when a series is added to the chart after load time, using the
2850
+ * `addSeries` method. Returning `false` prevents the series from being added.
2851
+ *
2852
+ * @callback Highcharts.ChartAddSeriesCallbackFunction
2853
+ *
2854
+ * @param {Highcharts.Chart} this
2855
+ * The chart on which the event occurred.
2856
+ *
2857
+ * @param {Highcharts.ChartAddSeriesEventObject} event
2858
+ * The event that occurred.
2859
+ */
2860
+ /**
2861
+ * Contains common event information. Through the `options` property you can
2862
+ * access the series options that were passed to the `addSeries` method.
2863
+ *
2864
+ * @interface Highcharts.ChartAddSeriesEventObject
2865
+ */ /**
2866
+ * The series options that were passed to the `addSeries` method.
2867
+ * @name Highcharts.ChartAddSeriesEventObject#options
2868
+ * @type {Highcharts.SeriesOptionsType}
2869
+ */ /**
2870
+ * Prevents the default behaviour of the event.
2871
+ * @name Highcharts.ChartAddSeriesEventObject#preventDefault
2872
+ * @type {Function}
2873
+ */ /**
2874
+ * The event target.
2875
+ * @name Highcharts.ChartAddSeriesEventObject#target
2876
+ * @type {Highcharts.Chart}
2877
+ */ /**
2878
+ * The event type.
2879
+ * @name Highcharts.ChartAddSeriesEventObject#type
2880
+ * @type {"addSeries"}
2881
+ */
2882
+ /**
2883
+ * Gets fired when clicking on the plot background.
2884
+ *
2885
+ * @callback Highcharts.ChartClickCallbackFunction
2886
+ *
2887
+ * @param {Highcharts.Chart} this
2888
+ * The chart on which the event occurred.
2889
+ *
2890
+ * @param {Highcharts.PointerEventObject} event
2891
+ * The event that occurred.
2892
+ */
2893
+ /**
2894
+ * Contains an axes of the clicked spot.
2895
+ *
2896
+ * @interface Highcharts.ChartClickEventAxisObject
2897
+ */ /**
2898
+ * Axis at the clicked spot.
2899
+ * @name Highcharts.ChartClickEventAxisObject#axis
2900
+ * @type {Highcharts.Axis}
2901
+ */ /**
2902
+ * Axis value at the clicked spot.
2903
+ * @name Highcharts.ChartClickEventAxisObject#value
2904
+ * @type {number}
2905
+ */
2906
+ /**
2907
+ * Contains information about the clicked spot on the chart. Remember the unit
2908
+ * of a datetime axis is milliseconds since 1970-01-01 00:00:00.
2909
+ *
2910
+ * @interface Highcharts.ChartClickEventObject
2911
+ * @extends Highcharts.PointerEventObject
2912
+ */ /**
2913
+ * Information about the x-axis on the clicked spot.
2914
+ * @name Highcharts.ChartClickEventObject#xAxis
2915
+ * @type {Array<Highcharts.ChartClickEventAxisObject>}
2916
+ */ /**
2917
+ * Information about the y-axis on the clicked spot.
2918
+ * @name Highcharts.ChartClickEventObject#yAxis
2919
+ * @type {Array<Highcharts.ChartClickEventAxisObject>}
2920
+ */ /**
2921
+ * Information about the z-axis on the clicked spot.
2922
+ * @name Highcharts.ChartClickEventObject#zAxis
2923
+ * @type {Array<Highcharts.ChartClickEventAxisObject>|undefined}
2924
+ */
2925
+ /**
2926
+ * Gets fired when the chart is finished loading.
2927
+ *
2928
+ * @callback Highcharts.ChartLoadCallbackFunction
2929
+ *
2930
+ * @param {Highcharts.Chart} this
2931
+ * The chart on which the event occurred.
2932
+ *
2933
+ * @param {global.Event} event
2934
+ * The event that occurred.
2935
+ */
2936
+ /**
2937
+ * Fires when the chart is redrawn, either after a call to `chart.redraw()` or
2938
+ * after an axis, series or point is modified with the `redraw` option set to
2939
+ * `true`.
2940
+ *
2941
+ * @callback Highcharts.ChartRedrawCallbackFunction
2942
+ *
2943
+ * @param {Highcharts.Chart} this
2944
+ * The chart on which the event occurred.
2945
+ *
2946
+ * @param {global.Event} event
2947
+ * The event that occurred.
2948
+ */
2949
+ /**
2950
+ * Gets fired after initial load of the chart (directly after the `load` event),
2951
+ * and after each redraw (directly after the `redraw` event).
2952
+ *
2953
+ * @callback Highcharts.ChartRenderCallbackFunction
2954
+ *
2955
+ * @param {Highcharts.Chart} this
2956
+ * The chart on which the event occurred.
2957
+ *
2958
+ * @param {global.Event} event
2959
+ * The event that occurred.
2960
+ */
2961
+ /**
2962
+ * Gets fired when an area of the chart has been selected. The default action
2963
+ * for the selection event is to zoom the chart to the selected area. It can be
2964
+ * prevented by calling `event.preventDefault()` or return false.
2965
+ *
2966
+ * @callback Highcharts.ChartSelectionCallbackFunction
2967
+ *
2968
+ * @param {Highcharts.Chart} this
2969
+ * The chart on which the event occurred.
2970
+ *
2971
+ * @param {Highcharts.SelectEventObject} event
2972
+ * Event informations
2973
+ *
2974
+ * @return {boolean|undefined}
2975
+ * Return false to prevent the default action, usually zoom.
2976
+ */
2977
+ (''); // Detach doclets above