@gridsuite/commons-ui 0.162.0 → 0.164.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 (116) hide show
  1. package/dist/components/directoryItemSelector/DirectoryItemSelector.js +1 -1
  2. package/dist/components/dnd-table/dnd-table.js +1 -0
  3. package/dist/components/filter/explicitNaming/ExplicitNamingFilterForm.js +1 -1
  4. package/dist/components/filter/utils/filterApi.js +1 -1
  5. package/dist/components/index.d.ts +1 -0
  6. package/dist/components/index.js +34 -3
  7. package/dist/components/inputs/index.js +4 -0
  8. package/dist/components/inputs/reactHookForm/CountrySelectionInput.d.ts +5 -0
  9. package/dist/components/inputs/reactHookForm/CountrySelectionInput.js +27 -0
  10. package/dist/components/inputs/reactHookForm/DirectoryItemsInput.js +1 -1
  11. package/dist/components/inputs/reactHookForm/autocompleteInputs/AutocompleteInput.js +1 -1
  12. package/dist/components/inputs/reactHookForm/expandableInput/DeletableRow.d.ts +8 -0
  13. package/dist/components/inputs/reactHookForm/expandableInput/DeletableRow.js +41 -0
  14. package/dist/components/inputs/reactHookForm/expandableInput/ExpandableInput.d.ts +24 -0
  15. package/dist/components/inputs/reactHookForm/expandableInput/ExpandableInput.js +80 -0
  16. package/dist/components/inputs/reactHookForm/expandableInput/index.d.ts +7 -0
  17. package/dist/components/inputs/reactHookForm/expandableInput/index.js +4 -0
  18. package/dist/components/inputs/reactHookForm/index.d.ts +2 -0
  19. package/dist/components/inputs/reactHookForm/index.js +4 -0
  20. package/dist/components/inputs/reactHookForm/selectInputs/CountriesInput.d.ts +2 -1
  21. package/dist/components/inputs/reactHookForm/selectInputs/CountriesInput.js +12 -2
  22. package/dist/components/inputs/reactHookForm/text/TextInput.d.ts +2 -1
  23. package/dist/components/inputs/reactHookForm/text/TextInput.js +4 -2
  24. package/dist/components/network-modifications/common/form.utils.d.ts +8 -0
  25. package/dist/components/network-modifications/common/form.utils.js +14 -0
  26. package/dist/components/network-modifications/common/index.d.ts +8 -0
  27. package/dist/components/network-modifications/common/index.js +24 -0
  28. package/dist/components/network-modifications/common/properties/PropertiesForm.d.ts +7 -0
  29. package/dist/components/network-modifications/common/properties/PropertiesForm.js +109 -0
  30. package/dist/components/network-modifications/common/properties/PropertyForm.d.ts +8 -0
  31. package/dist/components/network-modifications/common/properties/PropertyForm.js +102 -0
  32. package/dist/components/network-modifications/common/properties/index.d.ts +10 -0
  33. package/dist/components/network-modifications/common/properties/index.js +20 -0
  34. package/dist/components/network-modifications/common/properties/properties.type.d.ts +14 -0
  35. package/dist/components/network-modifications/common/properties/properties.type.js +1 -0
  36. package/dist/components/network-modifications/common/properties/propertyUtils.d.ts +39 -0
  37. package/dist/components/network-modifications/common/properties/propertyUtils.js +160 -0
  38. package/dist/components/network-modifications/index.d.ts +8 -0
  39. package/dist/components/network-modifications/index.js +31 -0
  40. package/dist/components/network-modifications/substation/creation/SubstationCreationForm.d.ts +7 -0
  41. package/dist/components/network-modifications/substation/creation/SubstationCreationForm.js +52 -0
  42. package/dist/components/network-modifications/substation/creation/index.d.ts +9 -0
  43. package/dist/components/network-modifications/substation/creation/index.js +9 -0
  44. package/dist/components/network-modifications/substation/creation/substationCreation.types.d.ts +8 -0
  45. package/dist/components/network-modifications/substation/creation/substationCreation.types.js +1 -0
  46. package/dist/components/network-modifications/substation/creation/substationCreation.utils.d.ts +24 -0
  47. package/dist/components/network-modifications/substation/creation/substationCreation.utils.js +43 -0
  48. package/dist/components/network-modifications/substation/index.d.ts +7 -0
  49. package/dist/components/network-modifications/substation/index.js +9 -0
  50. package/dist/components/parameters/common/constant.d.ts +0 -8
  51. package/dist/components/parameters/common/constant.js +1 -12
  52. package/dist/components/parameters/common/index.js +1 -3
  53. package/dist/components/parameters/common/parameters-creation-dialog.js +1 -1
  54. package/dist/components/parameters/index.js +1 -3
  55. package/dist/components/parameters/loadflow/load-flow-parameter-field.js +25 -7
  56. package/dist/components/parameters/loadflow/load-flow-parameters-header.js +13 -3
  57. package/dist/components/parameters/loadflow/load-flow-parameters-inline.js +21 -5
  58. package/dist/components/parameters/loadflow/use-load-flow-parameters-form.js +1 -1
  59. package/dist/components/parameters/network-visualizations/map-parameters.js +1 -1
  60. package/dist/components/parameters/network-visualizations/network-visualizations-parameters-inline.js +1 -1
  61. package/dist/components/parameters/network-visualizations/use-network-visualizations-parameters-form.js +1 -1
  62. package/dist/components/parameters/pcc-min/pcc-min-parameters-inline.js +1 -1
  63. package/dist/components/parameters/pcc-min/use-pcc-min-parameters-form.js +1 -1
  64. package/dist/components/parameters/security-analysis/security-analysis-parameters-inline.js +2 -2
  65. package/dist/components/parameters/security-analysis/use-security-analysis-parameters-form.js +2 -2
  66. package/dist/components/parameters/sensi/sensitivity-analysis-parameters-inline.js +2 -2
  67. package/dist/components/parameters/sensi/use-sensitivity-analysis-parameters.js +1 -1
  68. package/dist/components/parameters/short-circuit/short-circuit-parameters-inline.js +1 -1
  69. package/dist/components/parameters/short-circuit/use-short-circuit-parameters-form.js +1 -1
  70. package/dist/components/parameters/voltage-init/general-parameters.js +1 -1
  71. package/dist/components/parameters/voltage-init/use-voltage-init-parameters-form.js +1 -1
  72. package/dist/components/parameters/voltage-init/voltage-init-parameters-inline.js +1 -1
  73. package/dist/components/parameters/voltage-init/voltage-limits-parameters.js +5 -9
  74. package/dist/hooks/useModificationLabelComputer.d.ts +2 -1
  75. package/dist/hooks/usePredefinedProperties.js +1 -1
  76. package/dist/hooks/useSnackMessage.d.ts +1 -3
  77. package/dist/index.js +61 -7
  78. package/dist/services/appsMetadata.d.ts +2 -1
  79. package/dist/services/appsMetadata.js +4 -0
  80. package/dist/services/index.d.ts +1 -0
  81. package/dist/services/index.js +7 -3
  82. package/dist/services/networkModification.d.ts +6 -0
  83. package/dist/services/networkModification.js +26 -0
  84. package/dist/services/security-analysis.d.ts +0 -1
  85. package/dist/services/security-analysis.js +1 -5
  86. package/dist/services/sensitivity-analysis.js +1 -2
  87. package/dist/services/study.js +7 -6
  88. package/dist/services/utils.d.ts +1 -0
  89. package/dist/services/utils.js +5 -1
  90. package/dist/translations/en/businessErrorsEn.js +1 -1
  91. package/dist/translations/en/commonButtonEn.d.ts +1 -0
  92. package/dist/translations/en/commonButtonEn.js +2 -1
  93. package/dist/translations/en/networkModificationsEn.d.ts +10 -0
  94. package/dist/translations/en/networkModificationsEn.js +11 -1
  95. package/dist/translations/fr/businessErrorsFr.js +1 -1
  96. package/dist/translations/fr/commonButtonFr.d.ts +1 -0
  97. package/dist/translations/fr/commonButtonFr.js +2 -1
  98. package/dist/translations/fr/networkModificationsFr.d.ts +10 -0
  99. package/dist/translations/fr/networkModificationsFr.js +11 -1
  100. package/dist/utils/constants/adornments.d.ts +44 -0
  101. package/dist/utils/constants/adornments.js +58 -0
  102. package/dist/utils/constants/fieldConstants.d.ts +7 -0
  103. package/dist/utils/constants/fieldConstants.js +7 -0
  104. package/dist/utils/constants/index.d.ts +1 -0
  105. package/dist/utils/constants/index.js +13 -1
  106. package/dist/utils/error.d.ts +2 -0
  107. package/dist/utils/error.js +27 -22
  108. package/dist/utils/index.d.ts +2 -1
  109. package/dist/utils/index.js +22 -3
  110. package/dist/utils/labelUtils.d.ts +0 -1
  111. package/dist/utils/labelUtils.js +1 -8
  112. package/dist/utils/ts-utils.d.ts +18 -0
  113. package/dist/utils/ts-utils.js +40 -0
  114. package/dist/utils/types/metadata.d.ts +4 -0
  115. package/dist/utils/types/types.d.ts +6 -0
  116. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -99,6 +99,8 @@ import { TextFieldWithAdornment } from "./components/inputs/reactHookForm/utils/
99
99
  import { genHelperError, gridItem, identity, isFieldRequired, toFloatOrNullValue } from "./components/inputs/reactHookForm/utils/functions.js";
100
100
  import { HelperPreviousValue } from "./components/inputs/reactHookForm/utils/HelperPreviousValue.js";
101
101
  import { DESCRIPTION, NAME } from "./components/inputs/reactHookForm/constants.js";
102
+ import { ExpandableInput } from "./components/inputs/reactHookForm/expandableInput/ExpandableInput.js";
103
+ import { CountrySelectionInput } from "./components/inputs/reactHookForm/CountrySelectionInput.js";
102
104
  import { AddButton } from "./components/inputs/reactQueryBuilder/AddButton.js";
103
105
  import { AutocompleteWithFavorites } from "./components/inputs/reactQueryBuilder/AutocompleteWithFavorites.js";
104
106
  import { CombinatorSelector } from "./components/inputs/reactQueryBuilder/CombinatorSelector.js";
@@ -134,7 +136,7 @@ import { ArrowsOutputIcon } from "./components/icons/ArrowsOutputIcon.js";
134
136
  import { LeftPanelCloseIcon } from "./components/icons/LeftPanelCloseIcon.js";
135
137
  import { EditNoteIcon } from "./components/icons/EditNoteIcon.js";
136
138
  import { ComputingType, formatComputingTypeLabel, isValidComputingType } from "./components/parameters/common/computing-type.js";
137
- import { COMMON_PARAMETERS, PARAM_SA_FLOW_PROPORTIONAL_THRESHOLD, PARAM_SA_HIGH_VOLTAGE_ABSOLUTE_THRESHOLD, PARAM_SA_HIGH_VOLTAGE_PROPORTIONAL_THRESHOLD, PARAM_SA_LOW_VOLTAGE_ABSOLUTE_THRESHOLD, PARAM_SA_LOW_VOLTAGE_PROPORTIONAL_THRESHOLD, PARAM_SA_PROVIDER, PROVIDER, ReactivePowerAdornment, SPECIFIC_PARAMETERS, VERSION_PARAMETER, VOLTAGE_LEVEL, VoltageAdornment } from "./components/parameters/common/constant.js";
139
+ import { COMMON_PARAMETERS, PARAM_SA_FLOW_PROPORTIONAL_THRESHOLD, PARAM_SA_HIGH_VOLTAGE_ABSOLUTE_THRESHOLD, PARAM_SA_HIGH_VOLTAGE_PROPORTIONAL_THRESHOLD, PARAM_SA_LOW_VOLTAGE_ABSOLUTE_THRESHOLD, PARAM_SA_LOW_VOLTAGE_PROPORTIONAL_THRESHOLD, PARAM_SA_PROVIDER, PROVIDER, SPECIFIC_PARAMETERS, VERSION_PARAMETER, VOLTAGE_LEVEL } from "./components/parameters/common/constant.js";
138
140
  import { LineSeparator } from "./components/parameters/common/line-separator.js";
139
141
  import { LabelledButton, SwitchWithLabel, TabPanel } from "./components/parameters/common/parameters.js";
140
142
  import { CreateParameterDialog } from "./components/parameters/common/parameters-creation-dialog.js";
@@ -178,6 +180,12 @@ import { CustomMenuItem, CustomNestedMenuItem } from "./components/menus/custom-
178
180
  import { OverflowableTableCell } from "./components/muiTable/OverflowableTableCell.js";
179
181
  import { OverflowableTableCellWithCheckbox } from "./components/muiTable/OverflowableTableCellWithCheckbox.js";
180
182
  import { ResizeHandle } from "./components/resizablePanels/ResizeHandle.js";
183
+ import { PropertiesForm } from "./components/network-modifications/common/properties/PropertiesForm.js";
184
+ import { PropertyForm } from "./components/network-modifications/common/properties/PropertyForm.js";
185
+ import { copyEquipmentPropertiesForCreation, createPropertyModification, creationPropertiesSchema, emptyProperties, fetchPredefinedProperties, getConcatenatedProperties, getFilledPropertiesFromModification, getPropertiesFromModification, getPropertyValue, initializedProperty, mergeModificationAndEquipmentProperties, modificationPropertiesSchema, toModificationProperties } from "./components/network-modifications/common/properties/propertyUtils.js";
186
+ import { filledTextField, italicFontTextField, standardTextField } from "./components/network-modifications/common/form.utils.js";
187
+ import { SubstationCreationForm } from "./components/network-modifications/substation/creation/SubstationCreationForm.js";
188
+ import { substationCreationDtoToForm, substationCreationEmptyFormData, substationCreationFormSchema, substationCreationFormToDto } from "./components/network-modifications/substation/creation/substationCreation.utils.js";
181
189
  import { useStateBoolean } from "./hooks/customStates/useStateBoolean.js";
182
190
  import { useStateNumber } from "./hooks/customStates/useStateNumber.js";
183
191
  import { useModificationLabelComputer } from "./hooks/useModificationLabelComputer.js";
@@ -194,20 +202,22 @@ import { OptionalServicesStatus, useParametersBackend } from "./hooks/use-parame
194
202
  import { useCreateRowDataSensi } from "./hooks/use-create-row-data-sensi.js";
195
203
  import { LOGOUT_ERROR, RESET_AUTHENTICATION_ROUTER_ERROR, SHOW_AUTH_INFO_LOGIN, SIGNIN_CALLBACK_ERROR, UNAUTHORIZED_USER_INFO, USER, USER_VALIDATION_ERROR, resetAuthenticationRouterError, setLoggedUser, setLogoutError, setShowAuthenticationRouterLogin, setSignInCallbackError, setUnauthorizedUserInfo, setUserValidationError } from "./redux/actions/authActions.js";
196
204
  import { getUserToken, setCommonStore } from "./redux/commonStore.js";
197
- import { fetchAppsMetadata, fetchBaseVoltages, fetchDefaultCountry, fetchEnv, fetchFavoriteAndDefaultCountries, fetchStudyMetadata, isStudyMetadata } from "./services/appsMetadata.js";
205
+ import { fetchAppsMetadata, fetchBaseVoltages, fetchDefaultCountry, fetchEnv, fetchFavoriteAndDefaultCountries, fetchStudyMetadata, isExploreMetadata, isStudyMetadata } from "./services/appsMetadata.js";
198
206
  import { fetchConfigParameter, fetchConfigParameters, getAppName, updateConfigParameter } from "./services/config.js";
199
207
  import { PermissionType, elementAlreadyExists, fetchDirectoryContent, fetchDirectoryElementPath, fetchRootFolders, hasElementPermission } from "./services/directory.js";
200
208
  import { createFilter, createParameter, fetchElementsInfos, saveFilter, updateParameter } from "./services/explore.js";
201
209
  import { PREFIX_STUDY_QUERIES, fetchLoadFlowParameters, getDefaultLoadFlowProvider, getLoadFlowDefaultLimitReductions, getLoadFlowProviders, getLoadFlowSpecificParametersDescription, getLoadFlowUrl, setLoadFlowParameters } from "./services/loadflow.js";
202
210
  import { fetchPccMinParameters, getPccMinStudyParameters, updatePccMinParameters } from "./services/pcc-min.js";
203
- import { fetchDefaultSecurityAnalysisProvider, fetchSecurityAnalysisParameters, fetchSecurityAnalysisProviders, getSecurityAnalysisDefaultLimitReductions, getSecurityAnalysisParameters, getStudyUrl, safeEncodeURIComponent, setSecurityAnalysisParameters, updateSecurityAnalysisParameters, updateSecurityAnalysisProvider } from "./services/security-analysis.js";
211
+ import { fetchDefaultSecurityAnalysisProvider, fetchSecurityAnalysisParameters, fetchSecurityAnalysisProviders, getSecurityAnalysisDefaultLimitReductions, getSecurityAnalysisParameters, getStudyUrl, setSecurityAnalysisParameters, updateSecurityAnalysisParameters, updateSecurityAnalysisProvider } from "./services/security-analysis.js";
204
212
  import { exportFilter, getAvailableComponentLibraries, getStudyNetworkVisualizationsParameters, getStudyShortCircuitParameters, setStudyNetworkVisualizationParameters, updateVoltageInitParameters } from "./services/study.js";
205
213
  import { getNetworkVisualizationsParameters } from "./services/study-config.js";
206
214
  import { fetchCurrentAnnouncement, fetchUserDetails } from "./services/userAdmin.js";
207
- import { backendFetch, backendFetchFile, backendFetchJson, backendFetchText, getRequestParamFromList, handleNotOkResponse, parseError } from "./services/utils.js";
215
+ import { backendFetch, backendFetchFile, backendFetchJson, backendFetchText, getRequestParamFromList, handleNotOkResponse, parseError, safeEncodeURIComponent } from "./services/utils.js";
208
216
  import { getVoltageInitParameters, getVoltageInitUrl } from "./services/voltage-init.js";
209
217
  import { fetchShortCircuitParameters, getShortCircuitSpecificParametersDescription, updateShortCircuitParameters } from "./services/short-circuit-analysis.js";
218
+ import { fetchNetworkModification, updateModification } from "./services/networkModification.js";
210
219
  import { equalsArray } from "./utils/algos.js";
220
+ import { ActivePowerAdornment, AmpereAdornment, KiloAmpereAdornment, KilometerAdornment, MVAPowerAdornment, MicroSusceptanceAdornment, OhmAdornment, PercentageAdornment, ReactivePowerAdornment, SusceptanceAdornment, VoltageAdornment } from "./utils/constants/adornments.js";
211
221
  import { FetchStatus } from "./utils/constants/fetchStatus.js";
212
222
  import { FieldConstants } from "./utils/constants/fieldConstants.js";
213
223
  import { MAX_CHAR_DESCRIPTION } from "./utils/constants/uiConstants.js";
@@ -215,8 +225,9 @@ import { AMPERE, DEGREE, KILO_AMPERE, KILO_METER, KILO_VOLT, MEGA_VAR, MEGA_VOLT
215
225
  import { COMMON_APP_NAME, COMMON_CONFIG_PARAMS_NAMES, LAST_SELECTED_DIRECTORY, PARAM_DEVELOPER_MODE, PARAM_LANGUAGE, PARAM_THEME } from "./utils/constants/configConstants.js";
216
226
  import { FILTERS, FILTER_ID, FILTER_NAME, ID } from "./utils/constants/filterConstant.js";
217
227
  import { GRIDSUITE_DEFAULT_PRECISION, convertInputValue, convertOutputValue, isBlankOrEmpty, kiloUnitToUnit, microUnitToUnit, roundToDefaultPrecision, roundToPrecision, unitToKiloUnit, unitToMicroUnit } from "./utils/conversionUtils.js";
218
- import { catchErrorHandler, snackWithFallback } from "./utils/error.js";
228
+ import { catchErrorHandler, extractErrorMessageDescriptor, snackWithFallback } from "./utils/error.js";
219
229
  import { areArrayElementsUnique, arraysContainIdenticalStrings, isEmpty, isObjectEmpty, keyGenerator } from "./utils/functions.js";
230
+ import { getEquipmentTypeShortLabel } from "./utils/labelUtils.js";
220
231
  import { LANG_ENGLISH, LANG_FRENCH, LANG_SYSTEM } from "./utils/langs.js";
221
232
  import { getFileIcon } from "./utils/mapper/getFileIcon.js";
222
233
  import { equipmentTypesForPredefinedPropertiesMapper } from "./utils/mapper/equipmentTypesForPredefinedPropertiesMapper.js";
@@ -235,8 +246,8 @@ import { FieldType } from "./utils/types/fieldType.js";
235
246
  import { ParameterType } from "./utils/types/parameters.type.js";
236
247
  import { SolverTypeInfos } from "./utils/types/dynamic-simulation.type.js";
237
248
  import { DistributionType, SensitivityType } from "./utils/types/sensitivity-analysis.type.js";
249
+ import { getIdOrSelf, notNull, notUndefined, parseIntData, removeNullFields, sanitizeString } from "./utils/ts-utils.js";
238
250
  import { toNumber, validateValueIsANumber } from "./utils/validation-functions.js";
239
- import { getEquipmentTypeShortLabel, getEquipmentTypeTagLabel } from "./utils/labelUtils.js";
240
251
  import "./utils/yupConfig.js";
241
252
  import { cardErrorBoundaryEn } from "./translations/en/cardErrorBoundaryEn.js";
242
253
  import { businessErrorsEn } from "./translations/en/businessErrorsEn.js";
@@ -302,7 +313,9 @@ export {
302
313
  AMPERE,
303
314
  AboutDialog,
304
315
  ActivableChip,
316
+ ActivePowerAdornment,
305
317
  AddButton,
318
+ AmpereAdornment,
306
319
  AnnouncementBanner,
307
320
  AnnouncementNotification,
308
321
  AnnouncementSeverity,
@@ -347,6 +360,7 @@ export {
347
360
  ComputingType,
348
361
  ContingencyCellRenderer,
349
362
  CountriesInput,
363
+ CountrySelectionInput,
350
364
  CountryValueEditor,
351
365
  CreateParameterDialog,
352
366
  CsvExport,
@@ -410,6 +424,7 @@ export {
410
424
  ErrorInLogoutAlert,
411
425
  ErrorInUserValidationAlert,
412
426
  ErrorInput,
427
+ ExpandableInput,
413
428
  ExpandingTextField,
414
429
  ExpertFilterEditionDialog,
415
430
  ExpertFilterForm,
@@ -458,6 +473,8 @@ export {
458
473
  KILO_AMPERE,
459
474
  KILO_METER,
460
475
  KILO_VOLT,
476
+ KiloAmpereAdornment,
477
+ KilometerAdornment,
461
478
  LANG_ENGLISH,
462
479
  LANG_FRENCH,
463
480
  LANG_SYSTEM,
@@ -503,7 +520,9 @@ export {
503
520
  MODIFICATION_TYPES,
504
521
  MONITORED_BRANCHES_EQUIPMENT_TYPES,
505
522
  MONITORED_VOLTAGE_LEVELS_EQUIPMENT_TYPES,
523
+ MVAPowerAdornment,
506
524
  MessageLogCellRenderer,
525
+ MicroSusceptanceAdornment,
507
526
  MidFormError,
508
527
  ModificationType,
509
528
  ModifyElementSelection,
@@ -527,6 +546,7 @@ export {
527
546
  NumericEditor,
528
547
  OHM,
529
548
  OPERATOR_OPTIONS,
549
+ OhmAdornment,
530
550
  OperatingStatus,
531
551
  OperatorType,
532
552
  OptionalServicesStatus,
@@ -574,10 +594,13 @@ export {
574
594
  ParameterType,
575
595
  PccMinParametersEditionDialog,
576
596
  PccMinParametersInLine,
597
+ PercentageAdornment,
577
598
  PermissionType,
578
599
  PopupConfirmationDialog,
579
600
  PredefinedParameters,
580
601
  ProblemDetailError,
602
+ PropertiesForm,
603
+ PropertyForm,
581
604
  PropertyValueEditor,
582
605
  ProviderParam,
583
606
  RATIO_REGULATION_MODE_OPTIONS,
@@ -648,7 +671,9 @@ export {
648
671
  SolverTypeInfos,
649
672
  SubmitButton,
650
673
  Substation,
674
+ SubstationCreationForm,
651
675
  SubstationLayout,
676
+ SusceptanceAdornment,
652
677
  SwitchInput,
653
678
  SwitchWithLabel,
654
679
  TAB_INFO,
@@ -713,10 +738,13 @@ export {
713
738
  componentsFr,
714
739
  convertInputValue,
715
740
  convertOutputValue,
741
+ copyEquipmentPropertiesForCreation,
716
742
  copyToClipboard,
717
743
  countRules,
718
744
  createFilter,
719
745
  createParameter,
746
+ createPropertyModification,
747
+ creationPropertiesSchema,
720
748
  csvEn,
721
749
  csvFr,
722
750
  descriptionEn,
@@ -730,6 +758,7 @@ export {
730
758
  elementAlreadyExists,
731
759
  elementSearchEn,
732
760
  elementSearchFr,
761
+ emptyProperties,
733
762
  equalsArray,
734
763
  equipmentSearchEn,
735
764
  equipmentSearchFr,
@@ -750,6 +779,7 @@ export {
750
779
  exportParamsEn,
751
780
  exportParamsFr,
752
781
  extractDefault,
782
+ extractErrorMessageDescriptor,
753
783
  fetchAppsMetadata,
754
784
  fetchBaseVoltages,
755
785
  fetchConfigParameter,
@@ -763,13 +793,16 @@ export {
763
793
  fetchEnv,
764
794
  fetchFavoriteAndDefaultCountries,
765
795
  fetchLoadFlowParameters,
796
+ fetchNetworkModification,
766
797
  fetchPccMinParameters,
798
+ fetchPredefinedProperties,
767
799
  fetchRootFolders,
768
800
  fetchSecurityAnalysisParameters,
769
801
  fetchSecurityAnalysisProviders,
770
802
  fetchShortCircuitParameters,
771
803
  fetchStudyMetadata,
772
804
  fetchUserDetails,
805
+ filledTextField,
773
806
  filterEn,
774
807
  filterExpertEn,
775
808
  filterExpertFr,
@@ -782,13 +815,15 @@ export {
782
815
  getAppName,
783
816
  getAvailableComponentLibraries,
784
817
  getComputedLanguage,
818
+ getConcatenatedProperties,
785
819
  getDefaultLoadFlowProvider,
786
820
  getEquipmentTypeShortLabel,
787
- getEquipmentTypeTagLabel,
788
821
  getEquipmentsInfosForSearchBar,
789
822
  getExpertFilterEmptyFormData,
790
823
  getExplicitNamingFilterEmptyFormData,
791
824
  getFileIcon,
825
+ getFilledPropertiesFromModification,
826
+ getIdOrSelf,
792
827
  getLimitReductionsFormSchema,
793
828
  getLoadFlowDefaultLimitReductions,
794
829
  getLoadFlowProviders,
@@ -799,6 +834,8 @@ export {
799
834
  getOperators,
800
835
  getPccMinStudyParameters,
801
836
  getPreLoginPath,
837
+ getPropertiesFromModification,
838
+ getPropertyValue,
802
839
  getRangeInputSchema,
803
840
  getRequestParamFromList,
804
841
  getSAParametersFromSchema,
@@ -824,18 +861,21 @@ export {
824
861
  initializeAuthenticationDev,
825
862
  initializeAuthenticationProd,
826
863
  initializeDirectory,
864
+ initializedProperty,
827
865
  inputsEn,
828
866
  inputsFr,
829
867
  intlInitialVoltageProfileMode,
830
868
  intlPredefinedParametersOptions,
831
869
  isBlankOrEmpty,
832
870
  isEmpty,
871
+ isExploreMetadata,
833
872
  isFieldRequired,
834
873
  isFloatNumber,
835
874
  isIntegerNumber,
836
875
  isObjectEmpty,
837
876
  isStudyMetadata,
838
877
  isValidComputingType,
878
+ italicFontTextField,
839
879
  keyGenerator,
840
880
  kiloUnitToUnit,
841
881
  login,
@@ -843,18 +883,24 @@ export {
843
883
  loginFr,
844
884
  logout,
845
885
  makeComposeClasses,
886
+ mergeModificationAndEquipmentProperties,
846
887
  mergeSx,
847
888
  microUnitToUnit,
889
+ modificationPropertiesSchema,
848
890
  multipleSelectionDialogEn,
849
891
  multipleSelectionDialogFr,
850
892
  networkModificationsEn,
851
893
  networkModificationsFr,
894
+ notNull,
895
+ notUndefined,
852
896
  onlyStartedGeneratorsOptions,
853
897
  parametersEn,
854
898
  parametersFr,
855
899
  parseError,
900
+ parseIntData,
856
901
  queryValidator,
857
902
  recursiveRemove,
903
+ removeNullFields,
858
904
  reportViewerEn,
859
905
  reportViewerFr,
860
906
  resetAuthenticationRouterError,
@@ -862,6 +908,7 @@ export {
862
908
  roundToPrecision,
863
909
  safeEncodeURIComponent,
864
910
  sanitizePercentageValue,
911
+ sanitizeString,
865
912
  saveExpertFilter,
866
913
  saveExplicitNamingFilter,
867
914
  saveFilter,
@@ -876,7 +923,12 @@ export {
876
923
  setUnauthorizedUserInfo,
877
924
  setUserValidationError,
878
925
  snackWithFallback,
926
+ standardTextField,
879
927
  styles,
928
+ substationCreationDtoToForm,
929
+ substationCreationEmptyFormData,
930
+ substationCreationFormSchema,
931
+ substationCreationFormToDto,
880
932
  default2 as svg,
881
933
  tableEn,
882
934
  tableFr,
@@ -884,6 +936,7 @@ export {
884
936
  toFloatOrNullValue,
885
937
  toFormValueSaParameters,
886
938
  toFormValuesLimitReductions,
939
+ toModificationProperties,
887
940
  toNestedGlobalSelectors,
888
941
  toNumber,
889
942
  topBarEn,
@@ -894,6 +947,7 @@ export {
894
947
  unitToMicroUnit,
895
948
  unscrollableDialogStyles,
896
949
  updateConfigParameter,
950
+ updateModification,
897
951
  updateParameter,
898
952
  updatePccMinParameters,
899
953
  updateSecurityAnalysisParameters,
@@ -1,4 +1,4 @@
1
- import { BaseVoltage, Metadata, StudyMetadata } from '../utils';
1
+ import { BaseVoltage, ExploreMetadata, Metadata, StudyMetadata } from '../utils';
2
2
  export type UrlString = `${string}://${string}` | `/${string}` | `./${string}`;
3
3
  export type Url = UrlString | URL;
4
4
  export type Env = {
@@ -9,6 +9,7 @@ export type Env = {
9
9
  export declare function fetchEnv(): Promise<Env>;
10
10
  export declare function fetchAppsMetadata(): Promise<Metadata[]>;
11
11
  export declare function isStudyMetadata(metadata: Metadata): metadata is StudyMetadata;
12
+ export declare function isExploreMetadata(metadata: Metadata): metadata is ExploreMetadata;
12
13
  export declare function fetchStudyMetadata(): Promise<StudyMetadata>;
13
14
  export declare function fetchBaseVoltages(): Promise<BaseVoltage[]>;
14
15
  export declare function fetchFavoriteAndDefaultCountries(): Promise<{
@@ -10,6 +10,9 @@ async function fetchAppsMetadata() {
10
10
  function isStudyMetadata(metadata) {
11
11
  return metadata.name === "Study";
12
12
  }
13
+ function isExploreMetadata(metadata) {
14
+ return metadata.name === "Explore";
15
+ }
13
16
  async function fetchStudyMetadata() {
14
17
  console.info(`Fetching study metadata...`);
15
18
  const studyMetadata = (await fetchAppsMetadata()).find(isStudyMetadata);
@@ -43,5 +46,6 @@ export {
43
46
  fetchEnv,
44
47
  fetchFavoriteAndDefaultCountries,
45
48
  fetchStudyMetadata,
49
+ isExploreMetadata,
46
50
  isStudyMetadata
47
51
  };
@@ -17,3 +17,4 @@ export * from './userAdmin';
17
17
  export * from './utils';
18
18
  export * from './voltage-init';
19
19
  export * from './short-circuit-analysis';
20
+ export * from './networkModification';
@@ -1,16 +1,17 @@
1
- import { fetchAppsMetadata, fetchBaseVoltages, fetchDefaultCountry, fetchEnv, fetchFavoriteAndDefaultCountries, fetchStudyMetadata, isStudyMetadata } from "./appsMetadata.js";
1
+ import { fetchAppsMetadata, fetchBaseVoltages, fetchDefaultCountry, fetchEnv, fetchFavoriteAndDefaultCountries, fetchStudyMetadata, isExploreMetadata, isStudyMetadata } from "./appsMetadata.js";
2
2
  import { fetchConfigParameter, fetchConfigParameters, getAppName, updateConfigParameter } from "./config.js";
3
3
  import { PermissionType, elementAlreadyExists, fetchDirectoryContent, fetchDirectoryElementPath, fetchRootFolders, hasElementPermission } from "./directory.js";
4
4
  import { createFilter, createParameter, fetchElementsInfos, saveFilter, updateParameter } from "./explore.js";
5
5
  import { PREFIX_STUDY_QUERIES, fetchLoadFlowParameters, getDefaultLoadFlowProvider, getLoadFlowDefaultLimitReductions, getLoadFlowProviders, getLoadFlowSpecificParametersDescription, getLoadFlowUrl, setLoadFlowParameters } from "./loadflow.js";
6
6
  import { fetchPccMinParameters, getPccMinStudyParameters, updatePccMinParameters } from "./pcc-min.js";
7
- import { fetchDefaultSecurityAnalysisProvider, fetchSecurityAnalysisParameters, fetchSecurityAnalysisProviders, getSecurityAnalysisDefaultLimitReductions, getSecurityAnalysisParameters, getStudyUrl, safeEncodeURIComponent, setSecurityAnalysisParameters, updateSecurityAnalysisParameters, updateSecurityAnalysisProvider } from "./security-analysis.js";
7
+ import { fetchDefaultSecurityAnalysisProvider, fetchSecurityAnalysisParameters, fetchSecurityAnalysisProviders, getSecurityAnalysisDefaultLimitReductions, getSecurityAnalysisParameters, getStudyUrl, setSecurityAnalysisParameters, updateSecurityAnalysisParameters, updateSecurityAnalysisProvider } from "./security-analysis.js";
8
8
  import { exportFilter, getAvailableComponentLibraries, getStudyNetworkVisualizationsParameters, getStudyShortCircuitParameters, setStudyNetworkVisualizationParameters, updateVoltageInitParameters } from "./study.js";
9
9
  import { getNetworkVisualizationsParameters } from "./study-config.js";
10
10
  import { fetchCurrentAnnouncement, fetchUserDetails } from "./userAdmin.js";
11
- import { backendFetch, backendFetchFile, backendFetchJson, backendFetchText, getRequestParamFromList, handleNotOkResponse, parseError } from "./utils.js";
11
+ import { backendFetch, backendFetchFile, backendFetchJson, backendFetchText, getRequestParamFromList, handleNotOkResponse, parseError, safeEncodeURIComponent } from "./utils.js";
12
12
  import { getVoltageInitParameters, getVoltageInitUrl } from "./voltage-init.js";
13
13
  import { fetchShortCircuitParameters, getShortCircuitSpecificParametersDescription, updateShortCircuitParameters } from "./short-circuit-analysis.js";
14
+ import { fetchNetworkModification, updateModification } from "./networkModification.js";
14
15
  export {
15
16
  PREFIX_STUDY_QUERIES,
16
17
  PermissionType,
@@ -35,6 +36,7 @@ export {
35
36
  fetchEnv,
36
37
  fetchFavoriteAndDefaultCountries,
37
38
  fetchLoadFlowParameters,
39
+ fetchNetworkModification,
38
40
  fetchPccMinParameters,
39
41
  fetchRootFolders,
40
42
  fetchSecurityAnalysisParameters,
@@ -62,6 +64,7 @@ export {
62
64
  getVoltageInitUrl,
63
65
  handleNotOkResponse,
64
66
  hasElementPermission,
67
+ isExploreMetadata,
65
68
  isStudyMetadata,
66
69
  parseError,
67
70
  safeEncodeURIComponent,
@@ -70,6 +73,7 @@ export {
70
73
  setSecurityAnalysisParameters,
71
74
  setStudyNetworkVisualizationParameters,
72
75
  updateConfigParameter,
76
+ updateModification,
73
77
  updateParameter,
74
78
  updatePccMinParameters,
75
79
  updateSecurityAnalysisParameters,
@@ -0,0 +1,6 @@
1
+ import { UUID } from 'node:crypto';
2
+ export declare function fetchNetworkModification(modificationUuid: UUID): Promise<Response>;
3
+ export declare function updateModification({ modificationUuid, body }: {
4
+ modificationUuid: UUID;
5
+ body: string;
6
+ }): Promise<string>;
@@ -0,0 +1,26 @@
1
+ import { safeEncodeURIComponent, backendFetch, backendFetchText } from "./utils.js";
2
+ const PREFIX_NETWORK_MODIFICATION_QUERIES = `${"api/gateway"}/network-modification`;
3
+ function getUrl() {
4
+ return `${PREFIX_NETWORK_MODIFICATION_QUERIES}/v1/network-modifications`;
5
+ }
6
+ function fetchNetworkModification(modificationUuid) {
7
+ const modificationFetchUrl = `${getUrl()}/${safeEncodeURIComponent(modificationUuid)}`;
8
+ console.debug(modificationFetchUrl);
9
+ return backendFetch(modificationFetchUrl);
10
+ }
11
+ function updateModification({ modificationUuid, body }) {
12
+ const url = `${getUrl()}/${safeEncodeURIComponent(modificationUuid)}`;
13
+ console.info("Updating modification", { url });
14
+ return backendFetchText(url, {
15
+ method: "PUT",
16
+ headers: {
17
+ Accept: "application/json",
18
+ "Content-Type": "application/json"
19
+ },
20
+ body
21
+ });
22
+ }
23
+ export {
24
+ fetchNetworkModification,
25
+ updateModification
26
+ };
@@ -1,5 +1,4 @@
1
1
  import { UUID } from 'node:crypto';
2
- export declare function safeEncodeURIComponent(value: string | null | undefined): string;
3
2
  export declare const getStudyUrl: (studyUuid: UUID | null) => string;
4
3
  export declare function fetchSecurityAnalysisProviders(): Promise<any>;
5
4
  export declare function fetchSecurityAnalysisParameters(parameterUuid: string): Promise<any>;
@@ -1,8 +1,5 @@
1
- import { backendFetchJson, backendFetch, backendFetchText } from "./utils.js";
1
+ import { safeEncodeURIComponent, backendFetchJson, backendFetch, backendFetchText } from "./utils.js";
2
2
  import { PREFIX_STUDY_QUERIES } from "./loadflow.js";
3
- function safeEncodeURIComponent(value) {
4
- return value != null ? encodeURIComponent(value) : "";
5
- }
6
3
  const PREFIX_SECURITY_ANALYSIS_SERVER_QUERIES = `${"api/gateway"}/security-analysis`;
7
4
  const getStudyUrl = (studyUuid) => `${PREFIX_STUDY_QUERIES}/v1/studies/${safeEncodeURIComponent(studyUuid)}`;
8
5
  function getSecurityAnalysisUrl() {
@@ -84,7 +81,6 @@ export {
84
81
  getSecurityAnalysisDefaultLimitReductions,
85
82
  getSecurityAnalysisParameters,
86
83
  getStudyUrl,
87
- safeEncodeURIComponent,
88
84
  setSecurityAnalysisParameters,
89
85
  updateSecurityAnalysisParameters,
90
86
  updateSecurityAnalysisProvider
@@ -1,5 +1,4 @@
1
- import { backendFetchJson, backendFetch, backendFetchText } from "./utils.js";
2
- import { safeEncodeURIComponent } from "./security-analysis.js";
1
+ import { safeEncodeURIComponent, backendFetchJson, backendFetch, backendFetchText } from "./utils.js";
3
2
  import { PREFIX_STUDY_QUERIES } from "./loadflow.js";
4
3
  const GET_PARAMETERS_PREFIX = `${"api/gateway"}/sensitivity-analysis/v1/parameters`;
5
4
  const PREFIX_SENSITIVITY_ANALYSIS_SERVER_QUERIES = `${"api/gateway"}/sensitivity-analysis`;
@@ -1,9 +1,10 @@
1
- import { backendFetchJson, backendFetch } from "./utils.js";
1
+ import { backendFetchJson, backendFetch, safeEncodeURIComponent } from "./utils.js";
2
2
  const PREFIX_STUDY_QUERIES = `${"api/gateway"}/study`;
3
+ const getStudyUrl = (studyUuid) => `${PREFIX_STUDY_QUERIES}/v1/studies/${safeEncodeURIComponent(studyUuid)}`;
3
4
  function exportFilter(studyUuid, filterUuid, token) {
4
5
  console.info("get filter export on study root node");
5
6
  return backendFetchJson(
6
- `${PREFIX_STUDY_QUERIES}/v1/studies/${studyUuid}/filters/${filterUuid}/elements`,
7
+ `${getStudyUrl(studyUuid)}/filters/${filterUuid}/elements`,
7
8
  {
8
9
  method: "get",
9
10
  headers: { "Content-Type": "application/json" }
@@ -17,11 +18,11 @@ function getAvailableComponentLibraries() {
17
18
  }
18
19
  function getStudyNetworkVisualizationsParameters(studyUuid) {
19
20
  console.info("get study network visualization parameters");
20
- return backendFetchJson(`${PREFIX_STUDY_QUERIES}/v1/studies/${studyUuid}/network-visualizations/parameters`);
21
+ return backendFetchJson(`${getStudyUrl(studyUuid)}/network-visualizations/parameters`);
21
22
  }
22
23
  function setStudyNetworkVisualizationParameters(studyUuid, newParams) {
23
24
  console.info("set study network visualization parameters");
24
- return backendFetch(`${PREFIX_STUDY_QUERIES}/v1/studies/${studyUuid}/network-visualizations/parameters`, {
25
+ return backendFetch(`${getStudyUrl(studyUuid)}/network-visualizations/parameters`, {
25
26
  method: "POST",
26
27
  headers: {
27
28
  Accept: "application/json",
@@ -32,11 +33,11 @@ function setStudyNetworkVisualizationParameters(studyUuid, newParams) {
32
33
  }
33
34
  function getStudyShortCircuitParameters(studyUuid) {
34
35
  console.info("get study short-circuit parameters");
35
- return backendFetchJson(`${PREFIX_STUDY_QUERIES}/v1/studies/${studyUuid}/short-circuit-analysis/parameters`);
36
+ return backendFetchJson(`${getStudyUrl(studyUuid)}/short-circuit-analysis/parameters`);
36
37
  }
37
38
  function updateVoltageInitParameters(studyUuid, newParams) {
38
39
  console.info("set study voltage init parameters");
39
- const url = `${PREFIX_STUDY_QUERIES}/v1/studies/${studyUuid}/voltage-init/parameters`;
40
+ const url = `${getStudyUrl(studyUuid)}/voltage-init/parameters`;
40
41
  console.debug(url);
41
42
  return backendFetch(url, {
42
43
  method: "POST",
@@ -16,4 +16,5 @@ export declare const backendFetchJson: (url: string, init?: FetchInitWithTimeout
16
16
  export declare function backendFetchText(url: string, init?: FetchInitWithTimeout, token?: string): Promise<string>;
17
17
  export declare const backendFetchFile: (url: string, init: RequestInit, token?: string) => Promise<Blob>;
18
18
  export declare const getRequestParamFromList: (paramName: string, params?: string[]) => URLSearchParams;
19
+ export declare function safeEncodeURIComponent(value: string | null | undefined): string;
19
20
  export {};
@@ -111,6 +111,9 @@ const backendFetchFile = (url, init, token) => {
111
111
  const getRequestParamFromList = (paramName, params = []) => {
112
112
  return new URLSearchParams(params.map((param) => [paramName, param]));
113
113
  };
114
+ function safeEncodeURIComponent(value) {
115
+ return value != null ? encodeURIComponent(value) : "";
116
+ }
114
117
  export {
115
118
  backendFetch,
116
119
  backendFetchFile,
@@ -118,5 +121,6 @@ export {
118
121
  backendFetchText,
119
122
  getRequestParamFromList,
120
123
  handleNotOkResponse,
121
- parseError
124
+ parseError,
125
+ safeEncodeURIComponent
122
126
  };
@@ -11,7 +11,7 @@ const businessErrorsEn = {
11
11
  "directory.targetPermissionDenied": "You don't have sufficient rights on target folder",
12
12
  "explore.permissionDenied": "You are not allowed to perform this action.",
13
13
  "explore.maxElementsExceeded": "You have reached your user quota for cases and studies ({limit} cases and studies).",
14
- "explore.incorrectCaseFile": "The provided case file is incorrect.",
14
+ "explore.incorrectCaseFile": "Invalid imported file name or format.",
15
15
  "study.notFound": "Study was not found.",
16
16
  "study.computationRunning": "The operation cannot be performed because a computation is running.",
17
17
  "study.loadflowError": "Loadflow error.",
@@ -9,4 +9,5 @@ export declare const commonButtonEn: {
9
9
  validate: string;
10
10
  'button.changeType': string;
11
11
  'button.changeOperator': string;
12
+ 'button.restore': string;
12
13
  };
@@ -2,7 +2,8 @@ const commonButtonEn = {
2
2
  cancel: "Cancel",
3
3
  validate: "Validate",
4
4
  "button.changeType": "Change",
5
- "button.changeOperator": "Change"
5
+ "button.changeOperator": "Change",
6
+ "button.restore": "Restore"
6
7
  };
7
8
  export {
8
9
  commonButtonEn
@@ -71,4 +71,14 @@ export declare const networkModificationsEn: {
71
71
  'network_modifications.CREATE_VOLTAGE_LEVEL_TOPOLOGY': string;
72
72
  'network_modifications.CREATE_VOLTAGE_LEVEL_SECTION': string;
73
73
  'network_modifications.MOVE_VOLTAGE_LEVEL_FEEDER_BAYS': string;
74
+ ModificationReadError: string;
75
+ CreateSubstation: string;
76
+ SubstationCreationError: string;
77
+ AdditionalInformation: string;
78
+ AddProperty: string;
79
+ PropertyName: string;
80
+ PropertyValue: string;
81
+ Name: string;
82
+ Country: string;
83
+ DuplicatedPropsError: string;
74
84
  };
@@ -64,7 +64,17 @@ const networkModificationsEn = {
64
64
  "network_modifications.BALANCES_ADJUSTMENT_MODIFICATION": "Balances adjustment modification",
65
65
  "network_modifications.CREATE_VOLTAGE_LEVEL_TOPOLOGY": "Creating a busbar in voltage level {computedLabel}",
66
66
  "network_modifications.CREATE_VOLTAGE_LEVEL_SECTION": "Adding busbar section to voltage level {computedLabel}",
67
- "network_modifications.MOVE_VOLTAGE_LEVEL_FEEDER_BAYS": "Moving feeder bays in voltage level {computedLabel}"
67
+ "network_modifications.MOVE_VOLTAGE_LEVEL_FEEDER_BAYS": "Moving feeder bays in voltage level {computedLabel}",
68
+ ModificationReadError: "An error occurred while fetching the modification",
69
+ CreateSubstation: "Create substation",
70
+ SubstationCreationError: "Error while creating substation",
71
+ AdditionalInformation: "Additional information",
72
+ AddProperty: "Add property",
73
+ PropertyName: "Property name",
74
+ PropertyValue: "Property value",
75
+ Name: "Name",
76
+ Country: "Country",
77
+ DuplicatedPropsError: "Duplicated properties: each property must be unique"
68
78
  };
69
79
  export {
70
80
  networkModificationsEn
@@ -11,7 +11,7 @@ const businessErrorsFr = {
11
11
  "directory.targetPermissionDenied": "Vous n'avez pas les droits d'accès suffisants sur le dossier cible",
12
12
  "explore.permissionDenied": "Vous n'êtes pas autorisé à effectuer cette action.",
13
13
  "explore.maxElementsExceeded": "Vous avez atteint votre quota utilisateur en termes de situations et d'études ({limit} situations et études).",
14
- "explore.incorrectCaseFile": "Le fichier réseau fourni est incorrect.",
14
+ "explore.incorrectCaseFile": "Format ou nom du fichier importé invalide.",
15
15
  "study.notFound": "Étude non trouvée.",
16
16
  "study.computationRunning": "L'opération ne peut être menée car un calcul est en cours.",
17
17
  "study.loadflowError": "Erreur de calcul de répartition.",
@@ -9,4 +9,5 @@ export declare const commonButtonFr: {
9
9
  validate: string;
10
10
  'button.changeType': string;
11
11
  'button.changeOperator': string;
12
+ 'button.restore': string;
12
13
  };
@@ -2,7 +2,8 @@ const commonButtonFr = {
2
2
  cancel: "Annuler",
3
3
  validate: "Valider",
4
4
  "button.changeType": "Modifier",
5
- "button.changeOperator": "Modifier"
5
+ "button.changeOperator": "Modifier",
6
+ "button.restore": "Restaurer"
6
7
  };
7
8
  export {
8
9
  commonButtonFr
@@ -71,4 +71,14 @@ export declare const networkModificationsFr: {
71
71
  'network_modifications.CREATE_VOLTAGE_LEVEL_TOPOLOGY': string;
72
72
  'network_modifications.CREATE_VOLTAGE_LEVEL_SECTION': string;
73
73
  'network_modifications.MOVE_VOLTAGE_LEVEL_FEEDER_BAYS': string;
74
+ ModificationReadError: string;
75
+ CreateSubstation: string;
76
+ SubstationCreationError: string;
77
+ AdditionalInformation: string;
78
+ AddProperty: string;
79
+ PropertyName: string;
80
+ PropertyValue: string;
81
+ Name: string;
82
+ Country: string;
83
+ DuplicatedPropsError: string;
74
84
  };