@deephaven/iris-grid 0.67.1-beta.0 → 0.67.1-beta.1
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/dist/AdvancedFilterCreator.d.ts +6 -6
- package/dist/AdvancedFilterCreator.d.ts.map +1 -1
- package/dist/AdvancedFilterCreator.js.map +1 -1
- package/dist/AdvancedFilterCreatorFilterItem.d.ts +3 -3
- package/dist/AdvancedFilterCreatorFilterItem.d.ts.map +1 -1
- package/dist/AdvancedFilterCreatorFilterItem.js.map +1 -1
- package/dist/AdvancedFilterCreatorSelectValue.d.ts +6 -6
- package/dist/AdvancedFilterCreatorSelectValue.d.ts.map +1 -1
- package/dist/AdvancedFilterCreatorSelectValue.js.map +1 -1
- package/dist/AdvancedFilterCreatorSelectValueList.d.ts +7 -7
- package/dist/AdvancedFilterCreatorSelectValueList.d.ts.map +1 -1
- package/dist/AdvancedFilterCreatorSelectValueList.js.map +1 -1
- package/dist/ColumnHeaderGroup.d.ts +1 -1
- package/dist/ColumnHeaderGroup.d.ts.map +1 -1
- package/dist/ColumnHeaderGroup.js +1 -1
- package/dist/ColumnHeaderGroup.js.map +1 -1
- package/dist/ColumnStatistics.d.ts +3 -3
- package/dist/ColumnStatistics.d.ts.map +1 -1
- package/dist/ColumnStatistics.js.map +1 -1
- package/dist/CommonTypes.d.ts +5 -5
- package/dist/CommonTypes.d.ts.map +1 -1
- package/dist/CommonTypes.js.map +1 -1
- package/dist/CrossColumnSearch.d.ts +2 -2
- package/dist/CrossColumnSearch.d.ts.map +1 -1
- package/dist/CrossColumnSearch.js.map +1 -1
- package/dist/EmptyIrisGridModel.d.ts +19 -19
- package/dist/EmptyIrisGridModel.d.ts.map +1 -1
- package/dist/EmptyIrisGridModel.js.map +1 -1
- package/dist/GotoRow.js.map +1 -1
- package/dist/IrisGrid.d.ts +32 -32
- package/dist/IrisGrid.d.ts.map +1 -1
- package/dist/IrisGrid.js +4 -1
- package/dist/IrisGrid.js.map +1 -1
- package/dist/IrisGridCopyHandler.js.map +1 -1
- package/dist/IrisGridMetricCalculator.d.ts +4 -4
- package/dist/IrisGridMetricCalculator.d.ts.map +1 -1
- package/dist/IrisGridMetricCalculator.js.map +1 -1
- package/dist/IrisGridModel.d.ts +20 -20
- package/dist/IrisGridModel.d.ts.map +1 -1
- package/dist/IrisGridModel.js.map +1 -1
- package/dist/IrisGridModelFactory.d.ts +2 -2
- package/dist/IrisGridModelFactory.d.ts.map +1 -1
- package/dist/IrisGridModelFactory.js.map +1 -1
- package/dist/IrisGridModelUpdater.d.ts +6 -6
- package/dist/IrisGridModelUpdater.d.ts.map +1 -1
- package/dist/IrisGridModelUpdater.js.map +1 -1
- package/dist/IrisGridPartitionSelector.d.ts +5 -5
- package/dist/IrisGridPartitionSelector.d.ts.map +1 -1
- package/dist/IrisGridPartitionSelector.js.map +1 -1
- package/dist/IrisGridPartitionedTableModel.d.ts +8 -8
- package/dist/IrisGridPartitionedTableModel.d.ts.map +1 -1
- package/dist/IrisGridPartitionedTableModel.js.map +1 -1
- package/dist/IrisGridProxyModel.d.ts +26 -26
- package/dist/IrisGridProxyModel.d.ts.map +1 -1
- package/dist/IrisGridProxyModel.js.map +1 -1
- package/dist/IrisGridRenderer.d.ts +2 -2
- package/dist/IrisGridRenderer.d.ts.map +1 -1
- package/dist/IrisGridRenderer.js.map +1 -1
- package/dist/IrisGridTableModel.d.ts +18 -18
- package/dist/IrisGridTableModel.d.ts.map +1 -1
- package/dist/IrisGridTableModel.js +8 -7
- package/dist/IrisGridTableModel.js.map +1 -1
- package/dist/IrisGridTableModelTemplate.d.ts +41 -41
- package/dist/IrisGridTableModelTemplate.d.ts.map +1 -1
- package/dist/IrisGridTableModelTemplate.js +10 -11
- package/dist/IrisGridTableModelTemplate.js.map +1 -1
- package/dist/IrisGridTestUtils.d.ts +16 -16
- package/dist/IrisGridTestUtils.d.ts.map +1 -1
- package/dist/IrisGridTestUtils.js +4 -2
- package/dist/IrisGridTestUtils.js.map +1 -1
- package/dist/IrisGridTreeTableModel.d.ts +13 -13
- package/dist/IrisGridTreeTableModel.d.ts.map +1 -1
- package/dist/IrisGridTreeTableModel.js +16 -6
- package/dist/IrisGridTreeTableModel.js.map +1 -1
- package/dist/IrisGridUtils.d.ts +40 -40
- package/dist/IrisGridUtils.d.ts.map +1 -1
- package/dist/IrisGridUtils.js +17 -7
- package/dist/IrisGridUtils.js.map +1 -1
- package/dist/PartitionedGridModel.d.ts +5 -5
- package/dist/PartitionedGridModel.d.ts.map +1 -1
- package/dist/PartitionedGridModel.js.map +1 -1
- package/dist/TableViewportUpdater.d.ts +10 -10
- package/dist/TableViewportUpdater.d.ts.map +1 -1
- package/dist/TableViewportUpdater.js.map +1 -1
- package/dist/TreeTableViewportUpdater.d.ts +7 -7
- package/dist/TreeTableViewportUpdater.d.ts.map +1 -1
- package/dist/TreeTableViewportUpdater.js.map +1 -1
- package/dist/format-context-menus/DecimalFormatContextMenu.d.ts +1 -1
- package/dist/format-context-menus/DecimalFormatContextMenu.d.ts.map +1 -1
- package/dist/format-context-menus/DecimalFormatContextMenu.js.map +1 -1
- package/dist/format-context-menus/FormatContextMenuUtils.js +2 -1
- package/dist/format-context-menus/FormatContextMenuUtils.js.map +1 -1
- package/dist/format-context-menus/IntegerFormatContextMenu.d.ts +1 -1
- package/dist/format-context-menus/IntegerFormatContextMenu.d.ts.map +1 -1
- package/dist/format-context-menus/IntegerFormatContextMenu.js.map +1 -1
- package/dist/mousehandlers/IrisGridColumnSelectMouseHandler.js.map +1 -1
- package/dist/mousehandlers/IrisGridContextMenuHandler.d.ts +17 -17
- package/dist/mousehandlers/IrisGridContextMenuHandler.d.ts.map +1 -1
- package/dist/mousehandlers/IrisGridContextMenuHandler.js.map +1 -1
- package/dist/sidebar/ChartBuilder.d.ts +11 -11
- package/dist/sidebar/ChartBuilder.d.ts.map +1 -1
- package/dist/sidebar/ChartBuilder.js.map +1 -1
- package/dist/sidebar/RollupRows.d.ts +8 -8
- package/dist/sidebar/RollupRows.d.ts.map +1 -1
- package/dist/sidebar/RollupRows.js.map +1 -1
- package/dist/sidebar/SelectDistinctBuilder.d.ts +2 -2
- package/dist/sidebar/SelectDistinctBuilder.d.ts.map +1 -1
- package/dist/sidebar/SelectDistinctBuilder.js.map +1 -1
- package/dist/sidebar/TableCsvExporter.d.ts +3 -3
- package/dist/sidebar/TableCsvExporter.d.ts.map +1 -1
- package/dist/sidebar/TableCsvExporter.js.map +1 -1
- package/dist/sidebar/TableSaver.d.ts +9 -9
- package/dist/sidebar/TableSaver.d.ts.map +1 -1
- package/dist/sidebar/TableSaver.js.map +1 -1
- package/dist/sidebar/conditional-formatting/ColumnFormatEditor.d.ts +1 -1
- package/dist/sidebar/conditional-formatting/ColumnFormatEditor.d.ts.map +1 -1
- package/dist/sidebar/conditional-formatting/ColumnFormatEditor.js.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionEditor.d.ts +1 -1
- package/dist/sidebar/conditional-formatting/ConditionEditor.d.ts.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionEditor.js.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.d.ts +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.d.ts.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormatEditor.js.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormattingAPIUtils.d.ts +3 -3
- package/dist/sidebar/conditional-formatting/ConditionalFormattingAPIUtils.d.ts.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormattingAPIUtils.js.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.d.ts +3 -3
- package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.d.ts.map +1 -1
- package/dist/sidebar/conditional-formatting/ConditionalFormattingUtils.js.map +1 -1
- package/dist/sidebar/conditional-formatting/RowFormatEditor.d.ts +1 -1
- package/dist/sidebar/conditional-formatting/RowFormatEditor.d.ts.map +1 -1
- package/dist/sidebar/conditional-formatting/RowFormatEditor.js.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.d.ts +5 -5
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.d.ts.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/VisibilityOrderingBuilder.js.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/sortable-tree/utilities.d.ts +2 -2
- package/dist/sidebar/visibility-ordering-builder/sortable-tree/utilities.d.ts.map +1 -1
- package/dist/sidebar/visibility-ordering-builder/sortable-tree/utilities.js.map +1 -1
- package/package.json +16 -16
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
import { GridRangeIndex, ModelSizeMap } from '@deephaven/grid';
|
|
2
|
-
import type {
|
|
2
|
+
import type { dh as DhType } from '@deephaven/jsapi-types';
|
|
3
3
|
import { Formatter } from '@deephaven/jsapi-utils';
|
|
4
4
|
import IrisGridProxyModel from './IrisGridProxyModel';
|
|
5
5
|
declare class IrisGridTestUtils {
|
|
6
6
|
static DEFAULT_TYPE: string;
|
|
7
7
|
static valueForCell(rowIndex: GridRangeIndex, columnIndex: GridRangeIndex, formatValue?: boolean): string;
|
|
8
8
|
private dh;
|
|
9
|
-
constructor(dh: DhType);
|
|
10
|
-
makeColumn(name?: string, type?: string, index?: number): Column;
|
|
11
|
-
makeRollupTableConfig(): RollupConfig;
|
|
12
|
-
makeColumns(count?: number, prefix?: string): Column[];
|
|
9
|
+
constructor(dh: typeof DhType);
|
|
10
|
+
makeColumn(name?: string, type?: string, index?: number): DhType.Column;
|
|
11
|
+
makeRollupTableConfig(): DhType.RollupConfig;
|
|
12
|
+
makeColumns(count?: number, prefix?: string): DhType.Column[];
|
|
13
13
|
static makeUserColumnWidths(count?: number): ModelSizeMap;
|
|
14
|
-
makeRow(i: number): Row;
|
|
15
|
-
makeFilter(): FilterCondition;
|
|
16
|
-
makeSort(): Sort;
|
|
14
|
+
makeRow(i: number): DhType.Row;
|
|
15
|
+
makeFilter(): DhType.FilterCondition;
|
|
16
|
+
makeSort(): DhType.Sort;
|
|
17
17
|
makeTable({ columns, size, sort, layoutHints, }?: {
|
|
18
|
-
columns?: Column[];
|
|
18
|
+
columns?: DhType.Column[];
|
|
19
19
|
size?: number;
|
|
20
|
-
sort?: readonly Sort[];
|
|
21
|
-
layoutHints?: LayoutHints
|
|
22
|
-
}): Table;
|
|
23
|
-
makeTreeTable(columns?: Column[], size?: number, sort?: never[]): TreeTable;
|
|
24
|
-
makeInputTable(keyColumns?: Column[]): InputTable;
|
|
25
|
-
makeSubscription(table?: Table): TableViewportSubscription;
|
|
26
|
-
makeModel(table?: Table, formatter?: Formatter | null, inputTable?: InputTable | null): IrisGridProxyModel;
|
|
20
|
+
sort?: readonly DhType.Sort[];
|
|
21
|
+
layoutHints?: Partial<DhType.LayoutHints>;
|
|
22
|
+
}): DhType.Table;
|
|
23
|
+
makeTreeTable(columns?: DhType.Column[], groupedColumns?: DhType.Column[], size?: number, sort?: never[]): DhType.TreeTable;
|
|
24
|
+
makeInputTable(keyColumns?: DhType.Column[]): DhType.InputTable;
|
|
25
|
+
makeSubscription(table?: DhType.Table): DhType.TableViewportSubscription;
|
|
26
|
+
makeModel(table?: DhType.Table, formatter?: Formatter | null, inputTable?: DhType.InputTable | null): IrisGridProxyModel;
|
|
27
27
|
}
|
|
28
28
|
export default IrisGridTestUtils;
|
|
29
29
|
//# sourceMappingURL=IrisGridTestUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IrisGridTestUtils.d.ts","sourceRoot":"","sources":["../src/IrisGridTestUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"IrisGridTestUtils.d.ts","sourceRoot":"","sources":["../src/IrisGridTestUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,KAAK,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAEtD,cAAM,iBAAiB;IACrB,MAAM,CAAC,YAAY,SAAsB;IAEzC,MAAM,CAAC,YAAY,CACjB,QAAQ,EAAE,cAAc,EACxB,WAAW,EAAE,cAAc,EAC3B,WAAW,CAAC,EAAE,OAAO,GACpB,MAAM;IAQT,OAAO,CAAC,EAAE,CAAgB;gBAEd,EAAE,EAAE,OAAO,MAAM;IAI7B,UAAU,CACR,IAAI,CAAC,EAAE,MAAM,EACb,IAAI,GAAE,MAAuC,EAC7C,KAAK,SAAI,GACR,MAAM,CAAC,MAAM;IAKhB,qBAAqB,IAAI,MAAM,CAAC,YAAY;IAK5C,WAAW,CAAC,KAAK,SAAI,EAAE,MAAM,SAAK,GAAG,MAAM,CAAC,MAAM,EAAE;IAUpD,MAAM,CAAC,oBAAoB,CAAC,KAAK,SAAI,GAAG,YAAY;IAQpD,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,GAAG;IAW9B,UAAU,IAAI,MAAM,CAAC,eAAe;IAKpC,QAAQ,IAAI,MAAM,CAAC,IAAI;IAKvB,SAAS,CAAC,EACR,OAA4B,EAC5B,IAAiB,EACjB,IAAS,EACT,WAAgB,GACjB,GAAE;QACD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;QAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,SAAS,MAAM,CAAC,IAAI,EAAE,CAAC;QAC9B,WAAW,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;KACtC,GAAG,MAAM,CAAC,KAAK;IASrB,aAAa,CACX,OAAO,kBAAqB,EAC5B,cAAc,GAAE,MAAM,CAAC,MAAM,EAAO,EACpC,IAAI,SAAa,EACjB,IAAI,UAAK,GACR,MAAM,CAAC,SAAS;IAYnB,cAAc,CAAC,UAAU,GAAE,MAAM,CAAC,MAAM,EAAO,GAAG,MAAM,CAAC,UAAU;IAKnE,gBAAgB,CAAC,KAAK,eAAmB,GAAG,MAAM,CAAC,yBAAyB;IAK5E,SAAS,CACP,KAAK,eAAmB,EACxB,SAAS,GAAE,SAAS,GAAG,IAAW,EAClC,UAAU,GAAE,MAAM,CAAC,UAAU,GAAG,IAAW,GAC1C,kBAAkB;CAStB;AAED,eAAe,iBAAiB,CAAC"}
|
|
@@ -83,11 +83,13 @@ class IrisGridTestUtils {
|
|
|
83
83
|
}
|
|
84
84
|
makeTreeTable() {
|
|
85
85
|
var columns = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.makeColumns();
|
|
86
|
-
var
|
|
87
|
-
var
|
|
86
|
+
var groupedColumns = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
87
|
+
var size = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1000000000;
|
|
88
|
+
var sort = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];
|
|
88
89
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
89
90
|
var table = new this.dh.TreeTable({
|
|
90
91
|
columns,
|
|
92
|
+
groupedColumns,
|
|
91
93
|
size,
|
|
92
94
|
sort
|
|
93
95
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IrisGridTestUtils.js","names":["Formatter","IrisGridProxyModel","IrisGridTestUtils","valueForCell","rowIndex","columnIndex","formatValue","value","concat","undefined","constructor","dh","_defineProperty","makeColumn","name","type","arguments","length","DEFAULT_TYPE","index","Column","makeRollupTableConfig","RollupTableConfig","makeColumns","count","prefix","columns","i","push","makeUserColumnWidths","userColumnWidths","Map","set","toString","makeRow","row","Row","get","jest","fn","column","makeFilter","FilterCondition","makeSort","Sort","makeTable","size","sort","layoutHints","table","Table","copy","Promise","resolve","freeze","makeTreeTable","TreeTable","makeInputTable","keyColumns","InputTable","makeSubscription","TableViewportSubscription","makeModel","formatter","inputTable"],"sources":["../src/IrisGridTestUtils.ts"],"sourcesContent":["import { GridRangeIndex, ModelSizeMap } from '@deephaven/grid';\nimport type {
|
|
1
|
+
{"version":3,"file":"IrisGridTestUtils.js","names":["Formatter","IrisGridProxyModel","IrisGridTestUtils","valueForCell","rowIndex","columnIndex","formatValue","value","concat","undefined","constructor","dh","_defineProperty","makeColumn","name","type","arguments","length","DEFAULT_TYPE","index","Column","makeRollupTableConfig","RollupTableConfig","makeColumns","count","prefix","columns","i","push","makeUserColumnWidths","userColumnWidths","Map","set","toString","makeRow","row","Row","get","jest","fn","column","makeFilter","FilterCondition","makeSort","Sort","makeTable","size","sort","layoutHints","table","Table","copy","Promise","resolve","freeze","makeTreeTable","groupedColumns","TreeTable","makeInputTable","keyColumns","InputTable","makeSubscription","TableViewportSubscription","makeModel","formatter","inputTable"],"sources":["../src/IrisGridTestUtils.ts"],"sourcesContent":["import { GridRangeIndex, ModelSizeMap } from '@deephaven/grid';\nimport type { dh as DhType } from '@deephaven/jsapi-types';\nimport { Formatter } from '@deephaven/jsapi-utils';\nimport IrisGridProxyModel from './IrisGridProxyModel';\n\nclass IrisGridTestUtils {\n static DEFAULT_TYPE = 'java.lang.String';\n\n static valueForCell(\n rowIndex: GridRangeIndex,\n columnIndex: GridRangeIndex,\n formatValue?: boolean\n ): string {\n let value = `${rowIndex},${columnIndex}`;\n if (formatValue !== undefined && formatValue) {\n value = `(${value})`;\n }\n return value;\n }\n\n private dh: typeof DhType;\n\n constructor(dh: typeof DhType) {\n this.dh = dh;\n }\n\n makeColumn(\n name?: string,\n type: string = IrisGridTestUtils.DEFAULT_TYPE,\n index = 0\n ): DhType.Column {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return new (this.dh as any).Column({ index, name, type });\n }\n\n makeRollupTableConfig(): DhType.RollupConfig {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return new (this.dh as any).RollupTableConfig();\n }\n\n makeColumns(count = 5, prefix = ''): DhType.Column[] {\n const columns = [];\n for (let i = 0; i < count; i += 1) {\n columns.push(\n this.makeColumn(`${prefix}${i}`, IrisGridTestUtils.DEFAULT_TYPE, i)\n );\n }\n return columns;\n }\n\n static makeUserColumnWidths(count = 5): ModelSizeMap {\n const userColumnWidths = new Map();\n for (let i = 0; i < count; i += 1) {\n userColumnWidths.set(i.toString(), 100);\n }\n return userColumnWidths;\n }\n\n makeRow(i: number): DhType.Row {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const row = new (this.dh as any).Row({ index: i, name: `${i}` });\n\n row.get = jest.fn(column =>\n IrisGridTestUtils.valueForCell(i, column.index)\n );\n\n return row;\n }\n\n makeFilter(): DhType.FilterCondition {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return new (this.dh as any).FilterCondition();\n }\n\n makeSort(): DhType.Sort {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return new (this.dh as any).Sort();\n }\n\n makeTable({\n columns = this.makeColumns(),\n size = 1000000000,\n sort = [],\n layoutHints = {},\n }: {\n columns?: DhType.Column[];\n size?: number;\n sort?: readonly DhType.Sort[];\n layoutHints?: Partial<DhType.LayoutHints>;\n } = {}): DhType.Table {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const table = new (this.dh as any).Table({ columns, size, sort });\n table.copy = jest.fn(() => Promise.resolve(table));\n table.freeze = jest.fn(() => Promise.resolve(table));\n table.layoutHints = layoutHints;\n return table;\n }\n\n makeTreeTable(\n columns = this.makeColumns(),\n groupedColumns: DhType.Column[] = [],\n size = 1000000000,\n sort = []\n ): DhType.TreeTable {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const table = new (this.dh as any).TreeTable({\n columns,\n groupedColumns,\n size,\n sort,\n });\n table.copy = jest.fn(() => Promise.resolve(table));\n return table;\n }\n\n makeInputTable(keyColumns: DhType.Column[] = []): DhType.InputTable {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return new (this.dh as any).InputTable(keyColumns);\n }\n\n makeSubscription(table = this.makeTable()): DhType.TableViewportSubscription {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return new (this.dh as any).TableViewportSubscription({ table });\n }\n\n makeModel(\n table = this.makeTable(),\n formatter: Formatter | null = null,\n inputTable: DhType.InputTable | null = null\n ): IrisGridProxyModel {\n const { dh } = this;\n return new IrisGridProxyModel(\n dh,\n table,\n formatter ?? new Formatter(dh),\n inputTable\n );\n }\n}\n\nexport default IrisGridTestUtils;\n"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BoundedAxisRange, GridCell, GridRange, ModelIndex } from '@deephaven/grid';
|
|
2
|
-
import type { dh as DhType
|
|
2
|
+
import type { dh as DhType } from '@deephaven/jsapi-types';
|
|
3
3
|
import { Formatter } from '@deephaven/jsapi-utils';
|
|
4
4
|
import { UIRow, ColumnName } from './CommonTypes';
|
|
5
5
|
import IrisGridTableModelTemplate from './IrisGridTableModelTemplate';
|
|
@@ -8,18 +8,18 @@ export interface UITreeRow extends UIRow {
|
|
|
8
8
|
hasChildren: boolean;
|
|
9
9
|
depth: number;
|
|
10
10
|
}
|
|
11
|
-
declare class IrisGridTreeTableModel extends IrisGridTableModelTemplate<TreeTable, UITreeRow> {
|
|
11
|
+
declare class IrisGridTreeTableModel extends IrisGridTableModelTemplate<DhType.TreeTable, UITreeRow> {
|
|
12
12
|
/** We keep a virtual column at the front that tracks the "group" that is expanded */
|
|
13
13
|
private virtualColumns;
|
|
14
|
-
constructor(dh: DhType, table: TreeTable, formatter?: Formatter, inputTable?: InputTable | null);
|
|
15
|
-
applyBufferedViewport(viewportTop: number, viewportBottom: number, columns: Column[]): void;
|
|
14
|
+
constructor(dh: typeof DhType, table: DhType.TreeTable, formatter?: Formatter, inputTable?: DhType.InputTable | null);
|
|
15
|
+
applyBufferedViewport(viewportTop: number, viewportBottom: number, columns: DhType.Column[]): void;
|
|
16
16
|
textForCell(x: ModelIndex, y: ModelIndex): string;
|
|
17
|
-
extractViewportRow(row: TreeRow, columns: Column[]): UITreeRow;
|
|
18
|
-
snapshot(ranges: GridRange[], includeHeaders?: boolean, formatValue?: (value: unknown, column: Column) => unknown): Promise<unknown[][]>;
|
|
19
|
-
get columns(): Column[];
|
|
20
|
-
get groupedColumns(): readonly Column[];
|
|
17
|
+
extractViewportRow(row: DhType.TreeRow, columns: DhType.Column[]): UITreeRow;
|
|
18
|
+
snapshot(ranges: GridRange[], includeHeaders?: boolean, formatValue?: (value: unknown, column: DhType.Column) => unknown): Promise<unknown[][]>;
|
|
19
|
+
get columns(): DhType.Column[];
|
|
20
|
+
get groupedColumns(): readonly DhType.Column[];
|
|
21
21
|
sourceForCell(column: ModelIndex, row: ModelIndex): GridCell;
|
|
22
|
-
sourceColumn(column: ModelIndex, row: ModelIndex): Column;
|
|
22
|
+
sourceColumn(column: ModelIndex, row: ModelIndex): DhType.Column;
|
|
23
23
|
getClearFilterRange(column: ModelIndex): BoundedAxisRange | null;
|
|
24
24
|
get hasExpandableRows(): boolean;
|
|
25
25
|
get isExpandAllAvailable(): boolean;
|
|
@@ -34,10 +34,10 @@ declare class IrisGridTreeTableModel extends IrisGridTableModelTemplate<TreeTabl
|
|
|
34
34
|
expandAll(): void;
|
|
35
35
|
collapseAll(): void;
|
|
36
36
|
depthForRow(y: ModelIndex): ModelIndex;
|
|
37
|
-
getCachedColumns: (virtualColumns: readonly Column[], tableColumns: readonly Column[]) => Column[];
|
|
38
|
-
getCachedGroupColumns: (virtualColumns: readonly Column[], tableGroupedColumns: readonly Column[]) => Column[];
|
|
39
|
-
getCachedFilterableColumnSet: (columns: readonly Column[], groupedColumns: readonly Column[], virtualColumns: readonly Column[]) => Set<number>;
|
|
40
|
-
getCachedGroupedColumnSet: (groupedColumns: readonly Column[]) => Set<number>;
|
|
37
|
+
getCachedColumns: (virtualColumns: readonly DhType.Column[], tableColumns: readonly DhType.Column[]) => DhType.Column[];
|
|
38
|
+
getCachedGroupColumns: (virtualColumns: readonly DhType.Column[], tableGroupedColumns: readonly DhType.Column[]) => DhType.Column[];
|
|
39
|
+
getCachedFilterableColumnSet: (columns: readonly DhType.Column[], groupedColumns: readonly DhType.Column[], virtualColumns: readonly DhType.Column[]) => Set<number>;
|
|
40
|
+
getCachedGroupedColumnSet: (groupedColumns: readonly DhType.Column[]) => Set<number>;
|
|
41
41
|
updateFrozenColumns(columns: ColumnName[]): void;
|
|
42
42
|
}
|
|
43
43
|
export default IrisGridTreeTableModel;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IrisGridTreeTableModel.d.ts","sourceRoot":"","sources":["../src/IrisGridTreeTableModel.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,gBAAgB,EAChB,QAAQ,EACR,SAAS,EACT,UAAU,EACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"IrisGridTreeTableModel.d.ts","sourceRoot":"","sources":["../src/IrisGridTreeTableModel.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,7 +25,7 @@ class IrisGridTreeTableModel extends IrisGridTableModelTemplate {
|
|
|
25
25
|
_defineProperty(this, "getCachedGroupColumns", memoize((virtualColumns, tableGroupedColumns) => [...virtualColumns, ...tableGroupedColumns]));
|
|
26
26
|
_defineProperty(this, "getCachedFilterableColumnSet", memoize((columns, groupedColumns, virtualColumns) => new Set(((groupedColumns === null || groupedColumns === void 0 ? void 0 : groupedColumns.length) > 0 ? groupedColumns : columns).filter(c => !virtualColumns.includes(c)).map(c1 => columns.findIndex(c2 => c1.name === c2.name)))));
|
|
27
27
|
_defineProperty(this, "getCachedGroupedColumnSet", memoize(groupedColumns => new Set(groupedColumns.map(c1 => this.columns.findIndex(c2 => c1.name === c2.name)))));
|
|
28
|
-
this.virtualColumns = [{
|
|
28
|
+
this.virtualColumns = table.groupedColumns.length > 1 ? [{
|
|
29
29
|
name: '__DH_UI_GROUP__',
|
|
30
30
|
displayName: 'Group',
|
|
31
31
|
type: TableUtils.dataType.STRING,
|
|
@@ -34,6 +34,7 @@ class IrisGridTreeTableModel extends IrisGridTableModelTemplate {
|
|
|
34
34
|
isSortable: false,
|
|
35
35
|
isProxy: true,
|
|
36
36
|
description: 'Key column',
|
|
37
|
+
index: -1,
|
|
37
38
|
filter: () => {
|
|
38
39
|
throw new Error('Filter not implemented for virtual column');
|
|
39
40
|
},
|
|
@@ -43,10 +44,19 @@ class IrisGridTreeTableModel extends IrisGridTableModelTemplate {
|
|
|
43
44
|
formatColor: () => {
|
|
44
45
|
throw new Error('Color not implemented for virtual column');
|
|
45
46
|
},
|
|
46
|
-
|
|
47
|
-
throw new Error('
|
|
47
|
+
get: () => {
|
|
48
|
+
throw new Error('get not implemented for virtual column');
|
|
49
|
+
},
|
|
50
|
+
getFormat: () => {
|
|
51
|
+
throw new Error('getFormat not implemented for virtual column');
|
|
52
|
+
},
|
|
53
|
+
formatNumber: () => {
|
|
54
|
+
throw new Error('formatNumber not implemented for virtual column');
|
|
55
|
+
},
|
|
56
|
+
formatDate: () => {
|
|
57
|
+
throw new Error('formatDate not implemented for virtual column');
|
|
48
58
|
}
|
|
49
|
-
}];
|
|
59
|
+
}] : [];
|
|
50
60
|
}
|
|
51
61
|
applyBufferedViewport(viewportTop, viewportBottom, columns) {
|
|
52
62
|
var viewportColumns = [
|
|
@@ -203,12 +213,12 @@ class IrisGridTreeTableModel extends IrisGridTableModelTemplate {
|
|
|
203
213
|
}
|
|
204
214
|
}
|
|
205
215
|
expandAll() {
|
|
206
|
-
if (this.table.expandAll) {
|
|
216
|
+
if (this.table.expandAll != null) {
|
|
207
217
|
this.table.expandAll();
|
|
208
218
|
}
|
|
209
219
|
}
|
|
210
220
|
collapseAll() {
|
|
211
|
-
if (this.table.collapseAll) {
|
|
221
|
+
if (this.table.collapseAll != null) {
|
|
212
222
|
this.table.collapseAll();
|
|
213
223
|
}
|
|
214
224
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IrisGridTreeTableModel.js","names":["memoize","GridRange","Log","Formatter","TableUtils","assertNotNull","IrisGridTableModelTemplate","log","module","IrisGridTreeTableModel","constructor","dh","table","formatter","arguments","length","undefined","inputTable","_defineProperty","virtualColumns","tableColumns","tableGroupedColumns","columns","groupedColumns","Set","filter","c","includes","map","c1","findIndex","c2","name","displayName","type","dataType","STRING","constituentType","isPartitionColumn","isSortable","isProxy","description","Error","sort","formatColor","formatRowColor","applyBufferedViewport","viewportTop","viewportBottom","viewportColumns","setViewport","textForCell","x","y","column","sourceColumn","row","hasChildren","value","valueForCell","displayString","depth","getCachedGroupedColumnSet","has","extractViewportRow","isExpanded","extractedRow","modifiedData","Map","data","i","key","cellData","get","warn","set","_objectSpread","snapshot","ranges","includeHeaders","formatValue","_this","_asyncToGenerator","_this$viewport$column","_this$viewportData","viewport","viewportData","result","push","viewportRange","offset","rows","intersection","startRow","endRow","r","resultRow","viewportRow","startColumn","endColumn","_viewportRow$data$get","getCachedColumns","getCachedGroupColumns","sourceForCell","depthForRow","getClearFilterRange","hasExpandableRows","isExpandAllAvailable","expandAll","isChartBuilderAvailable","isSelectDistinctAvailable","isReversible","isFilterable","columnIndex","getCachedFilterableColumnSet","isColumnMovable","isRowExpandable","_row$hasChildren","isRowExpanded","_row$isExpanded","setRowExpanded","expandDescendants","setExpanded","collapseAll","_row$depth","updateFrozenColumns"],"sources":["../src/IrisGridTreeTableModel.ts"],"sourcesContent":["/* eslint class-methods-use-this: \"off\" */\nimport memoize from 'memoize-one';\nimport {\n BoundedAxisRange,\n GridCell,\n GridRange,\n ModelIndex,\n} from '@deephaven/grid';\nimport type {\n dh as DhType,\n Column,\n InputTable,\n TreeRow,\n TreeTable,\n} from '@deephaven/jsapi-types';\nimport Log from '@deephaven/log';\nimport { Formatter, TableUtils } from '@deephaven/jsapi-utils';\nimport { assertNotNull } from '@deephaven/utils';\nimport { UIRow, ColumnName, CellData } from './CommonTypes';\nimport IrisGridTableModelTemplate from './IrisGridTableModelTemplate';\nimport { DisplayColumn } from './IrisGridModel';\n\nconst log = Log.module('IrisGridTreeTableModel');\n\nexport interface UITreeRow extends UIRow {\n isExpanded: boolean;\n hasChildren: boolean;\n depth: number;\n}\nclass IrisGridTreeTableModel extends IrisGridTableModelTemplate<\n TreeTable,\n UITreeRow\n> {\n /** We keep a virtual column at the front that tracks the \"group\" that is expanded */\n private virtualColumns: DisplayColumn[];\n\n constructor(\n dh: DhType,\n table: TreeTable,\n formatter = new Formatter(dh),\n inputTable: InputTable | null = null\n ) {\n super(dh, table, formatter, inputTable);\n this.virtualColumns = [\n {\n name: '__DH_UI_GROUP__',\n displayName: 'Group',\n type: TableUtils.dataType.STRING,\n constituentType: TableUtils.dataType.STRING,\n isPartitionColumn: false,\n isSortable: false,\n isProxy: true,\n description: 'Key column',\n filter: () => {\n throw new Error('Filter not implemented for virtual column');\n },\n sort: () => {\n throw new Error('Sort not implemented virtual column');\n },\n formatColor: () => {\n throw new Error('Color not implemented for virtual column');\n },\n formatRowColor: () => {\n throw new Error('Color not implemented for virtual column');\n },\n },\n ];\n }\n\n applyBufferedViewport(\n viewportTop: number,\n viewportBottom: number,\n columns: Column[]\n ): void {\n const viewportColumns = [\n // Need to always fetch the grouped columns so we always have key data for the rows\n // Used to display our virtual key column\n ...this.table.groupedColumns,\n ...columns.filter(\n c =>\n !this.virtualColumns.includes(c) && !this.groupedColumns.includes(c)\n ),\n ];\n this.table.setViewport(viewportTop, viewportBottom, viewportColumns);\n }\n\n textForCell(x: ModelIndex, y: ModelIndex): string {\n const column = this.sourceColumn(x, y);\n const row = this.row(y);\n if (row != null && column != null) {\n if (!row.hasChildren && column.constituentType != null) {\n const value = this.valueForCell(x, y);\n return this.displayString(value, column.constituentType, column.name);\n }\n // Show empty string instead of null in rollup grouping columns (issue #1483)\n if (\n row.hasChildren &&\n row.depth <= x + 1 &&\n this.valueForCell(x, y) === null &&\n this.getCachedGroupedColumnSet(this.groupedColumns).has(x)\n ) {\n return '';\n }\n }\n\n return super.textForCell(x, y);\n }\n\n extractViewportRow(row: TreeRow, columns: Column[]): UITreeRow {\n const { isExpanded, hasChildren, depth } = row;\n const extractedRow = super.extractViewportRow(row, columns);\n const modifiedData = new Map<ModelIndex, CellData>(extractedRow.data);\n if (hasChildren) {\n for (let i = 0; i < this.virtualColumns.length; i += 1) {\n const key = i + (depth - 1) + (this.virtualColumns.length - 1);\n const cellData = modifiedData.get(key);\n if (cellData == null) {\n log.warn('Missing key data for virtual column', i, depth, key, row);\n } else {\n modifiedData.set(i, cellData);\n }\n }\n }\n\n return {\n ...extractedRow,\n data: modifiedData,\n isExpanded,\n hasChildren,\n depth,\n };\n }\n\n async snapshot(\n ranges: GridRange[],\n includeHeaders?: boolean,\n formatValue?: (value: unknown, column: Column) => unknown\n ): Promise<unknown[][]> {\n assertNotNull(this.viewport);\n assertNotNull(this.viewportData);\n const columns = this.viewport.columns ?? this.columns;\n const result = [];\n\n if (includeHeaders != null && includeHeaders) {\n result.push(columns.map(c => c.name));\n }\n\n const viewportRange = new GridRange(\n 0,\n this.viewportData?.offset,\n columns.length,\n this.viewportData.offset + this.viewportData.rows.length\n );\n\n for (let i = 0; i < ranges.length; i += 1) {\n const intersection = GridRange.intersection(viewportRange, ranges[i]);\n\n assertNotNull(intersection);\n assertNotNull(intersection.startRow);\n assertNotNull(intersection.endRow);\n\n for (let r = intersection.startRow; r <= intersection.endRow; r += 1) {\n const resultRow = [];\n const viewportRow =\n this.viewportData.rows[r - this.viewportData.offset];\n assertNotNull(intersection.startColumn);\n assertNotNull(intersection.endColumn);\n for (\n let c = intersection.startColumn;\n c <= intersection.endColumn;\n c += 1\n ) {\n assertNotNull(formatValue);\n resultRow.push(\n formatValue(viewportRow.data.get(c)?.value, this.columns[c])\n );\n }\n result.push(resultRow);\n }\n }\n\n return result;\n }\n\n get columns(): Column[] {\n return this.getCachedColumns(this.virtualColumns, super.columns);\n }\n\n get groupedColumns(): readonly Column[] {\n return this.getCachedGroupColumns(\n this.virtualColumns,\n this.table.groupedColumns\n );\n }\n\n sourceForCell(column: ModelIndex, row: ModelIndex): GridCell {\n if (column >= this.virtualColumns.length) {\n return { column, row };\n }\n const depth = this.depthForRow(row);\n return { column: column + depth, row };\n }\n\n sourceColumn(column: ModelIndex, row: ModelIndex): Column {\n if (column >= this.virtualColumns.length) {\n return super.sourceColumn(column, row);\n }\n\n const depth = this.depthForRow(row);\n return this.columns[column + depth];\n }\n\n getClearFilterRange(column: ModelIndex): BoundedAxisRange | null {\n if (column >= this.virtualColumns.length) {\n return super.getClearFilterRange(column);\n }\n // Source for the proxied column could be any of the grouped columns.\n // Return the range of columns matching the grouped columns.\n return [this.virtualColumns.length, this.groupedColumns.length];\n }\n\n get hasExpandableRows(): boolean {\n return true;\n }\n\n get isExpandAllAvailable(): boolean {\n return this.table.expandAll !== undefined;\n }\n\n get isChartBuilderAvailable(): boolean {\n return false;\n }\n\n get isSelectDistinctAvailable(): boolean {\n return false;\n }\n\n get isReversible(): boolean {\n return false;\n }\n\n isFilterable(columnIndex: ModelIndex): boolean {\n return this.getCachedFilterableColumnSet(\n this.columns,\n this.groupedColumns,\n this.virtualColumns\n ).has(columnIndex);\n }\n\n isColumnMovable(column: ModelIndex): boolean {\n return column >= this.groupedColumns.length;\n }\n\n isRowExpandable(y: ModelIndex): boolean {\n const row = this.row(y);\n return row?.hasChildren ?? false;\n }\n\n isRowExpanded(y: ModelIndex): boolean {\n const row = this.row(y);\n return row?.isExpanded ?? false;\n }\n\n setRowExpanded(\n y: ModelIndex,\n isExpanded: boolean,\n expandDescendants = false\n ): void {\n if (this.isExpandAllAvailable) {\n this.table.setExpanded(y, isExpanded, expandDescendants);\n } else {\n this.table.setExpanded(y, isExpanded);\n }\n }\n\n expandAll(): void {\n if (this.table.expandAll) {\n this.table.expandAll();\n }\n }\n\n collapseAll(): void {\n if (this.table.collapseAll) {\n this.table.collapseAll();\n }\n }\n\n depthForRow(y: ModelIndex): ModelIndex {\n const row = this.row(y);\n return (row?.depth ?? 1) - 1;\n }\n\n getCachedColumns = memoize(\n (virtualColumns: readonly Column[], tableColumns: readonly Column[]) => [\n ...virtualColumns,\n ...tableColumns,\n ]\n );\n\n getCachedGroupColumns = memoize(\n (\n virtualColumns: readonly Column[],\n tableGroupedColumns: readonly Column[]\n ) => [...virtualColumns, ...tableGroupedColumns]\n );\n\n getCachedFilterableColumnSet = memoize(\n (\n columns: readonly Column[],\n groupedColumns: readonly Column[],\n virtualColumns: readonly Column[]\n ) =>\n new Set(\n (groupedColumns?.length > 0 ? groupedColumns : columns)\n .filter(c => !virtualColumns.includes(c))\n .map(c1 => columns.findIndex(c2 => c1.name === c2.name))\n )\n );\n\n getCachedGroupedColumnSet = memoize(\n (groupedColumns: readonly Column[]) =>\n new Set(\n groupedColumns.map(c1 =>\n this.columns.findIndex(c2 => c1.name === c2.name)\n )\n )\n );\n\n updateFrozenColumns(columns: ColumnName[]): void {\n if (columns.length > 0) {\n throw new Error('Cannot freeze columns on a tree table');\n }\n }\n}\n\nexport default IrisGridTreeTableModel;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"IrisGridTreeTableModel.js","names":["memoize","GridRange","Log","Formatter","TableUtils","assertNotNull","IrisGridTableModelTemplate","log","module","IrisGridTreeTableModel","constructor","dh","table","formatter","arguments","length","undefined","inputTable","_defineProperty","virtualColumns","tableColumns","tableGroupedColumns","columns","groupedColumns","Set","filter","c","includes","map","c1","findIndex","c2","name","displayName","type","dataType","STRING","constituentType","isPartitionColumn","isSortable","isProxy","description","index","Error","sort","formatColor","get","getFormat","formatNumber","formatDate","applyBufferedViewport","viewportTop","viewportBottom","viewportColumns","setViewport","textForCell","x","y","column","sourceColumn","row","hasChildren","value","valueForCell","displayString","depth","getCachedGroupedColumnSet","has","extractViewportRow","isExpanded","extractedRow","modifiedData","Map","data","i","key","cellData","warn","set","_objectSpread","snapshot","ranges","includeHeaders","formatValue","_this","_asyncToGenerator","_this$viewport$column","_this$viewportData","viewport","viewportData","result","push","viewportRange","offset","rows","intersection","startRow","endRow","r","resultRow","viewportRow","startColumn","endColumn","_viewportRow$data$get","getCachedColumns","getCachedGroupColumns","sourceForCell","depthForRow","getClearFilterRange","hasExpandableRows","isExpandAllAvailable","expandAll","isChartBuilderAvailable","isSelectDistinctAvailable","isReversible","isFilterable","columnIndex","getCachedFilterableColumnSet","isColumnMovable","isRowExpandable","_row$hasChildren","isRowExpanded","_row$isExpanded","setRowExpanded","expandDescendants","setExpanded","collapseAll","_row$depth","updateFrozenColumns"],"sources":["../src/IrisGridTreeTableModel.ts"],"sourcesContent":["/* eslint class-methods-use-this: \"off\" */\nimport memoize from 'memoize-one';\nimport {\n BoundedAxisRange,\n GridCell,\n GridRange,\n ModelIndex,\n} from '@deephaven/grid';\nimport type { dh as DhType } from '@deephaven/jsapi-types';\nimport Log from '@deephaven/log';\nimport { Formatter, TableUtils } from '@deephaven/jsapi-utils';\nimport { assertNotNull } from '@deephaven/utils';\nimport { UIRow, ColumnName, CellData } from './CommonTypes';\nimport IrisGridTableModelTemplate from './IrisGridTableModelTemplate';\nimport { DisplayColumn } from './IrisGridModel';\n\nconst log = Log.module('IrisGridTreeTableModel');\n\nexport interface UITreeRow extends UIRow {\n isExpanded: boolean;\n hasChildren: boolean;\n depth: number;\n}\nclass IrisGridTreeTableModel extends IrisGridTableModelTemplate<\n DhType.TreeTable,\n UITreeRow\n> {\n /** We keep a virtual column at the front that tracks the \"group\" that is expanded */\n private virtualColumns: DisplayColumn[];\n\n constructor(\n dh: typeof DhType,\n table: DhType.TreeTable,\n formatter = new Formatter(dh),\n inputTable: DhType.InputTable | null = null\n ) {\n super(dh, table, formatter, inputTable);\n this.virtualColumns =\n table.groupedColumns.length > 1\n ? [\n {\n name: '__DH_UI_GROUP__',\n displayName: 'Group',\n type: TableUtils.dataType.STRING,\n constituentType: TableUtils.dataType.STRING,\n isPartitionColumn: false,\n isSortable: false,\n isProxy: true,\n description: 'Key column',\n index: -1,\n filter: () => {\n throw new Error('Filter not implemented for virtual column');\n },\n sort: () => {\n throw new Error('Sort not implemented virtual column');\n },\n formatColor: () => {\n throw new Error('Color not implemented for virtual column');\n },\n get: () => {\n throw new Error('get not implemented for virtual column');\n },\n getFormat: () => {\n throw new Error('getFormat not implemented for virtual column');\n },\n formatNumber: () => {\n throw new Error(\n 'formatNumber not implemented for virtual column'\n );\n },\n formatDate: () => {\n throw new Error(\n 'formatDate not implemented for virtual column'\n );\n },\n },\n ]\n : [];\n }\n\n applyBufferedViewport(\n viewportTop: number,\n viewportBottom: number,\n columns: DhType.Column[]\n ): void {\n const viewportColumns = [\n // Need to always fetch the grouped columns so we always have key data for the rows\n // Used to display our virtual key column\n ...this.table.groupedColumns,\n ...columns.filter(\n c =>\n !this.virtualColumns.includes(c) && !this.groupedColumns.includes(c)\n ),\n ];\n this.table.setViewport(viewportTop, viewportBottom, viewportColumns);\n }\n\n textForCell(x: ModelIndex, y: ModelIndex): string {\n const column = this.sourceColumn(x, y);\n const row = this.row(y);\n if (row != null && column != null) {\n if (!row.hasChildren && column.constituentType != null) {\n const value = this.valueForCell(x, y);\n return this.displayString(value, column.constituentType, column.name);\n }\n // Show empty string instead of null in rollup grouping columns (issue #1483)\n if (\n row.hasChildren &&\n row.depth <= x + 1 &&\n this.valueForCell(x, y) === null &&\n this.getCachedGroupedColumnSet(this.groupedColumns).has(x)\n ) {\n return '';\n }\n }\n\n return super.textForCell(x, y);\n }\n\n extractViewportRow(row: DhType.TreeRow, columns: DhType.Column[]): UITreeRow {\n const { isExpanded, hasChildren, depth } = row;\n const extractedRow = super.extractViewportRow(row, columns);\n const modifiedData = new Map<ModelIndex, CellData>(extractedRow.data);\n if (hasChildren) {\n for (let i = 0; i < this.virtualColumns.length; i += 1) {\n const key = i + (depth - 1) + (this.virtualColumns.length - 1);\n const cellData = modifiedData.get(key);\n if (cellData == null) {\n log.warn('Missing key data for virtual column', i, depth, key, row);\n } else {\n modifiedData.set(i, cellData);\n }\n }\n }\n\n return {\n ...extractedRow,\n data: modifiedData,\n isExpanded,\n hasChildren,\n depth,\n };\n }\n\n async snapshot(\n ranges: GridRange[],\n includeHeaders?: boolean,\n formatValue?: (value: unknown, column: DhType.Column) => unknown\n ): Promise<unknown[][]> {\n assertNotNull(this.viewport);\n assertNotNull(this.viewportData);\n const columns = this.viewport.columns ?? this.columns;\n const result = [];\n\n if (includeHeaders != null && includeHeaders) {\n result.push(columns.map(c => c.name));\n }\n\n const viewportRange = new GridRange(\n 0,\n this.viewportData?.offset,\n columns.length,\n this.viewportData.offset + this.viewportData.rows.length\n );\n\n for (let i = 0; i < ranges.length; i += 1) {\n const intersection = GridRange.intersection(viewportRange, ranges[i]);\n\n assertNotNull(intersection);\n assertNotNull(intersection.startRow);\n assertNotNull(intersection.endRow);\n\n for (let r = intersection.startRow; r <= intersection.endRow; r += 1) {\n const resultRow = [];\n const viewportRow =\n this.viewportData.rows[r - this.viewportData.offset];\n assertNotNull(intersection.startColumn);\n assertNotNull(intersection.endColumn);\n for (\n let c = intersection.startColumn;\n c <= intersection.endColumn;\n c += 1\n ) {\n assertNotNull(formatValue);\n resultRow.push(\n formatValue(viewportRow.data.get(c)?.value, this.columns[c])\n );\n }\n result.push(resultRow);\n }\n }\n\n return result;\n }\n\n get columns(): DhType.Column[] {\n return this.getCachedColumns(this.virtualColumns, super.columns);\n }\n\n get groupedColumns(): readonly DhType.Column[] {\n return this.getCachedGroupColumns(\n this.virtualColumns,\n this.table.groupedColumns\n );\n }\n\n sourceForCell(column: ModelIndex, row: ModelIndex): GridCell {\n if (column >= this.virtualColumns.length) {\n return { column, row };\n }\n const depth = this.depthForRow(row);\n return { column: column + depth, row };\n }\n\n sourceColumn(column: ModelIndex, row: ModelIndex): DhType.Column {\n if (column >= this.virtualColumns.length) {\n return super.sourceColumn(column, row);\n }\n\n const depth = this.depthForRow(row);\n return this.columns[column + depth];\n }\n\n getClearFilterRange(column: ModelIndex): BoundedAxisRange | null {\n if (column >= this.virtualColumns.length) {\n return super.getClearFilterRange(column);\n }\n // Source for the proxied column could be any of the grouped columns.\n // Return the range of columns matching the grouped columns.\n return [this.virtualColumns.length, this.groupedColumns.length];\n }\n\n get hasExpandableRows(): boolean {\n return true;\n }\n\n get isExpandAllAvailable(): boolean {\n return this.table.expandAll !== undefined;\n }\n\n get isChartBuilderAvailable(): boolean {\n return false;\n }\n\n get isSelectDistinctAvailable(): boolean {\n return false;\n }\n\n get isReversible(): boolean {\n return false;\n }\n\n isFilterable(columnIndex: ModelIndex): boolean {\n return this.getCachedFilterableColumnSet(\n this.columns,\n this.groupedColumns,\n this.virtualColumns\n ).has(columnIndex);\n }\n\n isColumnMovable(column: ModelIndex): boolean {\n return column >= this.groupedColumns.length;\n }\n\n isRowExpandable(y: ModelIndex): boolean {\n const row = this.row(y);\n return row?.hasChildren ?? false;\n }\n\n isRowExpanded(y: ModelIndex): boolean {\n const row = this.row(y);\n return row?.isExpanded ?? false;\n }\n\n setRowExpanded(\n y: ModelIndex,\n isExpanded: boolean,\n expandDescendants = false\n ): void {\n if (this.isExpandAllAvailable) {\n this.table.setExpanded(y, isExpanded, expandDescendants);\n } else {\n this.table.setExpanded(y, isExpanded);\n }\n }\n\n expandAll(): void {\n if (this.table.expandAll != null) {\n this.table.expandAll();\n }\n }\n\n collapseAll(): void {\n if (this.table.collapseAll != null) {\n this.table.collapseAll();\n }\n }\n\n depthForRow(y: ModelIndex): ModelIndex {\n const row = this.row(y);\n return (row?.depth ?? 1) - 1;\n }\n\n getCachedColumns = memoize(\n (\n virtualColumns: readonly DhType.Column[],\n tableColumns: readonly DhType.Column[]\n ) => [...virtualColumns, ...tableColumns]\n );\n\n getCachedGroupColumns = memoize(\n (\n virtualColumns: readonly DhType.Column[],\n tableGroupedColumns: readonly DhType.Column[]\n ) => [...virtualColumns, ...tableGroupedColumns]\n );\n\n getCachedFilterableColumnSet = memoize(\n (\n columns: readonly DhType.Column[],\n groupedColumns: readonly DhType.Column[],\n virtualColumns: readonly DhType.Column[]\n ) =>\n new Set(\n (groupedColumns?.length > 0 ? groupedColumns : columns)\n .filter(c => !virtualColumns.includes(c))\n .map(c1 => columns.findIndex(c2 => c1.name === c2.name))\n )\n );\n\n getCachedGroupedColumnSet = memoize(\n (groupedColumns: readonly DhType.Column[]) =>\n new Set(\n groupedColumns.map(c1 =>\n this.columns.findIndex(c2 => c1.name === c2.name)\n )\n )\n );\n\n updateFrozenColumns(columns: ColumnName[]): void {\n if (columns.length > 0) {\n throw new Error('Cannot freeze columns on a tree table');\n }\n }\n}\n\nexport default IrisGridTreeTableModel;\n"],"mappings":"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"}
|
package/dist/IrisGridUtils.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { GridMetrics, GridRange, ModelIndex, ModelSizeMap, MoveOperation, VisibleIndex } from '@deephaven/grid';
|
|
2
|
-
import type {
|
|
2
|
+
import type { dh as DhType } from '@deephaven/jsapi-types';
|
|
3
3
|
import { ReverseType, SortDirection, FormattingRule } from '@deephaven/jsapi-utils';
|
|
4
4
|
import { FilterData, IrisGridProps, IrisGridState } from './IrisGrid';
|
|
5
5
|
import { ColumnName, ReadonlyAdvancedFilterMap, ReadonlyQuickFilterMap, InputFilter, CellData, UIRow, AdvancedFilterOptions } from './CommonTypes';
|
|
@@ -41,7 +41,7 @@ export interface LegacyDehydratedSort {
|
|
|
41
41
|
export interface DehydratedSort {
|
|
42
42
|
column: ColumnName;
|
|
43
43
|
isAbs: boolean;
|
|
44
|
-
direction:
|
|
44
|
+
direction: string;
|
|
45
45
|
}
|
|
46
46
|
export interface TableSettings {
|
|
47
47
|
quickFilters?: readonly DehydratedQuickFilter[];
|
|
@@ -71,7 +71,7 @@ export interface DehydratedIrisGridState {
|
|
|
71
71
|
invertSearchColumns: boolean;
|
|
72
72
|
pendingDataMap: DehydratedPendingDataMap<string | CellData | null>;
|
|
73
73
|
frozenColumns: readonly ColumnName[];
|
|
74
|
-
columnHeaderGroups?: readonly ColumnGroup[];
|
|
74
|
+
columnHeaderGroups?: readonly DhType.ColumnGroup[];
|
|
75
75
|
partitionConfig?: DehydratedPartitionConfig;
|
|
76
76
|
}
|
|
77
77
|
export interface DehydratedIrisGridPanelStateV1 {
|
|
@@ -152,7 +152,7 @@ declare class IrisGridUtils {
|
|
|
152
152
|
* @param sorts The table sorts
|
|
153
153
|
* @returns The dehydrated sorts
|
|
154
154
|
*/
|
|
155
|
-
static dehydrateSort(sorts: readonly Sort[]): DehydratedSort[];
|
|
155
|
+
static dehydrateSort(sorts: readonly DhType.Sort[]): DehydratedSort[];
|
|
156
156
|
/**
|
|
157
157
|
* Pulls just the table settings from the panel state, eg. filters/sorts
|
|
158
158
|
* @param panelState The dehydrated panel state
|
|
@@ -172,8 +172,8 @@ declare class IrisGridUtils {
|
|
|
172
172
|
quickFilters: QF;
|
|
173
173
|
sorts: S;
|
|
174
174
|
};
|
|
175
|
-
static getInputFiltersForColumns(columns: readonly Column[], inputFilters?: readonly InputFilter[]): InputFilter[];
|
|
176
|
-
static getFiltersFromFilterMap(filterMap: ReadonlyAdvancedFilterMap | ReadonlyQuickFilterMap): FilterCondition[];
|
|
175
|
+
static getInputFiltersForColumns(columns: readonly DhType.Column[], inputFilters?: readonly InputFilter[]): InputFilter[];
|
|
176
|
+
static getFiltersFromFilterMap(filterMap: ReadonlyAdvancedFilterMap | ReadonlyQuickFilterMap): DhType.FilterCondition[];
|
|
177
177
|
/**
|
|
178
178
|
* Get array of hidden column indexes
|
|
179
179
|
* @param userColumnWidths Map of user column widths
|
|
@@ -182,15 +182,15 @@ declare class IrisGridUtils {
|
|
|
182
182
|
static getHiddenColumns(userColumnWidths: ModelSizeMap): ModelIndex[];
|
|
183
183
|
static parseCustomColumnNames(customColumns: readonly ColumnName[]): ColumnName[];
|
|
184
184
|
static getRemovedCustomColumnNames(oldCustomColumns: readonly ColumnName[], customColumns: readonly ColumnName[]): ColumnName[];
|
|
185
|
-
static removeSortsInColumns(sorts: readonly Sort[], columnNames: readonly string[]): Sort[];
|
|
186
|
-
static removeFiltersInColumns<T>(columns: readonly Column[], filters: ReadonlyMap<number, T>, removedColumnNames: readonly ColumnName[]): Map<number, T>;
|
|
187
|
-
static removeColumnFromMovedColumns(columns: readonly Column[], movedColumns: readonly MoveOperation[], removedColumnNames: readonly ColumnName[]): MoveOperation[];
|
|
185
|
+
static removeSortsInColumns(sorts: readonly DhType.Sort[], columnNames: readonly string[]): DhType.Sort[];
|
|
186
|
+
static removeFiltersInColumns<T>(columns: readonly DhType.Column[], filters: ReadonlyMap<number, T>, removedColumnNames: readonly ColumnName[]): Map<number, T>;
|
|
187
|
+
static removeColumnFromMovedColumns(columns: readonly DhType.Column[], movedColumns: readonly MoveOperation[], removedColumnNames: readonly ColumnName[]): MoveOperation[];
|
|
188
188
|
static removeColumnsFromSelectDistinctColumns(selectDistinctColumns: readonly ColumnName[], removedColumnNames: readonly ColumnName[]): ColumnName[];
|
|
189
|
-
static getVisibleColumnsInRange(tableColumns: readonly Column[], left: number, right: number, movedColumns: readonly MoveOperation[], hiddenColumns: readonly number[]): Column[];
|
|
190
|
-
static getPrevVisibleColumns(tableColumns: readonly Column[], startIndex: VisibleIndex, count: number, movedColumns: readonly MoveOperation[], hiddenColumns: readonly VisibleIndex[]): Column[];
|
|
191
|
-
static getNextVisibleColumns(tableColumns: readonly Column[], startIndex: VisibleIndex, count: number, movedColumns: readonly MoveOperation[], hiddenColumns: readonly VisibleIndex[]): Column[];
|
|
192
|
-
static getColumnsToFetch(tableColumns: readonly Column[], viewportColumns: readonly Column[], alwaysFetchColumnNames: readonly ColumnName[]): Column[];
|
|
193
|
-
static getModelViewportColumns(columns: readonly Column[], left: number | null, right: number | null, movedColumns: readonly MoveOperation[], hiddenColumns?: readonly VisibleIndex[], alwaysFetchColumnNames?: readonly ColumnName[], bufferPages?: number): Column[] | undefined;
|
|
189
|
+
static getVisibleColumnsInRange(tableColumns: readonly DhType.Column[], left: number, right: number, movedColumns: readonly MoveOperation[], hiddenColumns: readonly number[]): DhType.Column[];
|
|
190
|
+
static getPrevVisibleColumns(tableColumns: readonly DhType.Column[], startIndex: VisibleIndex, count: number, movedColumns: readonly MoveOperation[], hiddenColumns: readonly VisibleIndex[]): DhType.Column[];
|
|
191
|
+
static getNextVisibleColumns(tableColumns: readonly DhType.Column[], startIndex: VisibleIndex, count: number, movedColumns: readonly MoveOperation[], hiddenColumns: readonly VisibleIndex[]): DhType.Column[];
|
|
192
|
+
static getColumnsToFetch(tableColumns: readonly DhType.Column[], viewportColumns: readonly DhType.Column[], alwaysFetchColumnNames: readonly ColumnName[]): DhType.Column[];
|
|
193
|
+
static getModelViewportColumns(columns: readonly DhType.Column[], left: number | null, right: number | null, movedColumns: readonly MoveOperation[], hiddenColumns?: readonly VisibleIndex[], alwaysFetchColumnNames?: readonly ColumnName[], bufferPages?: number): DhType.Column[] | undefined;
|
|
194
194
|
/**
|
|
195
195
|
* Validate whether the ranges passed in are valid to take a snapshot from.
|
|
196
196
|
* Multiple selections are valid if all of the selected rows have the same columns selected.
|
|
@@ -210,13 +210,13 @@ declare class IrisGridUtils {
|
|
|
210
210
|
* @param allColumns All the columns to pull from
|
|
211
211
|
* @returns The columns selected in the range
|
|
212
212
|
*/
|
|
213
|
-
static columnsFromRanges(ranges: readonly GridRange[], allColumns: readonly Column[]): Column[];
|
|
213
|
+
static columnsFromRanges(ranges: readonly GridRange[], allColumns: readonly DhType.Column[]): DhType.Column[];
|
|
214
214
|
/**
|
|
215
215
|
* Transforms an iris data snapshot into a simple data matrix
|
|
216
216
|
* @param data The Iris formatted table data
|
|
217
217
|
* @returns A matrix of the values of the data
|
|
218
218
|
*/
|
|
219
|
-
static snapshotDataToMatrix(data: TableData): unknown[][];
|
|
219
|
+
static snapshotDataToMatrix(data: DhType.TableData): unknown[][];
|
|
220
220
|
/**
|
|
221
221
|
* Hydrate model rollup config
|
|
222
222
|
* @param originalColumns Original model columns
|
|
@@ -224,7 +224,7 @@ declare class IrisGridUtils {
|
|
|
224
224
|
* @param aggregationSettings Aggregation settings
|
|
225
225
|
* @returns Rollup config for the model
|
|
226
226
|
*/
|
|
227
|
-
static getModelRollupConfig(originalColumns: readonly Column[], config: UIRollupConfig | undefined, aggregationSettings: AggregationSettings): RollupConfig | null;
|
|
227
|
+
static getModelRollupConfig(originalColumns: readonly DhType.Column[], config: UIRollupConfig | undefined, aggregationSettings: AggregationSettings): DhType.RollupConfig | null;
|
|
228
228
|
/**
|
|
229
229
|
* @param pendingDataMap Map of pending data
|
|
230
230
|
* @returns A map with the errors in the pending data
|
|
@@ -236,20 +236,20 @@ declare class IrisGridUtils {
|
|
|
236
236
|
* @param columns The columns to get the column from
|
|
237
237
|
* @param columnIndex The column index to get
|
|
238
238
|
*/
|
|
239
|
-
static getColumn(columns: readonly Column[], columnIndex: ModelIndex): Column | null;
|
|
239
|
+
static getColumn(columns: readonly DhType.Column[], columnIndex: ModelIndex): DhType.Column | null;
|
|
240
240
|
/**
|
|
241
241
|
* Retrieves a column from the provided array matching the name, or `null` and logs an error if not found
|
|
242
242
|
* @param columns The columns to get the column from
|
|
243
243
|
* @param columnName The column name to retrieve
|
|
244
244
|
*/
|
|
245
|
-
static getColumnByName(columns: readonly Column[], columnName: ColumnName): Column | undefined;
|
|
245
|
+
static getColumnByName(columns: readonly DhType.Column[], columnName: ColumnName): DhType.Column | undefined;
|
|
246
246
|
/**
|
|
247
247
|
* Get filter configs with column names changed to indexes, exclude missing columns
|
|
248
248
|
* @param columns The columns to get column indexes from
|
|
249
249
|
* @param filters Filter configs
|
|
250
250
|
* @returns Updated filter configs with column names changed to indexes
|
|
251
251
|
*/
|
|
252
|
-
static changeFilterColumnNamesToIndexes<T>(columns: readonly Column[], filters: {
|
|
252
|
+
static changeFilterColumnNamesToIndexes<T>(columns: readonly DhType.Column[], filters: {
|
|
253
253
|
name: ColumnName;
|
|
254
254
|
filter: T;
|
|
255
255
|
}[]): [number, T][];
|
|
@@ -265,7 +265,7 @@ declare class IrisGridUtils {
|
|
|
265
265
|
*
|
|
266
266
|
* @returns Object containing groups array, max depth, map of name to parent group, and map of name to group
|
|
267
267
|
*/
|
|
268
|
-
static parseColumnHeaderGroups(model: IrisGridModel, groupsParam: readonly ColumnGroup[]): {
|
|
268
|
+
static parseColumnHeaderGroups(model: IrisGridModel, groupsParam: readonly (DhType.ColumnGroup | ColumnHeaderGroup)[]): {
|
|
269
269
|
groups: ColumnHeaderGroup[];
|
|
270
270
|
maxDepth: number;
|
|
271
271
|
parentMap: Map<string, ColumnHeaderGroup>;
|
|
@@ -279,7 +279,7 @@ declare class IrisGridUtils {
|
|
|
279
279
|
static convertValueToText(value: unknown, columnType: string): string;
|
|
280
280
|
private dh;
|
|
281
281
|
private tableUtils;
|
|
282
|
-
constructor(dh: DhType);
|
|
282
|
+
constructor(dh: typeof DhType);
|
|
283
283
|
/**
|
|
284
284
|
* Exports the state from IrisGrid to a JSON stringifiable object
|
|
285
285
|
* @param model The table model to export the state for
|
|
@@ -302,14 +302,14 @@ declare class IrisGridUtils {
|
|
|
302
302
|
* @param timeZone The time zone to make this value in if it is a date type. E.g. America/New_York
|
|
303
303
|
* @returns The quick filters to apply to the columns
|
|
304
304
|
*/
|
|
305
|
-
hydrateQuickFilters(columns: readonly Column[], savedQuickFilters: readonly DehydratedQuickFilter[], timeZone?: string): ReadonlyQuickFilterMap;
|
|
305
|
+
hydrateQuickFilters(columns: readonly DhType.Column[], savedQuickFilters: readonly DehydratedQuickFilter[], timeZone?: string): ReadonlyQuickFilterMap;
|
|
306
306
|
/**
|
|
307
307
|
* Export the advanced filters from the provided columns to JSON striginfiable object
|
|
308
308
|
* @param columns The columns for the filters
|
|
309
309
|
* @param advancedFilters The advanced filters to dehydrate
|
|
310
310
|
* @returns The dehydrated advanced filters
|
|
311
311
|
*/
|
|
312
|
-
dehydrateAdvancedFilters(columns: readonly Column[], advancedFilters: ReadonlyAdvancedFilterMap): DehydratedAdvancedFilter[];
|
|
312
|
+
dehydrateAdvancedFilters(columns: readonly DhType.Column[], advancedFilters: ReadonlyAdvancedFilterMap): DehydratedAdvancedFilter[];
|
|
313
313
|
/**
|
|
314
314
|
* Import the saved advanced filters to apply to the columns. Does not actually apply the filters.
|
|
315
315
|
* @param columns The columns the filters will be applied to
|
|
@@ -317,17 +317,17 @@ declare class IrisGridUtils {
|
|
|
317
317
|
* @param timeZone The time zone to make this filter in if it is a date type. E.g. America/New_York
|
|
318
318
|
* @returns The advanced filters to apply to the columns
|
|
319
319
|
*/
|
|
320
|
-
hydrateAdvancedFilters(columns: readonly Column[], savedAdvancedFilters: readonly DehydratedAdvancedFilter[], timeZone: string): ReadonlyAdvancedFilterMap;
|
|
321
|
-
dehydrateAdvancedFilterOptions(column: Column, options: AdvancedFilterOptions): AdvancedFilterOptions;
|
|
322
|
-
hydrateAdvancedFilterOptions(column: Column, options: AdvancedFilterOptions): AdvancedFilterOptions;
|
|
323
|
-
dehydratePendingDataMap(columns: readonly Column[], pendingDataMap: ReadonlyMap<ModelIndex, {
|
|
320
|
+
hydrateAdvancedFilters(columns: readonly DhType.Column[], savedAdvancedFilters: readonly DehydratedAdvancedFilter[], timeZone: string): ReadonlyAdvancedFilterMap;
|
|
321
|
+
dehydrateAdvancedFilterOptions(column: DhType.Column, options: AdvancedFilterOptions): AdvancedFilterOptions;
|
|
322
|
+
hydrateAdvancedFilterOptions(column: DhType.Column, options: AdvancedFilterOptions): AdvancedFilterOptions;
|
|
323
|
+
dehydratePendingDataMap(columns: readonly DhType.Column[], pendingDataMap: ReadonlyMap<ModelIndex, {
|
|
324
324
|
data: Map<ModelIndex, CellData | string>;
|
|
325
325
|
}>): DehydratedPendingDataMap<CellData | string | null>;
|
|
326
|
-
hydratePendingDataMap(columns: readonly Column[], pendingDataMap: DehydratedPendingDataMap<CellData | string | null>): Map<number, {
|
|
327
|
-
data: Map<ModelIndex | null, string | CellData | LongWrapper | null>;
|
|
326
|
+
hydratePendingDataMap(columns: readonly DhType.Column[], pendingDataMap: DehydratedPendingDataMap<CellData | string | null>): Map<number, {
|
|
327
|
+
data: Map<ModelIndex | null, string | CellData | DhType.LongWrapper | null>;
|
|
328
328
|
}>;
|
|
329
|
-
dehydratePartitionConfig(partitionColumns: readonly Column[], partitionConfig: PartitionConfig | undefined): PartitionConfig | undefined;
|
|
330
|
-
hydratePartitionConfig(partitionColumns: readonly Column[], partitionConfig: PartitionConfig | undefined): PartitionConfig | undefined;
|
|
329
|
+
dehydratePartitionConfig(partitionColumns: readonly DhType.Column[], partitionConfig: PartitionConfig | undefined): PartitionConfig | undefined;
|
|
330
|
+
hydratePartitionConfig(partitionColumns: readonly DhType.Column[], partitionConfig: PartitionConfig | undefined): PartitionConfig | undefined;
|
|
331
331
|
/**
|
|
332
332
|
* Dehydrates/serializes a value for storage.
|
|
333
333
|
* @param value The value to dehydrate
|
|
@@ -339,25 +339,25 @@ declare class IrisGridUtils {
|
|
|
339
339
|
* @param value The dehydrated value that needs to be hydrated
|
|
340
340
|
* @param columnType The type of column
|
|
341
341
|
*/
|
|
342
|
-
hydrateValue<T>(value: T, columnType: string): DateWrapper | LongWrapper | T | null;
|
|
343
|
-
dehydrateDateTime(value: number | DateWrapper | Date): string | null;
|
|
344
|
-
hydrateDateTime(value: string): DateWrapper | null;
|
|
345
|
-
hydrateLong(value: string): LongWrapper | null;
|
|
342
|
+
hydrateValue<T>(value: T, columnType: string): DhType.DateWrapper | DhType.LongWrapper | T | null;
|
|
343
|
+
dehydrateDateTime(value: number | DhType.DateWrapper | Date): string | null;
|
|
344
|
+
hydrateDateTime(value: string): DhType.DateWrapper | null;
|
|
345
|
+
hydrateLong(value: string): DhType.LongWrapper | null;
|
|
346
346
|
/**
|
|
347
347
|
* Import the saved sorts to apply to the table. Does not actually apply the sort.
|
|
348
348
|
* @param columns The columns the sorts will be applied to
|
|
349
349
|
* @param sorts Exported sort definitions
|
|
350
350
|
* @returns The sorts to apply to the table
|
|
351
351
|
*/
|
|
352
|
-
hydrateSort(columns: readonly Column[], sorts: readonly (DehydratedSort | LegacyDehydratedSort)[]): Sort[];
|
|
352
|
+
hydrateSort(columns: readonly DhType.Column[], sorts: readonly (DehydratedSort | LegacyDehydratedSort)[]): DhType.Sort[];
|
|
353
353
|
/**
|
|
354
354
|
* Applies the passed in table settings directly to the provided table
|
|
355
355
|
* @param table The table to apply the settings to
|
|
356
356
|
* @param tableSettings Dehydrated table settings extracted with `extractTableSettings`
|
|
357
357
|
* @param timeZone The time zone to make this value in if it is a date type. E.g. America/New_York
|
|
358
358
|
*/
|
|
359
|
-
applyTableSettings(table: Table, tableSettings: TableSettings, timeZone: string): void;
|
|
360
|
-
getFiltersFromInputFilters(columns: readonly Column[], inputFilters?: readonly InputFilter[], timeZone?: string): FilterCondition[];
|
|
359
|
+
applyTableSettings(table: DhType.Table, tableSettings: TableSettings, timeZone: string): void;
|
|
360
|
+
getFiltersFromInputFilters(columns: readonly DhType.Column[], inputFilters?: readonly InputFilter[], timeZone?: string): DhType.FilterCondition[];
|
|
361
361
|
/**
|
|
362
362
|
* Get the dh.RangeSet representation of the provided ranges.
|
|
363
363
|
* Ranges are sorted prior to creating the RangeSet. Only the rows are taken into account,
|
|
@@ -365,7 +365,7 @@ declare class IrisGridUtils {
|
|
|
365
365
|
* @param ranges The ranges to get the range set for
|
|
366
366
|
* @returns The rangeset for the provided ranges
|
|
367
367
|
*/
|
|
368
|
-
rangeSetFromRanges(ranges: readonly GridRange[]): RangeSet;
|
|
368
|
+
rangeSetFromRanges(ranges: readonly GridRange[]): DhType.RangeSet;
|
|
369
369
|
}
|
|
370
370
|
export default IrisGridUtils;
|
|
371
371
|
//# sourceMappingURL=IrisGridUtils.d.ts.map
|