@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,122 @@
1
+ /* *
2
+ *
3
+ * Checkbox 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
+ /* *
20
+ *
21
+ * Class
22
+ *
23
+ * */
24
+ /**
25
+ * Represents a checkbox type of cell content.
26
+ */
27
+ class CheckboxContent extends CellContentPro {
28
+ /* *
29
+ *
30
+ * Constructor
31
+ *
32
+ * */
33
+ constructor(cell, renderer, parentElement) {
34
+ super(cell, renderer);
35
+ this.finishAfterChange = false;
36
+ this.onChange = (e) => {
37
+ if (this.changeHandler) {
38
+ this.changeHandler(e);
39
+ }
40
+ else {
41
+ void this.cell.setValue(this.value, true);
42
+ }
43
+ };
44
+ this.onKeyDown = (e) => {
45
+ this.keyDownHandler?.(e);
46
+ };
47
+ this.onBlur = (e) => {
48
+ this.blurHandler?.(e);
49
+ };
50
+ this.onCellKeyDown = (e) => {
51
+ if (e.key === ' ') {
52
+ this.input.click();
53
+ }
54
+ };
55
+ this.input = this.add(parentElement);
56
+ }
57
+ /* *
58
+ *
59
+ * Methods
60
+ *
61
+ * */
62
+ add(parentElement = this.cell.htmlElement) {
63
+ const cell = this.cell;
64
+ const { options } = this.renderer;
65
+ const input = this.input = document.createElement('input');
66
+ input.tabIndex = -1;
67
+ input.type = 'checkbox';
68
+ input.name = cell.column.id + '-' + cell.row.id;
69
+ if (options.attributes) {
70
+ Object.entries(options.attributes).forEach(([key, value]) => {
71
+ input.setAttribute(key, value);
72
+ });
73
+ }
74
+ this.update();
75
+ parentElement.appendChild(this.input);
76
+ input.classList.add(Globals.classNamePrefix + 'field-auto-width');
77
+ input.addEventListener('change', this.onChange);
78
+ input.addEventListener('keydown', this.onKeyDown);
79
+ input.addEventListener('blur', this.onBlur);
80
+ this.cell.htmlElement.addEventListener('keydown', this.onCellKeyDown);
81
+ return this.input;
82
+ }
83
+ update() {
84
+ const cell = this.cell;
85
+ const input = this.input;
86
+ const { options } = this.renderer;
87
+ input.checked = !!cell.value;
88
+ input.disabled = !!options.disabled;
89
+ }
90
+ get rawValue() {
91
+ return this.input.checked ? 'true' : 'false';
92
+ }
93
+ get value() {
94
+ const val = this.input.checked;
95
+ switch (this.cell.column.dataType) {
96
+ case 'datetime':
97
+ case 'number':
98
+ return +val;
99
+ case 'boolean':
100
+ return val;
101
+ case 'string':
102
+ return '' + val;
103
+ }
104
+ }
105
+ getMainElement() {
106
+ return this.input;
107
+ }
108
+ destroy() {
109
+ const input = this.input;
110
+ this.cell.htmlElement.removeEventListener('keydown', this.onCellKeyDown);
111
+ input.removeEventListener('blur', this.onBlur);
112
+ input.removeEventListener('keydown', this.onKeyDown);
113
+ input.removeEventListener('change', this.onChange);
114
+ input.remove();
115
+ }
116
+ }
117
+ /* *
118
+ *
119
+ * Default Export
120
+ *
121
+ * */
122
+ export default CheckboxContent;
@@ -0,0 +1,12 @@
1
+ import type { EditModeContent } from '../../CellEditing/CellEditMode.js';
2
+ import type DateInputRenderer from '../Renderers/DateInputRenderer.js';
3
+ import DateInputContentBase from './DateInputContentBase.js';
4
+ /**
5
+ * Represents a date input type of cell content.
6
+ */
7
+ declare class DateInputContent extends DateInputContentBase implements EditModeContent {
8
+ options: DateInputRenderer.Options;
9
+ protected getInputType(): 'date';
10
+ protected convertToInputValue(): string;
11
+ }
12
+ export default DateInputContent;
@@ -0,0 +1,39 @@
1
+ /* *
2
+ *
3
+ * Date 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 DateInputContentBase from './DateInputContentBase.js';
18
+ /* *
19
+ *
20
+ * Class
21
+ *
22
+ * */
23
+ /**
24
+ * Represents a date input type of cell content.
25
+ */
26
+ class DateInputContent extends DateInputContentBase {
27
+ getInputType() {
28
+ return 'date';
29
+ }
30
+ convertToInputValue() {
31
+ return this.cell.column.viewport.grid.time.dateFormat('%Y-%m-%d', Number(this.cell.value || 0));
32
+ }
33
+ }
34
+ /* *
35
+ *
36
+ * Default Export
37
+ *
38
+ * */
39
+ export default DateInputContent;
@@ -0,0 +1,66 @@
1
+ import type DateInputRendererBase from '../Renderers/DateInputRendererBase';
2
+ import type { EditModeContent } from '../../CellEditing/CellEditMode';
3
+ import type TableCell from '../../../Core/Table/Body/TableCell';
4
+ import CellContentPro from '../CellContentPro.js';
5
+ import CellRenderer from '../CellRenderer';
6
+ /**
7
+ * Represents a date/time/datetime input type of cell content.
8
+ */
9
+ declare abstract class DateInputContentBase 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
+ * Options of the renderer.
19
+ */
20
+ options: DateInputRendererBase.Options;
21
+ /**
22
+ * The HTML input element representing the date input.
23
+ */
24
+ protected input: HTMLInputElement;
25
+ constructor(cell: TableCell, renderer: CellRenderer, parentElement?: HTMLElement);
26
+ /**
27
+ * Adds the input element to the parent element.
28
+ * @param parentElement The parent element to add the input element to.
29
+ * @returns The input element.
30
+ */
31
+ add(parentElement?: HTMLElement): HTMLInputElement;
32
+ /**
33
+ * Gets the input type. Used to override the input type.
34
+ */
35
+ protected abstract getInputType(): 'date' | 'datetime-local' | 'time';
36
+ /**
37
+ * Updates the input element.
38
+ */
39
+ update(): void;
40
+ /**
41
+ * Gets the raw value of the input element.
42
+ */
43
+ get rawValue(): string;
44
+ /**
45
+ * Gets the value of the input element.
46
+ */
47
+ get value(): number;
48
+ /**
49
+ * Gets the main element (input) of the content.
50
+ * @returns The input element.
51
+ */
52
+ getMainElement(): HTMLInputElement;
53
+ /**
54
+ * Destroys the content.
55
+ */
56
+ destroy(): void;
57
+ /**
58
+ * Converts the cell value to a string for the input.
59
+ */
60
+ protected abstract convertToInputValue(): string;
61
+ private readonly onChange;
62
+ private readonly onKeyDown;
63
+ private readonly onBlur;
64
+ private readonly onCellKeyDown;
65
+ }
66
+ export default DateInputContentBase;
@@ -0,0 +1,145 @@
1
+ /* *
2
+ *
3
+ * Date Input Cell Content Base 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 CellContentPro from '../CellContentPro.js';
17
+ /* *
18
+ *
19
+ * Class
20
+ *
21
+ * */
22
+ /**
23
+ * Represents a date/time/datetime input type of cell content.
24
+ */
25
+ class DateInputContentBase extends CellContentPro {
26
+ /* *
27
+ *
28
+ * Constructor
29
+ *
30
+ * */
31
+ constructor(cell, renderer, parentElement) {
32
+ super(cell, renderer);
33
+ /**
34
+ * Whether to finish the edit after a change.
35
+ */
36
+ this.finishAfterChange = false;
37
+ this.onChange = (e) => {
38
+ this.changeHandler?.(e);
39
+ };
40
+ this.onKeyDown = (e) => {
41
+ e.stopPropagation();
42
+ if (this.keyDownHandler) {
43
+ this.keyDownHandler(e);
44
+ return;
45
+ }
46
+ if (e.key === 'Escape') {
47
+ this.cell.htmlElement.focus();
48
+ this.input.value = this.convertToInputValue();
49
+ return;
50
+ }
51
+ if (e.key === 'Enter') {
52
+ this.cell.htmlElement.focus();
53
+ void this.cell.setValue(this.value, true);
54
+ }
55
+ };
56
+ this.onBlur = (e) => {
57
+ if (this.blurHandler) {
58
+ this.blurHandler(e);
59
+ return;
60
+ }
61
+ void this.cell.setValue(this.value, true);
62
+ };
63
+ this.onCellKeyDown = (e) => {
64
+ if (e.key === ' ') {
65
+ this.input.focus();
66
+ e.preventDefault();
67
+ }
68
+ };
69
+ this.options = renderer.options;
70
+ this.input = this.add(parentElement);
71
+ }
72
+ /* *
73
+ *
74
+ * Methods
75
+ *
76
+ * */
77
+ /**
78
+ * Adds the input element to the parent element.
79
+ * @param parentElement The parent element to add the input element to.
80
+ * @returns The input element.
81
+ */
82
+ add(parentElement = this.cell.htmlElement) {
83
+ const { cell, options } = this;
84
+ const input = this.input = document.createElement('input');
85
+ input.tabIndex = -1;
86
+ input.type = this.getInputType();
87
+ input.name = cell.column.id + '-' + cell.row.id;
88
+ if (options.attributes) {
89
+ Object.entries(options.attributes).forEach(([key, value]) => {
90
+ input.setAttribute(key, value);
91
+ });
92
+ }
93
+ this.update();
94
+ parentElement.appendChild(input);
95
+ input.addEventListener('change', this.onChange);
96
+ input.addEventListener('keydown', this.onKeyDown);
97
+ input.addEventListener('blur', this.onBlur);
98
+ this.cell.htmlElement.addEventListener('keydown', this.onCellKeyDown);
99
+ return this.input;
100
+ }
101
+ /**
102
+ * Updates the input element.
103
+ */
104
+ update() {
105
+ const input = this.input;
106
+ input.value = this.convertToInputValue();
107
+ input.disabled = !!this.options.disabled;
108
+ }
109
+ /**
110
+ * Gets the raw value of the input element.
111
+ */
112
+ get rawValue() {
113
+ return this.input.value;
114
+ }
115
+ /**
116
+ * Gets the value of the input element.
117
+ */
118
+ get value() {
119
+ return new Date(`${this.input.value}Z`).getTime();
120
+ }
121
+ /**
122
+ * Gets the main element (input) of the content.
123
+ * @returns The input element.
124
+ */
125
+ getMainElement() {
126
+ return this.input;
127
+ }
128
+ /**
129
+ * Destroys the content.
130
+ */
131
+ destroy() {
132
+ const input = this.input;
133
+ this.cell.htmlElement.removeEventListener('keydown', this.onCellKeyDown);
134
+ input.removeEventListener('blur', this.onBlur);
135
+ input.removeEventListener('keydown', this.onKeyDown);
136
+ input.removeEventListener('change', this.onChange);
137
+ input.remove();
138
+ }
139
+ }
140
+ /* *
141
+ *
142
+ * Default Export
143
+ *
144
+ * */
145
+ export default DateInputContentBase;
@@ -0,0 +1,12 @@
1
+ import type { EditModeContent } from '../../CellEditing/CellEditMode.js';
2
+ import type DateTimeInputRenderer from '../Renderers/DateTimeInputRenderer.js';
3
+ import DateInputContentBase from './DateInputContentBase.js';
4
+ /**
5
+ * Represents a datetime input type of cell content.
6
+ */
7
+ declare class DateTimeInputContent extends DateInputContentBase implements EditModeContent {
8
+ options: DateTimeInputRenderer.Options;
9
+ protected getInputType(): 'datetime-local';
10
+ protected convertToInputValue(): string;
11
+ }
12
+ export default DateTimeInputContent;
@@ -0,0 +1,38 @@
1
+ /* *
2
+ *
3
+ * DateTime 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 datetime input type of cell content.
24
+ */
25
+ class DateTimeInputContent extends DateInputContentBase {
26
+ getInputType() {
27
+ return 'datetime-local';
28
+ }
29
+ convertToInputValue() {
30
+ return this.cell.column.viewport.grid.time.dateFormat('%Y-%m-%dT%H:%M:%S', Number(this.cell.value || 0));
31
+ }
32
+ }
33
+ /* *
34
+ *
35
+ * Default Export
36
+ *
37
+ * */
38
+ export default DateTimeInputContent;
@@ -0,0 +1,58 @@
1
+ import type { EditModeContent } from '../../CellEditing/CellEditMode';
2
+ import type TableCell from '../../../Core/Table/Body/TableCell';
3
+ import type NumberInputRenderer from '../Renderers/NumberInputRenderer';
4
+ import CellContentPro from '../CellContentPro.js';
5
+ /**
6
+ * Represents a text input type of cell content.
7
+ */
8
+ declare class NumberInputContent extends CellContentPro implements EditModeContent {
9
+ /**
10
+ * Whether to finish the edit after a change.
11
+ */
12
+ finishAfterChange: boolean;
13
+ blurHandler?: (e: FocusEvent) => void;
14
+ keyDownHandler?: (e: KeyboardEvent) => void;
15
+ changeHandler?: (e: Event) => void;
16
+ /**
17
+ * The HTML input element representing the text input.
18
+ */
19
+ private input;
20
+ constructor(cell: TableCell, renderer: NumberInputRenderer, parentElement?: HTMLElement);
21
+ /**
22
+ * Adds the input element to the parent element.
23
+ * @param parentElement The parent element to add the input element to.
24
+ * @returns The input element.
25
+ */
26
+ add(parentElement?: HTMLElement): HTMLInputElement;
27
+ /**
28
+ * Updates the input element.
29
+ */
30
+ update(): void;
31
+ /**
32
+ * Gets the raw value of the input element.
33
+ */
34
+ get rawValue(): string;
35
+ /**
36
+ * Gets the number value of the input element.
37
+ */
38
+ get value(): number;
39
+ private readonly dblClickHandler;
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 NumberInputContent;
@@ -0,0 +1,158 @@
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
+ * - Sebastian Bochan
13
+ *
14
+ * */
15
+ 'use strict';
16
+ import CellContentPro from '../CellContentPro.js';
17
+ import U from '../../../../Core/Utilities.js';
18
+ const { defined } = U;
19
+ /* *
20
+ *
21
+ * Class
22
+ *
23
+ * */
24
+ /**
25
+ * Represents a text input type of cell content.
26
+ */
27
+ class NumberInputContent 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 = false;
39
+ this.dblClickHandler = (e) => {
40
+ e.stopPropagation();
41
+ this.input.focus();
42
+ };
43
+ this.onChange = (e) => {
44
+ if (this.changeHandler) {
45
+ this.changeHandler(e);
46
+ return;
47
+ }
48
+ void this.cell.setValue(this.value, true);
49
+ };
50
+ this.onKeyDown = (e) => {
51
+ e.stopPropagation();
52
+ if (this.keyDownHandler) {
53
+ this.keyDownHandler(e);
54
+ return;
55
+ }
56
+ if (e.key === 'Escape') {
57
+ this.input.value = this.convertToInputValue();
58
+ this.cell.htmlElement.focus();
59
+ return;
60
+ }
61
+ if (e.key === 'Enter') {
62
+ this.cell.htmlElement.focus();
63
+ }
64
+ };
65
+ this.onBlur = (e) => {
66
+ this.blurHandler?.(e);
67
+ };
68
+ this.onCellKeyDown = (e) => {
69
+ if (e.key === ' ') {
70
+ this.input.focus();
71
+ e.preventDefault();
72
+ }
73
+ };
74
+ this.input = this.add(parentElement);
75
+ }
76
+ /* *
77
+ *
78
+ * Methods
79
+ *
80
+ * */
81
+ /**
82
+ * Adds the input element to the parent element.
83
+ * @param parentElement The parent element to add the input element to.
84
+ * @returns The input element.
85
+ */
86
+ add(parentElement = this.cell.htmlElement) {
87
+ const cell = this.cell;
88
+ const input = this.input = document.createElement('input');
89
+ const { options } = this.renderer;
90
+ input.type = 'number';
91
+ input.tabIndex = -1;
92
+ input.name = cell.column.id + '-' + cell.row.id;
93
+ if (options.attributes) {
94
+ Object.entries(options.attributes).forEach(([key, value]) => {
95
+ input.setAttribute(key, value);
96
+ });
97
+ }
98
+ this.update();
99
+ parentElement.appendChild(this.input);
100
+ input.addEventListener('change', this.onChange);
101
+ input.addEventListener('keydown', this.onKeyDown);
102
+ input.addEventListener('blur', this.onBlur);
103
+ input.addEventListener('dblclick', this.dblClickHandler);
104
+ this.cell.htmlElement.addEventListener('keydown', this.onCellKeyDown);
105
+ return input;
106
+ }
107
+ /**
108
+ * Updates the input element.
109
+ */
110
+ update() {
111
+ const { options } = this.renderer;
112
+ this.input.value = this.convertToInputValue();
113
+ this.input.disabled = !!options.disabled;
114
+ }
115
+ /**
116
+ * Gets the raw value of the input element.
117
+ */
118
+ get rawValue() {
119
+ return this.input.value;
120
+ }
121
+ /**
122
+ * Gets the number value of the input element.
123
+ */
124
+ get value() {
125
+ return +this.input.value;
126
+ }
127
+ /**
128
+ * Converts the cell value to a string for the input.
129
+ */
130
+ convertToInputValue() {
131
+ const val = this.cell.value;
132
+ return defined(val) ? '' + val : '';
133
+ }
134
+ /**
135
+ * Gets the main element (input) of the content.
136
+ * @returns The input element.
137
+ */
138
+ getMainElement() {
139
+ return this.input;
140
+ }
141
+ /**
142
+ * Destroys the content.
143
+ */
144
+ destroy() {
145
+ const input = this.input;
146
+ this.cell.htmlElement.removeEventListener('keydown', this.onCellKeyDown);
147
+ input.removeEventListener('blur', this.onBlur);
148
+ input.removeEventListener('keydown', this.onKeyDown);
149
+ input.removeEventListener('change', this.onChange);
150
+ input.remove();
151
+ }
152
+ }
153
+ /* *
154
+ *
155
+ * Default Export
156
+ *
157
+ * */
158
+ export default NumberInputContent;