@highcharts/grid-pro 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +35 -0
- package/css/grid-pro.css +1756 -0
- package/es-modules/Accessibility/A11yI18n.d.ts +95 -0
- package/es-modules/Accessibility/A11yI18n.js +290 -0
- package/es-modules/Accessibility/Accessibility.d.ts +116 -0
- package/es-modules/Accessibility/Accessibility.js +402 -0
- package/es-modules/Accessibility/AccessibilityComponent.d.ts +97 -0
- package/es-modules/Accessibility/AccessibilityComponent.js +147 -0
- package/es-modules/Accessibility/Components/AnnotationsA11y.d.ts +43 -0
- package/es-modules/Accessibility/Components/AnnotationsA11y.js +160 -0
- package/es-modules/Accessibility/Components/ContainerComponent.d.ts +48 -0
- package/es-modules/Accessibility/Components/ContainerComponent.js +142 -0
- package/es-modules/Accessibility/Components/InfoRegionsComponent.d.ts +144 -0
- package/es-modules/Accessibility/Components/InfoRegionsComponent.js +555 -0
- package/es-modules/Accessibility/Components/LegendComponent.d.ts +124 -0
- package/es-modules/Accessibility/Components/LegendComponent.js +474 -0
- package/es-modules/Accessibility/Components/MenuComponent.d.ts +93 -0
- package/es-modules/Accessibility/Components/MenuComponent.js +430 -0
- package/es-modules/Accessibility/Components/NavigatorComponent.d.ts +57 -0
- package/es-modules/Accessibility/Components/NavigatorComponent.js +235 -0
- package/es-modules/Accessibility/Components/RangeSelectorComponent.d.ts +126 -0
- package/es-modules/Accessibility/Components/RangeSelectorComponent.js +473 -0
- package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.d.ts +18 -0
- package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +234 -0
- package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.d.ts +87 -0
- package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +309 -0
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.d.ts +53 -0
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +130 -0
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.d.ts +28 -0
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +415 -0
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.d.ts +114 -0
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +721 -0
- package/es-modules/Accessibility/Components/ZoomComponent.d.ts +96 -0
- package/es-modules/Accessibility/Components/ZoomComponent.js +314 -0
- package/es-modules/Accessibility/FocusBorder.d.ts +40 -0
- package/es-modules/Accessibility/FocusBorder.js +301 -0
- package/es-modules/Accessibility/HighContrastMode.d.ts +35 -0
- package/es-modules/Accessibility/HighContrastMode.js +100 -0
- package/es-modules/Accessibility/HighContrastTheme.d.ts +11 -0
- package/es-modules/Accessibility/HighContrastTheme.js +212 -0
- package/es-modules/Accessibility/KeyboardNavigation.d.ts +133 -0
- package/es-modules/Accessibility/KeyboardNavigation.js +450 -0
- package/es-modules/Accessibility/KeyboardNavigationHandler.d.ts +48 -0
- package/es-modules/Accessibility/KeyboardNavigationHandler.js +126 -0
- package/es-modules/Accessibility/Options/A11yDefaults.d.ts +68 -0
- package/es-modules/Accessibility/Options/A11yDefaults.js +971 -0
- package/es-modules/Accessibility/Options/DeprecatedOptions.d.ts +22 -0
- package/es-modules/Accessibility/Options/DeprecatedOptions.js +265 -0
- package/es-modules/Accessibility/Options/LangDefaults.d.ts +4 -0
- package/es-modules/Accessibility/Options/LangDefaults.js +440 -0
- package/es-modules/Accessibility/ProxyElement.d.ts +78 -0
- package/es-modules/Accessibility/ProxyElement.js +223 -0
- package/es-modules/Accessibility/ProxyProvider.d.ts +90 -0
- package/es-modules/Accessibility/ProxyProvider.js +315 -0
- package/es-modules/Accessibility/Utils/Announcer.d.ts +26 -0
- package/es-modules/Accessibility/Utils/Announcer.js +90 -0
- package/es-modules/Accessibility/Utils/ChartUtilities.d.ts +90 -0
- package/es-modules/Accessibility/Utils/ChartUtilities.js +298 -0
- package/es-modules/Accessibility/Utils/DOMElementProvider.d.ts +20 -0
- package/es-modules/Accessibility/Utils/DOMElementProvider.js +69 -0
- package/es-modules/Accessibility/Utils/EventProvider.d.ts +26 -0
- package/es-modules/Accessibility/Utils/EventProvider.js +65 -0
- package/es-modules/Accessibility/Utils/HTMLUtilities.d.ts +108 -0
- package/es-modules/Accessibility/Utils/HTMLUtilities.js +319 -0
- package/es-modules/Core/Animation/AnimationUtilities.d.ts +107 -0
- package/es-modules/Core/Animation/AnimationUtilities.js +200 -0
- package/es-modules/Core/Animation/Fx.d.ts +130 -0
- package/es-modules/Core/Animation/Fx.js +388 -0
- package/es-modules/Core/Chart/Chart.d.ts +1009 -0
- package/es-modules/Core/Chart/Chart.js +3008 -0
- package/es-modules/Core/Chart/Chart3D.d.ts +276 -0
- package/es-modules/Core/Chart/Chart3D.js +1686 -0
- package/es-modules/Core/Chart/ChartDefaults.d.ts +8 -0
- package/es-modules/Core/Chart/ChartDefaults.js +1304 -0
- package/es-modules/Core/Chart/ChartNavigationComposition.d.ts +55 -0
- package/es-modules/Core/Chart/ChartNavigationComposition.js +90 -0
- package/es-modules/Core/Chart/GanttChart.d.ts +74 -0
- package/es-modules/Core/Chart/GanttChart.js +189 -0
- package/es-modules/Core/Chart/MapChart.d.ts +132 -0
- package/es-modules/Core/Chart/MapChart.js +232 -0
- package/es-modules/Core/Chart/StockChart.d.ts +117 -0
- package/es-modules/Core/Chart/StockChart.js +641 -0
- package/es-modules/Core/Color/Color.d.ts +112 -0
- package/es-modules/Core/Color/Color.js +418 -0
- package/es-modules/Core/Color/Palettes.d.ts +84 -0
- package/es-modules/Core/Color/Palettes.js +23 -0
- package/es-modules/Core/Defaults.d.ts +42 -0
- package/es-modules/Core/Defaults.js +2977 -0
- package/es-modules/Core/Foundation.d.ts +19 -0
- package/es-modules/Core/Foundation.js +63 -0
- package/es-modules/Core/Geometry/CircleUtilities.d.ts +189 -0
- package/es-modules/Core/Geometry/CircleUtilities.js +388 -0
- package/es-modules/Core/Geometry/GeometryUtilities.d.ts +48 -0
- package/es-modules/Core/Geometry/GeometryUtilities.js +105 -0
- package/es-modules/Core/Geometry/PolygonClip.d.ts +19 -0
- package/es-modules/Core/Geometry/PolygonClip.js +96 -0
- package/es-modules/Core/Globals.d.ts +110 -0
- package/es-modules/Core/Globals.js +127 -0
- package/es-modules/Core/HttpUtilities.d.ts +61 -0
- package/es-modules/Core/HttpUtilities.js +214 -0
- package/es-modules/Core/MSPointer.d.ts +74 -0
- package/es-modules/Core/MSPointer.js +218 -0
- package/es-modules/Core/Math3D.d.ts +117 -0
- package/es-modules/Core/Math3D.js +250 -0
- package/es-modules/Core/Pointer.d.ts +590 -0
- package/es-modules/Core/Pointer.js +1631 -0
- package/es-modules/Core/Renderer/HTML/AST.d.ts +163 -0
- package/es-modules/Core/Renderer/HTML/AST.js +562 -0
- package/es-modules/Core/Renderer/HTML/HTMLElement.d.ts +76 -0
- package/es-modules/Core/Renderer/HTML/HTMLElement.js +471 -0
- package/es-modules/Core/Renderer/RendererRegistry.d.ts +29 -0
- package/es-modules/Core/Renderer/RendererRegistry.js +76 -0
- package/es-modules/Core/Renderer/RendererUtilities.d.ts +26 -0
- package/es-modules/Core/Renderer/RendererUtilities.js +172 -0
- package/es-modules/Core/Responsive.d.ts +55 -0
- package/es-modules/Core/Responsive.js +260 -0
- package/es-modules/Core/Templating.d.ts +125 -0
- package/es-modules/Core/Templating.js +428 -0
- package/es-modules/Core/Time.d.ts +69 -0
- package/es-modules/Core/Time.js +172 -0
- package/es-modules/Core/Tooltip.d.ts +297 -0
- package/es-modules/Core/Tooltip.js +1377 -0
- package/es-modules/Core/Utilities.d.ts +770 -0
- package/es-modules/Core/Utilities.js +1989 -0
- package/es-modules/Data/ColumnUtils.d.ts +87 -0
- package/es-modules/Data/ColumnUtils.js +140 -0
- package/es-modules/Data/Connectors/CSVConnector.d.ts +63 -0
- package/es-modules/Data/Connectors/CSVConnector.js +149 -0
- package/es-modules/Data/Connectors/CSVConnectorOptions.d.ts +149 -0
- package/es-modules/Data/Connectors/DataConnector.d.ts +204 -0
- package/es-modules/Data/Connectors/DataConnector.js +345 -0
- package/es-modules/Data/Connectors/DataConnectorOptions.d.ts +87 -0
- package/es-modules/Data/Connectors/DataConnectorType.d.ts +45 -0
- package/es-modules/Data/Connectors/GoogleSheetsConnector.d.ts +65 -0
- package/es-modules/Data/Connectors/GoogleSheetsConnector.js +226 -0
- package/es-modules/Data/Connectors/GoogleSheetsConnectorOptions.d.ts +167 -0
- package/es-modules/Data/Connectors/HTMLTableConnector.d.ts +77 -0
- package/es-modules/Data/Connectors/HTMLTableConnector.js +119 -0
- package/es-modules/Data/Connectors/HTMLTableConnectorOptions.d.ts +49 -0
- package/es-modules/Data/Connectors/JSONConnector.d.ts +64 -0
- package/es-modules/Data/Connectors/JSONConnector.js +156 -0
- package/es-modules/Data/Connectors/JSONConnectorOptions.d.ts +185 -0
- package/es-modules/Data/Converters/CSVConverter.d.ts +64 -0
- package/es-modules/Data/Converters/CSVConverter.js +374 -0
- package/es-modules/Data/Converters/CSVConverterOptions.d.ts +53 -0
- package/es-modules/Data/Converters/DataConverter.d.ts +168 -0
- package/es-modules/Data/Converters/DataConverter.js +387 -0
- package/es-modules/Data/Converters/DataConverterType.d.ts +40 -0
- package/es-modules/Data/Converters/DataConverterUtils.d.ts +82 -0
- package/es-modules/Data/Converters/DataConverterUtils.js +216 -0
- package/es-modules/Data/Converters/GoogleSheetsConverter.d.ts +46 -0
- package/es-modules/Data/Converters/GoogleSheetsConverter.js +135 -0
- package/es-modules/Data/Converters/GoogleSheetsConverterOptions.d.ts +52 -0
- package/es-modules/Data/Converters/HTMLTableConverter.d.ts +72 -0
- package/es-modules/Data/Converters/HTMLTableConverter.js +362 -0
- package/es-modules/Data/Converters/HTMLTableConverterOptions.d.ts +51 -0
- package/es-modules/Data/Converters/JSONConverter.d.ts +99 -0
- package/es-modules/Data/Converters/JSONConverter.js +239 -0
- package/es-modules/Data/Converters/JSONConverterOptions.d.ts +52 -0
- package/es-modules/Data/DataCursor.d.ts +176 -0
- package/es-modules/Data/DataCursor.js +379 -0
- package/es-modules/Data/DataEvent.d.ts +81 -0
- package/es-modules/Data/DataEvent.js +14 -0
- package/es-modules/Data/DataPool.d.ts +130 -0
- package/es-modules/Data/DataPool.js +257 -0
- package/es-modules/Data/DataPoolOptions.d.ts +66 -0
- package/es-modules/Data/DataTable.d.ts +563 -0
- package/es-modules/Data/DataTable.js +930 -0
- package/es-modules/Data/DataTableCore.d.ts +165 -0
- package/es-modules/Data/DataTableCore.js +316 -0
- package/es-modules/Data/DataTableOptions.d.ts +25 -0
- package/es-modules/Data/DataTableOptions.js +15 -0
- package/es-modules/Data/Formula/Formula.d.ts +21 -0
- package/es-modules/Data/Formula/Formula.js +54 -0
- package/es-modules/Data/Formula/FormulaParser.d.ts +31 -0
- package/es-modules/Data/Formula/FormulaParser.js +488 -0
- package/es-modules/Data/Formula/FormulaProcessor.d.ts +155 -0
- package/es-modules/Data/Formula/FormulaProcessor.js +529 -0
- package/es-modules/Data/Formula/FormulaTypes.d.ts +138 -0
- package/es-modules/Data/Formula/FormulaTypes.js +135 -0
- package/es-modules/Data/Formula/Functions/ABS.d.ts +19 -0
- package/es-modules/Data/Formula/Functions/ABS.js +67 -0
- package/es-modules/Data/Formula/Functions/AND.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/AND.js +59 -0
- package/es-modules/Data/Formula/Functions/AVERAGE.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/AVERAGE.js +74 -0
- package/es-modules/Data/Formula/Functions/AVERAGEA.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/AVERAGEA.js +90 -0
- package/es-modules/Data/Formula/Functions/COUNT.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/COUNT.js +65 -0
- package/es-modules/Data/Formula/Functions/COUNTA.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/COUNTA.js +71 -0
- package/es-modules/Data/Formula/Functions/IF.d.ts +21 -0
- package/es-modules/Data/Formula/Functions/IF.js +54 -0
- package/es-modules/Data/Formula/Functions/ISNA.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/ISNA.js +52 -0
- package/es-modules/Data/Formula/Functions/MAX.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/MAX.js +69 -0
- package/es-modules/Data/Formula/Functions/MEDIAN.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/MEDIAN.js +78 -0
- package/es-modules/Data/Formula/Functions/MIN.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/MIN.js +69 -0
- package/es-modules/Data/Formula/Functions/MOD.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/MOD.js +63 -0
- package/es-modules/Data/Formula/Functions/MODE.d.ts +41 -0
- package/es-modules/Data/Formula/Functions/MODE.js +149 -0
- package/es-modules/Data/Formula/Functions/NOT.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/NOT.js +60 -0
- package/es-modules/Data/Formula/Functions/OR.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/OR.js +62 -0
- package/es-modules/Data/Formula/Functions/PRODUCT.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/PRODUCT.js +68 -0
- package/es-modules/Data/Formula/Functions/SUM.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/SUM.js +65 -0
- package/es-modules/Data/Formula/Functions/XOR.d.ts +20 -0
- package/es-modules/Data/Formula/Functions/XOR.js +81 -0
- package/es-modules/Data/Modifiers/ChainModifier.d.ts +128 -0
- package/es-modules/Data/Modifiers/ChainModifier.js +231 -0
- package/es-modules/Data/Modifiers/ChainModifierOptions.d.ts +20 -0
- package/es-modules/Data/Modifiers/ChainModifierOptions.js +14 -0
- package/es-modules/Data/Modifiers/DataModifier.d.ts +117 -0
- package/es-modules/Data/Modifiers/DataModifier.js +202 -0
- package/es-modules/Data/Modifiers/DataModifierEvent.d.ts +28 -0
- package/es-modules/Data/Modifiers/DataModifierEvent.js +15 -0
- package/es-modules/Data/Modifiers/DataModifierOptions.d.ts +11 -0
- package/es-modules/Data/Modifiers/DataModifierOptions.js +15 -0
- package/es-modules/Data/Modifiers/DataModifierType.d.ts +44 -0
- package/es-modules/Data/Modifiers/FilterModifier.d.ts +53 -0
- package/es-modules/Data/Modifiers/FilterModifier.js +172 -0
- package/es-modules/Data/Modifiers/FilterModifierOptions.d.ts +110 -0
- package/es-modules/Data/Modifiers/FilterModifierOptions.js +14 -0
- package/es-modules/Data/Modifiers/InvertModifier.d.ts +48 -0
- package/es-modules/Data/Modifiers/InvertModifier.js +116 -0
- package/es-modules/Data/Modifiers/InvertModifierOptions.d.ts +11 -0
- package/es-modules/Data/Modifiers/InvertModifierOptions.js +15 -0
- package/es-modules/Data/Modifiers/MathModifier.d.ts +68 -0
- package/es-modules/Data/Modifiers/MathModifier.js +165 -0
- package/es-modules/Data/Modifiers/MathModifierOptions.d.ts +50 -0
- package/es-modules/Data/Modifiers/MathModifierOptions.js +14 -0
- package/es-modules/Data/Modifiers/RangeModifier.d.ts +46 -0
- package/es-modules/Data/Modifiers/RangeModifier.js +96 -0
- package/es-modules/Data/Modifiers/RangeModifierOptions.d.ts +22 -0
- package/es-modules/Data/Modifiers/RangeModifierOptions.js +15 -0
- package/es-modules/Data/Modifiers/SortModifier.d.ts +54 -0
- package/es-modules/Data/Modifiers/SortModifier.js +144 -0
- package/es-modules/Data/Modifiers/SortModifierOptions.d.ts +44 -0
- package/es-modules/Data/Modifiers/SortModifierOptions.js +14 -0
- package/es-modules/Grid/Core/Accessibility/A11yOptions.d.ts +148 -0
- package/es-modules/Grid/Core/Accessibility/A11yOptions.js +17 -0
- package/es-modules/Grid/Core/Accessibility/Accessibility.d.ts +115 -0
- package/es-modules/Grid/Core/Accessibility/Accessibility.js +231 -0
- package/es-modules/Grid/Core/Credits.d.ts +57 -0
- package/es-modules/Grid/Core/Credits.js +125 -0
- package/es-modules/Grid/Core/Defaults.d.ts +20 -0
- package/es-modules/Grid/Core/Defaults.js +148 -0
- package/es-modules/Grid/Core/Globals.d.ts +103 -0
- package/es-modules/Grid/Core/Globals.js +134 -0
- package/es-modules/Grid/Core/Grid.d.ts +295 -0
- package/es-modules/Grid/Core/Grid.js +730 -0
- package/es-modules/Grid/Core/GridUtils.d.ts +110 -0
- package/es-modules/Grid/Core/GridUtils.js +191 -0
- package/es-modules/Grid/Core/Options.d.ts +599 -0
- package/es-modules/Grid/Core/Options.js +16 -0
- package/es-modules/Grid/Core/Pagination/Icons.d.ts +7 -0
- package/es-modules/Grid/Core/Pagination/Icons.js +7 -0
- package/es-modules/Grid/Core/Pagination/Pagination.d.ts +278 -0
- package/es-modules/Grid/Core/Pagination/Pagination.js +842 -0
- package/es-modules/Grid/Core/Pagination/PaginationOptions.d.ts +228 -0
- package/es-modules/Grid/Core/Querying/FilteringController.d.ts +66 -0
- package/es-modules/Grid/Core/Querying/FilteringController.js +256 -0
- package/es-modules/Grid/Core/Querying/PaginationController.d.ts +50 -0
- package/es-modules/Grid/Core/Querying/PaginationController.js +101 -0
- package/es-modules/Grid/Core/Querying/QueryingController.d.ts +58 -0
- package/es-modules/Grid/Core/Querying/QueryingController.js +127 -0
- package/es-modules/Grid/Core/Querying/SortingController.d.ts +67 -0
- package/es-modules/Grid/Core/Querying/SortingController.js +136 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/ColumnFiltering.d.ts +114 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/ColumnFiltering.js +351 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterCell.d.ts +14 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterCell.js +86 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterRow.d.ts +19 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterRow.js +80 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilteringTypes.d.ts +52 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilteringTypes.js +81 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnSorting.d.ts +56 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnSorting.js +170 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnsResizer.d.ts +55 -0
- package/es-modules/Grid/Core/Table/Actions/ColumnsResizer.js +182 -0
- package/es-modules/Grid/Core/Table/Actions/RowsVirtualizer.d.ts +87 -0
- package/es-modules/Grid/Core/Table/Actions/RowsVirtualizer.js +346 -0
- package/es-modules/Grid/Core/Table/Body/TableCell.d.ts +88 -0
- package/es-modules/Grid/Core/Table/Body/TableCell.js +231 -0
- package/es-modules/Grid/Core/Table/Body/TableRow.d.ts +79 -0
- package/es-modules/Grid/Core/Table/Body/TableRow.js +177 -0
- package/es-modules/Grid/Core/Table/Cell.d.ts +92 -0
- package/es-modules/Grid/Core/Table/Cell.js +223 -0
- package/es-modules/Grid/Core/Table/CellContent/CellContent.d.ts +30 -0
- package/es-modules/Grid/Core/Table/CellContent/CellContent.js +40 -0
- package/es-modules/Grid/Core/Table/CellContent/TextContent.d.ts +19 -0
- package/es-modules/Grid/Core/Table/CellContent/TextContent.js +98 -0
- package/es-modules/Grid/Core/Table/Column.d.ts +136 -0
- package/es-modules/Grid/Core/Table/Column.js +230 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/AdjacentResizingMode.d.ts +7 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/AdjacentResizingMode.js +62 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/ColumnResizing.d.ts +32 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/ColumnResizing.js +68 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/DistributedResizingMode.d.ts +7 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/DistributedResizingMode.js +53 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/IndependentResizingMode.d.ts +7 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/IndependentResizingMode.js +63 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/ResizingMode.d.ts +92 -0
- package/es-modules/Grid/Core/Table/ColumnResizing/ResizingMode.js +194 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ColumnToolbar.d.ts +68 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ColumnToolbar.js +187 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/FilterPopup.d.ts +29 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/FilterPopup.js +77 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/FilterMenuButton.d.ts +13 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/FilterMenuButton.js +79 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/SortMenuButton.d.ts +12 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/SortMenuButton.js +71 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuPopup.d.ts +12 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuPopup.js +66 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/StateHelpers.d.ts +25 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/StateHelpers.js +65 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/FilterToolbarButton.d.ts +12 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/FilterToolbarButton.js +81 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/MenuToolbarButton.d.ts +12 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/MenuToolbarButton.js +80 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/SortToolbarButton.d.ts +11 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/SortToolbarButton.js +81 -0
- package/es-modules/Grid/Core/Table/Header/HeaderCell.d.ts +70 -0
- package/es-modules/Grid/Core/Table/Header/HeaderCell.js +225 -0
- package/es-modules/Grid/Core/Table/Header/HeaderRow.d.ts +53 -0
- package/es-modules/Grid/Core/Table/Header/HeaderRow.js +182 -0
- package/es-modules/Grid/Core/Table/Header/TableHeader.d.ts +65 -0
- package/es-modules/Grid/Core/Table/Header/TableHeader.js +159 -0
- package/es-modules/Grid/Core/Table/Row.d.ts +76 -0
- package/es-modules/Grid/Core/Table/Row.js +131 -0
- package/es-modules/Grid/Core/Table/Table.d.ts +181 -0
- package/es-modules/Grid/Core/Table/Table.js +399 -0
- package/es-modules/Grid/Core/UI/Button.d.ts +31 -0
- package/es-modules/Grid/Core/UI/Button.js +16 -0
- package/es-modules/Grid/Core/UI/ContextMenu.d.ts +38 -0
- package/es-modules/Grid/Core/UI/ContextMenu.js +132 -0
- package/es-modules/Grid/Core/UI/ContextMenuButton.d.ts +126 -0
- package/es-modules/Grid/Core/UI/ContextMenuButton.js +183 -0
- package/es-modules/Grid/Core/UI/Popup.d.ts +149 -0
- package/es-modules/Grid/Core/UI/Popup.js +271 -0
- package/es-modules/Grid/Core/UI/SvgIcons.d.ts +53 -0
- package/es-modules/Grid/Core/UI/SvgIcons.js +158 -0
- package/es-modules/Grid/Core/UI/Toolbar.d.ts +16 -0
- package/es-modules/Grid/Core/UI/Toolbar.js +16 -0
- package/es-modules/Grid/Core/UI/ToolbarButton.d.ts +135 -0
- package/es-modules/Grid/Core/UI/ToolbarButton.js +191 -0
- package/es-modules/Grid/Pro/CellEditing/CellEditMode.d.ts +112 -0
- package/es-modules/Grid/Pro/CellEditing/CellEditing.d.ts +80 -0
- package/es-modules/Grid/Pro/CellEditing/CellEditing.js +211 -0
- package/es-modules/Grid/Pro/CellEditing/CellEditingComposition.d.ts +123 -0
- package/es-modules/Grid/Pro/CellEditing/CellEditingComposition.js +198 -0
- package/es-modules/Grid/Pro/CellRendering/CellContentPro.d.ts +23 -0
- package/es-modules/Grid/Pro/CellRendering/CellContentPro.js +45 -0
- package/es-modules/Grid/Pro/CellRendering/CellRenderer.d.ts +50 -0
- package/es-modules/Grid/Pro/CellRendering/CellRenderer.js +41 -0
- package/es-modules/Grid/Pro/CellRendering/CellRendererRegistry.d.ts +18 -0
- package/es-modules/Grid/Pro/CellRendering/CellRendererRegistry.js +58 -0
- package/es-modules/Grid/Pro/CellRendering/CellRendererType.d.ts +48 -0
- package/es-modules/Grid/Pro/CellRendering/CellRenderersComposition.d.ts +18 -0
- package/es-modules/Grid/Pro/CellRendering/CellRenderersComposition.js +79 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/CheckboxContent.d.ts +30 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/CheckboxContent.js +122 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateInputContent.d.ts +12 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateInputContent.js +39 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateInputContentBase.d.ts +66 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateInputContentBase.js +145 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateTimeInputContent.d.ts +12 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/DateTimeInputContent.js +38 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/NumberInputContent.d.ts +58 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/NumberInputContent.js +158 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/SelectContent.d.ts +58 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/SelectContent.js +173 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/SparklineContent.d.ts +28 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/SparklineContent.js +157 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/TextInputContent.d.ts +58 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/TextInputContent.js +168 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/TimeInputContent.d.ts +13 -0
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/TimeInputContent.js +41 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/CheckboxRenderer.d.ts +50 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/CheckboxRenderer.js +65 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/DateInputRenderer.d.ts +37 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/DateInputRenderer.js +65 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/DateInputRendererBase.d.ts +26 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/DateInputRendererBase.js +16 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/DateTimeInputRenderer.d.ts +37 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/DateTimeInputRenderer.js +64 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/NumberInputRenderer.d.ts +52 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/NumberInputRenderer.js +64 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/SelectRenderer.d.ts +74 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/SelectRenderer.js +66 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/SparklineRenderer.d.ts +45 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/SparklineRenderer.js +89 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/TextInputRenderer.d.ts +54 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/TextInputRenderer.js +65 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/TextRenderer.d.ts +43 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/TextRenderer.js +74 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/TimeInputRenderer.d.ts +37 -0
- package/es-modules/Grid/Pro/CellRendering/Renderers/TimeInputRenderer.js +64 -0
- package/es-modules/Grid/Pro/ColumnTypes/ColumnDataType.d.ts +29 -0
- package/es-modules/Grid/Pro/ColumnTypes/Validator.d.ts +118 -0
- package/es-modules/Grid/Pro/ColumnTypes/Validator.js +270 -0
- package/es-modules/Grid/Pro/ColumnTypes/ValidatorComposition.d.ts +32 -0
- package/es-modules/Grid/Pro/ColumnTypes/ValidatorComposition.js +63 -0
- package/es-modules/Grid/Pro/Credits/CreditsPro.d.ts +35 -0
- package/es-modules/Grid/Pro/Credits/CreditsPro.js +112 -0
- package/es-modules/Grid/Pro/Credits/CreditsProComposition.d.ts +28 -0
- package/es-modules/Grid/Pro/Credits/CreditsProComposition.js +61 -0
- package/es-modules/Grid/Pro/Export/Exporting.d.ts +68 -0
- package/es-modules/Grid/Pro/Export/Exporting.js +202 -0
- package/es-modules/Grid/Pro/Export/ExportingComposition.d.ts +68 -0
- package/es-modules/Grid/Pro/Export/ExportingComposition.js +55 -0
- package/es-modules/Grid/Pro/GridEvents.d.ts +119 -0
- package/es-modules/Grid/Pro/GridEvents.js +107 -0
- package/es-modules/Grid/Pro/Pagination/PaginationComposition.d.ts +75 -0
- package/es-modules/Grid/Pro/Pagination/PaginationComposition.js +76 -0
- package/es-modules/Grid/Pro/highcharts.d.ts +7 -0
- package/es-modules/Grid/index.d.ts +5 -0
- package/es-modules/Grid/index.js +19 -0
- package/es-modules/Shared/BaseForm.d.ts +49 -0
- package/es-modules/Shared/BaseForm.js +126 -0
- package/es-modules/Shared/DownloadURL.d.ts +85 -0
- package/es-modules/Shared/DownloadURL.js +198 -0
- package/es-modules/Shared/LangOptionsCore.d.ts +27 -0
- package/es-modules/Shared/TimeBase.d.ts +353 -0
- package/es-modules/Shared/TimeBase.js +830 -0
- package/es-modules/Shared/Types.d.ts +48 -0
- package/es-modules/masters/grid-pro.src.d.ts +99 -0
- package/es-modules/masters/grid-pro.src.js +129 -0
- package/grid-pro.d.ts +50 -0
- package/grid-pro.js +12 -0
- package/grid-pro.js.map +1 -0
- package/grid-pro.src.d.ts +50 -0
- package/grid-pro.src.js +26623 -0
- package/package.json +21 -0
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
/* *
|
|
2
|
+
*
|
|
3
|
+
* (c) 2010-2025 Torstein Honsi
|
|
4
|
+
*
|
|
5
|
+
* License: www.highcharts.com/license
|
|
6
|
+
*
|
|
7
|
+
* !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
|
|
8
|
+
*
|
|
9
|
+
* */
|
|
10
|
+
'use strict';
|
|
11
|
+
import Fx from './Fx.js';
|
|
12
|
+
import U from '../Utilities.js';
|
|
13
|
+
const { defined, getStyle, isArray, isNumber, isObject, merge, objectEach, pick } = U;
|
|
14
|
+
/* *
|
|
15
|
+
*
|
|
16
|
+
* Functions
|
|
17
|
+
*
|
|
18
|
+
* */
|
|
19
|
+
/**
|
|
20
|
+
* Set the global animation to either a given value, or fall back to the given
|
|
21
|
+
* chart's animation option.
|
|
22
|
+
*
|
|
23
|
+
* @function Highcharts.setAnimation
|
|
24
|
+
*
|
|
25
|
+
* @param {boolean|Partial<Highcharts.AnimationOptionsObject>|undefined} animation
|
|
26
|
+
* The animation object.
|
|
27
|
+
*
|
|
28
|
+
* @param {Highcharts.Chart} chart
|
|
29
|
+
* The chart instance.
|
|
30
|
+
*
|
|
31
|
+
* @todo
|
|
32
|
+
* This function always relates to a chart, and sets a property on the renderer,
|
|
33
|
+
* so it should be moved to the SVGRenderer.
|
|
34
|
+
*/
|
|
35
|
+
function setAnimation(animation, chart) {
|
|
36
|
+
chart.renderer.globalAnimation = pick(animation, chart.options.chart.animation, true);
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Get the animation in object form, where a disabled animation is always
|
|
40
|
+
* returned as `{ duration: 0 }`.
|
|
41
|
+
*
|
|
42
|
+
* @function Highcharts.animObject
|
|
43
|
+
*
|
|
44
|
+
* @param {boolean|Highcharts.AnimationOptionsObject} [animation=0]
|
|
45
|
+
* An animation setting. Can be an object with duration, complete and
|
|
46
|
+
* easing properties, or a boolean to enable or disable.
|
|
47
|
+
*
|
|
48
|
+
* @return {Highcharts.AnimationOptionsObject}
|
|
49
|
+
* An object with at least a duration property.
|
|
50
|
+
*/
|
|
51
|
+
function animObject(animation) {
|
|
52
|
+
return isObject(animation) ?
|
|
53
|
+
merge({ duration: 500, defer: 0 }, animation) :
|
|
54
|
+
{ duration: animation ? 500 : 0, defer: 0 };
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Get the defer as a number value from series animation options.
|
|
58
|
+
*
|
|
59
|
+
* @function Highcharts.getDeferredAnimation
|
|
60
|
+
*
|
|
61
|
+
* @param {Highcharts.Chart} chart
|
|
62
|
+
* The chart instance.
|
|
63
|
+
*
|
|
64
|
+
* @param {boolean|Highcharts.AnimationOptionsObject} animation
|
|
65
|
+
* An animation setting. Can be an object with duration, complete and
|
|
66
|
+
* easing properties, or a boolean to enable or disable.
|
|
67
|
+
*
|
|
68
|
+
* @param {Highcharts.Series} [series]
|
|
69
|
+
* Series to defer animation.
|
|
70
|
+
*
|
|
71
|
+
* @return {number}
|
|
72
|
+
* The numeric value.
|
|
73
|
+
*/
|
|
74
|
+
function getDeferredAnimation(chart, animation, series) {
|
|
75
|
+
const labelAnimation = animObject(animation), s = series ? [series] : chart.series;
|
|
76
|
+
let defer = 0, duration = 0;
|
|
77
|
+
s.forEach((series) => {
|
|
78
|
+
const seriesAnim = animObject(series.options.animation);
|
|
79
|
+
defer = isObject(animation) && defined(animation.defer) ?
|
|
80
|
+
labelAnimation.defer :
|
|
81
|
+
Math.max(defer, seriesAnim.duration + seriesAnim.defer);
|
|
82
|
+
duration = Math.min(labelAnimation.duration, seriesAnim.duration);
|
|
83
|
+
});
|
|
84
|
+
// Disable defer for exporting
|
|
85
|
+
if (chart.renderer.forExport) {
|
|
86
|
+
defer = 0;
|
|
87
|
+
}
|
|
88
|
+
const anim = {
|
|
89
|
+
defer: Math.max(0, defer - duration),
|
|
90
|
+
duration: Math.min(defer, duration)
|
|
91
|
+
};
|
|
92
|
+
return anim;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* The global animate method, which uses Fx to create individual animators.
|
|
96
|
+
*
|
|
97
|
+
* @function Highcharts.animate
|
|
98
|
+
*
|
|
99
|
+
* @param {Highcharts.HTMLDOMElement|Highcharts.SVGElement} el
|
|
100
|
+
* The element to animate.
|
|
101
|
+
*
|
|
102
|
+
* @param {Highcharts.CSSObject|Highcharts.SVGAttributes} params
|
|
103
|
+
* An object containing key-value pairs of the properties to animate.
|
|
104
|
+
* Supports numeric as pixel-based CSS properties for HTML objects and
|
|
105
|
+
* attributes for SVGElements.
|
|
106
|
+
*
|
|
107
|
+
* @param {Partial<Highcharts.AnimationOptionsObject>} [opt]
|
|
108
|
+
* Animation options.
|
|
109
|
+
*
|
|
110
|
+
* @return {void}
|
|
111
|
+
*/
|
|
112
|
+
function animate(el, params, opt) {
|
|
113
|
+
let start, unit = '', end, fx, args;
|
|
114
|
+
if (!isObject(opt)) { // Number or undefined/null
|
|
115
|
+
args = arguments;
|
|
116
|
+
opt = {
|
|
117
|
+
duration: args[2],
|
|
118
|
+
easing: args[3],
|
|
119
|
+
complete: args[4]
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
if (!isNumber(opt.duration)) {
|
|
123
|
+
opt.duration = 400;
|
|
124
|
+
}
|
|
125
|
+
opt.easing = typeof opt.easing === 'function' ?
|
|
126
|
+
opt.easing :
|
|
127
|
+
(Math[opt.easing] || Math.easeInOutSine);
|
|
128
|
+
opt.curAnim = merge(params);
|
|
129
|
+
objectEach(params, function (val, prop) {
|
|
130
|
+
// Stop current running animation of this property
|
|
131
|
+
stop(el, prop);
|
|
132
|
+
fx = new Fx(el, opt, prop);
|
|
133
|
+
end = void 0;
|
|
134
|
+
if (prop === 'd' && isArray(params.d)) {
|
|
135
|
+
fx.paths = fx.initPath(el, el.pathArray, params.d);
|
|
136
|
+
fx.toD = params.d;
|
|
137
|
+
start = 0;
|
|
138
|
+
end = 1;
|
|
139
|
+
}
|
|
140
|
+
else if (el.attr) {
|
|
141
|
+
start = el.attr(prop);
|
|
142
|
+
}
|
|
143
|
+
else {
|
|
144
|
+
start = parseFloat(getStyle(el, prop)) || 0;
|
|
145
|
+
if (prop !== 'opacity') {
|
|
146
|
+
unit = 'px';
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
if (!end) {
|
|
150
|
+
end = val;
|
|
151
|
+
}
|
|
152
|
+
if (typeof end === 'string' && end.match('px')) {
|
|
153
|
+
end = end.replace(/px/g, ''); // #4351
|
|
154
|
+
}
|
|
155
|
+
fx.run(start, end, unit);
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Stop running animation.
|
|
160
|
+
*
|
|
161
|
+
* @function Highcharts.stop
|
|
162
|
+
*
|
|
163
|
+
* @param {Highcharts.SVGElement} el
|
|
164
|
+
* The SVGElement to stop animation on.
|
|
165
|
+
*
|
|
166
|
+
* @param {string} [prop]
|
|
167
|
+
* The property to stop animating. If given, the stop method will stop a
|
|
168
|
+
* single property from animating, while others continue.
|
|
169
|
+
*
|
|
170
|
+
* @return {void}
|
|
171
|
+
*
|
|
172
|
+
* @todo
|
|
173
|
+
* A possible extension to this would be to stop a single property, when
|
|
174
|
+
* we want to continue animating others. Then assign the prop to the timer
|
|
175
|
+
* in the Fx.run method, and check for the prop here. This would be an
|
|
176
|
+
* improvement in all cases where we stop the animation from .attr. Instead of
|
|
177
|
+
* stopping everything, we can just stop the actual attributes we're setting.
|
|
178
|
+
*/
|
|
179
|
+
function stop(el, prop) {
|
|
180
|
+
let i = Fx.timers.length;
|
|
181
|
+
// Remove timers related to this element (#4519)
|
|
182
|
+
while (i--) {
|
|
183
|
+
if (Fx.timers[i].elem === el && (!prop || prop === Fx.timers[i].prop)) {
|
|
184
|
+
Fx.timers[i].stopped = true; // #4667
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
const animationExports = {
|
|
189
|
+
animate,
|
|
190
|
+
animObject,
|
|
191
|
+
getDeferredAnimation,
|
|
192
|
+
setAnimation,
|
|
193
|
+
stop
|
|
194
|
+
};
|
|
195
|
+
/* *
|
|
196
|
+
*
|
|
197
|
+
* Default Export
|
|
198
|
+
*
|
|
199
|
+
* */
|
|
200
|
+
export default animationExports;
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import type AnimationOptions from './AnimationOptions';
|
|
2
|
+
import type FxBase from './FxBase';
|
|
3
|
+
import type { HTMLDOMElement } from '../Renderer/DOMElementType';
|
|
4
|
+
import type HTMLElement from '../Renderer/HTML/HTMLElement';
|
|
5
|
+
import type SVGElement from '../Renderer/SVG/SVGElement';
|
|
6
|
+
import type SVGPath from '../Renderer/SVG/SVGPath';
|
|
7
|
+
/**
|
|
8
|
+
* An animator object used internally. One instance applies to one property
|
|
9
|
+
* (attribute or style prop) on one element. Animation is always initiated
|
|
10
|
+
* through {@link SVGElement#animate}.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* let rect = renderer.rect(0, 0, 10, 10).add();
|
|
14
|
+
* rect.animate({ width: 100 });
|
|
15
|
+
*
|
|
16
|
+
* @private
|
|
17
|
+
* @class
|
|
18
|
+
* @name Highcharts.Fx
|
|
19
|
+
*
|
|
20
|
+
* @param {Highcharts.HTMLDOMElement|Highcharts.SVGElement} elem
|
|
21
|
+
* The element to animate.
|
|
22
|
+
*
|
|
23
|
+
* @param {Partial<Highcharts.AnimationOptionsObject>} options
|
|
24
|
+
* Animation options.
|
|
25
|
+
*
|
|
26
|
+
* @param {string} prop
|
|
27
|
+
* The single attribute or CSS property to animate.
|
|
28
|
+
*/
|
|
29
|
+
declare class Fx {
|
|
30
|
+
static timers: Array<Fx.Timer>;
|
|
31
|
+
constructor(elem: (HTMLElement | SVGElement), options: Partial<AnimationOptions>, prop: string);
|
|
32
|
+
elem: (HTMLElement | SVGElement);
|
|
33
|
+
end?: number;
|
|
34
|
+
from?: number;
|
|
35
|
+
now?: number;
|
|
36
|
+
options: Partial<AnimationOptions>;
|
|
37
|
+
paths?: [SVGPath, SVGPath];
|
|
38
|
+
pos: number;
|
|
39
|
+
prop: string;
|
|
40
|
+
start?: number;
|
|
41
|
+
startTime?: number;
|
|
42
|
+
toD?: SVGPath;
|
|
43
|
+
unit?: string;
|
|
44
|
+
/**
|
|
45
|
+
* Set the current step of a path definition on SVGElement.
|
|
46
|
+
*
|
|
47
|
+
* @function Highcharts.Fx#dSetter
|
|
48
|
+
*
|
|
49
|
+
*/
|
|
50
|
+
dSetter(): void;
|
|
51
|
+
/**
|
|
52
|
+
* Update the element with the current animation step.
|
|
53
|
+
*
|
|
54
|
+
* @function Highcharts.Fx#update
|
|
55
|
+
*
|
|
56
|
+
*/
|
|
57
|
+
update(): void;
|
|
58
|
+
/**
|
|
59
|
+
* Run an animation.
|
|
60
|
+
*
|
|
61
|
+
* @function Highcharts.Fx#run
|
|
62
|
+
*
|
|
63
|
+
* @param {number} from
|
|
64
|
+
* The current value, value to start from.
|
|
65
|
+
*
|
|
66
|
+
* @param {number} to
|
|
67
|
+
* The end value, value to land on.
|
|
68
|
+
*
|
|
69
|
+
* @param {string} unit
|
|
70
|
+
* The property unit, for example `px`.
|
|
71
|
+
*
|
|
72
|
+
*/
|
|
73
|
+
run(from: number, to: number, unit: string): void;
|
|
74
|
+
/**
|
|
75
|
+
* Run a single step in the animation.
|
|
76
|
+
*
|
|
77
|
+
* @function Highcharts.Fx#step
|
|
78
|
+
*
|
|
79
|
+
* @param {boolean} [gotoEnd]
|
|
80
|
+
* Whether to go to the endpoint of the animation after abort.
|
|
81
|
+
*
|
|
82
|
+
* @return {boolean}
|
|
83
|
+
* Returns `true` if animation continues.
|
|
84
|
+
*/
|
|
85
|
+
step(gotoEnd?: boolean): boolean;
|
|
86
|
+
/**
|
|
87
|
+
* Prepare start and end values so that the path can be animated one to one.
|
|
88
|
+
*
|
|
89
|
+
* @function Highcharts.Fx#initPath
|
|
90
|
+
*
|
|
91
|
+
* @param {Highcharts.SVGElement} elem
|
|
92
|
+
* The SVGElement item.
|
|
93
|
+
*
|
|
94
|
+
* @param {Highcharts.SVGPathArray|undefined} fromD
|
|
95
|
+
* Starting path definition.
|
|
96
|
+
*
|
|
97
|
+
* @param {Highcharts.SVGPathArray} toD
|
|
98
|
+
* Ending path definition.
|
|
99
|
+
*
|
|
100
|
+
* @return {Array<Highcharts.SVGPathArray,Highcharts.SVGPathArray>}
|
|
101
|
+
* An array containing start and end paths in array form so that
|
|
102
|
+
* they can be animated in parallel.
|
|
103
|
+
*/
|
|
104
|
+
initPath(elem: SVGElement, fromD: SVGPath | undefined, toD: SVGPath): [SVGPath, SVGPath];
|
|
105
|
+
/**
|
|
106
|
+
* Handle animation of the color attributes directly.
|
|
107
|
+
*
|
|
108
|
+
* @function Highcharts.Fx#fillSetter
|
|
109
|
+
*
|
|
110
|
+
*/
|
|
111
|
+
fillSetter(): void;
|
|
112
|
+
/**
|
|
113
|
+
* Handle animation of the color attributes directly.
|
|
114
|
+
*
|
|
115
|
+
* @function Highcharts.Fx#strokeSetter
|
|
116
|
+
*
|
|
117
|
+
*/
|
|
118
|
+
strokeSetter(): void;
|
|
119
|
+
}
|
|
120
|
+
interface Fx extends FxBase {
|
|
121
|
+
}
|
|
122
|
+
declare namespace Fx {
|
|
123
|
+
interface Timer {
|
|
124
|
+
(gotoEnd?: boolean): boolean;
|
|
125
|
+
elem?: (HTMLDOMElement | SVGElement);
|
|
126
|
+
prop?: string;
|
|
127
|
+
stopped?: boolean;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
export default Fx;
|
|
@@ -0,0 +1,388 @@
|
|
|
1
|
+
/* *
|
|
2
|
+
*
|
|
3
|
+
* (c) 2010-2025 Torstein Honsi
|
|
4
|
+
*
|
|
5
|
+
* License: www.highcharts.com/license
|
|
6
|
+
*
|
|
7
|
+
* !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
|
|
8
|
+
*
|
|
9
|
+
* */
|
|
10
|
+
'use strict';
|
|
11
|
+
import Color from '../Color/Color.js';
|
|
12
|
+
const { parse: color } = Color;
|
|
13
|
+
import H from '../Globals.js';
|
|
14
|
+
const { win } = H;
|
|
15
|
+
import U from '../Utilities.js';
|
|
16
|
+
const { isNumber, objectEach } = U;
|
|
17
|
+
/* eslint-disable no-invalid-this, valid-jsdoc */
|
|
18
|
+
/* *
|
|
19
|
+
*
|
|
20
|
+
* Class
|
|
21
|
+
*
|
|
22
|
+
* */
|
|
23
|
+
/**
|
|
24
|
+
* An animator object used internally. One instance applies to one property
|
|
25
|
+
* (attribute or style prop) on one element. Animation is always initiated
|
|
26
|
+
* through {@link SVGElement#animate}.
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* let rect = renderer.rect(0, 0, 10, 10).add();
|
|
30
|
+
* rect.animate({ width: 100 });
|
|
31
|
+
*
|
|
32
|
+
* @private
|
|
33
|
+
* @class
|
|
34
|
+
* @name Highcharts.Fx
|
|
35
|
+
*
|
|
36
|
+
* @param {Highcharts.HTMLDOMElement|Highcharts.SVGElement} elem
|
|
37
|
+
* The element to animate.
|
|
38
|
+
*
|
|
39
|
+
* @param {Partial<Highcharts.AnimationOptionsObject>} options
|
|
40
|
+
* Animation options.
|
|
41
|
+
*
|
|
42
|
+
* @param {string} prop
|
|
43
|
+
* The single attribute or CSS property to animate.
|
|
44
|
+
*/
|
|
45
|
+
class Fx {
|
|
46
|
+
/* *
|
|
47
|
+
*
|
|
48
|
+
* Constructors
|
|
49
|
+
*
|
|
50
|
+
* */
|
|
51
|
+
constructor(elem, options, prop) {
|
|
52
|
+
this.pos = NaN;
|
|
53
|
+
this.options = options;
|
|
54
|
+
this.elem = elem;
|
|
55
|
+
this.prop = prop;
|
|
56
|
+
}
|
|
57
|
+
/* *
|
|
58
|
+
*
|
|
59
|
+
* Functions
|
|
60
|
+
*
|
|
61
|
+
* */
|
|
62
|
+
/**
|
|
63
|
+
* Set the current step of a path definition on SVGElement.
|
|
64
|
+
*
|
|
65
|
+
* @function Highcharts.Fx#dSetter
|
|
66
|
+
*
|
|
67
|
+
*/
|
|
68
|
+
dSetter() {
|
|
69
|
+
const paths = this.paths, start = paths?.[0], end = paths?.[1], now = this.now || 0;
|
|
70
|
+
let path = [];
|
|
71
|
+
// Land on the final path without adjustment points appended in the ends
|
|
72
|
+
if (now === 1 || !start || !end) {
|
|
73
|
+
path = this.toD || [];
|
|
74
|
+
}
|
|
75
|
+
else if (start.length === end.length && now < 1) {
|
|
76
|
+
for (let i = 0; i < end.length; i++) {
|
|
77
|
+
// Tween between the start segment and the end segment. Start
|
|
78
|
+
// with a copy of the end segment and tween the appropriate
|
|
79
|
+
// numerics
|
|
80
|
+
const startSeg = start[i];
|
|
81
|
+
const endSeg = end[i];
|
|
82
|
+
const tweenSeg = [];
|
|
83
|
+
for (let j = 0; j < endSeg.length; j++) {
|
|
84
|
+
const startItem = startSeg[j];
|
|
85
|
+
const endItem = endSeg[j];
|
|
86
|
+
// Tween numbers
|
|
87
|
+
if (isNumber(startItem) &&
|
|
88
|
+
isNumber(endItem) &&
|
|
89
|
+
// Arc boolean flags
|
|
90
|
+
!(endSeg[0] === 'A' && (j === 4 || j === 5))) {
|
|
91
|
+
tweenSeg[j] = startItem + now * (endItem - startItem);
|
|
92
|
+
// Strings, take directly from the end segment
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
tweenSeg[j] = endItem;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
path.push(tweenSeg);
|
|
99
|
+
}
|
|
100
|
+
// If animation is finished or length not matching, land on right value
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
path = end;
|
|
104
|
+
}
|
|
105
|
+
this.elem.attr('d', path, void 0, true);
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Update the element with the current animation step.
|
|
109
|
+
*
|
|
110
|
+
* @function Highcharts.Fx#update
|
|
111
|
+
*
|
|
112
|
+
*/
|
|
113
|
+
update() {
|
|
114
|
+
const elem = this.elem, prop = this.prop, // If destroyed, it is null
|
|
115
|
+
now = this.now, step = this.options.step;
|
|
116
|
+
// Animation setter defined from outside
|
|
117
|
+
if (this[prop + 'Setter']) {
|
|
118
|
+
this[prop + 'Setter']();
|
|
119
|
+
// Other animations on SVGElement
|
|
120
|
+
}
|
|
121
|
+
else if (elem.attr) {
|
|
122
|
+
if (elem.element) {
|
|
123
|
+
elem.attr(prop, now, null, true);
|
|
124
|
+
}
|
|
125
|
+
// HTML styles, raw HTML content like container size
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
elem.style[prop] = now + this.unit;
|
|
129
|
+
}
|
|
130
|
+
if (step) {
|
|
131
|
+
step.call(elem, now, this);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Run an animation.
|
|
136
|
+
*
|
|
137
|
+
* @function Highcharts.Fx#run
|
|
138
|
+
*
|
|
139
|
+
* @param {number} from
|
|
140
|
+
* The current value, value to start from.
|
|
141
|
+
*
|
|
142
|
+
* @param {number} to
|
|
143
|
+
* The end value, value to land on.
|
|
144
|
+
*
|
|
145
|
+
* @param {string} unit
|
|
146
|
+
* The property unit, for example `px`.
|
|
147
|
+
*
|
|
148
|
+
*/
|
|
149
|
+
run(from, to, unit) {
|
|
150
|
+
const self = this, options = self.options, timer = function (gotoEnd) {
|
|
151
|
+
return timer.stopped ? false : self.step(gotoEnd);
|
|
152
|
+
}, requestAnimationFrame = win.requestAnimationFrame ||
|
|
153
|
+
function (step) {
|
|
154
|
+
setTimeout(step, 13);
|
|
155
|
+
}, step = function () {
|
|
156
|
+
for (let i = 0; i < Fx.timers.length; i++) {
|
|
157
|
+
if (!Fx.timers[i]()) {
|
|
158
|
+
Fx.timers.splice(i--, 1);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
if (Fx.timers.length) {
|
|
162
|
+
requestAnimationFrame(step);
|
|
163
|
+
}
|
|
164
|
+
};
|
|
165
|
+
if (from === to && !this.elem['forceAnimate:' + this.prop]) {
|
|
166
|
+
delete options.curAnim[this.prop];
|
|
167
|
+
if (options.complete &&
|
|
168
|
+
Object.keys(options.curAnim).length === 0) {
|
|
169
|
+
options.complete.call(this.elem);
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
else { // #7166
|
|
173
|
+
this.startTime = +new Date();
|
|
174
|
+
this.start = from;
|
|
175
|
+
this.end = to;
|
|
176
|
+
this.unit = unit;
|
|
177
|
+
this.now = this.start;
|
|
178
|
+
this.pos = 0;
|
|
179
|
+
timer.elem = this.elem;
|
|
180
|
+
timer.prop = this.prop;
|
|
181
|
+
if (timer() && Fx.timers.push(timer) === 1) {
|
|
182
|
+
requestAnimationFrame(step);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* Run a single step in the animation.
|
|
188
|
+
*
|
|
189
|
+
* @function Highcharts.Fx#step
|
|
190
|
+
*
|
|
191
|
+
* @param {boolean} [gotoEnd]
|
|
192
|
+
* Whether to go to the endpoint of the animation after abort.
|
|
193
|
+
*
|
|
194
|
+
* @return {boolean}
|
|
195
|
+
* Returns `true` if animation continues.
|
|
196
|
+
*/
|
|
197
|
+
step(gotoEnd) {
|
|
198
|
+
const t = +new Date(), options = this.options, elem = this.elem, complete = options.complete, duration = options.duration, curAnim = options.curAnim;
|
|
199
|
+
let ret, done;
|
|
200
|
+
if (!!elem.attr && !elem.element) { // #2616, element is destroyed
|
|
201
|
+
ret = false;
|
|
202
|
+
}
|
|
203
|
+
else if (gotoEnd || t >= duration + this.startTime) {
|
|
204
|
+
this.now = this.end;
|
|
205
|
+
this.pos = 1;
|
|
206
|
+
this.update();
|
|
207
|
+
curAnim[this.prop] = true;
|
|
208
|
+
done = true;
|
|
209
|
+
objectEach(curAnim, function (val) {
|
|
210
|
+
if (val !== true) {
|
|
211
|
+
done = false;
|
|
212
|
+
}
|
|
213
|
+
});
|
|
214
|
+
if (done && complete) {
|
|
215
|
+
complete.call(elem);
|
|
216
|
+
}
|
|
217
|
+
ret = false;
|
|
218
|
+
}
|
|
219
|
+
else {
|
|
220
|
+
this.pos = options.easing((t - this.startTime) / duration);
|
|
221
|
+
this.now = this.start + ((this.end -
|
|
222
|
+
this.start) * this.pos);
|
|
223
|
+
this.update();
|
|
224
|
+
ret = true;
|
|
225
|
+
}
|
|
226
|
+
return ret;
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Prepare start and end values so that the path can be animated one to one.
|
|
230
|
+
*
|
|
231
|
+
* @function Highcharts.Fx#initPath
|
|
232
|
+
*
|
|
233
|
+
* @param {Highcharts.SVGElement} elem
|
|
234
|
+
* The SVGElement item.
|
|
235
|
+
*
|
|
236
|
+
* @param {Highcharts.SVGPathArray|undefined} fromD
|
|
237
|
+
* Starting path definition.
|
|
238
|
+
*
|
|
239
|
+
* @param {Highcharts.SVGPathArray} toD
|
|
240
|
+
* Ending path definition.
|
|
241
|
+
*
|
|
242
|
+
* @return {Array<Highcharts.SVGPathArray,Highcharts.SVGPathArray>}
|
|
243
|
+
* An array containing start and end paths in array form so that
|
|
244
|
+
* they can be animated in parallel.
|
|
245
|
+
*/
|
|
246
|
+
initPath(elem, fromD, toD) {
|
|
247
|
+
const startX = elem.startX, endX = elem.endX, end = toD.slice(), // Copy
|
|
248
|
+
isArea = elem.isArea, positionFactor = isArea ? 2 : 1, disableAnimation = fromD &&
|
|
249
|
+
toD.length > fromD.length &&
|
|
250
|
+
toD.hasStackedCliffs; // #16925
|
|
251
|
+
let shift, fullLength, i, reverse, start = fromD?.slice(); // Copy
|
|
252
|
+
if (!start || disableAnimation) {
|
|
253
|
+
return [end, end];
|
|
254
|
+
}
|
|
255
|
+
/**
|
|
256
|
+
* If shifting points, prepend a dummy point to the end path.
|
|
257
|
+
* @private
|
|
258
|
+
*/
|
|
259
|
+
function prepend(arr, other) {
|
|
260
|
+
while (arr.length < fullLength) {
|
|
261
|
+
// Move to, line to or curve to?
|
|
262
|
+
const moveSegment = arr[0], otherSegment = other[fullLength - arr.length];
|
|
263
|
+
if (otherSegment && moveSegment[0] === 'M') {
|
|
264
|
+
if (otherSegment[0] === 'C') {
|
|
265
|
+
arr[0] = [
|
|
266
|
+
'C',
|
|
267
|
+
moveSegment[1],
|
|
268
|
+
moveSegment[2],
|
|
269
|
+
moveSegment[1],
|
|
270
|
+
moveSegment[2],
|
|
271
|
+
moveSegment[1],
|
|
272
|
+
moveSegment[2]
|
|
273
|
+
];
|
|
274
|
+
}
|
|
275
|
+
else {
|
|
276
|
+
arr[0] = ['L', moveSegment[1], moveSegment[2]];
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
// Prepend a copy of the first point
|
|
280
|
+
arr.unshift(moveSegment);
|
|
281
|
+
// For areas, the bottom path goes back again to the left, so we
|
|
282
|
+
// need to append a copy of the last point.
|
|
283
|
+
if (isArea) {
|
|
284
|
+
const z = arr.pop();
|
|
285
|
+
arr.push(arr[arr.length - 1], z); // Append point and the Z
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
/**
|
|
290
|
+
* Copy and append last point until the length matches the end length.
|
|
291
|
+
* @private
|
|
292
|
+
*/
|
|
293
|
+
function append(arr) {
|
|
294
|
+
while (arr.length < fullLength) {
|
|
295
|
+
// Pull out the slice that is going to be appended or inserted.
|
|
296
|
+
// In a line graph, the positionFactor is 1, and the last point
|
|
297
|
+
// is sliced out. In an area graph, the positionFactor is 2,
|
|
298
|
+
// causing the middle two points to be sliced out, since an area
|
|
299
|
+
// path starts at left, follows the upper path then turns and
|
|
300
|
+
// follows the bottom back.
|
|
301
|
+
const segmentToAdd = arr[Math.floor(arr.length / positionFactor) - 1].slice();
|
|
302
|
+
// Disable the first control point of curve segments
|
|
303
|
+
if (segmentToAdd[0] === 'C') {
|
|
304
|
+
segmentToAdd[1] = segmentToAdd[5];
|
|
305
|
+
segmentToAdd[2] = segmentToAdd[6];
|
|
306
|
+
}
|
|
307
|
+
if (!isArea) {
|
|
308
|
+
arr.push(segmentToAdd);
|
|
309
|
+
}
|
|
310
|
+
else {
|
|
311
|
+
const lowerSegmentToAdd = arr[Math.floor(arr.length / positionFactor)].slice();
|
|
312
|
+
arr.splice(arr.length / 2, 0, segmentToAdd, lowerSegmentToAdd);
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
// For sideways animation, find out how much we need to shift to get the
|
|
317
|
+
// start path Xs to match the end path Xs.
|
|
318
|
+
if (startX && endX && endX.length) {
|
|
319
|
+
for (i = 0; i < startX.length; i++) {
|
|
320
|
+
// Moving left, new points coming in on right
|
|
321
|
+
if (startX[i] === endX[0]) {
|
|
322
|
+
shift = i;
|
|
323
|
+
break;
|
|
324
|
+
// Moving right
|
|
325
|
+
}
|
|
326
|
+
else if (startX[0] ===
|
|
327
|
+
endX[endX.length - startX.length + i]) {
|
|
328
|
+
shift = i;
|
|
329
|
+
reverse = true;
|
|
330
|
+
break;
|
|
331
|
+
// Fixed from the right side, "scaling" left
|
|
332
|
+
}
|
|
333
|
+
else if (startX[startX.length - 1] ===
|
|
334
|
+
endX[endX.length - startX.length + i]) {
|
|
335
|
+
shift = startX.length - i;
|
|
336
|
+
break;
|
|
337
|
+
}
|
|
338
|
+
}
|
|
339
|
+
if (typeof shift === 'undefined') {
|
|
340
|
+
start = [];
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
if (start.length && isNumber(shift)) {
|
|
344
|
+
// The common target length for the start and end array, where both
|
|
345
|
+
// arrays are padded in opposite ends
|
|
346
|
+
fullLength = end.length + shift * positionFactor;
|
|
347
|
+
if (!reverse) {
|
|
348
|
+
prepend(end, start);
|
|
349
|
+
append(start);
|
|
350
|
+
}
|
|
351
|
+
else {
|
|
352
|
+
prepend(start, end);
|
|
353
|
+
append(end);
|
|
354
|
+
}
|
|
355
|
+
}
|
|
356
|
+
return [start, end];
|
|
357
|
+
}
|
|
358
|
+
/**
|
|
359
|
+
* Handle animation of the color attributes directly.
|
|
360
|
+
*
|
|
361
|
+
* @function Highcharts.Fx#fillSetter
|
|
362
|
+
*
|
|
363
|
+
*/
|
|
364
|
+
fillSetter() {
|
|
365
|
+
Fx.prototype.strokeSetter.apply(this, arguments);
|
|
366
|
+
}
|
|
367
|
+
/**
|
|
368
|
+
* Handle animation of the color attributes directly.
|
|
369
|
+
*
|
|
370
|
+
* @function Highcharts.Fx#strokeSetter
|
|
371
|
+
*
|
|
372
|
+
*/
|
|
373
|
+
strokeSetter() {
|
|
374
|
+
this.elem.attr(this.prop, color(this.start).tweenTo(color(this.end), this.pos), void 0, true);
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
/* *
|
|
378
|
+
*
|
|
379
|
+
* Static Properties
|
|
380
|
+
*
|
|
381
|
+
* */
|
|
382
|
+
Fx.timers = [];
|
|
383
|
+
/* *
|
|
384
|
+
*
|
|
385
|
+
* Default Export
|
|
386
|
+
*
|
|
387
|
+
* */
|
|
388
|
+
export default Fx;
|