From 647f16b111d93ab35cc7fbdb88a4507394459f82 Mon Sep 17 00:00:00 2001 From: gzh2003 Date: Mon, 21 Jul 2025 15:53:06 -0400 Subject: [PATCH 1/8] Fix aggregations to the top if editable --- packages/iris-grid/src/IrisGrid.tsx | 19 ++++++++++++++++++- .../src/sidebar/aggregations/Aggregations.tsx | 10 +++++++--- 2 files changed, 25 insertions(+), 4 deletions(-) diff --git a/packages/iris-grid/src/IrisGrid.tsx b/packages/iris-grid/src/IrisGrid.tsx index e50eb02be3..033270a518 100644 --- a/packages/iris-grid/src/IrisGrid.tsx +++ b/packages/iris-grid/src/IrisGrid.tsx @@ -213,6 +213,19 @@ const DEFAULT_AGGREGATION_SETTINGS = Object.freeze({ showOnTop: false, }); +function getAggregationSettingsForModel( + aggregationSettings: AggregationSettings, + model: IrisGridModel +): AggregationSettings { + if (isEditableGridModel(model) && model.isEditable) { + return { + ...aggregationSettings, + showOnTop: true, + }; + } + return aggregationSettings; +} + const UNFORMATTED_DATE_PATTERN = `yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSS z`; function isEmptyConfig({ @@ -863,7 +876,10 @@ class IrisGrid extends Component { rollupConfig, rollupSelectedColumns: [], - aggregationSettings, + aggregationSettings: getAggregationSettingsForModel( + aggregationSettings, + model + ), selectedAggregation: null, openOptions: [], @@ -4833,6 +4849,7 @@ class IrisGrid extends Component {
onEdit(item)} - disabled={!isEditable} + disabled={!isItemEditable} />
)} From c765e39d567a53bc24e79905aa619b0ce604d726 Mon Sep 17 00:00:00 2001 From: gzh2003 Date: Tue, 22 Jul 2025 16:38:05 -0400 Subject: [PATCH 2/8] Move positioning logic inline --- packages/iris-grid/src/IrisGrid.tsx | 21 ++++----------------- 1 file changed, 4 insertions(+), 17 deletions(-) diff --git a/packages/iris-grid/src/IrisGrid.tsx b/packages/iris-grid/src/IrisGrid.tsx index 033270a518..e8ee3f3e59 100644 --- a/packages/iris-grid/src/IrisGrid.tsx +++ b/packages/iris-grid/src/IrisGrid.tsx @@ -213,19 +213,6 @@ const DEFAULT_AGGREGATION_SETTINGS = Object.freeze({ showOnTop: false, }); -function getAggregationSettingsForModel( - aggregationSettings: AggregationSettings, - model: IrisGridModel -): AggregationSettings { - if (isEditableGridModel(model) && model.isEditable) { - return { - ...aggregationSettings, - showOnTop: true, - }; - } - return aggregationSettings; -} - const UNFORMATTED_DATE_PATTERN = `yyyy-MM-dd'T'HH:mm:ss.SSSSSSSSS z`; function isEmptyConfig({ @@ -876,10 +863,10 @@ class IrisGrid extends Component { rollupConfig, rollupSelectedColumns: [], - aggregationSettings: getAggregationSettingsForModel( - aggregationSettings, - model - ), + aggregationSettings: + isEditableGridModel(model) && model.isEditable + ? { ...aggregationSettings, showOnTop: true } + : aggregationSettings, selectedAggregation: null, openOptions: [], From 337be3a24691cc62d7c84207773f123b57fd2e03 Mon Sep 17 00:00:00 2001 From: gzh2003 Date: Tue, 22 Jul 2025 16:41:45 -0400 Subject: [PATCH 3/8] Add comment --- packages/iris-grid/src/IrisGrid.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/iris-grid/src/IrisGrid.tsx b/packages/iris-grid/src/IrisGrid.tsx index e8ee3f3e59..616a3e5f3c 100644 --- a/packages/iris-grid/src/IrisGrid.tsx +++ b/packages/iris-grid/src/IrisGrid.tsx @@ -864,6 +864,7 @@ class IrisGrid extends Component { rollupConfig, rollupSelectedColumns: [], aggregationSettings: + // Fix aggregations to the top if the grid is editable, so that the bottom is reserved for pending rows isEditableGridModel(model) && model.isEditable ? { ...aggregationSettings, showOnTop: true } : aggregationSettings, From 57f82238aca7074d46756b8a2e420376e9463ac8 Mon Sep 17 00:00:00 2001 From: gzh2003 Date: Fri, 25 Jul 2025 10:13:05 -0400 Subject: [PATCH 4/8] Change prop to available placements --- packages/iris-grid/src/IrisGrid.tsx | 6 +++++- .../src/sidebar/aggregations/Aggregations.tsx | 16 ++++++++++++---- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/packages/iris-grid/src/IrisGrid.tsx b/packages/iris-grid/src/IrisGrid.tsx index 616a3e5f3c..3962285826 100644 --- a/packages/iris-grid/src/IrisGrid.tsx +++ b/packages/iris-grid/src/IrisGrid.tsx @@ -4837,7 +4837,11 @@ class IrisGrid extends Component { - Top - + + Top + + Bottom From 72ab16da523912375a3203653aec0ee35816d46f Mon Sep 17 00:00:00 2001 From: gzh2003 Date: Fri, 25 Jul 2025 10:16:15 -0400 Subject: [PATCH 5/8] Revert naming --- packages/iris-grid/src/sidebar/aggregations/Aggregations.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/iris-grid/src/sidebar/aggregations/Aggregations.tsx b/packages/iris-grid/src/sidebar/aggregations/Aggregations.tsx index aa82c13b7c..b45340e83f 100644 --- a/packages/iris-grid/src/sidebar/aggregations/Aggregations.tsx +++ b/packages/iris-grid/src/sidebar/aggregations/Aggregations.tsx @@ -221,7 +221,7 @@ function Aggregations({ const isRollupProhibited = AggregationUtils.isRollupProhibited( item.operation ); - const isItemEditable = !isClone && !isRollupOperation; + const isEditable = !isClone && !isRollupOperation; return ( <>
onEdit(item)} - disabled={!isItemEditable} + disabled={!isEditable} />