@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,58 @@
1
+ import type DataTable from '../../../../Data/DataTable';
2
+ import type { EditModeContent } from '../../CellEditing/CellEditMode';
3
+ import type SelectRenderer from '../Renderers/SelectRenderer';
4
+ import type TableCell from '../../../Core/Table/Body/TableCell';
5
+ import CellContentPro from '../CellContentPro.js';
6
+ /**
7
+ * Represents a select type of cell content.
8
+ */
9
+ declare class SelectContent extends CellContentPro implements EditModeContent {
10
+ /**
11
+ * Whether to finish the edit after a change.
12
+ */
13
+ finishAfterChange: boolean;
14
+ blurHandler?: (e: FocusEvent) => void;
15
+ keyDownHandler?: (e: KeyboardEvent) => void;
16
+ changeHandler?: (e: Event) => void;
17
+ /**
18
+ * The HTML select element representing the select input.
19
+ */
20
+ private select;
21
+ /**
22
+ * The HTML option elements representing the options in the select input.
23
+ */
24
+ private optionElements;
25
+ constructor(cell: TableCell, renderer: SelectRenderer, parentElement?: HTMLElement);
26
+ /**
27
+ * Adds the select element to the parent element.
28
+ * @param parentElement The parent element to add the select element to.
29
+ * @returns The select element.
30
+ */
31
+ protected add(parentElement?: HTMLElement): HTMLSelectElement;
32
+ /**
33
+ * Updates the select element.
34
+ */
35
+ update(): void;
36
+ /**
37
+ * Destroys the content.
38
+ */
39
+ destroy(): void;
40
+ /**
41
+ * Gets the raw value of the select element.
42
+ */
43
+ get rawValue(): string;
44
+ /**
45
+ * Gets the value of the select element.
46
+ */
47
+ get value(): DataTable.CellType;
48
+ /**
49
+ * Gets the main element (select) of the content.
50
+ * @returns The select element.
51
+ */
52
+ getMainElement(): HTMLSelectElement;
53
+ private readonly onChange;
54
+ private readonly onKeyDown;
55
+ private readonly onBlur;
56
+ private readonly onCellKeyDown;
57
+ }
58
+ export default SelectContent;
@@ -0,0 +1,173 @@
1
+ /* *
2
+ *
3
+ * Select Cell Content 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 CellContentPro from '../CellContentPro.js';
18
+ import AST from '../../../../Core/Renderer/HTML/AST.js';
19
+ /* *
20
+ *
21
+ * Class
22
+ *
23
+ * */
24
+ /**
25
+ * Represents a select type of cell content.
26
+ */
27
+ class SelectContent extends CellContentPro {
28
+ /* *
29
+ *
30
+ * Constructor
31
+ *
32
+ * */
33
+ constructor(cell, renderer, parentElement) {
34
+ super(cell, renderer);
35
+ /**
36
+ * Whether to finish the edit after a change.
37
+ */
38
+ this.finishAfterChange = true;
39
+ /**
40
+ * The HTML option elements representing the options in the select input.
41
+ */
42
+ this.optionElements = [];
43
+ this.onChange = (e) => {
44
+ if (this.changeHandler) {
45
+ this.changeHandler(e);
46
+ }
47
+ else {
48
+ this.cell.htmlElement.focus();
49
+ void this.cell.setValue(this.value, true);
50
+ }
51
+ };
52
+ this.onKeyDown = (e) => {
53
+ e.stopPropagation();
54
+ if (this.keyDownHandler) {
55
+ this.keyDownHandler?.(e);
56
+ return;
57
+ }
58
+ if (e.key === 'Escape' || e.key === 'Enter') {
59
+ this.cell.htmlElement.focus();
60
+ }
61
+ };
62
+ this.onBlur = (e) => {
63
+ this.blurHandler?.(e);
64
+ };
65
+ this.onCellKeyDown = (e) => {
66
+ if (e.key === ' ') {
67
+ this.select.focus();
68
+ e.preventDefault();
69
+ }
70
+ };
71
+ this.select = this.add(parentElement);
72
+ }
73
+ /* *
74
+ *
75
+ * Methods
76
+ *
77
+ * */
78
+ /**
79
+ * Adds the select element to the parent element.
80
+ * @param parentElement The parent element to add the select element to.
81
+ * @returns The select element.
82
+ */
83
+ add(parentElement = this.cell.htmlElement) {
84
+ const cell = this.cell;
85
+ const { options } = this.renderer;
86
+ const select = this.select = document.createElement('select');
87
+ select.tabIndex = -1;
88
+ select.name = cell.column.id + '-' + cell.row.id;
89
+ if (options.attributes) {
90
+ Object.entries(options.attributes).forEach(([key, value]) => {
91
+ select.setAttribute(key, value);
92
+ });
93
+ }
94
+ this.update();
95
+ parentElement.appendChild(this.select);
96
+ select.addEventListener('change', this.onChange);
97
+ select.addEventListener('keydown', this.onKeyDown);
98
+ select.addEventListener('blur', this.onBlur);
99
+ this.cell.htmlElement.addEventListener('keydown', this.onCellKeyDown);
100
+ return select;
101
+ }
102
+ /**
103
+ * Updates the select element.
104
+ */
105
+ update() {
106
+ const cell = this.cell;
107
+ const { options } = this.renderer;
108
+ this.select.disabled = !!options.disabled;
109
+ // If there will be a need, we can optimize this by not removing all
110
+ // old options and only updating the ones that need to be updated.
111
+ this.select.innerHTML = AST.emptyHTML;
112
+ for (const option of options.options) {
113
+ const optionElement = document.createElement('option');
114
+ optionElement.value = option.value;
115
+ optionElement.textContent = option.label || option.value;
116
+ optionElement.disabled = !!option.disabled;
117
+ if (cell.value === option.value) {
118
+ optionElement.selected = true;
119
+ }
120
+ this.select.appendChild(optionElement);
121
+ this.optionElements.push(optionElement);
122
+ }
123
+ }
124
+ /**
125
+ * Destroys the content.
126
+ */
127
+ destroy() {
128
+ const select = this.select;
129
+ this.cell.htmlElement.removeEventListener('keydown', this.onCellKeyDown);
130
+ select.removeEventListener('blur', this.onBlur);
131
+ select.removeEventListener('keydown', this.onKeyDown);
132
+ select.removeEventListener('change', this.onChange);
133
+ for (const optionElement of this.optionElements) {
134
+ optionElement.remove();
135
+ }
136
+ this.optionElements.length = 0;
137
+ select.remove();
138
+ }
139
+ /**
140
+ * Gets the raw value of the select element.
141
+ */
142
+ get rawValue() {
143
+ return this.select.value;
144
+ }
145
+ /**
146
+ * Gets the value of the select element.
147
+ */
148
+ get value() {
149
+ const val = this.select.value;
150
+ switch (this.cell.column.dataType) {
151
+ case 'datetime':
152
+ case 'number':
153
+ return +val;
154
+ case 'boolean':
155
+ return val;
156
+ case 'string':
157
+ return '' + val;
158
+ }
159
+ }
160
+ /**
161
+ * Gets the main element (select) of the content.
162
+ * @returns The select element.
163
+ */
164
+ getMainElement() {
165
+ return this.select;
166
+ }
167
+ }
168
+ /* *
169
+ *
170
+ * Default Export
171
+ *
172
+ * */
173
+ export default SelectContent;
@@ -0,0 +1,28 @@
1
+ import type { DeepPartial } from '../../../../Shared/Types';
2
+ import type SparklineRenderer from '../Renderers/SparklineRenderer';
3
+ import type TableCell from '../../../Core/Table/Body/TableCell';
4
+ import * as HighchartsNamespace from '../../highcharts';
5
+ import CellContentPro from '../CellContentPro.js';
6
+ /**
7
+ * Represents a sparkline type of cell content.
8
+ */
9
+ declare class SparklineContent extends CellContentPro {
10
+ static defaultChartOptions: DeepPartial<HighchartsNamespace.Options>;
11
+ chart?: HighchartsNamespace.Chart;
12
+ private chartContainer?;
13
+ constructor(cell: TableCell, renderer: SparklineRenderer, parentElement?: HTMLElement);
14
+ protected add(parentElement?: HTMLElement): void;
15
+ update(): void;
16
+ destroy(): void;
17
+ private getProcessedOptions;
18
+ private onKeyDown;
19
+ }
20
+ declare namespace SparklineContent {
21
+ /**
22
+ * Highcharts namespace used by the Sparkline Renderer.
23
+ * This is set to `undefined` by default, and should be set to the
24
+ * Highcharts namespace before using the Sparkline Renderer.
25
+ */
26
+ let H: undefined | typeof HighchartsNamespace;
27
+ }
28
+ export default SparklineContent;
@@ -0,0 +1,157 @@
1
+ /* *
2
+ *
3
+ * Sparkline Cell Content 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 CellContentPro from '../CellContentPro.js';
18
+ import Globals from '../../../Core/Globals.js';
19
+ import U from '../../../../Core/Utilities.js';
20
+ const { defined, merge } = U;
21
+ /* *
22
+ *
23
+ * Class
24
+ *
25
+ * */
26
+ /**
27
+ * Represents a sparkline type of cell content.
28
+ */
29
+ class SparklineContent extends CellContentPro {
30
+ /* *
31
+ *
32
+ * Constructor
33
+ *
34
+ * */
35
+ constructor(cell, renderer, parentElement) {
36
+ super(cell, renderer);
37
+ this.onKeyDown = () => {
38
+ this.cell.htmlElement.focus();
39
+ };
40
+ this.add(parentElement);
41
+ }
42
+ /* *
43
+ *
44
+ * Methods
45
+ *
46
+ * */
47
+ add(parentElement = this.cell.htmlElement) {
48
+ const H = SparklineContent.H;
49
+ if (!H || !defined(this.cell.value)) {
50
+ return;
51
+ }
52
+ this.chartContainer = document.createElement('div');
53
+ parentElement.classList.add(Globals.getClassName('noPadding'));
54
+ parentElement.appendChild(this.chartContainer);
55
+ this.chart = H.Chart.chart(this.chartContainer, merge(SparklineContent.defaultChartOptions, this.getProcessedOptions()));
56
+ this.chartContainer.addEventListener('click', this.onKeyDown);
57
+ }
58
+ update() {
59
+ const chartOptions = this.getProcessedOptions();
60
+ this.chart?.update(chartOptions, true, false, chartOptions.chart?.animation);
61
+ }
62
+ destroy() {
63
+ this.chartContainer?.removeEventListener('keydown', this.onKeyDown);
64
+ this.chart?.destroy();
65
+ this.chartContainer?.remove();
66
+ delete this.chart;
67
+ delete this.chartContainer;
68
+ this.cell.htmlElement.classList.remove(Globals.getClassName('noPadding'));
69
+ }
70
+ getProcessedOptions() {
71
+ const renderer = this.renderer;
72
+ const { chartOptions } = renderer.options;
73
+ let options;
74
+ if (typeof chartOptions === 'function') {
75
+ options = chartOptions.call(this.cell, this.cell.value);
76
+ }
77
+ else {
78
+ options = merge(chartOptions) || {};
79
+ }
80
+ let trimmedValue = ('' + this.cell.value).trim();
81
+ if (!trimmedValue.startsWith('[') && !trimmedValue.startsWith('{')) {
82
+ trimmedValue = `[${trimmedValue}]`;
83
+ }
84
+ if (!options.series) {
85
+ options.series = [{
86
+ data: JSON.parse(trimmedValue)
87
+ }];
88
+ }
89
+ return options;
90
+ }
91
+ }
92
+ SparklineContent.defaultChartOptions = {
93
+ chart: {
94
+ height: 40,
95
+ margin: [5, 8, 5, 8],
96
+ backgroundColor: 'transparent',
97
+ skipClone: true
98
+ },
99
+ accessibility: {
100
+ enabled: false
101
+ },
102
+ tooltip: {
103
+ enabled: false
104
+ },
105
+ title: {
106
+ text: ''
107
+ },
108
+ credits: {
109
+ enabled: false
110
+ },
111
+ xAxis: {
112
+ visible: false
113
+ },
114
+ yAxis: {
115
+ visible: false
116
+ },
117
+ legend: {
118
+ enabled: false
119
+ },
120
+ plotOptions: {
121
+ series: {
122
+ borderWidth: 0,
123
+ marker: {
124
+ enabled: false
125
+ },
126
+ states: {
127
+ hover: {
128
+ enabled: false
129
+ },
130
+ inactive: {
131
+ enabled: false
132
+ }
133
+ },
134
+ animation: false,
135
+ dataLabels: {
136
+ enabled: false
137
+ }
138
+ },
139
+ pie: {
140
+ slicedOffset: 0,
141
+ borderRadius: 0
142
+ }
143
+ }
144
+ };
145
+ /* *
146
+ *
147
+ * Namespace
148
+ *
149
+ * */
150
+ (function (SparklineContent) {
151
+ })(SparklineContent || (SparklineContent = {}));
152
+ /* *
153
+ *
154
+ * Default Export
155
+ *
156
+ * */
157
+ export default SparklineContent;
@@ -0,0 +1,58 @@
1
+ import type DataTable from '../../../../Data/DataTable';
2
+ import type { EditModeContent } from '../../CellEditing/CellEditMode';
3
+ import type TableCell from '../../../Core/Table/Body/TableCell';
4
+ import type TextInputRenderer from '../Renderers/TextInputRenderer';
5
+ import CellContentPro from '../CellContentPro.js';
6
+ /**
7
+ * Represents a text input type of cell content.
8
+ */
9
+ declare class TextInputContent extends CellContentPro implements EditModeContent {
10
+ /**
11
+ * Whether to finish the edit after a change.
12
+ */
13
+ finishAfterChange: boolean;
14
+ blurHandler?: (e: FocusEvent) => void;
15
+ keyDownHandler?: (e: KeyboardEvent) => void;
16
+ changeHandler?: (e: Event) => void;
17
+ /**
18
+ * The HTML input element representing the text input.
19
+ */
20
+ private input;
21
+ constructor(cell: TableCell, renderer: TextInputRenderer, parentElement?: HTMLElement);
22
+ /**
23
+ * Adds the input element to the parent element.
24
+ * @param parentElement The parent element to add the input element to.
25
+ * @returns The input element.
26
+ */
27
+ add(parentElement?: HTMLElement): HTMLInputElement;
28
+ /**
29
+ * Updates the input element.
30
+ */
31
+ update(): void;
32
+ /**
33
+ * Gets the raw value of the input element.
34
+ */
35
+ get rawValue(): string;
36
+ /**
37
+ * Gets the value of the input element.
38
+ */
39
+ get value(): DataTable.CellType;
40
+ /**
41
+ * Converts the cell value to a string for the input.
42
+ */
43
+ private convertToInputValue;
44
+ /**
45
+ * Gets the main element (input) of the content.
46
+ * @returns The input element.
47
+ */
48
+ getMainElement(): HTMLInputElement;
49
+ /**
50
+ * Destroys the content.
51
+ */
52
+ destroy(): void;
53
+ private readonly onChange;
54
+ private readonly onKeyDown;
55
+ private readonly onBlur;
56
+ private readonly onCellKeyDown;
57
+ }
58
+ export default TextInputContent;
@@ -0,0 +1,168 @@
1
+ /* *
2
+ *
3
+ * Text Input Cell Content 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 CellContentPro from '../CellContentPro.js';
18
+ import U from '../../../../Core/Utilities.js';
19
+ const { defined } = U;
20
+ /* *
21
+ *
22
+ * Class
23
+ *
24
+ * */
25
+ /**
26
+ * Represents a text input type of cell content.
27
+ */
28
+ class TextInputContent extends CellContentPro {
29
+ /* *
30
+ *
31
+ * Constructor
32
+ *
33
+ * */
34
+ constructor(cell, renderer, parentElement) {
35
+ super(cell, renderer);
36
+ /**
37
+ * Whether to finish the edit after a change.
38
+ */
39
+ this.finishAfterChange = true;
40
+ this.onChange = (e) => {
41
+ if (this.changeHandler) {
42
+ this.changeHandler(e);
43
+ return;
44
+ }
45
+ void this.cell.setValue(e.target.value, true);
46
+ };
47
+ this.onKeyDown = (e) => {
48
+ e.stopPropagation();
49
+ if (this.keyDownHandler) {
50
+ this.keyDownHandler(e);
51
+ return;
52
+ }
53
+ if (e.key === 'Escape') {
54
+ this.input.value = this.convertToInputValue();
55
+ this.cell.htmlElement.focus();
56
+ return;
57
+ }
58
+ if (e.key === 'Enter') {
59
+ this.cell.htmlElement.focus();
60
+ }
61
+ };
62
+ this.onBlur = (e) => {
63
+ this.blurHandler?.(e);
64
+ };
65
+ this.onCellKeyDown = (e) => {
66
+ if (e.key === ' ') {
67
+ this.input.focus();
68
+ e.preventDefault();
69
+ }
70
+ };
71
+ this.input = this.add(parentElement);
72
+ }
73
+ /* *
74
+ *
75
+ * Methods
76
+ *
77
+ * */
78
+ /**
79
+ * Adds the input element to the parent element.
80
+ * @param parentElement The parent element to add the input element to.
81
+ * @returns The input element.
82
+ */
83
+ add(parentElement = this.cell.htmlElement) {
84
+ const cell = this.cell;
85
+ const input = this.input = document.createElement('input');
86
+ const { options } = this.renderer;
87
+ input.tabIndex = -1;
88
+ input.name = cell.column.id + '-' + cell.row.id;
89
+ if (options.attributes) {
90
+ Object.entries(options.attributes).forEach(([key, value]) => {
91
+ input.setAttribute(key, value);
92
+ });
93
+ }
94
+ this.update();
95
+ parentElement.appendChild(this.input);
96
+ input.addEventListener('change', this.onChange);
97
+ input.addEventListener('keydown', this.onKeyDown);
98
+ input.addEventListener('blur', this.onBlur);
99
+ this.cell.htmlElement.addEventListener('keydown', this.onCellKeyDown);
100
+ return input;
101
+ }
102
+ /**
103
+ * Updates the input element.
104
+ */
105
+ update() {
106
+ const { options } = this.renderer;
107
+ this.input.value = this.convertToInputValue();
108
+ this.input.disabled = !!options.disabled;
109
+ }
110
+ /**
111
+ * Gets the raw value of the input element.
112
+ */
113
+ get rawValue() {
114
+ return this.input.value;
115
+ }
116
+ /**
117
+ * Gets the value of the input element.
118
+ */
119
+ get value() {
120
+ const val = this.input.value;
121
+ switch (this.cell.column.dataType) {
122
+ case 'datetime':
123
+ case 'number':
124
+ return val === '' ? null : +val;
125
+ case 'boolean':
126
+ if (val === '') {
127
+ return null;
128
+ }
129
+ if (val === 'false' || +val === 0) {
130
+ return false;
131
+ }
132
+ return true;
133
+ case 'string':
134
+ return val;
135
+ }
136
+ }
137
+ /**
138
+ * Converts the cell value to a string for the input.
139
+ */
140
+ convertToInputValue() {
141
+ const val = this.cell.value;
142
+ return defined(val) ? '' + val : '';
143
+ }
144
+ /**
145
+ * Gets the main element (input) of the content.
146
+ * @returns The input element.
147
+ */
148
+ getMainElement() {
149
+ return this.input;
150
+ }
151
+ /**
152
+ * Destroys the content.
153
+ */
154
+ destroy() {
155
+ const input = this.input;
156
+ this.cell.htmlElement.removeEventListener('keydown', this.onCellKeyDown);
157
+ input.removeEventListener('blur', this.onBlur);
158
+ input.removeEventListener('keydown', this.onKeyDown);
159
+ input.removeEventListener('change', this.onChange);
160
+ input.remove();
161
+ }
162
+ }
163
+ /* *
164
+ *
165
+ * Default Export
166
+ *
167
+ * */
168
+ export default TextInputContent;
@@ -0,0 +1,13 @@
1
+ import type { EditModeContent } from '../../CellEditing/CellEditMode.js';
2
+ import type TimeInputRenderer from '../Renderers/TimeInputRenderer.js';
3
+ import DateInputContentBase from './DateInputContentBase.js';
4
+ /**
5
+ * Represents a time input type of cell content.
6
+ */
7
+ declare class TimeInputContent extends DateInputContentBase implements EditModeContent {
8
+ options: TimeInputRenderer.Options;
9
+ protected getInputType(): 'time';
10
+ get value(): number;
11
+ protected convertToInputValue(): string;
12
+ }
13
+ export default TimeInputContent;
@@ -0,0 +1,41 @@
1
+ /* *
2
+ *
3
+ * Time Input Cell Content 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
+ *
14
+ * */
15
+ 'use strict';
16
+ import DateInputContentBase from './DateInputContentBase.js';
17
+ /* *
18
+ *
19
+ * Class
20
+ *
21
+ * */
22
+ /**
23
+ * Represents a time input type of cell content.
24
+ */
25
+ class TimeInputContent extends DateInputContentBase {
26
+ getInputType() {
27
+ return 'time';
28
+ }
29
+ get value() {
30
+ return new Date(`1970-01-01T${this.input.value}Z`).getTime();
31
+ }
32
+ convertToInputValue() {
33
+ return this.cell.column.viewport.grid.time.dateFormat('%H:%M:%S', Number(this.cell.value || 0));
34
+ }
35
+ }
36
+ /* *
37
+ *
38
+ * Default Export
39
+ *
40
+ * */
41
+ export default TimeInputContent;