@highcharts/grid-pro 2.2.0 → 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 +1262 -1122
- 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 +1 -2
- package/es-modules/Accessibility/Accessibility.js +1 -2
- package/es-modules/Accessibility/AccessibilityComponent.d.ts +2 -2
- package/es-modules/Accessibility/Components/InfoRegionsComponent.js +5 -6
- package/es-modules/Accessibility/Components/LegendComponent.js +1 -2
- package/es-modules/Accessibility/Components/MenuComponent.js +1 -2
- package/es-modules/Accessibility/Components/NavigatorComponent.js +3 -4
- package/es-modules/Accessibility/Components/RangeSelectorComponent.js +1 -2
- package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +1 -2
- package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +3 -4
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +3 -4
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +1 -2
- package/es-modules/Accessibility/Components/ZoomComponent.js +1 -2
- package/es-modules/Accessibility/FocusBorder.js +1 -2
- package/es-modules/Accessibility/KeyboardNavigation.js +1 -2
- package/es-modules/Accessibility/KeyboardNavigationHandler.js +1 -2
- package/es-modules/Accessibility/Options/A11yDefaults.d.ts +11 -0
- package/es-modules/Accessibility/Options/A11yDefaults.js +11 -0
- package/es-modules/Accessibility/Options/DeprecatedOptions.d.ts +58 -0
- package/es-modules/Accessibility/Options/DeprecatedOptions.js +7 -2
- package/es-modules/Accessibility/Options/LangDefaults.js +9 -0
- package/es-modules/Accessibility/ProxyElement.js +2 -5
- package/es-modules/Accessibility/ProxyProvider.js +1 -2
- package/es-modules/Accessibility/Utils/Announcer.js +2 -3
- package/es-modules/Accessibility/Utils/ChartUtilities.js +1 -2
- package/es-modules/Accessibility/Utils/EventProvider.d.ts +2 -2
- package/es-modules/Accessibility/Utils/EventProvider.js +6 -2
- package/es-modules/Accessibility/Utils/HTMLUtilities.js +1 -2
- package/es-modules/Core/Animation/AnimationUtilities.js +1 -2
- package/es-modules/Core/Animation/Fx.js +1 -2
- package/es-modules/Core/Callback.d.ts +9 -2
- package/es-modules/Core/Chart/Chart.js +48 -41
- package/es-modules/Core/Chart/Chart3D.js +1 -2
- package/es-modules/Core/Chart/ChartDefaults.js +11 -0
- package/es-modules/Core/Chart/ChartOptions.d.ts +8 -0
- package/es-modules/Core/Chart/GanttChart.js +1 -2
- package/es-modules/Core/Chart/MapChart.js +1 -2
- package/es-modules/Core/Chart/StockChart.js +2 -3
- package/es-modules/Core/Color/Color.js +1 -2
- package/es-modules/Core/Defaults.js +36 -9
- package/es-modules/Core/Delaunay.d.ts +52 -0
- package/es-modules/Core/Delaunay.js +310 -0
- package/es-modules/Core/Foundation.js +1 -2
- package/es-modules/Core/Geometry/CircleUtilities.js +1 -2
- package/es-modules/Core/Globals.js +1 -1
- package/es-modules/Core/HttpUtilities.js +1 -2
- package/es-modules/Core/MSPointer.js +1 -2
- package/es-modules/Core/Math3D.js +1 -2
- package/es-modules/Core/Options.d.ts +6 -2
- package/es-modules/Core/Pointer.js +23 -4
- package/es-modules/Core/PointerEvent.d.ts +2 -0
- package/es-modules/Core/Renderer/HTML/AST.js +2 -2
- package/es-modules/Core/Renderer/HTML/HTMLElement.js +1 -2
- package/es-modules/Core/Renderer/RendererUtilities.js +34 -19
- package/es-modules/Core/Responsive.d.ts +4 -2
- package/es-modules/Core/Responsive.js +10 -4
- package/es-modules/Core/Templating.d.ts +1 -1
- package/es-modules/Core/Templating.js +3 -4
- package/es-modules/Core/Time.d.ts +8 -0
- package/es-modules/Core/Time.js +2 -2
- package/es-modules/Core/Tooltip.d.ts +4 -8
- package/es-modules/Core/Tooltip.js +100 -81
- package/es-modules/Core/TooltipOptions.d.ts +44 -1
- package/es-modules/Core/Utilities.d.ts +25 -665
- package/es-modules/Core/Utilities.js +17 -1398
- package/es-modules/Data/ColumnUtils.d.ts +83 -80
- package/es-modules/Data/ColumnUtils.js +103 -113
- package/es-modules/Data/Connectors/CSVConnector.d.ts +9 -14
- package/es-modules/Data/Connectors/CSVConnector.js +3 -4
- package/es-modules/Data/Connectors/DataConnector.d.ts +52 -54
- package/es-modules/Data/Connectors/DataConnector.js +33 -52
- package/es-modules/Data/Connectors/GoogleSheetsConnector.d.ts +40 -42
- package/es-modules/Data/Connectors/GoogleSheetsConnector.js +73 -88
- package/es-modules/Data/Connectors/GoogleSheetsConnectorOptions.d.ts +4 -2
- package/es-modules/Data/Connectors/HTMLTableConnector.d.ts +23 -28
- package/es-modules/Data/Connectors/HTMLTableConnector.js +3 -4
- package/es-modules/Data/Connectors/JSONConnector.d.ts +9 -14
- package/es-modules/Data/Connectors/JSONConnector.js +3 -4
- package/es-modules/Data/Converters/CSVConverter.d.ts +5 -5
- package/es-modules/Data/Converters/CSVConverter.js +3 -4
- package/es-modules/Data/Converters/CSVConverterOptions.d.ts +2 -2
- package/es-modules/Data/Converters/DataConverter.d.ts +76 -78
- package/es-modules/Data/Converters/DataConverter.js +26 -53
- package/es-modules/Data/Converters/DataConverterUtils.d.ts +88 -81
- package/es-modules/Data/Converters/DataConverterUtils.js +169 -181
- package/es-modules/Data/Converters/GoogleSheetsConverter.d.ts +4 -4
- package/es-modules/Data/Converters/GoogleSheetsConverter.js +3 -3
- package/es-modules/Data/Converters/GoogleSheetsConverterOptions.d.ts +2 -2
- package/es-modules/Data/Converters/HTMLTableConverter.d.ts +4 -4
- package/es-modules/Data/Converters/HTMLTableConverter.js +2 -3
- package/es-modules/Data/Converters/HTMLTableConverterOptions.d.ts +2 -2
- package/es-modules/Data/Converters/JSONConverter.d.ts +7 -7
- package/es-modules/Data/Converters/JSONConverter.js +6 -6
- package/es-modules/Data/Converters/JSONConverterOptions.d.ts +2 -2
- package/es-modules/Data/DataCursor.d.ts +65 -70
- package/es-modules/Data/DataCursor.js +119 -139
- package/es-modules/Data/DataEvent.d.ts +55 -57
- package/es-modules/Data/DataPool.d.ts +10 -17
- package/es-modules/Data/DataPool.js +20 -9
- package/es-modules/Data/DataTable.d.ts +111 -113
- package/es-modules/Data/DataTable.js +3 -3
- package/es-modules/Data/DataTableCore.d.ts +9 -9
- package/es-modules/Data/DataTableCore.js +2 -2
- package/es-modules/Data/Formula/FormulaParser.js +1 -2
- package/es-modules/Data/Formula/FormulaProcessor.js +1 -2
- package/es-modules/Data/Modifiers/ChainModifier.d.ts +29 -34
- package/es-modules/Data/Modifiers/ChainModifier.js +7 -8
- package/es-modules/Data/Modifiers/DataModifier.d.ts +36 -41
- package/es-modules/Data/Modifiers/DataModifier.js +31 -53
- package/es-modules/Data/Modifiers/FilterModifier.d.ts +4 -4
- package/es-modules/Data/Modifiers/FilterModifier.js +3 -4
- package/es-modules/Data/Modifiers/FilterModifierOptions.d.ts +3 -2
- package/es-modules/Data/Modifiers/InvertModifier.d.ts +4 -4
- package/es-modules/Data/Modifiers/InvertModifier.js +3 -4
- package/es-modules/Data/Modifiers/MathModifier.d.ts +5 -4
- package/es-modules/Data/Modifiers/RangeModifier.d.ts +4 -4
- package/es-modules/Data/Modifiers/RangeModifier.js +3 -4
- package/es-modules/Data/Modifiers/SortModifier.d.ts +6 -11
- package/es-modules/Data/Modifiers/SortModifier.js +3 -4
- package/es-modules/Data/Modifiers/SortModifierOptions.d.ts +3 -3
- package/es-modules/Grid/Core/Accessibility/Accessibility.d.ts +1 -1
- package/es-modules/Grid/Core/Accessibility/Accessibility.js +5 -6
- 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 +4 -2
- package/es-modules/Grid/Core/Globals.d.ts +20 -16
- package/es-modules/Grid/Core/Globals.js +10 -8
- package/es-modules/Grid/Core/Grid.d.ts +31 -22
- package/es-modules/Grid/Core/Grid.js +214 -136
- package/es-modules/Grid/Core/GridUtils.d.ts +33 -0
- package/es-modules/Grid/Core/GridUtils.js +50 -3
- package/es-modules/Grid/Core/Options.d.ts +145 -4
- package/es-modules/Grid/Core/Pagination/Pagination.d.ts +3 -0
- package/es-modules/Grid/Core/Pagination/Pagination.js +63 -23
- package/es-modules/Grid/Core/Pagination/PaginationOptions.d.ts +4 -0
- package/es-modules/Grid/Core/Querying/FilteringController.js +1 -2
- package/es-modules/Grid/Core/Querying/PaginationController.d.ts +2 -2
- package/es-modules/Grid/Core/Querying/PaginationController.js +3 -3
- package/es-modules/Grid/Core/Querying/QueryingController.d.ts +1 -1
- package/es-modules/Grid/Core/Querying/QueryingController.js +2 -26
- 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 +2 -3
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterCell.d.ts +1 -1
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterCell.js +3 -4
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterRow.d.ts +1 -1
- package/es-modules/Grid/Core/Table/Actions/ColumnFiltering/FilterRow.js +2 -2
- package/es-modules/Grid/Core/Table/Actions/ColumnSorting.d.ts +17 -1
- package/es-modules/Grid/Core/Table/Actions/ColumnSorting.js +58 -15
- package/es-modules/Grid/Core/Table/Actions/ColumnsResizer.js +1 -3
- package/es-modules/Grid/Core/Table/Actions/RowsVirtualizer.d.ts +57 -3
- package/es-modules/Grid/Core/Table/Actions/RowsVirtualizer.js +397 -118
- 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 +27 -13
- package/es-modules/Grid/Core/Table/Body/TableCell.js +74 -25
- package/es-modules/Grid/Core/Table/Body/TableRow.d.ts +7 -15
- package/es-modules/Grid/Core/Table/Body/TableRow.js +24 -19
- package/es-modules/Grid/Core/Table/Cell.d.ts +16 -3
- package/es-modules/Grid/Core/Table/Cell.js +36 -3
- package/es-modules/Grid/Core/Table/CellContent/TextContent.js +3 -8
- package/es-modules/Grid/Core/Table/Column.d.ts +10 -4
- package/es-modules/Grid/Core/Table/Column.js +23 -34
- package/es-modules/Grid/Core/Table/ColumnResizing/IndependentResizingMode.js +9 -8
- package/es-modules/Grid/Core/Table/ColumnResizing/ResizingMode.js +4 -3
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ColumnToolbar.d.ts +5 -0
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ColumnToolbar.js +7 -2
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/FilterPopup.js +1 -2
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/FilterMenuButton.js +1 -2
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/MenuButtons/SortMenuButton.js +2 -3
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/FilterToolbarButton.js +1 -2
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/MenuToolbarButton.js +1 -2
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/SortToolbarButton.d.ts +0 -1
- package/es-modules/Grid/Core/Table/Header/ColumnToolbar/ToolbarButtons/SortToolbarButton.js +4 -14
- package/es-modules/Grid/Core/Table/Header/HeaderCell.d.ts +6 -1
- package/es-modules/Grid/Core/Table/Header/HeaderCell.js +33 -13
- package/es-modules/Grid/Core/Table/Header/HeaderRow.js +4 -5
- package/es-modules/Grid/Core/Table/Header/TableHeader.d.ts +1 -1
- package/es-modules/Grid/Core/Table/Header/TableHeader.js +3 -3
- package/es-modules/Grid/Core/Table/Row.d.ts +1 -1
- package/es-modules/Grid/Core/Table/Row.js +2 -2
- package/es-modules/Grid/Core/Table/Table.d.ts +38 -12
- package/es-modules/Grid/Core/Table/Table.js +184 -91
- package/es-modules/Grid/Core/UI/ContextMenuButton.d.ts +6 -7
- package/es-modules/Grid/Core/UI/ContextMenuButton.js +5 -3
- package/es-modules/Grid/Core/UI/Popup.js +7 -9
- package/es-modules/Grid/Core/UI/SvgIcons.d.ts +42 -7
- package/es-modules/Grid/Core/UI/SvgIcons.js +206 -33
- package/es-modules/Grid/Core/UI/Toolbar.d.ts +5 -0
- package/es-modules/Grid/Core/UI/ToolbarButton.d.ts +4 -12
- package/es-modules/Grid/Core/UI/ToolbarButton.js +8 -26
- package/es-modules/Grid/Pro/CellEditing/CellEditMode.d.ts +2 -2
- package/es-modules/Grid/Pro/CellEditing/CellEditing.js +10 -10
- package/es-modules/Grid/Pro/CellEditing/CellEditingComposition.js +1 -2
- package/es-modules/Grid/Pro/CellRendering/CellRenderersComposition.d.ts +1 -1
- package/es-modules/Grid/Pro/CellRendering/CellRenderersComposition.js +4 -2
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/CheckboxContent.d.ts +2 -2
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/NumberInputContent.js +1 -2
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/SelectContent.d.ts +2 -2
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/SparklineContent.js +1 -2
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/TextInputContent.d.ts +2 -2
- package/es-modules/Grid/Pro/CellRendering/ContentTypes/TextInputContent.js +1 -2
- package/es-modules/Grid/Pro/CellRendering/Renderers/CheckboxRenderer.js +1 -2
- package/es-modules/Grid/Pro/CellRendering/Renderers/DateInputRenderer.js +1 -2
- package/es-modules/Grid/Pro/CellRendering/Renderers/DateTimeInputRenderer.js +1 -2
- package/es-modules/Grid/Pro/CellRendering/Renderers/NumberInputRenderer.js +1 -2
- package/es-modules/Grid/Pro/CellRendering/Renderers/SelectRenderer.js +1 -2
- package/es-modules/Grid/Pro/CellRendering/Renderers/SparklineRenderer.d.ts +2 -2
- package/es-modules/Grid/Pro/CellRendering/Renderers/SparklineRenderer.js +1 -2
- package/es-modules/Grid/Pro/CellRendering/Renderers/TextInputRenderer.js +1 -2
- package/es-modules/Grid/Pro/CellRendering/Renderers/TextRenderer.js +1 -2
- package/es-modules/Grid/Pro/CellRendering/Renderers/TimeInputRenderer.js +1 -2
- package/es-modules/Grid/Pro/ColumnTypes/Validator.js +34 -32
- package/es-modules/Grid/Pro/ColumnTypes/ValidatorComposition.d.ts +1 -1
- package/es-modules/Grid/Pro/ColumnTypes/ValidatorComposition.js +3 -4
- package/es-modules/Grid/Pro/Credits/CreditsProComposition.js +1 -3
- 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 +1 -2
- package/es-modules/Grid/Pro/Export/ExportingComposition.js +1 -2
- package/es-modules/Grid/Pro/GridEvents.js +1 -2
- package/es-modules/Grid/Pro/Pagination/PaginationComposition.d.ts +0 -1
- package/es-modules/Grid/Pro/Pagination/PaginationComposition.js +1 -2
- package/es-modules/Shared/BaseForm.js +1 -2
- package/es-modules/Shared/DownloadURL.js +1 -2
- package/es-modules/Shared/TimeBase.js +3 -3
- package/es-modules/Shared/Types.d.ts +7 -0
- 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 +15 -11
- package/es-modules/masters/grid-pro.src.js +12 -5
- package/grid-pro.d.ts +15 -11
- package/grid-pro.js +3 -3
- package/grid-pro.js.map +1 -1
- package/grid-pro.src.d.ts +15 -11
- package/grid-pro.src.js +10408 -8009
- 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
|
@@ -1,87 +1,90 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import type { CellType as DataTableCellType, Column as DataTableColumn } from './DataTable';
|
|
2
2
|
import type Types from '../Shared/Types';
|
|
3
3
|
/**
|
|
4
4
|
* Utility functions for columns that can be either arrays or typed arrays.
|
|
5
5
|
* @private
|
|
6
6
|
*/
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
array: DataTable.Column;
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Result of the `splice` function.
|
|
17
|
-
*/
|
|
18
|
-
interface SpliceResult<T extends DataTable.Column> {
|
|
19
|
-
removed: T;
|
|
20
|
-
array: T;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Sets the length of the column array.
|
|
24
|
-
*
|
|
25
|
-
* @param {DataTable.Column} column
|
|
26
|
-
* Column to be modified.
|
|
27
|
-
*
|
|
28
|
-
* @param {number} length
|
|
29
|
-
* New length of the column.
|
|
30
|
-
*
|
|
31
|
-
* @param {boolean} asSubarray
|
|
32
|
-
* If column is a typed array, return a subarray instead of a new array. It
|
|
33
|
-
* is faster `O(1)`, but the entire buffer will be kept in memory until all
|
|
34
|
-
* views of it are destroyed. Default is `false`.
|
|
35
|
-
*
|
|
36
|
-
* @return {DataTable.Column}
|
|
37
|
-
* Modified column.
|
|
38
|
-
*
|
|
39
|
-
* @private
|
|
40
|
-
*/
|
|
41
|
-
function setLength(column: DataTable.Column, length: number, asSubarray?: boolean): DataTable.Column;
|
|
42
|
-
/**
|
|
43
|
-
* Splices a column array.
|
|
44
|
-
*
|
|
45
|
-
* @param {DataTable.Column} column
|
|
46
|
-
* Column to be modified.
|
|
47
|
-
*
|
|
48
|
-
* @param {number} start
|
|
49
|
-
* Index at which to start changing the array.
|
|
50
|
-
*
|
|
51
|
-
* @param {number} deleteCount
|
|
52
|
-
* An integer indicating the number of old array elements to remove.
|
|
53
|
-
*
|
|
54
|
-
* @param {boolean} removedAsSubarray
|
|
55
|
-
* If column is a typed array, return a subarray instead of a new array. It
|
|
56
|
-
* is faster `O(1)`, but the entire buffer will be kept in memory until all
|
|
57
|
-
* views to it are destroyed. Default is `true`.
|
|
58
|
-
*
|
|
59
|
-
* @param {Array<number>|TypedArray} items
|
|
60
|
-
* The elements to add to the array, beginning at the start index. If you
|
|
61
|
-
* don't specify any elements, `splice()` will only remove elements from the
|
|
62
|
-
* array.
|
|
63
|
-
*
|
|
64
|
-
* @return {SpliceResult}
|
|
65
|
-
* Object containing removed elements and the modified column.
|
|
66
|
-
*
|
|
67
|
-
* @private
|
|
68
|
-
*/
|
|
69
|
-
function splice(column: DataTable.Column, start: number, deleteCount: number, removedAsSubarray?: boolean, items?: DataTable.CellType[] | Types.TypedArray): SpliceResult<DataTable.Column>;
|
|
70
|
-
/**
|
|
71
|
-
* Converts a cell value to a number.
|
|
72
|
-
*
|
|
73
|
-
* @param {DataTable.CellType} value
|
|
74
|
-
* Cell value to convert to a number.
|
|
75
|
-
*
|
|
76
|
-
* @param {boolean} useNaN
|
|
77
|
-
* If `true`, returns `NaN` for non-numeric values; if `false`,
|
|
78
|
-
* returns `null` instead.
|
|
79
|
-
*
|
|
80
|
-
* @return {number | null}
|
|
81
|
-
* Number or `null` if the value is not a number.
|
|
82
|
-
*
|
|
83
|
-
* @private
|
|
84
|
-
*/
|
|
85
|
-
function convertToNumber(value?: DataTable.CellType, useNaN?: boolean): number | null;
|
|
7
|
+
/**
|
|
8
|
+
* Result of the `shift` function.
|
|
9
|
+
*/
|
|
10
|
+
export interface ShiftResult {
|
|
11
|
+
value: DataTableCellType;
|
|
12
|
+
array: DataTableColumn;
|
|
86
13
|
}
|
|
14
|
+
/**
|
|
15
|
+
* Result of the `splice` function.
|
|
16
|
+
*/
|
|
17
|
+
export interface SpliceResult<T extends DataTableColumn> {
|
|
18
|
+
removed: T;
|
|
19
|
+
array: T;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Sets the length of the column array.
|
|
23
|
+
*
|
|
24
|
+
* @param {DataTableColumn} column
|
|
25
|
+
* Column to be modified.
|
|
26
|
+
*
|
|
27
|
+
* @param {number} length
|
|
28
|
+
* New length of the column.
|
|
29
|
+
*
|
|
30
|
+
* @param {boolean} asSubarray
|
|
31
|
+
* If column is a typed array, return a subarray instead of a new array. It
|
|
32
|
+
* is faster `O(1)`, but the entire buffer will be kept in memory until all
|
|
33
|
+
* views of it are destroyed. Default is `false`.
|
|
34
|
+
*
|
|
35
|
+
* @return {DataTableColumn}
|
|
36
|
+
* Modified column.
|
|
37
|
+
*
|
|
38
|
+
* @private
|
|
39
|
+
*/
|
|
40
|
+
export declare function setLength(column: DataTableColumn, length: number, asSubarray?: boolean): DataTableColumn;
|
|
41
|
+
/**
|
|
42
|
+
* Splices a column array.
|
|
43
|
+
*
|
|
44
|
+
* @param {DataTableColumn} column
|
|
45
|
+
* Column to be modified.
|
|
46
|
+
*
|
|
47
|
+
* @param {number} start
|
|
48
|
+
* Index at which to start changing the array.
|
|
49
|
+
*
|
|
50
|
+
* @param {number} deleteCount
|
|
51
|
+
* An integer indicating the number of old array elements to remove.
|
|
52
|
+
*
|
|
53
|
+
* @param {boolean} removedAsSubarray
|
|
54
|
+
* If column is a typed array, return a subarray instead of a new array. It
|
|
55
|
+
* is faster `O(1)`, but the entire buffer will be kept in memory until all
|
|
56
|
+
* views to it are destroyed. Default is `true`.
|
|
57
|
+
*
|
|
58
|
+
* @param {Array<number>|TypedArray} items
|
|
59
|
+
* The elements to add to the array, beginning at the start index. If you
|
|
60
|
+
* don't specify any elements, `splice()` will only remove elements from the
|
|
61
|
+
* array.
|
|
62
|
+
*
|
|
63
|
+
* @return {SpliceResult}
|
|
64
|
+
* Object containing removed elements and the modified column.
|
|
65
|
+
*
|
|
66
|
+
* @private
|
|
67
|
+
*/
|
|
68
|
+
export declare function splice(column: DataTableColumn, start: number, deleteCount: number, removedAsSubarray?: boolean, items?: DataTableCellType[] | Types.TypedArray): SpliceResult<DataTableColumn>;
|
|
69
|
+
/**
|
|
70
|
+
* Converts a cell value to a number.
|
|
71
|
+
*
|
|
72
|
+
* @param {DataTableCellType} value
|
|
73
|
+
* Cell value to convert to a number.
|
|
74
|
+
*
|
|
75
|
+
* @param {boolean} useNaN
|
|
76
|
+
* If `true`, returns `NaN` for non-numeric values; if `false`,
|
|
77
|
+
* returns `null` instead.
|
|
78
|
+
*
|
|
79
|
+
* @return {number | null}
|
|
80
|
+
* Number or `null` if the value is not a number.
|
|
81
|
+
*
|
|
82
|
+
* @private
|
|
83
|
+
*/
|
|
84
|
+
export declare function convertToNumber(value?: DataTableCellType, useNaN?: boolean): number | null;
|
|
85
|
+
declare const ColumnUtils: {
|
|
86
|
+
convertToNumber: typeof convertToNumber;
|
|
87
|
+
setLength: typeof setLength;
|
|
88
|
+
splice: typeof splice;
|
|
89
|
+
};
|
|
87
90
|
export default ColumnUtils;
|
|
@@ -10,131 +10,121 @@
|
|
|
10
10
|
* - Dawid Dragula
|
|
11
11
|
*
|
|
12
12
|
* */
|
|
13
|
+
/* *
|
|
14
|
+
*
|
|
15
|
+
* Functions
|
|
16
|
+
*
|
|
17
|
+
* */
|
|
13
18
|
/**
|
|
14
|
-
*
|
|
19
|
+
* Sets the length of the column array.
|
|
20
|
+
*
|
|
21
|
+
* @param {DataTableColumn} column
|
|
22
|
+
* Column to be modified.
|
|
23
|
+
*
|
|
24
|
+
* @param {number} length
|
|
25
|
+
* New length of the column.
|
|
26
|
+
*
|
|
27
|
+
* @param {boolean} asSubarray
|
|
28
|
+
* If column is a typed array, return a subarray instead of a new array. It
|
|
29
|
+
* is faster `O(1)`, but the entire buffer will be kept in memory until all
|
|
30
|
+
* views of it are destroyed. Default is `false`.
|
|
31
|
+
*
|
|
32
|
+
* @return {DataTableColumn}
|
|
33
|
+
* Modified column.
|
|
34
|
+
*
|
|
15
35
|
* @private
|
|
16
36
|
*/
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
* Declarations
|
|
22
|
-
*
|
|
23
|
-
* */
|
|
24
|
-
/* *
|
|
25
|
-
*
|
|
26
|
-
* Functions
|
|
27
|
-
*
|
|
28
|
-
* */
|
|
29
|
-
/**
|
|
30
|
-
* Sets the length of the column array.
|
|
31
|
-
*
|
|
32
|
-
* @param {DataTable.Column} column
|
|
33
|
-
* Column to be modified.
|
|
34
|
-
*
|
|
35
|
-
* @param {number} length
|
|
36
|
-
* New length of the column.
|
|
37
|
-
*
|
|
38
|
-
* @param {boolean} asSubarray
|
|
39
|
-
* If column is a typed array, return a subarray instead of a new array. It
|
|
40
|
-
* is faster `O(1)`, but the entire buffer will be kept in memory until all
|
|
41
|
-
* views of it are destroyed. Default is `false`.
|
|
42
|
-
*
|
|
43
|
-
* @return {DataTable.Column}
|
|
44
|
-
* Modified column.
|
|
45
|
-
*
|
|
46
|
-
* @private
|
|
47
|
-
*/
|
|
48
|
-
function setLength(column, length, asSubarray) {
|
|
49
|
-
if (Array.isArray(column)) {
|
|
50
|
-
column.length = length;
|
|
51
|
-
return column;
|
|
52
|
-
}
|
|
53
|
-
return column[asSubarray ? 'subarray' : 'slice'](0, length);
|
|
37
|
+
export function setLength(column, length, asSubarray) {
|
|
38
|
+
if (Array.isArray(column)) {
|
|
39
|
+
column.length = length;
|
|
40
|
+
return column;
|
|
54
41
|
}
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
return {
|
|
89
|
-
removed: column.splice(start, deleteCount, ...items),
|
|
90
|
-
array: column
|
|
91
|
-
};
|
|
42
|
+
return column[asSubarray ? 'subarray' : 'slice'](0, length);
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Splices a column array.
|
|
46
|
+
*
|
|
47
|
+
* @param {DataTableColumn} column
|
|
48
|
+
* Column to be modified.
|
|
49
|
+
*
|
|
50
|
+
* @param {number} start
|
|
51
|
+
* Index at which to start changing the array.
|
|
52
|
+
*
|
|
53
|
+
* @param {number} deleteCount
|
|
54
|
+
* An integer indicating the number of old array elements to remove.
|
|
55
|
+
*
|
|
56
|
+
* @param {boolean} removedAsSubarray
|
|
57
|
+
* If column is a typed array, return a subarray instead of a new array. It
|
|
58
|
+
* is faster `O(1)`, but the entire buffer will be kept in memory until all
|
|
59
|
+
* views to it are destroyed. Default is `true`.
|
|
60
|
+
*
|
|
61
|
+
* @param {Array<number>|TypedArray} items
|
|
62
|
+
* The elements to add to the array, beginning at the start index. If you
|
|
63
|
+
* don't specify any elements, `splice()` will only remove elements from the
|
|
64
|
+
* array.
|
|
65
|
+
*
|
|
66
|
+
* @return {SpliceResult}
|
|
67
|
+
* Object containing removed elements and the modified column.
|
|
68
|
+
*
|
|
69
|
+
* @private
|
|
70
|
+
*/
|
|
71
|
+
export function splice(column, start, deleteCount, removedAsSubarray, items = []) {
|
|
72
|
+
if (Array.isArray(column)) {
|
|
73
|
+
if (!Array.isArray(items)) {
|
|
74
|
+
items = Array.from(items);
|
|
92
75
|
}
|
|
93
|
-
const Constructor = Object.getPrototypeOf(column)
|
|
94
|
-
.constructor;
|
|
95
|
-
const removed = column[removedAsSubarray ? 'subarray' : 'slice'](start, start + deleteCount);
|
|
96
|
-
const newLength = column.length - deleteCount + items.length;
|
|
97
|
-
const result = new Constructor(newLength);
|
|
98
|
-
result.set(column.subarray(0, start), 0);
|
|
99
|
-
result.set(items, start);
|
|
100
|
-
result.set(column.subarray(start + deleteCount), start + items.length);
|
|
101
76
|
return {
|
|
102
|
-
removed:
|
|
103
|
-
array:
|
|
77
|
+
removed: column.splice(start, deleteCount, ...items),
|
|
78
|
+
array: column
|
|
104
79
|
};
|
|
105
80
|
}
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
81
|
+
const Constructor = Object.getPrototypeOf(column)
|
|
82
|
+
.constructor;
|
|
83
|
+
const removed = column[removedAsSubarray ? 'subarray' : 'slice'](start, start + deleteCount);
|
|
84
|
+
const newLength = column.length - deleteCount + items.length;
|
|
85
|
+
const result = new Constructor(newLength);
|
|
86
|
+
result.set(column.subarray(0, start), 0);
|
|
87
|
+
result.set(items, start);
|
|
88
|
+
result.set(column.subarray(start + deleteCount), start + items.length);
|
|
89
|
+
return {
|
|
90
|
+
removed: removed,
|
|
91
|
+
array: result
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Converts a cell value to a number.
|
|
96
|
+
*
|
|
97
|
+
* @param {DataTableCellType} value
|
|
98
|
+
* Cell value to convert to a number.
|
|
99
|
+
*
|
|
100
|
+
* @param {boolean} useNaN
|
|
101
|
+
* If `true`, returns `NaN` for non-numeric values; if `false`,
|
|
102
|
+
* returns `null` instead.
|
|
103
|
+
*
|
|
104
|
+
* @return {number | null}
|
|
105
|
+
* Number or `null` if the value is not a number.
|
|
106
|
+
*
|
|
107
|
+
* @private
|
|
108
|
+
*/
|
|
109
|
+
export function convertToNumber(value, useNaN) {
|
|
110
|
+
switch (typeof value) {
|
|
111
|
+
case 'boolean':
|
|
112
|
+
return (value ? 1 : 0);
|
|
113
|
+
case 'number':
|
|
114
|
+
return (isNaN(value) && !useNaN ? null : value);
|
|
115
|
+
default:
|
|
116
|
+
value = parseFloat(`${value ?? ''}`);
|
|
117
|
+
return (isNaN(value) && !useNaN ? null : value);
|
|
132
118
|
}
|
|
133
|
-
|
|
134
|
-
})(ColumnUtils || (ColumnUtils = {}));
|
|
119
|
+
}
|
|
135
120
|
/* *
|
|
136
121
|
*
|
|
137
122
|
* Default Export
|
|
138
123
|
*
|
|
139
124
|
* */
|
|
125
|
+
const ColumnUtils = {
|
|
126
|
+
convertToNumber,
|
|
127
|
+
setLength,
|
|
128
|
+
splice
|
|
129
|
+
};
|
|
140
130
|
export default ColumnUtils;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import type { DataEventDetail } from '../DataEvent';
|
|
2
2
|
import type CSVConnectorOptions from './CSVConnectorOptions';
|
|
3
3
|
import CSVConverter from '../Converters/CSVConverter.js';
|
|
4
|
-
import DataConnector from './DataConnector.js';
|
|
4
|
+
import DataConnector, { type Event as DataConnectorEvent } from './DataConnector.js';
|
|
5
5
|
/**
|
|
6
6
|
* Class that handles creating a DataConnector from CSV
|
|
7
7
|
*
|
|
@@ -29,31 +29,26 @@ declare class CSVConnector extends DataConnector {
|
|
|
29
29
|
* Overrides the DataConnector method. Emits an event on the connector to
|
|
30
30
|
* all registered callbacks of this event.
|
|
31
31
|
*
|
|
32
|
-
* @param {
|
|
32
|
+
* @param {Event} e
|
|
33
33
|
* Event object containing additional event information.
|
|
34
34
|
*/
|
|
35
|
-
emit(e:
|
|
35
|
+
emit(e: Event): void;
|
|
36
36
|
/**
|
|
37
37
|
* Initiates the loading of the CSV source to the connector
|
|
38
38
|
*
|
|
39
|
-
* @param {
|
|
39
|
+
* @param {DataEventDetail} [eventDetail]
|
|
40
40
|
* Custom information for pending events.
|
|
41
41
|
*
|
|
42
42
|
* @emits CSVConnector#load
|
|
43
43
|
* @emits CSVConnector#afterLoad
|
|
44
44
|
*/
|
|
45
|
-
load(eventDetail?:
|
|
45
|
+
load(eventDetail?: DataEventDetail): Promise<this>;
|
|
46
46
|
}
|
|
47
47
|
/**
|
|
48
|
-
*
|
|
48
|
+
* Event objects fired from CSVConnector events.
|
|
49
49
|
*/
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
* Event objects fired from CSVConnector events.
|
|
53
|
-
*/
|
|
54
|
-
interface Event extends DataConnector.Event {
|
|
55
|
-
readonly csv?: string;
|
|
56
|
-
}
|
|
50
|
+
export interface Event extends DataConnectorEvent {
|
|
51
|
+
readonly csv?: string;
|
|
57
52
|
}
|
|
58
53
|
declare module './DataConnectorType' {
|
|
59
54
|
interface DataConnectorTypes {
|
|
@@ -17,8 +17,7 @@
|
|
|
17
17
|
'use strict';
|
|
18
18
|
import CSVConverter from '../Converters/CSVConverter.js';
|
|
19
19
|
import DataConnector from './DataConnector.js';
|
|
20
|
-
import
|
|
21
|
-
const { merge, fireEvent } = U;
|
|
20
|
+
import { fireEvent, merge } from '../../Shared/Utilities.js';
|
|
22
21
|
/* *
|
|
23
22
|
*
|
|
24
23
|
* Class
|
|
@@ -58,7 +57,7 @@ class CSVConnector extends DataConnector {
|
|
|
58
57
|
* Overrides the DataConnector method. Emits an event on the connector to
|
|
59
58
|
* all registered callbacks of this event.
|
|
60
59
|
*
|
|
61
|
-
* @param {
|
|
60
|
+
* @param {Event} e
|
|
62
61
|
* Event object containing additional event information.
|
|
63
62
|
*/
|
|
64
63
|
emit(e) {
|
|
@@ -67,7 +66,7 @@ class CSVConnector extends DataConnector {
|
|
|
67
66
|
/**
|
|
68
67
|
* Initiates the loading of the CSV source to the connector
|
|
69
68
|
*
|
|
70
|
-
* @param {
|
|
69
|
+
* @param {DataEventDetail} [eventDetail]
|
|
71
70
|
* Custom information for pending events.
|
|
72
71
|
*
|
|
73
72
|
* @emits CSVConnector#load
|
|
@@ -1,14 +1,36 @@
|
|
|
1
1
|
import type { DataConnectorTypes } from './DataConnectorType';
|
|
2
2
|
import type { DataConnectorOptions, MetaColumn, Metadata } from './DataConnectorOptions';
|
|
3
|
-
import type DataEvent from '../DataEvent';
|
|
3
|
+
import type { DataEvent, DataEventCallback, DataEventEmitter } from '../DataEvent';
|
|
4
4
|
import type DataConverterType from '../Converters/DataConverterType';
|
|
5
5
|
import DataConverter from '../Converters/DataConverter.js';
|
|
6
|
-
import DataTable from '../DataTable.js';
|
|
6
|
+
import DataTable, { type ColumnCollection as DataTableColumnCollection } from '../DataTable.js';
|
|
7
7
|
import { DeepPartial } from '../../Shared/Types';
|
|
8
8
|
/**
|
|
9
9
|
* Abstract class providing an interface for managing a DataConnector.
|
|
10
10
|
*/
|
|
11
|
-
declare abstract class DataConnector implements
|
|
11
|
+
declare abstract class DataConnector implements DataEventEmitter<Event> {
|
|
12
|
+
/**
|
|
13
|
+
* Registry as a record object with connector names and their class.
|
|
14
|
+
*/
|
|
15
|
+
static types: DataConnectorTypes;
|
|
16
|
+
/**
|
|
17
|
+
* Adds a connector class to the registry. The connector has to provide the
|
|
18
|
+
* `DataConnector.options` property and the `DataConnector.load` method to
|
|
19
|
+
* modify the table.
|
|
20
|
+
*
|
|
21
|
+
* @private
|
|
22
|
+
*
|
|
23
|
+
* @param {string} key
|
|
24
|
+
* Registry key of the connector class.
|
|
25
|
+
*
|
|
26
|
+
* @param {DataConnectorType} DataConnectorClass
|
|
27
|
+
* Connector class (aka class constructor) to register.
|
|
28
|
+
*
|
|
29
|
+
* @return {boolean}
|
|
30
|
+
* Returns true, if the registration was successful. False is returned, if
|
|
31
|
+
* their is already a connector registered with this key.
|
|
32
|
+
*/
|
|
33
|
+
static registerType<T extends keyof DataConnectorTypes>(key: T, DataConnectorClass: DataConnectorTypes[T]): boolean;
|
|
12
34
|
/**
|
|
13
35
|
* The DataConverter responsible for handling conversion of provided data to
|
|
14
36
|
* a DataConnector.
|
|
@@ -63,14 +85,14 @@ declare abstract class DataConnector implements DataEvent.Emitter<DataConnector.
|
|
|
63
85
|
* @param {string} name
|
|
64
86
|
* The name of the column to be described.
|
|
65
87
|
*
|
|
66
|
-
* @param {
|
|
88
|
+
* @param {MetaColumn} columnMeta
|
|
67
89
|
* The metadata to apply to the column.
|
|
68
90
|
*/
|
|
69
91
|
describeColumn(name: string, columnMeta: MetaColumn): void;
|
|
70
92
|
/**
|
|
71
93
|
* Method for applying columns meta information to the whole DataConnector.
|
|
72
94
|
*
|
|
73
|
-
* @param {
|
|
95
|
+
* @param {Record<string, MetaColumn>} columns
|
|
74
96
|
* Pairs of column names and MetaColumn objects.
|
|
75
97
|
*/
|
|
76
98
|
describeColumns(columns: Record<string, MetaColumn>): void;
|
|
@@ -88,7 +110,7 @@ declare abstract class DataConnector implements DataEvent.Emitter<DataConnector.
|
|
|
88
110
|
* @return {Highcharts.DataTableColumnCollection}
|
|
89
111
|
* An object with the properties `columnIds` and `columnValues`
|
|
90
112
|
*/
|
|
91
|
-
getSortedColumns():
|
|
113
|
+
getSortedColumns(): DataTableColumnCollection;
|
|
92
114
|
/**
|
|
93
115
|
* Sets the index and order of columns.
|
|
94
116
|
*
|
|
@@ -135,10 +157,10 @@ declare abstract class DataConnector implements DataEvent.Emitter<DataConnector.
|
|
|
135
157
|
* Emits an event on the connector to all registered callbacks of this
|
|
136
158
|
* event.
|
|
137
159
|
*
|
|
138
|
-
* @param {
|
|
160
|
+
* @param {Event} e
|
|
139
161
|
* Event object containing additional event information.
|
|
140
162
|
*/
|
|
141
|
-
emit(e:
|
|
163
|
+
emit(e: Event): void;
|
|
142
164
|
/**
|
|
143
165
|
* Registers a callback for a specific connector event.
|
|
144
166
|
*
|
|
@@ -151,7 +173,7 @@ declare abstract class DataConnector implements DataEvent.Emitter<DataConnector.
|
|
|
151
173
|
* @return {Function}
|
|
152
174
|
* Function to unregister callback from the connector event.
|
|
153
175
|
*/
|
|
154
|
-
on<T extends
|
|
176
|
+
on<T extends Event['type']>(type: T, callback: DataEventCallback<this, Extract<Event, {
|
|
155
177
|
type: T;
|
|
156
178
|
}>>): Function;
|
|
157
179
|
/**
|
|
@@ -161,55 +183,31 @@ declare abstract class DataConnector implements DataEvent.Emitter<DataConnector.
|
|
|
161
183
|
* @param {T}[data]
|
|
162
184
|
* Data specific to the corresponding converter.
|
|
163
185
|
*
|
|
164
|
-
* @param {
|
|
186
|
+
* @param {CreateConverterFunction}[createConverter]
|
|
165
187
|
* Creates a specific converter combining the dataTable options.
|
|
166
188
|
*
|
|
167
|
-
* @param {
|
|
189
|
+
* @param {ParseDataFunction<T>}[parseData]
|
|
168
190
|
* Runs the converter parse method with the specific data type.
|
|
169
191
|
*/
|
|
170
|
-
initConverters<T>(data: T, createConverter:
|
|
192
|
+
initConverters<T>(data: T, createConverter: CreateConverterFunction, parseData: ParseDataFunction<T>): void;
|
|
171
193
|
}
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
(converter: DataConverterType, data: T): DataTable.ColumnCollection;
|
|
191
|
-
}
|
|
192
|
-
/**
|
|
193
|
-
* Registry as a record object with connector names and their class.
|
|
194
|
-
*/
|
|
195
|
-
const types: DataConnectorTypes;
|
|
196
|
-
/**
|
|
197
|
-
* Adds a connector class to the registry. The connector has to provide the
|
|
198
|
-
* `DataConnector.options` property and the `DataConnector.load` method to
|
|
199
|
-
* modify the table.
|
|
200
|
-
*
|
|
201
|
-
* @private
|
|
202
|
-
*
|
|
203
|
-
* @param {string} key
|
|
204
|
-
* Registry key of the connector class.
|
|
205
|
-
*
|
|
206
|
-
* @param {DataConnectorType} DataConnectorClass
|
|
207
|
-
* Connector class (aka class constructor) to register.
|
|
208
|
-
*
|
|
209
|
-
* @return {boolean}
|
|
210
|
-
* Returns true, if the registration was successful. False is returned, if
|
|
211
|
-
* their is already a connector registered with this key.
|
|
212
|
-
*/
|
|
213
|
-
function registerType<T extends keyof DataConnectorTypes>(key: T, DataConnectorClass: DataConnectorTypes[T]): boolean;
|
|
194
|
+
/**
|
|
195
|
+
* The event type that is provided on events within DataConnector.
|
|
196
|
+
*/
|
|
197
|
+
export interface Event extends DataEvent {
|
|
198
|
+
readonly type: ('loadError' | 'load' | 'afterLoad' | 'beforeUpdate' | 'afterUpdate');
|
|
199
|
+
readonly error?: string | Error;
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* Creates a specific converter combining the dataTable options.
|
|
203
|
+
*/
|
|
204
|
+
export interface CreateConverterFunction {
|
|
205
|
+
(key: string): DataConverterType;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Runs the converter parse method with the specific data type.
|
|
209
|
+
*/
|
|
210
|
+
export interface ParseDataFunction<T> {
|
|
211
|
+
(converter: DataConverterType, data: T): DataTableColumnCollection;
|
|
214
212
|
}
|
|
215
213
|
export default DataConnector;
|