diff --git a/packages/iris-grid/src/IrisGridProxyModel.ts b/packages/iris-grid/src/IrisGridProxyModel.ts index b193bb339e..9d46c3e143 100644 --- a/packages/iris-grid/src/IrisGridProxyModel.ts +++ b/packages/iris-grid/src/IrisGridProxyModel.ts @@ -11,7 +11,7 @@ import IrisGridTableModel from './IrisGridTableModel'; import IrisGridPartitionedTableModel from './IrisGridPartitionedTableModel'; import IrisGridTreeTableModel from './IrisGridTreeTableModel'; import IrisGridModel from './IrisGridModel'; -import { type ColumnName } from './CommonTypes'; +import { type ColumnName, type UITotalsTableConfig } from './CommonTypes'; import { isIrisGridTableModelTemplate } from './IrisGridTableModelTemplate'; import { type PartitionConfig, @@ -431,6 +431,15 @@ class IrisGridProxyModel extends IrisGridModel implements PartitionedGridModel { this.setNextModel(modelPromise); } + set totalsConfig(totalsConfig: UITotalsTableConfig | null) { + if (this.modelPromise != null) { + // Model switch in progress. Don't forward, as the config may reference stale columns. + // COLUMNS_CHANGED will reapply the correct config after. + return; + } + this.model.totalsConfig = totalsConfig; + } + get isFilterRequired(): boolean { return this.originalModel.isFilterRequired; }