@deephaven/iris-grid 0.13.3-beta.0 → 0.14.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.
Files changed (184) hide show
  1. package/dist/AdvancedFilterCreator.d.ts +69 -63
  2. package/dist/AdvancedFilterCreator.d.ts.map +1 -1
  3. package/dist/AdvancedFilterCreator.js +79 -73
  4. package/dist/AdvancedFilterCreator.js.map +1 -1
  5. package/dist/AdvancedFilterCreatorSelectValue.d.ts +45 -45
  6. package/dist/AdvancedFilterCreatorSelectValue.d.ts.map +1 -1
  7. package/dist/AdvancedFilterCreatorSelectValue.js +32 -36
  8. package/dist/AdvancedFilterCreatorSelectValue.js.map +1 -1
  9. package/dist/AdvancedFilterCreatorSelectValueList.d.ts +47 -52
  10. package/dist/AdvancedFilterCreatorSelectValueList.d.ts.map +1 -1
  11. package/dist/AdvancedFilterCreatorSelectValueList.js +24 -39
  12. package/dist/AdvancedFilterCreatorSelectValueList.js.map +1 -1
  13. package/dist/ColumnStatistics.d.ts +34 -22
  14. package/dist/ColumnStatistics.d.ts.map +1 -1
  15. package/dist/ColumnStatistics.js +8 -12
  16. package/dist/ColumnStatistics.js.map +1 -1
  17. package/dist/CommonTypes.d.ts +58 -0
  18. package/dist/CommonTypes.d.ts.map +1 -0
  19. package/dist/CommonTypes.js +2 -0
  20. package/dist/CommonTypes.js.map +1 -0
  21. package/dist/CrossColumnSearch.d.ts +26 -24
  22. package/dist/CrossColumnSearch.d.ts.map +1 -1
  23. package/dist/CrossColumnSearch.js +9 -13
  24. package/dist/CrossColumnSearch.js.map +1 -1
  25. package/dist/FilterInputField.d.ts +48 -51
  26. package/dist/FilterInputField.d.ts.map +1 -1
  27. package/dist/FilterInputField.js +30 -27
  28. package/dist/FilterInputField.js.map +1 -1
  29. package/dist/IrisGrid.d.ts +409 -453
  30. package/dist/IrisGrid.d.ts.map +1 -1
  31. package/dist/IrisGrid.js +514 -449
  32. package/dist/IrisGrid.js.map +1 -1
  33. package/dist/IrisGridCellOverflowModal.d.ts +1 -1
  34. package/dist/IrisGridCellOverflowModal.d.ts.map +1 -1
  35. package/dist/IrisGridCellOverflowModal.js.map +1 -1
  36. package/dist/IrisGridCopyHandler.d.ts +52 -46
  37. package/dist/IrisGridCopyHandler.d.ts.map +1 -1
  38. package/dist/IrisGridCopyHandler.js +22 -38
  39. package/dist/IrisGridCopyHandler.js.map +1 -1
  40. package/dist/IrisGridMetricCalculator.d.ts +5 -4
  41. package/dist/IrisGridMetricCalculator.d.ts.map +1 -1
  42. package/dist/IrisGridMetricCalculator.js +5 -1
  43. package/dist/IrisGridMetricCalculator.js.map +1 -1
  44. package/dist/IrisGridModel.d.ts +37 -35
  45. package/dist/IrisGridModel.d.ts.map +1 -1
  46. package/dist/IrisGridModel.js +19 -3
  47. package/dist/IrisGridModel.js.map +1 -1
  48. package/dist/IrisGridModelFactory.d.ts +7 -5
  49. package/dist/IrisGridModelFactory.d.ts.map +1 -1
  50. package/dist/IrisGridModelFactory.js +5 -5
  51. package/dist/IrisGridModelFactory.js.map +1 -1
  52. package/dist/IrisGridModelUpdater.d.ts +13 -11
  53. package/dist/IrisGridModelUpdater.d.ts.map +1 -1
  54. package/dist/IrisGridModelUpdater.js.map +1 -1
  55. package/dist/IrisGridPartitionSelector.d.ts +38 -39
  56. package/dist/IrisGridPartitionSelector.d.ts.map +1 -1
  57. package/dist/IrisGridPartitionSelector.js +18 -24
  58. package/dist/IrisGridPartitionSelector.js.map +1 -1
  59. package/dist/IrisGridProxyModel.d.ts +111 -32
  60. package/dist/IrisGridProxyModel.d.ts.map +1 -1
  61. package/dist/IrisGridProxyModel.js +212 -170
  62. package/dist/IrisGridProxyModel.js.map +1 -1
  63. package/dist/IrisGridRenderer.d.ts +59 -31
  64. package/dist/IrisGridRenderer.d.ts.map +1 -1
  65. package/dist/IrisGridRenderer.js +92 -46
  66. package/dist/IrisGridRenderer.js.map +1 -1
  67. package/dist/IrisGridTableModel.d.ts +48 -147
  68. package/dist/IrisGridTableModel.d.ts.map +1 -1
  69. package/dist/IrisGridTableModel.js +58 -1381
  70. package/dist/IrisGridTableModel.js.map +1 -1
  71. package/dist/IrisGridTableModelTemplate.d.ts +219 -0
  72. package/dist/IrisGridTableModelTemplate.d.ts.map +1 -0
  73. package/dist/IrisGridTableModelTemplate.js +1623 -0
  74. package/dist/IrisGridTableModelTemplate.js.map +1 -0
  75. package/dist/IrisGridTestUtils.d.ts +18 -14
  76. package/dist/IrisGridTestUtils.d.ts.map +1 -1
  77. package/dist/IrisGridTestUtils.js +29 -1
  78. package/dist/IrisGridTestUtils.js.map +1 -1
  79. package/dist/IrisGridTheme.d.ts +35 -3
  80. package/dist/IrisGridTheme.d.ts.map +1 -1
  81. package/dist/IrisGridTheme.js.map +1 -1
  82. package/dist/IrisGridTreeTableModel.d.ts +26 -7
  83. package/dist/IrisGridTreeTableModel.d.ts.map +1 -1
  84. package/dist/IrisGridTreeTableModel.js +24 -14
  85. package/dist/IrisGridTreeTableModel.js.map +1 -1
  86. package/dist/IrisGridUtils.d.ts +257 -162
  87. package/dist/IrisGridUtils.d.ts.map +1 -1
  88. package/dist/IrisGridUtils.js +132 -95
  89. package/dist/IrisGridUtils.js.map +1 -1
  90. package/dist/MissingKeyError.d.ts +5 -3
  91. package/dist/MissingKeyError.d.ts.map +1 -1
  92. package/dist/MissingKeyError.js.map +1 -1
  93. package/dist/PartitionSelectorSearch.d.ts +61 -40
  94. package/dist/PartitionSelectorSearch.d.ts.map +1 -1
  95. package/dist/PartitionSelectorSearch.js +25 -15
  96. package/dist/PartitionSelectorSearch.js.map +1 -1
  97. package/dist/PendingDataBottomBar.d.ts +3 -6
  98. package/dist/PendingDataBottomBar.d.ts.map +1 -1
  99. package/dist/PendingDataBottomBar.js.map +1 -1
  100. package/dist/TableViewportUpdater.d.ts +39 -55
  101. package/dist/TableViewportUpdater.d.ts.map +1 -1
  102. package/dist/TableViewportUpdater.js +42 -64
  103. package/dist/TableViewportUpdater.js.map +1 -1
  104. package/dist/TreeTableViewportUpdater.d.ts +29 -37
  105. package/dist/TreeTableViewportUpdater.d.ts.map +1 -1
  106. package/dist/TreeTableViewportUpdater.js +39 -50
  107. package/dist/TreeTableViewportUpdater.js.map +1 -1
  108. package/dist/index.d.ts +9 -0
  109. package/dist/index.d.ts.map +1 -1
  110. package/dist/index.js +9 -0
  111. package/dist/index.js.map +1 -1
  112. package/dist/mousehandlers/IrisGridCellOverflowMouseHandler.d.ts.map +1 -1
  113. package/dist/mousehandlers/IrisGridCellOverflowMouseHandler.js.map +1 -1
  114. package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.d.ts +1 -1
  115. package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.d.ts.map +1 -1
  116. package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.js +2 -0
  117. package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.js.map +1 -1
  118. package/dist/mousehandlers/IrisGridColumnTooltipMouseHandler.js +1 -1
  119. package/dist/mousehandlers/IrisGridColumnTooltipMouseHandler.js.map +1 -1
  120. package/dist/mousehandlers/IrisGridContextMenuHandler.d.ts +41 -130
  121. package/dist/mousehandlers/IrisGridContextMenuHandler.d.ts.map +1 -1
  122. package/dist/mousehandlers/IrisGridContextMenuHandler.js +426 -317
  123. package/dist/mousehandlers/IrisGridContextMenuHandler.js.map +1 -1
  124. package/dist/mousehandlers/IrisGridFilterMouseHandler.d.ts.map +1 -1
  125. package/dist/mousehandlers/IrisGridFilterMouseHandler.js +2 -2
  126. package/dist/mousehandlers/IrisGridFilterMouseHandler.js.map +1 -1
  127. package/dist/mousehandlers/IrisGridSortMouseHandler.js +1 -1
  128. package/dist/mousehandlers/IrisGridSortMouseHandler.js.map +1 -1
  129. package/dist/mousehandlers/PendingMouseHandler.d.ts +8 -4
  130. package/dist/mousehandlers/PendingMouseHandler.d.ts.map +1 -1
  131. package/dist/mousehandlers/PendingMouseHandler.js +4 -5
  132. package/dist/mousehandlers/PendingMouseHandler.js.map +1 -1
  133. package/dist/sidebar/ChartBuilder.d.ts +48 -33
  134. package/dist/sidebar/ChartBuilder.d.ts.map +1 -1
  135. package/dist/sidebar/ChartBuilder.js +28 -27
  136. package/dist/sidebar/ChartBuilder.js.map +1 -1
  137. package/dist/sidebar/CustomColumnBuilder.d.ts +51 -41
  138. package/dist/sidebar/CustomColumnBuilder.d.ts.map +1 -1
  139. package/dist/sidebar/CustomColumnBuilder.js +22 -18
  140. package/dist/sidebar/CustomColumnBuilder.js.map +1 -1
  141. package/dist/sidebar/CustomColumnInput.d.ts +26 -36
  142. package/dist/sidebar/CustomColumnInput.d.ts.map +1 -1
  143. package/dist/sidebar/CustomColumnInput.js +11 -20
  144. package/dist/sidebar/CustomColumnInput.js.map +1 -1
  145. package/dist/sidebar/InputEditor.d.ts +34 -35
  146. package/dist/sidebar/InputEditor.d.ts.map +1 -1
  147. package/dist/sidebar/InputEditor.js +43 -24
  148. package/dist/sidebar/InputEditor.js.map +1 -1
  149. package/dist/sidebar/RollupRows.d.ts +67 -52
  150. package/dist/sidebar/RollupRows.d.ts.map +1 -1
  151. package/dist/sidebar/RollupRows.js +51 -53
  152. package/dist/sidebar/RollupRows.js.map +1 -1
  153. package/dist/sidebar/SelectDistinctBuilder.d.ts +27 -21
  154. package/dist/sidebar/SelectDistinctBuilder.d.ts.map +1 -1
  155. package/dist/sidebar/SelectDistinctBuilder.js +6 -10
  156. package/dist/sidebar/SelectDistinctBuilder.js.map +1 -1
  157. package/dist/sidebar/TableCsvExporter.d.ts +42 -39
  158. package/dist/sidebar/TableCsvExporter.d.ts.map +1 -1
  159. package/dist/sidebar/TableCsvExporter.js +12 -20
  160. package/dist/sidebar/TableCsvExporter.js.map +1 -1
  161. package/dist/sidebar/TableSaver.d.ts +59 -60
  162. package/dist/sidebar/TableSaver.d.ts.map +1 -1
  163. package/dist/sidebar/TableSaver.js +154 -68
  164. package/dist/sidebar/TableSaver.js.map +1 -1
  165. package/dist/sidebar/VisibilityOrderingBuilder.d.ts +56 -45
  166. package/dist/sidebar/VisibilityOrderingBuilder.d.ts.map +1 -1
  167. package/dist/sidebar/VisibilityOrderingBuilder.js +34 -29
  168. package/dist/sidebar/VisibilityOrderingBuilder.js.map +1 -1
  169. package/dist/sidebar/aggregations/Aggregations.d.ts.map +1 -1
  170. package/dist/sidebar/aggregations/Aggregations.js.map +1 -1
  171. package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.d.ts +2 -1
  172. package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.d.ts.map +1 -1
  173. package/dist/sidebar/conditional-formatting/ConditionalFormattingMenu.js.map +1 -1
  174. package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.d.ts +6 -5
  175. package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.d.ts.map +1 -1
  176. package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.js +5 -0
  177. package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.js.map +1 -1
  178. package/dist/sidebar/icons/index.d.ts +7 -7
  179. package/dist/sidebar/icons/index.d.ts.map +1 -1
  180. package/dist/sidebar/icons/index.js.map +1 -1
  181. package/dist/sidebar/index.d.ts +12 -12
  182. package/dist/sidebar/index.d.ts.map +1 -1
  183. package/dist/sidebar/index.js.map +1 -1
  184. package/package.json +17 -16
@@ -1,248 +1,343 @@
1
- export default IrisGridUtils;
1
+ import { GridRange, ModelIndex, ModelSizeMap, MoveOperation, VisibleIndex } from '@deephaven/grid';
2
+ import { Column, DateWrapper, FilterCondition, LongWrapper, RangeSet, RollupConfig, Sort, Table, TableData } from '@deephaven/jsapi-shim';
3
+ import { ReverseType, SortDirection, FormattingRule } from '@deephaven/jsapi-utils';
4
+ import { IrisGridProps, IrisGridState } from './IrisGrid';
5
+ import { ColumnName, AdvancedFilterMap, QuickFilterMap, AdvancedFilter, InputFilter, QuickFilter, CellData, UIRow, AdvancedFilterOptions } from './CommonTypes';
6
+ import { UIRollupConfig } from './sidebar/RollupRows';
7
+ import { AggregationSettings } from './sidebar/aggregations/Aggregations';
8
+ import { FormattingRule as SidebarFormattingRule } from './sidebar/conditional-formatting/ConditionalFormattingUtils';
9
+ import IrisGridModel from './IrisGridModel';
10
+ export interface DehydratedIrisGridState {
11
+ advancedFilters: [
12
+ number,
13
+ {
14
+ options: AdvancedFilterOptions;
15
+ }
16
+ ][];
17
+ aggregationSettings: AggregationSettings;
18
+ customColumnFormatMap: [string, FormattingRule][];
19
+ isFilterBarShown: boolean;
20
+ quickFilters: [
21
+ number,
22
+ {
23
+ text: string;
24
+ }
25
+ ][];
26
+ sorts: {
27
+ column: ModelIndex;
28
+ isAbs: boolean;
29
+ direction: SortDirection;
30
+ }[];
31
+ userColumnWidths: [ColumnName, number][];
32
+ userRowHeights: [number, number][];
33
+ customColumns: ColumnName[];
34
+ conditionalFormats: SidebarFormattingRule[];
35
+ reverseType: ReverseType;
36
+ rollupConfig?: UIRollupConfig;
37
+ showSearchBar: boolean;
38
+ searchValue: string;
39
+ selectDistinctColumns: ColumnName[];
40
+ selectedSearchColumns: ColumnName[];
41
+ invertSearchColumns: boolean;
42
+ pendingDataMap: DehydratedPendingDataMap<string | CellData | null>;
43
+ frozenColumns: ColumnName[];
44
+ }
45
+ declare type DehydratedPendingDataMap<T> = [number, {
46
+ data: [string, T][];
47
+ }][];
2
48
  declare class IrisGridUtils {
3
49
  /**
4
50
  * Exports the state from Grid component to a JSON stringifiable object
5
- * @param {IrisGridModel} model The table model to export the Grid state for
6
- * @param {Object} gridState The state of the Grid to export
7
- * @returns {Object} An object that can be stringified and imported with {{@link hydrateGridState}}
51
+ * @param model The table model to export the Grid state for
52
+ * @param gridState The state of the Grid to export
53
+ * @returns An object that can be stringified and imported with {{@link hydrateGridState}}
8
54
  */
9
- static dehydrateGridState(model: IrisGridModel, gridState: Object): Object;
55
+ static dehydrateGridState(model: IrisGridModel, gridState: Pick<IrisGridProps, 'isStuckToBottom' | 'isStuckToRight' | 'movedColumns' | 'movedRows'>): {
56
+ isStuckToBottom: boolean;
57
+ isStuckToRight: boolean;
58
+ movedColumns: {
59
+ from: string;
60
+ to: string;
61
+ }[];
62
+ movedRows: MoveOperation[];
63
+ };
10
64
  /**
11
65
  * Import a state for Grid that was exported with {{@link dehydrateGridState}}
12
- * @param {IrisGridModel} model The table model to import the state for
13
- * @param {Object} gridState The state of the panel that was saved
14
- * @returns {Object} The gridState props to set on the Grid
66
+ * @param model The table model to import the state for
67
+ * @param gridState The state of the panel that was saved
68
+ * @returns The gridState props to set on the Grid
15
69
  */
16
- static hydrateGridState(model: IrisGridModel, gridState: Object, customColumns?: any[]): Object;
70
+ static hydrateGridState(model: IrisGridModel, gridState: {
71
+ isStuckToBottom: boolean;
72
+ isStuckToRight: boolean;
73
+ movedColumns: {
74
+ from: string | ModelIndex;
75
+ to: string | ModelIndex;
76
+ }[];
77
+ movedRows: MoveOperation[];
78
+ }, customColumns?: never[]): Pick<IrisGridProps, 'isStuckToBottom' | 'isStuckToRight' | 'movedColumns' | 'movedRows'>;
17
79
  /**
18
80
  * Exports the state from IrisGrid to a JSON stringifiable object
19
- * @param {IrisGridModel} model The table model to export the state for
20
- * @param {Object} irisGridState The current state of the IrisGrid
21
- */
22
- static dehydrateIrisGridState(model: IrisGridModel, irisGridState: Object): {
23
- advancedFilters: Object;
24
- advancedSettings: any[];
25
- aggregationSettings: any;
26
- customColumnFormatMap: any[];
27
- isFilterBarShown: any;
28
- quickFilters: Object;
29
- sorts: Object;
30
- userColumnWidths: any[][];
31
- userRowHeights: any[];
32
- customColumns: any[];
33
- conditionalFormats: any[];
34
- reverseType: any;
35
- rollupConfig: any;
36
- showSearchBar: any;
37
- searchValue: any;
38
- selectDistinctColumns: any[];
39
- selectedSearchColumns: any;
40
- invertSearchColumns: any;
41
- pendingDataMap: any[][];
42
- frozenColumns: any;
43
- };
81
+ * @param model The table model to export the state for
82
+ * @param irisGridState The current state of the IrisGrid
83
+ */
84
+ static dehydrateIrisGridState(model: IrisGridModel, irisGridState: IrisGridState): DehydratedIrisGridState;
44
85
  /**
45
86
  * Import a state for IrisGrid that was exported with {{@link dehydrateIrisGridState}}
46
- * @param {IrisGridModel} model The table model to import the state with
47
- * @param {Object} irisGridState The saved IrisGrid state
48
- */
49
- static hydrateIrisGridState(model: IrisGridModel, irisGridState: Object): {
50
- advancedFilters: AdvancedFilter[];
51
- advancedSettings: Map<any, any>;
52
- aggregationSettings: any;
53
- customColumnFormatMap: Map<any, any>;
54
- isFilterBarShown: any;
55
- quickFilters: QuickFilter[];
56
- sorts: dh.Sort[];
57
- userColumnWidths: Map<any, any>;
58
- customColumns: any;
59
- conditionalFormats: any;
60
- userRowHeights: Map<any, any>;
61
- reverseType: any;
62
- rollupConfig: any;
63
- showSearchBar: any;
64
- searchValue: any;
65
- selectDistinctColumns: any;
66
- selectedSearchColumns: any;
67
- invertSearchColumns: any;
68
- pendingDataMap: Map<any, any>;
69
- frozenColumns: any;
70
- };
87
+ * @param model The table model to import the state with
88
+ * @param irisGridState The saved IrisGrid state
89
+ */
90
+ static hydrateIrisGridState(model: IrisGridModel, irisGridState: DehydratedIrisGridState): Partial<IrisGridProps>;
71
91
  /**
72
92
  * Export the IrisGridPanel state.
73
- * @param {IrisGridModel} model The table model the state is being dehydrated with
74
- * @param {Object} irisGridPanelState The current IrisGridPanel state
75
- * @returns {Object} The dehydrated IrisGridPanel state
93
+ * @param model The table model the state is being dehydrated with
94
+ * @param irisGridPanelState The current IrisGridPanel state
95
+ * @returns The dehydrated IrisGridPanel state
76
96
  */
77
- static dehydrateIrisGridPanelState(model: IrisGridModel, irisGridPanelState: Object): Object;
97
+ static dehydrateIrisGridPanelState(model: IrisGridModel, irisGridPanelState: {
98
+ isSelectingPartition: boolean;
99
+ partition: string;
100
+ partitionColumn: Column;
101
+ advancedSettings: unknown;
102
+ }): {
103
+ isSelectingPartition: boolean;
104
+ partition: string;
105
+ partitionColumn: ColumnName | null;
106
+ };
78
107
  /**
79
108
  * Import the saved IrisGridPanel state.
80
- * @param {IrisGridModel} model The model the state is being hydrated with
81
- * @param {Object} irisGridPanelState Exported IrisGridPanel state
82
- * @returns {Object} The state to apply to the IrisGridPanel
109
+ * @param model The model the state is being hydrated with
110
+ * @param irisGridPanelState Exported IrisGridPanel state
111
+ * @returns The state to apply to the IrisGridPanel
83
112
  */
84
- static hydrateIrisGridPanelState(model: IrisGridModel, irisGridPanelState: Object): Object;
113
+ static hydrateIrisGridPanelState(model: IrisGridModel, irisGridPanelState: {
114
+ isSelectingPartition: boolean;
115
+ partition: string;
116
+ partitionColumn: ColumnName;
117
+ }): {
118
+ isSelectingPartition: boolean;
119
+ partition: string;
120
+ partitionColumn?: Column | null;
121
+ };
85
122
  /**
86
123
  * Export the quick filters to JSON striginfiable object
87
- * @param {AdvancedFilter[]} quickFilters The quick filters to dehydrate
88
- * @returns {Object} The dehydrated quick filters
124
+ * @param quickFilters The quick filters to dehydrate
125
+ * @returns The dehydrated quick filters
89
126
  */
90
- static dehydrateQuickFilters(quickFilters: AdvancedFilter[]): Object;
127
+ static dehydrateQuickFilters(quickFilters: QuickFilterMap): [number, {
128
+ text: string;
129
+ }][];
91
130
  /**
92
131
  * Import the saved quick filters to apply to the columns. Does not actually apply the filters.
93
- * @param {dh.Column[]} columns The columns the filters will be applied to
94
- * @param {Object[]} savedQuickFilters Exported quick filters definitions
95
- * @param {string} timeZone The time zone to make this value in if it is a date type. E.g. America/New_York
96
- * @returns {QuickFilter[]} The quick filters to apply to the columns
132
+ * @param columns The columns the filters will be applied to
133
+ * @param savedQuickFilters Exported quick filters definitions
134
+ * @param timeZone The time zone to make this value in if it is a date type. E.g. America/New_York
135
+ * @returns The quick filters to apply to the columns
97
136
  */
98
- static hydrateQuickFilters(columns: dh.Column[], savedQuickFilters: Object[], timeZone: string): QuickFilter[];
137
+ static hydrateQuickFilters(columns: Column[], savedQuickFilters: [number, {
138
+ text: string;
139
+ }][], timeZone?: string): QuickFilterMap;
99
140
  /**
100
141
  * Export the advanced filters from the provided columns to JSON striginfiable object
101
- * @param {dh.Column[]} columns The columns for the filters
102
- * @param {AdvancedFilter[]} advancedFilters The advanced filters to dehydrate
103
- * @returns {Object} The dehydrated advanced filters
142
+ * @param columns The columns for the filters
143
+ * @param advancedFilters The advanced filters to dehydrate
144
+ * @returns The dehydrated advanced filters
104
145
  */
105
- static dehydrateAdvancedFilters(columns: dh.Column[], advancedFilters: AdvancedFilter[]): Object;
146
+ static dehydrateAdvancedFilters(columns: Column[], advancedFilters: AdvancedFilterMap): [number, {
147
+ options: AdvancedFilterOptions;
148
+ }][];
106
149
  /**
107
150
  * Import the saved advanced filters to apply to the columns. Does not actually apply the filters.
108
- * @param {dh.Columns[]} columns The columns the filters will be applied to
109
- * @param {Object[]} savedAdvancedFilters Exported advanced filters definitions
110
- * @param {string} timeZone The time zone to make this filter in if it is a date type. E.g. America/New_York
111
- * @returns {AdvancedFilter[]} The advanced filters to apply to the columns
151
+ * @param columns The columns the filters will be applied to
152
+ * @param savedAdvancedFilters Exported advanced filters definitions
153
+ * @param timeZone The time zone to make this filter in if it is a date type. E.g. America/New_York
154
+ * @returns The advanced filters to apply to the columns
112
155
  */
113
- static hydrateAdvancedFilters(columns: dh.Columns[], savedAdvancedFilters: Object[], timeZone: string): AdvancedFilter[];
114
- static dehydrateAdvancedFilterOptions(column: any, options: any): any;
115
- static hydrateAdvancedFilterOptions(column: any, options: any): any;
116
- static dehydratePendingDataMap(columns: any, pendingDataMap: any): any[][];
117
- static hydratePendingDataMap(columns: any, pendingDataMap: any): Map<any, any>;
156
+ static hydrateAdvancedFilters(columns: Column[], savedAdvancedFilters: [number, {
157
+ options: AdvancedFilterOptions;
158
+ }][], timeZone: string): AdvancedFilterMap;
159
+ static dehydrateAdvancedFilterOptions(column: Column, options: AdvancedFilterOptions): AdvancedFilterOptions;
160
+ static hydrateAdvancedFilterOptions(column: Column, options: AdvancedFilterOptions): AdvancedFilterOptions;
161
+ static dehydratePendingDataMap(columns: Column[], pendingDataMap: Map<number, UIRow | {
162
+ data: Map<ModelIndex, string>;
163
+ }>): DehydratedPendingDataMap<CellData | string | null>;
164
+ static hydratePendingDataMap(columns: Column[], pendingDataMap: DehydratedPendingDataMap<CellData | string | null>): Map<number, {
165
+ data: Map<ModelIndex | null, string | CellData | LongWrapper | null>;
166
+ }>;
118
167
  /**
119
168
  * Dehydrates/serializes a value for storage.
120
- * @param {Any} value The value to dehydrate
121
- * @param {String} columnType The column type
169
+ * @param value The value to dehydrate
170
+ * @param columnType The column type
122
171
  */
123
- static dehydrateValue(value: Any, columnType: string): any;
172
+ static dehydrateValue<T>(value: T, columnType: string): string | T | null;
124
173
  /**
125
174
  * Hydrate a value from it's serialized state
126
- * @param {Any} value The dehydrated value that needs to be hydrated
127
- * @param {String} columnType The type of column
175
+ * @param value The dehydrated value that needs to be hydrated
176
+ * @param columnType The type of column
128
177
  */
129
- static hydrateValue(value: Any, columnType: string): any;
130
- static dehydrateDateTime(value: any): string | null;
131
- static hydrateDateTime(value: any): import("@deephaven/jsapi-shim").DateWrapper | null;
132
- static dehydrateLong(value: any): string | null;
133
- static hydrateLong(value: any): import("@deephaven/jsapi-shim").LongWrapper | null;
178
+ static hydrateValue<T>(value: T, columnType: string): DateWrapper | LongWrapper | T | null;
179
+ static dehydrateDateTime(value: number | DateWrapper | Date): string | null;
180
+ static hydrateDateTime(value: string): DateWrapper | null;
181
+ static dehydrateLong<T>(value: T): string | null;
182
+ static hydrateLong(value: string): LongWrapper | null;
134
183
  /**
135
184
  * Export the sorts from the provided table sorts to JSON stringifiable object
136
- * @param {dh.Sort[]} sorts The table sorts
137
- * @returns {Object} The dehydrated sorts
185
+ * @param sorts The table sorts
186
+ * @returns The dehydrated sorts
138
187
  */
139
- static dehydrateSort(sorts: dh.Sort[]): Object;
188
+ static dehydrateSort(sorts: Sort[]): {
189
+ column: ModelIndex;
190
+ isAbs: boolean;
191
+ direction: SortDirection;
192
+ }[];
140
193
  /**
141
194
  * Import the saved sorts to apply to the table. Does not actually apply the sort.
142
- * @param {dh.Column[]} columns The columns the sorts will be applied to
143
- * @param {Object[]} sorts Exported sort definitions
144
- * @returns {dh.Sort[]} The sorts to apply to the table
195
+ * @param columns The columns the sorts will be applied to
196
+ * @param sorts Exported sort definitions
197
+ * @returns The sorts to apply to the table
145
198
  */
146
- static hydrateSort(columns: dh.Column[], sorts: Object[]): dh.Sort[];
199
+ static hydrateSort(columns: Column[], sorts: {
200
+ column: number;
201
+ isAbs: boolean;
202
+ direction: SortDirection;
203
+ }[]): Sort[];
147
204
  /**
148
205
  * Pulls just the table settings from the panel state, eg. filters/sorts
149
- * @param {Object} panelState The dehydrated panel state
150
- * @returns {Object} A dehydrated table settings object, { partition, partitionColumn, advancedFilters, quickFilters, sorts }
206
+ * @param panelState The dehydrated panel state
207
+ * @returns A dehydrated table settings object, { partition, partitionColumn, advancedFilters, quickFilters, sorts }
151
208
  */
152
- static extractTableSettings(panelState: Object, inputFilters?: any[]): Object;
209
+ static extractTableSettings(panelState: {
210
+ irisGridState: IrisGridState;
211
+ irisGridPanelState: {
212
+ partitionColumn: ColumnName;
213
+ partition: unknown;
214
+ };
215
+ }, inputFilters?: InputFilter[]): {
216
+ partitionColumn: ColumnName;
217
+ partition: unknown;
218
+ advancedFilters: AdvancedFilterMap;
219
+ inputFilters: InputFilter[];
220
+ quickFilters: QuickFilterMap;
221
+ sorts: Sort[];
222
+ };
153
223
  /**
154
224
  * Applies the passed in table settings directly to the provided table
155
- * @param {dh.Table} table The table to apply the settings to
156
- * @param {Object} tableSettings Dehydrated table settings extracted with `extractTableSettings`
157
- * @param {string} timeZone The time zone to make this value in if it is a date type. E.g. America/New_York
225
+ * @param table The table to apply the settings to
226
+ * @param tableSettings Dehydrated table settings extracted with `extractTableSettings`
227
+ * @param timeZone The time zone to make this value in if it is a date type. E.g. America/New_York
158
228
  */
159
- static applyTableSettings(table: dh.Table, tableSettings: Object, timeZone: string): void;
160
- static getInputFiltersForColumns(columns: any, inputFilters?: any[]): any[];
161
- static getFiltersFromInputFilters(columns: any, inputFilters: any[] | undefined, timeZone: any): (import("@deephaven/jsapi-shim").FilterCondition | null)[];
162
- static getFiltersFromFilterMap(filterMap: any): any[];
229
+ static applyTableSettings(table: Table, tableSettings: {
230
+ quickFilters?: [
231
+ number,
232
+ {
233
+ text: string;
234
+ }
235
+ ][];
236
+ advancedFilters?: [
237
+ number,
238
+ {
239
+ options: AdvancedFilterOptions;
240
+ }
241
+ ][];
242
+ inputFilters?: InputFilter[];
243
+ sorts?: {
244
+ column: ModelIndex;
245
+ isAbs: boolean;
246
+ direction: SortDirection;
247
+ }[];
248
+ partition?: unknown;
249
+ partitionColumn?: ColumnName;
250
+ }, timeZone: string): void;
251
+ static getInputFiltersForColumns(columns: Column[], inputFilters?: InputFilter[]): InputFilter[];
252
+ static getFiltersFromInputFilters(columns: Column[], inputFilters: InputFilter[] | undefined, timeZone: string): FilterCondition[];
253
+ static getFiltersFromFilterMap(filterMap: Map<ModelIndex, QuickFilter | AdvancedFilter | null>): FilterCondition[];
163
254
  /**
164
255
  * Get array of hidden column indexes
165
- * @param {Map} userColumnWidths Map of user column widths
166
- * @returns {number[]} Array of hidden column indexes
167
- */
168
- static getHiddenColumns(userColumnWidths: Map<any, any>): number[];
169
- static parseCustomColumnNames(customColumns: any): any;
170
- static getRemovedCustomColumnNames(oldCustomColumns: any, customColumns: any): any;
171
- static removeSortsInColumns(sorts: any, columnNames: any): any;
172
- static removeFiltersInColumns(columns: any, filters: any, removedColumnNames: any): Map<any, any>;
173
- static removeColumnFromMovedColumns(columns: any, movedColumns: any, removedColumnNames: any): any[];
174
- static removeColumnsFromSelectDistinctColumns(selectDistinctColumns: any, removedColumnNames: any): any;
175
- static getVisibleColumnsInRange(tableColumns: any, left: any, right: any, movedColumns: any, hiddenColumns: any): any[];
176
- static getPrevVisibleColumns(tableColumns: any, startIndex: any, count: any, movedColumns: any, hiddenColumns: any): any[];
177
- static getNextVisibleColumns(tableColumns: any, startIndex: any, count: any, movedColumns: any, hiddenColumns: any): any[];
178
- static getColumnsToFetch(tableColumns: any, viewportColumns: any, alwaysFetchColumnNames: any): any[];
179
- static getModelViewportColumns(columns: any, left: any, right: any, movedColumns?: any[], hiddenColumns?: any[], alwaysFetchColumnNames?: any[], bufferPages?: number): any[] | null;
256
+ * @param userColumnWidths Map of user column widths
257
+ * @returns Array of hidden column indexes
258
+ */
259
+ static getHiddenColumns(userColumnWidths: ModelSizeMap): number[];
260
+ static parseCustomColumnNames(customColumns: ColumnName[]): ColumnName[];
261
+ static getRemovedCustomColumnNames(oldCustomColumns: ColumnName[], customColumns: ColumnName[]): ColumnName[];
262
+ static removeSortsInColumns(sorts: Sort[], columnNames: string[]): Sort[];
263
+ static removeFiltersInColumns<T>(columns: Column[], filters: Map<number, T>, removedColumnNames: ColumnName[]): Map<number, T>;
264
+ static removeColumnFromMovedColumns(columns: Column[], movedColumns: MoveOperation[], removedColumnNames: ColumnName[]): MoveOperation[];
265
+ static removeColumnsFromSelectDistinctColumns(selectDistinctColumns: ColumnName[], removedColumnNames: ColumnName[]): ColumnName[];
266
+ static getVisibleColumnsInRange(tableColumns: Column[], left: number, right: number, movedColumns: MoveOperation[], hiddenColumns: number[]): Column[];
267
+ static getPrevVisibleColumns(tableColumns: Column[], startIndex: VisibleIndex, count: number, movedColumns: MoveOperation[], hiddenColumns: VisibleIndex[]): Column[];
268
+ static getNextVisibleColumns(tableColumns: Column[], startIndex: VisibleIndex, count: number, movedColumns: MoveOperation[], hiddenColumns: VisibleIndex[]): Column[];
269
+ static getColumnsToFetch(tableColumns: Column[], viewportColumns: Column[], alwaysFetchColumnNames: ColumnName[]): Column[];
270
+ static getModelViewportColumns(columns: Column[], left: number | null, right: number | null, movedColumns: MoveOperation[], hiddenColumns?: VisibleIndex[], alwaysFetchColumnNames?: ColumnName[], bufferPages?: number): Column[] | null;
180
271
  /**
181
272
  * Get the dh.RangeSet representation of the provided ranges.
182
273
  * Ranges are sorted prior to creating the RangeSet. Only the rows are taken into account,
183
274
  * RangeSet does not have an option for columns.
184
- * @param {GridRange[]} ranges The ranges to get the range set for
185
- * @returns {dh.RangeSet} The rangeset for the provided ranges
275
+ * @param ranges The ranges to get the range set for
276
+ * @returns The rangeset for the provided ranges
186
277
  */
187
- static rangeSetFromRanges(ranges: GridRange[]): dh.RangeSet;
278
+ static rangeSetFromRanges(ranges: GridRange[]): RangeSet;
188
279
  /**
189
280
  * Validate whether the ranges passed in are valid to take a snapshot from.
190
281
  * Multiple selections are valid if all of the selected rows have the same columns selected.
191
282
  *
192
- * @param {GridRange[]} ranges The ranges to validate
193
- * @returns {boolean} True if the ranges are valid, false otherwise
283
+ * @param ranges The ranges to validate
284
+ * @returns True if the ranges are valid, false otherwise
194
285
  */
195
286
  static isValidSnapshotRanges(ranges: GridRange[]): boolean;
196
287
  /**
197
288
  * Check if the provided value is a valid table index
198
- * @param {any} value A value to check if it's a valid table index
289
+ * @param value A value to check if it's a valid table index
199
290
  */
200
- static isValidIndex(value: any): boolean;
291
+ static isValidIndex(value: unknown): boolean;
201
292
  /**
202
293
  * Returns all columns used in any of the ranges provided
203
- * @param {GridRange[]} ranges The model ranges to get columns for
204
- * @param {dh.Column[]} allColumns All the columns to pull from
205
- * @returns {dh.Column[]} The columns selected in the range
294
+ * @param ranges The model ranges to get columns for
295
+ * @param allColumns All the columns to pull from
296
+ * @returns The columns selected in the range
206
297
  */
207
- static columnsFromRanges(ranges: GridRange[], allColumns: dh.Column[]): dh.Column[];
298
+ static columnsFromRanges(ranges: GridRange[], allColumns: Column[]): Column[];
208
299
  /**
209
300
  * Transforms an iris data snapshot into a simple data matrix
210
- * @param {dh.TableData} data The Iris formatted table data
211
- * @returns {unknown[][]} A matrix of the values of the data
301
+ * @param data The Iris formatted table data
302
+ * @returns A matrix of the values of the data
212
303
  */
213
- static snapshotDataToMatrix(data: dh.TableData): unknown[][];
304
+ static snapshotDataToMatrix(data: TableData): unknown[][];
214
305
  /**
215
306
  * Hydrate model rollup config
216
- * @param {Array} originalColumns Original model columns
217
- * @param {Object} config Dehydrated rollup config
218
- * @param {Object} aggregationSettings Aggregation settings
219
- * @returns {Object} Rollup config for the model
307
+ * @param originalColumns Original model columns
308
+ * @param config Dehydrated rollup config
309
+ * @param aggregationSettings Aggregation settings
310
+ * @returns Rollup config for the model
220
311
  */
221
- static getModelRollupConfig(originalColumns: any[], config: Object, aggregationSettings: Object): Object;
312
+ static getModelRollupConfig(originalColumns: Column[], config: UIRollupConfig, aggregationSettings: AggregationSettings): RollupConfig | null;
222
313
  /**
223
- * @param {Map} pendingDataMap Map of pending data
224
- * @returns {Map} A map with the errors in the pending data
314
+ * @param pendingDataMap Map of pending data
315
+ * @returns A map with the errors in the pending data
225
316
  */
226
- static getPendingErrors(pendingDataMap: Map<any, any>): Map<any, any>;
317
+ static getPendingErrors(pendingDataMap: Map<number, UIRow>): void;
227
318
  /**
228
319
  * Retrieves a column from the provided array at the index, or `null` and logs an error if it's invalid
229
320
  *
230
- * @param {dh.Columns[]} columns The columns to get the column from
231
- * @param {Number} columnIndex The column index to get
321
+ * @param columns The columns to get the column from
322
+ * @param columnIndex The column index to get
232
323
  */
233
- static getColumn(columns: dh.Columns[], columnIndex: number): any;
324
+ static getColumn(columns: Column[], columnIndex: ModelIndex): Column | null;
234
325
  /**
235
326
  * Retrieves a column from the provided array matching the name, or `null` and logs an error if not found
236
- * @param {dh.Column[]} columns The columns to get the column from
237
- * @param {String} columnName The column name to retrieve
327
+ * @param columns The columns to get the column from
328
+ * @param columnName The column name to retrieve
238
329
  */
239
- static getColumnByName(columns: dh.Column[], columnName: string): any;
330
+ static getColumnByName(columns: Column[], columnName: ColumnName): Column | undefined;
240
331
  /**
241
332
  * Get filter configs with column names changed to indexes, exclude missing columns
242
- * @param {dh.Column[]} columns The columns to get column indexes from
243
- * @param {Object[]} filters Filter configs
244
- * @returns {Object[]} Updated filter configs with column names changed to indexes
333
+ * @param columns The columns to get column indexes from
334
+ * @param filters Filter configs
335
+ * @returns Updated filter configs with column names changed to indexes
245
336
  */
246
- static changeFilterColumnNamesToIndexes(columns: dh.Column[], filters: Object[]): Object[];
337
+ static changeFilterColumnNamesToIndexes<T>(columns: Column[], filters: {
338
+ name: ColumnName;
339
+ filter: T;
340
+ }[]): ([number, unknown] | null)[];
247
341
  }
342
+ export default IrisGridUtils;
248
343
  //# sourceMappingURL=IrisGridUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IrisGridUtils.d.ts","sourceRoot":"","sources":["../src/IrisGridUtils.js"],"names":[],"mappings":";AAUA;IACE;;;;;OAKG;IACH,2DAHW,MAAM,GACJ,MAAM,CAyBlB;IAED;;;;;OAKG;IACH,yDAHW,MAAM,0BACJ,MAAM,CA6ClB;IAED;;;;OAIG;IACH,mEAFW,MAAM;;;;;;;;;;;;;;;;;;;;;MA8DhB;IAED;;;;OAIG;IACH,iEAFW,MAAM;;;;;;;;;;;;;;;;;;;;;MA0EhB;IAED;;;;;OAKG;IACH,6EAHW,MAAM,GACJ,MAAM,CAclB;IAED;;;;;OAKG;IACH,2EAHW,MAAM,GACJ,MAAM,CAkBlB;IAED;;;;OAIG;IACH,2CAHW,gBAAgB,GACd,MAAM,CAOlB;IAED;;;;;;OAMG;IACH,oCALW,WAAW,qBACX,MAAM,EAAE,YACR,MAAM,GACJ,aAAa,CAsBzB;IAED;;;;;OAKG;IACH,yCAJW,WAAW,mBACX,gBAAgB,GACd,MAAM,CAUlB;IAED;;;;;;OAMG;IACH,uCALW,YAAY,wBACZ,MAAM,EAAE,YACR,MAAM,GACJ,gBAAgB,CAyB5B;IAED,sEAQC;IAED,oEAQC;IAED,2EAUC;IAED,+EA4BC;IAED;;;;OAIG;IACH,2DAUC;IAED;;;;OAIG;IACH,yDAUC;IAED,oDAIC;IAED,uFAIC;IAED,gDAEC;IAED,mFAEC;IAED;;;;OAIG;IACH,4BAHW,SAAS,GACP,MAAM,CAWlB;IAED;;;;;OAKG;IACH,4BAJW,WAAW,SACX,MAAM,EAAE,GACN,SAAS,CAkCrB;IAED;;;;OAIG;IACH,wCAHW,MAAM,yBACJ,MAAM,CAelB;IAED;;;;;OAKG;IACH,0DAHW,MAAM,YACN,MAAM,QA2ChB;IAED,4EAOC;IAED,4JAmBC;IAED,sDAaC;IAED;;;;OAIG;IACH,0DAFa,MAAM,EAAE,CAMpB;IAED,uDAEC;IAED,mFAUC;IAED,+DAEC;IAED,kGAOC;IAED,qGAmDC;IAED,wGAOC;IAED,wHAmBC;IAED,2HAqBC;IAED,2HAqBC;IAED,sGAaC;IAED,qLA2CC;IAED;;;;;;OAMG;IACH,kCAHW,WAAW,eAYrB;IAED;;;;;;OAMG;IACH,qCAHW,WAAW,GACT,OAAO,CA6BnB;IAED;;;OAGG;IACH,2BAFW,GAAG,WAIb;IAED;;;;;OAKG;IACH,iCAJW,WAAW,cACX,WAAW,GACT,WAAW,CAuBvB;IAED;;;;OAIG;IACH,iDAFa,OAAO,EAAE,EAAE,CAgBvB;IAED;;;;;;OAMG;IACH,4DAJW,MAAM,uBACN,MAAM,GACJ,MAAM,CA2DlB;IAED;;;OAGG;IACH,sEAaC;IAED;;;;;OAKG;IACH,0BAHW,YAAY,4BAWtB;IAED;;;;OAIG;IACH,gCAHW,WAAW,2BAcrB;IAED;;;;;OAKG;IACH,iDAJW,WAAW,WACX,MAAM,EAAE,GACN,MAAM,EAAE,CASpB;CACF"}
1
+ {"version":3,"file":"IrisGridUtils.d.ts","sourceRoot":"","sources":["../src/IrisGridUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAET,UAAU,EACV,YAAY,EACZ,aAAa,EACb,YAAY,EACb,MAAM,iBAAiB,CAAC;AACzB,OAAW,EACT,MAAM,EACN,WAAW,EACX,eAAe,EACf,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,IAAI,EACJ,KAAK,EACL,SAAS,EACV,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAGL,WAAW,EACX,aAAa,EACb,cAAc,EACf,MAAM,wBAAwB,CAAC;AAKhC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC1D,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,WAAW,EACX,WAAW,EACX,QAAQ,EAER,KAAK,EACL,qBAAqB,EACtB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,cAAc,IAAI,qBAAqB,EAAE,MAAM,6DAA6D,CAAC;AACtH,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAI5C,MAAM,WAAW,uBAAuB;IACtC,eAAe,EAAE;QACf,MAAM;QACN;YACE,OAAO,EAAE,qBAAqB,CAAC;SAChC;KACF,EAAE,CAAC;IACJ,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,qBAAqB,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,EAAE,CAAC;IAClD,gBAAgB,EAAE,OAAO,CAAC;IAC1B,YAAY,EAAE;QACZ,MAAM;QACN;YACE,IAAI,EAAE,MAAM,CAAC;SACd;KACF,EAAE,CAAC;IACJ,KAAK,EAAE;QACL,MAAM,EAAE,UAAU,CAAC;QACnB,KAAK,EAAE,OAAO,CAAC;QACf,SAAS,EAAE,aAAa,CAAC;KAC1B,EAAE,CAAC;IACJ,gBAAgB,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,CAAC;IACzC,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IACnC,aAAa,EAAE,UAAU,EAAE,CAAC;IAC5B,kBAAkB,EAAE,qBAAqB,EAAE,CAAC;IAC5C,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,CAAC,EAAE,cAAc,CAAC;IAC9B,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,EAAE,UAAU,EAAE,CAAC;IACpC,qBAAqB,EAAE,UAAU,EAAE,CAAC;IACpC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,cAAc,EAAE,wBAAwB,CAAC,MAAM,GAAG,QAAQ,GAAG,IAAI,CAAC,CAAC;IACnE,aAAa,EAAE,UAAU,EAAE,CAAC;CAC7B;AAED,aAAK,wBAAwB,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAA;CAAE,CAAC,EAAE,CAAC;AACvE,cAAM,aAAa;IACjB;;;;;OAKG;IACH,MAAM,CAAC,kBAAkB,CACvB,KAAK,EAAE,aAAa,EACpB,SAAS,EAAE,IAAI,CACb,aAAa,EACb,iBAAiB,GAAG,gBAAgB,GAAG,cAAc,GAAG,WAAW,CACpE,GACA;QACD,eAAe,EAAE,OAAO,CAAC;QACzB,cAAc,EAAE,OAAO,CAAC;QACxB,YAAY,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,EAAE,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;QAC7C,SAAS,EAAE,aAAa,EAAE,CAAC;KAC5B;IAyBD;;;;;OAKG;IACH,MAAM,CAAC,gBAAgB,CACrB,KAAK,EAAE,aAAa,EACpB,SAAS,EAAE;QACT,eAAe,EAAE,OAAO,CAAC;QACzB,cAAc,EAAE,OAAO,CAAC;QACxB,YAAY,EAAE;YAAE,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC;YAAC,EAAE,EAAE,MAAM,GAAG,UAAU,CAAA;SAAE,EAAE,CAAC;QACvE,SAAS,EAAE,aAAa,EAAE,CAAC;KAC5B,EACD,aAAa,UAAK,GACjB,IAAI,CACL,aAAa,EACb,iBAAiB,GAAG,gBAAgB,GAAG,cAAc,GAAG,WAAW,CACpE;IA+CD;;;;OAIG;IACH,MAAM,CAAC,sBAAsB,CAC3B,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,aAAa,GAC3B,uBAAuB;IA4D1B;;;;OAIG;IACH,MAAM,CAAC,oBAAoB,CACzB,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,uBAAuB,GACrC,OAAO,CAAC,aAAa,CAAC;IA2EzB;;;;;OAKG;IACH,MAAM,CAAC,2BAA2B,CAChC,KAAK,EAAE,aAAa,EACpB,kBAAkB,EAAE;QAElB,oBAAoB,EAAE,OAAO,CAAC;QAC9B,SAAS,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,MAAM,CAAC;QACxB,gBAAgB,EAAE,OAAO,CAAC;KAC3B,GACA;QACD,oBAAoB,EAAE,OAAO,CAAC;QAC9B,SAAS,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,UAAU,GAAG,IAAI,CAAC;KACpC;IAcD;;;;;OAKG;IACH,MAAM,CAAC,yBAAyB,CAC9B,KAAK,EAAE,aAAa,EACpB,kBAAkB,EAAE;QAElB,oBAAoB,EAAE,OAAO,CAAC;QAC9B,SAAS,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,UAAU,CAAC;KAC7B,GACA;QACD,oBAAoB,EAAE,OAAO,CAAC;QAC9B,SAAS,EAAE,MAAM,CAAC;QAClB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KACjC;IAkBD;;;;OAIG;IACH,MAAM,CAAC,qBAAqB,CAC1B,YAAY,EAAE,cAAc,GAC3B,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,EAAE;IAO/B;;;;;;OAMG;IACH,MAAM,CAAC,mBAAmB,CACxB,OAAO,EAAE,MAAM,EAAE,EACjB,iBAAiB,EAAE,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,EAAE,EAC/C,QAAQ,CAAC,EAAE,MAAM,GAChB,cAAc;IAyBjB;;;;;OAKG;IACH,MAAM,CAAC,wBAAwB,CAC7B,OAAO,EAAE,MAAM,EAAE,EACjB,eAAe,EAAE,iBAAiB,GACjC,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE,qBAAqB,CAAA;KAAE,CAAC,EAAE;IAYjD;;;;;;OAMG;IACH,MAAM,CAAC,sBAAsB,CAC3B,OAAO,EAAE,MAAM,EAAE,EACjB,oBAAoB,EAAE,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE,qBAAqB,CAAA;KAAE,CAAC,EAAE,EACpE,QAAQ,EAAE,MAAM,GACf,iBAAiB;IAiCpB,MAAM,CAAC,8BAA8B,CACnC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,qBAAqB,GAC7B,qBAAqB;IAUxB,MAAM,CAAC,4BAA4B,CACjC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,qBAAqB,GAC7B,qBAAqB;IAUxB,MAAM,CAAC,uBAAuB,CAC5B,OAAO,EAAE,MAAM,EAAE,EACjB,cAAc,EAAE,GAAG,CACjB,MAAM,EACJ,KAAK,GACL;QACE,IAAI,EAAE,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;KAC/B,CACJ,GACA,wBAAwB,CAAC,QAAQ,GAAG,MAAM,GAAG,IAAI,CAAC;IAiBrD,MAAM,CAAC,qBAAqB,CAC1B,OAAO,EAAE,MAAM,EAAE,EACjB,cAAc,EAAE,wBAAwB,CAAC,QAAQ,GAAG,MAAM,GAAG,IAAI,CAAC,GACjE,GAAG,CACJ,MAAM,EACN;QAAE,IAAI,EAAE,GAAG,CAAC,UAAU,GAAG,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,IAAI,CAAC,CAAA;KAAE,CACzE;IAoCD;;;;OAIG;IACH,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,GAAG,IAAI;IAczE;;;;OAIG;IACH,MAAM,CAAC,YAAY,CAAC,CAAC,EACnB,KAAK,EAAE,CAAC,EACR,UAAU,EAAE,MAAM,GACjB,WAAW,GAAG,WAAW,GAAG,CAAC,GAAG,IAAI;IAYvC,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI;IAM3E,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAMzD,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,MAAM,GAAG,IAAI;IAIhD,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAIrD;;;;OAIG;IACH,MAAM,CAAC,aAAa,CAClB,KAAK,EAAE,IAAI,EAAE,GACZ;QACD,MAAM,EAAE,UAAU,CAAC;QACnB,KAAK,EAAE,OAAO,CAAC;QACf,SAAS,EAAE,aAAa,CAAC;KAC1B,EAAE;IAWH;;;;;OAKG;IACH,MAAM,CAAC,WAAW,CAChB,OAAO,EAAE,MAAM,EAAE,EACjB,KAAK,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,aAAa,CAAA;KAAE,EAAE,GACpE,IAAI,EAAE;IAkCT;;;;OAIG;IACH,MAAM,CAAC,oBAAoB,CACzB,UAAU,EAAE;QACV,aAAa,EAAE,aAAa,CAAC;QAC7B,kBAAkB,EAAE;YAClB,eAAe,EAAE,UAAU,CAAC;YAC5B,SAAS,EAAE,OAAO,CAAC;SACpB,CAAC;KACH,EACD,YAAY,GAAE,WAAW,EAAO,GAC/B;QACD,eAAe,EAAE,UAAU,CAAC;QAC5B,SAAS,EAAE,OAAO,CAAC;QACnB,eAAe,EAAE,iBAAiB,CAAC;QACnC,YAAY,EAAE,WAAW,EAAE,CAAC;QAC5B,YAAY,EAAE,cAAc,CAAC;QAC7B,KAAK,EAAE,IAAI,EAAE,CAAC;KACf;IAeD;;;;;OAKG;IACH,MAAM,CAAC,kBAAkB,CACvB,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE;QACb,YAAY,CAAC,EAAE;YACb,MAAM;YACN;gBACE,IAAI,EAAE,MAAM,CAAC;aACd;SACF,EAAE,CAAC;QACJ,eAAe,CAAC,EAAE;YAChB,MAAM;YACN;gBACE,OAAO,EAAE,qBAAqB,CAAC;aAChC;SACF,EAAE,CAAC;QACJ,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;QAC7B,KAAK,CAAC,EAAE;YACN,MAAM,EAAE,UAAU,CAAC;YACnB,KAAK,EAAE,OAAO,CAAC;YACf,SAAS,EAAE,aAAa,CAAC;SAC1B,EAAE,CAAC;QACJ,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,eAAe,CAAC,EAAE,UAAU,CAAC;KAC9B,EACD,QAAQ,EAAE,MAAM,GACf,IAAI;IAuDP,MAAM,CAAC,yBAAyB,CAC9B,OAAO,EAAE,MAAM,EAAE,EACjB,YAAY,GAAE,WAAW,EAAO,GAC/B,WAAW,EAAE;IAShB,MAAM,CAAC,0BAA0B,CAC/B,OAAO,EAAE,MAAM,EAAE,EACjB,YAAY,2BAAoB,EAChC,QAAQ,EAAE,MAAM,GACf,eAAe,EAAE;IAqBpB,MAAM,CAAC,uBAAuB,CAC5B,SAAS,EAAE,GAAG,CAAC,UAAU,EAAE,WAAW,GAAG,cAAc,GAAG,IAAI,CAAC,GAC9D,eAAe,EAAE;IAepB;;;;OAIG;IACH,MAAM,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,YAAY,GAAG,MAAM,EAAE;IAMjE,MAAM,CAAC,sBAAsB,CAAC,aAAa,EAAE,UAAU,EAAE,GAAG,UAAU,EAAE;IAIxE,MAAM,CAAC,2BAA2B,CAChC,gBAAgB,EAAE,UAAU,EAAE,EAC9B,aAAa,EAAE,UAAU,EAAE,GAC1B,UAAU,EAAE;IAYf,MAAM,CAAC,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE;IAIzE,MAAM,CAAC,sBAAsB,CAAC,CAAC,EAC7B,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,EACvB,kBAAkB,EAAE,UAAU,EAAE,GAC/B,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;IASjB,MAAM,CAAC,4BAA4B,CACjC,OAAO,EAAE,MAAM,EAAE,EACjB,YAAY,EAAE,aAAa,EAAE,EAC7B,kBAAkB,EAAE,UAAU,EAAE,GAC/B,aAAa,EAAE;IAiDlB,MAAM,CAAC,sCAAsC,CAC3C,qBAAqB,EAAE,UAAU,EAAE,EACnC,kBAAkB,EAAE,UAAU,EAAE,GAC/B,UAAU,EAAE;IAMf,MAAM,CAAC,wBAAwB,CAC7B,YAAY,EAAE,MAAM,EAAE,EACtB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,aAAa,EAAE,EAC7B,aAAa,EAAE,MAAM,EAAE,GACtB,MAAM,EAAE;IAeX,MAAM,CAAC,qBAAqB,CAC1B,YAAY,EAAE,MAAM,EAAE,EACtB,UAAU,EAAE,YAAY,EACxB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,aAAa,EAAE,EAC7B,aAAa,EAAE,YAAY,EAAE,GAC5B,MAAM,EAAE;IAiBX,MAAM,CAAC,qBAAqB,CAC1B,YAAY,EAAE,MAAM,EAAE,EACtB,UAAU,EAAE,YAAY,EACxB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,aAAa,EAAE,EAC7B,aAAa,EAAE,YAAY,EAAE,GAC5B,MAAM,EAAE;IAiBX,MAAM,CAAC,iBAAiB,CACtB,YAAY,EAAE,MAAM,EAAE,EACtB,eAAe,EAAE,MAAM,EAAE,EACzB,sBAAsB,EAAE,UAAU,EAAE,GACnC,MAAM,EAAE;IAWX,MAAM,CAAC,uBAAuB,CAC5B,OAAO,EAAE,MAAM,EAAE,EACjB,IAAI,EAAE,MAAM,GAAG,IAAI,EACnB,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,YAAY,EAAE,aAAa,EAAE,EAC7B,aAAa,GAAE,YAAY,EAAO,EAClC,sBAAsB,GAAE,UAAU,EAAO,EACzC,WAAW,SAAI,GACd,MAAM,EAAE,GAAG,IAAI;IAqClB;;;;;;OAMG;IACH,MAAM,CAAC,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,QAAQ;IAiBxD;;;;;;OAMG;IACH,MAAM,CAAC,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO;IA6B1D;;;OAGG;IACH,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IAU5C;;;;;OAKG;IACH,MAAM,CAAC,iBAAiB,CACtB,MAAM,EAAE,SAAS,EAAE,EACnB,UAAU,EAAE,MAAM,EAAE,GACnB,MAAM,EAAE;IAyBX;;;;OAIG;IACH,MAAM,CAAC,oBAAoB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,EAAE,EAAE;IAgBzD;;;;;;OAMG;IACH,MAAM,CAAC,oBAAoB,CACzB,eAAe,EAAE,MAAM,EAAE,EACzB,MAAM,EAAE,cAAc,EACtB,mBAAmB,EAAE,mBAAmB,GACvC,YAAY,GAAG,IAAI;IA2DtB;;;OAGG;IACH,MAAM,CAAC,gBAAgB,CAAC,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,IAAI;IAejE;;;;;OAKG;IACH,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI;IAU3E;;;;OAIG;IACH,MAAM,CAAC,eAAe,CACpB,OAAO,EAAE,MAAM,EAAE,EACjB,UAAU,EAAE,UAAU,GACrB,MAAM,GAAG,SAAS;IAarB;;;;;OAKG;IACH,MAAM,CAAC,gCAAgC,CAAC,CAAC,EACvC,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE;QAAE,IAAI,EAAE,UAAU,CAAC;QAAC,MAAM,EAAE,CAAC,CAAA;KAAE,EAAE,GACzC,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,EAAE;CAQhC;AAED,eAAe,aAAa,CAAC"}