@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,148 @@
1
+ /**
2
+ * Accessibility options for the Grid.
3
+ */
4
+ export interface A11yOptions {
5
+ /**
6
+ * Enable accessibility features for the Grid.
7
+ *
8
+ * @default true
9
+ */
10
+ enabled?: boolean;
11
+ /**
12
+ * The default option is auto, which applies the high contrast theme the
13
+ * user's system has a high contrast theme active.
14
+ */
15
+ highContrastMode?: boolean | 'auto';
16
+ /**
17
+ * VoiceOver announcer options for Grid actions.
18
+ */
19
+ announcements?: A11yAnnouncementsOptions;
20
+ }
21
+ /**
22
+ * VoiceOver announcer options for Grid actions.
23
+ */
24
+ export interface A11yAnnouncementsOptions {
25
+ /**
26
+ * Enable accessibility announcements for the sorting.
27
+ *
28
+ * @default true
29
+ */
30
+ sorting?: boolean;
31
+ /**
32
+ * Enable accessibility announcements for the filtering.
33
+ *
34
+ * @default true
35
+ */
36
+ filtering?: boolean;
37
+ }
38
+ /**
39
+ * Accessibility language options for the Grid.
40
+ */
41
+ export interface LangAccessibilityOptions {
42
+ /**
43
+ * Language options for the accessibility descriptions in sorting.
44
+ */
45
+ sorting?: SortingLangA11yOptions;
46
+ /**
47
+ * Language options for the accessibility descriptions in pagination.
48
+ */
49
+ pagination?: PaginationLangA11yOptions;
50
+ /**
51
+ * Language options for the accessibility descriptions in filtering.
52
+ */
53
+ filtering?: FilteringLangA11yOptions;
54
+ }
55
+ /**
56
+ * Accessibility options for the Grid sorting functionality.
57
+ */
58
+ export interface SortingLangA11yOptions {
59
+ /**
60
+ * An additional hint (a visually hidden span) read by the voice over
61
+ * after the column name.
62
+ *
63
+ * @default 'Sortable.'
64
+ */
65
+ sortable?: string;
66
+ /**
67
+ * Accessibility lang options for the sorting announcements.
68
+ */
69
+ announcements?: {
70
+ /**
71
+ * The message when the column was sorted in ascending order.
72
+ *
73
+ * @default 'Sorted ascending.'
74
+ */
75
+ ascending?: string;
76
+ /**
77
+ * The message when the column was sorted in descending order.
78
+ *
79
+ * @default 'Sorted descending.'
80
+ */
81
+ descending?: string;
82
+ /**
83
+ * The message when the column was unsorted.
84
+ *
85
+ * @default 'Not sorted.'
86
+ */
87
+ none?: string;
88
+ };
89
+ }
90
+ /**
91
+ * Accessibility options for the Grid pagination functionality.
92
+ */
93
+ export interface PaginationLangA11yOptions {
94
+ /**
95
+ * Language options for the accessibility descriptions in pagination.
96
+ */
97
+ announcements?: {
98
+ /**
99
+ * The message when the page size was changed.
100
+ *
101
+ * @default 'Page size changed to.'
102
+ */
103
+ pageSizeChange?: string;
104
+ /**
105
+ * The message when the page was changed.
106
+ *
107
+ * @default 'Page changed to.'
108
+ */
109
+ pageChange?: string;
110
+ };
111
+ }
112
+ /**
113
+ * Accessibility options for the Grid filtering functionality.
114
+ */
115
+ export interface FilteringLangA11yOptions {
116
+ /**
117
+ * Language options for the accessibility descriptions in filtering.
118
+ */
119
+ announcements?: {
120
+ /**
121
+ * The message when the filter was applied.
122
+ *
123
+ * @default 'Filter applied for {columnId}, {condition} {value}. {rowsCount} results found.'
124
+ */
125
+ filterApplied?: string;
126
+ /**
127
+ * The message when the filter was applied for empty-like conditions.
128
+ *
129
+ * @default 'Filter applied for {columnId}, {condition} values. {rowsCount} results found.'
130
+ */
131
+ emptyFilterApplied?: string;
132
+ /**
133
+ * The message when the filter was cleared.
134
+ *
135
+ * @default 'Filter cleared for {columnId}. {rowsCount} results found.'
136
+ */
137
+ filterCleared?: string;
138
+ };
139
+ }
140
+ /**
141
+ * Accessibility options for the Grid header cell.
142
+ */
143
+ export interface HeaderCellA11yOptions {
144
+ /**
145
+ * The aria description of the header cell.
146
+ */
147
+ description?: string;
148
+ }
@@ -0,0 +1,17 @@
1
+ /* *
2
+ *
3
+ * Grid Accessibility options
4
+ *
5
+ * (c) 2020-2025 Highsoft AS
6
+ *
7
+ * License: www.highcharts.com/license
8
+ *
9
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
10
+ *
11
+ * Authors:
12
+ * - Dawid Dragula
13
+ * - Sebastian Bochan
14
+ *
15
+ * */
16
+ 'use strict';
17
+ export {};
@@ -0,0 +1,115 @@
1
+ import type Grid from '../Grid';
2
+ import type { ColumnSortingOrder, FilteringCondition } from '../Options';
3
+ /**
4
+ * Representing the accessibility functionalities for the Data Grid.
5
+ */
6
+ declare class Accessibility {
7
+ /**
8
+ * The Data Grid Table instance which the accessibility belong to.
9
+ */
10
+ grid: Grid;
11
+ /**
12
+ * The HTML element of the accessibility.
13
+ */
14
+ private element;
15
+ /**
16
+ * The HTML element of the announcer.
17
+ */
18
+ private announcerElement;
19
+ /**
20
+ * The timeout for the announcer element removal.
21
+ */
22
+ private announcerTimeout?;
23
+ /**
24
+ * Construct the accessibility object.
25
+ *
26
+ * @param grid
27
+ * The Grid Table instance which the accessibility controller belong to.
28
+ */
29
+ constructor(grid: Grid);
30
+ /**
31
+ * Add the description to the header cell.
32
+ *
33
+ * @param thElement
34
+ * The header cell element to add the description to.
35
+ *
36
+ * @param description
37
+ * The description to be added.
38
+ */
39
+ addHeaderCellDescription(thElement: HTMLElement, description: string | undefined): void;
40
+ /**
41
+ * Announce the message to the screen reader.
42
+ *
43
+ * @param msg
44
+ * The message to be announced.
45
+ *
46
+ * @param assertive
47
+ * Whether the message should be assertive. Default is false.
48
+ */
49
+ announce(msg: string, assertive?: boolean): void;
50
+ /**
51
+ * Announce the message to the screen reader that the user sorted the
52
+ * column.
53
+ *
54
+ * @param order
55
+ * The order of the sorting.
56
+ */
57
+ userSortedColumn(order: ColumnSortingOrder): void;
58
+ /**
59
+ * Set the aria sort state of the column header cell element.
60
+ *
61
+ * @param thElement
62
+ * The header cell element to set the `aria-sort` state to.
63
+ *
64
+ * @param state
65
+ * The sort state to be set for the column header cell.
66
+ */
67
+ setColumnSortState(thElement: HTMLElement, state: Accessibility.AriaSortState): void;
68
+ /**
69
+ * Announce the message to the screen reader that the user filtered the
70
+ * column.
71
+ *
72
+ * @param filteredColumnValues
73
+ * The values of the filtered column.
74
+ *
75
+ * @param filteringApplied
76
+ * Whether the filtering was applied or cleared.
77
+ */
78
+ userFilteredColumn(filteredColumnValues: Accessibility.FilteredColumnValues, filteringApplied: boolean): void;
79
+ /**
80
+ * Adds high contrast CSS class, if the browser is in High Contrast mode.
81
+ */
82
+ addHighContrast(): void;
83
+ /**
84
+ * Set the row index attribute for the row element.
85
+ *
86
+ * @param el
87
+ * The row element to set the index to.
88
+ *
89
+ * @param idx
90
+ * The index of the row in the data table.
91
+ */
92
+ setRowIndex(el: HTMLElement, idx: number): void;
93
+ /**
94
+ * Set a11y options for the Grid.
95
+ */
96
+ setA11yOptions(): void;
97
+ /**
98
+ * Destroy the accessibility controller.
99
+ */
100
+ destroy(): void;
101
+ }
102
+ declare namespace Accessibility {
103
+ /**
104
+ * The possible states of the aria-sort attribute.
105
+ */
106
+ type AriaSortState = 'ascending' | 'descending' | 'none';
107
+ /**
108
+ * The values of the filtered column.
109
+ */
110
+ type FilteredColumnValues = FilteringCondition & {
111
+ columnId: string;
112
+ rowsCount: number;
113
+ };
114
+ }
115
+ export default Accessibility;
@@ -0,0 +1,231 @@
1
+ /* *
2
+ *
3
+ * Grid Accessibility class
4
+ *
5
+ * (c) 2020-2025 Highsoft AS
6
+ *
7
+ * License: www.highcharts.com/license
8
+ *
9
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
10
+ *
11
+ * Authors:
12
+ * - Dawid Dragula
13
+ * - Sebastian Bochan
14
+ *
15
+ * */
16
+ 'use strict';
17
+ import whcm from '../../../Accessibility/HighContrastMode.js';
18
+ import Globals from '../Globals.js';
19
+ import ColumnFiltering from '../Table/Actions/ColumnFiltering/ColumnFiltering.js';
20
+ import GridUtils from '../GridUtils.js';
21
+ const { formatText } = GridUtils;
22
+ /**
23
+ * Representing the accessibility functionalities for the Data Grid.
24
+ */
25
+ class Accessibility {
26
+ /* *
27
+ *
28
+ * Constructor
29
+ *
30
+ * */
31
+ /**
32
+ * Construct the accessibility object.
33
+ *
34
+ * @param grid
35
+ * The Grid Table instance which the accessibility controller belong to.
36
+ */
37
+ constructor(grid) {
38
+ this.grid = grid;
39
+ this.element = document.createElement('div');
40
+ this.element.classList.add(Globals.getClassName('visuallyHidden'));
41
+ this.grid.container?.prepend(this.element);
42
+ this.announcerElement = document.createElement('p');
43
+ this.announcerElement.setAttribute('aria-atomic', 'true');
44
+ this.announcerElement.setAttribute('aria-hidden', 'false');
45
+ }
46
+ /* *
47
+ *
48
+ * Methods
49
+ *
50
+ * */
51
+ /**
52
+ * Add the description to the header cell.
53
+ *
54
+ * @param thElement
55
+ * The header cell element to add the description to.
56
+ *
57
+ * @param description
58
+ * The description to be added.
59
+ */
60
+ addHeaderCellDescription(thElement, description) {
61
+ if (description) {
62
+ thElement.setAttribute('aria-description', description);
63
+ }
64
+ }
65
+ /**
66
+ * Announce the message to the screen reader.
67
+ *
68
+ * @param msg
69
+ * The message to be announced.
70
+ *
71
+ * @param assertive
72
+ * Whether the message should be assertive. Default is false.
73
+ */
74
+ announce(msg, assertive = false) {
75
+ if (this.announcerTimeout) {
76
+ clearTimeout(this.announcerTimeout);
77
+ }
78
+ this.announcerElement.remove();
79
+ this.announcerElement.setAttribute('aria-live', assertive ? 'assertive' : 'polite');
80
+ this.element.appendChild(this.announcerElement);
81
+ requestAnimationFrame(() => {
82
+ this.announcerElement.textContent = msg;
83
+ });
84
+ this.announcerTimeout = setTimeout(() => {
85
+ this.announcerElement.remove();
86
+ }, 3000);
87
+ }
88
+ /**
89
+ * Announce the message to the screen reader that the user sorted the
90
+ * column.
91
+ *
92
+ * @param order
93
+ * The order of the sorting.
94
+ */
95
+ userSortedColumn(order) {
96
+ const { options } = this.grid;
97
+ const announcementsLang = options?.lang
98
+ ?.accessibility?.sorting?.announcements;
99
+ if (!options?.accessibility?.announcements?.sorting) {
100
+ return;
101
+ }
102
+ let msg;
103
+ switch (order) {
104
+ case 'asc':
105
+ msg = announcementsLang?.ascending;
106
+ break;
107
+ case 'desc':
108
+ msg = announcementsLang?.descending;
109
+ break;
110
+ default:
111
+ msg = announcementsLang?.none;
112
+ }
113
+ if (!msg) {
114
+ return;
115
+ }
116
+ this.announce(msg, true);
117
+ }
118
+ /**
119
+ * Set the aria sort state of the column header cell element.
120
+ *
121
+ * @param thElement
122
+ * The header cell element to set the `aria-sort` state to.
123
+ *
124
+ * @param state
125
+ * The sort state to be set for the column header cell.
126
+ */
127
+ setColumnSortState(thElement, state) {
128
+ thElement?.setAttribute('aria-sort', state);
129
+ }
130
+ /**
131
+ * Announce the message to the screen reader that the user filtered the
132
+ * column.
133
+ *
134
+ * @param filteredColumnValues
135
+ * The values of the filtered column.
136
+ *
137
+ * @param filteringApplied
138
+ * Whether the filtering was applied or cleared.
139
+ */
140
+ userFilteredColumn(filteredColumnValues, filteringApplied) {
141
+ const { columnId, condition, value, rowsCount } = filteredColumnValues;
142
+ const { lang, accessibility } = this.grid.options || {};
143
+ if (!accessibility?.announcements?.filtering) {
144
+ return;
145
+ }
146
+ const announcementsLang = lang?.accessibility?.filtering?.announcements;
147
+ let msg;
148
+ if (filteringApplied && condition) {
149
+ const parsedCondition = ColumnFiltering.parseCamelCaseToReadable(condition);
150
+ if (condition === 'empty' ||
151
+ condition === 'notEmpty' ||
152
+ condition === 'false' ||
153
+ condition === 'true') {
154
+ msg = formatText(announcementsLang?.emptyFilterApplied || '', {
155
+ columnId,
156
+ condition: parsedCondition,
157
+ rowsCount: rowsCount
158
+ });
159
+ }
160
+ else {
161
+ msg = formatText(announcementsLang?.filterApplied || '', {
162
+ columnId,
163
+ condition: parsedCondition,
164
+ value: value?.toString() || '',
165
+ rowsCount: rowsCount
166
+ });
167
+ }
168
+ }
169
+ else {
170
+ msg = formatText(announcementsLang?.filterCleared || '', {
171
+ columnId,
172
+ rowsCount: rowsCount
173
+ });
174
+ }
175
+ this.announce(msg, true);
176
+ }
177
+ /**
178
+ * Adds high contrast CSS class, if the browser is in High Contrast mode.
179
+ */
180
+ addHighContrast() {
181
+ const highContrastMode = this.grid.options?.accessibility?.highContrastMode;
182
+ if (highContrastMode !== false && (whcm.isHighContrastModeActive() ||
183
+ highContrastMode === true)) {
184
+ this.grid.contentWrapper?.classList.add('hcg-theme-highcontrast');
185
+ }
186
+ }
187
+ /**
188
+ * Set the row index attribute for the row element.
189
+ *
190
+ * @param el
191
+ * The row element to set the index to.
192
+ *
193
+ * @param idx
194
+ * The index of the row in the data table.
195
+ */
196
+ setRowIndex(el, idx) {
197
+ el.setAttribute('aria-rowindex', idx);
198
+ }
199
+ /**
200
+ * Set a11y options for the Grid.
201
+ */
202
+ setA11yOptions() {
203
+ const grid = this.grid;
204
+ const tableEl = grid.tableElement;
205
+ if (!tableEl) {
206
+ return;
207
+ }
208
+ tableEl.setAttribute('aria-rowcount', grid.dataTable?.getRowCount() || 0);
209
+ if (grid.captionElement) {
210
+ tableEl.setAttribute('aria-labelledby', grid.captionElement.id);
211
+ }
212
+ if (grid.descriptionElement) {
213
+ tableEl.setAttribute('aria-describedby', grid.descriptionElement.id);
214
+ }
215
+ this.addHighContrast();
216
+ }
217
+ /**
218
+ * Destroy the accessibility controller.
219
+ */
220
+ destroy() {
221
+ this.element.remove();
222
+ this.announcerElement.remove();
223
+ clearTimeout(this.announcerTimeout);
224
+ }
225
+ }
226
+ /* *
227
+ *
228
+ * Default Export
229
+ *
230
+ * */
231
+ export default Accessibility;
@@ -0,0 +1,57 @@
1
+ import type { CreditsOptions } from './Options';
2
+ import type Grid from './Grid';
3
+ /**
4
+ * Represents a credits in the grid.
5
+ */
6
+ declare class Credits {
7
+ /**
8
+ * Default options of the credits.
9
+ */
10
+ static defaultOptions: CreditsOptions;
11
+ /**
12
+ * The Grid instance which the credits belong to.
13
+ */
14
+ readonly grid: Grid;
15
+ /**
16
+ * The credits container HTML element.
17
+ */
18
+ readonly containerElement: HTMLElement;
19
+ /**
20
+ * The credits content HTML element.
21
+ */
22
+ textElement: HTMLElement;
23
+ /**
24
+ * The options for the credits.
25
+ */
26
+ options: CreditsOptions;
27
+ /**
28
+ * Construct the credits.
29
+ *
30
+ * @param grid
31
+ * The Grid instance which the credits belong to.
32
+ *
33
+ * @param options
34
+ * Options for the credits label. Predefined if not provided.
35
+ *
36
+ */
37
+ constructor(grid: Grid, options?: CreditsOptions);
38
+ /**
39
+ * Render the credits. If the credits are disabled, they will be removed
40
+ * from the container.
41
+ */
42
+ render(): void;
43
+ private renderAnchor;
44
+ /**
45
+ * Get the height of the credits container.
46
+ */
47
+ getHeight(): number;
48
+ /**
49
+ * Destroy the credits. The credits will be removed from the container and
50
+ * the reference to the credits will be deleted from the Grid instance
51
+ * it belongs to.
52
+ */
53
+ destroy(): void;
54
+ }
55
+ declare namespace Credits {
56
+ }
57
+ export default Credits;
@@ -0,0 +1,125 @@
1
+ /* *
2
+ *
3
+ * Grid Credits class
4
+ *
5
+ * (c) 2020-2025 Highsoft AS
6
+ *
7
+ * License: www.highcharts.com/license
8
+ *
9
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
10
+ *
11
+ * Authors:
12
+ * - Dawid Dragula
13
+ * - Sebastian Bochan
14
+ *
15
+ * */
16
+ 'use strict';
17
+ import Globals from './Globals.js';
18
+ import GridUtils from './GridUtils.js';
19
+ const { makeHTMLElement, setHTMLContent } = GridUtils;
20
+ /* *
21
+ *
22
+ * Class
23
+ *
24
+ * */
25
+ /**
26
+ * Represents a credits in the grid.
27
+ */
28
+ class Credits {
29
+ /* *
30
+ *
31
+ * Constructor
32
+ *
33
+ * */
34
+ /**
35
+ * Construct the credits.
36
+ *
37
+ * @param grid
38
+ * The Grid instance which the credits belong to.
39
+ *
40
+ * @param options
41
+ * Options for the credits label. Predefined if not provided.
42
+ *
43
+ */
44
+ constructor(grid, options) {
45
+ this.grid = grid;
46
+ this.containerElement = makeHTMLElement('div', {
47
+ className: Globals.getClassName('creditsContainer')
48
+ });
49
+ this.textElement = this.renderAnchor();
50
+ this.options = options ?? Credits.defaultOptions;
51
+ this.render();
52
+ }
53
+ /* *
54
+ *
55
+ * Methods
56
+ *
57
+ * */
58
+ /**
59
+ * Render the credits. If the credits are disabled, they will be removed
60
+ * from the container.
61
+ */
62
+ render() {
63
+ const grid = this.grid;
64
+ const contentWrapper = grid.contentWrapper;
65
+ const { text, href } = this.options;
66
+ this.containerElement.remove();
67
+ if (!this.textElement) {
68
+ this.textElement = this.renderAnchor();
69
+ }
70
+ if (text) {
71
+ setHTMLContent(this.textElement, text);
72
+ }
73
+ if (href) {
74
+ this.textElement.setAttribute('href', href || '');
75
+ }
76
+ if (grid.descriptionElement) {
77
+ contentWrapper?.insertBefore(this.containerElement, grid.descriptionElement);
78
+ }
79
+ else {
80
+ contentWrapper?.appendChild(this.containerElement);
81
+ }
82
+ }
83
+ renderAnchor() {
84
+ const anchorElement = makeHTMLElement('a', {
85
+ className: Globals.getClassName('creditsText')
86
+ }, this.containerElement);
87
+ anchorElement.setAttribute('target', '_blank');
88
+ anchorElement.setAttribute('alt', 'Highcharts logo');
89
+ return anchorElement;
90
+ }
91
+ /**
92
+ * Get the height of the credits container.
93
+ */
94
+ getHeight() {
95
+ return this.containerElement.offsetHeight;
96
+ }
97
+ /**
98
+ * Destroy the credits. The credits will be removed from the container and
99
+ * the reference to the credits will be deleted from the Grid instance
100
+ * it belongs to.
101
+ */
102
+ destroy() {
103
+ this.containerElement.remove();
104
+ }
105
+ }
106
+ /* *
107
+ *
108
+ * Static Properties
109
+ *
110
+ * */
111
+ /**
112
+ * Default options of the credits.
113
+ */
114
+ Credits.defaultOptions = {
115
+ enabled: true,
116
+ text: '',
117
+ href: 'https://www.highcharts.com',
118
+ position: 'bottom'
119
+ };
120
+ /* *
121
+ *
122
+ * Default Export
123
+ *
124
+ * */
125
+ export default Credits;
@@ -0,0 +1,20 @@
1
+ import type Options from './Options';
2
+ import type { DeepPartial } from '../../Shared/Types';
3
+ /**
4
+ * Namespace for default options.
5
+ */
6
+ declare namespace Defaults {
7
+ /**
8
+ * Default options for the Grid.
9
+ */
10
+ const defaultOptions: DeepPartial<Options>;
11
+ /**
12
+ * Merge the default options with custom options. Commonly used for defining
13
+ * reusable templates.
14
+ *
15
+ * @param options
16
+ * The new custom chart options.
17
+ */
18
+ function setOptions(options: DeepPartial<Options>): void;
19
+ }
20
+ export default Defaults;