Skip to content

Commit 993ac32

Browse files
committed
reset sizes on save
1 parent 48c4431 commit 993ac32

File tree

1 file changed

+16
-7
lines changed

1 file changed

+16
-7
lines changed

web/src/components/modals/columns-modal.tsx

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ export const ColumnsModal: React.FC<{
3131
setColumnSizes: (v: ColumnSizeMap) => void;
3232
id?: string;
3333
}> = ({ id, isModalOpen, setModalOpen, columns, setColumns, setColumnSizes }) => {
34+
const [resetClicked, setResetClicked] = React.useState<boolean>(false);
3435
const [updatedColumns, setUpdatedColumns] = React.useState<Column[]>([]);
3536
const [isSaveDisabled, setSaveDisabled] = React.useState<boolean>(true);
3637
const [isAllSelected, setAllSelected] = React.useState<boolean>(false);
@@ -81,9 +82,9 @@ export const ColumnsModal: React.FC<{
8182
);
8283

8384
const onReset = React.useCallback(() => {
84-
setColumnSizes({});
85+
setResetClicked(true);
8586
setUpdatedColumns(getDefaultColumns(t));
86-
}, [setColumnSizes, setUpdatedColumns, t]);
87+
}, [setResetClicked, setUpdatedColumns, t]);
8788

8889
const onSelectAll = React.useCallback(() => {
8990
const result = [...updatedColumns];
@@ -93,10 +94,18 @@ export const ColumnsModal: React.FC<{
9394
setUpdatedColumns(result);
9495
}, [updatedColumns, setUpdatedColumns, isAllSelected]);
9596

97+
const onClose = React.useCallback(() => {
98+
setResetClicked(false);
99+
setModalOpen(false);
100+
}, [setModalOpen]);
101+
96102
const onSave = React.useCallback(() => {
103+
if (resetClicked) {
104+
setColumnSizes({});
105+
}
97106
setColumns(updatedColumns);
98-
setModalOpen(false);
99-
}, [updatedColumns, setColumns, setModalOpen]);
107+
onClose();
108+
}, [resetClicked, setColumns, updatedColumns, onClose, setColumnSizes]);
100109

101110
const draggableItems = updatedColumns.map((column, i) => (
102111
<Draggable key={i} hasNoWrapper>
@@ -136,7 +145,7 @@ export const ColumnsModal: React.FC<{
136145
title={t('Manage columns')}
137146
isOpen={isModalOpen}
138147
scrollable={true}
139-
onClose={() => setModalOpen(false)}
148+
onClose={onClose}
140149
description={
141150
<TextContent>
142151
<Text component={TextVariants.p}>
@@ -153,10 +162,10 @@ export const ColumnsModal: React.FC<{
153162
<Button data-test="columns-reset-button" key="reset" variant="link" onClick={() => onReset()}>
154163
{t('Restore default columns')}
155164
</Button>
156-
<Button data-test="columns-cancel-button" key="cancel" variant="link" onClick={() => setModalOpen(false)}>
165+
<Button data-test="columns-cancel-button" key="cancel" variant="link" onClick={() => onClose()}>
157166
{t('Cancel')}
158167
</Button>
159-
<Tooltip content={t('At least one column must be selected')} isVisible={isSaveDisabled}>
168+
<Tooltip content={t('At least one column must be selected')} trigger="" isVisible={isSaveDisabled}>
160169
<Button
161170
data-test="columns-save-button"
162171
isDisabled={isSaveDisabled}

0 commit comments

Comments
 (0)