@gridsuite/commons-ui 0.268.0 → 0.270.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 (34) hide show
  1. package/dist/components/composite/agGridTable/BottomTableButtons.js +1 -1
  2. package/dist/components/ui/reactHookForm/DirectoryItemsInput.js +1 -1
  3. package/dist/features/index.js +9 -1
  4. package/dist/features/network-modifications/index.js +9 -1
  5. package/dist/features/network-modifications/voltageLevel/index.d.ts +1 -0
  6. package/dist/features/network-modifications/voltageLevel/index.js +9 -1
  7. package/dist/features/network-modifications/voltageLevel/section/VoltageLevelSectionCreationForm.d.ts +10 -0
  8. package/dist/features/network-modifications/voltageLevel/section/VoltageLevelSectionCreationForm.js +375 -0
  9. package/dist/features/network-modifications/voltageLevel/section/index.d.ts +9 -0
  10. package/dist/features/network-modifications/voltageLevel/section/index.js +10 -0
  11. package/dist/features/network-modifications/voltageLevel/section/voltageLevelSectionCreation.types.d.ts +15 -0
  12. package/dist/features/network-modifications/voltageLevel/section/voltageLevelSectionCreation.types.js +1 -0
  13. package/dist/features/network-modifications/voltageLevel/section/voltageLevelSectionCreation.utils.d.ts +48 -0
  14. package/dist/features/network-modifications/voltageLevel/section/voltageLevelSectionCreation.utils.js +100 -0
  15. package/dist/features/parameters/loadflow/load-flow-provider-specific-parameters.js +10 -1
  16. package/dist/features/topBar/TopBar.js +2 -2
  17. package/dist/index.js +13 -1
  18. package/dist/translations/en/businessErrorsEn.d.ts +14 -0
  19. package/dist/translations/en/businessErrorsEn.js +15 -1
  20. package/dist/translations/en/index.d.ts +1 -0
  21. package/dist/translations/en/index.js +2 -0
  22. package/dist/translations/en/networkModificationsEn.d.ts +17 -0
  23. package/dist/translations/en/networkModificationsEn.js +20 -2
  24. package/dist/translations/en/specificParameters.d.ts +96 -0
  25. package/dist/translations/en/specificParameters.js +95 -0
  26. package/dist/translations/fr/businessErrorsFr.d.ts +14 -0
  27. package/dist/translations/fr/businessErrorsFr.js +15 -1
  28. package/dist/translations/fr/index.d.ts +1 -0
  29. package/dist/translations/fr/index.js +2 -0
  30. package/dist/translations/fr/networkModificationsFr.d.ts +17 -0
  31. package/dist/translations/fr/networkModificationsFr.js +20 -2
  32. package/dist/translations/fr/specificParameters.d.ts +96 -0
  33. package/dist/translations/fr/specificParameters.js +95 -0
  34. package/package.json +1 -1
@@ -0,0 +1,100 @@
1
+ import { object, boolean, string } from "yup";
2
+ import { FieldConstants } from "../../../../utils/constants/fieldConstants.js";
3
+ import "../../../../utils/conversionUtils.js";
4
+ import "../../../../utils/types/equipmentType.js";
5
+ import { ModificationType } from "../../../../utils/types/modificationType.js";
6
+ import "react/jsx-runtime";
7
+ import "@mui/icons-material";
8
+ const POSITION_NEW_SECTION_SIDE = {
9
+ BEFORE: { id: "BEFORE", label: "Before" },
10
+ AFTER: { id: "AFTER", label: "After" }
11
+ };
12
+ const voltageLevelSectionCreationFormSchema = object().shape({
13
+ [FieldConstants.EQUIPMENT_ID]: string().required(),
14
+ [FieldConstants.BUS_BAR_INDEX]: object().nullable().required().shape({
15
+ [FieldConstants.ID]: string().nullable().required()
16
+ }),
17
+ [FieldConstants.BUSBAR_SECTION_ID]: object().nullable().required().shape({
18
+ [FieldConstants.ID]: string().nullable().required()
19
+ }),
20
+ [FieldConstants.IS_AFTER_BUSBAR_SECTION_ID]: string().nullable().required(),
21
+ [FieldConstants.SWITCHES_BEFORE_SECTIONS]: string().nullable().when([FieldConstants.IS_AFTER_BUSBAR_SECTION_ID, FieldConstants.SWITCH_BEFORE_NOT_REQUIRED], {
22
+ is: (isAfterBusBarSectionId, switchBeforeNotRequired) => isAfterBusBarSectionId === POSITION_NEW_SECTION_SIDE.BEFORE.id && switchBeforeNotRequired,
23
+ then: (schema) => schema.notRequired(),
24
+ otherwise: (schema) => schema.required()
25
+ }),
26
+ [FieldConstants.SWITCHES_AFTER_SECTIONS]: string().nullable().when([FieldConstants.IS_AFTER_BUSBAR_SECTION_ID, FieldConstants.SWITCH_AFTER_NOT_REQUIRED], {
27
+ is: (isAfterBusBarSectionId, switchAfterNotRequired) => isAfterBusBarSectionId === POSITION_NEW_SECTION_SIDE.AFTER.id && switchAfterNotRequired,
28
+ then: (schema) => schema.notRequired(),
29
+ otherwise: (schema) => schema.required()
30
+ }),
31
+ [FieldConstants.ALL_BUS_BAR_SECTIONS]: boolean(),
32
+ [FieldConstants.NEW_SWITCH_STATES]: boolean(),
33
+ [FieldConstants.SWITCH_BEFORE_NOT_REQUIRED]: boolean(),
34
+ [FieldConstants.SWITCH_AFTER_NOT_REQUIRED]: boolean()
35
+ }).required();
36
+ const voltageLevelSectionCreationEmptyFormData = {
37
+ [FieldConstants.EQUIPMENT_ID]: "",
38
+ [FieldConstants.BUS_BAR_INDEX]: null,
39
+ [FieldConstants.BUSBAR_SECTION_ID]: null,
40
+ [FieldConstants.IS_AFTER_BUSBAR_SECTION_ID]: null,
41
+ [FieldConstants.SWITCHES_BEFORE_SECTIONS]: null,
42
+ [FieldConstants.SWITCHES_AFTER_SECTIONS]: null,
43
+ [FieldConstants.ALL_BUS_BAR_SECTIONS]: false,
44
+ [FieldConstants.NEW_SWITCH_STATES]: true,
45
+ [FieldConstants.SWITCH_BEFORE_NOT_REQUIRED]: false,
46
+ [FieldConstants.SWITCH_AFTER_NOT_REQUIRED]: false
47
+ };
48
+ const getBusBarIndexValue = ({
49
+ busbarIndex,
50
+ allBusbars
51
+ }) => {
52
+ if (allBusbars) {
53
+ return { id: "all" };
54
+ }
55
+ return { id: busbarIndex ?? "" };
56
+ };
57
+ const getBusBarSectionValue = ({ busbarSectionId }) => {
58
+ return { id: busbarSectionId ?? "" };
59
+ };
60
+ const findBusbarKeyForSection = (busBarSectionInfos, sectionId) => {
61
+ if (!sectionId) {
62
+ return null;
63
+ }
64
+ return Object.keys(busBarSectionInfos || {}).find((key) => busBarSectionInfos?.[key]?.includes(sectionId)) ?? null;
65
+ };
66
+ const voltageLevelSectionCreationDtoToForm = (dto) => {
67
+ return {
68
+ equipmentID: dto.voltageLevelId,
69
+ busbarIndex: getBusBarIndexValue({
70
+ busbarIndex: dto.busbarIndex,
71
+ allBusbars: dto.allBusbars
72
+ }),
73
+ allBusbarSections: dto.allBusbars ?? false,
74
+ busbarSectionId: getBusBarSectionValue({ busbarSectionId: dto.busbarSectionId }),
75
+ isAfterBusBarSectionId: dto.afterBusbarSectionId ? POSITION_NEW_SECTION_SIDE.AFTER.id : POSITION_NEW_SECTION_SIDE.BEFORE.id,
76
+ switchesBeforeSections: dto.leftSwitchKind ?? null,
77
+ switchesAfterSections: dto.rightSwitchKind ?? null,
78
+ newSwitchStates: !(dto.switchOpen ?? true)
79
+ };
80
+ };
81
+ const voltageLevelSectionCreationFormToDto = (form, busBarSectionInfos) => {
82
+ return {
83
+ type: ModificationType.CREATE_VOLTAGE_LEVEL_SECTION,
84
+ voltageLevelId: form.equipmentID,
85
+ busbarIndex: form.allBusbarSections ? findBusbarKeyForSection(busBarSectionInfos, form.busbarSectionId?.id) : form.busbarIndex?.id ?? null,
86
+ busbarSectionId: form.busbarSectionId?.id ?? null,
87
+ allBusbars: form.allBusbarSections ?? false,
88
+ afterBusbarSectionId: form.isAfterBusBarSectionId === POSITION_NEW_SECTION_SIDE.AFTER.id,
89
+ leftSwitchKind: form.switchesBeforeSections ?? null,
90
+ rightSwitchKind: form.switchesAfterSections ?? null,
91
+ switchOpen: !form.newSwitchStates
92
+ };
93
+ };
94
+ export {
95
+ POSITION_NEW_SECTION_SIDE,
96
+ voltageLevelSectionCreationDtoToForm,
97
+ voltageLevelSectionCreationEmptyFormData,
98
+ voltageLevelSectionCreationFormSchema,
99
+ voltageLevelSectionCreationFormToDto
100
+ };
@@ -37,7 +37,16 @@ import "../common/contingency-table/contingency-table.js";
37
37
  import "../common/contingency-table/columns-definitions.js";
38
38
  import "@hookform/resolvers/yup";
39
39
  function LoadFlowProviderSpecificParameters({ specificParameters }) {
40
- return /* @__PURE__ */ jsx(Fragment, { children: specificParameters?.map((item) => /* @__PURE__ */ createElement(ParameterField, { id: SPECIFIC_PARAMETERS, ...item, key: item.name })) });
40
+ return /* @__PURE__ */ jsx(Fragment, { children: specificParameters?.map((item) => /* @__PURE__ */ createElement(
41
+ ParameterField,
42
+ {
43
+ id: SPECIFIC_PARAMETERS,
44
+ ...item,
45
+ label: item.name,
46
+ description: `${item.description} (${item.name})`,
47
+ key: item.name
48
+ }
49
+ )) });
41
50
  }
42
51
  const LoadFlowProviderSpecificParameters$1 = memo(LoadFlowProviderSpecificParameters);
43
52
  export {
@@ -381,7 +381,7 @@ function TopBar({
381
381
  value: LIGHT_THEME,
382
382
  "aria-label": LIGHT_THEME,
383
383
  sx: styles.toggleButton,
384
- children: /* @__PURE__ */ jsx(WbSunny, { fontSize: "small" })
384
+ children: /* @__PURE__ */ jsx(WbSunny, { fontSize: "small", "data-testid": "WbSunnyIcon" })
385
385
  }
386
386
  ),
387
387
  /* @__PURE__ */ jsx(
@@ -390,7 +390,7 @@ function TopBar({
390
390
  value: DARK_THEME,
391
391
  "aria-label": DARK_THEME,
392
392
  sx: styles.toggleButton,
393
- children: /* @__PURE__ */ jsx(Brightness3, { fontSize: "small" })
393
+ children: /* @__PURE__ */ jsx(Brightness3, { fontSize: "small", "data-testid": "Brightness3Icon" })
394
394
  }
395
395
  )
396
396
  ]
package/dist/index.js CHANGED
@@ -362,6 +362,8 @@ import { VoltageLevelModificationForm } from "./features/network-modifications/v
362
362
  import { voltageLevelModificationDtoToForm, voltageLevelModificationEmptyFormData, voltageLevelModificationFormSchema, voltageLevelModificationFormToDto, voltageLevelModificationWithMeasurementsDtoToForm, voltageLevelModificationWithMeasurementsFormSchema, voltageLevelModificationWithMeasurementsFormToDto } from "./features/network-modifications/voltageLevel/modification/voltageLevelModification.utils.js";
363
363
  import { createVoltageLevelTopologyDtoToForm, createVoltageLevelTopologyEmptyFormData, createVoltageLevelTopologyFormSchema, createVoltageLevelTopologyFormToDto } from "./features/network-modifications/voltageLevel/topology/voltageLevelTopologyCreation.utils.js";
364
364
  import { CreateVoltageLevelTopologyForm } from "./features/network-modifications/voltageLevel/topology/CreateVoltageLevelTopologyForm.js";
365
+ import { VoltageLevelSectionCreationForm } from "./features/network-modifications/voltageLevel/section/VoltageLevelSectionCreationForm.js";
366
+ import { POSITION_NEW_SECTION_SIDE, voltageLevelSectionCreationDtoToForm, voltageLevelSectionCreationEmptyFormData, voltageLevelSectionCreationFormSchema, voltageLevelSectionCreationFormToDto } from "./features/network-modifications/voltageLevel/section/voltageLevelSectionCreation.utils.js";
365
367
  import { LOAD_TAB_FIELDS, LoadDialogTab } from "./features/network-modifications/load/common/load.utils.js";
366
368
  import { LoadDialogTabs } from "./features/network-modifications/load/common/LoadDialogTabs.js";
367
369
  import { LoadDialogTabsContent } from "./features/network-modifications/load/common/LoadDialogTabsContent.js";
@@ -512,6 +514,7 @@ import { exportParamsEn } from "./translations/en/external/exportParamsEn.js";
512
514
  import { importParamsEn } from "./translations/en/external/importParamsEn.js";
513
515
  import { componentsEn } from "./translations/en/componentsEn.js";
514
516
  import { parametersEn } from "./translations/en/parameters.js";
517
+ import { specificParametersEn } from "./translations/en/specificParameters.js";
515
518
  import { useUniqueNameValidationEn } from "./translations/en/use-unique-name-validation-en.js";
516
519
  import { processConfigEn } from "./translations/en/processConfigEn.js";
517
520
  import { genericValidationEn } from "./translations/en/generic-validationEn.js";
@@ -544,6 +547,7 @@ import { exportParamsFr } from "./translations/fr/external/exportParamsFr.js";
544
547
  import { importParamsFr } from "./translations/fr/external/importParamsFr.js";
545
548
  import { componentsFr } from "./translations/fr/componentsFr.js";
546
549
  import { parametersFr } from "./translations/fr/parameters.js";
550
+ import { specificParametersFr } from "./translations/fr/specificParameters.js";
547
551
  import { useUniqueNameValidationFr } from "./translations/fr/use-unique-name-validation-fr.js";
548
552
  import { processConfigFr } from "./translations/fr/processConfigFr.js";
549
553
  import { genericValidationFr } from "./translations/fr/generic-validationFr.js";
@@ -999,6 +1003,7 @@ export {
999
1003
  PERCENTAGE,
1000
1004
  PHASE_REGULATION_MODE_OPTIONS,
1001
1005
  PHASE_SHIFTER_REGULATION_ON,
1006
+ POSITION_NEW_SECTION_SIDE,
1002
1007
  PREFIX_CONFIG_NOTIFICATION_WS,
1003
1008
  PREFIX_DIRECTORY_NOTIFICATION_WS,
1004
1009
  PREFIX_MONITOR_NOTIFICATION_WS,
@@ -1219,6 +1224,7 @@ export {
1219
1224
  VoltageLevelConnectivityForm,
1220
1225
  VoltageLevelCreationForm,
1221
1226
  VoltageLevelModificationForm,
1227
+ VoltageLevelSectionCreationForm,
1222
1228
  VoltageRegulationForm,
1223
1229
  VoltageUnitIcon,
1224
1230
  WRITE_SLACK_BUS,
@@ -1713,6 +1719,8 @@ export {
1713
1719
  shuntCompensatorModificationFormToDto,
1714
1720
  snackWithFallback,
1715
1721
  sortSeverityList,
1722
+ specificParametersEn,
1723
+ specificParametersFr,
1716
1724
  standardTextField,
1717
1725
  staticVarCompensatorCreationEmptyFormData,
1718
1726
  staticVarCompensatorCreationFormSchema,
@@ -1817,5 +1825,9 @@ export {
1817
1825
  voltageLevelModificationFormToDto,
1818
1826
  voltageLevelModificationWithMeasurementsDtoToForm,
1819
1827
  voltageLevelModificationWithMeasurementsFormSchema,
1820
- voltageLevelModificationWithMeasurementsFormToDto
1828
+ voltageLevelModificationWithMeasurementsFormToDto,
1829
+ voltageLevelSectionCreationDtoToForm,
1830
+ voltageLevelSectionCreationEmptyFormData,
1831
+ voltageLevelSectionCreationFormSchema,
1832
+ voltageLevelSectionCreationFormToDto
1821
1833
  };
@@ -84,4 +84,18 @@ export declare const businessErrorsEn: {
84
84
  'dynamicMarginCalculation.providerNotFound': string;
85
85
  'dynamicMarginCalculation.loadFilterNotFound': string;
86
86
  'monitor.server.differentProcessConfigType': string;
87
+ 'network.notFound': string;
88
+ 'network.variant.notFound': string;
89
+ 'modification.container.notFound': string;
90
+ 'modification.container.badType': string;
91
+ 'modification.container.type.notFound': string;
92
+ 'modification.notFound': string;
93
+ 'modifications.notFound': string;
94
+ 'modification.infos.error': string;
95
+ 'modification.deletion.argument.error': string;
96
+ 'modification.duplication.argument.error': string;
97
+ 'modification.with_group.deletion.forbidden': string;
98
+ 'modification.description.missing': string;
99
+ 'modification.composite.move.cycle.error': string;
100
+ 'modification.voltageLevel.attachmentLine.missing': string;
87
101
  };
@@ -77,7 +77,21 @@ const businessErrorsEn = {
77
77
  "diagram.noVoltageLevelFound": "No voltage level found for this network area diagram",
78
78
  "dynamicMarginCalculation.providerNotFound": "Dynamic margin calculation provider not found.",
79
79
  "dynamicMarginCalculation.loadFilterNotFound": "Some load filters do not exist: {filterUuids}",
80
- "monitor.server.differentProcessConfigType": "Cannot compare 2 different process config types : {processConfigEntity1Type} vs {processConfigEntity2Type}"
80
+ "monitor.server.differentProcessConfigType": "Cannot compare 2 different process config types : {processConfigEntity1Type} vs {processConfigEntity2Type}",
81
+ "network.notFound": "Network {networkId} not found",
82
+ "network.variant.notFound": "Variant {variantId} for network {networkId} not found",
83
+ "modification.container.notFound": "Modification container {containerId} of type {containerType} not found",
84
+ "modification.container.badType": "Modification container type of {containerId} is invalid : actual type {containerType} -> expected type {expectedContainerType}",
85
+ "modification.container.type.notFound": "Modification container type of {modificationId} not found",
86
+ "modification.notFound": "Modification {modificationId} not found",
87
+ "modifications.notFound": "Some of these modifications {ids} were not found",
88
+ "modification.infos.error": "Modification infos error : {errorMessage}",
89
+ "modification.deletion.argument.error": "Modification deletion : invalid arguments (need to specify the group id or give a list of modifications ids)",
90
+ "modification.duplication.argument.error": "Modification duplication : invalid arguments (need to specify the group id or give a list of modifications ids)",
91
+ "modification.with_group.deletion.forbidden": "Unauthorized deletion: modification {modificationId} is owned by group {groupId}",
92
+ "modification.description.missing": "Missing network modification description",
93
+ "modification.composite.move.cycle.error": "Moving composite modification {compositeModificationId} into {modificationId} would create a cycle",
94
+ "modification.voltageLevel.attachmentLine.missing": "Line attach for voltage level {voltageLevelId} is missing"
81
95
  };
82
96
  export {
83
97
  businessErrorsEn
@@ -33,6 +33,7 @@ export * from './external/exportParamsEn';
33
33
  export * from './external/importParamsEn';
34
34
  export * from './componentsEn';
35
35
  export * from './parameters';
36
+ export * from './specificParameters';
36
37
  export * from './use-unique-name-validation-en';
37
38
  export * from './processConfigEn';
38
39
  export * from './generic-validationEn';
@@ -27,6 +27,7 @@ import { exportParamsEn } from "./external/exportParamsEn.js";
27
27
  import { importParamsEn } from "./external/importParamsEn.js";
28
28
  import { componentsEn } from "./componentsEn.js";
29
29
  import { parametersEn } from "./parameters.js";
30
+ import { specificParametersEn } from "./specificParameters.js";
30
31
  import { useUniqueNameValidationEn } from "./use-unique-name-validation-en.js";
31
32
  import { processConfigEn } from "./processConfigEn.js";
32
33
  import { genericValidationEn } from "./generic-validationEn.js";
@@ -59,6 +60,7 @@ export {
59
60
  parametersEn,
60
61
  processConfigEn,
61
62
  reportViewerEn,
63
+ specificParametersEn,
62
64
  tableEn,
63
65
  topBarEn,
64
66
  treeviewFinderEn,
@@ -335,4 +335,21 @@ export declare const networkModificationsEn: {
335
335
  CreateCouplingDevice: string;
336
336
  CouplingDeviceText: string;
337
337
  CouplingDeviceBusBarSectionToolTipText: string;
338
+ CreateVoltageLevelSection: string;
339
+ VoltageLevelSectionCreationError: string;
340
+ BusBarSectionsReference: string;
341
+ notValidVoltageLevel: string;
342
+ SectionPosition: string;
343
+ isAfterBusBarSectionId: string;
344
+ Switch: string;
345
+ newSection: string;
346
+ switchesAfterSections: string;
347
+ switchesBeforeSections: string;
348
+ Busbar: string;
349
+ Before: string;
350
+ After: string;
351
+ allBusbarSections: string;
352
+ allOptionHelperText: string;
353
+ areSwitchesOpen: string;
354
+ areSwitchesClosed: string;
338
355
  };
@@ -320,7 +320,7 @@ const networkModificationsEn = {
320
320
  copyLink: "Copy link",
321
321
  linkCopied: "Link copied",
322
322
  linkCopyError: "Error while attempting to copy link",
323
- // Voltage level topology creation
323
+ // Voltage level creation
324
324
  CreateVoltageLevelTopology: "Adding a busbar",
325
325
  CreateVoltageLevelTopologyError: "Error while creating a voltage level topology",
326
326
  CreateCouplingDeviceDiagramButton: "Show voltage level",
@@ -331,7 +331,25 @@ const networkModificationsEn = {
331
331
  // Voltage level coupling device creation
332
332
  CreateCouplingDevice: "Add a coupling device",
333
333
  CouplingDeviceText: "Bus bar sections",
334
- CouplingDeviceBusBarSectionToolTipText: "If both bus bar sections have a different section number it creates an omnibus otherwise a coupling device"
334
+ CouplingDeviceBusBarSectionToolTipText: "If both bus bar sections have a different section number it creates an omnibus otherwise a coupling device",
335
+ // Voltage level section creation
336
+ CreateVoltageLevelSection: "Add busbar section",
337
+ VoltageLevelSectionCreationError: "Error while creating a section",
338
+ BusBarSectionsReference: "Busbar reference section",
339
+ notValidVoltageLevel: "Invalid voltage level to add busbar section. Please re-create the voltage level.",
340
+ SectionPosition: "Position",
341
+ isAfterBusBarSectionId: "New section side",
342
+ Switch: "Switch",
343
+ newSection: "New section",
344
+ switchesAfterSections: "Switch after",
345
+ switchesBeforeSections: "Switch before",
346
+ Busbar: "Busbar",
347
+ Before: "Before",
348
+ After: "After",
349
+ allBusbarSections: "All",
350
+ allOptionHelperText: "Busbars have different sections (number or index)",
351
+ areSwitchesOpen: "Open",
352
+ areSwitchesClosed: "Closed"
335
353
  };
336
354
  export {
337
355
  networkModificationsEn
@@ -0,0 +1,96 @@
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 declare const specificParametersEn: {
8
+ slackBusSelectionMode: string;
9
+ slackBusesIds: string;
10
+ lowImpedanceBranchMode: string;
11
+ voltageRemoteControl: string;
12
+ slackDistributionFailureBehavior: string;
13
+ loadPowerFactorConstant: string;
14
+ plausibleActivePowerLimit: string;
15
+ slackBusPMaxMismatch: string;
16
+ voltagePerReactivePowerControl: string;
17
+ generatorReactivePowerRemoteControl: string;
18
+ transformerReactivePowerControl: string;
19
+ maxNewtonRaphsonIterations: string;
20
+ maxOuterLoopIterations: string;
21
+ newtonRaphsonConvEpsPerEq: string;
22
+ voltageInitModeOverride: string;
23
+ transformerVoltageControlMode: string;
24
+ shuntVoltageControlMode: string;
25
+ minPlausibleTargetVoltage: string;
26
+ maxPlausibleTargetVoltage: string;
27
+ minRealisticVoltage: string;
28
+ maxRealisticVoltage: string;
29
+ minNominalVoltageRealisticVoltageCheck: string;
30
+ reactiveRangeCheckMode: string;
31
+ lowImpedanceThreshold: string;
32
+ networkCacheEnabled: string;
33
+ svcVoltageMonitoring: string;
34
+ stateVectorScalingMode: string;
35
+ maxSlackBusCount: string;
36
+ incrementalTransformerRatioTapControlOuterLoopMaxTapShift: string;
37
+ secondaryVoltageControl: string;
38
+ reactiveLimitsMaxPqPvSwitch: string;
39
+ newtonRaphsonStoppingCriteriaType: string;
40
+ maxActivePowerMismatch: string;
41
+ maxReactivePowerMismatch: string;
42
+ maxVoltageMismatch: string;
43
+ maxAngleMismatch: string;
44
+ maxRatioMismatch: string;
45
+ maxSusceptanceMismatch: string;
46
+ phaseShifterControlMode: string;
47
+ alwaysUpdateNetwork: string;
48
+ mostMeshedSlackBusSelectorMaxNominalVoltagePercentile: string;
49
+ reportedFeatures: string;
50
+ slackBusCountryFilter: string;
51
+ actionableSwitchesIds: string;
52
+ actionableTransformersIds: string;
53
+ asymmetrical: string;
54
+ minNominalVoltageTargetVoltageCheck: string;
55
+ reactivePowerDispatchMode: string;
56
+ useActiveLimits: string;
57
+ disableVoltageControlOfGeneratorsOutsideActivePowerLimits: string;
58
+ lineSearchStateVectorScalingMaxIteration: string;
59
+ lineSearchStateVectorScalingStepFold: string;
60
+ maxVoltageChangeStateVectorScalingMaxDv: string;
61
+ maxVoltageChangeStateVectorScalingMaxDphi: string;
62
+ linePerUnitMode: string;
63
+ useLoadModel: string;
64
+ dcApproximationType: string;
65
+ simulateAutomationSystems: string;
66
+ acSolverType: string;
67
+ maxNewtonKrylovIterations: string;
68
+ newtonKrylovLineSearch: string;
69
+ referenceBusSelectionMode: string;
70
+ writeReferenceTerminals: string;
71
+ voltageTargetPriorities: string;
72
+ transformerVoltageControlUseInitialTapPosition: string;
73
+ generatorVoltageControlMinNominalVoltage: string;
74
+ fictitiousGeneratorVoltageControlCheckMode: string;
75
+ areaInterchangeControl: string;
76
+ areaInterchangeControlAreaType: string;
77
+ areaInterchangePMaxMismatch: string;
78
+ voltageRemoteControlRobustMode: string;
79
+ forceTargetQInReactiveLimits: string;
80
+ disableInconsistentVoltageControls: string;
81
+ extrapolateReactiveLimits: string;
82
+ startWithFrozenACEmulation: string;
83
+ generatorsWithZeroMwTargetAreNotStarted: string;
84
+ incrementalShuntControlOuterLoopMaxSectionShift: string;
85
+ fixVoltageTargets: string;
86
+ acDcNetwork: string;
87
+ allowNonLinearShuntZeroSection: string;
88
+ svcRegulationOn: string;
89
+ dsoVoltageLevel: string;
90
+ tfoVoltageLevel: string;
91
+ startTime: string;
92
+ stopTime: string;
93
+ precision: string;
94
+ timeStep: string;
95
+ mergeLoads: string;
96
+ };
@@ -0,0 +1,95 @@
1
+ const specificParametersEn = {
2
+ // open LoadFlow
3
+ slackBusSelectionMode: "Slack bus selection mode",
4
+ slackBusesIds: "Slack bus IDs",
5
+ lowImpedanceBranchMode: "Low impedance branch mode",
6
+ voltageRemoteControl: "Voltage remote control",
7
+ slackDistributionFailureBehavior: "Slack distribution failure behavior",
8
+ loadPowerFactorConstant: "Constant load power factor",
9
+ plausibleActivePowerLimit: "Plausible active power limit",
10
+ slackBusPMaxMismatch: "Max power mismatch",
11
+ voltagePerReactivePowerControl: "SVC use regulation slope",
12
+ generatorReactivePowerRemoteControl: "Use remote reactive power control",
13
+ transformerReactivePowerControl: "Transformer reactive power control",
14
+ maxNewtonRaphsonIterations: "Maximum Newton-Raphson iterations",
15
+ maxOuterLoopIterations: "Maximum outer loop iterations",
16
+ newtonRaphsonConvEpsPerEq: "Newton-Raphson convergence criteria",
17
+ voltageInitModeOverride: "Voltage initialization mode override",
18
+ transformerVoltageControlMode: "Transformer voltage control mode",
19
+ shuntVoltageControlMode: "Shunt voltage control mode",
20
+ minPlausibleTargetVoltage: "Minimum plausible target voltage",
21
+ maxPlausibleTargetVoltage: "Maximum plausible target voltage",
22
+ minRealisticVoltage: "Minimum realistic voltage",
23
+ maxRealisticVoltage: "Maximum realistic voltage",
24
+ minNominalVoltageRealisticVoltageCheck: "Minimum nominal voltage for realism check",
25
+ reactiveRangeCheckMode: "Reactive range check mode",
26
+ lowImpedanceThreshold: "Low impedance threshold",
27
+ networkCacheEnabled: "Network cache enabled",
28
+ svcVoltageMonitoring: "SVC voltage monitoring",
29
+ stateVectorScalingMode: "State vector scaling mode",
30
+ maxSlackBusCount: "Maximum slack bus count",
31
+ incrementalTransformerRatioTapControlOuterLoopMaxTapShift: "Maximum tap shift per outer loop",
32
+ secondaryVoltageControl: "Secondary voltage control",
33
+ reactiveLimitsMaxPqPvSwitch: "Maximum PV-PQ switches",
34
+ newtonRaphsonStoppingCriteriaType: "Newton-Raphson stopping criteria type",
35
+ maxActivePowerMismatch: "Maximum active power mismatch",
36
+ maxReactivePowerMismatch: "Maximum reactive power mismatch",
37
+ maxVoltageMismatch: "Maximum voltage mismatch",
38
+ maxAngleMismatch: "Maximum angle mismatch",
39
+ maxRatioMismatch: "Maximum ratio mismatch",
40
+ maxSusceptanceMismatch: "Maximum susceptance mismatch",
41
+ phaseShifterControlMode: "Phase shifter simulation mode",
42
+ alwaysUpdateNetwork: "Update network after divergence",
43
+ mostMeshedSlackBusSelectorMaxNominalVoltagePercentile: "Max nominal voltage percentile",
44
+ reportedFeatures: "Additional reported features",
45
+ slackBusCountryFilter: "Slack bus country filter",
46
+ actionableSwitchesIds: "Actionable switch IDs",
47
+ actionableTransformersIds: "Actionable transformer IDs",
48
+ asymmetrical: "Asymmetrical calculation",
49
+ minNominalVoltageTargetVoltageCheck: "Minimum nominal voltage for target check",
50
+ reactivePowerDispatchMode: "Reactive power dispatch mode",
51
+ useActiveLimits: "Use active power limits",
52
+ disableVoltageControlOfGeneratorsOutsideActivePowerLimits: "Disable voltage control outside active limits",
53
+ lineSearchStateVectorScalingMaxIteration: "Line search max iterations",
54
+ lineSearchStateVectorScalingStepFold: "Line search step fold",
55
+ maxVoltageChangeStateVectorScalingMaxDv: "Maximum voltage magnitude change",
56
+ maxVoltageChangeStateVectorScalingMaxDphi: "Maximum voltage angle change",
57
+ linePerUnitMode: "Line per-unit mode",
58
+ useLoadModel: "Use voltage-dependent load model",
59
+ dcApproximationType: "DC approximation type",
60
+ simulateAutomationSystems: "Automation systems simulation",
61
+ acSolverType: "AC solver type",
62
+ maxNewtonKrylovIterations: "Newton-Krylov maximum iterations",
63
+ newtonKrylovLineSearch: "Newton-Krylov line search",
64
+ referenceBusSelectionMode: "Reference bus selection mode",
65
+ writeReferenceTerminals: "Write reference terminals",
66
+ voltageTargetPriorities: "Voltage target priorities",
67
+ transformerVoltageControlUseInitialTapPosition: "Preserve initial relative tap position",
68
+ generatorVoltageControlMinNominalVoltage: "Minimum nominal voltage for generator voltage control",
69
+ fictitiousGeneratorVoltageControlCheckMode: "Fictitious generator voltage control checks",
70
+ areaInterchangeControl: "Area interchange control over slack",
71
+ areaInterchangeControlAreaType: "Area type for interchange control",
72
+ areaInterchangePMaxMismatch: "Area interchange mismatch limit",
73
+ voltageRemoteControlRobustMode: "Robust remote voltage control",
74
+ forceTargetQInReactiveLimits: "Force reactive target within limits",
75
+ disableInconsistentVoltageControls: "Disable inconsistent voltage controls",
76
+ extrapolateReactiveLimits: "Extrapolate reactive limits",
77
+ startWithFrozenACEmulation: "Start with frozen AC emulation",
78
+ generatorsWithZeroMwTargetAreNotStarted: "Zero-target generators disabled",
79
+ incrementalShuntControlOuterLoopMaxSectionShift: "Maximum shunt section shift",
80
+ fixVoltageTargets: "Auto-correct voltage targets",
81
+ acDcNetwork: "Simultaneous AC/DC load flow",
82
+ allowNonLinearShuntZeroSection: "Allow implicit zero section for non-linear shunts",
83
+ // Dyna Flow
84
+ svcRegulationOn: "SVC voltage regulation",
85
+ dsoVoltageLevel: "Minimum load voltage level",
86
+ tfoVoltageLevel: "Generator transformer voltage threshold",
87
+ startTime: "Simulation start time",
88
+ stopTime: "Simulation stop time",
89
+ precision: "Numerical precision",
90
+ timeStep: "Maximum solver time step (s)",
91
+ mergeLoads: "Merge loads on same bus"
92
+ };
93
+ export {
94
+ specificParametersEn
95
+ };
@@ -84,4 +84,18 @@ export declare const businessErrorsFr: {
84
84
  'dynamicMarginCalculation.providerNotFound': string;
85
85
  'dynamicMarginCalculation.loadFilterNotFound': string;
86
86
  'monitor.server.differentProcessConfigType': string;
87
+ 'network.notFound': string;
88
+ 'network.variant.notFound': string;
89
+ 'modification.container.notFound': string;
90
+ 'modification.container.badType': string;
91
+ 'modification.container.type.notFound': string;
92
+ 'modification.notFound': string;
93
+ 'modifications.notFound': string;
94
+ 'modification.infos.error': string;
95
+ 'modification.deletion.argument.error': string;
96
+ 'modification.duplication.argument.error': string;
97
+ 'modification.with_group.deletion.forbidden': string;
98
+ 'modification.description.missing': string;
99
+ 'modification.composite.move.cycle.error': string;
100
+ 'modification.voltageLevel.attachmentLine.missing': string;
87
101
  };
@@ -77,7 +77,21 @@ const businessErrorsFr = {
77
77
  "diagram.noVoltageLevelFound": "Aucun poste trouvé pour cette image nodale de zone",
78
78
  "dynamicMarginCalculation.providerNotFound": "Simulateur du calcul de marge dynamique non trouvé.",
79
79
  "dynamicMarginCalculation.loadFilterNotFound": "Certains filtres de consommations n'existent pas : {filterUuids}",
80
- "monitor.server.differentProcessConfigType": "Impossible de comparer 2 configurations de processus de type différent : {processConfigEntity1Type} vs {processConfigEntity2Type}"
80
+ "monitor.server.differentProcessConfigType": "Impossible de comparer 2 configurations de processus de type différent : {processConfigEntity1Type} vs {processConfigEntity2Type}",
81
+ "network.notFound": "Réseau {networkId} non trouvé",
82
+ "network.variant.notFound": "Variante {variantId} pour le réseau {networkId} non trouvé",
83
+ "modification.container.notFound": "Le container de modification {containerId} de type {containerType} est introuvable",
84
+ "modification.container.badType": "Le type du container {containerId} est invalide : type actuel {} -> type attendu {expectedContainerType}",
85
+ "modification.container.type.notFound": "Le type de container pour la modification {modificationId} est introuvable",
86
+ "modification.notFound": "La modification {modificationId} est introuvable",
87
+ "modifications.notFound": "Certaines modifications parmi celles ci {ids} n'ont pas été trouvée",
88
+ "modification.infos.error": "Infos de modification erronées : {errorMessage}",
89
+ "modification.deletion.argument.error": "Modification suppression : arguments invalides (besoin d'un id de groupe ou d'une liste de uuids de modifications)",
90
+ "modification.duplication.argument.error": "Modification duplication : arguments invalides (besoin d'un id de groupe ou d'une liste de uuids de modifications)",
91
+ "modification.with_group.deletion.forbidden": "Suppression non autorisée : la modification {modificationId} appartient au groupe {groupId}",
92
+ "modification.description.missing": "La description de la modification réseau est manquante",
93
+ "modification.composite.move.cycle.error": "Le déplacement de la modification composite {compositeModificationId} dans {modificationId} va créer un cycle",
94
+ "modification.voltageLevel.attachmentLine.missing": "La ligne de piquage pour le poste {voltageLevelId} est manquante"
81
95
  };
82
96
  export {
83
97
  businessErrorsFr
@@ -33,6 +33,7 @@ export * from './external/exportParamsFr';
33
33
  export * from './external/importParamsFr';
34
34
  export * from './componentsFr';
35
35
  export * from './parameters';
36
+ export * from './specificParameters';
36
37
  export * from './use-unique-name-validation-fr';
37
38
  export * from './processConfigFr';
38
39
  export * from './generic-validationFr';
@@ -27,6 +27,7 @@ import { exportParamsFr } from "./external/exportParamsFr.js";
27
27
  import { importParamsFr } from "./external/importParamsFr.js";
28
28
  import { componentsFr } from "./componentsFr.js";
29
29
  import { parametersFr } from "./parameters.js";
30
+ import { specificParametersFr } from "./specificParameters.js";
30
31
  import { useUniqueNameValidationFr } from "./use-unique-name-validation-fr.js";
31
32
  import { processConfigFr } from "./processConfigFr.js";
32
33
  import { genericValidationFr } from "./generic-validationFr.js";
@@ -59,6 +60,7 @@ export {
59
60
  parametersFr,
60
61
  processConfigFr,
61
62
  reportViewerFr,
63
+ specificParametersFr,
62
64
  tableFr,
63
65
  topBarFr,
64
66
  treeviewFinderFr,
@@ -335,4 +335,21 @@ export declare const networkModificationsFr: {
335
335
  CreateCouplingDevice: string;
336
336
  CouplingDeviceText: string;
337
337
  CouplingDeviceBusBarSectionToolTipText: string;
338
+ CreateVoltageLevelSection: string;
339
+ VoltageLevelSectionCreationError: string;
340
+ BusBarSectionsReference: string;
341
+ notValidVoltageLevel: string;
342
+ SectionPosition: string;
343
+ isAfterBusBarSectionId: string;
344
+ Switch: string;
345
+ newSection: string;
346
+ switchesAfterSections: string;
347
+ switchesBeforeSections: string;
348
+ Busbar: string;
349
+ Before: string;
350
+ After: string;
351
+ allBusbarSections: string;
352
+ allOptionHelperText: string;
353
+ areSwitchesOpen: string;
354
+ areSwitchesClosed: string;
338
355
  };
@@ -320,7 +320,7 @@ const networkModificationsFr = {
320
320
  copyLink: "Copier le lien",
321
321
  linkCopied: "Lien copié",
322
322
  linkCopyError: "Erreur lors de la copie du lien",
323
- // Voltage level topology creation
323
+ // Voltage level
324
324
  CreateVoltageLevelTopology: "Ajouter un jeu de barre",
325
325
  CreateVoltageLevelTopologyError: "Erreur lors de la création d'une topologie de poste",
326
326
  CreateCouplingDeviceDiagramButton: "Voir le poste",
@@ -331,7 +331,25 @@ const networkModificationsFr = {
331
331
  // Voltage level coupling device creation
332
332
  CreateCouplingDevice: "Ajouter un couplage ou un omnibus",
333
333
  CouplingDeviceText: "Sections de jeu de barre",
334
- CouplingDeviceBusBarSectionToolTipText: "Si les deux sections de barre sélectionnées ont des numéros de tronçon/section différents la modification crée un omnibus, autrement elle crée un couplage"
334
+ CouplingDeviceBusBarSectionToolTipText: "Si les deux sections de barre sélectionnées ont des numéros de tronçon/section différents la modification crée un omnibus, autrement elle crée un couplage",
335
+ // Voltage level section creation
336
+ CreateVoltageLevelSection: "Ajouter un tronçon ou une section",
337
+ VoltageLevelSectionCreationError: "Erreur lors de la création d'une section",
338
+ BusBarSectionsReference: "Section de jeu de barres de référence",
339
+ notValidVoltageLevel: "Poste invalide pour l'ajout de section/tronçon. Veuillez re-créer le poste.",
340
+ SectionPosition: "Position",
341
+ isAfterBusBarSectionId: "Côté de la nouvelle section",
342
+ Switch: "Organes de coupure",
343
+ newSection: "Nouvelle section",
344
+ switchesAfterSections: "OC après",
345
+ switchesBeforeSections: "OC avant",
346
+ Busbar: "Jeu de barres",
347
+ Before: "Avant",
348
+ After: "Après",
349
+ allBusbarSections: "Tous",
350
+ allOptionHelperText: "Tous les jeux de barres n'ont pas les mêmes sections (index et nombre)",
351
+ areSwitchesOpen: "Ouverts",
352
+ areSwitchesClosed: "Fermés"
335
353
  };
336
354
  export {
337
355
  networkModificationsFr