@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,65 @@
|
|
|
1
|
+
import type DataEvent from '../DataEvent';
|
|
2
|
+
import type GoogleSheetsConnectorOptions from './GoogleSheetsConnectorOptions';
|
|
3
|
+
import DataConnector from './DataConnector.js';
|
|
4
|
+
import GoogleSheetsConverter from '../Converters/GoogleSheetsConverter.js';
|
|
5
|
+
/**
|
|
6
|
+
* @private
|
|
7
|
+
* @todo implement save, requires oauth2
|
|
8
|
+
*/
|
|
9
|
+
declare class GoogleSheetsConnector extends DataConnector {
|
|
10
|
+
protected static readonly defaultOptions: GoogleSheetsConnectorOptions;
|
|
11
|
+
/**
|
|
12
|
+
* Constructs an instance of GoogleSheetsConnector
|
|
13
|
+
*
|
|
14
|
+
* @param {Partial<GoogleSheetsConnectorOptions>} [options]
|
|
15
|
+
* Options for the connector and converter.
|
|
16
|
+
*/
|
|
17
|
+
constructor(options: Partial<GoogleSheetsConnectorOptions>);
|
|
18
|
+
readonly options: GoogleSheetsConnectorOptions;
|
|
19
|
+
/**
|
|
20
|
+
* The attached converter, which can be replaced in the constructor
|
|
21
|
+
*/
|
|
22
|
+
converter?: GoogleSheetsConverter;
|
|
23
|
+
/**
|
|
24
|
+
* Overrides the DataConnector method. Emits an event on the connector to
|
|
25
|
+
* all registered callbacks of this event.
|
|
26
|
+
*
|
|
27
|
+
* @param {GoogleSheetsConnector.Event} e
|
|
28
|
+
* Event object containing additional event information.
|
|
29
|
+
*/
|
|
30
|
+
emit(e: GoogleSheetsConnector.Event): void;
|
|
31
|
+
/**
|
|
32
|
+
* Loads data from a Google Spreadsheet.
|
|
33
|
+
*
|
|
34
|
+
* @param {DataEvent.Detail} [eventDetail]
|
|
35
|
+
* Custom information for pending events.
|
|
36
|
+
*
|
|
37
|
+
* @return {Promise<this>}
|
|
38
|
+
* Same connector instance with modified table.
|
|
39
|
+
*/
|
|
40
|
+
load(eventDetail?: DataEvent.Detail): Promise<this>;
|
|
41
|
+
}
|
|
42
|
+
declare namespace GoogleSheetsConnector {
|
|
43
|
+
interface Event extends DataConnector.Event {
|
|
44
|
+
readonly url?: string;
|
|
45
|
+
}
|
|
46
|
+
interface FetchURLOptions {
|
|
47
|
+
onlyColumnIds?: boolean;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Creates GoogleSheets API v4 URL.
|
|
51
|
+
* @private
|
|
52
|
+
*/
|
|
53
|
+
function buildFetchURL(apiKey: string, sheetKey: string, options?: Partial<(FetchURLOptions & GoogleSheetsConnectorOptions)>): string;
|
|
54
|
+
/**
|
|
55
|
+
* Creates sheets range.
|
|
56
|
+
* @private
|
|
57
|
+
*/
|
|
58
|
+
function buildQueryRange(options?: Partial<GoogleSheetsConnectorOptions>): string;
|
|
59
|
+
}
|
|
60
|
+
declare module './DataConnectorType' {
|
|
61
|
+
interface DataConnectorTypes {
|
|
62
|
+
GoogleSheets: typeof GoogleSheetsConnector;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
export default GoogleSheetsConnector;
|
|
@@ -0,0 +1,226 @@
|
|
|
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
|
+
* - Torstein Hønsi
|
|
11
|
+
* - Gøran Slettemark
|
|
12
|
+
* - Wojciech Chmiel
|
|
13
|
+
* - Sophie Bremer
|
|
14
|
+
* - Jomar Hønsi
|
|
15
|
+
* - Kamil Kubik
|
|
16
|
+
*
|
|
17
|
+
* */
|
|
18
|
+
'use strict';
|
|
19
|
+
import DataConnector from './DataConnector.js';
|
|
20
|
+
import GoogleSheetsConverter from '../Converters/GoogleSheetsConverter.js';
|
|
21
|
+
import U from '../../Core/Utilities.js';
|
|
22
|
+
const { merge, pick, fireEvent } = U;
|
|
23
|
+
/* *
|
|
24
|
+
*
|
|
25
|
+
* Functions
|
|
26
|
+
*
|
|
27
|
+
* */
|
|
28
|
+
/**
|
|
29
|
+
* Tests Google's response for error.
|
|
30
|
+
* @private
|
|
31
|
+
*/
|
|
32
|
+
function isGoogleError(json) {
|
|
33
|
+
return (typeof json === 'object' && json &&
|
|
34
|
+
typeof json.error === 'object' && json.error &&
|
|
35
|
+
typeof json.error.code === 'number' &&
|
|
36
|
+
typeof json.error.message === 'string' &&
|
|
37
|
+
typeof json.error.status === 'string');
|
|
38
|
+
}
|
|
39
|
+
/* *
|
|
40
|
+
*
|
|
41
|
+
* Class
|
|
42
|
+
*
|
|
43
|
+
* */
|
|
44
|
+
/**
|
|
45
|
+
* @private
|
|
46
|
+
* @todo implement save, requires oauth2
|
|
47
|
+
*/
|
|
48
|
+
class GoogleSheetsConnector extends DataConnector {
|
|
49
|
+
/* *
|
|
50
|
+
*
|
|
51
|
+
* Constructor
|
|
52
|
+
*
|
|
53
|
+
* */
|
|
54
|
+
/**
|
|
55
|
+
* Constructs an instance of GoogleSheetsConnector
|
|
56
|
+
*
|
|
57
|
+
* @param {Partial<GoogleSheetsConnectorOptions>} [options]
|
|
58
|
+
* Options for the connector and converter.
|
|
59
|
+
*/
|
|
60
|
+
constructor(options) {
|
|
61
|
+
const mergedOptions = merge(GoogleSheetsConnector.defaultOptions, options);
|
|
62
|
+
super(mergedOptions);
|
|
63
|
+
this.options = mergedOptions;
|
|
64
|
+
}
|
|
65
|
+
/* *
|
|
66
|
+
*
|
|
67
|
+
* Functions
|
|
68
|
+
*
|
|
69
|
+
* */
|
|
70
|
+
/**
|
|
71
|
+
* Overrides the DataConnector method. Emits an event on the connector to
|
|
72
|
+
* all registered callbacks of this event.
|
|
73
|
+
*
|
|
74
|
+
* @param {GoogleSheetsConnector.Event} e
|
|
75
|
+
* Event object containing additional event information.
|
|
76
|
+
*/
|
|
77
|
+
emit(e) {
|
|
78
|
+
fireEvent(this, e.type, e);
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Loads data from a Google Spreadsheet.
|
|
82
|
+
*
|
|
83
|
+
* @param {DataEvent.Detail} [eventDetail]
|
|
84
|
+
* Custom information for pending events.
|
|
85
|
+
*
|
|
86
|
+
* @return {Promise<this>}
|
|
87
|
+
* Same connector instance with modified table.
|
|
88
|
+
*/
|
|
89
|
+
load(eventDetail) {
|
|
90
|
+
const connector = this;
|
|
91
|
+
const options = connector.options;
|
|
92
|
+
const { dataRefreshRate, enablePolling, googleAPIKey, googleSpreadsheetKey, dataTables } = options;
|
|
93
|
+
const url = GoogleSheetsConnector.buildFetchURL(googleAPIKey, googleSpreadsheetKey, options);
|
|
94
|
+
connector.emit({
|
|
95
|
+
type: 'load',
|
|
96
|
+
detail: eventDetail,
|
|
97
|
+
url
|
|
98
|
+
});
|
|
99
|
+
if (!URL.canParse(url)) {
|
|
100
|
+
throw new Error('Invalid URL: ' + url);
|
|
101
|
+
}
|
|
102
|
+
return fetch(url, { signal: connector?.pollingController?.signal })
|
|
103
|
+
.then((response) => (response.json()))
|
|
104
|
+
.then((json) => {
|
|
105
|
+
if (isGoogleError(json)) {
|
|
106
|
+
throw new Error(json.error.message);
|
|
107
|
+
}
|
|
108
|
+
this.initConverters(json, (key) => {
|
|
109
|
+
const tableOptions = dataTables?.find((dataTable) => dataTable.key === key);
|
|
110
|
+
// The data table options takes precedence over the
|
|
111
|
+
// connector options.
|
|
112
|
+
const { firstRowAsNames = options.firstRowAsNames, beforeParse = options.beforeParse } = tableOptions || {};
|
|
113
|
+
const converterOptions = {
|
|
114
|
+
firstRowAsNames,
|
|
115
|
+
beforeParse
|
|
116
|
+
};
|
|
117
|
+
return new GoogleSheetsConverter(converterOptions);
|
|
118
|
+
}, (converter, data) => converter.parse({ json: data }));
|
|
119
|
+
return connector.applyTableModifiers();
|
|
120
|
+
})
|
|
121
|
+
.then(() => {
|
|
122
|
+
connector.emit({
|
|
123
|
+
type: 'afterLoad',
|
|
124
|
+
detail: eventDetail,
|
|
125
|
+
url
|
|
126
|
+
});
|
|
127
|
+
// Polling
|
|
128
|
+
if (enablePolling) {
|
|
129
|
+
setTimeout(() => connector.load(), Math.max(dataRefreshRate || 0, 1) * 1000);
|
|
130
|
+
}
|
|
131
|
+
return connector;
|
|
132
|
+
})['catch']((error) => {
|
|
133
|
+
connector.emit({
|
|
134
|
+
type: 'loadError',
|
|
135
|
+
detail: eventDetail,
|
|
136
|
+
error
|
|
137
|
+
});
|
|
138
|
+
throw error;
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
/* *
|
|
143
|
+
*
|
|
144
|
+
* Static Properties
|
|
145
|
+
*
|
|
146
|
+
* */
|
|
147
|
+
GoogleSheetsConnector.defaultOptions = {
|
|
148
|
+
id: 'google-sheets-connector',
|
|
149
|
+
type: 'GoogleSheets',
|
|
150
|
+
googleAPIKey: '',
|
|
151
|
+
googleSpreadsheetKey: '',
|
|
152
|
+
enablePolling: false,
|
|
153
|
+
dataRefreshRate: 2,
|
|
154
|
+
firstRowAsNames: true
|
|
155
|
+
};
|
|
156
|
+
/* *
|
|
157
|
+
*
|
|
158
|
+
* Class Namespace
|
|
159
|
+
*
|
|
160
|
+
* */
|
|
161
|
+
(function (GoogleSheetsConnector) {
|
|
162
|
+
/* *
|
|
163
|
+
*
|
|
164
|
+
* Declarations
|
|
165
|
+
*
|
|
166
|
+
* */
|
|
167
|
+
/* *
|
|
168
|
+
*
|
|
169
|
+
* Constants
|
|
170
|
+
*
|
|
171
|
+
* */
|
|
172
|
+
const alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
|
|
173
|
+
/* *
|
|
174
|
+
*
|
|
175
|
+
* Functions
|
|
176
|
+
*
|
|
177
|
+
* */
|
|
178
|
+
/**
|
|
179
|
+
* Creates GoogleSheets API v4 URL.
|
|
180
|
+
* @private
|
|
181
|
+
*/
|
|
182
|
+
function buildFetchURL(apiKey, sheetKey, options = {}) {
|
|
183
|
+
const url = new URL(`https://sheets.googleapis.com/v4/spreadsheets/${sheetKey}/values/`);
|
|
184
|
+
const range = options.onlyColumnIds ?
|
|
185
|
+
'A1:Z1' : buildQueryRange(options);
|
|
186
|
+
url.pathname += range;
|
|
187
|
+
const searchParams = url.searchParams;
|
|
188
|
+
searchParams.set('alt', 'json');
|
|
189
|
+
if (!options.onlyColumnIds) {
|
|
190
|
+
searchParams.set('dateTimeRenderOption', 'FORMATTED_STRING');
|
|
191
|
+
searchParams.set('majorDimension', 'COLUMNS');
|
|
192
|
+
searchParams.set('valueRenderOption', 'UNFORMATTED_VALUE');
|
|
193
|
+
}
|
|
194
|
+
searchParams.set('prettyPrint', 'false');
|
|
195
|
+
searchParams.set('key', apiKey);
|
|
196
|
+
return url.href;
|
|
197
|
+
}
|
|
198
|
+
GoogleSheetsConnector.buildFetchURL = buildFetchURL;
|
|
199
|
+
/**
|
|
200
|
+
* Creates sheets range.
|
|
201
|
+
* @private
|
|
202
|
+
*/
|
|
203
|
+
function buildQueryRange(options = {}) {
|
|
204
|
+
const { endColumn, endRow, googleSpreadsheetRange, startColumn, startRow } = options;
|
|
205
|
+
return googleSpreadsheetRange || ((alphabet[startColumn || 0] || 'A') +
|
|
206
|
+
(Math.max((startRow || 0), 0) + 1) +
|
|
207
|
+
':' +
|
|
208
|
+
(alphabet[pick(endColumn, 25)] || 'Z') +
|
|
209
|
+
(endRow ?
|
|
210
|
+
Math.max(endRow, 0) :
|
|
211
|
+
'Z'));
|
|
212
|
+
}
|
|
213
|
+
GoogleSheetsConnector.buildQueryRange = buildQueryRange;
|
|
214
|
+
})(GoogleSheetsConnector || (GoogleSheetsConnector = {}));
|
|
215
|
+
/* *
|
|
216
|
+
*
|
|
217
|
+
* Registry
|
|
218
|
+
*
|
|
219
|
+
* */
|
|
220
|
+
DataConnector.registerType('GoogleSheets', GoogleSheetsConnector);
|
|
221
|
+
/* *
|
|
222
|
+
*
|
|
223
|
+
* Default Export
|
|
224
|
+
*
|
|
225
|
+
* */
|
|
226
|
+
export default GoogleSheetsConnector;
|
|
@@ -0,0 +1,167 @@
|
|
|
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
|
+
* - Karol Kolodziej
|
|
11
|
+
* - Kamil Kubik
|
|
12
|
+
*
|
|
13
|
+
* */
|
|
14
|
+
|
|
15
|
+
/* *
|
|
16
|
+
*
|
|
17
|
+
* Imports
|
|
18
|
+
*
|
|
19
|
+
* */
|
|
20
|
+
|
|
21
|
+
import type DataConnectorOptions from './DataConnectorOptions';
|
|
22
|
+
import type DataTable from '../DataTable';
|
|
23
|
+
import type { DataTableConnectorOptions } from './DataConnectorOptions';
|
|
24
|
+
|
|
25
|
+
/* *
|
|
26
|
+
*
|
|
27
|
+
* Declarations
|
|
28
|
+
*
|
|
29
|
+
* */
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Options of the GoogleSheetsConnector.
|
|
33
|
+
*/
|
|
34
|
+
export interface GoogleSheetsConnectorOptions extends DataConnectorOptions {
|
|
35
|
+
/**
|
|
36
|
+
* The corresponding connector type.
|
|
37
|
+
*/
|
|
38
|
+
type: 'GoogleSheets';
|
|
39
|
+
/**
|
|
40
|
+
* The rate in seconds for polling for live data.
|
|
41
|
+
* Note that polling requires the option `enablePolling` to be true.
|
|
42
|
+
*/
|
|
43
|
+
dataRefreshRate?: number;
|
|
44
|
+
/**
|
|
45
|
+
* Whether to enable polling for live data.
|
|
46
|
+
*/
|
|
47
|
+
enablePolling?: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* The number of the last column to load.
|
|
50
|
+
*/
|
|
51
|
+
endColumn?: number;
|
|
52
|
+
/**
|
|
53
|
+
* The number of the last row to load.
|
|
54
|
+
*/
|
|
55
|
+
endRow?: number;
|
|
56
|
+
/**
|
|
57
|
+
* Whether to treat the first row of the data set as series names.
|
|
58
|
+
*/
|
|
59
|
+
firstRowAsNames?: boolean;
|
|
60
|
+
/**
|
|
61
|
+
* The API key for a Google Spreadsheet (user's credentials).
|
|
62
|
+
* See [general information on GS](https://developers.google.com/sheets/api/quickstart/js#create_an_api_key).
|
|
63
|
+
*/
|
|
64
|
+
googleAPIKey: string;
|
|
65
|
+
/**
|
|
66
|
+
* The Google Spreadsheet key that identifies the sheet to use. See
|
|
67
|
+
* [general information on googleSpreadsheetKey](#data.googleSpreadsheetKey).
|
|
68
|
+
* The key for a sheet can be extracted from the sheet's URL
|
|
69
|
+
* `https://docs.google.com/spreadsheets/d/{key}`.
|
|
70
|
+
*/
|
|
71
|
+
googleSpreadsheetKey: string;
|
|
72
|
+
/**
|
|
73
|
+
* The Google Spreadsheet `range` to use in combination with
|
|
74
|
+
* [googleSpreadsheetKey](#data.googleSpreadsheetKey). See
|
|
75
|
+
* [developers.google.com](https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/get)
|
|
76
|
+
* for details.
|
|
77
|
+
*
|
|
78
|
+
* If given, it takes precedence over `startColumn`, `endColumn`, `startRow` and
|
|
79
|
+
* `endRow`.
|
|
80
|
+
*/
|
|
81
|
+
googleSpreadsheetRange?: string;
|
|
82
|
+
/**
|
|
83
|
+
* The number of the first column to load.
|
|
84
|
+
*/
|
|
85
|
+
startColumn?: number;
|
|
86
|
+
/**
|
|
87
|
+
* The number of the first row to load.
|
|
88
|
+
*/
|
|
89
|
+
startRow?: number;
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* Allows defining multiple data tables within a single connector to adjust
|
|
93
|
+
* options or data parsing in various ways based on the same data source.
|
|
94
|
+
*
|
|
95
|
+
* @example
|
|
96
|
+
* dataPool: {
|
|
97
|
+
* connectors: [{
|
|
98
|
+
* id: 'data-connector',
|
|
99
|
+
* type: 'JSON',
|
|
100
|
+
* data: {
|
|
101
|
+
* kpis: { a: 1, b: 2 },
|
|
102
|
+
* more: {
|
|
103
|
+
* alpha: [1, 2, 3, 4, 5],
|
|
104
|
+
* beta: [10, 20, 30, 40, 50]
|
|
105
|
+
* }
|
|
106
|
+
* },
|
|
107
|
+
* dataTables: [{
|
|
108
|
+
* key: 'more',
|
|
109
|
+
* beforeParse: function ({ more }) {
|
|
110
|
+
* const keys = Object.keys(more);
|
|
111
|
+
* return [
|
|
112
|
+
* keys,
|
|
113
|
+
* ...more[keys[0]].map((_, index) =>
|
|
114
|
+
* keys.map(key => more[key][index])
|
|
115
|
+
* )
|
|
116
|
+
* ];
|
|
117
|
+
* }
|
|
118
|
+
* }, {
|
|
119
|
+
* key: 'kpis',
|
|
120
|
+
* firstRowAsNames: false,
|
|
121
|
+
* columnIds: ['a', 'b'],
|
|
122
|
+
* beforeParse: function ({ kpis }) {
|
|
123
|
+
* return [[kpis.a, kpis.b]];
|
|
124
|
+
* },
|
|
125
|
+
* dataModifier: {
|
|
126
|
+
* type: 'Math',
|
|
127
|
+
* columnFormulas: [{
|
|
128
|
+
* column: 'c',
|
|
129
|
+
* formula: 'A1+B1'
|
|
130
|
+
* }]
|
|
131
|
+
* }
|
|
132
|
+
* }]
|
|
133
|
+
* }]
|
|
134
|
+
* }
|
|
135
|
+
**/
|
|
136
|
+
dataTables?: GoogleSheetsDataTableConnectorOptions[];
|
|
137
|
+
|
|
138
|
+
/**
|
|
139
|
+
* A custom callback function that parses the data before it's being parsed
|
|
140
|
+
* to the data table format inside the converter.
|
|
141
|
+
*/
|
|
142
|
+
beforeParse?: GoogleSheetsBeforeParseCallbackFunction;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* Options of the GoogleSheetsConnector dataTable.
|
|
147
|
+
*/
|
|
148
|
+
export interface GoogleSheetsDataTableConnectorOptions extends DataTableConnectorOptions {
|
|
149
|
+
beforeParse?: GoogleSheetsBeforeParseCallbackFunction;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
/**
|
|
153
|
+
* Callback function allowing modification of the GoogleSheets data
|
|
154
|
+
* before parsing it. Must return an array of DataTable columns.
|
|
155
|
+
*
|
|
156
|
+
*/
|
|
157
|
+
export interface GoogleSheetsBeforeParseCallbackFunction {
|
|
158
|
+
(data: DataTable.BasicColumn[]): DataTable.BasicColumn[];
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
/* *
|
|
162
|
+
*
|
|
163
|
+
* Default Export
|
|
164
|
+
*
|
|
165
|
+
* */
|
|
166
|
+
|
|
167
|
+
export default GoogleSheetsConnectorOptions;
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import type DataEvent from '../DataEvent';
|
|
2
|
+
import type HTMLTableConnectorOptions from './HTMLTableConnectorOptions';
|
|
3
|
+
import type HTMLTableConverterOptions from '../Converters/HTMLTableConverterOptions';
|
|
4
|
+
import DataConnector from './DataConnector.js';
|
|
5
|
+
import HTMLTableConverter from '../Converters/HTMLTableConverter.js';
|
|
6
|
+
/**
|
|
7
|
+
* Class that handles creating a data connector from an HTML table.
|
|
8
|
+
*
|
|
9
|
+
* @private
|
|
10
|
+
*/
|
|
11
|
+
declare class HTMLTableConnector extends DataConnector {
|
|
12
|
+
protected static readonly defaultOptions: HTMLTableConnectorOptions;
|
|
13
|
+
/**
|
|
14
|
+
* Constructs an instance of HTMLTableConnector.
|
|
15
|
+
*
|
|
16
|
+
* @param {HTMLTableConnector.CombinedHTMLTableConnectorOptions} [options]
|
|
17
|
+
* Options for the connector and converter.
|
|
18
|
+
*/
|
|
19
|
+
constructor(options?: HTMLTableConnector.CombinedHTMLTableConnectorOptions);
|
|
20
|
+
/**
|
|
21
|
+
* Options for the HTMLTable dataconnector
|
|
22
|
+
* @todo this should not include parsing options
|
|
23
|
+
*/
|
|
24
|
+
readonly options: HTMLTableConnectorOptions;
|
|
25
|
+
/**
|
|
26
|
+
* The attached parser, which can be replaced in the constructor
|
|
27
|
+
*/
|
|
28
|
+
converter: HTMLTableConverter;
|
|
29
|
+
/**
|
|
30
|
+
* The table element to create the connector from. Is either supplied
|
|
31
|
+
* directly or is fetched by an ID.
|
|
32
|
+
*/
|
|
33
|
+
tableElement?: HTMLElement;
|
|
34
|
+
tableID?: string;
|
|
35
|
+
/**
|
|
36
|
+
* Initiates creating the dataconnector from the HTML table
|
|
37
|
+
*
|
|
38
|
+
* @param {DataEvent.Detail} [eventDetail]
|
|
39
|
+
* Custom information for pending events.
|
|
40
|
+
*
|
|
41
|
+
* @emits HTMLTableConnector#load
|
|
42
|
+
* @emits HTMLTableConnector#afterLoad
|
|
43
|
+
* @emits HTMLTableConnector#loadError
|
|
44
|
+
*/
|
|
45
|
+
load(eventDetail?: DataEvent.Detail): Promise<this>;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Types for class-specific options and events
|
|
49
|
+
*/
|
|
50
|
+
declare namespace HTMLTableConnector {
|
|
51
|
+
/**
|
|
52
|
+
* Type for event object fired from HTMLTableConnector
|
|
53
|
+
*/
|
|
54
|
+
interface Event extends DataConnector.Event {
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Options for exporting the connector as an HTML table
|
|
58
|
+
*/
|
|
59
|
+
interface ExportOptions {
|
|
60
|
+
decimalPoint?: string | null;
|
|
61
|
+
exportIDColumn?: boolean;
|
|
62
|
+
tableCaption?: string;
|
|
63
|
+
useLocalDecimalPoint?: boolean;
|
|
64
|
+
useMultiLevelHeaders?: boolean;
|
|
65
|
+
useRowspanHeaders?: boolean;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Options of the HTMLTable connector and converter.
|
|
69
|
+
*/
|
|
70
|
+
type CombinedHTMLTableConnectorOptions = Partial<HTMLTableConnectorOptions> & HTMLTableConverterOptions;
|
|
71
|
+
}
|
|
72
|
+
declare module './DataConnectorType' {
|
|
73
|
+
interface DataConnectorTypes {
|
|
74
|
+
HTMLTable: typeof HTMLTableConnector;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
export default HTMLTableConnector;
|
|
@@ -0,0 +1,119 @@
|
|
|
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
|
+
* - Torstein Hønsi
|
|
11
|
+
* - Gøran Slettemark
|
|
12
|
+
* - Wojciech Chmiel
|
|
13
|
+
* - Sophie Bremer
|
|
14
|
+
* - Kamil Kubik
|
|
15
|
+
*
|
|
16
|
+
* */
|
|
17
|
+
'use strict';
|
|
18
|
+
import DataConnector from './DataConnector.js';
|
|
19
|
+
import HTMLTableConverter from '../Converters/HTMLTableConverter.js';
|
|
20
|
+
import H from '../../Core/Globals.js';
|
|
21
|
+
const { win } = H;
|
|
22
|
+
import U from '../../Core/Utilities.js';
|
|
23
|
+
const { merge } = U;
|
|
24
|
+
/* *
|
|
25
|
+
*
|
|
26
|
+
* Class
|
|
27
|
+
*
|
|
28
|
+
* */
|
|
29
|
+
/**
|
|
30
|
+
* Class that handles creating a data connector from an HTML table.
|
|
31
|
+
*
|
|
32
|
+
* @private
|
|
33
|
+
*/
|
|
34
|
+
class HTMLTableConnector extends DataConnector {
|
|
35
|
+
/* *
|
|
36
|
+
*
|
|
37
|
+
* Constructor
|
|
38
|
+
*
|
|
39
|
+
* */
|
|
40
|
+
/**
|
|
41
|
+
* Constructs an instance of HTMLTableConnector.
|
|
42
|
+
*
|
|
43
|
+
* @param {HTMLTableConnector.CombinedHTMLTableConnectorOptions} [options]
|
|
44
|
+
* Options for the connector and converter.
|
|
45
|
+
*/
|
|
46
|
+
constructor(options) {
|
|
47
|
+
const mergedOptions = merge(HTMLTableConnector.defaultOptions, options);
|
|
48
|
+
super(mergedOptions);
|
|
49
|
+
this.options = mergedOptions;
|
|
50
|
+
this.converter = new HTMLTableConverter(mergedOptions);
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Initiates creating the dataconnector from the HTML table
|
|
54
|
+
*
|
|
55
|
+
* @param {DataEvent.Detail} [eventDetail]
|
|
56
|
+
* Custom information for pending events.
|
|
57
|
+
*
|
|
58
|
+
* @emits HTMLTableConnector#load
|
|
59
|
+
* @emits HTMLTableConnector#afterLoad
|
|
60
|
+
* @emits HTMLTableConnector#loadError
|
|
61
|
+
*/
|
|
62
|
+
async load(eventDetail) {
|
|
63
|
+
const connector = this;
|
|
64
|
+
const options = connector.options;
|
|
65
|
+
const converter = connector.converter;
|
|
66
|
+
const table = connector.getTable();
|
|
67
|
+
const htmlTable = options.htmlTable;
|
|
68
|
+
connector.emit({
|
|
69
|
+
type: 'load',
|
|
70
|
+
detail: eventDetail
|
|
71
|
+
});
|
|
72
|
+
let tableElement;
|
|
73
|
+
if (typeof htmlTable === 'string') {
|
|
74
|
+
connector.tableID = htmlTable;
|
|
75
|
+
tableElement = win.document.getElementById(htmlTable);
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
tableElement = htmlTable;
|
|
79
|
+
connector.tableID = tableElement.id;
|
|
80
|
+
}
|
|
81
|
+
connector.tableElement = tableElement || void 0;
|
|
82
|
+
if (!connector.tableElement) {
|
|
83
|
+
const error = 'HTML table not provided, or element with ID not found';
|
|
84
|
+
connector.emit({
|
|
85
|
+
type: 'loadError',
|
|
86
|
+
detail: eventDetail,
|
|
87
|
+
error
|
|
88
|
+
});
|
|
89
|
+
return Promise.reject(new Error(error));
|
|
90
|
+
}
|
|
91
|
+
const columns = converter.parse(merge({ tableElement: connector.tableElement }, options), eventDetail);
|
|
92
|
+
// If already loaded, clear the current rows
|
|
93
|
+
table.deleteColumns();
|
|
94
|
+
table.setColumns(columns);
|
|
95
|
+
await connector.applyTableModifiers();
|
|
96
|
+
connector.emit({
|
|
97
|
+
type: 'afterLoad',
|
|
98
|
+
detail: eventDetail
|
|
99
|
+
});
|
|
100
|
+
return connector;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
/* *
|
|
104
|
+
*
|
|
105
|
+
* Static Properties
|
|
106
|
+
*
|
|
107
|
+
* */
|
|
108
|
+
HTMLTableConnector.defaultOptions = {
|
|
109
|
+
id: 'HTML-table-connector',
|
|
110
|
+
type: 'HTMLTable',
|
|
111
|
+
htmlTable: ''
|
|
112
|
+
};
|
|
113
|
+
DataConnector.registerType('HTMLTable', HTMLTableConnector);
|
|
114
|
+
/* *
|
|
115
|
+
*
|
|
116
|
+
* Default Export
|
|
117
|
+
*
|
|
118
|
+
* */
|
|
119
|
+
export default HTMLTableConnector;
|
|
@@ -0,0 +1,49 @@
|
|
|
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
|
+
* - Karol Kolodziej
|
|
11
|
+
*
|
|
12
|
+
* */
|
|
13
|
+
|
|
14
|
+
/* *
|
|
15
|
+
*
|
|
16
|
+
* Imports
|
|
17
|
+
*
|
|
18
|
+
* */
|
|
19
|
+
|
|
20
|
+
import type DataConnectorOptions from './DataConnectorOptions';
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
/* *
|
|
24
|
+
*
|
|
25
|
+
* Declarations
|
|
26
|
+
*
|
|
27
|
+
* */
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Options of the GoogleSheetsConnector.
|
|
31
|
+
*/
|
|
32
|
+
export interface HTMLTableConnectorOptions extends DataConnectorOptions {
|
|
33
|
+
/**
|
|
34
|
+
* The corresponding connector type.
|
|
35
|
+
*/
|
|
36
|
+
type: 'HTMLTable';
|
|
37
|
+
/**
|
|
38
|
+
* The id of the HTML data table element to load or a reference to the HTML.
|
|
39
|
+
*/
|
|
40
|
+
htmlTable: string | HTMLElement;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/* *
|
|
44
|
+
*
|
|
45
|
+
* Default Export
|
|
46
|
+
*
|
|
47
|
+
* */
|
|
48
|
+
|
|
49
|
+
export default HTMLTableConnectorOptions;
|