Skip to content

Commit 2d8c6fd

Browse files
Merge pull request #1867 from carbon-design-system/1866-hierarchyListChangeOnSelectBehavior
fix(hierarchylist): change defaultselectedid onselect behavior
2 parents b2917f0 + 6ea4f48 commit 2d8c6fd

1 file changed

Lines changed: 12 additions & 10 deletions

File tree

src/components/List/HierarchyList/HierarchyList.jsx

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -220,23 +220,25 @@ const HierarchyList = ({
220220
[defaultSelectedId]
221221
);
222222

223-
const handleSelect = (id, parentId = null) => {
223+
const setSelected = (id, parentId = null) => {
224224
if (editingStyle) {
225225
setEditModeSelectedIds(
226226
handleEditModeSelect(items, editModeSelectedIds, id, parentId)
227227
);
228228
} else if (selectedIds.includes(id)) {
229229
setSelectedIds(selectedIds.filter((item) => item !== id));
230+
} else if (hasMultiSelect) {
231+
setSelectedIds([...selectedIds, id]);
230232
} else {
231-
if (hasMultiSelect) {
232-
setSelectedIds([...selectedIds, id]);
233-
} else {
234-
setSelectedIds([id]);
235-
}
233+
setSelectedIds([id]);
234+
}
235+
};
236236

237-
if (onSelect) {
238-
onSelect(id);
239-
}
237+
const handleSelect = (id, parentId = null) => {
238+
setSelected(id, parentId);
239+
240+
if (onSelect) {
241+
onSelect(id);
240242
}
241243
};
242244

@@ -263,7 +265,7 @@ const HierarchyList = ({
263265

264266
if (!isEqual(selectedIds, [defaultSelectedId])) {
265267
// If the defaultSelectedId prop is updated from the outside, we need to use it
266-
handleSelect(defaultSelectedId);
268+
setSelected(defaultSelectedId);
267269
}
268270
}
269271
},

0 commit comments

Comments
 (0)