@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.
- package/README.md +35 -0
- package/css/grid-pro.css +1756 -0
- package/es-modules/Accessibility/A11yI18n.d.ts +95 -0
- package/es-modules/Accessibility/A11yI18n.js +290 -0
- package/es-modules/Accessibility/Accessibility.d.ts +116 -0
- package/es-modules/Accessibility/Accessibility.js +402 -0
- package/es-modules/Accessibility/AccessibilityComponent.d.ts +97 -0
- package/es-modules/Accessibility/AccessibilityComponent.js +147 -0
- package/es-modules/Accessibility/Components/AnnotationsA11y.d.ts +43 -0
- package/es-modules/Accessibility/Components/AnnotationsA11y.js +160 -0
- package/es-modules/Accessibility/Components/ContainerComponent.d.ts +48 -0
- package/es-modules/Accessibility/Components/ContainerComponent.js +142 -0
- package/es-modules/Accessibility/Components/InfoRegionsComponent.d.ts +144 -0
- package/es-modules/Accessibility/Components/InfoRegionsComponent.js +555 -0
- package/es-modules/Accessibility/Components/LegendComponent.d.ts +124 -0
- package/es-modules/Accessibility/Components/LegendComponent.js +474 -0
- package/es-modules/Accessibility/Components/MenuComponent.d.ts +93 -0
- package/es-modules/Accessibility/Components/MenuComponent.js +430 -0
- package/es-modules/Accessibility/Components/NavigatorComponent.d.ts +57 -0
- package/es-modules/Accessibility/Components/NavigatorComponent.js +235 -0
- package/es-modules/Accessibility/Components/RangeSelectorComponent.d.ts +126 -0
- package/es-modules/Accessibility/Components/RangeSelectorComponent.js +473 -0
- package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.d.ts +18 -0
- package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +234 -0
- package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.d.ts +87 -0
- package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +309 -0
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.d.ts +53 -0
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +130 -0
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.d.ts +28 -0
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +415 -0
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.d.ts +114 -0
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +721 -0
- package/es-modules/Accessibility/Components/ZoomComponent.d.ts +96 -0
- package/es-modules/Accessibility/Components/ZoomComponent.js +314 -0
- package/es-modules/Accessibility/FocusBorder.d.ts +40 -0
- package/es-modules/Accessibility/FocusBorder.js +301 -0
- package/es-modules/Accessibility/HighContrastMode.d.ts +35 -0
- package/es-modules/Accessibility/HighContrastMode.js +100 -0
- package/es-modules/Accessibility/HighContrastTheme.d.ts +11 -0
- package/es-modules/Accessibility/HighContrastTheme.js +212 -0
- package/es-modules/Accessibility/KeyboardNavigation.d.ts +133 -0
- package/es-modules/Accessibility/KeyboardNavigation.js +450 -0
- package/es-modules/Accessibility/KeyboardNavigationHandler.d.ts +48 -0
- package/es-modules/Accessibility/KeyboardNavigationHandler.js +126 -0
- package/es-modules/Accessibility/Options/A11yDefaults.d.ts +68 -0
- package/es-modules/Accessibility/Options/A11yDefaults.js +971 -0
- package/es-modules/Accessibility/Options/DeprecatedOptions.d.ts +22 -0
- package/es-modules/Accessibility/Options/DeprecatedOptions.js +265 -0
- package/es-modules/Accessibility/Options/LangDefaults.d.ts +4 -0
- package/es-modules/Accessibility/Options/LangDefaults.js +440 -0
- package/es-modules/Accessibility/ProxyElement.d.ts +78 -0
- package/es-modules/Accessibility/ProxyElement.js +223 -0
- package/es-modules/Accessibility/ProxyProvider.d.ts +90 -0
- package/es-modules/Accessibility/ProxyProvider.js +315 -0
- package/es-modules/Accessibility/Utils/Announcer.d.ts +26 -0
- package/es-modules/Accessibility/Utils/Announcer.js +90 -0
- package/es-modules/Accessibility/Utils/ChartUtilities.d.ts +90 -0
- package/es-modules/Accessibility/Utils/ChartUtilities.js +298 -0
- package/es-modules/Accessibility/Utils/DOMElementProvider.d.ts +20 -0
- package/es-modules/Accessibility/Utils/DOMElementProvider.js +69 -0
- package/es-modules/Accessibility/Utils/EventProvider.d.ts +26 -0
- package/es-modules/Accessibility/Utils/EventProvider.js +65 -0
- package/es-modules/Accessibility/Utils/HTMLUtilities.d.ts +108 -0
- package/es-modules/Accessibility/Utils/HTMLUtilities.js +319 -0
- package/es-modules/Core/Animation/AnimationUtilities.d.ts +107 -0
- package/es-modules/Core/Animation/AnimationUtilities.js +200 -0
- package/es-modules/Core/Animation/Fx.d.ts +130 -0
- package/es-modules/Core/Animation/Fx.js +388 -0
- package/es-modules/Core/Chart/Chart.d.ts +1009 -0
- package/es-modules/Core/Chart/Chart.js +3008 -0
- package/es-modules/Core/Chart/Chart3D.d.ts +276 -0
- package/es-modules/Core/Chart/Chart3D.js +1686 -0
- package/es-modules/Core/Chart/ChartDefaults.d.ts +8 -0
- package/es-modules/Core/Chart/ChartDefaults.js +1304 -0
- package/es-modules/Core/Chart/ChartNavigationComposition.d.ts +55 -0
- package/es-modules/Core/Chart/ChartNavigationComposition.js +90 -0
- package/es-modules/Core/Chart/GanttChart.d.ts +74 -0
- package/es-modules/Core/Chart/GanttChart.js +189 -0
- package/es-modules/Core/Chart/MapChart.d.ts +132 -0
- package/es-modules/Core/Chart/MapChart.js +232 -0
- package/es-modules/Core/Chart/StockChart.d.ts +117 -0
- package/es-modules/Core/Chart/StockChart.js +641 -0
- package/es-modules/Core/Color/Color.d.ts +112 -0
- package/es-modules/Core/Color/Color.js +418 -0
- package/es-modules/Core/Color/Palettes.d.ts +84 -0
- package/es-modules/Core/Color/Palettes.js +23 -0
- package/es-modules/Core/Defaults.d.ts +42 -0
- package/es-modules/Core/Defaults.js +2977 -0
- package/es-modules/Core/Foundation.d.ts +19 -0
- package/es-modules/Core/Foundation.js +63 -0
- package/es-modules/Core/Geometry/CircleUtilities.d.ts +189 -0
- package/es-modules/Core/Geometry/CircleUtilities.js +388 -0
- package/es-modules/Core/Geometry/GeometryUtilities.d.ts +48 -0
- package/es-modules/Core/Geometry/GeometryUtilities.js +105 -0
- package/es-modules/Core/Geometry/PolygonClip.d.ts +19 -0
- package/es-modules/Core/Geometry/PolygonClip.js +96 -0
- package/es-modules/Core/Globals.d.ts +110 -0
- package/es-modules/Core/Globals.js +127 -0
- package/es-modules/Core/HttpUtilities.d.ts +61 -0
- package/es-modules/Core/HttpUtilities.js +214 -0
- package/es-modules/Core/MSPointer.d.ts +74 -0
- package/es-modules/Core/MSPointer.js +218 -0
- package/es-modules/Core/Math3D.d.ts +117 -0
- package/es-modules/Core/Math3D.js +250 -0
- package/es-modules/Core/Pointer.d.ts +590 -0
- package/es-modules/Core/Pointer.js +1631 -0
- package/es-modules/Core/Renderer/HTML/AST.d.ts +163 -0
- package/es-modules/Core/Renderer/HTML/AST.js +562 -0
- package/es-modules/Core/Renderer/HTML/HTMLElement.d.ts +76 -0
- package/es-modules/Core/Renderer/HTML/HTMLElement.js +471 -0
- package/es-modules/Core/Renderer/RendererRegistry.d.ts +29 -0
- package/es-modules/Core/Renderer/RendererRegistry.js +76 -0
- package/es-modules/Core/Renderer/RendererUtilities.d.ts +26 -0
- package/es-modules/Core/Renderer/RendererUtilities.js +172 -0
- package/es-modules/Core/Responsive.d.ts +55 -0
- package/es-modules/Core/Responsive.js +260 -0
- package/es-modules/Core/Templating.d.ts +125 -0
- package/es-modules/Core/Templating.js +428 -0
- package/es-modules/Core/Time.d.ts +69 -0
- package/es-modules/Core/Time.js +172 -0
- package/es-modules/Core/Tooltip.d.ts +297 -0
- package/es-modules/Core/Tooltip.js +1377 -0
- package/es-modules/Core/Utilities.d.ts +770 -0
- package/es-modules/Core/Utilities.js +1989 -0
- package/es-modules/Data/ColumnUtils.d.ts +87 -0
- package/es-modules/Data/ColumnUtils.js +140 -0
- package/es-modules/Data/Connectors/CSVConnector.d.ts +63 -0
- package/es-modules/Data/Connectors/CSVConnector.js +149 -0
- package/es-modules/Data/Connectors/CSVConnectorOptions.d.ts +149 -0
- package/es-modules/Data/Connectors/DataConnector.d.ts +204 -0
- package/es-modules/Data/Connectors/DataConnector.js +345 -0
- package/es-modules/Data/Connectors/DataConnectorOptions.d.ts +87 -0
- package/es-modules/Data/Connectors/DataConnectorType.d.ts +45 -0
- package/es-modules/Data/Connectors/GoogleSheetsConnector.d.ts +65 -0
- package/es-modules/Data/Connectors/GoogleSheetsConnector.js +226 -0
- package/es-modules/Data/Connectors/GoogleSheetsConnectorOptions.d.ts +167 -0
- package/es-modules/Data/Connectors/HTMLTableConnector.d.ts +77 -0
- package/es-modules/Data/Connectors/HTMLTableConnector.js +119 -0
- package/es-modules/Data/Connectors/HTMLTableConnectorOptions.d.ts +49 -0
- package/es-modules/Data/Connectors/JSONConnector.d.ts +64 -0
- package/es-modules/Data/Connectors/JSONConnector.js +156 -0
- package/es-modules/Data/Connectors/JSONConnectorOptions.d.ts +185 -0
- package/es-modules/Data/Converters/CSVConverter.d.ts +64 -0
- package/es-modules/Data/Converters/CSVConverter.js +374 -0
- package/es-modules/Data/Converters/CSVConverterOptions.d.ts +53 -0
- package/es-modules/Data/Converters/DataConverter.d.ts +168 -0
- package/es-modules/Data/Converters/DataConverter.js +387 -0
- package/es-modules/Data/Converters/DataConverterType.d.ts +40 -0
- package/es-modules/Data/Converters/DataConverterUtils.d.ts +82 -0
- package/es-modules/Data/Converters/DataConverterUtils.js +216 -0
- package/es-modules/Data/Converters/GoogleSheetsConverter.d.ts +46 -0
- package/es-modules/Data/Converters/GoogleSheetsConverter.js +135 -0
- package/es-modules/Data/Converters/GoogleSheetsConverterOptions.d.ts +52 -0
- package/es-modules/Data/Converters/HTMLTableConverter.d.ts +72 -0
- package/es-modules/Data/Converters/HTMLTableConverter.js +362 -0
- package/es-modules/Data/Converters/HTMLTableConverterOptions.d.ts +51 -0
- package/es-modules/Data/Converters/JSONConverter.d.ts +99 -0
- package/es-modules/Data/Converters/JSONConverter.js +239 -0
- package/es-modules/Data/Converters/JSONConverterOptions.d.ts +52 -0
- package/es-modules/Data/DataCursor.d.ts +176 -0
- package/es-modules/Data/DataCursor.js +379 -0
- package/es-modules/Data/DataEvent.d.ts +81 -0
- package/es-modules/Data/DataEvent.js +14 -0
- package/es-modules/Data/DataPool.d.ts +130 -0
- package/es-modules/Data/DataPool.js +257 -0
- package/es-modules/Data/DataPoolOptions.d.ts +66 -0
- package/es-modules/Data/DataTable.d.ts +563 -0
- package/es-modules/Data/DataTable.js +930 -0
- package/es-modules/Data/DataTableCore.d.ts +165 -0
- package/es-modules/Data/DataTableCore.js +316 -0
- package/es-modules/Data/DataTableOptions.d.ts +25 -0
- package/es-modules/Data/DataTableOptions.js +15 -0
- package/es-modules/Data/Formula/Formula.d.ts +21 -0
- package/es-modules/Data/Formula/Formula.js +54 -0
- package/es-modules/Data/Formula/FormulaParser.d.ts +31 -0
- package/es-modules/Data/Formula/FormulaParser.js +488 -0
- package/es-modules/Data/Formula/FormulaProcessor.d.ts +155 -0
- package/es-modules/Data/Formula/FormulaProcessor.js +529 -0
- package/es-modules/Data/Formula/FormulaTypes.d.ts +138 -0
- package/es-modules/Data/Formula/FormulaTypes.js +135 -0
- package/es-modules/Data/Formula/Functions/ABS.d.ts +19 -0
- package/es-modules/Data/Formula/Functions/ABS.js +67 -0
- package/es-modules/Data/Formula/Functions/AND.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/AND.js +59 -0
- package/es-modules/Data/Formula/Functions/AVERAGE.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/AVERAGE.js +74 -0
- package/es-modules/Data/Formula/Functions/AVERAGEA.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/AVERAGEA.js +90 -0
- package/es-modules/Data/Formula/Functions/COUNT.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/COUNT.js +65 -0
- package/es-modules/Data/Formula/Functions/COUNTA.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/COUNTA.js +71 -0
- package/es-modules/Data/Formula/Functions/IF.d.ts +21 -0
- package/es-modules/Data/Formula/Functions/IF.js +54 -0
- package/es-modules/Data/Formula/Functions/ISNA.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/ISNA.js +52 -0
- package/es-modules/Data/Formula/Functions/MAX.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/MAX.js +69 -0
- package/es-modules/Data/Formula/Functions/MEDIAN.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/MEDIAN.js +78 -0
- package/es-modules/Data/Formula/Functions/MIN.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/MIN.js +69 -0
- package/es-modules/Data/Formula/Functions/MOD.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/MOD.js +63 -0
- package/es-modules/Data/Formula/Functions/MODE.d.ts +41 -0
- package/es-modules/Data/Formula/Functions/MODE.js +149 -0
- package/es-modules/Data/Formula/Functions/NOT.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/NOT.js +60 -0
- package/es-modules/Data/Formula/Functions/OR.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/OR.js +62 -0
- package/es-modules/Data/Formula/Functions/PRODUCT.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/PRODUCT.js +68 -0
- package/es-modules/Data/Formula/Functions/SUM.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/SUM.js +65 -0
- package/es-modules/Data/Formula/Functions/XOR.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/XOR.js +81 -0
- package/es-modules/Data/Modifiers/ChainModifier.d.ts +128 -0
- package/es-modules/Data/Modifiers/ChainModifier.js +231 -0
- package/es-modules/Data/Modifiers/ChainModifierOptions.d.ts +20 -0
- package/es-modules/Data/Modifiers/ChainModifierOptions.js +14 -0
- package/es-modules/Data/Modifiers/DataModifier.d.ts +117 -0
- package/es-modules/Data/Modifiers/DataModifier.js +202 -0
- package/es-modules/Data/Modifiers/DataModifierEvent.d.ts +28 -0
- package/es-modules/Data/Modifiers/DataModifierEvent.js +15 -0
- package/es-modules/Data/Modifiers/DataModifierOptions.d.ts +11 -0
- package/es-modules/Data/Modifiers/DataModifierOptions.js +15 -0
- package/es-modules/Data/Modifiers/DataModifierType.d.ts +44 -0
- package/es-modules/Data/Modifiers/FilterModifier.d.ts +53 -0
- package/es-modules/Data/Modifiers/FilterModifier.js +172 -0
- package/es-modules/Data/Modifiers/FilterModifierOptions.d.ts +110 -0
- package/es-modules/Data/Modifiers/FilterModifierOptions.js +14 -0
- package/es-modules/Data/Modifiers/InvertModifier.d.ts +48 -0
- package/es-modules/Data/Modifiers/InvertModifier.js +116 -0
- package/es-modules/Data/Modifiers/InvertModifierOptions.d.ts +11 -0
- package/es-modules/Data/Modifiers/InvertModifierOptions.js +15 -0
- package/es-modules/Data/Modifiers/MathModifier.d.ts +68 -0
- package/es-modules/Data/Modifiers/MathModifier.js +165 -0
- package/es-modules/Data/Modifiers/MathModifierOptions.d.ts +50 -0
- package/es-modules/Data/Modifiers/MathModifierOptions.js +14 -0
- package/es-modules/Data/Modifiers/RangeModifier.d.ts +46 -0
- package/es-modules/Data/Modifiers/RangeModifier.js +96 -0
- package/es-modules/Data/Modifiers/RangeModifierOptions.d.ts +22 -0
- package/es-modules/Data/Modifiers/RangeModifierOptions.js +15 -0
- package/es-modules/Data/Modifiers/SortModifier.d.ts +54 -0
- package/es-modules/Data/Modifiers/SortModifier.js +144 -0
- package/es-modules/Data/Modifiers/SortModifierOptions.d.ts +44 -0
- package/es-modules/Data/Modifiers/SortModifierOptions.js +14 -0
- package/es-modules/Grid/Core/Accessibility/A11yOptions.d.ts +148 -0
- package/es-modules/Grid/Core/Accessibility/A11yOptions.js +17 -0
- package/es-modules/Grid/Core/Accessibility/Accessibility.d.ts +115 -0
- package/es-modules/Grid/Core/Accessibility/Accessibility.js +231 -0
- package/es-modules/Grid/Core/Credits.d.ts +57 -0
- package/es-modules/Grid/Core/Credits.js +125 -0
- package/es-modules/Grid/Core/Defaults.d.ts +20 -0
- package/es-modules/Grid/Core/Defaults.js +148 -0
- package/es-modules/Grid/Core/Globals.d.ts +103 -0
- package/es-modules/Grid/Core/Globals.js +134 -0
- package/es-modules/Grid/Core/Grid.d.ts +295 -0
- package/es-modules/Grid/Core/Grid.js +730 -0
- package/es-modules/Grid/Core/GridUtils.d.ts +110 -0
- package/es-modules/Grid/Core/GridUtils.js +191 -0
- package/es-modules/Grid/Core/Options.d.ts +599 -0
- package/es-modules/Grid/Core/Options.js +16 -0
- package/es-modules/Grid/Core/Pagination/Icons.d.ts +7 -0
- package/es-modules/Grid/Core/Pagination/Icons.js +7 -0
- package/es-modules/Grid/Core/Pagination/Pagination.d.ts +278 -0
- package/es-modules/Grid/Core/Pagination/Pagination.js +842 -0
- package/es-modules/Grid/Core/Pagination/PaginationOptions.d.ts +228 -0
- package/es-modules/Grid/Core/Querying/FilteringController.d.ts +66 -0
- package/es-modules/Grid/Core/Querying/FilteringController.js +256 -0
- package/es-modules/Grid/Core/Querying/PaginationController.d.ts +50 -0
- package/es-modules/Grid/Core/Querying/PaginationController.js +101 -0
- package/es-modules/Grid/Core/Querying/QueryingController.d.ts +58 -0
- package/es-modules/Grid/Core/Querying/QueryingController.js +127 -0
- package/es-modules/Grid/Core/Querying/SortingController.d.ts +67 -0
- package/es-modules/Grid/Core/Querying/SortingController.js +136 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/ColumnFiltering.d.ts +114 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/ColumnFiltering.js +351 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterCell.d.ts +14 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterCell.js +86 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterRow.d.ts +19 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterRow.js +80 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilteringTypes.d.ts +52 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilteringTypes.js +81 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnSorting.d.ts +56 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnSorting.js +170 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnsResizer.d.ts +55 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnsResizer.js +182 -0
- package/es-modules/Grid/Core/Table/Actions/RowsVirtualizer.d.ts +87 -0
- package/es-modules/Grid/Core/Table/Actions/RowsVirtualizer.js +346 -0
- package/es-modules/Grid/Core/Table/Body/TableCell.d.ts +88 -0
- package/es-modules/Grid/Core/Table/Body/TableCell.js +231 -0
- package/es-modules/Grid/Core/Table/Body/TableRow.d.ts +79 -0
- package/es-modules/Grid/Core/Table/Body/TableRow.js +177 -0
- package/es-modules/Grid/Core/Table/Cell.d.ts +92 -0
- package/es-modules/Grid/Core/Table/Cell.js +223 -0
- package/es-modules/Grid/Core/Table/CellContent/CellContent.d.ts +30 -0
- package/es-modules/Grid/Core/Table/CellContent/CellContent.js +40 -0
- package/es-modules/Grid/Core/Table/CellContent/TextContent.d.ts +19 -0
- package/es-modules/Grid/Core/Table/CellContent/TextContent.js +98 -0
- package/es-modules/Grid/Core/Table/Column.d.ts +136 -0
- package/es-modules/Grid/Core/Table/Column.js +230 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/AdjacentResizingMode.d.ts +7 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/AdjacentResizingMode.js +62 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/ColumnResizing.d.ts +32 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/ColumnResizing.js +68 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/DistributedResizingMode.d.ts +7 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/DistributedResizingMode.js +53 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/IndependentResizingMode.d.ts +7 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/IndependentResizingMode.js +63 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/ResizingMode.d.ts +92 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/ResizingMode.js +194 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ColumnToolbar.d.ts +68 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ColumnToolbar.js +187 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/FilterPopup.d.ts +29 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/FilterPopup.js +77 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/FilterMenuButton.d.ts +13 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/FilterMenuButton.js +79 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/SortMenuButton.d.ts +12 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/SortMenuButton.js +71 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuPopup.d.ts +12 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuPopup.js +66 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/StateHelpers.d.ts +25 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/StateHelpers.js +65 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/FilterToolbarButton.d.ts +12 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/FilterToolbarButton.js +81 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/MenuToolbarButton.d.ts +12 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/MenuToolbarButton.js +80 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/SortToolbarButton.d.ts +11 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/SortToolbarButton.js +81 -0
- package/es-modules/Grid/Core/Table/Header/HeaderCell.d.ts +70 -0
- package/es-modules/Grid/Core/Table/Header/HeaderCell.js +225 -0
- package/es-modules/Grid/Core/Table/Header/HeaderRow.d.ts +53 -0
- package/es-modules/Grid/Core/Table/Header/HeaderRow.js +182 -0
- package/es-modules/Grid/Core/Table/Header/TableHeader.d.ts +65 -0
- package/es-modules/Grid/Core/Table/Header/TableHeader.js +159 -0
- package/es-modules/Grid/Core/Table/Row.d.ts +76 -0
- package/es-modules/Grid/Core/Table/Row.js +131 -0
- package/es-modules/Grid/Core/Table/Table.d.ts +181 -0
- package/es-modules/Grid/Core/Table/Table.js +399 -0
- package/es-modules/Grid/Core/UI/Button.d.ts +31 -0
- package/es-modules/Grid/Core/UI/Button.js +16 -0
- package/es-modules/Grid/Core/UI/ContextMenu.d.ts +38 -0
- package/es-modules/Grid/Core/UI/ContextMenu.js +132 -0
- package/es-modules/Grid/Core/UI/ContextMenuButton.d.ts +126 -0
- package/es-modules/Grid/Core/UI/ContextMenuButton.js +183 -0
- package/es-modules/Grid/Core/UI/Popup.d.ts +149 -0
- package/es-modules/Grid/Core/UI/Popup.js +271 -0
- package/es-modules/Grid/Core/UI/SvgIcons.d.ts +53 -0
- package/es-modules/Grid/Core/UI/SvgIcons.js +158 -0
- package/es-modules/Grid/Core/UI/Toolbar.d.ts +16 -0
- package/es-modules/Grid/Core/UI/Toolbar.js +16 -0
- package/es-modules/Grid/Core/UI/ToolbarButton.d.ts +135 -0
- package/es-modules/Grid/Core/UI/ToolbarButton.js +191 -0
- package/es-modules/Grid/Pro/CellEditing/CellEditMode.d.ts +112 -0
- package/es-modules/Grid/Pro/CellEditing/CellEditing.d.ts +80 -0
- package/es-modules/Grid/Pro/CellEditing/CellEditing.js +211 -0
- package/es-modules/Grid/Pro/CellEditing/CellEditingComposition.d.ts +123 -0
- package/es-modules/Grid/Pro/CellEditing/CellEditingComposition.js +198 -0
- package/es-modules/Grid/Pro/CellRendering/CellContentPro.d.ts +23 -0
- package/es-modules/Grid/Pro/CellRendering/CellContentPro.js +45 -0
- package/es-modules/Grid/Pro/CellRendering/CellRenderer.d.ts +50 -0
- package/es-modules/Grid/Pro/CellRendering/CellRenderer.js +41 -0
- package/es-modules/Grid/Pro/CellRendering/CellRendererRegistry.d.ts +18 -0
- package/es-modules/Grid/Pro/CellRendering/CellRendererRegistry.js +58 -0
- package/es-modules/Grid/Pro/CellRendering/CellRendererType.d.ts +48 -0
- package/es-modules/Grid/Pro/CellRendering/CellRenderersComposition.d.ts +18 -0
- package/es-modules/Grid/Pro/CellRendering/CellRenderersComposition.js +79 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/CheckboxContent.d.ts +30 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/CheckboxContent.js +122 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateInputContent.d.ts +12 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateInputContent.js +39 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateInputContentBase.d.ts +66 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateInputContentBase.js +145 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateTimeInputContent.d.ts +12 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateTimeInputContent.js +38 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/NumberInputContent.d.ts +58 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/NumberInputContent.js +158 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/SelectContent.d.ts +58 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/SelectContent.js +173 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/SparklineContent.d.ts +28 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/SparklineContent.js +157 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/TextInputContent.d.ts +58 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/TextInputContent.js +168 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/TimeInputContent.d.ts +13 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/TimeInputContent.js +41 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/CheckboxRenderer.d.ts +50 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/CheckboxRenderer.js +65 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/DateInputRenderer.d.ts +37 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/DateInputRenderer.js +65 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/DateInputRendererBase.d.ts +26 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/DateInputRendererBase.js +16 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/DateTimeInputRenderer.d.ts +37 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/DateTimeInputRenderer.js +64 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/NumberInputRenderer.d.ts +52 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/NumberInputRenderer.js +64 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/SelectRenderer.d.ts +74 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/SelectRenderer.js +66 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/SparklineRenderer.d.ts +45 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/SparklineRenderer.js +89 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/TextInputRenderer.d.ts +54 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/TextInputRenderer.js +65 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/TextRenderer.d.ts +43 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/TextRenderer.js +74 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/TimeInputRenderer.d.ts +37 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/TimeInputRenderer.js +64 -0
- package/es-modules/Grid/Pro/ColumnTypes/ColumnDataType.d.ts +29 -0
- package/es-modules/Grid/Pro/ColumnTypes/Validator.d.ts +118 -0
- package/es-modules/Grid/Pro/ColumnTypes/Validator.js +270 -0
- package/es-modules/Grid/Pro/ColumnTypes/ValidatorComposition.d.ts +32 -0
- package/es-modules/Grid/Pro/ColumnTypes/ValidatorComposition.js +63 -0
- package/es-modules/Grid/Pro/Credits/CreditsPro.d.ts +35 -0
- package/es-modules/Grid/Pro/Credits/CreditsPro.js +112 -0
- package/es-modules/Grid/Pro/Credits/CreditsProComposition.d.ts +28 -0
- package/es-modules/Grid/Pro/Credits/CreditsProComposition.js +61 -0
- package/es-modules/Grid/Pro/Export/Exporting.d.ts +68 -0
- package/es-modules/Grid/Pro/Export/Exporting.js +202 -0
- package/es-modules/Grid/Pro/Export/ExportingComposition.d.ts +68 -0
- package/es-modules/Grid/Pro/Export/ExportingComposition.js +55 -0
- package/es-modules/Grid/Pro/GridEvents.d.ts +119 -0
- package/es-modules/Grid/Pro/GridEvents.js +107 -0
- package/es-modules/Grid/Pro/Pagination/PaginationComposition.d.ts +75 -0
- package/es-modules/Grid/Pro/Pagination/PaginationComposition.js +76 -0
- package/es-modules/Grid/Pro/highcharts.d.ts +7 -0
- package/es-modules/Grid/index.d.ts +5 -0
- package/es-modules/Grid/index.js +19 -0
- package/es-modules/Shared/BaseForm.d.ts +49 -0
- package/es-modules/Shared/BaseForm.js +126 -0
- package/es-modules/Shared/DownloadURL.d.ts +85 -0
- package/es-modules/Shared/DownloadURL.js +198 -0
- package/es-modules/Shared/LangOptionsCore.d.ts +27 -0
- package/es-modules/Shared/TimeBase.d.ts +353 -0
- package/es-modules/Shared/TimeBase.js +830 -0
- package/es-modules/Shared/Types.d.ts +48 -0
- package/es-modules/masters/grid-pro.src.d.ts +99 -0
- package/es-modules/masters/grid-pro.src.js +129 -0
- package/grid-pro.d.ts +50 -0
- package/grid-pro.js +12 -0
- package/grid-pro.js.map +1 -0
- package/grid-pro.src.d.ts +50 -0
- package/grid-pro.src.js +26623 -0
- package/package.json +21 -0
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
import type { DataConnectorTypes } from './DataConnectorType';
|
|
2
|
+
import type { DataConnectorOptions, MetaColumn, Metadata } from './DataConnectorOptions';
|
|
3
|
+
import type DataEvent from '../DataEvent';
|
|
4
|
+
import type DataConverterType from '../Converters/DataConverterType';
|
|
5
|
+
import DataConverter from '../Converters/DataConverter.js';
|
|
6
|
+
import DataTable from '../DataTable.js';
|
|
7
|
+
/**
|
|
8
|
+
* Abstract class providing an interface for managing a DataConnector.
|
|
9
|
+
*/
|
|
10
|
+
declare abstract class DataConnector implements DataEvent.Emitter<DataConnector.Event> {
|
|
11
|
+
/**
|
|
12
|
+
* The DataConverter responsible for handling conversion of provided data to
|
|
13
|
+
* a DataConnector.
|
|
14
|
+
*/
|
|
15
|
+
converter?: DataConverter;
|
|
16
|
+
/**
|
|
17
|
+
* Metadata to describe the connector and the content of columns.
|
|
18
|
+
*/
|
|
19
|
+
readonly metadata: Metadata;
|
|
20
|
+
/**
|
|
21
|
+
* Tables managed by this DataConnector instance.
|
|
22
|
+
*/
|
|
23
|
+
readonly dataTables: Record<string, DataTable>;
|
|
24
|
+
/**
|
|
25
|
+
* The options of the connector.
|
|
26
|
+
*/
|
|
27
|
+
readonly options: DataConnectorOptions;
|
|
28
|
+
/**
|
|
29
|
+
* ID of the polling timeout.
|
|
30
|
+
*/
|
|
31
|
+
private _polling?;
|
|
32
|
+
/**
|
|
33
|
+
* Whether the connector is currently polling for new data.
|
|
34
|
+
*/
|
|
35
|
+
get polling(): boolean;
|
|
36
|
+
/**
|
|
37
|
+
* The polling controller used to abort the request when data polling stops.
|
|
38
|
+
* It gets assigned when data polling starts.
|
|
39
|
+
*/
|
|
40
|
+
pollingController?: AbortController;
|
|
41
|
+
/**
|
|
42
|
+
* Constructor for the connector class.
|
|
43
|
+
*
|
|
44
|
+
* @param {DataConnectorOptions} [options]
|
|
45
|
+
* Options to use in the connector.
|
|
46
|
+
*/
|
|
47
|
+
constructor(options: DataConnectorOptions);
|
|
48
|
+
/**
|
|
49
|
+
* Returns a single data table instance based on the provided key.
|
|
50
|
+
* Otherwise, returns the first data table.
|
|
51
|
+
*
|
|
52
|
+
* @param {string} [key]
|
|
53
|
+
* The data table key.
|
|
54
|
+
*
|
|
55
|
+
* @return {DataTable}
|
|
56
|
+
* The data table instance.
|
|
57
|
+
*/
|
|
58
|
+
getTable(key?: string): DataTable;
|
|
59
|
+
/**
|
|
60
|
+
* Method for adding metadata for a single column.
|
|
61
|
+
*
|
|
62
|
+
* @param {string} name
|
|
63
|
+
* The name of the column to be described.
|
|
64
|
+
*
|
|
65
|
+
* @param {DataConnector.MetaColumn} columnMeta
|
|
66
|
+
* The metadata to apply to the column.
|
|
67
|
+
*/
|
|
68
|
+
describeColumn(name: string, columnMeta: MetaColumn): void;
|
|
69
|
+
/**
|
|
70
|
+
* Method for applying columns meta information to the whole DataConnector.
|
|
71
|
+
*
|
|
72
|
+
* @param {Highcharts.Dictionary<DataConnector.MetaColumn>} columns
|
|
73
|
+
* Pairs of column names and MetaColumn objects.
|
|
74
|
+
*/
|
|
75
|
+
describeColumns(columns: Record<string, MetaColumn>): void;
|
|
76
|
+
/**
|
|
77
|
+
* Returns the order of columns.
|
|
78
|
+
*
|
|
79
|
+
* @return {string[] | undefined}
|
|
80
|
+
* Order of columns.
|
|
81
|
+
*/
|
|
82
|
+
getColumnOrder(): (string[] | undefined);
|
|
83
|
+
/**
|
|
84
|
+
* Retrieves the columns of the dataTable,
|
|
85
|
+
* applies column order from meta.
|
|
86
|
+
*
|
|
87
|
+
* @return {Highcharts.DataTableColumnCollection}
|
|
88
|
+
* An object with the properties `columnIds` and `columnValues`
|
|
89
|
+
*/
|
|
90
|
+
getSortedColumns(): DataTable.ColumnCollection;
|
|
91
|
+
/**
|
|
92
|
+
* Sets the index and order of columns.
|
|
93
|
+
*
|
|
94
|
+
* @param {Array<string>} columnIds
|
|
95
|
+
* Order of columns.
|
|
96
|
+
*/
|
|
97
|
+
setColumnOrder(columnIds: Array<string>): void;
|
|
98
|
+
/**
|
|
99
|
+
* The default load method, which fires the `afterLoad` event
|
|
100
|
+
*
|
|
101
|
+
* @return {Promise<DataConnector>}
|
|
102
|
+
* The loaded connector.
|
|
103
|
+
*
|
|
104
|
+
* @emits DataConnector#afterLoad
|
|
105
|
+
*/
|
|
106
|
+
load(): Promise<this>;
|
|
107
|
+
/**
|
|
108
|
+
* Applies the data modifiers to the data tables according to the
|
|
109
|
+
* connector data tables options.
|
|
110
|
+
*/
|
|
111
|
+
applyTableModifiers(): Promise<this>;
|
|
112
|
+
/**
|
|
113
|
+
* Starts polling new data after the specific time span in milliseconds.
|
|
114
|
+
*
|
|
115
|
+
* @param {number} refreshTime
|
|
116
|
+
* Refresh time in milliseconds between polls.
|
|
117
|
+
*/
|
|
118
|
+
startPolling(refreshTime?: number): void;
|
|
119
|
+
/**
|
|
120
|
+
* Stops polling data. Shouldn't be performed if polling is already stopped.
|
|
121
|
+
*/
|
|
122
|
+
stopPolling(): void;
|
|
123
|
+
/**
|
|
124
|
+
* Emits an event on the connector to all registered callbacks of this
|
|
125
|
+
* event.
|
|
126
|
+
*
|
|
127
|
+
* @param {DataConnector.Event} e
|
|
128
|
+
* Event object containing additional event information.
|
|
129
|
+
*/
|
|
130
|
+
emit(e: DataConnector.Event): void;
|
|
131
|
+
/**
|
|
132
|
+
* Registers a callback for a specific connector event.
|
|
133
|
+
*
|
|
134
|
+
* @param type
|
|
135
|
+
* Event type.
|
|
136
|
+
*
|
|
137
|
+
* @param callback
|
|
138
|
+
* Function to register for the connector callback.
|
|
139
|
+
*
|
|
140
|
+
* @return {Function}
|
|
141
|
+
* Function to unregister callback from the connector event.
|
|
142
|
+
*/
|
|
143
|
+
on<T extends DataConnector.Event['type']>(type: T, callback: DataEvent.Callback<this, Extract<DataConnector.Event, {
|
|
144
|
+
type: T;
|
|
145
|
+
}>>): Function;
|
|
146
|
+
/**
|
|
147
|
+
* Iterates over the dataTables and initiates the corresponding converters.
|
|
148
|
+
* Updates the dataTables and assigns the first converter.
|
|
149
|
+
*
|
|
150
|
+
* @param {T}[data]
|
|
151
|
+
* Data specific to the corresponding converter.
|
|
152
|
+
*
|
|
153
|
+
* @param {DataConnector.CreateConverterFunction}[createConverter]
|
|
154
|
+
* Creates a specific converter combining the dataTable options.
|
|
155
|
+
*
|
|
156
|
+
* @param {DataConnector.ParseDataFunction<T>}[parseData]
|
|
157
|
+
* Runs the converter parse method with the specific data type.
|
|
158
|
+
*/
|
|
159
|
+
initConverters<T>(data: T, createConverter: DataConnector.CreateConverterFunction, parseData: DataConnector.ParseDataFunction<T>): void;
|
|
160
|
+
}
|
|
161
|
+
declare namespace DataConnector {
|
|
162
|
+
/**
|
|
163
|
+
* The event type that is provided on events within DataConnector.
|
|
164
|
+
*/
|
|
165
|
+
interface Event extends DataEvent {
|
|
166
|
+
readonly type: 'loadError' | 'load' | 'afterLoad';
|
|
167
|
+
readonly error?: string | Error;
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Creates a specific converter combining the dataTable options.
|
|
171
|
+
*/
|
|
172
|
+
interface CreateConverterFunction {
|
|
173
|
+
(key: string): DataConverterType;
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Runs the converter parse method with the specific data type.
|
|
177
|
+
*/
|
|
178
|
+
interface ParseDataFunction<T> {
|
|
179
|
+
(converter: DataConverterType, data: T): DataTable.ColumnCollection;
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Registry as a record object with connector names and their class.
|
|
183
|
+
*/
|
|
184
|
+
const types: DataConnectorTypes;
|
|
185
|
+
/**
|
|
186
|
+
* Adds a connector class to the registry. The connector has to provide the
|
|
187
|
+
* `DataConnector.options` property and the `DataConnector.load` method to
|
|
188
|
+
* modify the table.
|
|
189
|
+
*
|
|
190
|
+
* @private
|
|
191
|
+
*
|
|
192
|
+
* @param {string} key
|
|
193
|
+
* Registry key of the connector class.
|
|
194
|
+
*
|
|
195
|
+
* @param {DataConnectorType} DataConnectorClass
|
|
196
|
+
* Connector class (aka class constructor) to register.
|
|
197
|
+
*
|
|
198
|
+
* @return {boolean}
|
|
199
|
+
* Returns true, if the registration was successful. False is returned, if
|
|
200
|
+
* their is already a connector registered with this key.
|
|
201
|
+
*/
|
|
202
|
+
function registerType<T extends keyof DataConnectorTypes>(key: T, DataConnectorClass: DataConnectorTypes[T]): boolean;
|
|
203
|
+
}
|
|
204
|
+
export default DataConnector;
|
|
@@ -0,0 +1,345 @@
|
|
|
1
|
+
/* *
|
|
2
|
+
*
|
|
3
|
+
* (c) 2009-2025 Highsoft AS
|
|
4
|
+
*
|
|
5
|
+
* License: www.highcharts.com/license
|
|
6
|
+
*
|
|
7
|
+
* !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
|
|
8
|
+
*
|
|
9
|
+
* Authors:
|
|
10
|
+
* - Sophie Bremer
|
|
11
|
+
* - Wojciech Chmiel
|
|
12
|
+
* - Gøran Slettemark
|
|
13
|
+
* - Dawid Dragula
|
|
14
|
+
* - Kamil Kubik
|
|
15
|
+
*
|
|
16
|
+
* */
|
|
17
|
+
'use strict';
|
|
18
|
+
import DataModifier from '../Modifiers/DataModifier.js';
|
|
19
|
+
import DataTable from '../DataTable.js';
|
|
20
|
+
import U from '../../Core/Utilities.js';
|
|
21
|
+
const { addEvent, fireEvent, merge, pick } = U;
|
|
22
|
+
/* *
|
|
23
|
+
*
|
|
24
|
+
* Class
|
|
25
|
+
*
|
|
26
|
+
* */
|
|
27
|
+
/**
|
|
28
|
+
* Abstract class providing an interface for managing a DataConnector.
|
|
29
|
+
*/
|
|
30
|
+
class DataConnector {
|
|
31
|
+
/**
|
|
32
|
+
* Whether the connector is currently polling for new data.
|
|
33
|
+
*/
|
|
34
|
+
get polling() {
|
|
35
|
+
return !!this._polling;
|
|
36
|
+
}
|
|
37
|
+
/* *
|
|
38
|
+
*
|
|
39
|
+
* Constructor
|
|
40
|
+
*
|
|
41
|
+
* */
|
|
42
|
+
/**
|
|
43
|
+
* Constructor for the connector class.
|
|
44
|
+
*
|
|
45
|
+
* @param {DataConnectorOptions} [options]
|
|
46
|
+
* Options to use in the connector.
|
|
47
|
+
*/
|
|
48
|
+
constructor(options) {
|
|
49
|
+
/**
|
|
50
|
+
* Tables managed by this DataConnector instance.
|
|
51
|
+
*/
|
|
52
|
+
this.dataTables = {};
|
|
53
|
+
/**
|
|
54
|
+
* Helper flag for detecting whether the data connector is loaded.
|
|
55
|
+
* @internal
|
|
56
|
+
*/
|
|
57
|
+
this.loaded = false;
|
|
58
|
+
this.metadata = options.metadata || { columns: {} };
|
|
59
|
+
this.options = options;
|
|
60
|
+
// Create a data table for each defined in the dataTables user options.
|
|
61
|
+
const dataTables = options?.dataTables;
|
|
62
|
+
let dataTableIndex = 0;
|
|
63
|
+
if (options.options) {
|
|
64
|
+
// eslint-disable-next-line no-console
|
|
65
|
+
console.error('The `DataConnectorOptions.options` property was removed in Dashboards v4.0.0. Check how to upgrade your connector to use the new options structure here: https://api.highcharts.com/dashboards/#interfaces/Data_DataTableOptions.DataTableOptions-1');
|
|
66
|
+
}
|
|
67
|
+
if (dataTables && dataTables?.length > 0) {
|
|
68
|
+
for (let i = 0, iEnd = dataTables.length; i < iEnd; ++i) {
|
|
69
|
+
const dataTable = dataTables[i];
|
|
70
|
+
const key = dataTable?.key;
|
|
71
|
+
this.dataTables[key ?? dataTableIndex] =
|
|
72
|
+
new DataTable(dataTable);
|
|
73
|
+
if (!key) {
|
|
74
|
+
dataTableIndex++;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
// If user options dataTables is not defined, generate a default table.
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
this.dataTables[0] = new DataTable({
|
|
81
|
+
id: options.id // Required by DataTableCore
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
/* *
|
|
86
|
+
*
|
|
87
|
+
* Methods
|
|
88
|
+
*
|
|
89
|
+
* */
|
|
90
|
+
/**
|
|
91
|
+
* Returns a single data table instance based on the provided key.
|
|
92
|
+
* Otherwise, returns the first data table.
|
|
93
|
+
*
|
|
94
|
+
* @param {string} [key]
|
|
95
|
+
* The data table key.
|
|
96
|
+
*
|
|
97
|
+
* @return {DataTable}
|
|
98
|
+
* The data table instance.
|
|
99
|
+
*/
|
|
100
|
+
getTable(key) {
|
|
101
|
+
if (key) {
|
|
102
|
+
return this.dataTables[key];
|
|
103
|
+
}
|
|
104
|
+
return Object.values(this.dataTables)[0];
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Method for adding metadata for a single column.
|
|
108
|
+
*
|
|
109
|
+
* @param {string} name
|
|
110
|
+
* The name of the column to be described.
|
|
111
|
+
*
|
|
112
|
+
* @param {DataConnector.MetaColumn} columnMeta
|
|
113
|
+
* The metadata to apply to the column.
|
|
114
|
+
*/
|
|
115
|
+
describeColumn(name, columnMeta) {
|
|
116
|
+
const connector = this;
|
|
117
|
+
const columns = connector.metadata.columns;
|
|
118
|
+
columns[name] = merge(columns[name] || {}, columnMeta);
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Method for applying columns meta information to the whole DataConnector.
|
|
122
|
+
*
|
|
123
|
+
* @param {Highcharts.Dictionary<DataConnector.MetaColumn>} columns
|
|
124
|
+
* Pairs of column names and MetaColumn objects.
|
|
125
|
+
*/
|
|
126
|
+
describeColumns(columns) {
|
|
127
|
+
const connector = this;
|
|
128
|
+
const columnIds = Object.keys(columns);
|
|
129
|
+
let columnId;
|
|
130
|
+
while (typeof (columnId = columnIds.pop()) === 'string') {
|
|
131
|
+
connector.describeColumn(columnId, columns[columnId]);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Returns the order of columns.
|
|
136
|
+
*
|
|
137
|
+
* @return {string[] | undefined}
|
|
138
|
+
* Order of columns.
|
|
139
|
+
*/
|
|
140
|
+
getColumnOrder() {
|
|
141
|
+
const connector = this, columns = connector.metadata.columns, names = Object.keys(columns || {});
|
|
142
|
+
if (names.length) {
|
|
143
|
+
return names.sort((a, b) => (pick(columns[a].index, 0) - pick(columns[b].index, 0)));
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Retrieves the columns of the dataTable,
|
|
148
|
+
* applies column order from meta.
|
|
149
|
+
*
|
|
150
|
+
* @return {Highcharts.DataTableColumnCollection}
|
|
151
|
+
* An object with the properties `columnIds` and `columnValues`
|
|
152
|
+
*/
|
|
153
|
+
getSortedColumns() {
|
|
154
|
+
return this.getTable().getColumns(this.getColumnOrder());
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Sets the index and order of columns.
|
|
158
|
+
*
|
|
159
|
+
* @param {Array<string>} columnIds
|
|
160
|
+
* Order of columns.
|
|
161
|
+
*/
|
|
162
|
+
setColumnOrder(columnIds) {
|
|
163
|
+
const connector = this;
|
|
164
|
+
for (let i = 0, iEnd = columnIds.length; i < iEnd; ++i) {
|
|
165
|
+
connector.describeColumn(columnIds[i], { index: i });
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* The default load method, which fires the `afterLoad` event
|
|
170
|
+
*
|
|
171
|
+
* @return {Promise<DataConnector>}
|
|
172
|
+
* The loaded connector.
|
|
173
|
+
*
|
|
174
|
+
* @emits DataConnector#afterLoad
|
|
175
|
+
*/
|
|
176
|
+
load() {
|
|
177
|
+
this.emit({ type: 'afterLoad' });
|
|
178
|
+
return Promise.resolve(this);
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Applies the data modifiers to the data tables according to the
|
|
182
|
+
* connector data tables options.
|
|
183
|
+
*/
|
|
184
|
+
async applyTableModifiers() {
|
|
185
|
+
const tableOptionsArray = this.options?.dataTables;
|
|
186
|
+
for (const [key, table] of Object.entries(this.dataTables)) {
|
|
187
|
+
// Take data modifier options from the corresponsing data table
|
|
188
|
+
// options, otherwise take the data modifier options from the
|
|
189
|
+
// connector options.
|
|
190
|
+
const dataModifierOptions = tableOptionsArray?.find((dataTable) => dataTable.key === key)?.dataModifier ?? this.options?.dataModifier;
|
|
191
|
+
const ModifierClass = (dataModifierOptions &&
|
|
192
|
+
DataModifier.types[dataModifierOptions.type]);
|
|
193
|
+
await table.setModifier(ModifierClass ?
|
|
194
|
+
new ModifierClass(dataModifierOptions) :
|
|
195
|
+
void 0);
|
|
196
|
+
}
|
|
197
|
+
return this;
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Starts polling new data after the specific time span in milliseconds.
|
|
201
|
+
*
|
|
202
|
+
* @param {number} refreshTime
|
|
203
|
+
* Refresh time in milliseconds between polls.
|
|
204
|
+
*/
|
|
205
|
+
startPolling(refreshTime = 1000) {
|
|
206
|
+
const connector = this;
|
|
207
|
+
// Assign a new abort controller.
|
|
208
|
+
this.pollingController = new AbortController();
|
|
209
|
+
// Clear the polling timeout.
|
|
210
|
+
window.clearTimeout(connector._polling);
|
|
211
|
+
connector._polling = window.setTimeout(() => connector
|
|
212
|
+
.load()['catch']((error) => connector.emit({
|
|
213
|
+
type: 'loadError',
|
|
214
|
+
error
|
|
215
|
+
}))
|
|
216
|
+
.then(() => {
|
|
217
|
+
if (connector._polling) {
|
|
218
|
+
connector.startPolling(refreshTime);
|
|
219
|
+
}
|
|
220
|
+
}), refreshTime);
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* Stops polling data. Shouldn't be performed if polling is already stopped.
|
|
224
|
+
*/
|
|
225
|
+
stopPolling() {
|
|
226
|
+
const connector = this;
|
|
227
|
+
if (!connector.polling) {
|
|
228
|
+
return;
|
|
229
|
+
}
|
|
230
|
+
// Abort the existing request.
|
|
231
|
+
connector?.pollingController?.abort();
|
|
232
|
+
// Clear the polling timeout.
|
|
233
|
+
window.clearTimeout(connector._polling);
|
|
234
|
+
delete connector._polling;
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Emits an event on the connector to all registered callbacks of this
|
|
238
|
+
* event.
|
|
239
|
+
*
|
|
240
|
+
* @param {DataConnector.Event} e
|
|
241
|
+
* Event object containing additional event information.
|
|
242
|
+
*/
|
|
243
|
+
emit(e) {
|
|
244
|
+
fireEvent(this, e.type, e);
|
|
245
|
+
}
|
|
246
|
+
/**
|
|
247
|
+
* Registers a callback for a specific connector event.
|
|
248
|
+
*
|
|
249
|
+
* @param type
|
|
250
|
+
* Event type.
|
|
251
|
+
*
|
|
252
|
+
* @param callback
|
|
253
|
+
* Function to register for the connector callback.
|
|
254
|
+
*
|
|
255
|
+
* @return {Function}
|
|
256
|
+
* Function to unregister callback from the connector event.
|
|
257
|
+
*/
|
|
258
|
+
on(type, callback) {
|
|
259
|
+
return addEvent(this, type, callback);
|
|
260
|
+
}
|
|
261
|
+
/**
|
|
262
|
+
* Iterates over the dataTables and initiates the corresponding converters.
|
|
263
|
+
* Updates the dataTables and assigns the first converter.
|
|
264
|
+
*
|
|
265
|
+
* @param {T}[data]
|
|
266
|
+
* Data specific to the corresponding converter.
|
|
267
|
+
*
|
|
268
|
+
* @param {DataConnector.CreateConverterFunction}[createConverter]
|
|
269
|
+
* Creates a specific converter combining the dataTable options.
|
|
270
|
+
*
|
|
271
|
+
* @param {DataConnector.ParseDataFunction<T>}[parseData]
|
|
272
|
+
* Runs the converter parse method with the specific data type.
|
|
273
|
+
*/
|
|
274
|
+
initConverters(data, createConverter, parseData) {
|
|
275
|
+
let index = 0;
|
|
276
|
+
for (const [key, table] of Object.entries(this.dataTables)) {
|
|
277
|
+
// Create a proper converter and parse its data.
|
|
278
|
+
const converter = createConverter(key);
|
|
279
|
+
const columns = parseData(converter, data);
|
|
280
|
+
// Update the dataTable.
|
|
281
|
+
table.deleteColumns();
|
|
282
|
+
table.setColumns(columns);
|
|
283
|
+
// Assign the first converter.
|
|
284
|
+
if (index === 0) {
|
|
285
|
+
this.converter = converter;
|
|
286
|
+
}
|
|
287
|
+
index++;
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
/* *
|
|
292
|
+
*
|
|
293
|
+
* Class Namespace
|
|
294
|
+
*
|
|
295
|
+
* */
|
|
296
|
+
(function (DataConnector) {
|
|
297
|
+
/* *
|
|
298
|
+
*
|
|
299
|
+
* Declarations
|
|
300
|
+
*
|
|
301
|
+
* */
|
|
302
|
+
/* *
|
|
303
|
+
*
|
|
304
|
+
* Constants
|
|
305
|
+
*
|
|
306
|
+
* */
|
|
307
|
+
/**
|
|
308
|
+
* Registry as a record object with connector names and their class.
|
|
309
|
+
*/
|
|
310
|
+
DataConnector.types = {};
|
|
311
|
+
/* *
|
|
312
|
+
*
|
|
313
|
+
* Functions
|
|
314
|
+
*
|
|
315
|
+
* */
|
|
316
|
+
/**
|
|
317
|
+
* Adds a connector class to the registry. The connector has to provide the
|
|
318
|
+
* `DataConnector.options` property and the `DataConnector.load` method to
|
|
319
|
+
* modify the table.
|
|
320
|
+
*
|
|
321
|
+
* @private
|
|
322
|
+
*
|
|
323
|
+
* @param {string} key
|
|
324
|
+
* Registry key of the connector class.
|
|
325
|
+
*
|
|
326
|
+
* @param {DataConnectorType} DataConnectorClass
|
|
327
|
+
* Connector class (aka class constructor) to register.
|
|
328
|
+
*
|
|
329
|
+
* @return {boolean}
|
|
330
|
+
* Returns true, if the registration was successful. False is returned, if
|
|
331
|
+
* their is already a connector registered with this key.
|
|
332
|
+
*/
|
|
333
|
+
function registerType(key, DataConnectorClass) {
|
|
334
|
+
return (!!key &&
|
|
335
|
+
!DataConnector.types[key] &&
|
|
336
|
+
!!(DataConnector.types[key] = DataConnectorClass));
|
|
337
|
+
}
|
|
338
|
+
DataConnector.registerType = registerType;
|
|
339
|
+
})(DataConnector || (DataConnector = {}));
|
|
340
|
+
/* *
|
|
341
|
+
*
|
|
342
|
+
* Default Export
|
|
343
|
+
*
|
|
344
|
+
* */
|
|
345
|
+
export default DataConnector;
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/* *
|
|
2
|
+
*
|
|
3
|
+
* (c) 2009-2025 Highsoft AS
|
|
4
|
+
*
|
|
5
|
+
* License: www.highcharts.com/license
|
|
6
|
+
*
|
|
7
|
+
* !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
|
|
8
|
+
*
|
|
9
|
+
* Authors:
|
|
10
|
+
* - Sophie Bremer
|
|
11
|
+
* - Karol Kolodziej
|
|
12
|
+
* - Dawid Dragula
|
|
13
|
+
* - Kamil Kubik
|
|
14
|
+
*
|
|
15
|
+
* */
|
|
16
|
+
|
|
17
|
+
/* *
|
|
18
|
+
*
|
|
19
|
+
* Imports
|
|
20
|
+
*
|
|
21
|
+
* */
|
|
22
|
+
|
|
23
|
+
import type { DataTableValue } from '../DataTableOptions';
|
|
24
|
+
import type { DataModifierTypeOptions } from '../Modifiers/DataModifierType';
|
|
25
|
+
|
|
26
|
+
/* *
|
|
27
|
+
*
|
|
28
|
+
* Declarations
|
|
29
|
+
*
|
|
30
|
+
* */
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Option of the DataConnector.
|
|
34
|
+
*/
|
|
35
|
+
export interface DataConnectorOptions {
|
|
36
|
+
id: string;
|
|
37
|
+
type: string;
|
|
38
|
+
dataTables?: DataTableConnectorOptions[];
|
|
39
|
+
dataModifier?: DataModifierTypeOptions;
|
|
40
|
+
metadata?: Metadata;
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* @internal
|
|
44
|
+
* @private
|
|
45
|
+
* @deprecated
|
|
46
|
+
* Removed in Dashboards v4.0.0
|
|
47
|
+
*
|
|
48
|
+
* {@link https://api.highcharts.com/dashboards/#interfaces/Data_Connectors_DataConnectorOptions.DataConnectorOptions-1 | Check how to upgrade your connector to use the new options structure}
|
|
49
|
+
*/
|
|
50
|
+
options?: never;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
export interface DataTableConnectorOptions {
|
|
54
|
+
key?: string;
|
|
55
|
+
dataModifier?: DataModifierTypeOptions;
|
|
56
|
+
firstRowAsNames?: boolean;
|
|
57
|
+
metadata?: Record<string, DataTableValue>;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Contains custom metadata related to the connector source, for example the
|
|
62
|
+
* column order on the source side.
|
|
63
|
+
*/
|
|
64
|
+
export interface Metadata {
|
|
65
|
+
/**
|
|
66
|
+
* Metadata entry containing the name of the column and a metadata object.
|
|
67
|
+
*/
|
|
68
|
+
columns: Record<string, MetaColumn>;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Metadata for a specific column in the connector source.
|
|
73
|
+
*/
|
|
74
|
+
export interface MetaColumn {
|
|
75
|
+
dataType?: string;
|
|
76
|
+
defaultValue?: boolean | null | number | string;
|
|
77
|
+
index?: number;
|
|
78
|
+
title?: string;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
/* *
|
|
82
|
+
*
|
|
83
|
+
* Default Export
|
|
84
|
+
*
|
|
85
|
+
* */
|
|
86
|
+
|
|
87
|
+
export default DataConnectorOptions;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/* *
|
|
2
|
+
*
|
|
3
|
+
* (c) 2009-2025 Highsoft AS
|
|
4
|
+
*
|
|
5
|
+
* License: www.highcharts.com/license
|
|
6
|
+
*
|
|
7
|
+
* !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
|
|
8
|
+
*
|
|
9
|
+
* Authors:
|
|
10
|
+
* - Sophie Bremer
|
|
11
|
+
*
|
|
12
|
+
* */
|
|
13
|
+
|
|
14
|
+
/* *
|
|
15
|
+
*
|
|
16
|
+
* Declarations
|
|
17
|
+
*
|
|
18
|
+
* */
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Describes the connector registry as a record object with key and
|
|
22
|
+
* class constructor.
|
|
23
|
+
*/
|
|
24
|
+
export interface DataConnectorTypes {
|
|
25
|
+
// Nothing here yet
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Contains all possible connector types.
|
|
30
|
+
*/
|
|
31
|
+
export type DataConnectorType =
|
|
32
|
+
DataConnectorTypes[keyof DataConnectorTypes]['prototype'];
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Options for specific data connector type.
|
|
36
|
+
*/
|
|
37
|
+
export type DataConnectorTypeOptions = DataConnectorType['options'];
|
|
38
|
+
|
|
39
|
+
/* *
|
|
40
|
+
*
|
|
41
|
+
* Default Export
|
|
42
|
+
*
|
|
43
|
+
* */
|
|
44
|
+
|
|
45
|
+
export default DataConnectorType;
|