Skip to content

Commit cef7aef

Browse files
committed
fix directoryItemsInput
1 parent 154a34e commit cef7aef

File tree

2 files changed

+19
-7
lines changed

2 files changed

+19
-7
lines changed

src/components/directoryItemSelector/DirectoryItemSelector.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ export function DirectoryItemSelector({
274274
childrenMatchedTypes.length > 0 &&
275275
((equipmentTypes && equipmentTypes.length > 0) || fetchMetaData)
276276
) {
277-
fetchElementsInfos(
277+
return fetchElementsInfos(
278278
childrenMatchedTypes.map((e: ElementAttributes) => e.elementUuid),
279279
types,
280280
equipmentTypes

src/components/inputs/reactHookForm/DirectoryItemsInput.tsx

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,8 @@ export function DirectoryItemsInput({
123123
remove(getValues(name).findIndex((item: FieldValues) => item.id === chip));
124124
});
125125
}
126-
const currentColors = [...elementsMetadata];
126+
127+
const currentElementsMetadata = elementsMetadata ? [...elementsMetadata] : [];
127128
values.forEach((value) => {
128129
const { icon, children, ...otherElementAttributes } = value;
129130

@@ -137,7 +138,7 @@ export function DirectoryItemsInput({
137138
append(otherElementAttributes);
138139
if (equipmentColorsMap && value?.specificMetadata?.equipmentType) {
139140
const type: EquipmentType = value?.specificMetadata?.equipmentType as EquipmentType;
140-
currentColors.push({
141+
currentElementsMetadata.push({
141142
color: equipmentColorsMap.get(value.specificMetadata.equipmentType) ?? '',
142143
translateLabel:
143144
type !== EquipmentType.HVDC_LINE ? BASE_EQUIPMENTS[type]?.label : 'HvdcLines',
@@ -150,7 +151,7 @@ export function DirectoryItemsInput({
150151
setDirectoryItemSelectorOpen(false);
151152
setSelected([]);
152153
if (equipmentColorsMap) {
153-
setElementsMetadata(currentColors);
154+
setElementsMetadata(currentElementsMetadata);
154155
}
155156
},
156157
[
@@ -172,7 +173,7 @@ export function DirectoryItemsInput({
172173
remove(index);
173174
onRowChanged?.(true);
174175
onChange?.(getValues(name));
175-
if (elementsMetadata.length > 0) {
176+
if (elementsMetadata?.length > 0) {
176177
const currentColors = [...elementsMetadata.slice(0, index), ...elementsMetadata.slice(index + 1)];
177178
setElementsMetadata(currentColors);
178179
}
@@ -225,7 +226,12 @@ export function DirectoryItemsInput({
225226
<Chip
226227
key={item.id}
227228
size="small"
228-
sx={{ backgroundColor: elementsMetadata?.[index].color }}
229+
sx={{
230+
backgroundColor:
231+
elementsMetadata?.length > index
232+
? elementsMetadata?.[index]?.color
233+
: undefined,
234+
}}
229235
onDelete={() => removeElements(index)}
230236
onClick={() => handleChipClick(index)}
231237
label={
@@ -237,7 +243,13 @@ export function DirectoryItemsInput({
237243
/>
238244
<FormHelperText>
239245
{elementsMetadata?.[index]?.translateLabel ? (
240-
<FormattedMessage id={elementsMetadata?.[index]?.translateLabel} />
246+
<FormattedMessage
247+
id={
248+
elementsMetadata?.length > index
249+
? elementsMetadata?.[index]?.translateLabel
250+
: undefined
251+
}
252+
/>
241253
) : (
242254
''
243255
)}

0 commit comments

Comments
 (0)