@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,19 +1,3 @@
|
|
|
1
|
-
/* *
|
|
2
|
-
*
|
|
3
|
-
* (c) 2010-2024 Torstein Honsi
|
|
4
|
-
*
|
|
5
|
-
* License: www.highcharts.com/license
|
|
6
|
-
*
|
|
7
|
-
* !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
|
|
8
|
-
*
|
|
9
|
-
* */
|
|
10
|
-
|
|
11
|
-
/* *
|
|
12
|
-
*
|
|
13
|
-
* Declarations
|
|
14
|
-
*
|
|
15
|
-
* */
|
|
16
|
-
|
|
17
1
|
/**
|
|
18
2
|
* Page size selector configuration options.
|
|
19
3
|
*/
|
|
@@ -24,7 +8,6 @@ export interface PageSizeSelectorOptions {
|
|
|
24
8
|
* @default true
|
|
25
9
|
*/
|
|
26
10
|
enabled?: boolean;
|
|
27
|
-
|
|
28
11
|
/**
|
|
29
12
|
* Available options for page size dropdown.
|
|
30
13
|
*
|
|
@@ -32,7 +15,6 @@ export interface PageSizeSelectorOptions {
|
|
|
32
15
|
*/
|
|
33
16
|
options?: Array<number>;
|
|
34
17
|
}
|
|
35
|
-
|
|
36
18
|
/**
|
|
37
19
|
* Controls options for pagination UI elements.
|
|
38
20
|
*/
|
|
@@ -45,7 +27,6 @@ export interface PaginationControlsOptions {
|
|
|
45
27
|
* @default { enabled: true, options: [10, 20, 50, 100] }
|
|
46
28
|
*/
|
|
47
29
|
pageSizeSelector?: boolean | PageSizeSelectorOptions;
|
|
48
|
-
|
|
49
30
|
/**
|
|
50
31
|
* Whether to show the page information text
|
|
51
32
|
* (e.g., "Showing 1 - 20 of 200").
|
|
@@ -53,21 +34,18 @@ export interface PaginationControlsOptions {
|
|
|
53
34
|
* @default true
|
|
54
35
|
*/
|
|
55
36
|
pageInfo?: boolean | PageInfoOptions;
|
|
56
|
-
|
|
57
37
|
/**
|
|
58
38
|
* Whether to show the first/last page controls buttons.
|
|
59
39
|
*
|
|
60
40
|
* @default true
|
|
61
41
|
*/
|
|
62
42
|
firstLastButtons?: boolean | FirstLastButtonsOptions;
|
|
63
|
-
|
|
64
43
|
/**
|
|
65
44
|
* Whether to show the previous/next page controls buttons.
|
|
66
45
|
*
|
|
67
46
|
* @default true
|
|
68
47
|
*/
|
|
69
48
|
previousNextButtons?: boolean | PreviousNextButtonsOptions;
|
|
70
|
-
|
|
71
49
|
/**
|
|
72
50
|
* Page number buttons configuration.
|
|
73
51
|
*
|
|
@@ -75,7 +53,6 @@ export interface PaginationControlsOptions {
|
|
|
75
53
|
*/
|
|
76
54
|
pageButtons?: boolean | PageButtonsOptions;
|
|
77
55
|
}
|
|
78
|
-
|
|
79
56
|
/**
|
|
80
57
|
* Language options for pagination text values.
|
|
81
58
|
*/
|
|
@@ -87,42 +64,36 @@ export interface PaginationLangOptions {
|
|
|
87
64
|
* @default "Showing {start} - {end} of {total} (Page {currentPage} of {totalPages})" // eslint-disable-line
|
|
88
65
|
*/
|
|
89
66
|
pageInfo?: string;
|
|
90
|
-
|
|
91
67
|
/**
|
|
92
68
|
* Text for the page size label.
|
|
93
69
|
*
|
|
94
70
|
* @default "rows per page"
|
|
95
71
|
*/
|
|
96
72
|
pageSizeLabel?: string;
|
|
97
|
-
|
|
98
73
|
/**
|
|
99
74
|
* Text for the first page button (accessibility).
|
|
100
75
|
*
|
|
101
76
|
* @default "First page"
|
|
102
77
|
*/
|
|
103
78
|
firstPage?: string;
|
|
104
|
-
|
|
105
79
|
/**
|
|
106
80
|
* Text for the previous page button (accessibility).
|
|
107
81
|
*
|
|
108
82
|
* @default "Previous page"
|
|
109
83
|
*/
|
|
110
84
|
previousPage?: string;
|
|
111
|
-
|
|
112
85
|
/**
|
|
113
86
|
* Text for the next page button (accessibility).
|
|
114
87
|
*
|
|
115
88
|
* @default "Next page"
|
|
116
89
|
*/
|
|
117
90
|
nextPage?: string;
|
|
118
|
-
|
|
119
91
|
/**
|
|
120
92
|
* Text for the last page button (accessibility).
|
|
121
93
|
*
|
|
122
94
|
* @default "Last page"
|
|
123
95
|
*/
|
|
124
96
|
lastPage?: string;
|
|
125
|
-
|
|
126
97
|
/**
|
|
127
98
|
* Text for page number button (accessibility).
|
|
128
99
|
* Placeholder: {page}
|
|
@@ -130,7 +101,6 @@ export interface PaginationLangOptions {
|
|
|
130
101
|
* @default "Page {page}"
|
|
131
102
|
*/
|
|
132
103
|
pageNumber?: string;
|
|
133
|
-
|
|
134
104
|
/**
|
|
135
105
|
* Text for ellipsis (accessibility).
|
|
136
106
|
*
|
|
@@ -138,7 +108,6 @@ export interface PaginationLangOptions {
|
|
|
138
108
|
*/
|
|
139
109
|
ellipsis?: string;
|
|
140
110
|
}
|
|
141
|
-
|
|
142
111
|
/**
|
|
143
112
|
* Pagination options.
|
|
144
113
|
*/
|
|
@@ -149,14 +118,12 @@ export interface PaginationOptions {
|
|
|
149
118
|
* @default false
|
|
150
119
|
*/
|
|
151
120
|
enabled?: boolean;
|
|
152
|
-
|
|
153
121
|
/**
|
|
154
122
|
* The current page number.
|
|
155
123
|
*
|
|
156
124
|
* @default 1
|
|
157
125
|
*/
|
|
158
126
|
page?: number;
|
|
159
|
-
|
|
160
127
|
/**
|
|
161
128
|
* Initial number of items per page when the Grid is initialized.
|
|
162
129
|
* This value will be used as the default page size if not specified
|
|
@@ -165,20 +132,21 @@ export interface PaginationOptions {
|
|
|
165
132
|
* @default 10
|
|
166
133
|
*/
|
|
167
134
|
pageSize?: number;
|
|
168
|
-
|
|
169
135
|
/**
|
|
170
136
|
* Position of the pagination container relative to the table.
|
|
171
137
|
*
|
|
172
138
|
* @default 'bottom'
|
|
173
139
|
*/
|
|
174
140
|
position?: string;
|
|
175
|
-
|
|
141
|
+
/**
|
|
142
|
+
* Alignment of the pagination elements within the wrapper.
|
|
143
|
+
*/
|
|
144
|
+
align?: 'left' | 'center' | 'right' | 'distributed';
|
|
176
145
|
/**
|
|
177
146
|
* Controls options for pagination UI elements.
|
|
178
147
|
*/
|
|
179
148
|
controls?: PaginationControlsOptions;
|
|
180
149
|
}
|
|
181
|
-
|
|
182
150
|
/**
|
|
183
151
|
* Page buttons configuration options.
|
|
184
152
|
*/
|
|
@@ -189,7 +157,6 @@ export interface PageButtonsOptions {
|
|
|
189
157
|
* @default true
|
|
190
158
|
*/
|
|
191
159
|
enabled?: boolean;
|
|
192
|
-
|
|
193
160
|
/**
|
|
194
161
|
* Maximum number of page number buttons to show before using ellipsis.
|
|
195
162
|
*
|
|
@@ -197,7 +164,6 @@ export interface PageButtonsOptions {
|
|
|
197
164
|
*/
|
|
198
165
|
count?: number;
|
|
199
166
|
}
|
|
200
|
-
|
|
201
167
|
/**
|
|
202
168
|
* Page info configuration options.
|
|
203
169
|
*/
|
|
@@ -209,7 +175,6 @@ export interface PageInfoOptions {
|
|
|
209
175
|
*/
|
|
210
176
|
enabled?: boolean;
|
|
211
177
|
}
|
|
212
|
-
|
|
213
178
|
/**
|
|
214
179
|
* First/last page navigation buttons configuration options.
|
|
215
180
|
*/
|
|
@@ -221,7 +186,6 @@ export interface FirstLastButtonsOptions {
|
|
|
221
186
|
*/
|
|
222
187
|
enabled?: boolean;
|
|
223
188
|
}
|
|
224
|
-
|
|
225
189
|
/**
|
|
226
190
|
* Previous/next page navigation buttons configuration options.
|
|
227
191
|
*/
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
*
|
|
3
3
|
* Grid Filtering Controller 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
|
* - Dawid Dragula
|
|
@@ -14,8 +14,7 @@
|
|
|
14
14
|
* */
|
|
15
15
|
'use strict';
|
|
16
16
|
import FilterModifier from '../../../Data/Modifiers/FilterModifier.js';
|
|
17
|
-
import
|
|
18
|
-
const { isString } = U;
|
|
17
|
+
import { isString } from '../../../Shared/Utilities.js';
|
|
19
18
|
/* *
|
|
20
19
|
*
|
|
21
20
|
* Class
|
|
@@ -23,7 +23,7 @@ declare class PaginationController {
|
|
|
23
23
|
/**
|
|
24
24
|
* The number of rows before pagination.
|
|
25
25
|
*/
|
|
26
|
-
|
|
26
|
+
totalItemsCount?: number;
|
|
27
27
|
/**
|
|
28
28
|
* Constructs the PaginationController instance.
|
|
29
29
|
*
|
|
@@ -32,7 +32,7 @@ declare class PaginationController {
|
|
|
32
32
|
*/
|
|
33
33
|
constructor(querying: QueryingController);
|
|
34
34
|
/**
|
|
35
|
-
* Total number of items (rows)
|
|
35
|
+
* Total number of items (rows before pagination).
|
|
36
36
|
*/
|
|
37
37
|
get totalItems(): number;
|
|
38
38
|
/**
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
*
|
|
3
3
|
* Grid Pagination Controller 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
|
|
@@ -52,10 +52,10 @@ class PaginationController {
|
|
|
52
52
|
*
|
|
53
53
|
* */
|
|
54
54
|
/**
|
|
55
|
-
* Total number of items (rows)
|
|
55
|
+
* Total number of items (rows before pagination).
|
|
56
56
|
*/
|
|
57
57
|
get totalItems() {
|
|
58
|
-
return this.
|
|
58
|
+
return this.totalItemsCount ?? 0;
|
|
59
59
|
}
|
|
60
60
|
/**
|
|
61
61
|
* Gets the total number of pages.
|
|
@@ -126,7 +126,7 @@ class PaginationController {
|
|
|
126
126
|
// Calculate the start index (0-based)
|
|
127
127
|
const start = (currentPage - 1) * pageSize;
|
|
128
128
|
const end = Math.min(start + pageSize, rowsCountBeforePagination);
|
|
129
|
-
this.
|
|
129
|
+
this.totalItemsCount = rowsCountBeforePagination;
|
|
130
130
|
return new RangeModifier({
|
|
131
131
|
start,
|
|
132
132
|
end
|
|
@@ -2,18 +2,17 @@
|
|
|
2
2
|
*
|
|
3
3
|
* Grid Querying Controller 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
|
* - Dawid Dragula
|
|
13
13
|
*
|
|
14
14
|
* */
|
|
15
15
|
'use strict';
|
|
16
|
-
import ChainModifier from '../../../Data/Modifiers/ChainModifier.js';
|
|
17
16
|
import SortingController from './SortingController.js';
|
|
18
17
|
import FilteringController from './FilteringController.js';
|
|
19
18
|
import PaginationController from './PaginationController.js';
|
|
@@ -89,33 +88,10 @@ class QueryingController {
|
|
|
89
88
|
return modifiers;
|
|
90
89
|
}
|
|
91
90
|
/**
|
|
92
|
-
* Apply all modifiers to the data
|
|
91
|
+
* Apply all modifiers to the data provider.
|
|
93
92
|
*/
|
|
94
93
|
async modifyData() {
|
|
95
|
-
|
|
96
|
-
if (!originalDataTable) {
|
|
97
|
-
return;
|
|
98
|
-
}
|
|
99
|
-
const groupedModifiers = this.getGroupedModifiers();
|
|
100
|
-
let interTable;
|
|
101
|
-
// Grouped modifiers
|
|
102
|
-
if (groupedModifiers.length > 0) {
|
|
103
|
-
const chainModifier = new ChainModifier({}, ...groupedModifiers);
|
|
104
|
-
const dataTableCopy = originalDataTable.clone();
|
|
105
|
-
await chainModifier.modify(dataTableCopy.getModified());
|
|
106
|
-
interTable = dataTableCopy.getModified();
|
|
107
|
-
}
|
|
108
|
-
else {
|
|
109
|
-
interTable = originalDataTable.getModified();
|
|
110
|
-
}
|
|
111
|
-
// Pagination modifier
|
|
112
|
-
const paginationModifier = this.pagination.createModifier(interTable.rowCount);
|
|
113
|
-
if (paginationModifier) {
|
|
114
|
-
interTable = interTable.clone();
|
|
115
|
-
await paginationModifier.modify(interTable);
|
|
116
|
-
interTable = interTable.getModified();
|
|
117
|
-
}
|
|
118
|
-
this.grid.presentationTable = interTable;
|
|
94
|
+
await this.grid.dataProvider?.applyQuery();
|
|
119
95
|
this.shouldBeUpdated = false;
|
|
120
96
|
}
|
|
121
97
|
}
|
|
@@ -13,6 +13,10 @@ declare class SortingController {
|
|
|
13
13
|
* The current sorting options: column ID and sorting order.
|
|
14
14
|
*/
|
|
15
15
|
currentSorting?: SortingState;
|
|
16
|
+
/**
|
|
17
|
+
* The current multi-column sorting options in priority order.
|
|
18
|
+
*/
|
|
19
|
+
currentSortings?: SortingState[];
|
|
16
20
|
/**
|
|
17
21
|
* The modifier that is applied to the data table.
|
|
18
22
|
*/
|
|
@@ -36,6 +40,17 @@ declare class SortingController {
|
|
|
36
40
|
* The column ID to sort by.
|
|
37
41
|
*/
|
|
38
42
|
setSorting(order: ColumnSortingOrder, columnId?: string): void;
|
|
43
|
+
setSorting(sortings: SortingState[]): void;
|
|
44
|
+
/**
|
|
45
|
+
* Checks whether two sorting state arrays are equal.
|
|
46
|
+
*
|
|
47
|
+
* @param a
|
|
48
|
+
* First sorting state array.
|
|
49
|
+
*
|
|
50
|
+
* @param b
|
|
51
|
+
* Second sorting state array.
|
|
52
|
+
*/
|
|
53
|
+
private static sortingsEqual;
|
|
39
54
|
/**
|
|
40
55
|
* Returns the sorting options from the data grid options.
|
|
41
56
|
*/
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
*
|
|
3
3
|
* Grid Sorting Controller 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
|
* - Dawid Dragula
|
|
@@ -37,23 +37,24 @@ class SortingController {
|
|
|
37
37
|
constructor(querying) {
|
|
38
38
|
this.querying = querying;
|
|
39
39
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
40
|
+
setSorting(orderOrSortings, columnId) {
|
|
41
|
+
if (Array.isArray(orderOrSortings)) {
|
|
42
|
+
const sortings = orderOrSortings
|
|
43
|
+
.filter((sorting) => !!(sorting.columnId && sorting.order))
|
|
44
|
+
.map((sorting) => ({
|
|
45
|
+
columnId: sorting.columnId,
|
|
46
|
+
order: sorting.order
|
|
47
|
+
}));
|
|
48
|
+
const currentSortings = this.currentSortings || [];
|
|
49
|
+
if (!SortingController.sortingsEqual(sortings, currentSortings)) {
|
|
50
|
+
this.querying.shouldBeUpdated = true;
|
|
51
|
+
this.currentSortings = sortings;
|
|
52
|
+
this.currentSorting = sortings[0] || { order: null };
|
|
53
|
+
}
|
|
54
|
+
this.modifier = this.createModifier();
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
const order = orderOrSortings;
|
|
57
58
|
if (this.currentSorting?.columnId !== columnId ||
|
|
58
59
|
this.currentSorting?.order !== order) {
|
|
59
60
|
this.querying.shouldBeUpdated = true;
|
|
@@ -61,69 +62,106 @@ class SortingController {
|
|
|
61
62
|
columnId,
|
|
62
63
|
order
|
|
63
64
|
};
|
|
65
|
+
this.currentSortings = (order && columnId ?
|
|
66
|
+
[{ columnId, order }] :
|
|
67
|
+
[]);
|
|
64
68
|
}
|
|
65
69
|
this.modifier = this.createModifier();
|
|
66
70
|
}
|
|
71
|
+
/**
|
|
72
|
+
* Checks whether two sorting state arrays are equal.
|
|
73
|
+
*
|
|
74
|
+
* @param a
|
|
75
|
+
* First sorting state array.
|
|
76
|
+
*
|
|
77
|
+
* @param b
|
|
78
|
+
* Second sorting state array.
|
|
79
|
+
*/
|
|
80
|
+
static sortingsEqual(a, b) {
|
|
81
|
+
if (a.length !== b.length) {
|
|
82
|
+
return false;
|
|
83
|
+
}
|
|
84
|
+
for (let i = 0, iEnd = a.length; i < iEnd; ++i) {
|
|
85
|
+
if (a[i].columnId !== b[i].columnId ||
|
|
86
|
+
a[i].order !== b[i].order) {
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
return true;
|
|
91
|
+
}
|
|
67
92
|
/**
|
|
68
93
|
* Returns the sorting options from the data grid options.
|
|
69
94
|
*/
|
|
70
95
|
getSortingOptions() {
|
|
71
96
|
const grid = this.querying.grid, { columnOptionsMap } = grid;
|
|
72
97
|
if (!columnOptionsMap) {
|
|
73
|
-
return
|
|
98
|
+
return [];
|
|
74
99
|
}
|
|
75
100
|
const columnIDs = Object.keys(columnOptionsMap);
|
|
76
|
-
|
|
77
|
-
let
|
|
78
|
-
for (let i = columnIDs.length - 1; i > -1; --i) {
|
|
101
|
+
const sortings = [];
|
|
102
|
+
for (let i = 0, iEnd = columnIDs.length; i < iEnd; ++i) {
|
|
79
103
|
const columnId = columnIDs[i];
|
|
80
104
|
const columnOptions = columnOptionsMap[columnId]?.options || {};
|
|
81
105
|
const order = columnOptions.sorting?.order;
|
|
82
106
|
if (order) {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
}
|
|
90
|
-
foundOrder = order;
|
|
91
|
-
foundColumnId = columnId;
|
|
107
|
+
sortings.push({
|
|
108
|
+
columnId,
|
|
109
|
+
order,
|
|
110
|
+
priority: columnOptions.sorting?.priority,
|
|
111
|
+
index: i
|
|
112
|
+
});
|
|
92
113
|
}
|
|
93
114
|
}
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
115
|
+
if (sortings.some((sorting) => typeof sorting.priority === 'number')) {
|
|
116
|
+
sortings.sort((a, b) => {
|
|
117
|
+
const aPriority = (typeof a.priority === 'number' ?
|
|
118
|
+
a.priority :
|
|
119
|
+
Number.POSITIVE_INFINITY);
|
|
120
|
+
const bPriority = (typeof b.priority === 'number' ?
|
|
121
|
+
b.priority :
|
|
122
|
+
Number.POSITIVE_INFINITY);
|
|
123
|
+
if (aPriority !== bPriority) {
|
|
124
|
+
return aPriority - bPriority;
|
|
125
|
+
}
|
|
126
|
+
return a.index - b.index;
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
else {
|
|
130
|
+
sortings.reverse();
|
|
131
|
+
}
|
|
132
|
+
return sortings.map((sorting) => ({
|
|
133
|
+
columnId: sorting.columnId,
|
|
134
|
+
order: sorting.order
|
|
135
|
+
}));
|
|
98
136
|
}
|
|
99
137
|
/**
|
|
100
138
|
* Loads sorting options from the data grid options.
|
|
101
139
|
*/
|
|
102
140
|
loadOptions() {
|
|
103
|
-
const
|
|
104
|
-
if (
|
|
105
|
-
|
|
106
|
-
this.setSorting(stateFromOptions.order, stateFromOptions.columnId);
|
|
141
|
+
const sortingsFromOptions = this.getSortingOptions();
|
|
142
|
+
if (!SortingController.sortingsEqual(sortingsFromOptions, this.currentSortings || [])) {
|
|
143
|
+
this.setSorting(sortingsFromOptions);
|
|
107
144
|
}
|
|
108
145
|
}
|
|
109
146
|
/**
|
|
110
147
|
* Returns the sorting modifier based on the loaded sorting options.
|
|
111
148
|
*/
|
|
112
149
|
createModifier() {
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
const { columnId, order } = this.currentSorting;
|
|
117
|
-
if (!order || !columnId) {
|
|
150
|
+
const sortings = (this.currentSortings ||
|
|
151
|
+
(this.currentSorting ? [this.currentSorting] : [])).filter((sorting) => !!(sorting.columnId && sorting.order));
|
|
152
|
+
if (!sortings.length) {
|
|
118
153
|
return;
|
|
119
154
|
}
|
|
120
155
|
const grid = this.querying.grid;
|
|
156
|
+
const defaultCompare = grid.options?.columnDefaults?.sorting?.compare;
|
|
121
157
|
return new SortModifier({
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
grid.
|
|
158
|
+
direction: sortings[0].order,
|
|
159
|
+
columns: sortings.map((sorting) => ({
|
|
160
|
+
column: sorting.columnId,
|
|
161
|
+
direction: sorting.order,
|
|
162
|
+
compare: grid.columnOptionsMap?.[sorting.columnId]
|
|
163
|
+
?.options?.sorting?.compare || defaultCompare
|
|
164
|
+
}))
|
|
127
165
|
});
|
|
128
166
|
}
|
|
129
167
|
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import type { DeepPartial } from '../../../Shared/Types';
|
|
2
|
+
import type Grid from '../../Core/Grid';
|
|
3
|
+
import type { Options } from '../Options';
|
|
4
|
+
import type { ResponsiveOptions, RuleOptions } from './ResponsiveOptions';
|
|
5
|
+
/**
|
|
6
|
+
* Extends the grid classes with responsive options.
|
|
7
|
+
*
|
|
8
|
+
* @param GridClass
|
|
9
|
+
* The class to extend.
|
|
10
|
+
*
|
|
11
|
+
*/
|
|
12
|
+
export declare function compose(GridClass: typeof Grid): void;
|
|
13
|
+
declare module '../Options' {
|
|
14
|
+
interface Options {
|
|
15
|
+
/**
|
|
16
|
+
* Allows setting a set of rules to apply for different screen or grid
|
|
17
|
+
* sizes. Each rule specifies additional grid options.
|
|
18
|
+
*/
|
|
19
|
+
responsive?: ResponsiveOptions;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
declare module '../Grid' {
|
|
23
|
+
export default interface Grid {
|
|
24
|
+
/**
|
|
25
|
+
* Tracks the ResizeObserver instance for the grid.
|
|
26
|
+
* @private
|
|
27
|
+
*/
|
|
28
|
+
resizeObserver?: ResizeObserver;
|
|
29
|
+
/**
|
|
30
|
+
* Cache of currently active responsive rules.
|
|
31
|
+
* @private
|
|
32
|
+
*/
|
|
33
|
+
activeRules?: Set<RuleOptions>;
|
|
34
|
+
/**
|
|
35
|
+
* Stores merged responsive options and undo data.
|
|
36
|
+
* @private
|
|
37
|
+
*/
|
|
38
|
+
currentResponsive?: {
|
|
39
|
+
ruleIds?: string;
|
|
40
|
+
mergedOptions: DeepPartial<Options>;
|
|
41
|
+
undoOptions: DeepPartial<Options>;
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Prevents recursive updates during responsive changes.
|
|
45
|
+
* @private
|
|
46
|
+
*/
|
|
47
|
+
updatingResponsive?: boolean;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
declare const _default: {
|
|
51
|
+
readonly compose: typeof compose;
|
|
52
|
+
};
|
|
53
|
+
export default _default;
|