@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,53 @@
1
+ import type DataEvent from '../DataEvent';
2
+ import type { FilterModifierOptions } from './FilterModifierOptions';
3
+ import DataModifier from './DataModifier.js';
4
+ import DataTable from '../DataTable.js';
5
+ /**
6
+ * Filters out table rows matching a given condition.
7
+ */
8
+ declare class FilterModifier extends DataModifier {
9
+ /**
10
+ * Default options for the filter modifier.
11
+ */
12
+ static readonly defaultOptions: FilterModifierOptions;
13
+ /**
14
+ * Compiles a filter condition into a callback function.
15
+ *
16
+ * @param {FilterCondition} condition
17
+ * Condition to compile.
18
+ */
19
+ private static compile;
20
+ /**
21
+ * Constructs an instance of the filter modifier.
22
+ *
23
+ * @param {Partial<FilterModifier.Options>} [options]
24
+ * Options to configure the filter modifier.
25
+ */
26
+ constructor(options?: Partial<FilterModifierOptions>);
27
+ /**
28
+ * Options of the filter modifier.
29
+ */
30
+ readonly options: FilterModifierOptions;
31
+ /**
32
+ * Filters out table rows matching a given condition. If the given table
33
+ * does not have defined a `modified` property, the filtering is applied
34
+ * in-place on the original table rather than on a `modified` copy.
35
+ *
36
+ * @param {DataTable} table
37
+ * Table to modify.
38
+ *
39
+ * @param {DataEvent.Detail} [eventDetail]
40
+ * Custom information for pending events.
41
+ *
42
+ * @return {DataTable}
43
+ * Table with `modified` property as a reference or modified table, if
44
+ * `modified` property of the original table is undefined.
45
+ */
46
+ modifyTable(table: DataTable, eventDetail?: DataEvent.Detail): DataTable;
47
+ }
48
+ declare module './DataModifierType' {
49
+ interface DataModifierTypes {
50
+ Filter: typeof FilterModifier;
51
+ }
52
+ }
53
+ export default FilterModifier;
@@ -0,0 +1,172 @@
1
+ /* *
2
+ *
3
+ * (c) 2009-2025 Highsoft AS
4
+ *
5
+ * License: www.highcharts.com/license
6
+ *
7
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
8
+ *
9
+ * Authors:
10
+ * - Dawid Dragula
11
+ *
12
+ * */
13
+ 'use strict';
14
+ import DataModifier from './DataModifier.js';
15
+ import U from '../../Core/Utilities.js';
16
+ const { isFunction, merge } = U;
17
+ /* *
18
+ *
19
+ * Class
20
+ *
21
+ * */
22
+ /**
23
+ * Filters out table rows matching a given condition.
24
+ */
25
+ class FilterModifier extends DataModifier {
26
+ /* *
27
+ *
28
+ * Static Functions
29
+ *
30
+ * */
31
+ /**
32
+ * Compiles a filter condition into a callback function.
33
+ *
34
+ * @param {FilterCondition} condition
35
+ * Condition to compile.
36
+ */
37
+ static compile(condition) {
38
+ if (isFunction(condition)) {
39
+ return condition;
40
+ }
41
+ const op = condition.operator;
42
+ switch (op) {
43
+ case 'and': {
44
+ const subs = condition.conditions.map((c) => this.compile(c));
45
+ return (row, table, i) => subs.every((cond) => cond(row, table, i));
46
+ }
47
+ case 'or': {
48
+ const subs = condition.conditions.map((c) => this.compile(c));
49
+ return (row, table, i) => subs.some((cond) => cond(row, table, i));
50
+ }
51
+ case 'not': {
52
+ const sub = this.compile(condition.condition);
53
+ return (row, table, i) => !sub(row, table, i);
54
+ }
55
+ }
56
+ const { columnId: col, value } = condition;
57
+ switch (op) {
58
+ case '==':
59
+ // eslint-disable-next-line eqeqeq
60
+ return (row) => row[col] == value;
61
+ case '===':
62
+ return (row) => row[col] === value;
63
+ case '!=':
64
+ // eslint-disable-next-line eqeqeq
65
+ return (row) => row[col] != value;
66
+ case '!==':
67
+ return (row) => row[col] !== value;
68
+ case '>':
69
+ return (row) => (row[col] || 0) > (value || 0);
70
+ case '>=':
71
+ return (row) => (row[col] || 0) >= (value || 0);
72
+ case '<':
73
+ return (row) => (row[col] || 0) < (value || 0);
74
+ case '<=':
75
+ return (row) => (row[col] || 0) <= (value || 0);
76
+ case 'empty':
77
+ return (row) => row[col] === null || row[col] === '';
78
+ }
79
+ const { ignoreCase } = condition;
80
+ const str = (val) => {
81
+ const s = '' + val;
82
+ return (ignoreCase ?? true) ? s.toLowerCase() : s;
83
+ };
84
+ switch (op) {
85
+ case 'contains':
86
+ return (row) => str(row[col]).includes(str(value));
87
+ default:
88
+ return (row) => str(row[col])[op](str(value));
89
+ }
90
+ }
91
+ /* *
92
+ *
93
+ * Constructor
94
+ *
95
+ * */
96
+ /**
97
+ * Constructs an instance of the filter modifier.
98
+ *
99
+ * @param {Partial<FilterModifier.Options>} [options]
100
+ * Options to configure the filter modifier.
101
+ */
102
+ constructor(options) {
103
+ super();
104
+ this.options = merge(FilterModifier.defaultOptions, options);
105
+ }
106
+ /* *
107
+ *
108
+ * Functions
109
+ *
110
+ * */
111
+ /**
112
+ * Filters out table rows matching a given condition. If the given table
113
+ * does not have defined a `modified` property, the filtering is applied
114
+ * in-place on the original table rather than on a `modified` copy.
115
+ *
116
+ * @param {DataTable} table
117
+ * Table to modify.
118
+ *
119
+ * @param {DataEvent.Detail} [eventDetail]
120
+ * Custom information for pending events.
121
+ *
122
+ * @return {DataTable}
123
+ * Table with `modified` property as a reference or modified table, if
124
+ * `modified` property of the original table is undefined.
125
+ */
126
+ modifyTable(table, eventDetail) {
127
+ const modifier = this;
128
+ modifier.emit({ type: 'modify', detail: eventDetail, table });
129
+ const { condition } = modifier.options;
130
+ if (!condition) {
131
+ // If no condition is set, return the unmodified table.
132
+ return table;
133
+ }
134
+ const matchRow = FilterModifier.compile(condition);
135
+ const modified = table.getModified();
136
+ const rows = [];
137
+ const indexes = [];
138
+ for (let i = 0, iEnd = table.getRowCount(); i < iEnd; ++i) {
139
+ const row = table.getRowObject(i);
140
+ if (!row) {
141
+ continue;
142
+ }
143
+ if (matchRow(row, table, i)) {
144
+ rows.push(row);
145
+ indexes.push(table.getOriginalRowIndex(i));
146
+ }
147
+ }
148
+ modified.deleteRows();
149
+ modified.setRows(rows);
150
+ modified.setOriginalRowIndexes(indexes);
151
+ modifier.emit({ type: 'afterModify', detail: eventDetail, table });
152
+ return table;
153
+ }
154
+ }
155
+ /* *
156
+ *
157
+ * Static Properties
158
+ *
159
+ * */
160
+ /**
161
+ * Default options for the filter modifier.
162
+ */
163
+ FilterModifier.defaultOptions = {
164
+ type: 'Filter'
165
+ };
166
+ DataModifier.registerType('Filter', FilterModifier);
167
+ /* *
168
+ *
169
+ * Default Export
170
+ *
171
+ * */
172
+ export default FilterModifier;
@@ -0,0 +1,110 @@
1
+ import type DataModifierOptions from './DataModifierOptions';
2
+ import type DataTable from '../DataTable';
3
+ /**
4
+ * Condition that uses an universal comparison operators.
5
+ */
6
+ export interface ComparisonCondition {
7
+ /**
8
+ * Type of the operator used in the condition, comparing the value of the
9
+ * cell with the provided value.
10
+ */
11
+ operator: '==' | '!=' | '===' | '!==' | '>' | '>=' | '<' | '<=' | 'empty';
12
+ /**
13
+ * Name of the column to compare the value of the cell with.
14
+ */
15
+ columnId: string;
16
+ /**
17
+ * Value to compare the cell with.
18
+ */
19
+ value: DataTable.CellType;
20
+ }
21
+ /**
22
+ * Condition that uses string comparison operators.
23
+ */
24
+ export interface StringCondition {
25
+ /**
26
+ * Type of the operator used in the condition, comparing the value of the
27
+ * cell with the provided value. Non-string values are converted to
28
+ * strings before comparison.
29
+ */
30
+ operator: 'contains' | 'startsWith' | 'endsWith';
31
+ /**
32
+ * Name of the column to compare the value of the cell with.
33
+ */
34
+ columnId: string;
35
+ /**
36
+ * Whether the comparison should ignore case.
37
+ * @default true
38
+ */
39
+ ignoreCase?: boolean;
40
+ /**
41
+ * Value to compare the cell with.
42
+ */
43
+ value: string;
44
+ }
45
+ /**
46
+ * Condition that combines multiple conditions with logical operators.
47
+ */
48
+ export interface LogicalMultipleCondition {
49
+ /**
50
+ * Type of the operator used to combine the conditions.
51
+ */
52
+ operator: 'and' | 'or';
53
+ /**
54
+ * Array of conditions that are combined with the logical operator.
55
+ */
56
+ conditions: FilterCondition[];
57
+ }
58
+ /**
59
+ * Condition that transforms a single condition with a logical operator.
60
+ */
61
+ export interface LogicalSingleCondition {
62
+ /**
63
+ * Type of the operator used to transform the condition.
64
+ */
65
+ operator: 'not';
66
+ /**
67
+ * Condition that is transformed by the logical operator.
68
+ */
69
+ condition: FilterCondition;
70
+ }
71
+ /**
72
+ * Callback condition that is used to filter rows in a table.
73
+ *
74
+ * @param row
75
+ * Row object to check.
76
+ *
77
+ * @param table
78
+ * Data table that the row belongs to.
79
+ *
80
+ * @param rowIndex
81
+ * Index of the row in the table.
82
+ */
83
+ export type CallbackCondition = (row: DataTable.RowObject, table: DataTable, rowIndex: number) => boolean;
84
+ /**
85
+ * Serializable condition that can be used to filter rows in a table.
86
+ */
87
+ export type SerializableCondition = ComparisonCondition | StringCondition | LogicalSingleCondition | LogicalMultipleCondition;
88
+ /**
89
+ * Type of the operator used in a filter condition.
90
+ */
91
+ export type FilterOperator = SerializableCondition['operator'];
92
+ /**
93
+ * Type of the value used in a filter condition.
94
+ */
95
+ export type FilterCondition = CallbackCondition | SerializableCondition;
96
+ /**
97
+ * Options to configure the modifier.
98
+ */
99
+ export interface FilterModifierOptions extends DataModifierOptions {
100
+ /**
101
+ * Name of the related modifier for these options.
102
+ */
103
+ type: 'Filter';
104
+ /**
105
+ * Condition that must be met for a row to be included in the modified
106
+ * table.
107
+ */
108
+ condition?: FilterCondition;
109
+ }
110
+ export default FilterModifierOptions;
@@ -0,0 +1,14 @@
1
+ /* *
2
+ *
3
+ * (c) 2009-2025 Highsoft AS
4
+ *
5
+ * License: www.highcharts.com/license
6
+ *
7
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
8
+ *
9
+ * Authors:
10
+ * - Dawid Dragula
11
+ *
12
+ * */
13
+ 'use strict';
14
+ export {};
@@ -0,0 +1,48 @@
1
+ import type DataEvent from '../DataEvent';
2
+ import type InvertModifierOptions from './InvertModifierOptions';
3
+ import DataModifier from './DataModifier.js';
4
+ import DataTable from '../DataTable.js';
5
+ /**
6
+ * Inverts columns and rows in a table.
7
+ *
8
+ * @private
9
+ */
10
+ declare class InvertModifier extends DataModifier {
11
+ /**
12
+ * Default options for the invert modifier.
13
+ */
14
+ static readonly defaultOptions: InvertModifierOptions;
15
+ /**
16
+ * Constructs an instance of the invert modifier.
17
+ *
18
+ * @param {Partial<InvertModifier.Options>} [options]
19
+ * Options to configure the invert modifier.
20
+ */
21
+ constructor(options?: Partial<InvertModifierOptions>);
22
+ /**
23
+ * Options of the invert modifier.
24
+ */
25
+ options: InvertModifierOptions;
26
+ /**
27
+ * Inverts rows and columns in the table. If the given table does not have
28
+ * defined a `modified` property, the filtering is applied in-place on the
29
+ * original table rather than on a `modified` copy.
30
+ *
31
+ * @param {DataTable} table
32
+ * Table to invert.
33
+ *
34
+ * @param {DataEvent.Detail} [eventDetail]
35
+ * Custom information for pending events.
36
+ *
37
+ * @return {DataTable}
38
+ * Table with inverted `modified` property as a reference or modified table,
39
+ * if `modified` property of the original table is undefined.
40
+ */
41
+ modifyTable(table: DataTable, eventDetail?: DataEvent.Detail): DataTable;
42
+ }
43
+ declare module './DataModifierType' {
44
+ interface DataModifierTypes {
45
+ Invert: typeof InvertModifier;
46
+ }
47
+ }
48
+ export default InvertModifier;
@@ -0,0 +1,116 @@
1
+ /* *
2
+ *
3
+ * (c) 2009-2025 Highsoft AS
4
+ *
5
+ * License: www.highcharts.com/license
6
+ *
7
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
8
+ *
9
+ * Authors:
10
+ * - Wojciech Chmiel
11
+ * - Sophie Bremer
12
+ *
13
+ * */
14
+ 'use strict';
15
+ import DataModifier from './DataModifier.js';
16
+ import U from '../../Core/Utilities.js';
17
+ const { merge } = U;
18
+ /* *
19
+ *
20
+ * Class
21
+ *
22
+ * */
23
+ /**
24
+ * Inverts columns and rows in a table.
25
+ *
26
+ * @private
27
+ */
28
+ class InvertModifier extends DataModifier {
29
+ /* *
30
+ *
31
+ * Constructor
32
+ *
33
+ * */
34
+ /**
35
+ * Constructs an instance of the invert modifier.
36
+ *
37
+ * @param {Partial<InvertModifier.Options>} [options]
38
+ * Options to configure the invert modifier.
39
+ */
40
+ constructor(options) {
41
+ super();
42
+ this.options = merge(InvertModifier.defaultOptions, options);
43
+ }
44
+ /* *
45
+ *
46
+ * Functions
47
+ *
48
+ * */
49
+ /**
50
+ * Inverts rows and columns in the table. If the given table does not have
51
+ * defined a `modified` property, the filtering is applied in-place on the
52
+ * original table rather than on a `modified` copy.
53
+ *
54
+ * @param {DataTable} table
55
+ * Table to invert.
56
+ *
57
+ * @param {DataEvent.Detail} [eventDetail]
58
+ * Custom information for pending events.
59
+ *
60
+ * @return {DataTable}
61
+ * Table with inverted `modified` property as a reference or modified table,
62
+ * if `modified` property of the original table is undefined.
63
+ */
64
+ modifyTable(table, eventDetail) {
65
+ const modifier = this;
66
+ modifier.emit({ type: 'modify', detail: eventDetail, table });
67
+ const modified = table.getModified();
68
+ if (table.hasColumns(['columnIds'])) { // Inverted table
69
+ const columnIdsColumn = ((table.deleteColumns(['columnIds']) || {})
70
+ .columnIds || []), columns = {}, columnIds = [];
71
+ for (let i = 0, iEnd = columnIdsColumn.length; i < iEnd; ++i) {
72
+ columnIds.push('' + columnIdsColumn[i]);
73
+ }
74
+ for (let i = 0, iEnd = table.getRowCount(), row; i < iEnd; ++i) {
75
+ row = table.getRow(i);
76
+ if (row) {
77
+ columns[columnIds[i]] = row;
78
+ }
79
+ }
80
+ modified.deleteColumns();
81
+ modified.setColumns(columns);
82
+ }
83
+ else { // Regular table
84
+ const columns = {};
85
+ for (let i = 0, iEnd = table.getRowCount(), row; i < iEnd; ++i) {
86
+ row = table.getRow(i);
87
+ if (row) {
88
+ columns[`${i}`] = row;
89
+ }
90
+ }
91
+ columns.columnIds = table.getColumnIds();
92
+ modified.deleteColumns();
93
+ modified.setColumns(columns);
94
+ }
95
+ modifier.emit({ type: 'afterModify', detail: eventDetail, table });
96
+ return table;
97
+ }
98
+ }
99
+ /* *
100
+ *
101
+ * Static Properties
102
+ *
103
+ * */
104
+ /**
105
+ * Default options for the invert modifier.
106
+ */
107
+ InvertModifier.defaultOptions = {
108
+ type: 'Invert'
109
+ };
110
+ DataModifier.registerType('Invert', InvertModifier);
111
+ /* *
112
+ *
113
+ * Default Export
114
+ *
115
+ * */
116
+ export default InvertModifier;
@@ -0,0 +1,11 @@
1
+ import type DataModifierOptions from './DataModifierOptions';
2
+ /**
3
+ * Options to configure the modifier.
4
+ */
5
+ export interface InvertModifierOptions extends DataModifierOptions {
6
+ /**
7
+ * Name of the related modifier for these options.
8
+ */
9
+ type: 'Invert';
10
+ }
11
+ export default InvertModifierOptions;
@@ -0,0 +1,15 @@
1
+ /* *
2
+ *
3
+ * (c) 2009-2025 Highsoft AS
4
+ *
5
+ * License: www.highcharts.com/license
6
+ *
7
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
8
+ *
9
+ * Authors:
10
+ * - Wojciech Chmiel
11
+ * - Sophie Bremer
12
+ *
13
+ * */
14
+ 'use strict';
15
+ export {};
@@ -0,0 +1,68 @@
1
+ import type DataEvent from '../DataEvent';
2
+ import type DataTable from '../DataTable';
3
+ import type { Formula } from '../Formula/Formula';
4
+ import type { MathModifierOptions } from './MathModifierOptions';
5
+ import DataModifier from './DataModifier.js';
6
+ /**
7
+ * Replaces formula strings in a table with calculated values.
8
+ *
9
+ * @class
10
+ * @name Highcharts.DataModifier.types.MathModifier
11
+ * @augments Highcharts.DataModifier
12
+ */
13
+ declare class MathModifier extends DataModifier {
14
+ /**
15
+ * Default options of MathModifier.
16
+ * @private
17
+ */
18
+ static readonly defaultOptions: MathModifierOptions;
19
+ constructor(options: Partial<MathModifierOptions>);
20
+ options: MathModifierOptions;
21
+ modifyTable(table: DataTable, eventDetail?: DataEvent.Detail): DataTable;
22
+ /**
23
+ * Process a column by replacing formula strings with calculated values.
24
+ *
25
+ * @private
26
+ *
27
+ * @param {Highcharts.DataTable} table
28
+ * Table to extract column from and use as reference.
29
+ *
30
+ * @param {string} columnId
31
+ * Id of column to process.
32
+ *
33
+ * @param {number} rowIndex
34
+ * Row index to start the replacing process from.
35
+ *
36
+ * @return {Highcharts.DataTableColumn}
37
+ * Returns the processed table column.
38
+ */
39
+ protected processColumn(table: DataTable, columnId: string, rowIndex?: number): DataTable.Column;
40
+ /**
41
+ * Process a column by replacing cell values with calculated values from a
42
+ * given formula.
43
+ *
44
+ * @private
45
+ *
46
+ * @param {Highcharts.Formula} formula
47
+ * Formula to use for processing.
48
+ *
49
+ * @param {Highcharts.DataTable} table
50
+ * Table to extract column from and use as reference.
51
+ *
52
+ * @param {number} rowStart
53
+ * Row index to start the replacing process from.
54
+ *
55
+ * @param {number} rowEnd
56
+ * Row index to end the replacing process.
57
+ *
58
+ * @return {Highcharts.DataTableColumn}
59
+ * Returns the processed table column.
60
+ */
61
+ protected processColumnFormula(formula: Formula, table: DataTable, rowStart?: number, rowEnd?: number): DataTable.Column;
62
+ }
63
+ declare module './DataModifierType' {
64
+ interface DataModifierTypes {
65
+ Math: typeof MathModifier;
66
+ }
67
+ }
68
+ export default MathModifier;