diff --git a/src/components/elementSearch/elementItem/EquipmentItem.tsx b/src/components/elementSearch/elementItem/EquipmentItem.tsx
index 9eb8030e..1da29302 100644
--- a/src/components/elementSearch/elementItem/EquipmentItem.tsx
+++ b/src/components/elementSearch/elementItem/EquipmentItem.tsx
@@ -9,7 +9,7 @@ import parse from 'autosuggest-highlight/parse';
import clsx from 'clsx';
import { FormattedMessage } from 'react-intl';
import { Box, SxProps, Theme } from '@mui/material';
-import { EQUIPMENT_TYPE, EquipmentInfos } from '../../../utils/types/equipmentType';
+import { EquipmentInfos, SEARCH_TAG_EQUIPMENT_TYPES } from '../../../utils/types/equipmentType';
import { TagRenderer } from '../tagRenderer/TagRenderer';
import { OverflowableText } from '../../overflowableText';
import { mergeSx } from '../../../utils/styles';
@@ -57,7 +57,7 @@ export function EquipmentItem({
className={clsx(props.classes?.equipmentTag, props.classes?.equipmentTypeTag)}
sx={mergeSx(props.styles?.equipmentTag, props.styles?.equipmentTypeTag)}
>
-
+
)}
{
- if (watchEquipmentType && !((watchEquipmentType as EquipmentType) in FILTER_EQUIPMENTS)) {
+ if (watchEquipmentType && !((watchEquipmentType as EquipmentType) in FILTER_EQUIPMENT_TYPES)) {
snackError({
headerId: 'obsoleteFilter',
});
@@ -216,7 +216,7 @@ export function ExplicitNamingFilterForm({ sourceFilterForExplicitNamingConversi
;
props: {
@@ -158,79 +142,43 @@ export const CONTINGENCY_LIST_EQUIPMENTS: Record<
fields: [countries, nominalVoltage],
},
};
-export const FILTER_EQUIPMENTS: Record<
- | EquipmentType.SUBSTATION
- | EquipmentType.VOLTAGE_LEVEL
- | EquipmentType.LINE
- | EquipmentType.TWO_WINDINGS_TRANSFORMER
- | EquipmentType.THREE_WINDINGS_TRANSFORMER
- | EquipmentType.GENERATOR
- | EquipmentType.BATTERY
- | EquipmentType.LOAD
- | EquipmentType.SHUNT_COMPENSATOR
- | EquipmentType.STATIC_VAR_COMPENSATOR
- | EquipmentType.HVDC_LINE
- | EquipmentType.DANGLING_LINE,
- FormEquipment
-> = {
- SUBSTATION: {
- id: 'SUBSTATION',
- label: 'Substations',
- fields: [countries],
- },
- VOLTAGE_LEVEL: {
- id: 'VOLTAGE_LEVEL',
- label: 'VoltageLevels',
- fields: [countries, nominalVoltage],
+
+// order is important
+export const FILTER_EQUIPMENT_TYPES: Partial> = {
+ [EquipmentType.SUBSTATION]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.SUBSTATION],
},
- LINE: {
- id: 'LINE',
- label: 'Lines',
- fields: [countries1, countries2, nominalVoltage1, nominalVoltage2],
+ [EquipmentType.VOLTAGE_LEVEL]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.VOLTAGE_LEVEL],
},
- TWO_WINDINGS_TRANSFORMER: {
- id: 'TWO_WINDINGS_TRANSFORMER',
- label: 'TwoWindingsTransformers',
- fields: [countries, nominalVoltage1, nominalVoltage2],
+ [EquipmentType.LINE]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.LINE],
},
- THREE_WINDINGS_TRANSFORMER: {
- id: 'THREE_WINDINGS_TRANSFORMER',
- label: 'ThreeWindingsTransformers',
- fields: [countries, nominalVoltage1, nominalVoltage2, nominalVoltage3],
+ [EquipmentType.TWO_WINDINGS_TRANSFORMER]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.TWO_WINDINGS_TRANSFORMER],
},
- GENERATOR: {
- id: 'GENERATOR',
- label: 'Generators',
- fields: [countries, energySource, nominalVoltage],
+ [EquipmentType.THREE_WINDINGS_TRANSFORMER]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.THREE_WINDINGS_TRANSFORMER],
},
- BATTERY: {
- id: 'BATTERY',
- label: 'Batteries',
- fields: [countries, nominalVoltage],
+ [EquipmentType.GENERATOR]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.GENERATOR],
},
- LOAD: {
- id: 'LOAD',
- label: 'Loads',
- fields: [countries, nominalVoltage],
+ [EquipmentType.BATTERY]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.BATTERY],
},
- SHUNT_COMPENSATOR: {
- id: 'SHUNT_COMPENSATOR',
- label: 'ShuntCompensators',
- fields: [countries, nominalVoltage],
+ [EquipmentType.LOAD]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.LOAD],
},
- STATIC_VAR_COMPENSATOR: {
- id: 'STATIC_VAR_COMPENSATOR',
- label: 'StaticVarCompensators',
- fields: [countries, nominalVoltage],
+ [EquipmentType.SHUNT_COMPENSATOR]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.SHUNT_COMPENSATOR],
},
- HVDC_LINE: {
- id: 'HVDC_LINE',
- label: 'Hvdc',
- fields: [countries1, countries2, nominalVoltage],
+ [EquipmentType.STATIC_VAR_COMPENSATOR]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.STATIC_VAR_COMPENSATOR],
},
- DANGLING_LINE: {
- id: 'DANGLING_LINE',
- label: 'DanglingLines',
- fields: [countries, nominalVoltage],
+ [EquipmentType.DANGLING_LINE]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.DANGLING_LINE],
+ },
+ [EquipmentType.HVDC_LINE]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.HVDC_LINE],
},
};
diff --git a/src/hooks/useModificationLabelComputer.tsx b/src/hooks/useModificationLabelComputer.tsx
index 38415137..ff435cc3 100644
--- a/src/hooks/useModificationLabelComputer.tsx
+++ b/src/hooks/useModificationLabelComputer.tsx
@@ -9,7 +9,7 @@ import { useIntl } from 'react-intl';
import { useCallback } from 'react';
import { UUID } from 'crypto';
import { MODIFICATION_TYPES } from '../utils/types/modificationType';
-import { EQUIPMENT_TYPE } from '../utils/types/equipmentType';
+import { EquipmentType } from '../utils/types/equipmentType';
export interface NetworkModificationMetadata {
uuid: UUID;
@@ -70,7 +70,7 @@ export const useModificationLabelComputer = () => {
case MODIFICATION_TYPES.BY_FILTER_DELETION.type:
return intl.formatMessage({
id:
- modificationMetadata.equipmentType === EQUIPMENT_TYPE.HVDC_LINE
+ modificationMetadata.equipmentType === EquipmentType.HVDC_LINE
? 'Hvdc'
: modificationMetadata.equipmentType,
});
diff --git a/src/translations/en/equipmentSearchEn.ts b/src/translations/en/equipmentSearchEn.ts
index 17a108d1..06a1fb97 100644
--- a/src/translations/en/equipmentSearchEn.ts
+++ b/src/translations/en/equipmentSearchEn.ts
@@ -18,6 +18,8 @@ export const equipmentSearchEn = {
'equipment_search/shuntTag': 'SHUNT',
'equipment_search/svcTag': 'SVC',
'equipment_search/hvdcLineTag': 'HVDC LINE',
+ 'equipment_search/hvdcLineVscTag': 'HVDC LINE (VSC)',
+ 'equipment_search/hvdcLineLccTag': 'HVDC LINE (LCC)',
'equipment_search/hvdcStationTag': 'HVDC STATION',
'equipment_search/voltageLevelTag': 'VOLTAGE LEVEL',
'equipment_search/substationTag': 'SUBSTATION',
diff --git a/src/translations/fr/equipmentSearchFr.ts b/src/translations/fr/equipmentSearchFr.ts
index 6d4ee2e8..7df15cea 100644
--- a/src/translations/fr/equipmentSearchFr.ts
+++ b/src/translations/fr/equipmentSearchFr.ts
@@ -18,6 +18,8 @@ export const equipmentSearchFr = {
'equipment_search/shuntTag': 'MCS',
'equipment_search/svcTag': 'CSPR',
'equipment_search/hvdcLineTag': 'LIGNE HVDC',
+ 'equipment_search/hvdcLineVscTag': 'LIGNE HVDC (VSC)',
+ 'equipment_search/hvdcLineLccTag': 'LIGNE HVDC (LCC)',
'equipment_search/hvdcStationTag': 'STATION HVDC',
'equipment_search/voltageLevelTag': 'POSTE',
'equipment_search/substationTag': 'SITE',
diff --git a/src/utils/types/equipmentType.ts b/src/utils/types/equipmentType.ts
index b76047ac..3448a885 100644
--- a/src/utils/types/equipmentType.ts
+++ b/src/utils/types/equipmentType.ts
@@ -76,90 +76,158 @@ export enum EquipmentType {
TIE_LINE = 'TIE_LINE',
DISCONNECTOR = 'DISCONNECTOR',
BREAKER = 'BREAKER',
+ HVDC_LINE_LCC = 'HVDC_LINE_LCC',
+ HVDC_LINE_VSC = 'HVDC_LINE_VSC',
}
-export enum HvdcType {
- LCC = 'LCC',
- VSC = 'VSC',
-}
+// order is not important,should cover all elements in EquipmentType
+export const BASE_INFOS_EQUIPMENT_TYPES: Partial> = {
+ [EquipmentType.SUBSTATION]: {
+ label: 'Substations',
+ },
+ [EquipmentType.VOLTAGE_LEVEL]: {
+ label: 'VoltageLevels',
+ },
+ [EquipmentType.LINE]: {
+ label: 'Lines',
+ },
+ [EquipmentType.TWO_WINDINGS_TRANSFORMER]: {
+ label: 'TwoWindingsTransformers',
+ },
+ [EquipmentType.THREE_WINDINGS_TRANSFORMER]: {
+ label: 'ThreeWindingsTransformers',
+ },
+ [EquipmentType.GENERATOR]: {
+ label: 'Generators',
+ },
+ [EquipmentType.BATTERY]: {
+ label: 'Batteries',
+ },
+ [EquipmentType.LOAD]: {
+ label: 'Loads',
+ },
+ [EquipmentType.SHUNT_COMPENSATOR]: {
+ label: 'ShuntCompensators',
+ },
+ [EquipmentType.STATIC_VAR_COMPENSATOR]: {
+ label: 'StaticVarCompensators',
+ },
+ [EquipmentType.DANGLING_LINE]: {
+ label: 'DanglingLines',
+ },
+ [EquipmentType.HVDC_LINE]: {
+ label: 'Hvdc',
+ },
+ [EquipmentType.HVDC_LINE_LCC]: {
+ label: 'LCC',
+ },
+ [EquipmentType.HVDC_LINE_VSC]: {
+ label: 'VSC',
+ },
+};
-// Must be equivalent as the back enum
-export const EQUIPMENT_TYPE: Record = {
+// order is not important
+export const SEARCH_TAG_EQUIPMENT_TYPES: Partial> = {
[EquipmentType.SUBSTATION]: {
- name: EquipmentType.SUBSTATION,
tagLabel: 'equipment_search/substationTag',
},
[EquipmentType.VOLTAGE_LEVEL]: {
- name: EquipmentType.VOLTAGE_LEVEL,
tagLabel: 'equipment_search/voltageLevelTag',
},
[EquipmentType.LINE]: {
- name: EquipmentType.LINE,
tagLabel: 'equipment_search/lineTag',
},
[EquipmentType.TWO_WINDINGS_TRANSFORMER]: {
- name: EquipmentType.TWO_WINDINGS_TRANSFORMER,
tagLabel: 'equipment_search/2wtTag',
},
[EquipmentType.THREE_WINDINGS_TRANSFORMER]: {
- name: EquipmentType.THREE_WINDINGS_TRANSFORMER,
tagLabel: 'equipment_search/3wtTag',
},
- [EquipmentType.HVDC_LINE]: {
- name: EquipmentType.HVDC_LINE,
- tagLabel: 'equipment_search/hvdcLineTag',
+ [EquipmentType.HVDC_LINE_LCC]: {
+ tagLabel: 'equipment_search/hvdcLineLccTag',
+ },
+ [EquipmentType.HVDC_LINE_VSC]: {
+ tagLabel: 'equipment_search/hvdcLineVscTag',
},
[EquipmentType.GENERATOR]: {
- name: EquipmentType.GENERATOR,
tagLabel: 'equipment_search/generatorTag',
},
[EquipmentType.BATTERY]: {
- name: EquipmentType.BATTERY,
tagLabel: 'equipment_search/batteryTag',
},
[EquipmentType.LOAD]: {
- name: EquipmentType.LOAD,
tagLabel: 'equipment_search/loadTag',
},
[EquipmentType.SHUNT_COMPENSATOR]: {
- name: EquipmentType.SHUNT_COMPENSATOR,
tagLabel: 'equipment_search/shuntTag',
},
[EquipmentType.DANGLING_LINE]: {
- name: EquipmentType.DANGLING_LINE,
tagLabel: 'equipment_search/lineTag',
},
[EquipmentType.STATIC_VAR_COMPENSATOR]: {
- name: EquipmentType.STATIC_VAR_COMPENSATOR,
tagLabel: 'equipment_search/svcTag',
},
[EquipmentType.HVDC_CONVERTER_STATION]: {
- name: EquipmentType.HVDC_CONVERTER_STATION,
tagLabel: 'equipment_search/hvdcStationTag',
},
[EquipmentType.BUSBAR_SECTION]: {
- name: EquipmentType.BUSBAR_SECTION,
tagLabel: 'equipment_search/busbarSectionTag',
},
[EquipmentType.BUS]: {
- name: EquipmentType.BUS,
tagLabel: 'equipment_search/busTag',
},
[EquipmentType.SWITCH]: {
- name: EquipmentType.SWITCH,
tagLabel: 'equipment_search/switchTag',
},
[EquipmentType.VSC_CONVERTER_STATION]: {
- name: EquipmentType.VSC_CONVERTER_STATION,
tagLabel: 'equipment_search/vscConverterStationTag',
},
[EquipmentType.LCC_CONVERTER_STATION]: {
- name: EquipmentType.LCC_CONVERTER_STATION,
tagLabel: 'equipment_search/lccConverterStationTag',
},
- [EquipmentType.TIE_LINE]: undefined, // Not used in the UI
- [EquipmentType.DISCONNECTOR]: undefined, // Not used in the UI
- [EquipmentType.BREAKER]: undefined, // Not used in the UI
+};
+
+// order is important
+export const SEARCH_FILTER_EQUIPMENT_TYPES: Partial> = {
+ [EquipmentType.SUBSTATION]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.SUBSTATION],
+ },
+ [EquipmentType.VOLTAGE_LEVEL]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.VOLTAGE_LEVEL],
+ },
+ [EquipmentType.LINE]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.LINE],
+ },
+ [EquipmentType.TWO_WINDINGS_TRANSFORMER]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.TWO_WINDINGS_TRANSFORMER],
+ },
+ [EquipmentType.THREE_WINDINGS_TRANSFORMER]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.THREE_WINDINGS_TRANSFORMER],
+ },
+ [EquipmentType.GENERATOR]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.GENERATOR],
+ },
+ [EquipmentType.BATTERY]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.BATTERY],
+ },
+ [EquipmentType.LOAD]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.LOAD],
+ },
+ [EquipmentType.SHUNT_COMPENSATOR]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.SHUNT_COMPENSATOR],
+ },
+ [EquipmentType.STATIC_VAR_COMPENSATOR]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.STATIC_VAR_COMPENSATOR],
+ },
+ [EquipmentType.DANGLING_LINE]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.DANGLING_LINE],
+ },
+ [EquipmentType.HVDC_LINE_LCC]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.HVDC_LINE_LCC],
+ },
+ [EquipmentType.HVDC_LINE_VSC]: {
+ ...BASE_INFOS_EQUIPMENT_TYPES[EquipmentType.HVDC_LINE_VSC],
+ },
};
export interface Identifiable {