@deephaven/iris-grid 1.6.1-beta.0 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ColumnHeaderGroup.d.ts +9 -8
- package/dist/ColumnHeaderGroup.d.ts.map +1 -1
- package/dist/ColumnHeaderGroup.js.map +1 -1
- package/dist/CommonTypes.d.ts +18 -2
- package/dist/CommonTypes.d.ts.map +1 -1
- package/dist/CommonTypes.js.map +1 -1
- package/dist/IrisGrid.d.ts +14 -5
- package/dist/IrisGrid.d.ts.map +1 -1
- package/dist/IrisGrid.js +110 -45
- package/dist/IrisGrid.js.map +1 -1
- package/dist/IrisGridMetricCalculator.d.ts +42 -23
- package/dist/IrisGridMetricCalculator.d.ts.map +1 -1
- package/dist/IrisGridMetricCalculator.js +120 -5
- package/dist/IrisGridMetricCalculator.js.map +1 -1
- package/dist/IrisGridRenderer.d.ts +3 -15
- package/dist/IrisGridRenderer.d.ts.map +1 -1
- package/dist/IrisGridRenderer.js +3 -3
- package/dist/IrisGridRenderer.js.map +1 -1
- package/dist/IrisGridTableModel.d.ts +1 -0
- package/dist/IrisGridTableModel.d.ts.map +1 -1
- package/dist/IrisGridTableModel.js +3 -0
- package/dist/IrisGridTableModel.js.map +1 -1
- package/dist/IrisGridTreeTableModel.d.ts +2 -2
- package/dist/IrisGridTreeTableModel.d.ts.map +1 -1
- package/dist/IrisGridTreeTableModel.js +0 -1
- package/dist/IrisGridTreeTableModel.js.map +1 -1
- package/dist/IrisGridUtils.d.ts +5 -5
- package/dist/IrisGridUtils.d.ts.map +1 -1
- package/dist/IrisGridUtils.js +4 -2
- package/dist/IrisGridUtils.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/mousehandlers/IrisGridContextMenuHandler.d.ts.map +1 -1
- package/dist/mousehandlers/IrisGridContextMenuHandler.js +23 -2
- package/dist/mousehandlers/IrisGridContextMenuHandler.js.map +1 -1
- package/package.json +16 -16
|
@@ -61,6 +61,9 @@ class IrisGridTableModel extends IrisGridTableModelTemplate {
|
|
|
61
61
|
get isSelectDistinctAvailable() {
|
|
62
62
|
return this.table.selectDistinct != null;
|
|
63
63
|
}
|
|
64
|
+
get isOrganizeColumnsAvailable() {
|
|
65
|
+
return true;
|
|
66
|
+
}
|
|
64
67
|
get isCustomColumnsAvailable() {
|
|
65
68
|
return this.table.applyCustomColumns != null;
|
|
66
69
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IrisGridTableModel.js","names":["memoize","GridRange","Log","Formatter","EventShimCustomEvent","PromiseUtils","assertNotNull","EMPTY_ARRAY","IrisGridModel","IrisGridTableModelTemplate","log","module","IrisGridTableModel","constructor","dh","table","formatter","arguments","length","undefined","inputTable","_defineProperty","inputTableKeys","Set","layoutHintsFrontColumns","layoutHintsBackColumns","layoutHintsFrozenColumns","userFrozenColumns","_ref","columns","map","_","index","filter","column","isPartitionColumn","customColumnList","formatColumnList","initialFilters","wasUncoalesced","isPartitionRequired","isExportAvailable","freeze","isColumnStatisticsAvailable","getColumnStatistics","isRollupAvailable","rollup","isSelectDistinctAvailable","selectDistinct","isCustomColumnsAvailable","applyCustomColumns","isFormatColumnsAvailable","keyColumnSet","_this$inputTable","getMemoizedKeyColumnSet","keys","frontColumns","_this$layoutHints$fro","_this$layoutHints","getMemoizedFrontColumns","layoutHints","backColumns","_this$layoutHints$bac","_this$layoutHints2","getMemoizedBackColumns","frozenColumns","_this$layoutHints$fro2","_this$layoutHints3","getMemoizedFrozenColumns","floatingLeftColumnCount","description","_this$table$descripti","customColumns","debug2","debug","closeSubscription","formatColumns","applyViewport","updateFrozenColumns","dispatchEvent","EVENT","COLUMNS_CHANGED","detail","partitionColumns","getCachedPartitionColumns","partitionKeysTable","_this","_asyncToGenerator","valuesTable","partitionMergedTable","_this2","t","copy","applyFilter","partitionBaseTable","_this3","partitionTable","partitions","_this4","partitionFilters","i","partition","partitionColumn","partitionFilter","tableUtils","makeNullableEqFilter","push","totalsConfig","totals","formattedStringData","totalsTablePromise","cancel","setTotalsTable","UPDATED","makeCancelable","getTotalsTable","close","then","totalsTable","catch","err","isCanceled","error","REQUEST_FAILED","isFilterRequired","isUncoalesced","isValuesTableAvailable","isPartitionAwareSourceTable","isFilterable","columnIndex","getCachedFilterableColumnSet","has","export","_this5","columnStatistics","isColumnMovable","modelIndex","columnName","name","includes","isKeyColumn","isColumnFrozen","delete","ranges","_superprop_getPendingDataMap","pendingDataMap","_superprop_setPendingDataMap","_value","_this6","_this6$inputTable","isDeletableRanges","Error","concat","keyColumns","size","pendingAreaRange","getPendingAreaRange","pendingRanges","range","intersection","offset","floatingTopRowCount","newDataMap","Map","pendingRange","startRow","endRow","r","PENDING_DATA_UPDATED","tableAreaRange","getTableAreaRange","tableRanges","data","deleteTable","Promise","all","snapshot","keyColumn","keyIndex","getColumnIndexByName","flat","filters","row","columnFilters","c","value","reduce","agg","curr","_agg$and","and","_agg$or","or","seekRow","valueType","insensitive","contains","isBackwards","_this7","isSeekRowAvailable"],"sources":["../src/IrisGridTableModel.ts"],"sourcesContent":["/* eslint class-methods-use-this: \"off\" */\nimport memoize from 'memoize-one';\nimport { GridRange, type ModelIndex } from '@deephaven/grid';\nimport type { dh as DhType } from '@deephaven/jsapi-types';\nimport Log from '@deephaven/log';\nimport { Formatter } from '@deephaven/jsapi-utils';\nimport {\n EventShimCustomEvent,\n PromiseUtils,\n assertNotNull,\n EMPTY_ARRAY,\n} from '@deephaven/utils';\nimport IrisGridModel from './IrisGridModel';\nimport {\n type ColumnName,\n type UIRow,\n type UITotalsTableConfig,\n} from './CommonTypes';\nimport IrisGridTableModelTemplate from './IrisGridTableModelTemplate';\nimport { type PartitionedGridModelProvider } from './PartitionedGridModel';\n\nconst log = Log.module('IrisGridTableModel');\n\n/**\n * Model for a grid showing an iris data table\n */\n\nclass IrisGridTableModel\n extends IrisGridTableModelTemplate<DhType.Table, UIRow>\n implements PartitionedGridModelProvider\n{\n userFrozenColumns?: ColumnName[];\n\n customColumnList: string[];\n\n formatColumnList: DhType.CustomColumn[];\n\n initialFilters: DhType.FilterCondition[] = [];\n\n // The initial value for table.isUncoalesced on the source table before any transformations (e.g. filter, select)\n wasUncoalesced: boolean;\n\n /**\n * @param dh JSAPI instance\n * @param table Iris data table to be used in the model\n * @param formatter The formatter to use when getting formats\n * @param inputTable Iris input table associated with this table\n */\n constructor(\n dh: typeof DhType,\n table: DhType.Table,\n formatter = new Formatter(dh),\n inputTable: DhType.InputTable | null = null\n ) {\n super(dh, table, formatter, inputTable);\n this.customColumnList = [];\n this.formatColumnList = [];\n this.initialFilters = table.filter;\n this.wasUncoalesced = this.isPartitionRequired;\n }\n\n get isExportAvailable(): boolean {\n return this.table.freeze != null;\n }\n\n get isColumnStatisticsAvailable(): boolean {\n return this.table.getColumnStatistics != null;\n }\n\n get isRollupAvailable(): boolean {\n return this.table.rollup != null;\n }\n\n get isSelectDistinctAvailable(): boolean {\n return this.table.selectDistinct != null;\n }\n\n get isCustomColumnsAvailable(): boolean {\n return this.table.applyCustomColumns != null;\n }\n\n get isFormatColumnsAvailable(): boolean {\n return this.table.applyCustomColumns != null;\n }\n\n getMemoizedKeyColumnSet = memoize(\n (inputTableKeys?: readonly ColumnName[]) =>\n new Set(inputTableKeys ?? EMPTY_ARRAY)\n );\n\n get keyColumnSet(): Set<ColumnName> {\n return this.getMemoizedKeyColumnSet(this.inputTable?.keys);\n }\n\n getMemoizedFrontColumns = memoize(\n (layoutHintsFrontColumns: ColumnName[] | undefined) =>\n layoutHintsFrontColumns ?? EMPTY_ARRAY\n );\n\n get frontColumns(): readonly ColumnName[] {\n return this.getMemoizedFrontColumns(\n this.layoutHints?.frontColumns ?? undefined\n );\n }\n\n getMemoizedBackColumns = memoize(\n (layoutHintsBackColumns: ColumnName[] | undefined) =>\n layoutHintsBackColumns ?? EMPTY_ARRAY\n );\n\n get backColumns(): readonly ColumnName[] {\n return this.getMemoizedBackColumns(\n this.layoutHints?.backColumns ?? undefined\n );\n }\n\n getMemoizedFrozenColumns = memoize(\n (\n layoutHintsFrozenColumns?: ColumnName[],\n userFrozenColumns?: ColumnName[]\n ): readonly ColumnName[] =>\n userFrozenColumns ?? layoutHintsFrozenColumns ?? EMPTY_ARRAY\n );\n\n get frozenColumns(): readonly ColumnName[] {\n return this.getMemoizedFrozenColumns(\n this.layoutHints?.frozenColumns ?? undefined,\n this.userFrozenColumns\n );\n }\n\n get layoutHints(): DhType.LayoutHints | null | undefined {\n return this.table.layoutHints;\n }\n\n get floatingLeftColumnCount(): number {\n return this.frozenColumns.length;\n }\n\n get description(): string {\n return this.table.description ?? '';\n }\n\n get customColumns(): ColumnName[] {\n return this.customColumnList;\n }\n\n set customColumns(customColumns: ColumnName[]) {\n log.debug2(\n 'set customColumns',\n customColumns,\n this.customColumnList,\n customColumns === this.customColumnList\n );\n if (this.customColumnList.length === 0 && customColumns.length === 0) {\n log.debug('Ignore empty initial customColumns');\n this.customColumnList = customColumns;\n return;\n }\n if (this.customColumnList === customColumns) {\n log.debug('Ignore same customColumns');\n return;\n }\n this.closeSubscription();\n this.customColumnList = customColumns;\n this.table.applyCustomColumns([...customColumns, ...this.formatColumns]);\n this.applyViewport();\n }\n\n get formatColumns(): DhType.CustomColumn[] {\n return this.formatColumnList;\n }\n\n set formatColumns(formatColumns: DhType.CustomColumn[]) {\n log.debug2(\n 'set formatColumns',\n formatColumns,\n this.formatColumnList,\n formatColumns === this.formatColumnList\n );\n if (this.formatColumnList.length === 0 && formatColumns.length === 0) {\n log.debug('Ignore empty initial formatColumns');\n this.formatColumnList = formatColumns;\n return;\n }\n if (this.formatColumnList === formatColumns) {\n log.debug('Ignore same formatColumns');\n return;\n }\n this.closeSubscription();\n this.formatColumnList = formatColumns;\n this.table.applyCustomColumns([...this.customColumns, ...formatColumns]);\n this.applyViewport();\n }\n\n updateFrozenColumns(columns: ColumnName[]): void {\n this.userFrozenColumns = columns;\n this.dispatchEvent(\n new EventShimCustomEvent(IrisGridModel.EVENT.COLUMNS_CHANGED, {\n detail: this.columns,\n })\n );\n }\n\n get partitionColumns(): readonly DhType.Column[] {\n return this.getCachedPartitionColumns(this.columns);\n }\n\n async partitionKeysTable(): Promise<DhType.Table> {\n return this.valuesTable(this.partitionColumns);\n }\n\n async partitionMergedTable(): Promise<DhType.Table> {\n const t = await this.table.copy();\n t.applyFilter([]);\n return t;\n }\n\n async partitionBaseTable(): Promise<DhType.Table> {\n return this.partitionKeysTable();\n }\n\n async partitionTable(partitions: unknown[]): Promise<DhType.Table> {\n log.debug('getting partition table for partitions', partitions);\n\n const partitionFilters: DhType.FilterCondition[] = [];\n for (let i = 0; i < this.partitionColumns.length; i += 1) {\n const partition = partitions[i];\n const partitionColumn = this.partitionColumns[i];\n const partitionFilter = this.tableUtils.makeNullableEqFilter(\n partitionColumn,\n partition\n );\n partitionFilters.push(partitionFilter);\n }\n\n const t = await this.table.copy();\n t.applyFilter([...this.initialFilters, ...partitionFilters]);\n return t;\n }\n\n set filter(filter: DhType.FilterCondition[]) {\n this.closeSubscription();\n this.table.applyFilter([...this.initialFilters, ...filter]);\n this.applyViewport();\n }\n\n set totalsConfig(totalsConfig: UITotalsTableConfig | null) {\n log.debug('set totalsConfig', totalsConfig);\n\n if (totalsConfig === this.totals) {\n // Totals already set, or it will be set when the next model actually gets set\n return;\n }\n\n this.totals = totalsConfig;\n this.formattedStringData = [];\n\n if (this.totalsTablePromise != null) {\n this.totalsTablePromise.cancel();\n }\n\n this.setTotalsTable(null);\n\n if (totalsConfig == null) {\n this.dispatchEvent(new EventShimCustomEvent(IrisGridModel.EVENT.UPDATED));\n return;\n }\n\n this.totalsTablePromise = PromiseUtils.makeCancelable(\n this.table.getTotalsTable(totalsConfig),\n table => table.close()\n );\n this.totalsTablePromise\n .then(totalsTable => {\n this.totalsTablePromise = null;\n this.setTotalsTable(totalsTable);\n })\n .catch(err => {\n if (PromiseUtils.isCanceled(err)) {\n return;\n }\n\n log.error('Unable to set next totalsTable', err);\n this.totalsTablePromise = null;\n\n this.dispatchEvent(\n new EventShimCustomEvent(IrisGridModel.EVENT.REQUEST_FAILED, {\n detail: err,\n })\n );\n });\n }\n\n get isFilterRequired(): boolean {\n return this.table.isUncoalesced;\n }\n\n get isPartitionRequired(): boolean {\n return (\n this.table.isUncoalesced &&\n this.isValuesTableAvailable &&\n this.partitionColumns.length > 0\n );\n }\n\n get isPartitionAwareSourceTable(): boolean {\n return this.wasUncoalesced;\n }\n\n isFilterable(columnIndex: ModelIndex): boolean {\n return this.getCachedFilterableColumnSet(this.columns).has(columnIndex);\n }\n\n async export(): Promise<DhType.Table> {\n return this.table.freeze();\n }\n\n columnStatistics(column: DhType.Column): Promise<DhType.ColumnStatistics> {\n return this.table.getColumnStatistics(column);\n }\n\n getCachedFilterableColumnSet = memoize(\n (columns: DhType.Column[]) =>\n new Set(columns.map((_: DhType.Column, index: ModelIndex) => index))\n );\n\n getCachedPartitionColumns = memoize((columns: readonly DhType.Column[]) =>\n columns.filter(column => column.isPartitionColumn)\n );\n\n isColumnMovable(modelIndex: ModelIndex): boolean {\n const columnName = this.columns[modelIndex].name;\n if (\n this.frontColumns.includes(columnName) ||\n this.backColumns.includes(columnName) ||\n this.frozenColumns.includes(columnName)\n ) {\n return false;\n }\n return !this.isKeyColumn(modelIndex);\n }\n\n isColumnFrozen(modelIndex: ModelIndex): boolean {\n return this.frozenColumns.includes(this.columns[modelIndex].name);\n }\n\n async delete(ranges: readonly GridRange[]): Promise<void> {\n if (!this.isDeletableRanges(ranges)) {\n throw new Error(`Undeletable ranges ${ranges}`);\n }\n\n assertNotNull(this.inputTable);\n const { keyColumns } = this.inputTable;\n if (this.keyColumnSet.size === 0) {\n throw new Error('No key columns to allow deletion');\n }\n\n const pendingAreaRange = this.getPendingAreaRange();\n const pendingRanges = ranges\n .map(range => GridRange.intersection(pendingAreaRange, range))\n .filter(range => range != null)\n .map(range => {\n assertNotNull(range);\n\n return GridRange.offset(\n range,\n 0,\n -(this.floatingTopRowCount + this.table.size)\n );\n });\n\n if (pendingRanges.length > 0) {\n const newDataMap = new Map(super.pendingDataMap);\n for (let i = 0; i < pendingRanges.length; i += 1) {\n const pendingRange = pendingRanges[i];\n assertNotNull(pendingRange.startRow);\n assertNotNull(pendingRange.endRow);\n for (let r = pendingRange.startRow; r <= pendingRange.endRow; r += 1) {\n newDataMap.delete(r);\n }\n }\n super.pendingDataMap = newDataMap;\n\n this.formattedStringData = [];\n\n this.dispatchEvent(\n new EventShimCustomEvent(IrisGridModel.EVENT.PENDING_DATA_UPDATED)\n );\n\n this.dispatchEvent(new EventShimCustomEvent(IrisGridModel.EVENT.UPDATED));\n }\n\n const tableAreaRange = this.getTableAreaRange();\n const tableRanges = ranges\n .map(range => GridRange.intersection(tableAreaRange, range))\n .filter(range => range != null);\n if (tableRanges.length <= 0) {\n return;\n }\n\n const [data, deleteTable] = await Promise.all([\n // Need to get the key values of each row\n this.snapshot(\n tableRanges\n .map(range => {\n assertNotNull(range);\n // Need to map each key column to it's range so we can pass that into the snapshot function\n return keyColumns.map(keyColumn => {\n const keyIndex = this.getColumnIndexByName(keyColumn.name);\n if (keyIndex == null) {\n throw new Error(`Key column ${keyColumn.name} not found`);\n }\n\n return new GridRange(\n keyIndex,\n range.startRow,\n keyIndex,\n range.endRow\n );\n });\n })\n .flat()\n ),\n this.table.copy(),\n ]);\n\n // Now copy the existing table and filter it on the values in the snapshot for the key columns in the input table\n const filters = data.map(row => {\n const columnFilters = [];\n for (let c = 0; c < keyColumns.length; c += 1) {\n const column = keyColumns[c];\n const value = row[c];\n const filter = this.tableUtils.makeNullableEqFilter(column, value);\n columnFilters.push(filter);\n }\n return columnFilters.reduce((agg, curr) => agg?.and(curr) ?? curr);\n });\n\n const filter = filters.reduce((agg, curr) => agg?.or(curr) ?? curr);\n\n deleteTable.applyFilter([filter]);\n\n await this.inputTable?.deleteTable(deleteTable);\n deleteTable.close();\n }\n\n async seekRow(\n startRow: number,\n column: DhType.Column,\n valueType: DhType.ValueTypeType,\n value: unknown,\n insensitive?: boolean,\n contains?: boolean,\n isBackwards?: boolean\n ): Promise<number> {\n return this.table.seekRow(\n startRow,\n column,\n valueType,\n value,\n insensitive,\n contains,\n isBackwards\n );\n }\n\n get isSeekRowAvailable(): boolean {\n return this.table.seekRow != null;\n }\n}\n\nexport default IrisGridTableModel;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"IrisGridTableModel.js","names":["memoize","GridRange","Log","Formatter","EventShimCustomEvent","PromiseUtils","assertNotNull","EMPTY_ARRAY","IrisGridModel","IrisGridTableModelTemplate","log","module","IrisGridTableModel","constructor","dh","table","formatter","arguments","length","undefined","inputTable","_defineProperty","inputTableKeys","Set","layoutHintsFrontColumns","layoutHintsBackColumns","layoutHintsFrozenColumns","userFrozenColumns","_ref","columns","map","_","index","filter","column","isPartitionColumn","customColumnList","formatColumnList","initialFilters","wasUncoalesced","isPartitionRequired","isExportAvailable","freeze","isColumnStatisticsAvailable","getColumnStatistics","isRollupAvailable","rollup","isSelectDistinctAvailable","selectDistinct","isOrganizeColumnsAvailable","isCustomColumnsAvailable","applyCustomColumns","isFormatColumnsAvailable","keyColumnSet","_this$inputTable","getMemoizedKeyColumnSet","keys","frontColumns","_this$layoutHints$fro","_this$layoutHints","getMemoizedFrontColumns","layoutHints","backColumns","_this$layoutHints$bac","_this$layoutHints2","getMemoizedBackColumns","frozenColumns","_this$layoutHints$fro2","_this$layoutHints3","getMemoizedFrozenColumns","floatingLeftColumnCount","description","_this$table$descripti","customColumns","debug2","debug","closeSubscription","formatColumns","applyViewport","updateFrozenColumns","dispatchEvent","EVENT","COLUMNS_CHANGED","detail","partitionColumns","getCachedPartitionColumns","partitionKeysTable","_this","_asyncToGenerator","valuesTable","partitionMergedTable","_this2","t","copy","applyFilter","partitionBaseTable","_this3","partitionTable","partitions","_this4","partitionFilters","i","partition","partitionColumn","partitionFilter","tableUtils","makeNullableEqFilter","push","totalsConfig","totals","formattedStringData","totalsTablePromise","cancel","setTotalsTable","UPDATED","makeCancelable","getTotalsTable","close","then","totalsTable","catch","err","isCanceled","error","REQUEST_FAILED","isFilterRequired","isUncoalesced","isValuesTableAvailable","isPartitionAwareSourceTable","isFilterable","columnIndex","getCachedFilterableColumnSet","has","export","_this5","columnStatistics","isColumnMovable","modelIndex","columnName","name","includes","isKeyColumn","isColumnFrozen","delete","ranges","_superprop_getPendingDataMap","pendingDataMap","_superprop_setPendingDataMap","_value","_this6","_this6$inputTable","isDeletableRanges","Error","concat","keyColumns","size","pendingAreaRange","getPendingAreaRange","pendingRanges","range","intersection","offset","floatingTopRowCount","newDataMap","Map","pendingRange","startRow","endRow","r","PENDING_DATA_UPDATED","tableAreaRange","getTableAreaRange","tableRanges","data","deleteTable","Promise","all","snapshot","keyColumn","keyIndex","getColumnIndexByName","flat","filters","row","columnFilters","c","value","reduce","agg","curr","_agg$and","and","_agg$or","or","seekRow","valueType","insensitive","contains","isBackwards","_this7","isSeekRowAvailable"],"sources":["../src/IrisGridTableModel.ts"],"sourcesContent":["/* eslint class-methods-use-this: \"off\" */\nimport memoize from 'memoize-one';\nimport { GridRange, type ModelIndex } from '@deephaven/grid';\nimport type { dh as DhType } from '@deephaven/jsapi-types';\nimport Log from '@deephaven/log';\nimport { Formatter } from '@deephaven/jsapi-utils';\nimport {\n EventShimCustomEvent,\n PromiseUtils,\n assertNotNull,\n EMPTY_ARRAY,\n} from '@deephaven/utils';\nimport IrisGridModel from './IrisGridModel';\nimport {\n type ColumnName,\n type UIRow,\n type UITotalsTableConfig,\n} from './CommonTypes';\nimport IrisGridTableModelTemplate from './IrisGridTableModelTemplate';\nimport { type PartitionedGridModelProvider } from './PartitionedGridModel';\n\nconst log = Log.module('IrisGridTableModel');\n\n/**\n * Model for a grid showing an iris data table\n */\n\nclass IrisGridTableModel\n extends IrisGridTableModelTemplate<DhType.Table, UIRow>\n implements PartitionedGridModelProvider\n{\n userFrozenColumns?: ColumnName[];\n\n customColumnList: string[];\n\n formatColumnList: DhType.CustomColumn[];\n\n initialFilters: DhType.FilterCondition[] = [];\n\n // The initial value for table.isUncoalesced on the source table before any transformations (e.g. filter, select)\n wasUncoalesced: boolean;\n\n /**\n * @param dh JSAPI instance\n * @param table Iris data table to be used in the model\n * @param formatter The formatter to use when getting formats\n * @param inputTable Iris input table associated with this table\n */\n constructor(\n dh: typeof DhType,\n table: DhType.Table,\n formatter = new Formatter(dh),\n inputTable: DhType.InputTable | null = null\n ) {\n super(dh, table, formatter, inputTable);\n this.customColumnList = [];\n this.formatColumnList = [];\n this.initialFilters = table.filter;\n this.wasUncoalesced = this.isPartitionRequired;\n }\n\n get isExportAvailable(): boolean {\n return this.table.freeze != null;\n }\n\n get isColumnStatisticsAvailable(): boolean {\n return this.table.getColumnStatistics != null;\n }\n\n get isRollupAvailable(): boolean {\n return this.table.rollup != null;\n }\n\n get isSelectDistinctAvailable(): boolean {\n return this.table.selectDistinct != null;\n }\n\n get isOrganizeColumnsAvailable(): boolean {\n return true;\n }\n\n get isCustomColumnsAvailable(): boolean {\n return this.table.applyCustomColumns != null;\n }\n\n get isFormatColumnsAvailable(): boolean {\n return this.table.applyCustomColumns != null;\n }\n\n getMemoizedKeyColumnSet = memoize(\n (inputTableKeys?: readonly ColumnName[]) =>\n new Set(inputTableKeys ?? EMPTY_ARRAY)\n );\n\n get keyColumnSet(): Set<ColumnName> {\n return this.getMemoizedKeyColumnSet(this.inputTable?.keys);\n }\n\n getMemoizedFrontColumns = memoize(\n (layoutHintsFrontColumns: ColumnName[] | undefined) =>\n layoutHintsFrontColumns ?? EMPTY_ARRAY\n );\n\n get frontColumns(): readonly ColumnName[] {\n return this.getMemoizedFrontColumns(\n this.layoutHints?.frontColumns ?? undefined\n );\n }\n\n getMemoizedBackColumns = memoize(\n (layoutHintsBackColumns: ColumnName[] | undefined) =>\n layoutHintsBackColumns ?? EMPTY_ARRAY\n );\n\n get backColumns(): readonly ColumnName[] {\n return this.getMemoizedBackColumns(\n this.layoutHints?.backColumns ?? undefined\n );\n }\n\n getMemoizedFrozenColumns = memoize(\n (\n layoutHintsFrozenColumns?: ColumnName[],\n userFrozenColumns?: ColumnName[]\n ): readonly ColumnName[] =>\n userFrozenColumns ?? layoutHintsFrozenColumns ?? EMPTY_ARRAY\n );\n\n get frozenColumns(): readonly ColumnName[] {\n return this.getMemoizedFrozenColumns(\n this.layoutHints?.frozenColumns ?? undefined,\n this.userFrozenColumns\n );\n }\n\n get layoutHints(): DhType.LayoutHints | null | undefined {\n return this.table.layoutHints;\n }\n\n get floatingLeftColumnCount(): number {\n return this.frozenColumns.length;\n }\n\n get description(): string {\n return this.table.description ?? '';\n }\n\n get customColumns(): ColumnName[] {\n return this.customColumnList;\n }\n\n set customColumns(customColumns: ColumnName[]) {\n log.debug2(\n 'set customColumns',\n customColumns,\n this.customColumnList,\n customColumns === this.customColumnList\n );\n if (this.customColumnList.length === 0 && customColumns.length === 0) {\n log.debug('Ignore empty initial customColumns');\n this.customColumnList = customColumns;\n return;\n }\n if (this.customColumnList === customColumns) {\n log.debug('Ignore same customColumns');\n return;\n }\n this.closeSubscription();\n this.customColumnList = customColumns;\n this.table.applyCustomColumns([...customColumns, ...this.formatColumns]);\n this.applyViewport();\n }\n\n get formatColumns(): DhType.CustomColumn[] {\n return this.formatColumnList;\n }\n\n set formatColumns(formatColumns: DhType.CustomColumn[]) {\n log.debug2(\n 'set formatColumns',\n formatColumns,\n this.formatColumnList,\n formatColumns === this.formatColumnList\n );\n if (this.formatColumnList.length === 0 && formatColumns.length === 0) {\n log.debug('Ignore empty initial formatColumns');\n this.formatColumnList = formatColumns;\n return;\n }\n if (this.formatColumnList === formatColumns) {\n log.debug('Ignore same formatColumns');\n return;\n }\n this.closeSubscription();\n this.formatColumnList = formatColumns;\n this.table.applyCustomColumns([...this.customColumns, ...formatColumns]);\n this.applyViewport();\n }\n\n updateFrozenColumns(columns: ColumnName[]): void {\n this.userFrozenColumns = columns;\n this.dispatchEvent(\n new EventShimCustomEvent(IrisGridModel.EVENT.COLUMNS_CHANGED, {\n detail: this.columns,\n })\n );\n }\n\n get partitionColumns(): readonly DhType.Column[] {\n return this.getCachedPartitionColumns(this.columns);\n }\n\n async partitionKeysTable(): Promise<DhType.Table> {\n return this.valuesTable(this.partitionColumns);\n }\n\n async partitionMergedTable(): Promise<DhType.Table> {\n const t = await this.table.copy();\n t.applyFilter([]);\n return t;\n }\n\n async partitionBaseTable(): Promise<DhType.Table> {\n return this.partitionKeysTable();\n }\n\n async partitionTable(partitions: unknown[]): Promise<DhType.Table> {\n log.debug('getting partition table for partitions', partitions);\n\n const partitionFilters: DhType.FilterCondition[] = [];\n for (let i = 0; i < this.partitionColumns.length; i += 1) {\n const partition = partitions[i];\n const partitionColumn = this.partitionColumns[i];\n const partitionFilter = this.tableUtils.makeNullableEqFilter(\n partitionColumn,\n partition\n );\n partitionFilters.push(partitionFilter);\n }\n\n const t = await this.table.copy();\n t.applyFilter([...this.initialFilters, ...partitionFilters]);\n return t;\n }\n\n set filter(filter: DhType.FilterCondition[]) {\n this.closeSubscription();\n this.table.applyFilter([...this.initialFilters, ...filter]);\n this.applyViewport();\n }\n\n set totalsConfig(totalsConfig: UITotalsTableConfig | null) {\n log.debug('set totalsConfig', totalsConfig);\n\n if (totalsConfig === this.totals) {\n // Totals already set, or it will be set when the next model actually gets set\n return;\n }\n\n this.totals = totalsConfig;\n this.formattedStringData = [];\n\n if (this.totalsTablePromise != null) {\n this.totalsTablePromise.cancel();\n }\n\n this.setTotalsTable(null);\n\n if (totalsConfig == null) {\n this.dispatchEvent(new EventShimCustomEvent(IrisGridModel.EVENT.UPDATED));\n return;\n }\n\n this.totalsTablePromise = PromiseUtils.makeCancelable(\n this.table.getTotalsTable(totalsConfig),\n table => table.close()\n );\n this.totalsTablePromise\n .then(totalsTable => {\n this.totalsTablePromise = null;\n this.setTotalsTable(totalsTable);\n })\n .catch(err => {\n if (PromiseUtils.isCanceled(err)) {\n return;\n }\n\n log.error('Unable to set next totalsTable', err);\n this.totalsTablePromise = null;\n\n this.dispatchEvent(\n new EventShimCustomEvent(IrisGridModel.EVENT.REQUEST_FAILED, {\n detail: err,\n })\n );\n });\n }\n\n get isFilterRequired(): boolean {\n return this.table.isUncoalesced;\n }\n\n get isPartitionRequired(): boolean {\n return (\n this.table.isUncoalesced &&\n this.isValuesTableAvailable &&\n this.partitionColumns.length > 0\n );\n }\n\n get isPartitionAwareSourceTable(): boolean {\n return this.wasUncoalesced;\n }\n\n isFilterable(columnIndex: ModelIndex): boolean {\n return this.getCachedFilterableColumnSet(this.columns).has(columnIndex);\n }\n\n async export(): Promise<DhType.Table> {\n return this.table.freeze();\n }\n\n columnStatistics(column: DhType.Column): Promise<DhType.ColumnStatistics> {\n return this.table.getColumnStatistics(column);\n }\n\n getCachedFilterableColumnSet = memoize(\n (columns: DhType.Column[]) =>\n new Set(columns.map((_: DhType.Column, index: ModelIndex) => index))\n );\n\n getCachedPartitionColumns = memoize((columns: readonly DhType.Column[]) =>\n columns.filter(column => column.isPartitionColumn)\n );\n\n isColumnMovable(modelIndex: ModelIndex): boolean {\n const columnName = this.columns[modelIndex].name;\n if (\n this.frontColumns.includes(columnName) ||\n this.backColumns.includes(columnName) ||\n this.frozenColumns.includes(columnName)\n ) {\n return false;\n }\n return !this.isKeyColumn(modelIndex);\n }\n\n isColumnFrozen(modelIndex: ModelIndex): boolean {\n return this.frozenColumns.includes(this.columns[modelIndex].name);\n }\n\n async delete(ranges: readonly GridRange[]): Promise<void> {\n if (!this.isDeletableRanges(ranges)) {\n throw new Error(`Undeletable ranges ${ranges}`);\n }\n\n assertNotNull(this.inputTable);\n const { keyColumns } = this.inputTable;\n if (this.keyColumnSet.size === 0) {\n throw new Error('No key columns to allow deletion');\n }\n\n const pendingAreaRange = this.getPendingAreaRange();\n const pendingRanges = ranges\n .map(range => GridRange.intersection(pendingAreaRange, range))\n .filter(range => range != null)\n .map(range => {\n assertNotNull(range);\n\n return GridRange.offset(\n range,\n 0,\n -(this.floatingTopRowCount + this.table.size)\n );\n });\n\n if (pendingRanges.length > 0) {\n const newDataMap = new Map(super.pendingDataMap);\n for (let i = 0; i < pendingRanges.length; i += 1) {\n const pendingRange = pendingRanges[i];\n assertNotNull(pendingRange.startRow);\n assertNotNull(pendingRange.endRow);\n for (let r = pendingRange.startRow; r <= pendingRange.endRow; r += 1) {\n newDataMap.delete(r);\n }\n }\n super.pendingDataMap = newDataMap;\n\n this.formattedStringData = [];\n\n this.dispatchEvent(\n new EventShimCustomEvent(IrisGridModel.EVENT.PENDING_DATA_UPDATED)\n );\n\n this.dispatchEvent(new EventShimCustomEvent(IrisGridModel.EVENT.UPDATED));\n }\n\n const tableAreaRange = this.getTableAreaRange();\n const tableRanges = ranges\n .map(range => GridRange.intersection(tableAreaRange, range))\n .filter(range => range != null);\n if (tableRanges.length <= 0) {\n return;\n }\n\n const [data, deleteTable] = await Promise.all([\n // Need to get the key values of each row\n this.snapshot(\n tableRanges\n .map(range => {\n assertNotNull(range);\n // Need to map each key column to it's range so we can pass that into the snapshot function\n return keyColumns.map(keyColumn => {\n const keyIndex = this.getColumnIndexByName(keyColumn.name);\n if (keyIndex == null) {\n throw new Error(`Key column ${keyColumn.name} not found`);\n }\n\n return new GridRange(\n keyIndex,\n range.startRow,\n keyIndex,\n range.endRow\n );\n });\n })\n .flat()\n ),\n this.table.copy(),\n ]);\n\n // Now copy the existing table and filter it on the values in the snapshot for the key columns in the input table\n const filters = data.map(row => {\n const columnFilters = [];\n for (let c = 0; c < keyColumns.length; c += 1) {\n const column = keyColumns[c];\n const value = row[c];\n const filter = this.tableUtils.makeNullableEqFilter(column, value);\n columnFilters.push(filter);\n }\n return columnFilters.reduce((agg, curr) => agg?.and(curr) ?? curr);\n });\n\n const filter = filters.reduce((agg, curr) => agg?.or(curr) ?? curr);\n\n deleteTable.applyFilter([filter]);\n\n await this.inputTable?.deleteTable(deleteTable);\n deleteTable.close();\n }\n\n async seekRow(\n startRow: number,\n column: DhType.Column,\n valueType: DhType.ValueTypeType,\n value: unknown,\n insensitive?: boolean,\n contains?: boolean,\n isBackwards?: boolean\n ): Promise<number> {\n return this.table.seekRow(\n startRow,\n column,\n valueType,\n value,\n insensitive,\n contains,\n isBackwards\n );\n }\n\n get isSeekRowAvailable(): boolean {\n return this.table.seekRow != null;\n }\n}\n\nexport default IrisGridTableModel;\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type BoundedAxisRange, type GridCell, GridRange, type ModelIndex } from '@deephaven/grid';
|
|
1
|
+
import { type BoundedAxisRange, type ExpandableGridModel, type GridCell, GridRange, type ModelIndex } from '@deephaven/grid';
|
|
2
2
|
import type { dh as DhType } from '@deephaven/jsapi-types';
|
|
3
3
|
import { Formatter } from '@deephaven/jsapi-utils';
|
|
4
4
|
import { type UIRow, type ColumnName } from './CommonTypes';
|
|
@@ -17,7 +17,7 @@ export interface UITreeRow extends UIRow {
|
|
|
17
17
|
*/
|
|
18
18
|
export declare function isUITreeRow(row: unknown): row is UITreeRow;
|
|
19
19
|
export declare function isIrisGridTreeTableModel(tableModel: IrisGridModel): tableModel is IrisGridTreeTableModel;
|
|
20
|
-
declare class IrisGridTreeTableModel extends IrisGridTableModelTemplate<DhType.TreeTable, UITreeRow> {
|
|
20
|
+
declare class IrisGridTreeTableModel extends IrisGridTableModelTemplate<DhType.TreeTable, UITreeRow> implements ExpandableGridModel {
|
|
21
21
|
/** We keep a virtual column at the front that tracks the "group" that is expanded */
|
|
22
22
|
private virtualColumns;
|
|
23
23
|
private showExtraGroupCol;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IrisGridTreeTableModel.d.ts","sourceRoot":"","sources":["../src/IrisGridTreeTableModel.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,QAAQ,EACb,SAAS,EACT,KAAK,UAAU,EAChB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAE3D,OAAO,EAAE,SAAS,EAAc,MAAM,wBAAwB,CAAC;AAM/D,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,UAAU,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,0BAA0B,MAAM,8BAA8B,CAAC;AACtE,OAAO,aAAqC,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAsCzD,MAAM,WAAW,SAAU,SAAQ,KAAK;IACtC,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,SAAS,CAW1D;AAUD,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,aAAa,GACxB,UAAU,IAAI,sBAAsB,CAEtC;AAED,cAAM,
|
|
1
|
+
{"version":3,"file":"IrisGridTreeTableModel.d.ts","sourceRoot":"","sources":["../src/IrisGridTreeTableModel.ts"],"names":[],"mappings":"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"}
|
|
@@ -175,7 +175,6 @@ class IrisGridTreeTableModel extends IrisGridTableModelTemplate {
|
|
|
175
175
|
return userTextAlignment;
|
|
176
176
|
}
|
|
177
177
|
var row = this.row(y);
|
|
178
|
-
assertNotNull(row);
|
|
179
178
|
var typeForFormatting = column.type;
|
|
180
179
|
|
|
181
180
|
// For tree table leaf nodes, use the constituent type for formatting
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IrisGridTreeTableModel.js","names":["memoize","GridRange","Log","Formatter","TableUtils","assertNotNull","EMPTY_ARRAY","EventShimCustomEvent","IrisGridTableModelTemplate","IrisGridModel","IrisGridUtils","log","module","VirtualGroupColumn","Object","freeze","name","displayName","type","dataType","STRING","constituentType","isPartitionColumn","isSortable","isProxy","description","index","filter","Error","sort","formatColor","get","getFormat","formatNumber","formatDate","isUITreeRow","row","hasChildren","isExpanded","depth","isLayoutTreeTable","table","layoutHints","undefined","isIrisGridTreeTableModel","tableModel","showExtraGroupColumn","IrisGridTreeTableModel","constructor","dh","formatter","arguments","length","inputTable","columnAlignmentMap","Map","_defineProperty","virtualColumns","tableColumns","tableGroupedColumns","columns","isAggregatedColumnsAvailable","aggregatedColumns","groupedColumns","Set","c","includes","map","c1","findIndex","c2","showExtraGroupCol","updateVirtualColumns","dispatchEvent","EVENT","COLUMNS_CHANGED","detail","applyBufferedViewport","viewportTop","viewportBottom","viewportColumns","setViewport","textForCell","x","y","column","sourceColumn","_this$columns$x","value","valueForCell","text","displayString","isTextType","showNullStrings","showEmptyStrings","getCachedGroupedColumnSet","has","colorForCell","theme","data","dataForCell","format","nullStringColor","color","columnTypeForFormatting","colorForValue","textColor","textAlignForCell","_this$columnAlignment","userTextAlignment","typeForFormatting","textAlignForValue","extractViewportRow","extractedRow","modifiedData","i","key","cellData","warn","set","_objectSpread","snapshot","ranges","includeHeaders","_arguments","_this","_asyncToGenerator","_this$viewport$column","formatValue","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","isOrganizeColumnsAvailable","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 type BoundedAxisRange,\n type GridCell,\n GridRange,\n type 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 {\n assertNotNull,\n EMPTY_ARRAY,\n EventShimCustomEvent,\n} from '@deephaven/utils';\nimport { type UIRow, type ColumnName } from './CommonTypes';\nimport IrisGridTableModelTemplate from './IrisGridTableModelTemplate';\nimport IrisGridModel, { type DisplayColumn } from './IrisGridModel';\nimport { type IrisGridThemeType } from './IrisGridTheme';\nimport IrisGridUtils from './IrisGridUtils';\n\nconst log = Log.module('IrisGridTreeTableModel');\n\nconst VirtualGroupColumn = Object.freeze({\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 for 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('formatNumber not implemented for virtual column');\n },\n formatDate: () => {\n throw new Error('formatDate not implemented for virtual column');\n },\n});\n\nexport interface UITreeRow extends UIRow {\n isExpanded: boolean;\n hasChildren: boolean;\n depth: number;\n}\n\n/**\n * Check if a row is a UITreeRow\n * @param row The row to check\n * @returns True if the row is a UITreeRow and false otherwise\n */\nexport function isUITreeRow(row: unknown): row is UITreeRow {\n return (\n row != null &&\n typeof row === 'object' &&\n 'hasChildren' in row &&\n 'isExpanded' in row &&\n 'depth' in row &&\n typeof row.hasChildren === 'boolean' &&\n typeof row.isExpanded === 'boolean' &&\n typeof row.depth === 'number'\n );\n}\n\ntype LayoutTreeTable = DhType.TreeTable & {\n layoutHints?: null | DhType.LayoutHints;\n};\n\nfunction isLayoutTreeTable(table: DhType.TreeTable): table is LayoutTreeTable {\n return (table as LayoutTreeTable).layoutHints !== undefined;\n}\n\nexport function isIrisGridTreeTableModel(\n tableModel: IrisGridModel\n): tableModel is IrisGridTreeTableModel {\n return (tableModel as IrisGridTreeTableModel).showExtraGroupColumn != null;\n}\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 private showExtraGroupCol = true;\n\n constructor(\n dh: typeof DhType,\n table: DhType.TreeTable,\n formatter = new Formatter(dh),\n inputTable: DhType.InputTable | null = null,\n columnAlignmentMap = new Map<string, CanvasTextAlign>()\n ) {\n super(dh, table, formatter, inputTable, columnAlignmentMap);\n\n this.virtualColumns =\n this.showExtraGroupColumn && table.groupedColumns.length > 1\n ? [VirtualGroupColumn]\n : [];\n }\n\n get showExtraGroupColumn(): boolean {\n return this.showExtraGroupCol;\n }\n\n set showExtraGroupColumn(showExtraGroupCol: boolean) {\n if (this.showExtraGroupCol === showExtraGroupCol) {\n return;\n }\n this.showExtraGroupCol = showExtraGroupCol;\n this.updateVirtualColumns();\n }\n\n updateVirtualColumns(): void {\n this.virtualColumns =\n this.showExtraGroupColumn && this.table.groupedColumns.length > 1\n ? [VirtualGroupColumn]\n : [];\n this.dispatchEvent(\n new EventShimCustomEvent(IrisGridModel.EVENT.COLUMNS_CHANGED, {\n detail: this.columns,\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 const text = this.displayString(\n value,\n column.constituentType,\n column.name\n );\n\n if (TableUtils.isTextType(this.columns[x]?.type)) {\n if (value === null) {\n return this.formatter.showNullStrings ? 'null' : '';\n }\n\n if (text === '') {\n return this.formatter.showEmptyStrings ? 'empty' : '';\n }\n }\n\n return text;\n }\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 colorForCell(x: ModelIndex, y: ModelIndex, theme: IrisGridThemeType): string {\n const data = this.dataForCell(x, y);\n if (data) {\n const { format, value } = data;\n if (value == null || value === '') {\n assertNotNull(theme.nullStringColor);\n return theme.nullStringColor;\n }\n if (format?.color != null && format.color !== '') {\n return format.color;\n }\n\n // Fallback to formatting based on the value/type of the cell\n if (value != null) {\n const column = this.sourceColumn(x, y);\n const row = this.row(y);\n assertNotNull(row);\n\n let columnTypeForFormatting = column.type;\n\n // For tree table leaf nodes, use the constituent type for formatting\n if (\n isUITreeRow(row) &&\n row.hasChildren === false &&\n column.constituentType != null\n ) {\n columnTypeForFormatting = column.constituentType;\n }\n\n return IrisGridUtils.colorForValue(\n theme,\n columnTypeForFormatting,\n column.name,\n value\n );\n }\n }\n\n return theme.textColor;\n }\n\n textAlignForCell(x: ModelIndex, y: ModelIndex): CanvasTextAlign {\n const column = this.sourceColumn(x, y);\n\n const userTextAlignment = this.columnAlignmentMap?.get(column.name);\n if (userTextAlignment != null) {\n return userTextAlignment;\n }\n\n const row = this.row(y);\n assertNotNull(row);\n\n let typeForFormatting = column.type;\n\n // For tree table leaf nodes, use the constituent type for formatting\n if (\n isUITreeRow(row) &&\n row.hasChildren === false &&\n column.constituentType != null\n ) {\n typeForFormatting = column.constituentType;\n }\n\n return IrisGridUtils.textAlignForValue(typeForFormatting, column.name);\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(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 = value =>\n value\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 - 1\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 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 aggregatedColumns(): readonly DhType.Column[] {\n return this.isAggregatedColumnsAvailable\n ? this.table.aggregatedColumns\n : EMPTY_ARRAY;\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 layoutHints(): DhType.LayoutHints | null | undefined {\n if (isLayoutTreeTable(this.table)) {\n return this.table.layoutHints;\n }\n return undefined;\n }\n\n get hasExpandableRows(): boolean {\n return true;\n }\n\n get isAggregatedColumnsAvailable(): boolean {\n return (\n // aggregatedColumns are not available in the Legacy API\n // and Core API before v0.39.4\n this.table.aggregatedColumns !== undefined\n );\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 isOrganizeColumnsAvailable(): boolean {\n return true;\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.isAggregatedColumnsAvailable,\n this.aggregatedColumns,\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 isAggregatedColumnsAvailable: boolean,\n aggregatedColumns: readonly DhType.Column[],\n groupedColumns: readonly DhType.Column[],\n virtualColumns: readonly DhType.Column[]\n ) => {\n if (isAggregatedColumnsAvailable) {\n return new Set(\n // Virtual and aggregated columns are not filterable\n columns\n .filter(\n c => !virtualColumns.includes(c) && !aggregatedColumns.includes(c)\n )\n .map(c1 => columns.findIndex(c2 => c1.name === c2.name))\n );\n }\n // For compatibility with the Enterprise JSAPI,\n // only groupedColumns are filterable on rollup tables\n // if aggregatedColumns API is not available.\n return 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\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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"}
|
|
1
|
+
{"version":3,"file":"IrisGridTreeTableModel.js","names":["memoize","GridRange","Log","Formatter","TableUtils","assertNotNull","EMPTY_ARRAY","EventShimCustomEvent","IrisGridTableModelTemplate","IrisGridModel","IrisGridUtils","log","module","VirtualGroupColumn","Object","freeze","name","displayName","type","dataType","STRING","constituentType","isPartitionColumn","isSortable","isProxy","description","index","filter","Error","sort","formatColor","get","getFormat","formatNumber","formatDate","isUITreeRow","row","hasChildren","isExpanded","depth","isLayoutTreeTable","table","layoutHints","undefined","isIrisGridTreeTableModel","tableModel","showExtraGroupColumn","IrisGridTreeTableModel","constructor","dh","formatter","arguments","length","inputTable","columnAlignmentMap","Map","_defineProperty","virtualColumns","tableColumns","tableGroupedColumns","columns","isAggregatedColumnsAvailable","aggregatedColumns","groupedColumns","Set","c","includes","map","c1","findIndex","c2","showExtraGroupCol","updateVirtualColumns","dispatchEvent","EVENT","COLUMNS_CHANGED","detail","applyBufferedViewport","viewportTop","viewportBottom","viewportColumns","setViewport","textForCell","x","y","column","sourceColumn","_this$columns$x","value","valueForCell","text","displayString","isTextType","showNullStrings","showEmptyStrings","getCachedGroupedColumnSet","has","colorForCell","theme","data","dataForCell","format","nullStringColor","color","columnTypeForFormatting","colorForValue","textColor","textAlignForCell","_this$columnAlignment","userTextAlignment","typeForFormatting","textAlignForValue","extractViewportRow","extractedRow","modifiedData","i","key","cellData","warn","set","_objectSpread","snapshot","ranges","includeHeaders","_arguments","_this","_asyncToGenerator","_this$viewport$column","formatValue","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","isOrganizeColumnsAvailable","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 type BoundedAxisRange,\n type ExpandableGridModel,\n type GridCell,\n GridRange,\n type 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 {\n assertNotNull,\n EMPTY_ARRAY,\n EventShimCustomEvent,\n} from '@deephaven/utils';\nimport { type UIRow, type ColumnName } from './CommonTypes';\nimport IrisGridTableModelTemplate from './IrisGridTableModelTemplate';\nimport IrisGridModel, { type DisplayColumn } from './IrisGridModel';\nimport { type IrisGridThemeType } from './IrisGridTheme';\nimport IrisGridUtils from './IrisGridUtils';\n\nconst log = Log.module('IrisGridTreeTableModel');\n\nconst VirtualGroupColumn = Object.freeze({\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 for 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('formatNumber not implemented for virtual column');\n },\n formatDate: () => {\n throw new Error('formatDate not implemented for virtual column');\n },\n});\n\nexport interface UITreeRow extends UIRow {\n isExpanded: boolean;\n hasChildren: boolean;\n depth: number;\n}\n\n/**\n * Check if a row is a UITreeRow\n * @param row The row to check\n * @returns True if the row is a UITreeRow and false otherwise\n */\nexport function isUITreeRow(row: unknown): row is UITreeRow {\n return (\n row != null &&\n typeof row === 'object' &&\n 'hasChildren' in row &&\n 'isExpanded' in row &&\n 'depth' in row &&\n typeof row.hasChildren === 'boolean' &&\n typeof row.isExpanded === 'boolean' &&\n typeof row.depth === 'number'\n );\n}\n\ntype LayoutTreeTable = DhType.TreeTable & {\n layoutHints?: null | DhType.LayoutHints;\n};\n\nfunction isLayoutTreeTable(table: DhType.TreeTable): table is LayoutTreeTable {\n return (table as LayoutTreeTable).layoutHints !== undefined;\n}\n\nexport function isIrisGridTreeTableModel(\n tableModel: IrisGridModel\n): tableModel is IrisGridTreeTableModel {\n return (tableModel as IrisGridTreeTableModel).showExtraGroupColumn != null;\n}\n\nclass IrisGridTreeTableModel\n extends IrisGridTableModelTemplate<DhType.TreeTable, UITreeRow>\n implements ExpandableGridModel\n{\n /** We keep a virtual column at the front that tracks the \"group\" that is expanded */\n private virtualColumns: DisplayColumn[];\n\n private showExtraGroupCol = true;\n\n constructor(\n dh: typeof DhType,\n table: DhType.TreeTable,\n formatter = new Formatter(dh),\n inputTable: DhType.InputTable | null = null,\n columnAlignmentMap = new Map<string, CanvasTextAlign>()\n ) {\n super(dh, table, formatter, inputTable, columnAlignmentMap);\n\n this.virtualColumns =\n this.showExtraGroupColumn && table.groupedColumns.length > 1\n ? [VirtualGroupColumn]\n : [];\n }\n\n get showExtraGroupColumn(): boolean {\n return this.showExtraGroupCol;\n }\n\n set showExtraGroupColumn(showExtraGroupCol: boolean) {\n if (this.showExtraGroupCol === showExtraGroupCol) {\n return;\n }\n this.showExtraGroupCol = showExtraGroupCol;\n this.updateVirtualColumns();\n }\n\n updateVirtualColumns(): void {\n this.virtualColumns =\n this.showExtraGroupColumn && this.table.groupedColumns.length > 1\n ? [VirtualGroupColumn]\n : [];\n this.dispatchEvent(\n new EventShimCustomEvent(IrisGridModel.EVENT.COLUMNS_CHANGED, {\n detail: this.columns,\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 const text = this.displayString(\n value,\n column.constituentType,\n column.name\n );\n\n if (TableUtils.isTextType(this.columns[x]?.type)) {\n if (value === null) {\n return this.formatter.showNullStrings ? 'null' : '';\n }\n\n if (text === '') {\n return this.formatter.showEmptyStrings ? 'empty' : '';\n }\n }\n\n return text;\n }\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 colorForCell(x: ModelIndex, y: ModelIndex, theme: IrisGridThemeType): string {\n const data = this.dataForCell(x, y);\n if (data) {\n const { format, value } = data;\n if (value == null || value === '') {\n assertNotNull(theme.nullStringColor);\n return theme.nullStringColor;\n }\n if (format?.color != null && format.color !== '') {\n return format.color;\n }\n\n // Fallback to formatting based on the value/type of the cell\n if (value != null) {\n const column = this.sourceColumn(x, y);\n const row = this.row(y);\n assertNotNull(row);\n\n let columnTypeForFormatting = column.type;\n\n // For tree table leaf nodes, use the constituent type for formatting\n if (\n isUITreeRow(row) &&\n row.hasChildren === false &&\n column.constituentType != null\n ) {\n columnTypeForFormatting = column.constituentType;\n }\n\n return IrisGridUtils.colorForValue(\n theme,\n columnTypeForFormatting,\n column.name,\n value\n );\n }\n }\n\n return theme.textColor;\n }\n\n textAlignForCell(x: ModelIndex, y: ModelIndex): CanvasTextAlign {\n const column = this.sourceColumn(x, y);\n\n const userTextAlignment = this.columnAlignmentMap?.get(column.name);\n if (userTextAlignment != null) {\n return userTextAlignment;\n }\n\n const row = this.row(y);\n let typeForFormatting = column.type;\n\n // For tree table leaf nodes, use the constituent type for formatting\n if (\n isUITreeRow(row) &&\n row.hasChildren === false &&\n column.constituentType != null\n ) {\n typeForFormatting = column.constituentType;\n }\n\n return IrisGridUtils.textAlignForValue(typeForFormatting, column.name);\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(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 = value =>\n value\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 - 1\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 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 aggregatedColumns(): readonly DhType.Column[] {\n return this.isAggregatedColumnsAvailable\n ? this.table.aggregatedColumns\n : EMPTY_ARRAY;\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 layoutHints(): DhType.LayoutHints | null | undefined {\n if (isLayoutTreeTable(this.table)) {\n return this.table.layoutHints;\n }\n return undefined;\n }\n\n get hasExpandableRows(): boolean {\n return true;\n }\n\n get isAggregatedColumnsAvailable(): boolean {\n return (\n // aggregatedColumns are not available in the Legacy API\n // and Core API before v0.39.4\n this.table.aggregatedColumns !== undefined\n );\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 isOrganizeColumnsAvailable(): boolean {\n return true;\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.isAggregatedColumnsAvailable,\n this.aggregatedColumns,\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 isAggregatedColumnsAvailable: boolean,\n aggregatedColumns: readonly DhType.Column[],\n groupedColumns: readonly DhType.Column[],\n virtualColumns: readonly DhType.Column[]\n ) => {\n if (isAggregatedColumnsAvailable) {\n return new Set(\n // Virtual and aggregated columns are not filterable\n columns\n .filter(\n c => !virtualColumns.includes(c) && !aggregatedColumns.includes(c)\n )\n .map(c1 => columns.findIndex(c2 => c1.name === c2.name))\n );\n }\n // For compatibility with the Enterprise JSAPI,\n // only groupedColumns are filterable on rollup tables\n // if aggregatedColumns API is not available.\n return 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\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
|
@@ -8,7 +8,7 @@ import { type AggregationSettings } from './sidebar/aggregations/Aggregations';
|
|
|
8
8
|
import { type FormattingRule as SidebarFormattingRule } from './sidebar/conditional-formatting/ConditionalFormattingUtils';
|
|
9
9
|
import type IrisGridModel from './IrisGridModel';
|
|
10
10
|
import type AdvancedSettingsType from './sidebar/AdvancedSettingsType';
|
|
11
|
-
import ColumnHeaderGroup from './ColumnHeaderGroup';
|
|
11
|
+
import ColumnHeaderGroup, { type ColumnHeaderGroupConfig } from './ColumnHeaderGroup';
|
|
12
12
|
import { type PartitionConfig } from './PartitionedGridModel';
|
|
13
13
|
import { type IrisGridThemeType } from './IrisGridTheme';
|
|
14
14
|
export type HydratedIrisGridState = Pick<IrisGridState, 'advancedFilters' | 'aggregationSettings' | 'customColumnFormatMap' | 'columnAlignmentMap' | 'isFilterBarShown' | 'quickFilters' | 'customColumns' | 'reverse' | 'rollupConfig' | 'showSearchBar' | 'searchValue' | 'selectDistinctColumns' | 'selectedSearchColumns' | 'sorts' | 'invertSearchColumns' | 'pendingDataMap' | 'frozenColumns' | 'conditionalFormats' | 'columnHeaderGroups' | 'partitionConfig' | 'metrics'>;
|
|
@@ -266,11 +266,11 @@ declare class IrisGridUtils {
|
|
|
266
266
|
*
|
|
267
267
|
* @returns Object containing groups array, max depth, map of name to parent group, and map of name to group
|
|
268
268
|
*/
|
|
269
|
-
static parseColumnHeaderGroups(model: IrisGridModel, groupsParam: readonly (DhType.ColumnGroup |
|
|
270
|
-
groups:
|
|
269
|
+
static parseColumnHeaderGroups<T extends ColumnHeaderGroup, C extends ColumnHeaderGroupConfig>(model: IrisGridModel, groupsParam: readonly (DhType.ColumnGroup | T)[], makeColumnHeaderGroup?: (args: C) => T): {
|
|
270
|
+
groups: T[];
|
|
271
271
|
maxDepth: number;
|
|
272
|
-
parentMap: Map<string,
|
|
273
|
-
groupMap: Map<string,
|
|
272
|
+
parentMap: Map<string, T>;
|
|
273
|
+
groupMap: Map<string, T>;
|
|
274
274
|
};
|
|
275
275
|
/**
|
|
276
276
|
* @param value The value of the cell in a column
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IrisGridUtils.d.ts","sourceRoot":"","sources":["../src/IrisGridUtils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"IrisGridUtils.d.ts","sourceRoot":"","sources":["../src/IrisGridUtils.ts"],"names":[],"mappings":"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"}
|
package/dist/IrisGridUtils.js
CHANGED
|
@@ -714,6 +714,7 @@ class IrisGridUtils {
|
|
|
714
714
|
* @returns Object containing groups array, max depth, map of name to parent group, and map of name to group
|
|
715
715
|
*/
|
|
716
716
|
static parseColumnHeaderGroups(model, groupsParam) {
|
|
717
|
+
var makeColumnHeaderGroup = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : args => new ColumnHeaderGroup(args);
|
|
717
718
|
var maxDepth = 1;
|
|
718
719
|
var parentMap = new Map();
|
|
719
720
|
var groupMap = new Map();
|
|
@@ -773,12 +774,13 @@ class IrisGridUtils {
|
|
|
773
774
|
throw new Error("Unknown child ".concat(childName, " in group ").concat(name));
|
|
774
775
|
}
|
|
775
776
|
});
|
|
776
|
-
var
|
|
777
|
+
var headerGroupConfig = _objectSpread(_objectSpread({}, group), {}, {
|
|
777
778
|
name,
|
|
778
779
|
children: group.children,
|
|
779
780
|
depth,
|
|
780
781
|
childIndexes: childIndexes.flat()
|
|
781
|
-
})
|
|
782
|
+
});
|
|
783
|
+
var columnHeaderGroup = makeColumnHeaderGroup(headerGroupConfig);
|
|
782
784
|
groupMap.set(name, columnHeaderGroup);
|
|
783
785
|
(_group$children = group.children) === null || _group$children === void 0 ? void 0 : _group$children.forEach(childName => parentMap.set(childName, columnHeaderGroup));
|
|
784
786
|
maxDepth = Math.max(maxDepth, columnHeaderGroup.depth + 1);
|