Pass dropdownId to all closeDropdown calls in MatchColumnToFieldSelect (#13087)

Pass the dropdownId into every closeDropdown() call so the instance ID
is always defined and the error no longer occurs.

---------

Co-authored-by: prastoin <paul@twenty.com>
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
This commit is contained in:
Dmitry Moiseenko
2025-07-08 05:17:42 -04:00
committed by GitHub
parent f5835a77e5
commit 67f0b98002

View File

@ -38,12 +38,14 @@ export const MatchColumnToFieldSelect = ({
columnIndex,
}: MatchColumnToFieldSelectProps) => {
const dropdownId = `match-column-select-v2-dropdown-${columnIndex}`;
const { closeDropdown } = useCloseDropdown();
const [selectedFieldMetadataItem, setSelectedFieldMetadataItem] =
useState<FieldMetadataItem | null>(null);
const doNotImportOption = options.find(
(option) => option.value === DO_NOT_IMPORT_OPTION_KEY,
);
const handleFieldMetadataItemSelect = (
selectedFieldMetadataItem: FieldMetadataItem,
) => {
@ -56,9 +58,8 @@ export const MatchColumnToFieldSelect = ({
if (isDefined(correspondingOption)) {
setSelectedFieldMetadataItem(null);
onChange(correspondingOption);
closeDropdown();
closeDropdown(dropdownId);
}
}
};
@ -79,7 +80,6 @@ export const MatchColumnToFieldSelect = ({
if (isDefined(correspondingOption)) {
setSelectedFieldMetadataItem(null);
onChange(correspondingOption);
closeDropdown(dropdownId);
}
@ -112,13 +112,9 @@ export const MatchColumnToFieldSelect = ({
closeDropdown(dropdownId);
};
const doNotImportOption = options.find(
(option) => option.value === DO_NOT_IMPORT_OPTION_KEY,
);
const shouldDisplaySubFieldMetadataItemSelect =
isDefined(selectedFieldMetadataItem?.type) &&
isCompositeFieldType(selectedFieldMetadataItem?.type);
const shouldShowSubField =
isDefined(selectedFieldMetadataItem) &&
isCompositeFieldType(selectedFieldMetadataItem.type);
return (
<Dropdown
@ -133,7 +129,7 @@ export const MatchColumnToFieldSelect = ({
/>
}
dropdownComponents={
shouldDisplaySubFieldMetadataItemSelect && selectedFieldMetadataItem ? (
shouldShowSubField ? (
<MatchColumnSelectSubFieldSelectDropdownContent
fieldMetadataItem={selectedFieldMetadataItem}
onSubFieldSelect={handleSubFieldSelect}