@highcharts/grid-pro 2.1.1 → 2.3.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/LICENSE.txt +6 -0
- package/README.md +15 -9
- package/css/grid-pro.css +1289 -1153
- package/css/modules/grid-base-variables.css +131 -0
- package/css/modules/grid-button-variables.css +140 -0
- package/css/modules/grid-caption-variables.css +11 -0
- package/css/modules/grid-description-variables.css +11 -0
- package/css/modules/grid-input-variables.css +114 -0
- package/css/modules/grid-link-variables.css +18 -0
- package/css/modules/grid-menu-variables.css +50 -0
- package/css/modules/grid-pagination-variables.css +12 -0
- package/css/modules/grid-popup-variables.css +24 -0
- package/css/modules/grid-pro.css +234 -0
- package/css/modules/grid-table-variables.css +385 -0
- package/css/modules/grid-theme-default.css +55 -0
- package/es-modules/Accessibility/A11yI18n.js +4 -5
- package/es-modules/Accessibility/Accessibility.js +5 -5
- package/es-modules/Accessibility/AccessibilityComponent.d.ts +3 -3
- package/es-modules/Accessibility/AccessibilityComponent.js +4 -3
- package/es-modules/Accessibility/Components/AnnotationsA11y.js +4 -3
- package/es-modules/Accessibility/Components/ContainerComponent.js +4 -3
- package/es-modules/Accessibility/Components/InfoRegionsComponent.js +9 -9
- package/es-modules/Accessibility/Components/LegendComponent.js +5 -5
- package/es-modules/Accessibility/Components/MenuComponent.js +5 -5
- package/es-modules/Accessibility/Components/NavigatorComponent.js +6 -7
- package/es-modules/Accessibility/Components/RangeSelectorComponent.js +5 -5
- package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +15 -5
- package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +7 -7
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +4 -3
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +7 -7
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +5 -5
- package/es-modules/Accessibility/Components/ZoomComponent.js +5 -5
- package/es-modules/Accessibility/FocusBorder.js +5 -5
- package/es-modules/Accessibility/HighContrastMode.js +4 -3
- package/es-modules/Accessibility/HighContrastTheme.js +4 -3
- package/es-modules/Accessibility/KeyboardNavigation.js +5 -5
- package/es-modules/Accessibility/KeyboardNavigationHandler.js +5 -5
- package/es-modules/Accessibility/Options/A11yDefaults.d.ts +11 -0
- package/es-modules/Accessibility/Options/A11yDefaults.js +15 -3
- package/es-modules/Accessibility/Options/DeprecatedOptions.d.ts +58 -0
- package/es-modules/Accessibility/Options/DeprecatedOptions.js +11 -5
- package/es-modules/Accessibility/Options/LangDefaults.js +13 -3
- package/es-modules/Accessibility/ProxyElement.js +6 -8
- package/es-modules/Accessibility/ProxyProvider.js +5 -5
- package/es-modules/Accessibility/Utils/Announcer.js +6 -6
- package/es-modules/Accessibility/Utils/ChartUtilities.js +5 -5
- package/es-modules/Accessibility/Utils/DOMElementProvider.js +4 -3
- package/es-modules/Accessibility/Utils/EventProvider.d.ts +3 -3
- package/es-modules/Accessibility/Utils/EventProvider.js +10 -5
- package/es-modules/Accessibility/Utils/HTMLUtilities.js +5 -5
- package/es-modules/Core/Animation/AnimationOptions.d.ts +42 -0
- package/es-modules/Core/Animation/AnimationOptions.js +10 -0
- package/es-modules/Core/Animation/AnimationUtilities.js +40 -5
- package/es-modules/Core/Animation/Fx.d.ts +1 -130
- package/es-modules/Core/Animation/Fx.js +14 -8
- package/es-modules/Core/Animation/FxBase.d.ts +1 -0
- package/es-modules/Core/Animation/FxBase.js +11 -0
- package/es-modules/Core/Callback.d.ts +56 -0
- package/es-modules/Core/Callback.js +10 -0
- package/es-modules/Core/Chart/Chart.d.ts +659 -400
- package/es-modules/Core/Chart/Chart.js +112 -95
- package/es-modules/Core/Chart/Chart3D.d.ts +123 -233
- package/es-modules/Core/Chart/Chart3D.js +23 -37
- package/es-modules/Core/Chart/ChartBase.d.ts +3 -0
- package/es-modules/Core/Chart/ChartBase.js +11 -0
- package/es-modules/Core/Chart/ChartDefaults.js +18 -12
- package/es-modules/Core/Chart/ChartNavigationComposition.d.ts +1 -55
- package/es-modules/Core/Chart/ChartNavigationComposition.js +13 -13
- package/es-modules/Core/Chart/ChartOptions.d.ts +1225 -0
- package/es-modules/Core/Chart/ChartOptions.js +10 -0
- package/es-modules/Core/Chart/GanttChart.d.ts +0 -38
- package/es-modules/Core/Chart/GanttChart.js +5 -5
- package/es-modules/Core/Chart/MapChart.d.ts +9 -4
- package/es-modules/Core/Chart/MapChart.js +14 -5
- package/es-modules/Core/Chart/StockChart.d.ts +0 -85
- package/es-modules/Core/Chart/StockChart.js +35 -18
- package/es-modules/Core/Color/Color.d.ts +16 -24
- package/es-modules/Core/Color/Color.js +27 -10
- package/es-modules/Core/Color/ColorString.d.ts +0 -23
- package/es-modules/Core/Color/ColorString.js +11 -0
- package/es-modules/Core/Color/ColorType.d.ts +0 -33
- package/es-modules/Core/Color/ColorType.js +11 -0
- package/es-modules/Core/Color/GradientColor.d.ts +0 -33
- package/es-modules/Core/Color/GradientColor.js +11 -0
- package/es-modules/Core/Color/Palettes.d.ts +1 -84
- package/es-modules/Core/Color/Palettes.js +2 -1
- package/es-modules/Core/Defaults.d.ts +6 -0
- package/es-modules/Core/Defaults.js +66 -75
- package/es-modules/Core/Delaunay.d.ts +52 -0
- package/es-modules/Core/Delaunay.js +310 -0
- package/es-modules/Core/Foundation.d.ts +1 -19
- package/es-modules/Core/Foundation.js +8 -6
- package/es-modules/Core/Geometry/CircleObject.d.ts +5 -0
- package/es-modules/Core/Geometry/CircleObject.js +10 -0
- package/es-modules/Core/Geometry/CircleUtilities.d.ts +1 -189
- package/es-modules/Core/Geometry/CircleUtilities.js +18 -17
- package/es-modules/Core/Geometry/GeometryObject.d.ts +7 -0
- package/es-modules/Core/Geometry/GeometryObject.js +10 -0
- package/es-modules/Core/Geometry/GeometryUtilities.d.ts +1 -48
- package/es-modules/Core/Geometry/GeometryUtilities.js +9 -7
- package/es-modules/Core/Geometry/IntersectionObject.d.ts +7 -0
- package/es-modules/Core/Geometry/IntersectionObject.js +10 -0
- package/es-modules/Core/Geometry/PolygonClip.d.ts +1 -19
- package/es-modules/Core/Geometry/PolygonClip.js +9 -7
- package/es-modules/Core/Globals.d.ts +9 -31
- package/es-modules/Core/Globals.js +9 -10
- package/es-modules/Core/GlobalsBase.d.ts +35 -0
- package/es-modules/Core/GlobalsBase.js +11 -0
- package/es-modules/Core/HttpUtilities.d.ts +54 -17
- package/es-modules/Core/HttpUtilities.js +16 -16
- package/es-modules/Core/JSON.d.ts +29 -0
- package/es-modules/Core/JSON.js +13 -0
- package/es-modules/Core/KeyboardEvent.d.ts +1 -0
- package/es-modules/Core/KeyboardEvent.js +11 -0
- package/es-modules/Core/MSPointer.d.ts +1 -74
- package/es-modules/Core/MSPointer.js +24 -15
- package/es-modules/Core/Math3D.d.ts +1 -117
- package/es-modules/Core/Math3D.js +14 -12
- package/es-modules/Core/Options.d.ts +338 -0
- package/es-modules/Core/Options.js +10 -0
- package/es-modules/Core/Pointer.d.ts +71 -445
- package/es-modules/Core/Pointer.js +74 -69
- package/es-modules/Core/PointerEvent.d.ts +20 -0
- package/es-modules/Core/PointerEvent.js +11 -0
- package/es-modules/Core/Renderer/AlignObject.d.ts +25 -27
- package/es-modules/Core/Renderer/AlignObject.js +11 -0
- package/es-modules/Core/Renderer/BBoxObject.d.ts +20 -31
- package/es-modules/Core/Renderer/BBoxObject.js +11 -0
- package/es-modules/Core/Renderer/CSSObject.d.ts +268 -59
- package/es-modules/Core/Renderer/CSSObject.js +10 -0
- package/es-modules/Core/Renderer/DOMElementType.d.ts +1 -33
- package/es-modules/Core/Renderer/DOMElementType.js +11 -0
- package/es-modules/Core/Renderer/DashStyleValue.d.ts +1 -27
- package/es-modules/Core/Renderer/DashStyleValue.js +11 -0
- package/es-modules/Core/Renderer/FontMetricsObject.d.ts +6 -26
- package/es-modules/Core/Renderer/FontMetricsObject.js +11 -0
- package/es-modules/Core/Renderer/HTML/AST.d.ts +3 -15
- package/es-modules/Core/Renderer/HTML/AST.js +24 -15
- package/es-modules/Core/Renderer/HTML/HTMLAttributes.d.ts +1 -25
- package/es-modules/Core/Renderer/HTML/HTMLAttributes.js +11 -0
- package/es-modules/Core/Renderer/HTML/HTMLElement.d.ts +0 -54
- package/es-modules/Core/Renderer/HTML/HTMLElement.js +28 -24
- package/es-modules/Core/Renderer/PolygonBoxObject.d.ts +15 -12
- package/es-modules/Core/Renderer/PolygonBoxObject.js +11 -0
- package/es-modules/Core/Renderer/Position3DObject.d.ts +6 -30
- package/es-modules/Core/Renderer/Position3DObject.js +11 -0
- package/es-modules/Core/Renderer/PositionObject.d.ts +9 -23
- package/es-modules/Core/Renderer/PositionObject.js +11 -0
- package/es-modules/Core/Renderer/RectangleObject.d.ts +6 -30
- package/es-modules/Core/Renderer/RectangleObject.js +11 -0
- package/es-modules/Core/Renderer/RendererRegistry.d.ts +1 -29
- package/es-modules/Core/Renderer/RendererRegistry.js +6 -3
- package/es-modules/Core/Renderer/RendererType.d.ts +1 -53
- package/es-modules/Core/Renderer/RendererType.js +11 -0
- package/es-modules/Core/Renderer/RendererUtilities.d.ts +1 -26
- package/es-modules/Core/Renderer/RendererUtilities.js +41 -23
- package/es-modules/Core/Renderer/SVG/ButtonThemeObject.d.ts +26 -31
- package/es-modules/Core/Renderer/SVG/SVGArc3D.d.ts +1 -44
- package/es-modules/Core/Renderer/SVG/SVGAttributes.d.ts +15 -51
- package/es-modules/Core/Renderer/SVG/SVGAttributes3D.d.ts +1 -42
- package/es-modules/Core/Renderer/SVG/SVGCuboid.d.ts +1 -42
- package/es-modules/Core/Renderer/SVG/SVGElement.d.ts +459 -0
- package/es-modules/Core/Renderer/SVG/SVGElement3D.d.ts +1 -0
- package/es-modules/Core/Renderer/SVG/SVGElementBase.d.ts +0 -23
- package/es-modules/Core/Renderer/SVG/SVGLabel.d.ts +14 -0
- package/es-modules/Core/Renderer/SVG/SVGPath.d.ts +18 -56
- package/es-modules/Core/Renderer/SVG/SVGPath3D.d.ts +0 -30
- package/es-modules/Core/Renderer/SVG/SVGRenderer.d.ts +652 -0
- package/es-modules/Core/Renderer/SVG/SVGRenderer3D.d.ts +1 -0
- package/es-modules/Core/Renderer/SVG/SVGRendererBase.d.ts +0 -24
- package/es-modules/Core/Renderer/SVG/SymbolOptions.d.ts +3 -26
- package/es-modules/Core/Renderer/SVG/SymbolType.d.ts +1 -41
- package/es-modules/Core/Renderer/SVG/Symbols.d.ts +146 -0
- package/es-modules/Core/Renderer/SVG/TextBuilder.d.ts +1 -0
- package/es-modules/Core/Renderer/ShadowOptionsObject.d.ts +21 -30
- package/es-modules/Core/Renderer/ShadowOptionsObject.js +11 -0
- package/es-modules/Core/Renderer/SizeObject.d.ts +0 -23
- package/es-modules/Core/Renderer/SizeObject.js +11 -0
- package/es-modules/Core/Responsive.d.ts +94 -29
- package/es-modules/Core/Responsive.js +17 -12
- package/es-modules/Core/Templating.d.ts +17 -1
- package/es-modules/Core/Templating.js +12 -8
- package/es-modules/Core/Time.d.ts +18 -1
- package/es-modules/Core/Time.js +6 -5
- package/es-modules/Core/Tooltip.d.ts +67 -123
- package/es-modules/Core/Tooltip.js +161 -108
- package/es-modules/Core/TooltipOptions.d.ts +724 -0
- package/es-modules/Core/TooltipOptions.js +10 -0
- package/es-modules/Core/Utilities.d.ts +32 -703
- package/es-modules/Core/Utilities.js +28 -1443
- package/es-modules/Data/ColumnUtils.d.ts +83 -80
- package/es-modules/Data/ColumnUtils.js +106 -116
- package/es-modules/Data/Connectors/CSVConnector.d.ts +9 -14
- package/es-modules/Data/Connectors/CSVConnector.js +6 -7
- package/es-modules/Data/Connectors/CSVConnectorOptions.d.ts +3 -3
- package/es-modules/Data/Connectors/DataConnector.d.ts +63 -54
- package/es-modules/Data/Connectors/DataConnector.js +67 -56
- package/es-modules/Data/Connectors/DataConnectorOptions.d.ts +3 -3
- package/es-modules/Data/Connectors/DataConnectorType.d.ts +3 -3
- package/es-modules/Data/Connectors/GoogleSheetsConnector.d.ts +40 -42
- package/es-modules/Data/Connectors/GoogleSheetsConnector.js +76 -91
- package/es-modules/Data/Connectors/GoogleSheetsConnectorOptions.d.ts +7 -5
- package/es-modules/Data/Connectors/HTMLTableConnector.d.ts +23 -28
- package/es-modules/Data/Connectors/HTMLTableConnector.js +6 -7
- package/es-modules/Data/Connectors/HTMLTableConnectorOptions.d.ts +3 -3
- package/es-modules/Data/Connectors/JSONConnector.d.ts +9 -14
- package/es-modules/Data/Connectors/JSONConnector.js +6 -7
- package/es-modules/Data/Connectors/JSONConnectorOptions.d.ts +3 -3
- package/es-modules/Data/Converters/CSVConverter.d.ts +5 -5
- package/es-modules/Data/Converters/CSVConverter.js +6 -7
- package/es-modules/Data/Converters/CSVConverterOptions.d.ts +5 -5
- package/es-modules/Data/Converters/DataConverter.d.ts +76 -78
- package/es-modules/Data/Converters/DataConverter.js +29 -56
- package/es-modules/Data/Converters/DataConverterType.d.ts +3 -3
- package/es-modules/Data/Converters/DataConverterUtils.d.ts +88 -81
- package/es-modules/Data/Converters/DataConverterUtils.js +172 -184
- package/es-modules/Data/Converters/GoogleSheetsConverter.d.ts +4 -4
- package/es-modules/Data/Converters/GoogleSheetsConverter.js +6 -6
- package/es-modules/Data/Converters/GoogleSheetsConverterOptions.d.ts +5 -5
- package/es-modules/Data/Converters/HTMLTableConverter.d.ts +4 -4
- package/es-modules/Data/Converters/HTMLTableConverter.js +5 -6
- package/es-modules/Data/Converters/HTMLTableConverterOptions.d.ts +5 -5
- package/es-modules/Data/Converters/JSONConverter.d.ts +7 -7
- package/es-modules/Data/Converters/JSONConverter.js +9 -9
- package/es-modules/Data/Converters/JSONConverterOptions.d.ts +5 -5
- package/es-modules/Data/DataCursor.d.ts +65 -70
- package/es-modules/Data/DataCursor.js +122 -142
- package/es-modules/Data/DataEvent.d.ts +55 -57
- package/es-modules/Data/DataEvent.js +3 -3
- package/es-modules/Data/DataPool.d.ts +10 -17
- package/es-modules/Data/DataPool.js +23 -12
- package/es-modules/Data/DataPoolOptions.d.ts +3 -3
- package/es-modules/Data/DataTable.d.ts +115 -117
- package/es-modules/Data/DataTable.js +67 -33
- package/es-modules/Data/DataTableCore.d.ts +11 -11
- package/es-modules/Data/DataTableCore.js +7 -7
- package/es-modules/Data/DataTableOptions.js +3 -3
- package/es-modules/Data/Formula/Formula.js +3 -3
- package/es-modules/Data/Formula/FormulaParser.js +4 -5
- package/es-modules/Data/Formula/FormulaProcessor.js +4 -5
- package/es-modules/Data/Formula/FormulaTypes.js +3 -3
- package/es-modules/Data/Formula/Functions/ABS.js +3 -3
- package/es-modules/Data/Formula/Functions/AND.js +3 -3
- package/es-modules/Data/Formula/Functions/AVERAGE.js +3 -3
- package/es-modules/Data/Formula/Functions/AVERAGEA.js +3 -3
- package/es-modules/Data/Formula/Functions/COUNT.js +3 -3
- package/es-modules/Data/Formula/Functions/COUNTA.js +3 -3
- package/es-modules/Data/Formula/Functions/IF.js +3 -3
- package/es-modules/Data/Formula/Functions/ISNA.js +3 -3
- package/es-modules/Data/Formula/Functions/MAX.js +3 -3
- package/es-modules/Data/Formula/Functions/MEDIAN.js +3 -3
- package/es-modules/Data/Formula/Functions/MIN.js +3 -3
- package/es-modules/Data/Formula/Functions/MOD.js +3 -3
- package/es-modules/Data/Formula/Functions/MODE.js +3 -3
- package/es-modules/Data/Formula/Functions/NOT.js +3 -3
- package/es-modules/Data/Formula/Functions/OR.js +3 -3
- package/es-modules/Data/Formula/Functions/PRODUCT.js +3 -3
- package/es-modules/Data/Formula/Functions/SUM.js +3 -3
- package/es-modules/Data/Formula/Functions/XOR.js +3 -3
- package/es-modules/Data/Modifiers/ChainModifier.d.ts +29 -34
- package/es-modules/Data/Modifiers/ChainModifier.js +10 -11
- package/es-modules/Data/Modifiers/ChainModifierOptions.js +3 -3
- package/es-modules/Data/Modifiers/DataModifier.d.ts +36 -41
- package/es-modules/Data/Modifiers/DataModifier.js +34 -56
- package/es-modules/Data/Modifiers/DataModifierEvent.js +3 -3
- package/es-modules/Data/Modifiers/DataModifierOptions.js +3 -3
- package/es-modules/Data/Modifiers/DataModifierType.d.ts +3 -3
- package/es-modules/Data/Modifiers/FilterModifier.d.ts +4 -4
- package/es-modules/Data/Modifiers/FilterModifier.js +6 -7
- package/es-modules/Data/Modifiers/FilterModifierOptions.d.ts +3 -2
- package/es-modules/Data/Modifiers/FilterModifierOptions.js +3 -3
- package/es-modules/Data/Modifiers/InvertModifier.d.ts +4 -4
- package/es-modules/Data/Modifiers/InvertModifier.js +6 -7
- package/es-modules/Data/Modifiers/InvertModifierOptions.js +3 -3
- package/es-modules/Data/Modifiers/MathModifier.d.ts +5 -4
- package/es-modules/Data/Modifiers/MathModifier.js +3 -3
- package/es-modules/Data/Modifiers/MathModifierOptions.js +3 -3
- package/es-modules/Data/Modifiers/RangeModifier.d.ts +4 -4
- package/es-modules/Data/Modifiers/RangeModifier.js +6 -7
- package/es-modules/Data/Modifiers/RangeModifierOptions.js +3 -3
- package/es-modules/Data/Modifiers/SortModifier.d.ts +6 -11
- package/es-modules/Data/Modifiers/SortModifier.js +35 -10
- package/es-modules/Data/Modifiers/SortModifierOptions.d.ts +43 -6
- package/es-modules/Data/Modifiers/SortModifierOptions.js +3 -3
- package/es-modules/Grid/Core/Accessibility/A11yOptions.d.ts +77 -0
- package/es-modules/Grid/Core/Accessibility/A11yOptions.js +4 -3
- package/es-modules/Grid/Core/Accessibility/Accessibility.d.ts +68 -1
- package/es-modules/Grid/Core/Accessibility/Accessibility.js +179 -7
- package/es-modules/Grid/Core/Credits.js +3 -3
- package/es-modules/Grid/Core/Data/DataProvider.d.ts +97 -0
- package/es-modules/Grid/Core/Data/DataProvider.js +89 -0
- package/es-modules/Grid/Core/Data/DataProviderRegistry.d.ts +20 -0
- package/es-modules/Grid/Core/Data/DataProviderRegistry.js +52 -0
- package/es-modules/Grid/Core/Data/DataProviderType.d.ts +19 -0
- package/es-modules/Grid/Core/Data/DataProviderType.js +15 -0
- package/es-modules/Grid/Core/Data/LocalDataProvider.d.ts +165 -0
- package/es-modules/Grid/Core/Data/LocalDataProvider.js +341 -0
- package/es-modules/Grid/Core/Defaults.js +21 -7
- package/es-modules/Grid/Core/Globals.d.ts +20 -16
- package/es-modules/Grid/Core/Globals.js +13 -11
- package/es-modules/Grid/Core/Grid.d.ts +43 -23
- package/es-modules/Grid/Core/Grid.js +316 -136
- package/es-modules/Grid/Core/GridUtils.d.ts +33 -0
- package/es-modules/Grid/Core/GridUtils.js +53 -6
- package/es-modules/Grid/Core/Options.d.ts +162 -5
- package/es-modules/Grid/Core/Options.js +3 -3
- package/es-modules/Grid/Core/Pagination/Pagination.d.ts +3 -0
- package/es-modules/Grid/Core/Pagination/Pagination.js +66 -26
- package/es-modules/Grid/Core/Pagination/PaginationOptions.d.ts +4 -40
- package/es-modules/Grid/Core/Pagination/PaginationOptions.js +11 -0
- package/es-modules/Grid/Core/Querying/FilteringController.js +4 -5
- package/es-modules/Grid/Core/Querying/PaginationController.d.ts +2 -2
- package/es-modules/Grid/Core/Querying/PaginationController.js +6 -6
- package/es-modules/Grid/Core/Querying/QueryingController.d.ts +1 -1
- package/es-modules/Grid/Core/Querying/QueryingController.js +5 -29
- package/es-modules/Grid/Core/Querying/SortingController.d.ts +15 -0
- package/es-modules/Grid/Core/Querying/SortingController.js +89 -51
- package/es-modules/Grid/Core/Responsive/ResponsiveComposition.d.ts +53 -0
- package/es-modules/Grid/Core/Responsive/ResponsiveComposition.js +229 -0
- package/es-modules/Grid/Core/Responsive/ResponsiveOptions.d.ts +58 -0
- package/es-modules/Grid/Core/Responsive/ResponsiveOptions.js +15 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/ColumnFiltering.js +5 -6
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterCell.d.ts +3 -3
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterCell.js +6 -7
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterRow.d.ts +1 -1
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterRow.js +5 -5
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilteringTypes.js +3 -3
- package/es-modules/Grid/Core/Table/Actions/ColumnSorting.d.ts +29 -3
- package/es-modules/Grid/Core/Table/Actions/ColumnSorting.js +136 -26
- package/es-modules/Grid/Core/Table/Actions/ColumnsResizer.js +4 -6
- package/es-modules/Grid/Core/Table/Actions/RowsVirtualizer.d.ts +94 -3
- package/es-modules/Grid/Core/Table/Actions/RowsVirtualizer.js +481 -91
- package/es-modules/Grid/Core/Table/Body/CellContextMenu.d.ts +11 -0
- package/es-modules/Grid/Core/Table/Body/CellContextMenu.js +84 -0
- package/es-modules/Grid/Core/Table/Body/TableCell.d.ts +36 -15
- package/es-modules/Grid/Core/Table/Body/TableCell.js +89 -33
- package/es-modules/Grid/Core/Table/Body/TableRow.d.ts +15 -5
- package/es-modules/Grid/Core/Table/Body/TableRow.js +70 -19
- package/es-modules/Grid/Core/Table/Cell.d.ts +16 -10
- package/es-modules/Grid/Core/Table/Cell.js +41 -6
- package/es-modules/Grid/Core/Table/CellContent/CellContent.js +3 -3
- package/es-modules/Grid/Core/Table/CellContent/TextContent.js +7 -12
- package/es-modules/Grid/Core/Table/Column.d.ts +11 -5
- package/es-modules/Grid/Core/Table/Column.js +26 -37
- package/es-modules/Grid/Core/Table/ColumnResizing/AdjacentResizingMode.js +3 -3
- package/es-modules/Grid/Core/Table/ColumnResizing/ColumnResizing.js +3 -3
- package/es-modules/Grid/Core/Table/ColumnResizing/DistributedResizingMode.js +3 -3
- package/es-modules/Grid/Core/Table/ColumnResizing/IndependentResizingMode.js +12 -11
- package/es-modules/Grid/Core/Table/ColumnResizing/ResizingMode.js +7 -6
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ColumnToolbar.d.ts +5 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ColumnToolbar.js +21 -7
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/FilterPopup.js +4 -5
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/FilterMenuButton.js +4 -5
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/SortMenuButton.d.ts +9 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/SortMenuButton.js +37 -9
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuPopup.js +5 -4
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/StateHelpers.js +11 -7
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/FilterToolbarButton.js +4 -5
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/MenuToolbarButton.js +4 -5
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/SortToolbarButton.d.ts +4 -1
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/SortToolbarButton.js +88 -15
- package/es-modules/Grid/Core/Table/Header/HeaderCell.d.ts +8 -3
- package/es-modules/Grid/Core/Table/Header/HeaderCell.js +36 -15
- package/es-modules/Grid/Core/Table/Header/HeaderRow.js +7 -8
- package/es-modules/Grid/Core/Table/Header/TableHeader.d.ts +1 -1
- package/es-modules/Grid/Core/Table/Header/TableHeader.js +6 -6
- package/es-modules/Grid/Core/Table/Row.d.ts +1 -1
- package/es-modules/Grid/Core/Table/Row.js +5 -5
- package/es-modules/Grid/Core/Table/Table.d.ts +68 -12
- package/es-modules/Grid/Core/Table/Table.js +296 -92
- package/es-modules/Grid/Core/UI/Button.js +3 -3
- package/es-modules/Grid/Core/UI/ContextMenu.js +3 -3
- package/es-modules/Grid/Core/UI/ContextMenuButton.d.ts +6 -7
- package/es-modules/Grid/Core/UI/ContextMenuButton.js +8 -6
- package/es-modules/Grid/Core/UI/Popup.js +10 -12
- package/es-modules/Grid/Core/UI/SvgIcons.d.ts +42 -7
- package/es-modules/Grid/Core/UI/SvgIcons.js +209 -36
- package/es-modules/Grid/Core/UI/Toolbar.d.ts +5 -0
- package/es-modules/Grid/Core/UI/Toolbar.js +3 -3
- package/es-modules/Grid/Core/UI/ToolbarButton.d.ts +4 -12
- package/es-modules/Grid/Core/UI/ToolbarButton.js +11 -29
- package/es-modules/Grid/Pro/CellEditing/CellEditMode.d.ts +4 -45
- package/es-modules/Grid/Pro/CellEditing/CellEditMode.js +16 -0
- package/es-modules/Grid/Pro/CellEditing/CellEditing.js +13 -13
- package/es-modules/Grid/Pro/CellEditing/CellEditingComposition.js +4 -5
- package/es-modules/Grid/Pro/CellRendering/CellContentPro.js +3 -3
- package/es-modules/Grid/Pro/CellRendering/CellRenderer.js +3 -3
- package/es-modules/Grid/Pro/CellRendering/CellRendererRegistry.js +3 -3
- package/es-modules/Grid/Pro/CellRendering/CellRendererType.d.ts +1 -34
- package/es-modules/Grid/Pro/CellRendering/CellRendererType.js +15 -0
- package/es-modules/Grid/Pro/CellRendering/CellRenderersComposition.d.ts +1 -1
- package/es-modules/Grid/Pro/CellRendering/CellRenderersComposition.js +7 -5
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/CheckboxContent.d.ts +2 -2
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/CheckboxContent.js +3 -3
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateInputContent.js +3 -3
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateInputContentBase.js +3 -3
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateTimeInputContent.js +3 -3
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/NumberInputContent.js +4 -5
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/SelectContent.d.ts +2 -2
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/SelectContent.js +3 -3
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/SparklineContent.d.ts +7 -5
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/SparklineContent.js +4 -5
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/TextInputContent.d.ts +2 -2
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/TextInputContent.js +4 -5
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/TimeInputContent.js +3 -3
- package/es-modules/Grid/Pro/CellRendering/Renderers/CheckboxRenderer.js +4 -5
- package/es-modules/Grid/Pro/CellRendering/Renderers/DateInputRenderer.js +4 -5
- package/es-modules/Grid/Pro/CellRendering/Renderers/DateInputRendererBase.js +3 -3
- package/es-modules/Grid/Pro/CellRendering/Renderers/DateTimeInputRenderer.js +4 -5
- package/es-modules/Grid/Pro/CellRendering/Renderers/NumberInputRenderer.js +4 -5
- package/es-modules/Grid/Pro/CellRendering/Renderers/SelectRenderer.js +4 -5
- package/es-modules/Grid/Pro/CellRendering/Renderers/SparklineRenderer.d.ts +4 -4
- package/es-modules/Grid/Pro/CellRendering/Renderers/SparklineRenderer.js +4 -5
- package/es-modules/Grid/Pro/CellRendering/Renderers/TextInputRenderer.js +4 -5
- package/es-modules/Grid/Pro/CellRendering/Renderers/TextRenderer.js +4 -5
- package/es-modules/Grid/Pro/CellRendering/Renderers/TimeInputRenderer.js +4 -5
- package/es-modules/Grid/Pro/ColumnTypes/Validator.d.ts +10 -1
- package/es-modules/Grid/Pro/ColumnTypes/Validator.js +56 -12
- package/es-modules/Grid/Pro/ColumnTypes/ValidatorComposition.d.ts +1 -1
- package/es-modules/Grid/Pro/ColumnTypes/ValidatorComposition.js +6 -7
- package/es-modules/Grid/Pro/Credits/CreditsPro.js +3 -3
- package/es-modules/Grid/Pro/Credits/CreditsProComposition.js +4 -6
- package/es-modules/Grid/Pro/Data/DataSourceHelper.d.ts +74 -0
- package/es-modules/Grid/Pro/Data/DataSourceHelper.js +246 -0
- package/es-modules/Grid/Pro/Data/QuerySerializer.d.ts +46 -0
- package/es-modules/Grid/Pro/Data/QuerySerializer.js +169 -0
- package/es-modules/Grid/Pro/Data/RemoteDataProvider.d.ts +187 -0
- package/es-modules/Grid/Pro/Data/RemoteDataProvider.js +500 -0
- package/es-modules/Grid/Pro/Export/Exporting.js +5 -7
- package/es-modules/Grid/Pro/Export/ExportingComposition.js +4 -5
- package/es-modules/Grid/Pro/GridEvents.d.ts +1 -0
- package/es-modules/Grid/Pro/GridEvents.js +4 -5
- package/es-modules/Grid/Pro/Pagination/PaginationComposition.d.ts +0 -1
- package/es-modules/Grid/Pro/Pagination/PaginationComposition.js +4 -5
- package/es-modules/Grid/index.js +3 -3
- package/es-modules/Shared/BaseForm.js +4 -5
- package/es-modules/Shared/DownloadURL.d.ts +1 -85
- package/es-modules/Shared/DownloadURL.js +15 -13
- package/es-modules/Shared/LangOptionsCore.d.ts +4 -3
- package/es-modules/Shared/TimeBase.d.ts +1 -46
- package/es-modules/Shared/TimeBase.js +11 -10
- package/es-modules/Shared/Types.d.ts +11 -3
- package/es-modules/Shared/Utilities.d.ts +576 -0
- package/es-modules/Shared/Utilities.js +1368 -0
- package/es-modules/masters/grid-pro.src.d.ts +18 -19
- package/es-modules/masters/grid-pro.src.js +24 -9
- package/grid-pro.d.ts +18 -19
- package/grid-pro.js +6 -5
- package/grid-pro.js.map +1 -1
- package/grid-pro.src.d.ts +18 -19
- package/grid-pro.src.js +8132 -4531
- package/package.json +1 -1
- package/es-modules/Grid/Core/Pagination/Icons.d.ts +0 -7
- package/es-modules/Grid/Core/Pagination/Icons.js +0 -7
- package/es-modules/Grid/Pro/highcharts.d.ts +0 -7
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type CSSObject from '../../Core/Renderer/CSSObject';
|
|
1
2
|
/**
|
|
2
3
|
* The event object for the grid.
|
|
3
4
|
*/
|
|
@@ -28,6 +29,10 @@ export interface MakeHTMLElementParameters {
|
|
|
28
29
|
innerHTML?: string;
|
|
29
30
|
style?: Partial<CSSStyleDeclaration>;
|
|
30
31
|
}
|
|
32
|
+
/**
|
|
33
|
+
* A style object or callback returning one.
|
|
34
|
+
*/
|
|
35
|
+
export type StyleValue<T> = CSSObject | ((this: T, target: T) => CSSObject);
|
|
31
36
|
/**
|
|
32
37
|
* Creates a HTML element with the provided options.
|
|
33
38
|
*
|
|
@@ -105,6 +110,32 @@ export declare function createOptionsProxy<T extends object>(options: T, default
|
|
|
105
110
|
* @returns Formatted text
|
|
106
111
|
*/
|
|
107
112
|
export declare function formatText(template: string, values: Record<string, string | number>): string;
|
|
113
|
+
/**
|
|
114
|
+
* Resolves a style value that can be static or callback based.
|
|
115
|
+
*
|
|
116
|
+
* @param style
|
|
117
|
+
* Style object or callback returning one.
|
|
118
|
+
*
|
|
119
|
+
* @param target
|
|
120
|
+
* Runtime target used as callback context and first argument.
|
|
121
|
+
*
|
|
122
|
+
* @returns
|
|
123
|
+
* A resolved style object or `undefined`.
|
|
124
|
+
*/
|
|
125
|
+
export declare function resolveStyleValue<T>(style?: StyleValue<T>, target?: T): (CSSObject | undefined);
|
|
126
|
+
/**
|
|
127
|
+
* Resolves and merges style values in order.
|
|
128
|
+
*
|
|
129
|
+
* @param target
|
|
130
|
+
* Runtime target used as callback context and first argument.
|
|
131
|
+
*
|
|
132
|
+
* @param styleValues
|
|
133
|
+
* Style values to merge in order, where latter entries override former.
|
|
134
|
+
*
|
|
135
|
+
* @returns
|
|
136
|
+
* Merged style object.
|
|
137
|
+
*/
|
|
138
|
+
export declare function mergeStyleValues<T>(target: T, ...styleValues: Array<(StyleValue<T> | undefined)>): CSSObject;
|
|
108
139
|
declare const _default: {
|
|
109
140
|
readonly makeHTMLElement: typeof makeHTMLElement;
|
|
110
141
|
readonly makeDiv: typeof makeDiv;
|
|
@@ -113,5 +144,7 @@ declare const _default: {
|
|
|
113
144
|
readonly setHTMLContent: typeof setHTMLContent;
|
|
114
145
|
readonly createOptionsProxy: typeof createOptionsProxy;
|
|
115
146
|
readonly formatText: typeof formatText;
|
|
147
|
+
readonly resolveStyleValue: typeof resolveStyleValue;
|
|
148
|
+
readonly mergeStyleValues: typeof mergeStyleValues;
|
|
116
149
|
};
|
|
117
150
|
export default _default;
|
|
@@ -2,19 +2,18 @@
|
|
|
2
2
|
*
|
|
3
3
|
* Grid utilities
|
|
4
4
|
*
|
|
5
|
-
* (c) 2009-
|
|
5
|
+
* (c) 2009-2026 Highsoft AS
|
|
6
6
|
*
|
|
7
|
-
*
|
|
7
|
+
* A commercial license may be required depending on use.
|
|
8
|
+
* See www.highcharts.com/license
|
|
8
9
|
*
|
|
9
|
-
* !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
|
|
10
10
|
*
|
|
11
11
|
* Authors:
|
|
12
12
|
* - Dawid Dragula
|
|
13
13
|
*
|
|
14
14
|
* */
|
|
15
15
|
import AST from '../../Core/Renderer/HTML/AST.js';
|
|
16
|
-
import
|
|
17
|
-
const { isObject } = U;
|
|
16
|
+
import { isObject } from '../../Shared/Utilities.js';
|
|
18
17
|
AST.allowedAttributes.push('srcset', 'media');
|
|
19
18
|
AST.allowedTags.push('picture', 'source');
|
|
20
19
|
/* *
|
|
@@ -163,6 +162,52 @@ export function createOptionsProxy(options, defaultOptions = {}) {
|
|
|
163
162
|
export function formatText(template, values) {
|
|
164
163
|
return template.replace(/\{(\w+)\}/g, (match, key) => (values[key] !== void 0 ? String(values[key]) : match));
|
|
165
164
|
}
|
|
165
|
+
/**
|
|
166
|
+
* Resolves a style value that can be static or callback based.
|
|
167
|
+
*
|
|
168
|
+
* @param style
|
|
169
|
+
* Style object or callback returning one.
|
|
170
|
+
*
|
|
171
|
+
* @param target
|
|
172
|
+
* Runtime target used as callback context and first argument.
|
|
173
|
+
*
|
|
174
|
+
* @returns
|
|
175
|
+
* A resolved style object or `undefined`.
|
|
176
|
+
*/
|
|
177
|
+
export function resolveStyleValue(style, target) {
|
|
178
|
+
if (!style) {
|
|
179
|
+
return;
|
|
180
|
+
}
|
|
181
|
+
if (typeof style === 'function') {
|
|
182
|
+
if (!target) {
|
|
183
|
+
return;
|
|
184
|
+
}
|
|
185
|
+
return style.call(target, target);
|
|
186
|
+
}
|
|
187
|
+
return style;
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Resolves and merges style values in order.
|
|
191
|
+
*
|
|
192
|
+
* @param target
|
|
193
|
+
* Runtime target used as callback context and first argument.
|
|
194
|
+
*
|
|
195
|
+
* @param styleValues
|
|
196
|
+
* Style values to merge in order, where latter entries override former.
|
|
197
|
+
*
|
|
198
|
+
* @returns
|
|
199
|
+
* Merged style object.
|
|
200
|
+
*/
|
|
201
|
+
export function mergeStyleValues(target, ...styleValues) {
|
|
202
|
+
const mergedStyle = {};
|
|
203
|
+
for (const styleValue of styleValues) {
|
|
204
|
+
const resolvedStyle = resolveStyleValue(styleValue, target);
|
|
205
|
+
if (resolvedStyle) {
|
|
206
|
+
Object.assign(mergedStyle, resolvedStyle);
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
return mergedStyle;
|
|
210
|
+
}
|
|
166
211
|
/* *
|
|
167
212
|
*
|
|
168
213
|
* Default Export
|
|
@@ -175,5 +220,7 @@ export default {
|
|
|
175
220
|
sanitizeText,
|
|
176
221
|
setHTMLContent,
|
|
177
222
|
createOptionsProxy,
|
|
178
|
-
formatText
|
|
223
|
+
formatText,
|
|
224
|
+
resolveStyleValue,
|
|
225
|
+
mergeStyleValues
|
|
179
226
|
};
|
|
@@ -2,20 +2,101 @@ import type { A11yOptions, HeaderCellA11yOptions, LangAccessibilityOptions } fro
|
|
|
2
2
|
import type { PaginationLangOptions, PaginationOptions } from './Pagination/PaginationOptions';
|
|
3
3
|
import type { ColumnResizingMode } from './Table/ColumnResizing/ColumnResizing';
|
|
4
4
|
import type { ColumnDataType } from './Table/Column';
|
|
5
|
+
import type { DataProviderOptionsType } from './Data/DataProviderType';
|
|
5
6
|
import type DataTable from '../../Data/DataTable';
|
|
7
|
+
import type { CellType as DataTableCellType } from '../../Data/DataTable';
|
|
6
8
|
import type DataTableOptions from '../../Data/DataTableOptions';
|
|
7
9
|
import type Cell from './Table/Cell';
|
|
10
|
+
import type Column from './Table/Column';
|
|
11
|
+
import type TableCell from './Table/Body/TableCell';
|
|
12
|
+
import type { IconRegistryValue } from './UI/SvgIcons';
|
|
8
13
|
import type { LangOptionsCore } from '../../Shared/LangOptionsCore';
|
|
9
14
|
import type { Condition as ColumnFilteringCondition } from './Table/Actions/ColumnFiltering/FilteringTypes';
|
|
15
|
+
import type CSSObject from '../../Core/Renderer/CSSObject';
|
|
10
16
|
/**
|
|
11
17
|
* Callback function to be called when a header event is triggered. Returns a
|
|
12
18
|
* formatted cell's string.
|
|
13
19
|
*/
|
|
14
20
|
export type CellFormatterCallback = (this: Cell) => string;
|
|
21
|
+
/**
|
|
22
|
+
* Callback function to be called when a header event is triggered. Returns a
|
|
23
|
+
* formatted header's string.
|
|
24
|
+
*/
|
|
25
|
+
export type HeaderFormatterCallback = (this: Column) => string;
|
|
26
|
+
/**
|
|
27
|
+
* Callback function to resolve dynamic style for a grid entity.
|
|
28
|
+
*/
|
|
29
|
+
export type StyleCallback<T> = (this: T, target: T) => CSSObject;
|
|
30
|
+
/**
|
|
31
|
+
* A static style object or a callback that returns one.
|
|
32
|
+
*/
|
|
33
|
+
export type StyleValue<T> = CSSObject | StyleCallback<T>;
|
|
15
34
|
/**
|
|
16
35
|
* Column sorting order type.
|
|
17
36
|
*/
|
|
18
37
|
export type ColumnSortingOrder = 'asc' | 'desc' | null;
|
|
38
|
+
/**
|
|
39
|
+
* Options for a single cell context menu item.
|
|
40
|
+
*/
|
|
41
|
+
export interface CellContextMenuActionItemOptions {
|
|
42
|
+
/**
|
|
43
|
+
* The label shown in the menu.
|
|
44
|
+
*/
|
|
45
|
+
label: string;
|
|
46
|
+
/**
|
|
47
|
+
* Optional icon name for the menu item (built-in name from the default
|
|
48
|
+
* registry or custom name from rendering.icons).
|
|
49
|
+
*/
|
|
50
|
+
icon?: string;
|
|
51
|
+
/**
|
|
52
|
+
* Whether the menu item should be disabled.
|
|
53
|
+
*/
|
|
54
|
+
disabled?: boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Whether to render a divider instead of a button.
|
|
57
|
+
*/
|
|
58
|
+
separator?: false;
|
|
59
|
+
/**
|
|
60
|
+
* Callback executed when the menu item is clicked.
|
|
61
|
+
*
|
|
62
|
+
* The cell is available on `this` and is also passed as the first argument
|
|
63
|
+
* to support arrow functions.
|
|
64
|
+
*/
|
|
65
|
+
onClick?: (this: TableCell, cell: TableCell) => void;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Options for a divider item in the cell context menu.
|
|
69
|
+
*/
|
|
70
|
+
export interface CellContextMenuDividerItemOptions {
|
|
71
|
+
/**
|
|
72
|
+
* Whether to render a divider instead of a button.
|
|
73
|
+
*/
|
|
74
|
+
separator: true;
|
|
75
|
+
/**
|
|
76
|
+
* Optional label for accessibility or testing.
|
|
77
|
+
* Not rendered as a clickable item.
|
|
78
|
+
*/
|
|
79
|
+
label?: string;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Options for a single cell context menu item.
|
|
83
|
+
*/
|
|
84
|
+
export type CellContextMenuItemOptions = CellContextMenuDividerItemOptions | CellContextMenuActionItemOptions;
|
|
85
|
+
/**
|
|
86
|
+
* Cell context menu options.
|
|
87
|
+
*/
|
|
88
|
+
export interface CellContextMenuOptions {
|
|
89
|
+
/**
|
|
90
|
+
* Whether the cell context menu is enabled.
|
|
91
|
+
*
|
|
92
|
+
* @default true
|
|
93
|
+
*/
|
|
94
|
+
enabled?: boolean;
|
|
95
|
+
/**
|
|
96
|
+
* List of items to show in the cell context menu.
|
|
97
|
+
*/
|
|
98
|
+
items?: Array<CellContextMenuItemOptions>;
|
|
99
|
+
}
|
|
19
100
|
/**
|
|
20
101
|
* Options to control the content and the user experience of a grid structure.
|
|
21
102
|
*/
|
|
@@ -41,8 +122,15 @@ export interface Options {
|
|
|
41
122
|
* Options for individual columns.
|
|
42
123
|
*/
|
|
43
124
|
columns?: Array<IndividualColumnOptions>;
|
|
125
|
+
/**
|
|
126
|
+
* Options for the data provider.
|
|
127
|
+
*/
|
|
128
|
+
data?: DataProviderOptionsType;
|
|
44
129
|
/**
|
|
45
130
|
* Data table with the data to display in the grid structure.
|
|
131
|
+
*
|
|
132
|
+
* @deprecated
|
|
133
|
+
* Use `data.dataTable` instead.
|
|
46
134
|
*/
|
|
47
135
|
dataTable?: DataTable | DataTableOptions;
|
|
48
136
|
/**
|
|
@@ -77,6 +165,25 @@ export interface Options {
|
|
|
77
165
|
* Options to control the way grid is rendered.
|
|
78
166
|
*/
|
|
79
167
|
export interface RenderingSettings {
|
|
168
|
+
/**
|
|
169
|
+
* Custom or override icons for the grid. Keys are icon names (either
|
|
170
|
+
* built-in names from the default registry or custom names). Values
|
|
171
|
+
* are either an SVG definition object or a raw SVG markup string.
|
|
172
|
+
* Built-in icons can be overridden; new names can be used for custom
|
|
173
|
+
* icons and referenced where an icon name is accepted (e.g. menu
|
|
174
|
+
* items, pagination buttons).
|
|
175
|
+
*
|
|
176
|
+
* @example
|
|
177
|
+
* ```js
|
|
178
|
+
* rendering: {
|
|
179
|
+
* icons: {
|
|
180
|
+
* chevronRight: '<svg>...</svg>',
|
|
181
|
+
* myCustomIcon: { width: 16, height: 16, children: [{ d: '...' }] }
|
|
182
|
+
* }
|
|
183
|
+
* }
|
|
184
|
+
* ```
|
|
185
|
+
*/
|
|
186
|
+
icons?: Record<string, IconRegistryValue>;
|
|
80
187
|
/**
|
|
81
188
|
* Options to control the columns rendering.
|
|
82
189
|
*/
|
|
@@ -262,9 +369,9 @@ export interface ColumnOptions {
|
|
|
262
369
|
*/
|
|
263
370
|
sorting?: ColumnSortingOptions;
|
|
264
371
|
/**
|
|
265
|
-
* The width of the column. It can be set in pixels
|
|
266
|
-
*
|
|
267
|
-
* columns.
|
|
372
|
+
* The width of the column. It can be set in pixels, as a percentage of the
|
|
373
|
+
* table width, or `'auto'`. If unset or `'auto'`, the width is distributed
|
|
374
|
+
* evenly between columns without a fixed width.
|
|
268
375
|
*
|
|
269
376
|
* This option does not work with the `resizing` option set to `full`.
|
|
270
377
|
*
|
|
@@ -276,6 +383,11 @@ export interface ColumnOptions {
|
|
|
276
383
|
* Filtering options for the column.
|
|
277
384
|
*/
|
|
278
385
|
filtering?: ColumnFilteringOptions;
|
|
386
|
+
/**
|
|
387
|
+
* CSS styles for the whole column, applied to the header and body cells.
|
|
388
|
+
* Can be a static style object or a callback that returns one.
|
|
389
|
+
*/
|
|
390
|
+
style?: StyleValue<Column>;
|
|
279
391
|
}
|
|
280
392
|
/**
|
|
281
393
|
* Options for all cells in the column.
|
|
@@ -313,6 +425,11 @@ export interface ColumnCellOptions {
|
|
|
313
425
|
* A string to be set as a table cell's content.
|
|
314
426
|
*/
|
|
315
427
|
formatter?: CellFormatterCallback;
|
|
428
|
+
/**
|
|
429
|
+
* CSS styles for table body cells in the column.
|
|
430
|
+
* Can be a static style object or a callback that returns one.
|
|
431
|
+
*/
|
|
432
|
+
style?: StyleValue<Cell>;
|
|
316
433
|
}
|
|
317
434
|
/**
|
|
318
435
|
* Options for the header cells in the columns.
|
|
@@ -337,7 +454,12 @@ export interface ColumnHeaderOptions {
|
|
|
337
454
|
* @return
|
|
338
455
|
* A string to be set as a header cell's content.
|
|
339
456
|
*/
|
|
340
|
-
formatter?:
|
|
457
|
+
formatter?: HeaderFormatterCallback;
|
|
458
|
+
/**
|
|
459
|
+
* CSS styles for the column header cells.
|
|
460
|
+
* Can be a static style object or a callback that returns one.
|
|
461
|
+
*/
|
|
462
|
+
style?: StyleValue<Column>;
|
|
341
463
|
}
|
|
342
464
|
/**
|
|
343
465
|
* Column sorting options available for applying to all columns at once.
|
|
@@ -355,7 +477,28 @@ export interface ColumnSortingOptions {
|
|
|
355
477
|
*
|
|
356
478
|
* @default true
|
|
357
479
|
*/
|
|
480
|
+
enabled?: boolean;
|
|
481
|
+
/**
|
|
482
|
+
* @deprecated
|
|
483
|
+
* Use `enabled` instead
|
|
484
|
+
*/
|
|
358
485
|
sortable?: boolean;
|
|
486
|
+
/**
|
|
487
|
+
* Sequence of sorting orders used when toggling sorting from the user
|
|
488
|
+
* interface (for example by clicking the column header).
|
|
489
|
+
*
|
|
490
|
+
* The sequence can contain any number of values, in any order, with
|
|
491
|
+
* duplicates allowed. Allowed values are: `'asc'`, `'desc'`, and `null`.
|
|
492
|
+
*
|
|
493
|
+
* If the sequence is empty (`[]`), sorting toggles become a no-op while
|
|
494
|
+
* the sortable UI can still be shown.
|
|
495
|
+
*
|
|
496
|
+
* This option can be set in both `columnDefaults.sorting` and
|
|
497
|
+
* `columns[].sorting`.
|
|
498
|
+
*
|
|
499
|
+
* @default ['asc', 'desc', null]
|
|
500
|
+
*/
|
|
501
|
+
orderSequence?: ColumnSortingOrder[];
|
|
359
502
|
/**
|
|
360
503
|
* Custom compare function to sort the column values. It overrides the
|
|
361
504
|
* default sorting behavior. If not set, the default sorting behavior is
|
|
@@ -371,7 +514,7 @@ export interface ColumnSortingOptions {
|
|
|
371
514
|
* A number indicating whether the first value (`a`) is less than (`-1`),
|
|
372
515
|
* equal to (`0`), or greater than (`1`) the second value (`b`).
|
|
373
516
|
*/
|
|
374
|
-
compare?: (a:
|
|
517
|
+
compare?: (a: DataTableCellType, b: DataTableCellType) => number;
|
|
375
518
|
}
|
|
376
519
|
/**
|
|
377
520
|
* Column sorting options that can be set for each column individually.
|
|
@@ -384,6 +527,11 @@ export interface IndividualColumnSortingOptions extends ColumnSortingOptions {
|
|
|
384
527
|
* @default null
|
|
385
528
|
*/
|
|
386
529
|
order?: ColumnSortingOrder;
|
|
530
|
+
/**
|
|
531
|
+
* Priority of this column when multiple columns are sorted. Lower numbers
|
|
532
|
+
* have higher priority.
|
|
533
|
+
*/
|
|
534
|
+
priority?: number;
|
|
387
535
|
}
|
|
388
536
|
/**
|
|
389
537
|
* Column options that can be set for each column individually.
|
|
@@ -423,6 +571,15 @@ export interface CaptionOptions {
|
|
|
423
571
|
* The custom CSS class name for the table caption.
|
|
424
572
|
*/
|
|
425
573
|
className?: string;
|
|
574
|
+
/**
|
|
575
|
+
* The HTML tag to use for the caption. When set, the caption is rendered
|
|
576
|
+
* as that element (e.g. `h1`, `p`, `span`). Must be one of
|
|
577
|
+
* [AST.allowedTags](https://api.highcharts.com/class-reference/Highcharts.AST#allowedTags)
|
|
578
|
+
* (e.g. `div`, `p`, `span`, `h1`–`h6`).
|
|
579
|
+
*
|
|
580
|
+
* @default 'div'
|
|
581
|
+
*/
|
|
582
|
+
htmlTag?: string;
|
|
426
583
|
/**
|
|
427
584
|
* The caption of the grid.
|
|
428
585
|
*
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
*
|
|
3
3
|
* Grid options
|
|
4
4
|
*
|
|
5
|
-
* (c) 2020-
|
|
5
|
+
* (c) 2020-2026 Highsoft AS
|
|
6
6
|
*
|
|
7
|
-
*
|
|
7
|
+
* A commercial license may be required depending on use.
|
|
8
|
+
* See www.highcharts.com/license
|
|
8
9
|
*
|
|
9
|
-
* !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
|
|
10
10
|
*
|
|
11
11
|
* Authors:
|
|
12
12
|
* - Dawid Dragula
|
|
@@ -2,24 +2,30 @@
|
|
|
2
2
|
*
|
|
3
3
|
* Grid Pagination class
|
|
4
4
|
*
|
|
5
|
-
* (c) 2020-
|
|
5
|
+
* (c) 2020-2026 Highsoft AS
|
|
6
6
|
*
|
|
7
|
-
*
|
|
7
|
+
* A commercial license may be required depending on use.
|
|
8
|
+
* See www.highcharts.com/license
|
|
8
9
|
*
|
|
9
|
-
* !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
|
|
10
10
|
*
|
|
11
11
|
* Authors:
|
|
12
12
|
* - Sebastian Bochan
|
|
13
13
|
*
|
|
14
14
|
* */
|
|
15
15
|
'use strict';
|
|
16
|
-
import
|
|
16
|
+
import { createGridIcon } from '../UI/SvgIcons.js';
|
|
17
17
|
import Globals from '../Globals.js';
|
|
18
18
|
import GridUtils from '../GridUtils.js';
|
|
19
|
-
import Utilities from '../../../Core/Utilities.js';
|
|
20
19
|
import AST from '../../../Core/Renderer/HTML/AST.js';
|
|
20
|
+
import { defined, fireEvent, isObject, merge } from '../../../Shared/Utilities.js';
|
|
21
21
|
const { makeHTMLElement, formatText } = GridUtils;
|
|
22
|
-
const
|
|
22
|
+
const paginationAlignments = [
|
|
23
|
+
'left',
|
|
24
|
+
'center',
|
|
25
|
+
'right',
|
|
26
|
+
'distributed'
|
|
27
|
+
];
|
|
28
|
+
const alignmentClassName = (alignment) => `${Globals.classNamePrefix}pagination-${alignment}`;
|
|
23
29
|
/**
|
|
24
30
|
* Representing the pagination functionalities for the Grid.
|
|
25
31
|
*/
|
|
@@ -83,6 +89,10 @@ class Pagination {
|
|
|
83
89
|
delete diff.page;
|
|
84
90
|
delete diff.pageSize;
|
|
85
91
|
}
|
|
92
|
+
if ('alignment' in diff) {
|
|
93
|
+
this.isDirtyAlignment = true;
|
|
94
|
+
delete diff.alignment;
|
|
95
|
+
}
|
|
86
96
|
// TODO: Optimize more options here.
|
|
87
97
|
if (Object.keys(diff).length > 0) {
|
|
88
98
|
this.grid.dirtyFlags.add('grid');
|
|
@@ -101,6 +111,7 @@ class Pagination {
|
|
|
101
111
|
render() {
|
|
102
112
|
const position = this.options?.position;
|
|
103
113
|
const grid = this.grid;
|
|
114
|
+
const alignmentClass = this.getAlignmentClass();
|
|
104
115
|
this.oldTotalItems = this.controller.totalItems;
|
|
105
116
|
// Set row count for a11y
|
|
106
117
|
grid.tableElement?.setAttribute('aria-current', 'page');
|
|
@@ -114,7 +125,9 @@ class Pagination {
|
|
|
114
125
|
this.renderFooter();
|
|
115
126
|
}
|
|
116
127
|
this.contentWrapper = makeHTMLElement('nav', {
|
|
117
|
-
className:
|
|
128
|
+
className: alignmentClass ?
|
|
129
|
+
`${Globals.getClassName('pagination')} ${alignmentClass}` :
|
|
130
|
+
Globals.getClassName('pagination')
|
|
118
131
|
}, position === 'footer' ?
|
|
119
132
|
this.paginationContainer : grid.contentWrapper);
|
|
120
133
|
this.contentWrapper.setAttribute('aria-label', 'Results pagination');
|
|
@@ -126,6 +139,30 @@ class Pagination {
|
|
|
126
139
|
// Update button states after rendering
|
|
127
140
|
this.updateButtonStates();
|
|
128
141
|
}
|
|
142
|
+
getAlignmentClass() {
|
|
143
|
+
const align = this.options?.align || '';
|
|
144
|
+
return alignmentClassName(align);
|
|
145
|
+
}
|
|
146
|
+
updateAlignmentClass() {
|
|
147
|
+
const wrapper = this.contentWrapper;
|
|
148
|
+
if (!wrapper) {
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
const alignmentClasses = paginationAlignments.map(alignmentClassName);
|
|
152
|
+
wrapper.classList.remove(...alignmentClasses);
|
|
153
|
+
const alignmentClass = this.getAlignmentClass();
|
|
154
|
+
wrapper.classList.add(alignmentClass);
|
|
155
|
+
}
|
|
156
|
+
redraw() {
|
|
157
|
+
if (this.isDirtyQuerying) {
|
|
158
|
+
this.updateControls(true);
|
|
159
|
+
}
|
|
160
|
+
if (this.isDirtyAlignment) {
|
|
161
|
+
this.updateAlignmentClass();
|
|
162
|
+
}
|
|
163
|
+
delete this.isDirtyQuerying;
|
|
164
|
+
delete this.isDirtyAlignment;
|
|
165
|
+
}
|
|
129
166
|
/**
|
|
130
167
|
* Render pagination in a tfoot element.
|
|
131
168
|
*/
|
|
@@ -156,9 +193,13 @@ class Pagination {
|
|
|
156
193
|
return;
|
|
157
194
|
}
|
|
158
195
|
this.paginationContainer = customContainer;
|
|
196
|
+
const alignmentClass = this.getAlignmentClass();
|
|
197
|
+
const className = alignmentClass ?
|
|
198
|
+
`${Globals.getClassName('pagination')} ${alignmentClass}` :
|
|
199
|
+
Globals.getClassName('pagination');
|
|
159
200
|
// Set content wrapper to the custom container
|
|
160
201
|
this.contentWrapper = makeHTMLElement('div', {
|
|
161
|
-
className:
|
|
202
|
+
className: className
|
|
162
203
|
}, customContainer);
|
|
163
204
|
}
|
|
164
205
|
/**
|
|
@@ -199,7 +240,7 @@ class Pagination {
|
|
|
199
240
|
*/
|
|
200
241
|
renderControls() {
|
|
201
242
|
const navContainer = makeHTMLElement('div', {
|
|
202
|
-
className: Globals.getClassName('
|
|
243
|
+
className: Globals.getClassName('paginationControls')
|
|
203
244
|
}, this.contentWrapper);
|
|
204
245
|
const controls = this.options?.controls || {};
|
|
205
246
|
// Render first/previous buttons
|
|
@@ -214,8 +255,6 @@ class Pagination {
|
|
|
214
255
|
if (controls.pageButtons) {
|
|
215
256
|
this.renderPageNumbers(navContainer);
|
|
216
257
|
}
|
|
217
|
-
// Render dropdown page selector
|
|
218
|
-
this.renderDropdownPageSelector(navContainer);
|
|
219
258
|
// Render next button
|
|
220
259
|
if (controls.previousNextButtons) {
|
|
221
260
|
this.renderNextButton(navContainer);
|
|
@@ -257,11 +296,11 @@ class Pagination {
|
|
|
257
296
|
(isObject(firstLastButtons) && firstLastButtons.enabled === false)) {
|
|
258
297
|
return;
|
|
259
298
|
}
|
|
260
|
-
|
|
299
|
+
const firstIconEl = createGridIcon('doubleChevronLeft', this.grid.options?.rendering?.icons);
|
|
261
300
|
this.firstButton = makeHTMLElement('button', {
|
|
262
|
-
className: Globals.getClassName('button')
|
|
263
|
-
innerHTML: Icons.first
|
|
301
|
+
className: Globals.getClassName('button')
|
|
264
302
|
}, container);
|
|
303
|
+
this.firstButton.appendChild(firstIconEl);
|
|
265
304
|
this.firstButton.title = this.lang?.firstPage ?? '';
|
|
266
305
|
// Set aria-label for a11y
|
|
267
306
|
this.firstButton.setAttribute('aria-label', this.lang?.firstPage ?? '');
|
|
@@ -284,11 +323,12 @@ class Pagination {
|
|
|
284
323
|
previousNextButtons.enabled === false)) {
|
|
285
324
|
return;
|
|
286
325
|
}
|
|
287
|
-
|
|
326
|
+
const prevIconName = 'chevronLeft';
|
|
327
|
+
const prevIconEl = createGridIcon(prevIconName, this.grid.options?.rendering?.icons);
|
|
288
328
|
this.prevButton = makeHTMLElement('button', {
|
|
289
|
-
className: Globals.getClassName('button')
|
|
290
|
-
innerHTML: Icons.previous
|
|
329
|
+
className: Globals.getClassName('button')
|
|
291
330
|
}, container);
|
|
331
|
+
this.prevButton.appendChild(prevIconEl);
|
|
292
332
|
this.prevButton.title = this.lang?.previousPage ?? '';
|
|
293
333
|
// Set aria-label for a11y
|
|
294
334
|
this.prevButton.setAttribute('aria-label', this.lang?.previousPage ?? '');
|
|
@@ -311,11 +351,12 @@ class Pagination {
|
|
|
311
351
|
previousNextButtons.enabled === false)) {
|
|
312
352
|
return;
|
|
313
353
|
}
|
|
314
|
-
|
|
354
|
+
const nextIconName = 'chevronRight';
|
|
355
|
+
const nextIconEl = createGridIcon(nextIconName, this.grid.options?.rendering?.icons);
|
|
315
356
|
this.nextButton = makeHTMLElement('button', {
|
|
316
|
-
className: Globals.getClassName('button')
|
|
317
|
-
innerHTML: Icons.next
|
|
357
|
+
className: Globals.getClassName('button')
|
|
318
358
|
}, container);
|
|
359
|
+
this.nextButton.appendChild(nextIconEl);
|
|
319
360
|
this.nextButton.title = this.lang?.nextPage ?? '';
|
|
320
361
|
// Set aria-label for a11y
|
|
321
362
|
this.nextButton.setAttribute('aria-label', this.lang?.nextPage ?? '');
|
|
@@ -337,11 +378,12 @@ class Pagination {
|
|
|
337
378
|
(isObject(firstLastButtons) && firstLastButtons.enabled === false)) {
|
|
338
379
|
return;
|
|
339
380
|
}
|
|
340
|
-
|
|
381
|
+
const lastIconName = 'doubleChevronRight';
|
|
382
|
+
const lastIconEl = createGridIcon(lastIconName, this.grid.options?.rendering?.icons);
|
|
341
383
|
this.lastButton = makeHTMLElement('button', {
|
|
342
|
-
className: Globals.getClassName('button')
|
|
343
|
-
innerHTML: Icons.last
|
|
384
|
+
className: Globals.getClassName('button')
|
|
344
385
|
}, container);
|
|
386
|
+
this.lastButton.appendChild(lastIconEl);
|
|
345
387
|
this.lastButton.title = this.lang?.lastPage ?? '';
|
|
346
388
|
// Set aria-label for a11y
|
|
347
389
|
this.lastButton.setAttribute('aria-label', this.lang?.lastPage ?? '');
|
|
@@ -364,7 +406,7 @@ class Pagination {
|
|
|
364
406
|
return;
|
|
365
407
|
}
|
|
366
408
|
this.pageNumbersContainer = makeHTMLElement('div', {
|
|
367
|
-
className: Globals.getClassName('
|
|
409
|
+
className: Globals.getClassName('paginationPages')
|
|
368
410
|
}, container);
|
|
369
411
|
this.updatePageNumbers();
|
|
370
412
|
}
|
|
@@ -481,8 +523,6 @@ class Pagination {
|
|
|
481
523
|
}
|
|
482
524
|
});
|
|
483
525
|
}
|
|
484
|
-
// Update dropdown selector if it exists
|
|
485
|
-
this.updateDropdownPageSelector();
|
|
486
526
|
}
|
|
487
527
|
/**
|
|
488
528
|
* Create a page number button.
|