@gridsuite/commons-ui 0.283.0 → 0.285.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/dist/components/ui/reactHookForm/utils/HelperPreviousValue.js +1 -1
  2. package/dist/features/index.js +51 -7
  3. package/dist/features/network-modification-table/index.js +3 -1
  4. package/dist/features/network-modification-table/network-modifications-table.d.ts +3 -5
  5. package/dist/features/network-modification-table/network-modifications-table.js +13 -7
  6. package/dist/features/network-modification-table/renderers/cell-renderers.js +3 -3
  7. package/dist/features/network-modification-table/renderers/name-cell.js +5 -2
  8. package/dist/features/network-modification-table/renderers/root-network-chip-cell.d.ts +3 -3
  9. package/dist/features/network-modification-table/renderers/root-network-chip-cell.js +24 -49
  10. package/dist/features/network-modification-table/row/drag-row-clone.js +5 -1
  11. package/dist/features/network-modification-table/utils.d.ts +12 -1
  12. package/dist/features/network-modification-table/utils.js +29 -0
  13. package/dist/features/network-modifications/battery/modification/BatteryDialogTabsContent.d.ts +2 -2
  14. package/dist/features/network-modifications/common/index.js +2 -5
  15. package/dist/features/network-modifications/common/measurements/PowerMeasurementsForm.js +3 -9
  16. package/dist/features/network-modifications/common/measurements/branchActiveReactivePowerForm.utils.d.ts +4 -17
  17. package/dist/features/network-modifications/common/measurements/branchActiveReactivePowerForm.utils.js +0 -8
  18. package/dist/features/network-modifications/common/measurements/index.js +1 -2
  19. package/dist/features/network-modifications/common/measurements/injectionActiveReactivePowerForm.utils.d.ts +6 -9
  20. package/dist/features/network-modifications/common/measurements/measurement.type.d.ts +7 -1
  21. package/dist/features/network-modifications/common/measurements/powerWithValidity.utils.d.ts +3 -3
  22. package/dist/features/network-modifications/common/reactiveLimits/index.js +1 -3
  23. package/dist/features/network-modifications/common/reactiveLimits/reactiveCapabilityCurve/index.js +1 -3
  24. package/dist/features/network-modifications/common/reactiveLimits/reactiveCapabilityCurve/reactiveCapability.utils.d.ts +0 -4
  25. package/dist/features/network-modifications/common/reactiveLimits/reactiveCapabilityCurve/reactiveCapability.utils.js +0 -8
  26. package/dist/features/network-modifications/common/reactiveLimits/reactiveLimits.type.d.ts +1 -0
  27. package/dist/features/network-modifications/generator/modification/GeneratorDialogTabsContent.d.ts +2 -2
  28. package/dist/features/network-modifications/hvdcLine/index.d.ts +7 -0
  29. package/dist/features/network-modifications/hvdcLine/index.js +47 -0
  30. package/dist/features/network-modifications/hvdcLine/vsc/common/characteristics/VscHvdcLineCharacteristicsPane.d.ts +8 -0
  31. package/dist/features/network-modifications/hvdcLine/vsc/common/characteristics/VscHvdcLineCharacteristicsPane.js +235 -0
  32. package/dist/features/network-modifications/hvdcLine/vsc/common/characteristics/index.d.ts +8 -0
  33. package/dist/features/network-modifications/hvdcLine/vsc/common/characteristics/index.js +11 -0
  34. package/dist/features/network-modifications/hvdcLine/vsc/common/characteristics/vscHvdcLineCharacteristicsPane.utils.d.ts +67 -0
  35. package/dist/features/network-modifications/hvdcLine/vsc/common/characteristics/vscHvdcLineCharacteristicsPane.utils.js +106 -0
  36. package/dist/features/network-modifications/hvdcLine/vsc/common/converterStation/VscConverterStationPane.d.ts +12 -0
  37. package/dist/features/network-modifications/hvdcLine/vsc/common/converterStation/VscConverterStationPane.js +198 -0
  38. package/dist/features/network-modifications/hvdcLine/vsc/common/converterStation/index.d.ts +8 -0
  39. package/dist/features/network-modifications/hvdcLine/vsc/common/converterStation/index.js +13 -0
  40. package/dist/features/network-modifications/hvdcLine/vsc/common/converterStation/vscConverterStationPane.utils.d.ts +156 -0
  41. package/dist/features/network-modifications/hvdcLine/vsc/common/converterStation/vscConverterStationPane.utils.js +199 -0
  42. package/dist/features/network-modifications/hvdcLine/vsc/common/form/VscHvdcLineDialogHeader.d.ts +6 -0
  43. package/dist/features/network-modifications/hvdcLine/vsc/common/form/VscHvdcLineDialogHeader.js +106 -0
  44. package/dist/features/network-modifications/hvdcLine/vsc/common/form/VscHvdcLineDialogTabs.d.ts +9 -0
  45. package/dist/features/network-modifications/hvdcLine/vsc/common/form/VscHvdcLineDialogTabs.js +129 -0
  46. package/dist/features/network-modifications/hvdcLine/vsc/common/form/VscHvdcLineDialogTabsContent.d.ts +10 -0
  47. package/dist/features/network-modifications/hvdcLine/vsc/common/form/VscHvdcLineDialogTabsContent.js +139 -0
  48. package/dist/features/network-modifications/hvdcLine/vsc/common/form/VscHvdcLineForm.d.ts +11 -0
  49. package/dist/features/network-modifications/hvdcLine/vsc/common/form/VscHvdcLineForm.js +43 -0
  50. package/dist/features/network-modifications/hvdcLine/vsc/common/form/index.d.ts +11 -0
  51. package/dist/features/network-modifications/hvdcLine/vsc/common/form/index.js +13 -0
  52. package/dist/features/network-modifications/hvdcLine/vsc/common/form/vscHvdcLine.utils.d.ts +8 -0
  53. package/dist/features/network-modifications/hvdcLine/vsc/common/form/vscHvdcLine.utils.js +34 -0
  54. package/dist/features/network-modifications/hvdcLine/vsc/common/index.d.ts +10 -0
  55. package/dist/features/network-modifications/hvdcLine/vsc/common/index.js +36 -0
  56. package/dist/features/network-modifications/hvdcLine/vsc/common/vscHvdcLine.types.d.ts +52 -0
  57. package/dist/features/network-modifications/hvdcLine/vsc/common/vscHvdcLine.types.js +25 -0
  58. package/dist/features/network-modifications/hvdcLine/vsc/creation/index.d.ts +8 -0
  59. package/dist/features/network-modifications/hvdcLine/vsc/creation/index.js +7 -0
  60. package/dist/features/network-modifications/hvdcLine/vsc/creation/vscHvdcLineCreation.types.d.ts +45 -0
  61. package/dist/features/network-modifications/hvdcLine/vsc/creation/vscHvdcLineCreation.types.js +1 -0
  62. package/dist/features/network-modifications/hvdcLine/vsc/creation/vscHvdcLineCreation.utils.d.ts +159 -0
  63. package/dist/features/network-modifications/hvdcLine/vsc/creation/vscHvdcLineCreation.utils.js +88 -0
  64. package/dist/features/network-modifications/hvdcLine/vsc/index.d.ts +9 -0
  65. package/dist/features/network-modifications/hvdcLine/vsc/index.js +47 -0
  66. package/dist/features/network-modifications/hvdcLine/vsc/modification/index.d.ts +8 -0
  67. package/dist/features/network-modifications/hvdcLine/vsc/modification/index.js +8 -0
  68. package/dist/features/network-modifications/hvdcLine/vsc/modification/vscHvdcLineModification.types.d.ts +49 -0
  69. package/dist/features/network-modifications/hvdcLine/vsc/modification/vscHvdcLineModification.types.js +1 -0
  70. package/dist/features/network-modifications/hvdcLine/vsc/modification/vscHvdcLineModification.utils.d.ts +230 -0
  71. package/dist/features/network-modifications/hvdcLine/vsc/modification/vscHvdcLineModification.utils.js +145 -0
  72. package/dist/features/network-modifications/index.d.ts +1 -0
  73. package/dist/features/network-modifications/index.js +48 -6
  74. package/dist/features/network-modifications/static-var-compensator/common/static-var-compensator-dialog-tabs.js +3 -3
  75. package/dist/features/topBar/UserInformationDialog.js +15 -15
  76. package/dist/hooks/useModificationLabelComputer.js +7 -5
  77. package/dist/index.js +51 -7
  78. package/dist/services/networkModification.d.ts +1 -1
  79. package/dist/services/networkModification.js +2 -2
  80. package/dist/translations/en/networkModificationsEn.d.ts +23 -4
  81. package/dist/translations/en/networkModificationsEn.js +23 -4
  82. package/dist/translations/en/topBarEn.d.ts +13 -13
  83. package/dist/translations/en/topBarEn.js +13 -13
  84. package/dist/translations/fr/networkModificationsFr.d.ts +23 -4
  85. package/dist/translations/fr/networkModificationsFr.js +23 -4
  86. package/dist/translations/fr/topBarFr.d.ts +13 -13
  87. package/dist/translations/fr/topBarFr.js +13 -13
  88. package/dist/utils/constants/fieldConstants.d.ts +15 -0
  89. package/dist/utils/constants/fieldConstants.js +15 -0
  90. package/dist/utils/types/network-modification-metadata.d.ts +1 -0
  91. package/dist/utils/types/network-modification-types.d.ts +5 -4
  92. package/package.json +1 -1
@@ -1,9 +1,4 @@
1
- /**
2
- * Copyright (c) 2025, RTE (http://www.rte-france.com)
3
- * This Source Code Form is subject to the terms of the Mozilla Public
4
- * License, v. 2.0. If a copy of the MPL was not distributed with this
5
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
6
- */
1
+ import { BranchModificationDto } from '../branch/branchModification.types';
7
2
  export declare function getBranchActiveReactivePowerEmptyFormDataProperties(): {
8
3
  [x: string]: {
9
4
  value: null;
@@ -51,17 +46,9 @@ export declare const getBranchActiveReactivePowerValidationSchema: (id: string)
51
46
  };
52
47
  }, "">;
53
48
  };
54
- export declare function getBranchActiveReactivePowerEditDataProperties(branchData: any): {
49
+ export declare function getBranchActiveReactivePowerEditDataProperties(branchData: BranchModificationDto): {
55
50
  [x: string]: {
56
- value: number;
57
- validity: boolean;
58
- };
59
- };
60
- export declare function getBranchActiveReactivePowerEditData(id: string, branchData: any): {
61
- [id]: {
62
- [x: string]: {
63
- value: number;
64
- validity: boolean;
65
- };
51
+ value: number | null;
52
+ validity: boolean | null;
66
53
  };
67
54
  };
@@ -52,15 +52,7 @@ function getBranchActiveReactivePowerEditDataProperties(branchData) {
52
52
  })
53
53
  };
54
54
  }
55
- function getBranchActiveReactivePowerEditData(id, branchData) {
56
- return {
57
- [id]: {
58
- ...getBranchActiveReactivePowerEditDataProperties(branchData)
59
- }
60
- };
61
- }
62
55
  export {
63
- getBranchActiveReactivePowerEditData,
64
56
  getBranchActiveReactivePowerEditDataProperties,
65
57
  getBranchActiveReactivePowerEmptyFormData,
66
58
  getBranchActiveReactivePowerEmptyFormDataProperties,
@@ -1,6 +1,6 @@
1
1
  import { getPowerWithValidityEditData, getPowerWithValidityEmptyFormData, getPowerWithValidityValidationSchema } from "./powerWithValidity.utils.js";
2
2
  import { getInjectionActiveReactivePowerEditDataProperties, getInjectionActiveReactivePowerEmptyFormData, getInjectionActiveReactivePowerEmptyFormDataProperties, getInjectionActiveReactivePowerValidationSchema, getInjectionActiveReactivePowerValidationSchemaProperties } from "./injectionActiveReactivePowerForm.utils.js";
3
- import { getBranchActiveReactivePowerEditData, getBranchActiveReactivePowerEditDataProperties, getBranchActiveReactivePowerEmptyFormData, getBranchActiveReactivePowerEmptyFormDataProperties, getBranchActiveReactivePowerValidationSchema, getBranchActiveReactivePowerValidationSchemaObject, getBranchActiveReactivePowerValidationSchemaProperties } from "./branchActiveReactivePowerForm.utils.js";
3
+ import { getBranchActiveReactivePowerEditDataProperties, getBranchActiveReactivePowerEmptyFormData, getBranchActiveReactivePowerEmptyFormDataProperties, getBranchActiveReactivePowerValidationSchema, getBranchActiveReactivePowerValidationSchemaObject, getBranchActiveReactivePowerValidationSchemaProperties } from "./branchActiveReactivePowerForm.utils.js";
4
4
  import { PowerWithValidityForm } from "./PowerWithValidityForm.js";
5
5
  import { PowerMeasurementsForm } from "./PowerMeasurementsForm.js";
6
6
  import { BranchActiveReactivePowerMeasurementsForm } from "./BranchActiveReactivePowerMeasurementsForm.js";
@@ -10,7 +10,6 @@ export {
10
10
  BusbarSectionVoltageMeasurementsForm,
11
11
  PowerMeasurementsForm,
12
12
  PowerWithValidityForm,
13
- getBranchActiveReactivePowerEditData,
14
13
  getBranchActiveReactivePowerEditDataProperties,
15
14
  getBranchActiveReactivePowerEmptyFormData,
16
15
  getBranchActiveReactivePowerEmptyFormDataProperties,
@@ -1,9 +1,5 @@
1
- /**
2
- * Copyright (c) 2025, RTE (http://www.rte-france.com)
3
- * This Source Code Form is subject to the terms of the Mozilla Public
4
- * License, v. 2.0. If a copy of the MPL was not distributed with this
5
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
6
- */
1
+ import { InferType } from 'yup';
2
+ import { InjectionMeasurementsEditData } from './measurement.type';
7
3
  export declare function getInjectionActiveReactivePowerEmptyFormDataProperties(): {
8
4
  [x: string]: {
9
5
  value: null;
@@ -29,6 +25,7 @@ export declare const getInjectionActiveReactivePowerValidationSchemaProperties:
29
25
  validity: undefined;
30
26
  };
31
27
  }, "">;
28
+ export type InjectionActiveReactivePowerFormData = InferType<ReturnType<typeof getInjectionActiveReactivePowerValidationSchemaProperties>>;
32
29
  export declare const getInjectionActiveReactivePowerValidationSchema: (id: string) => {
33
30
  [x: string]: import('yup').ObjectSchema<{
34
31
  [x: string]: {
@@ -42,9 +39,9 @@ export declare const getInjectionActiveReactivePowerValidationSchema: (id: strin
42
39
  };
43
40
  }, "">;
44
41
  };
45
- export declare function getInjectionActiveReactivePowerEditDataProperties(injectionData: any): {
42
+ export declare function getInjectionActiveReactivePowerEditDataProperties(injectionData: InjectionMeasurementsEditData): {
46
43
  [x: string]: {
47
- value: number;
48
- validity: boolean;
44
+ value: number | null;
45
+ validity: boolean | null;
49
46
  };
50
47
  };
@@ -1,4 +1,4 @@
1
- import { FieldType } from '../../../../utils';
1
+ import { AttributeModification, FieldType } from '../../../../utils';
2
2
  export interface BranchActiveReactivePowerMeasurementsFormProps {
3
3
  equipmentToModify: any;
4
4
  }
@@ -16,3 +16,9 @@ export type BbsMeasurementItem = {
16
16
  value: number | null;
17
17
  validity: boolean | null;
18
18
  };
19
+ export interface InjectionMeasurementsEditData {
20
+ pMeasurementValue?: AttributeModification<number> | null;
21
+ pMeasurementValidity?: AttributeModification<boolean> | null;
22
+ qMeasurementValue: AttributeModification<number> | null;
23
+ qMeasurementValidity: AttributeModification<boolean> | null;
24
+ }
@@ -14,9 +14,9 @@ export declare function getPowerWithValidityValidationSchema(id: string): {
14
14
  validity: undefined;
15
15
  }, "">;
16
16
  };
17
- export declare function getPowerWithValidityEditData(id: string, measurement: MeasurementInfo): {
17
+ export declare function getPowerWithValidityEditData(id: string, measurement?: Partial<MeasurementInfo>): {
18
18
  [id]: {
19
- value: number;
20
- validity: boolean;
19
+ value: number | null;
20
+ validity: boolean | null;
21
21
  };
22
22
  };
@@ -1,4 +1,4 @@
1
- import { INSERT, REMOVE, getReactiveCapabilityCurveValidationSchema, getReactiveCapabilityCurveValidationSchemaArray, getRowEmptyFormData, setCurrentReactiveCapabilityCurveTable, setSelectedReactiveLimits, toReactiveCapabilityCurveChoiceForGeneratorCreation, toReactiveCapabilityCurveChoiceForGeneratorModification } from "./reactiveCapabilityCurve/reactiveCapability.utils.js";
1
+ import { INSERT, REMOVE, getReactiveCapabilityCurveValidationSchema, getReactiveCapabilityCurveValidationSchemaArray, getRowEmptyFormData, toReactiveCapabilityCurveChoiceForGeneratorCreation, toReactiveCapabilityCurveChoiceForGeneratorModification } from "./reactiveCapabilityCurve/reactiveCapability.utils.js";
2
2
  import { ReactiveCapabilityCurveRowForm } from "./reactiveCapabilityCurve/ReactiveCapabilityCurveRowForm.js";
3
3
  import { ReactiveCapabilityCurveTableForm } from "./reactiveCapabilityCurve/ReactiveCapabilityCurveTableForm.js";
4
4
  import { REACTIVE_LIMIT_TYPES, getReactiveLimitsEmptyFormData, getReactiveLimitsEmptyFormDataProps, getReactiveLimitsFormData, getReactiveLimitsFormDataProps, getReactiveLimitsSchema, getReactiveLimitsValidationSchema } from "./reactiveLimits.utils.js";
@@ -19,8 +19,6 @@ export {
19
19
  getReactiveLimitsSchema,
20
20
  getReactiveLimitsValidationSchema,
21
21
  getRowEmptyFormData,
22
- setCurrentReactiveCapabilityCurveTable,
23
- setSelectedReactiveLimits,
24
22
  toReactiveCapabilityCurveChoiceForGeneratorCreation,
25
23
  toReactiveCapabilityCurveChoiceForGeneratorModification
26
24
  };
@@ -1,4 +1,4 @@
1
- import { INSERT, REMOVE, getReactiveCapabilityCurveValidationSchema, getReactiveCapabilityCurveValidationSchemaArray, getRowEmptyFormData, setCurrentReactiveCapabilityCurveTable, setSelectedReactiveLimits, toReactiveCapabilityCurveChoiceForGeneratorCreation, toReactiveCapabilityCurveChoiceForGeneratorModification } from "./reactiveCapability.utils.js";
1
+ import { INSERT, REMOVE, getReactiveCapabilityCurveValidationSchema, getReactiveCapabilityCurveValidationSchemaArray, getRowEmptyFormData, toReactiveCapabilityCurveChoiceForGeneratorCreation, toReactiveCapabilityCurveChoiceForGeneratorModification } from "./reactiveCapability.utils.js";
2
2
  import { ReactiveCapabilityCurveRowForm } from "./ReactiveCapabilityCurveRowForm.js";
3
3
  import { ReactiveCapabilityCurveTableForm } from "./ReactiveCapabilityCurveTableForm.js";
4
4
  export {
@@ -9,8 +9,6 @@ export {
9
9
  getReactiveCapabilityCurveValidationSchema,
10
10
  getReactiveCapabilityCurveValidationSchemaArray,
11
11
  getRowEmptyFormData,
12
- setCurrentReactiveCapabilityCurveTable,
13
- setSelectedReactiveLimits,
14
12
  toReactiveCapabilityCurveChoiceForGeneratorCreation,
15
13
  toReactiveCapabilityCurveChoiceForGeneratorModification
16
14
  };
@@ -1,5 +1,3 @@
1
- import { FieldValues, UseFormSetValue } from 'react-hook-form';
2
- import { ReactiveCapabilityCurve } from '../reactiveLimits.type';
3
1
  import { FieldConstants } from '../../../../../utils';
4
2
  import { GeneratorCreationFormData } from '../../../generator/creation/generatorCreation.utils';
5
3
  import { GeneratorCreationDto } from '../../../generator/creation/generatorCreation.types';
@@ -25,7 +23,5 @@ export declare const getReactiveCapabilityCurveValidationSchema: (id?: FieldCons
25
23
  p: number | null;
26
24
  }[] | null | undefined, import('yup').AnyObject, "", "">;
27
25
  };
28
- export declare function setSelectedReactiveLimits(id: string, minMaxReactiveLimits: number, setValue: UseFormSetValue<FieldValues>): void;
29
- export declare function setCurrentReactiveCapabilityCurveTable(previousReactiveCapabilityCurveTable: ReactiveCapabilityCurve, fieldKey: string, setValue: UseFormSetValue<FieldValues>): void;
30
26
  export declare function toReactiveCapabilityCurveChoiceForGeneratorCreation(form: GeneratorCreationFormData, dto?: GeneratorCreationDto): "CURVE" | "MINMAX";
31
27
  export declare function toReactiveCapabilityCurveChoiceForGeneratorModification(form: GeneratorModificationFormData, generatorToModify: GeneratorFormInfos | undefined, dto?: GeneratorModificationDto): "CURVE" | "MINMAX";
@@ -96,12 +96,6 @@ const getReactiveCapabilityCurveValidationSchemaArray = (positiveAndNegativePExi
96
96
  const getReactiveCapabilityCurveValidationSchema = (id = FieldConstants.REACTIVE_CAPABILITY_CURVE_TABLE, positiveAndNegativePExist = false) => ({
97
97
  [id]: getReactiveCapabilityCurveValidationSchemaArray(positiveAndNegativePExist)
98
98
  });
99
- function setSelectedReactiveLimits(id, minMaxReactiveLimits, setValue) {
100
- setValue(id, minMaxReactiveLimits ? "MINMAX" : "CURVE");
101
- }
102
- function setCurrentReactiveCapabilityCurveTable(previousReactiveCapabilityCurveTable, fieldKey, setValue) {
103
- setValue(fieldKey, previousReactiveCapabilityCurveTable);
104
- }
105
99
  function handleReactiveCapabilityCurveChoice(previousChoice, currentReactiveLimits) {
106
100
  const currentChoice = currentReactiveLimits?.[FieldConstants.REACTIVE_CAPABILITY_CURVE_CHOICE];
107
101
  if (currentChoice === "MINMAX") {
@@ -146,8 +140,6 @@ export {
146
140
  getReactiveCapabilityCurveValidationSchema,
147
141
  getReactiveCapabilityCurveValidationSchemaArray,
148
142
  getRowEmptyFormData,
149
- setCurrentReactiveCapabilityCurveTable,
150
- setSelectedReactiveLimits,
151
143
  toReactiveCapabilityCurveChoiceForGeneratorCreation,
152
144
  toReactiveCapabilityCurveChoiceForGeneratorModification
153
145
  };
@@ -19,3 +19,4 @@ export type ReactiveCapabilityCurveRow = {
19
19
  minQ: number | null;
20
20
  p: number | null;
21
21
  };
22
+ export type UpdateReactiveCapabilityCurveTable = (action: string, index: number) => void;
@@ -1,9 +1,9 @@
1
- import { ConnectivityNetworkProps } from '../../common';
1
+ import { ConnectivityNetworkProps, UpdateReactiveCapabilityCurveTable } from '../../common';
2
2
  import { GeneratorFormInfos } from '../generatorDialog.type';
3
3
  import { EquipmentType, Identifiable } from '../../../../utils';
4
4
  export interface GeneratorDialogTabsContentProps extends ConnectivityNetworkProps {
5
5
  generatorToModify?: GeneratorFormInfos | null;
6
- updatePreviousReactiveCapabilityCurveTable: (action: string, index: number) => void;
6
+ updatePreviousReactiveCapabilityCurveTable: UpdateReactiveCapabilityCurveTable;
7
7
  fetchVoltageLevelEquipments: (voltageLevelId: string) => Promise<(Identifiable & {
8
8
  type: EquipmentType;
9
9
  })[]>;
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Copyright (c) 2026, RTE (http://www.rte-france.com)
3
+ * This Source Code Form is subject to the terms of the Mozilla Public
4
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
5
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
6
+ */
7
+ export * from './vsc';
@@ -0,0 +1,47 @@
1
+ import { getVscHvdcLineCharacteristicsCreationDtoToForm, getVscHvdcLineCharacteristicsCreationSchema, getVscHvdcLineCharacteristicsEmptyFormData, getVscHvdcLineCharacteristicsFromCopy, getVscHvdcLineCharacteristicsModificationDtoToForm, getVscHvdcLineCharacteristicsModificationSchema } from "./vsc/common/characteristics/vscHvdcLineCharacteristicsPane.utils.js";
2
+ import { VscHvdcLineCharacteristicsPane } from "./vsc/common/characteristics/VscHvdcLineCharacteristicsPane.js";
3
+ import { converterStationCreationDtoToForm, converterStationCreationFormToDto, converterStationCreationFromCopy, converterStationModificationDtoToForm, converterStationModificationFormToDto, getVscConverterStationCreationSchema, getVscConverterStationEmptyFormData, getVscConverterStationModificationSchema } from "./vsc/common/converterStation/vscConverterStationPane.utils.js";
4
+ import { VscConverterStationPane } from "./vsc/common/converterStation/VscConverterStationPane.js";
5
+ import { HVDC_LINE_TAB_FIELDS, VscHvdcLineDialogTab } from "./vsc/common/form/vscHvdcLine.utils.js";
6
+ import { VscHvdcLineDialogTabs } from "./vsc/common/form/VscHvdcLineDialogTabs.js";
7
+ import { VscHvdcLineDialogTabsContent } from "./vsc/common/form/VscHvdcLineDialogTabsContent.js";
8
+ import { VscHvdcLineDialogHeader } from "./vsc/common/form/VscHvdcLineDialogHeader.js";
9
+ import { VscHvdcLineForm } from "./vsc/common/form/VscHvdcLineForm.js";
10
+ import { VSC_CONVERTER_MODE, VscConverterMode } from "./vsc/common/vscHvdcLine.types.js";
11
+ import { vscHvdcLineCreationDtoToForm, vscHvdcLineCreationEmptyFormData, vscHvdcLineCreationFormSchema, vscHvdcLineCreationFormToDto } from "./vsc/creation/vscHvdcLineCreation.utils.js";
12
+ import { vscHvdcLineEstimationFormSchema, vscHvdcLineModificationDtoToForm, vscHvdcLineModificationEmptyFormData, vscHvdcLineModificationFormSchema, vscHvdcLineModificationFormToDto } from "./vsc/modification/vscHvdcLineModification.utils.js";
13
+ export {
14
+ HVDC_LINE_TAB_FIELDS,
15
+ VSC_CONVERTER_MODE,
16
+ VscConverterMode,
17
+ VscConverterStationPane,
18
+ VscHvdcLineCharacteristicsPane,
19
+ VscHvdcLineDialogHeader,
20
+ VscHvdcLineDialogTab,
21
+ VscHvdcLineDialogTabs,
22
+ VscHvdcLineDialogTabsContent,
23
+ VscHvdcLineForm,
24
+ converterStationCreationDtoToForm,
25
+ converterStationCreationFormToDto,
26
+ converterStationCreationFromCopy,
27
+ converterStationModificationDtoToForm,
28
+ converterStationModificationFormToDto,
29
+ getVscConverterStationCreationSchema,
30
+ getVscConverterStationEmptyFormData,
31
+ getVscConverterStationModificationSchema,
32
+ getVscHvdcLineCharacteristicsCreationDtoToForm,
33
+ getVscHvdcLineCharacteristicsCreationSchema,
34
+ getVscHvdcLineCharacteristicsEmptyFormData,
35
+ getVscHvdcLineCharacteristicsFromCopy,
36
+ getVscHvdcLineCharacteristicsModificationDtoToForm,
37
+ getVscHvdcLineCharacteristicsModificationSchema,
38
+ vscHvdcLineCreationDtoToForm,
39
+ vscHvdcLineCreationEmptyFormData,
40
+ vscHvdcLineCreationFormSchema,
41
+ vscHvdcLineCreationFormToDto,
42
+ vscHvdcLineEstimationFormSchema,
43
+ vscHvdcLineModificationDtoToForm,
44
+ vscHvdcLineModificationEmptyFormData,
45
+ vscHvdcLineModificationFormSchema,
46
+ vscHvdcLineModificationFormToDto
47
+ };
@@ -0,0 +1,8 @@
1
+ import { VscHvdcLineInfo } from '../vscHvdcLine.types';
2
+ interface VscHvdcLineCharacteristicsPaneProps {
3
+ id?: string;
4
+ isModification: boolean;
5
+ hvdcLineToModify?: VscHvdcLineInfo | null;
6
+ }
7
+ export declare function VscHvdcLineCharacteristicsPane({ id, isModification, hvdcLineToModify, }: Readonly<VscHvdcLineCharacteristicsPaneProps>): import("react").JSX.Element;
8
+ export {};
@@ -0,0 +1,235 @@
1
+ import { jsx, jsxs, Fragment } from "react/jsx-runtime";
2
+ import { useEffect } from "react";
3
+ import { Grid } from "@mui/material";
4
+ import { useFormContext, useWatch } from "react-hook-form";
5
+ import { useIntl } from "react-intl";
6
+ import { VSC_CONVERTER_MODE } from "../vscHvdcLine.types.js";
7
+ import { VoltageAdornment, OhmAdornment, ActivePowerAdornment } from "../../../../../../utils/constants/adornments.js";
8
+ import { FieldConstants } from "../../../../../../utils/constants/fieldConstants.js";
9
+ import "../../../../../../utils/conversionUtils.js";
10
+ import "../../../../../../utils/types/equipmentType.js";
11
+ import "@mui/icons-material";
12
+ import "../../../../../../components/ui/overflowableText/OverflowableText.js";
13
+ import "localized-countries";
14
+ import "localized-countries/data/fr";
15
+ import "localized-countries/data/en";
16
+ import "notistack";
17
+ import "../../../../../../components/ui/reactHookForm/provider/CustomFormProvider.js";
18
+ import "yup";
19
+ import "../../../../../../components/ui/treeViewFinder/TreeViewFinder.js";
20
+ import { SwitchInput } from "../../../../../../components/ui/reactHookForm/booleans/SwitchInput.js";
21
+ import { FloatInput } from "../../../../../../components/ui/reactHookForm/numbers/FloatInput.js";
22
+ import "../../../../../../components/ui/reactHookForm/numbers/RangeInput.js";
23
+ import { SelectInput } from "../../../../../../components/ui/reactHookForm/selectInputs/SelectInput.js";
24
+ import "@material-symbols/svg-400/outlined/left_panel_open.svg?react";
25
+ import "@material-symbols/svg-400/outlined/arrows_output.svg?react";
26
+ import "@material-symbols/svg-400/outlined/arrows_input.svg?react";
27
+ import "@material-symbols/svg-400/outlined/left_panel_close.svg?react";
28
+ import "@material-symbols/svg-400/outlined/add_notes-fill.svg?react";
29
+ import "../../../../../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
30
+ import "../../../../../../components/ui/reactHookForm/expandableInput/ExpandableInput.js";
31
+ import { CheckboxNullableInput } from "../../../../../../components/ui/reactHookForm/CheckboxNullableInput.js";
32
+ import "../../../../../../components/ui/reactHookForm/directory-item-input/directory-item-utils.js";
33
+ import "@hello-pangea/dnd";
34
+ import "../../../../../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
35
+ import "../../../../../../components/ui/snackbarProvider/SnackbarProvider.js";
36
+ import "mui-nested-menu";
37
+ import "react-resizable-panels";
38
+ import "react-papaparse";
39
+ import "react-dom";
40
+ import "autosuggest-highlight/match";
41
+ import "autosuggest-highlight/parse";
42
+ import "clsx";
43
+ import "../../../../../../components/composite/filter/FilterCreationDialog.js";
44
+ import "../../../../../../components/composite/filter/HeaderFilterForm.js";
45
+ import "../../../../../../components/composite/filter/explicitNaming/ExplicitNamingFilterForm.js";
46
+ import "../../../../../../components/composite/filter/expert/ExpertFilterForm.js";
47
+ import "../../../../../../components/composite/filter/expert/ExpertFilterEditionDialog.js";
48
+ import "../../../../../../components/composite/filter/expert/expertFilterConstants.js";
49
+ import "react-querybuilder";
50
+ import "uuid";
51
+ import "../../../../../../components/composite/filter/explicitNaming/ExplicitNamingFilterEditionDialog.js";
52
+ import "../../../../../../components/composite/filter/utils/filterFormUtils.js";
53
+ import { GridItem } from "../../../../../../components/composite/grid/grid-item.js";
54
+ import { GridSection } from "../../../../../../components/composite/grid/grid-section.js";
55
+ import "@react-querybuilder/material";
56
+ import "../../../../../../components/composite/reactQueryBuilder/CustomReactQueryBuilder.js";
57
+ import "../../../../../../components/composite/reactQueryBuilder/PropertyValueEditor.js";
58
+ import "../../../../../../components/composite/agGridTable/BottomTableButtons.js";
59
+ import "../../../../../../components/composite/agGridTable/CustomAgGridTable.js";
60
+ import "ag-grid-community";
61
+ import "../../../../../../components/composite/customAGGrid/customAggrid.js";
62
+ import "../../../../../../components/composite/customAGGrid/context/custom-aggrid-context.js";
63
+ import "mathjs";
64
+ import "../../../../../../components/composite/report/report-viewer/log-table/log-table.js";
65
+ import "react-window";
66
+ import "../../../../../../components/composite/report/report-treeview/treeview-item.js";
67
+ import "../../../../../../components/composite/report/report-viewer/context/report-viewer-context.js";
68
+ import { PropertiesForm } from "../../../../common/properties/PropertiesForm.js";
69
+ import "../../../../common/properties/propertyUtils.js";
70
+ function VscHvdcLineCharacteristicsPane({
71
+ id = FieldConstants.HVDC_LINE,
72
+ isModification = false,
73
+ hvdcLineToModify
74
+ }) {
75
+ const intl = useIntl();
76
+ const { trigger } = useFormContext();
77
+ const angleDroopWatch = useWatch({
78
+ name: `${id}.${FieldConstants.ANGLE_DROOP_ACTIVE_POWER_CONTROL}`
79
+ });
80
+ useEffect(() => {
81
+ if (!angleDroopWatch) {
82
+ trigger(`${id}.${FieldConstants.P0}`);
83
+ trigger(`${id}.${FieldConstants.DROOP}`);
84
+ }
85
+ }, [angleDroopWatch, trigger, id]);
86
+ const dcNominalVoltageField = /* @__PURE__ */ jsx(
87
+ FloatInput,
88
+ {
89
+ name: `${id}.${FieldConstants.NOMINAL_V}`,
90
+ adornment: VoltageAdornment,
91
+ label: "dcNominalVoltageLabel",
92
+ previousValue: hvdcLineToModify?.nominalV
93
+ }
94
+ );
95
+ const dcResistanceField = /* @__PURE__ */ jsx(
96
+ FloatInput,
97
+ {
98
+ name: `${id}.${FieldConstants.R}`,
99
+ adornment: OhmAdornment,
100
+ label: "dcResistanceLabel",
101
+ previousValue: hvdcLineToModify?.r
102
+ }
103
+ );
104
+ const maximumActivePowerField = /* @__PURE__ */ jsx(
105
+ FloatInput,
106
+ {
107
+ name: `${id}.${FieldConstants.MAX_P}`,
108
+ adornment: ActivePowerAdornment,
109
+ label: "MaximumActivePowerText",
110
+ previousValue: hvdcLineToModify?.maxP
111
+ }
112
+ );
113
+ const operatorActivePowerLimitSide1Field = /* @__PURE__ */ jsx(
114
+ FloatInput,
115
+ {
116
+ name: `${id}.${FieldConstants.OPERATOR_ACTIVE_POWER_LIMIT_SIDE1}`,
117
+ adornment: ActivePowerAdornment,
118
+ label: "operatorActivePowerLimitSide1Label",
119
+ previousValue: hvdcLineToModify?.hvdcOperatorActivePowerRange?.oprFromCS1toCS2
120
+ }
121
+ );
122
+ const operatorActivePowerLimitSide2Field = /* @__PURE__ */ jsx(
123
+ FloatInput,
124
+ {
125
+ name: `${id}.${FieldConstants.OPERATOR_ACTIVE_POWER_LIMIT_SIDE2}`,
126
+ adornment: ActivePowerAdornment,
127
+ label: "operatorActivePowerLimitSide2Label",
128
+ previousValue: hvdcLineToModify?.hvdcOperatorActivePowerRange?.oprFromCS2toCS1
129
+ }
130
+ );
131
+ const previousConverterMode = () => {
132
+ if (hvdcLineToModify?.convertersMode === VSC_CONVERTER_MODE.SIDE_1_INVERTER_SIDE_2_RECTIFIER.id) {
133
+ return intl.formatMessage({
134
+ id: VSC_CONVERTER_MODE.SIDE_1_INVERTER_SIDE_2_RECTIFIER.label
135
+ });
136
+ }
137
+ if (hvdcLineToModify?.convertersMode === VSC_CONVERTER_MODE.SIDE_1_RECTIFIER_SIDE_2_INVERTER.id) {
138
+ return intl.formatMessage({
139
+ id: VSC_CONVERTER_MODE.SIDE_1_RECTIFIER_SIDE_2_INVERTER.label
140
+ });
141
+ }
142
+ return void 0;
143
+ };
144
+ const converterModeField = /* @__PURE__ */ jsx(
145
+ SelectInput,
146
+ {
147
+ name: `${id}.${FieldConstants.CONVERTERS_MODE}`,
148
+ label: "converterModeLabel",
149
+ options: Object.values(VSC_CONVERTER_MODE),
150
+ size: "small",
151
+ disableClearable: true,
152
+ previousValue: previousConverterMode()
153
+ }
154
+ );
155
+ const activePowerField = /* @__PURE__ */ jsx(
156
+ FloatInput,
157
+ {
158
+ name: `${id}.${FieldConstants.ACTIVE_POWER_SET_POINT}`,
159
+ label: "ActivePowerText",
160
+ adornment: ActivePowerAdornment,
161
+ previousValue: hvdcLineToModify?.activePowerSetpoint
162
+ }
163
+ );
164
+ const previousAngleDropPowerControl = () => {
165
+ if (!hvdcLineToModify) {
166
+ return void 0;
167
+ }
168
+ if (hvdcLineToModify.hvdcAngleDroopActivePowerControl?.isEnabled) {
169
+ return intl.formatMessage({ id: "On" });
170
+ }
171
+ return intl.formatMessage({ id: "Off" });
172
+ };
173
+ function getAngleDroopActivePowerControlField() {
174
+ if (isModification) {
175
+ return /* @__PURE__ */ jsx(
176
+ CheckboxNullableInput,
177
+ {
178
+ name: `${id}.${FieldConstants.ANGLE_DROOP_ACTIVE_POWER_CONTROL}`,
179
+ label: "angleDroopActivePowerControlLabel",
180
+ previousValue: previousAngleDropPowerControl()
181
+ }
182
+ );
183
+ }
184
+ return /* @__PURE__ */ jsx(
185
+ SwitchInput,
186
+ {
187
+ name: `${id}.${FieldConstants.ANGLE_DROOP_ACTIVE_POWER_CONTROL}`,
188
+ label: "angleDroopActivePowerControlLabel"
189
+ }
190
+ );
191
+ }
192
+ const AngleDroopActivePowerControl = getAngleDroopActivePowerControlField();
193
+ const p0Field = /* @__PURE__ */ jsx(
194
+ FloatInput,
195
+ {
196
+ name: `${id}.${FieldConstants.P0}`,
197
+ label: "p0Label",
198
+ adornment: ActivePowerAdornment,
199
+ previousValue: hvdcLineToModify?.hvdcAngleDroopActivePowerControl?.p0
200
+ }
201
+ );
202
+ const droopField = /* @__PURE__ */ jsx(
203
+ FloatInput,
204
+ {
205
+ name: `${id}.${FieldConstants.DROOP}`,
206
+ label: "droopLabel",
207
+ previousValue: hvdcLineToModify?.hvdcAngleDroopActivePowerControl?.droop
208
+ }
209
+ );
210
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
211
+ /* @__PURE__ */ jsx(GridSection, { title: "Characteristics" }),
212
+ /* @__PURE__ */ jsxs(Grid, { container: true, spacing: 2, sx: { width: "100%" }, children: [
213
+ /* @__PURE__ */ jsx(GridItem, { children: dcNominalVoltageField }),
214
+ /* @__PURE__ */ jsx(GridItem, { children: dcResistanceField }),
215
+ /* @__PURE__ */ jsx(GridItem, { children: maximumActivePowerField })
216
+ ] }),
217
+ /* @__PURE__ */ jsx(GridSection, { title: "Limits" }),
218
+ /* @__PURE__ */ jsxs(Grid, { container: true, spacing: 2, sx: { width: "100%" }, children: [
219
+ /* @__PURE__ */ jsx(GridItem, { children: operatorActivePowerLimitSide1Field }),
220
+ /* @__PURE__ */ jsx(GridItem, { children: operatorActivePowerLimitSide2Field })
221
+ ] }),
222
+ /* @__PURE__ */ jsx(GridSection, { title: "Setpoints" }),
223
+ /* @__PURE__ */ jsxs(Grid, { container: true, spacing: 2, sx: { width: "100%" }, children: [
224
+ /* @__PURE__ */ jsx(GridItem, { children: converterModeField }),
225
+ /* @__PURE__ */ jsx(GridItem, { children: activePowerField }),
226
+ /* @__PURE__ */ jsx(GridItem, { size: 12, children: AngleDroopActivePowerControl }),
227
+ /* @__PURE__ */ jsx(GridItem, { children: droopField }),
228
+ /* @__PURE__ */ jsx(GridItem, { children: p0Field })
229
+ ] }),
230
+ /* @__PURE__ */ jsx(PropertiesForm, { isModification })
231
+ ] });
232
+ }
233
+ export {
234
+ VscHvdcLineCharacteristicsPane
235
+ };
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Copyright (c) 2026, RTE (http://www.rte-france.com)
3
+ * This Source Code Form is subject to the terms of the Mozilla Public
4
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
5
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
6
+ */
7
+ export * from './vscHvdcLineCharacteristicsPane.utils';
8
+ export * from './VscHvdcLineCharacteristicsPane';
@@ -0,0 +1,11 @@
1
+ import { getVscHvdcLineCharacteristicsCreationDtoToForm, getVscHvdcLineCharacteristicsCreationSchema, getVscHvdcLineCharacteristicsEmptyFormData, getVscHvdcLineCharacteristicsFromCopy, getVscHvdcLineCharacteristicsModificationDtoToForm, getVscHvdcLineCharacteristicsModificationSchema } from "./vscHvdcLineCharacteristicsPane.utils.js";
2
+ import { VscHvdcLineCharacteristicsPane } from "./VscHvdcLineCharacteristicsPane.js";
3
+ export {
4
+ VscHvdcLineCharacteristicsPane,
5
+ getVscHvdcLineCharacteristicsCreationDtoToForm,
6
+ getVscHvdcLineCharacteristicsCreationSchema,
7
+ getVscHvdcLineCharacteristicsEmptyFormData,
8
+ getVscHvdcLineCharacteristicsFromCopy,
9
+ getVscHvdcLineCharacteristicsModificationDtoToForm,
10
+ getVscHvdcLineCharacteristicsModificationSchema
11
+ };
@@ -0,0 +1,67 @@
1
+ import { InferType } from 'yup';
2
+ import { VscHvdcLineInfo } from '../vscHvdcLine.types';
3
+ import { VscHdvLineCreationDto } from '../../creation/vscHvdcLineCreation.types';
4
+ import { VscHdvLineModificationDto } from '../../modification/vscHvdcLineModification.types';
5
+ export declare const getVscHvdcLineCharacteristicsCreationSchema: () => import('yup').ObjectSchema<{
6
+ nominalV: number;
7
+ r: number;
8
+ maxP: number;
9
+ operatorActivePowerLimitSide1: number | null | undefined;
10
+ operatorActivePowerLimitSide2: number | null | undefined;
11
+ convertersMode: string;
12
+ angleDroopActivePowerControl: boolean | undefined;
13
+ activePowerSetpoint: number;
14
+ p0: number | null;
15
+ droop: number | null;
16
+ }, import('yup').AnyObject, {
17
+ nominalV: undefined;
18
+ r: undefined;
19
+ maxP: undefined;
20
+ operatorActivePowerLimitSide1: undefined;
21
+ operatorActivePowerLimitSide2: undefined;
22
+ convertersMode: undefined;
23
+ angleDroopActivePowerControl: undefined;
24
+ activePowerSetpoint: undefined;
25
+ p0: null;
26
+ droop: null;
27
+ }, "">;
28
+ export type VscHvdcLineCharacteristicsCreationFormData = InferType<ReturnType<typeof getVscHvdcLineCharacteristicsCreationSchema>>;
29
+ export declare const getVscHvdcLineCharacteristicsModificationSchema: () => import('yup').ObjectSchema<{
30
+ nominalV: number | null | undefined;
31
+ r: number | null | undefined;
32
+ maxP: number | null | undefined;
33
+ operatorActivePowerLimitSide1: number | null | undefined;
34
+ operatorActivePowerLimitSide2: number | null | undefined;
35
+ convertersMode: string | null | undefined;
36
+ angleDroopActivePowerControl: boolean | null | undefined;
37
+ activePowerSetpoint: number | null | undefined;
38
+ p0: number | null | undefined;
39
+ droop: number | null | undefined;
40
+ }, import('yup').AnyObject, {
41
+ nominalV: undefined;
42
+ r: undefined;
43
+ maxP: undefined;
44
+ operatorActivePowerLimitSide1: undefined;
45
+ operatorActivePowerLimitSide2: undefined;
46
+ convertersMode: undefined;
47
+ angleDroopActivePowerControl: undefined;
48
+ activePowerSetpoint: undefined;
49
+ p0: undefined;
50
+ droop: undefined;
51
+ }, "">;
52
+ export type VscHvdcLineCharacteristicsModificationFormData = InferType<ReturnType<typeof getVscHvdcLineCharacteristicsModificationSchema>>;
53
+ export declare function getVscHvdcLineCharacteristicsEmptyFormData(isModification: boolean): {
54
+ nominalV: null;
55
+ r: null;
56
+ maxP: null;
57
+ operatorActivePowerLimitSide1: null;
58
+ operatorActivePowerLimitSide2: null;
59
+ convertersMode: null;
60
+ activePowerSetpoint: null;
61
+ angleDroopActivePowerControl: boolean | null;
62
+ p0: null;
63
+ droop: null;
64
+ };
65
+ export declare function getVscHvdcLineCharacteristicsFromCopy(hvdcLine: VscHvdcLineInfo): VscHvdcLineCharacteristicsCreationFormData;
66
+ export declare function getVscHvdcLineCharacteristicsCreationDtoToForm(dto: VscHdvLineCreationDto): VscHvdcLineCharacteristicsCreationFormData;
67
+ export declare function getVscHvdcLineCharacteristicsModificationDtoToForm(dto: VscHdvLineModificationDto): VscHvdcLineCharacteristicsModificationFormData;