@gridsuite/commons-ui 0.206.0 → 0.208.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 (54) hide show
  1. package/dist/components/dialogs/modifyElementSelection/ModifyElementSelection.js +1 -1
  2. package/dist/components/directoryItemSelector/DirectoryItemSelector.js +1 -1
  3. package/dist/components/directoryItemSelector/utils.js +1 -1
  4. package/dist/components/dnd-table/index.d.ts +1 -5
  5. package/dist/components/dnd-table/index.js +8 -6
  6. package/dist/components/dnd-table-v2/dnd-table.js +1 -1
  7. package/dist/components/index.js +7 -5
  8. package/dist/components/inputs/reactHookForm/DirectoryItemsInput.js +1 -1
  9. package/dist/components/parameters/common/contingency-table/columns-definitions.d.ts +3 -3
  10. package/dist/components/parameters/common/contingency-table/columns-definitions.js +10 -8
  11. package/dist/components/parameters/common/contingency-table/contingency-table.js +4 -4
  12. package/dist/components/parameters/common/contingency-table/types.d.ts +7 -2
  13. package/dist/components/parameters/common/parameter-table-field/parameter-table-field.d.ts +1 -1
  14. package/dist/components/parameters/pcc-min/pcc-min-form-utils.d.ts +5 -4
  15. package/dist/components/parameters/pcc-min/pcc-min-form-utils.js +5 -1
  16. package/dist/components/parameters/pcc-min/pcc-min-parameters-inline.d.ts +2 -2
  17. package/dist/components/parameters/pcc-min/pcc-min-parameters-inline.js +3 -2
  18. package/dist/components/parameters/pcc-min/use-pcc-min-parameters-form.d.ts +2 -2
  19. package/dist/components/parameters/pcc-min/use-pcc-min-parameters-form.js +9 -7
  20. package/dist/components/parameters/security-analysis/columns-definitions.d.ts +2 -2
  21. package/dist/components/parameters/security-analysis/security-analysis-parameters-inline.js +3 -2
  22. package/dist/components/parameters/security-analysis/security-analysis-parameters-selector.d.ts +2 -2
  23. package/dist/components/parameters/security-analysis/types.d.ts +8 -3
  24. package/dist/components/parameters/security-analysis/types.js +42 -1
  25. package/dist/components/parameters/security-analysis/use-security-analysis-parameters-form.d.ts +4 -4
  26. package/dist/components/parameters/security-analysis/use-security-analysis-parameters-form.js +2 -1
  27. package/dist/components/parameters/sensi/columns-definitions.d.ts +1 -1
  28. package/dist/components/parameters/sensi/sensitivity-analysis-parameters-dialog.js +1 -1
  29. package/dist/components/parameters/sensi/sensitivity-analysis-parameters-inline.js +6 -3
  30. package/dist/components/parameters/sensi/use-sensitivity-analysis-parameters.d.ts +4 -4
  31. package/dist/components/parameters/sensi/use-sensitivity-analysis-parameters.js +3 -2
  32. package/dist/components/parameters/voltage-init/use-voltage-init-parameters-form.js +1 -1
  33. package/dist/components/parameters/voltage-init/voltage-init-form-utils.js +1 -1
  34. package/dist/hooks/use-unique-name-validation.js +1 -1
  35. package/dist/index.js +24 -7
  36. package/dist/services/directory.d.ts +2 -1
  37. package/dist/services/directory.js +11 -0
  38. package/dist/services/index.d.ts +1 -0
  39. package/dist/services/index.js +11 -1
  40. package/dist/services/pcc-min.d.ts +4 -7
  41. package/dist/services/pcc-min.js +8 -5
  42. package/dist/services/security-analysis.d.ts +5 -4
  43. package/dist/services/security-analysis.js +7 -4
  44. package/dist/services/sensitivity-analysis.d.ts +5 -6
  45. package/dist/services/sensitivity-analysis.js +13 -6
  46. package/dist/utils/index.js +6 -1
  47. package/dist/utils/types/index.d.ts +1 -0
  48. package/dist/utils/types/index.js +7 -2
  49. package/dist/utils/types/parameters.type.d.ts +3 -3
  50. package/dist/utils/types/pcc-min.type.d.ts +10 -0
  51. package/dist/utils/types/pcc-min.type.js +31 -0
  52. package/dist/utils/types/sensitivity-analysis.type.d.ts +28 -23
  53. package/dist/utils/types/sensitivity-analysis.type.js +136 -1
  54. package/package.json +1 -1
@@ -48,7 +48,7 @@ import { getNameElementEditorSchema, getNameElementEditorEmptyFormData } from ".
48
48
  import { fromVoltageInitParametersFormToParamValues, fromVoltageInitParamsDataToFormValues, fromStudyVoltageInitParamsDataToFormValues } from "./voltage-init-form-utils.js";
49
49
  import "react-dom";
50
50
  import "@hello-pangea/dnd";
51
- import { SELECTED } from "../../dnd-table/dnd-table.type.js";
51
+ import { SELECTED } from "../../dnd-table-v2/dnd-table.type.js";
52
52
  const useVoltageInitParametersForm = ({
53
53
  parametersUuid,
54
54
  name,
@@ -40,7 +40,7 @@ import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
40
40
  import "react-querybuilder";
41
41
  import "react-dom";
42
42
  import "@hello-pangea/dnd";
43
- import { SELECTED } from "../../dnd-table/dnd-table.type.js";
43
+ import { SELECTED } from "../../dnd-table-v2/dnd-table.type.js";
44
44
  const fromVoltageInitParametersFormToParamValues = (newParams) => {
45
45
  return {
46
46
  applyModifications: newParams?.[VoltageInitTabValues.GENERAL]?.[GENERAL_APPLY_MODIFICATIONS] ?? DEFAULT_GENERAL_APPLY_MODIFICATIONS,
@@ -3,11 +3,11 @@ import { useFormContext, useController } from "react-hook-form";
3
3
  import { FieldConstants } from "../utils/constants/fieldConstants.js";
4
4
  import "../utils/conversionUtils.js";
5
5
  import "../utils/types/equipmentType.js";
6
+ import { elementAlreadyExists } from "../services/directory.js";
6
7
  import "react/jsx-runtime";
7
8
  import "@mui/icons-material";
8
9
  import "../utils/yupConfig.js";
9
10
  import { useDebounce } from "./useDebounce.js";
10
- import { elementAlreadyExists } from "../services/directory.js";
11
11
  function useUniqueNameValidation({
12
12
  name,
13
13
  currentName = "",
package/dist/index.js CHANGED
@@ -30,11 +30,12 @@ import { initializeDirectory } from "./components/dialogs/elementSaveDialog/util
30
30
  import { ModifyElementSelection } from "./components/dialogs/modifyElementSelection/ModifyElementSelection.js";
31
31
  import { PopupConfirmationDialog } from "./components/dialogs/popupConfirmationDialog/PopupConfirmationDialog.js";
32
32
  import { DirectoryItemSelector } from "./components/directoryItemSelector/DirectoryItemSelector.js";
33
- import { DndTable } from "./components/dnd-table/dnd-table.js";
34
- import { DndColumnType, MAX_ROWS_NUMBER, SELECTED } from "./components/dnd-table/dnd-table.type.js";
35
- import { DndTableAddRowsDialog } from "./components/dnd-table/dnd-table-add-rows-dialog.js";
36
- import { DndTableBottomLeftButtons } from "./components/dnd-table/dnd-table-bottom-left-buttons.js";
37
- import { DndTableBottomRightButtons } from "./components/dnd-table/dnd-table-bottom-right-buttons.js";
33
+ import { DndTable } from "./components/dnd-table-v2/dnd-table.js";
34
+ import { DndColumnType, MAX_ROWS_NUMBER, SELECTED } from "./components/dnd-table-v2/dnd-table.type.js";
35
+ import { getDefaultRowData } from "./components/dnd-table-v2/dnd-table-utils.js";
36
+ import { DndTableAddRowsDialog } from "./components/dnd-table-v2/dnd-table-add-rows-dialog.js";
37
+ import { DndTableBottomLeftButtons } from "./components/dnd-table-v2/dnd-table-bottom-left-buttons.js";
38
+ import { DndTableBottomRightButtons } from "./components/dnd-table-v2/dnd-table-bottom-right-buttons.js";
38
39
  import { EquipmentItem } from "./components/elementSearch/elementItem/EquipmentItem.js";
39
40
  import { ElementSearchDialog } from "./components/elementSearch/elementSearchDialog/ElementSearchDialog.js";
40
41
  import { ElementSearchInput } from "./components/elementSearch/elementSearchInput/ElementSearchInput.js";
@@ -263,9 +264,10 @@ import { MODIFICATION_TYPES, ModificationType } from "./utils/types/modification
263
264
  import { FieldType } from "./utils/types/fieldType.js";
264
265
  import { ParameterType } from "./utils/types/parameters.type.js";
265
266
  import { SolverType } from "./utils/types/dynamic-simulation.type.js";
266
- import { DistributionType, SensitivityType } from "./utils/types/sensitivity-analysis.type.js";
267
+ import { DistributionType, SensitivityType, enrichSensitivityAnalysisParameters, mapSensitivityAnalysisParameters } from "./utils/types/sensitivity-analysis.type.js";
267
268
  import { CalculationType, LoadModelsRule } from "./utils/types/dynamic-margin-calculation.type.js";
268
269
  import { OperationType } from "./utils/types/network-modification-types.js";
270
+ import { enrichPccMinParameters, mapPccMinParameters } from "./utils/types/pcc-min.type.js";
269
271
  import { areIdsEqual, getIdOrSelf, getIdOrValue, getLabelOrValue, getObjectId, notNull, notUndefined, parseIntData, removeNullFields, richTypeEquals, sanitizeString } from "./utils/ts-utils.js";
270
272
  import { toNumber, validateValueIsANumber } from "./utils/validation-functions.js";
271
273
  import { NO_ITEM_SELECTION_FOR_COPY } from "./utils/directory-utils.js";
@@ -273,11 +275,12 @@ import "./utils/yupConfig.js";
273
275
  import "react";
274
276
  import { fetchAppsMetadata, fetchBaseVoltages, fetchDefaultCountry, fetchEnv, fetchFavoriteAndDefaultCountries, fetchStudyMetadata, isExploreMetadata, isStudyMetadata } from "./services/appsMetadata.js";
275
277
  import { fetchConfigParameter, fetchConfigParameters, getAppName, updateConfigParameter } from "./services/config.js";
276
- import { PermissionType, elementAlreadyExists, fetchDirectoryContent, fetchDirectoryElementPath, fetchRootFolders, hasElementPermission } from "./services/directory.js";
278
+ import { PermissionType, elementAlreadyExists, fetchDirectoryContent, fetchDirectoryElementPath, fetchElementNames, fetchRootFolders, hasElementPermission } from "./services/directory.js";
277
279
  import { createFilter, createParameter, fetchElementsInfos, saveFilter, updateParameter } from "./services/explore.js";
278
280
  import { PREFIX_STUDY_QUERIES, fetchLoadFlowParameters, getLoadFlowDefaultLimitReductions, getLoadFlowProviders, getLoadFlowSpecificParametersDescription, getLoadFlowUrl, setLoadFlowParameters } from "./services/loadflow.js";
279
281
  import { fetchPccMinParameters, getPccMinStudyParameters, updatePccMinParameters } from "./services/pcc-min.js";
280
282
  import { fetchSecurityAnalysisParameters, fetchSecurityAnalysisProviders, getSecurityAnalysisDefaultLimitReductions, getSecurityAnalysisParameters, getStudyUrl, setSecurityAnalysisParameters, updateSecurityAnalysisParameters } from "./services/security-analysis.js";
283
+ import { fetchSensitivityAnalysisParameters, fetchSensitivityAnalysisProviders, getSensiUrl, getSensitivityAnalysisFactorsCount, getSensitivityAnalysisParameters, getStudyUrlWithNodeUuidAndRootNetworkUuid, setSensitivityAnalysisParameters, updateSensitivityAnalysisParameters } from "./services/sensitivity-analysis.js";
281
284
  import { exportFilter, getAvailableComponentLibraries, getStudyNetworkVisualizationsParameters, getStudyShortCircuitParameters, setStudyNetworkVisualizationParameters, updateVoltageInitParameters } from "./services/study.js";
282
285
  import { getNetworkVisualizationsParameters } from "./services/study-config.js";
283
286
  import { fetchCurrentAnnouncement, fetchUserDetails } from "./services/userAdmin.js";
@@ -976,6 +979,8 @@ export {
976
979
  emptyFormData,
977
980
  emptyModificationByAssignmentFormData,
978
981
  emptyProperties,
982
+ enrichPccMinParameters,
983
+ enrichSensitivityAnalysisParameters,
979
984
  equalsArray,
980
985
  equipmentDeletionDtoToForm,
981
986
  equipmentDeletionEmptyFormData,
@@ -1020,6 +1025,7 @@ export {
1020
1025
  fetchDynamicSimulationModels,
1021
1026
  fetchDynamicSimulationParameters,
1022
1027
  fetchDynamicSimulationProviders,
1028
+ fetchElementNames,
1023
1029
  fetchElementsInfos,
1024
1030
  fetchEnv,
1025
1031
  fetchFavoriteAndDefaultCountries,
@@ -1030,6 +1036,8 @@ export {
1030
1036
  fetchRootFolders,
1031
1037
  fetchSecurityAnalysisParameters,
1032
1038
  fetchSecurityAnalysisProviders,
1039
+ fetchSensitivityAnalysisParameters,
1040
+ fetchSensitivityAnalysisProviders,
1033
1041
  fetchShortCircuitParameters,
1034
1042
  fetchStudyMetadata,
1035
1043
  fetchSubModificationsForExpandedRows,
@@ -1081,6 +1089,7 @@ export {
1081
1089
  getContingencyListsInfosFormSchema,
1082
1090
  getCreateSwitchesEmptyFormData,
1083
1091
  getCreateSwitchesValidationSchema,
1092
+ getDefaultRowData,
1084
1093
  getDynamicMappings,
1085
1094
  getEquipmentTypeShortLabel,
1086
1095
  getEquipmentsInfosForSearchBar,
@@ -1128,6 +1137,9 @@ export {
1128
1137
  getRowEmptyFormData,
1129
1138
  getSecurityAnalysisDefaultLimitReductions,
1130
1139
  getSecurityAnalysisParameters,
1140
+ getSensiUrl,
1141
+ getSensitivityAnalysisFactorsCount,
1142
+ getSensitivityAnalysisParameters,
1131
1143
  getSetPointsEmptyFormData,
1132
1144
  getSetPointsSchema,
1133
1145
  getShortCircuitEmptyFormData,
@@ -1138,6 +1150,7 @@ export {
1138
1150
  getStudyShortCircuitParameters,
1139
1151
  getStudyUrl,
1140
1152
  getStudyUrlWithNodeUuid,
1153
+ getStudyUrlWithNodeUuidAndRootNetworkUuid,
1141
1154
  getSystemLanguage,
1142
1155
  getUserToken,
1143
1156
  getVoltageInitParameters,
@@ -1186,6 +1199,8 @@ export {
1186
1199
  loginFr,
1187
1200
  logout,
1188
1201
  makeComposeClasses,
1202
+ mapPccMinParameters,
1203
+ mapSensitivityAnalysisParameters,
1189
1204
  mergeModificationAndEquipmentProperties,
1190
1205
  mergeSubModificationsIntoTree,
1191
1206
  mergeSx,
@@ -1230,6 +1245,7 @@ export {
1230
1245
  setLogoutError,
1231
1246
  setSecurityAnalysisParameters,
1232
1247
  setSelectedReactiveLimits,
1248
+ setSensitivityAnalysisParameters,
1233
1249
  setShowAuthenticationRouterLogin,
1234
1250
  setSignInCallbackError,
1235
1251
  setStudyNetworkVisualizationParameters,
@@ -1276,6 +1292,7 @@ export {
1276
1292
  updateParameter,
1277
1293
  updatePccMinParameters,
1278
1294
  updateSecurityAnalysisParameters,
1295
+ updateSensitivityAnalysisParameters,
1279
1296
  updateShortCircuitParameters,
1280
1297
  updateSubModificationsOfACompositeInTree,
1281
1298
  updateVoltageInitParameters,
@@ -1,5 +1,5 @@
1
1
  import { UUID } from 'node:crypto';
2
- import { ElementAttributes } from '../utils';
2
+ import { ElementAttributes } from '../utils/types/types';
3
3
  export declare function fetchRootFolders(types: string[]): Promise<ElementAttributes[]>;
4
4
  export declare function fetchDirectoryContent(directoryUuid: UUID, types?: string[]): Promise<ElementAttributes[]>;
5
5
  export declare function fetchDirectoryElementPath(elementUuid: UUID): Promise<ElementAttributes[]>;
@@ -10,3 +10,4 @@ export declare enum PermissionType {
10
10
  MANAGE = "MANAGE"
11
11
  }
12
12
  export declare function hasElementPermission(elementUuid: UUID, permission: PermissionType): Promise<boolean>;
13
+ export declare function fetchElementNames(elementUuids: Set<string>): Promise<any>;
@@ -52,11 +52,22 @@ function hasElementPermission(elementUuid, permission) {
52
52
  return false;
53
53
  });
54
54
  }
55
+ function fetchElementNames(elementUuids) {
56
+ console.info("fetch directory element names");
57
+ const params = new URLSearchParams();
58
+ elementUuids.forEach((id) => {
59
+ params.append("ids", id);
60
+ });
61
+ const url = `${PREFIX_EXPLORE_SERVER_QUERIES}/v1/explore/elements/name?${params.toString()}`;
62
+ console.log(url);
63
+ return backendFetchJson(url);
64
+ }
55
65
  export {
56
66
  PermissionType,
57
67
  elementAlreadyExists,
58
68
  fetchDirectoryContent,
59
69
  fetchDirectoryElementPath,
70
+ fetchElementNames,
60
71
  fetchRootFolders,
61
72
  hasElementPermission
62
73
  };
@@ -11,6 +11,7 @@ export * from './explore';
11
11
  export * from './loadflow';
12
12
  export * from './pcc-min';
13
13
  export * from './security-analysis';
14
+ export * from './sensitivity-analysis';
14
15
  export * from './study';
15
16
  export * from './study-config';
16
17
  export * from './userAdmin';
@@ -1,10 +1,11 @@
1
1
  import { fetchAppsMetadata, fetchBaseVoltages, fetchDefaultCountry, fetchEnv, fetchFavoriteAndDefaultCountries, fetchStudyMetadata, isExploreMetadata, isStudyMetadata } from "./appsMetadata.js";
2
2
  import { fetchConfigParameter, fetchConfigParameters, getAppName, updateConfigParameter } from "./config.js";
3
- import { PermissionType, elementAlreadyExists, fetchDirectoryContent, fetchDirectoryElementPath, fetchRootFolders, hasElementPermission } from "./directory.js";
3
+ import { PermissionType, elementAlreadyExists, fetchDirectoryContent, fetchDirectoryElementPath, fetchElementNames, fetchRootFolders, hasElementPermission } from "./directory.js";
4
4
  import { createFilter, createParameter, fetchElementsInfos, saveFilter, updateParameter } from "./explore.js";
5
5
  import { PREFIX_STUDY_QUERIES, fetchLoadFlowParameters, getLoadFlowDefaultLimitReductions, getLoadFlowProviders, getLoadFlowSpecificParametersDescription, getLoadFlowUrl, setLoadFlowParameters } from "./loadflow.js";
6
6
  import { fetchPccMinParameters, getPccMinStudyParameters, updatePccMinParameters } from "./pcc-min.js";
7
7
  import { fetchSecurityAnalysisParameters, fetchSecurityAnalysisProviders, getSecurityAnalysisDefaultLimitReductions, getSecurityAnalysisParameters, getStudyUrl, setSecurityAnalysisParameters, updateSecurityAnalysisParameters } from "./security-analysis.js";
8
+ import { fetchSensitivityAnalysisParameters, fetchSensitivityAnalysisProviders, getSensiUrl, getSensitivityAnalysisFactorsCount, getSensitivityAnalysisParameters, getStudyUrlWithNodeUuidAndRootNetworkUuid, setSensitivityAnalysisParameters, updateSensitivityAnalysisParameters } from "./sensitivity-analysis.js";
8
9
  import { exportFilter, getAvailableComponentLibraries, getStudyNetworkVisualizationsParameters, getStudyShortCircuitParameters, setStudyNetworkVisualizationParameters, updateVoltageInitParameters } from "./study.js";
9
10
  import { getNetworkVisualizationsParameters } from "./study-config.js";
10
11
  import { fetchCurrentAnnouncement, fetchUserDetails } from "./userAdmin.js";
@@ -47,6 +48,7 @@ export {
47
48
  fetchDynamicSimulationModels,
48
49
  fetchDynamicSimulationParameters,
49
50
  fetchDynamicSimulationProviders,
51
+ fetchElementNames,
50
52
  fetchElementsInfos,
51
53
  fetchEnv,
52
54
  fetchFavoriteAndDefaultCountries,
@@ -56,6 +58,8 @@ export {
56
58
  fetchRootFolders,
57
59
  fetchSecurityAnalysisParameters,
58
60
  fetchSecurityAnalysisProviders,
61
+ fetchSensitivityAnalysisParameters,
62
+ fetchSensitivityAnalysisProviders,
59
63
  fetchShortCircuitParameters,
60
64
  fetchStudyMetadata,
61
65
  fetchUserDetails,
@@ -73,11 +77,15 @@ export {
73
77
  getRequestParamFromList,
74
78
  getSecurityAnalysisDefaultLimitReductions,
75
79
  getSecurityAnalysisParameters,
80
+ getSensiUrl,
81
+ getSensitivityAnalysisFactorsCount,
82
+ getSensitivityAnalysisParameters,
76
83
  getShortCircuitSpecificParametersDescription,
77
84
  getStudyNetworkVisualizationsParameters,
78
85
  getStudyShortCircuitParameters,
79
86
  getStudyUrl,
80
87
  getStudyUrlWithNodeUuid,
88
+ getStudyUrlWithNodeUuidAndRootNetworkUuid,
81
89
  getVoltageInitParameters,
82
90
  getVoltageInitUrl,
83
91
  handleNotOkResponse,
@@ -89,6 +97,7 @@ export {
89
97
  saveFilter,
90
98
  setLoadFlowParameters,
91
99
  setSecurityAnalysisParameters,
100
+ setSensitivityAnalysisParameters,
92
101
  setStudyNetworkVisualizationParameters,
93
102
  updateConfigParameter,
94
103
  updateDynamicMarginCalculationParameters,
@@ -97,6 +106,7 @@ export {
97
106
  updateParameter,
98
107
  updatePccMinParameters,
99
108
  updateSecurityAnalysisParameters,
109
+ updateSensitivityAnalysisParameters,
100
110
  updateShortCircuitParameters,
101
111
  updateVoltageInitParameters
102
112
  };
@@ -1,8 +1,5 @@
1
1
  import { UUID } from 'node:crypto';
2
- import { FilterIdentifier, FILTERS } from '../utils/constants/filterConstant';
3
- export type PccMinParameters = {
4
- [FILTERS]: FilterIdentifier[];
5
- };
6
- export declare function getPccMinStudyParameters(studyUuid: UUID): Promise<PccMinParameters | null>;
7
- export declare function fetchPccMinParameters(parameterUuid: UUID): Promise<PccMinParameters>;
8
- export declare function updatePccMinParameters(studyUuid: UUID | null, newParams: PccMinParameters | null): Promise<Response>;
2
+ import { PccMinParametersEnriched } from '../utils';
3
+ export declare function getPccMinStudyParameters(studyUuid: UUID): Promise<PccMinParametersEnriched | null>;
4
+ export declare function fetchPccMinParameters(parameterUuid: UUID): Promise<PccMinParametersEnriched>;
5
+ export declare function updatePccMinParameters(studyUuid: UUID | null, newParams: PccMinParametersEnriched | null): Promise<Response>;
@@ -1,20 +1,23 @@
1
1
  import { backendFetchJson, backendFetch } from "./utils.js";
2
2
  import { getStudyUrl } from "./security-analysis.js";
3
+ import { enrichPccMinParameters, mapPccMinParameters } from "../utils/types/pcc-min.type.js";
3
4
  const PREFIX_PCC_MIN_SERVER_QUERIES = `${"api/gateway"}/pcc-min`;
4
5
  function getPccMinUrl() {
5
6
  return `${PREFIX_PCC_MIN_SERVER_QUERIES}/v1/`;
6
7
  }
7
8
  function getPccMinStudyParameters(studyUuid) {
8
9
  console.info("get pcc min study parameters");
9
- const getPccMintParams = `${getStudyUrl(studyUuid)}/pcc-min/parameters`;
10
- console.debug(getPccMintParams);
11
- return backendFetchJson(getPccMintParams);
10
+ const url = `${getStudyUrl(studyUuid)}/pcc-min/parameters`;
11
+ console.debug(url);
12
+ const parametersPromise = backendFetchJson(url);
13
+ return parametersPromise.then((parameters) => enrichPccMinParameters(parameters));
12
14
  }
13
15
  function fetchPccMinParameters(parameterUuid) {
14
16
  console.info("fetch pcc min parameters");
15
17
  const url = `${getPccMinUrl()}parameters/${encodeURIComponent(parameterUuid)}`;
16
18
  console.debug(url);
17
- return backendFetchJson(url);
19
+ const parametersPromise = backendFetchJson(url);
20
+ return parametersPromise.then((parameters) => enrichPccMinParameters(parameters));
18
21
  }
19
22
  function updatePccMinParameters(studyUuid, newParams) {
20
23
  console.info("set study pcc min parameters");
@@ -26,7 +29,7 @@ function updatePccMinParameters(studyUuid, newParams) {
26
29
  Accept: "application/json",
27
30
  "Content-Type": "application/json"
28
31
  },
29
- body: newParams == null ? null : JSON.stringify(newParams)
32
+ body: newParams == null ? null : JSON.stringify(mapPccMinParameters(newParams))
30
33
  });
31
34
  }
32
35
  export {
@@ -1,8 +1,9 @@
1
1
  import { UUID } from 'node:crypto';
2
+ import { SAParametersEnriched } from '../components/parameters/security-analysis/types';
2
3
  export declare const getStudyUrl: (studyUuid: UUID | null) => string;
3
4
  export declare function fetchSecurityAnalysisProviders(): Promise<any>;
4
- export declare function fetchSecurityAnalysisParameters(parameterUuid: string): Promise<any>;
5
+ export declare function fetchSecurityAnalysisParameters(parameterUuid: string): Promise<SAParametersEnriched>;
5
6
  export declare function getSecurityAnalysisDefaultLimitReductions(): Promise<any>;
6
- export declare function getSecurityAnalysisParameters(studyUuid: UUID): Promise<any>;
7
- export declare function setSecurityAnalysisParameters(studyUuid: UUID, newParams: any): Promise<Response>;
8
- export declare function updateSecurityAnalysisParameters(parameterUuid: UUID, newParams: any): Promise<Response>;
7
+ export declare function getSecurityAnalysisParameters(studyUuid: UUID): Promise<SAParametersEnriched>;
8
+ export declare function setSecurityAnalysisParameters(studyUuid: UUID, newParams: SAParametersEnriched | null): Promise<Response>;
9
+ export declare function updateSecurityAnalysisParameters(parameterUuid: UUID, newParams: SAParametersEnriched | null): Promise<Response>;
@@ -1,5 +1,6 @@
1
1
  import { safeEncodeURIComponent, backendFetchJson, backendFetch } from "./utils.js";
2
2
  import { PREFIX_STUDY_QUERIES } from "./loadflow.js";
3
+ import { enrichSecurityAnalysisParameters, mapSecurityAnalysisParameters } from "../components/parameters/security-analysis/types.js";
3
4
  const PREFIX_SECURITY_ANALYSIS_SERVER_QUERIES = `${"api/gateway"}/security-analysis`;
4
5
  const getStudyUrl = (studyUuid) => `${PREFIX_STUDY_QUERIES}/v1/studies/${safeEncodeURIComponent(studyUuid)}`;
5
6
  function getSecurityAnalysisUrl() {
@@ -15,7 +16,8 @@ function fetchSecurityAnalysisParameters(parameterUuid) {
15
16
  console.info("fetch security analysis parameters");
16
17
  const url = `${getSecurityAnalysisUrl()}parameters/${encodeURIComponent(parameterUuid)}`;
17
18
  console.debug(url);
18
- return backendFetchJson(url);
19
+ const parametersPromise = backendFetchJson(url);
20
+ return parametersPromise.then((parameters) => enrichSecurityAnalysisParameters(parameters));
19
21
  }
20
22
  function getSecurityAnalysisDefaultLimitReductions() {
21
23
  console.info("get security analysis default limit reductions");
@@ -27,7 +29,8 @@ function getSecurityAnalysisParameters(studyUuid) {
27
29
  console.info("get security analysis parameters");
28
30
  const url = `${getStudyUrl(studyUuid)}/security-analysis/parameters`;
29
31
  console.debug(url);
30
- return backendFetchJson(url);
32
+ const parametersPromise = backendFetchJson(url);
33
+ return parametersPromise.then((parameters) => enrichSecurityAnalysisParameters(parameters));
31
34
  }
32
35
  function setSecurityAnalysisParameters(studyUuid, newParams) {
33
36
  console.info("set security analysis parameters");
@@ -39,7 +42,7 @@ function setSecurityAnalysisParameters(studyUuid, newParams) {
39
42
  Accept: "application/json",
40
43
  "Content-Type": "application/json"
41
44
  },
42
- body: newParams ? JSON.stringify(newParams) : null
45
+ body: newParams ? JSON.stringify(mapSecurityAnalysisParameters(newParams)) : null
43
46
  });
44
47
  }
45
48
  function updateSecurityAnalysisParameters(parameterUuid, newParams) {
@@ -52,7 +55,7 @@ function updateSecurityAnalysisParameters(parameterUuid, newParams) {
52
55
  Accept: "application/json",
53
56
  "Content-Type": "application/json"
54
57
  },
55
- body: newParams ? JSON.stringify(newParams) : null
58
+ body: newParams ? JSON.stringify(mapSecurityAnalysisParameters(newParams)) : null
56
59
  });
57
60
  }
58
61
  export {
@@ -1,11 +1,10 @@
1
1
  import { UUID } from 'node:crypto';
2
- import { FactorsCount, SensitivityAnalysisParametersInfos } from '../utils';
3
- export declare const getStudyUrl: (studyUuid: UUID | null) => string;
2
+ import { FactorsCount, SensitivityAnalysisParametersInfosEnriched } from '../utils';
4
3
  export declare const getStudyUrlWithNodeUuidAndRootNetworkUuid: (studyUuid: string | null | undefined, nodeUuid: string | undefined, rootNetworkUuid: string | undefined | null) => string;
5
4
  export declare function getSensiUrl(): string;
6
5
  export declare function fetchSensitivityAnalysisProviders(): Promise<string[]>;
7
- export declare function getSensitivityAnalysisParameters(studyUuid: UUID): Promise<any>;
8
- export declare function fetchSensitivityAnalysisParameters(parameterUuid: string): Promise<any>;
9
- export declare function setSensitivityAnalysisParameters(studyUuid: UUID | null, newParams: SensitivityAnalysisParametersInfos | null): Promise<Response>;
10
- export declare function getSensitivityAnalysisFactorsCount(studyUuid: UUID | null, currentNodeUuid: UUID, currentRootNetworkUuid: UUID, newParams: SensitivityAnalysisParametersInfos, abortSignal: AbortSignal): Promise<FactorsCount>;
6
+ export declare function getSensitivityAnalysisParameters(studyUuid: UUID): Promise<SensitivityAnalysisParametersInfosEnriched>;
7
+ export declare function fetchSensitivityAnalysisParameters(parameterUuid: string): Promise<SensitivityAnalysisParametersInfosEnriched>;
8
+ export declare function setSensitivityAnalysisParameters(studyUuid: UUID | null, newParams: SensitivityAnalysisParametersInfosEnriched | null): Promise<Response>;
9
+ export declare function getSensitivityAnalysisFactorsCount(studyUuid: UUID | null, currentNodeUuid: UUID, currentRootNetworkUuid: UUID, newParams: SensitivityAnalysisParametersInfosEnriched, abortSignal: AbortSignal): Promise<FactorsCount>;
11
10
  export declare function updateSensitivityAnalysisParameters(parameterUuid: UUID, newParams: any): Promise<Response>;
@@ -1,4 +1,10 @@
1
1
  import { safeEncodeURIComponent, backendFetchJson, backendFetch } from "./utils.js";
2
+ import "../utils/conversionUtils.js";
3
+ import "../utils/types/equipmentType.js";
4
+ import { enrichSensitivityAnalysisParameters, mapSensitivityAnalysisParameters } from "../utils/types/sensitivity-analysis.type.js";
5
+ import "react/jsx-runtime";
6
+ import "@mui/icons-material";
7
+ import "../utils/yupConfig.js";
2
8
  import { PREFIX_STUDY_QUERIES } from "./loadflow.js";
3
9
  const GET_PARAMETERS_PREFIX = `${"api/gateway"}/sensitivity-analysis/v1/parameters`;
4
10
  const PREFIX_SENSITIVITY_ANALYSIS_SERVER_QUERIES = `${"api/gateway"}/sensitivity-analysis`;
@@ -19,13 +25,15 @@ function getSensitivityAnalysisParameters(studyUuid) {
19
25
  console.info("get sensitivity analysis parameters");
20
26
  const url = `${getStudyUrl(studyUuid)}/sensitivity-analysis/parameters`;
21
27
  console.debug(url);
22
- return backendFetchJson(url);
28
+ const parametersPromise = backendFetchJson(url);
29
+ return parametersPromise.then((parameters) => enrichSensitivityAnalysisParameters(parameters));
23
30
  }
24
31
  function fetchSensitivityAnalysisParameters(parameterUuid) {
25
32
  console.info("get sensitivity analysis parameters");
26
33
  const url = `${GET_PARAMETERS_PREFIX}/${parameterUuid}`;
27
34
  console.debug(url);
28
- return backendFetchJson(url);
35
+ const parametersPromise = backendFetchJson(url);
36
+ return parametersPromise.then((parameters) => enrichSensitivityAnalysisParameters(parameters));
29
37
  }
30
38
  function setSensitivityAnalysisParameters(studyUuid, newParams) {
31
39
  console.info("set sensitivity analysis parameters");
@@ -37,7 +45,7 @@ function setSensitivityAnalysisParameters(studyUuid, newParams) {
37
45
  Accept: "application/json",
38
46
  "Content-Type": "application/json"
39
47
  },
40
- body: newParams ? JSON.stringify(newParams) : null
48
+ body: newParams ? JSON.stringify(mapSensitivityAnalysisParameters(newParams)) : null
41
49
  });
42
50
  }
43
51
  function getSensitivityAnalysisFactorsCount(studyUuid, currentNodeUuid, currentRootNetworkUuid, newParams, abortSignal) {
@@ -49,7 +57,7 @@ function getSensitivityAnalysisFactorsCount(studyUuid, currentNodeUuid, currentR
49
57
  headers: {
50
58
  "Content-Type": "application/json"
51
59
  },
52
- body: JSON.stringify(newParams),
60
+ body: JSON.stringify(mapSensitivityAnalysisParameters(newParams)),
53
61
  signal: abortSignal
54
62
  });
55
63
  }
@@ -63,7 +71,7 @@ function updateSensitivityAnalysisParameters(parameterUuid, newParams) {
63
71
  Accept: "application/json",
64
72
  "Content-Type": "application/json"
65
73
  },
66
- body: newParams ? JSON.stringify(newParams) : null
74
+ body: newParams ? JSON.stringify(mapSensitivityAnalysisParameters(newParams)) : null
67
75
  });
68
76
  }
69
77
  export {
@@ -72,7 +80,6 @@ export {
72
80
  getSensiUrl,
73
81
  getSensitivityAnalysisFactorsCount,
74
82
  getSensitivityAnalysisParameters,
75
- getStudyUrl,
76
83
  getStudyUrlWithNodeUuidAndRootNetworkUuid,
77
84
  setSensitivityAnalysisParameters,
78
85
  updateSensitivityAnalysisParameters
@@ -28,9 +28,10 @@ import { MODIFICATION_TYPES, ModificationType } from "./types/modificationType.j
28
28
  import { FieldType } from "./types/fieldType.js";
29
29
  import { ParameterType } from "./types/parameters.type.js";
30
30
  import { SolverType } from "./types/dynamic-simulation.type.js";
31
- import { DistributionType, SensitivityType } from "./types/sensitivity-analysis.type.js";
31
+ import { DistributionType, SensitivityType, enrichSensitivityAnalysisParameters, mapSensitivityAnalysisParameters } from "./types/sensitivity-analysis.type.js";
32
32
  import { CalculationType, LoadModelsRule } from "./types/dynamic-margin-calculation.type.js";
33
33
  import { OperationType } from "./types/network-modification-types.js";
34
+ import { enrichPccMinParameters, mapPccMinParameters } from "./types/pcc-min.type.js";
34
35
  import { areIdsEqual, getIdOrSelf, getIdOrValue, getLabelOrValue, getObjectId, notNull, notUndefined, parseIntData, removeNullFields, richTypeEquals, sanitizeString } from "./ts-utils.js";
35
36
  import { toNumber, validateValueIsANumber } from "./validation-functions.js";
36
37
  import { NO_ITEM_SELECTION_FOR_COPY } from "./directory-utils.js";
@@ -144,6 +145,8 @@ export {
144
145
  convertInputValue,
145
146
  convertOutputValue,
146
147
  copyToClipboard,
148
+ enrichPccMinParameters,
149
+ enrichSensitivityAnalysisParameters,
147
150
  equalsArray,
148
151
  equipmentStyles,
149
152
  equipmentTypesForPredefinedPropertiesMapper,
@@ -163,6 +166,8 @@ export {
163
166
  keyGenerator,
164
167
  kiloUnitToUnit,
165
168
  makeComposeClasses,
169
+ mapPccMinParameters,
170
+ mapSensitivityAnalysisParameters,
166
171
  mergeSx,
167
172
  microUnitToUnit,
168
173
  notNull,
@@ -21,4 +21,5 @@ export * from './loadflow.type';
21
21
  export * from './sensitivity-analysis.type';
22
22
  export * from './dynamic-margin-calculation.type';
23
23
  export * from './network-modification-types';
24
+ export * from './pcc-min.type';
24
25
  export * from './network-modification-metadata';
@@ -9,9 +9,10 @@ import { MODIFICATION_TYPES, ModificationType } from "./modificationType.js";
9
9
  import { FieldType } from "./fieldType.js";
10
10
  import { ParameterType } from "./parameters.type.js";
11
11
  import { SolverType } from "./dynamic-simulation.type.js";
12
- import { DistributionType, SensitivityType } from "./sensitivity-analysis.type.js";
12
+ import { DistributionType, SensitivityType, enrichSensitivityAnalysisParameters, mapSensitivityAnalysisParameters } from "./sensitivity-analysis.type.js";
13
13
  import { CalculationType, LoadModelsRule } from "./dynamic-margin-calculation.type.js";
14
14
  import { OperationType } from "./network-modification-types.js";
15
+ import { enrichPccMinParameters, mapPccMinParameters } from "./pcc-min.type.js";
15
16
  export {
16
17
  ALL_EQUIPMENTS,
17
18
  AnnouncementSeverity,
@@ -62,8 +63,12 @@ export {
62
63
  VL_TAG_MAX_SIZE,
63
64
  VSC,
64
65
  VoltageLevel,
66
+ enrichPccMinParameters,
67
+ enrichSensitivityAnalysisParameters,
65
68
  equipmentStyles,
66
69
  getConnectionDirectionLabel,
67
70
  getEquipmentsInfosForSearchBar,
68
- getLoadTypeLabel
71
+ getLoadTypeLabel,
72
+ mapPccMinParameters,
73
+ mapSensitivityAnalysisParameters
69
74
  };
@@ -4,9 +4,9 @@ import { LoadFlowParametersInfos } from './loadflow.type';
4
4
  import { DynamicSecurityAnalysisParametersFetchReturn } from './dynamic-security-analysis.type';
5
5
  import { ILimitReductionsByVoltageLevel } from '../../components/parameters/common/limitreductions/columns-definitions';
6
6
  import { DynamicSimulationParametersInfos } from './dynamic-simulation.type';
7
- import { SensitivityAnalysisParametersInfos } from './sensitivity-analysis.type';
7
+ import { SensitivityAnalysisParametersInfosEnriched } from './sensitivity-analysis.type';
8
8
  import { ShortCircuitParametersInfos } from '../../components/parameters/short-circuit/short-circuit-parameters.type';
9
- import { SAParameters } from '../../components/parameters/security-analysis/types';
9
+ import { SAParametersEnriched } from '../../components/parameters/security-analysis/types';
10
10
  import { DynamicMarginCalculationParametersInfos } from './dynamic-margin-calculation.type';
11
11
  export declare enum ParameterType {
12
12
  BOOLEAN = "BOOLEAN",
@@ -29,7 +29,7 @@ export type SpecificParameterInfos = {
29
29
  export type SpecificParametersDescription = Record<string, SpecificParameterInfos[]>;
30
30
  export type SpecificParametersValues = Record<string, any>;
31
31
  export type SpecificParametersPerProvider = Record<string, SpecificParametersValues>;
32
- export type ParametersInfos<T extends ComputingType> = T extends ComputingType.SENSITIVITY_ANALYSIS ? SensitivityAnalysisParametersInfos : T extends ComputingType.SECURITY_ANALYSIS ? SAParameters : T extends ComputingType.LOAD_FLOW ? LoadFlowParametersInfos : T extends ComputingType.DYNAMIC_SIMULATION ? DynamicSimulationParametersInfos : T extends ComputingType.DYNAMIC_SECURITY_ANALYSIS ? DynamicSecurityAnalysisParametersFetchReturn : T extends ComputingType.DYNAMIC_MARGIN_CALCULATION ? DynamicMarginCalculationParametersInfos : T extends ComputingType.SHORT_CIRCUIT ? ShortCircuitParametersInfos : Record<string, any>;
32
+ export type ParametersInfos<T extends ComputingType> = T extends ComputingType.SENSITIVITY_ANALYSIS ? SensitivityAnalysisParametersInfosEnriched : T extends ComputingType.SECURITY_ANALYSIS ? SAParametersEnriched : T extends ComputingType.LOAD_FLOW ? LoadFlowParametersInfos : T extends ComputingType.DYNAMIC_SIMULATION ? DynamicSimulationParametersInfos : T extends ComputingType.DYNAMIC_SECURITY_ANALYSIS ? DynamicSecurityAnalysisParametersFetchReturn : T extends ComputingType.DYNAMIC_MARGIN_CALCULATION ? DynamicMarginCalculationParametersInfos : T extends ComputingType.SHORT_CIRCUIT ? ShortCircuitParametersInfos : Record<string, any>;
33
33
  export type BackendFunctions<T extends ComputingType> = {
34
34
  backendFetchProviders?: (() => Promise<string[]>) | null;
35
35
  backendFetchParameters: (paramsUuidOrStudyUuid: UUID) => Promise<ParametersInfos<T>>;
@@ -0,0 +1,10 @@
1
+ import { UUID } from 'node:crypto';
2
+ import { FilterIdentifier, FILTERS } from '../constants';
3
+ export type PccMinParametersEnriched = {
4
+ [FILTERS]: FilterIdentifier[];
5
+ };
6
+ export type PccMinParameters = {
7
+ [FILTERS]: UUID[];
8
+ };
9
+ export declare function mapPccMinParameters(parametersInfos: PccMinParametersEnriched): PccMinParameters;
10
+ export declare function enrichPccMinParameters(parameters: PccMinParameters): Promise<PccMinParametersEnriched>;
@@ -0,0 +1,31 @@
1
+ import { fetchElementNames } from "../../services/directory.js";
2
+ import { FILTERS } from "../constants/filterConstant.js";
3
+ function mapPccMinParameters(parametersInfos) {
4
+ return {
5
+ ...parametersInfos,
6
+ [FILTERS]: parametersInfos.filters?.map((filter) => filter.filterId)
7
+ };
8
+ }
9
+ function getFilterIdentifierIds(params) {
10
+ return new Set(params[FILTERS]);
11
+ }
12
+ function enrichPccMinParameters(parameters) {
13
+ const allElementIds = getFilterIdentifierIds(parameters);
14
+ const elementNamesPromise = allElementIds.size === 0 ? Promise.resolve(null) : fetchElementNames(allElementIds);
15
+ return elementNamesPromise.then((elementNames) => {
16
+ const mapIdsToFilterIdentifiers = (ids) => {
17
+ return ids ? ids.map((id) => ({
18
+ filterId: id,
19
+ filterName: elementNames?.[id] ?? null
20
+ })) : [];
21
+ };
22
+ return {
23
+ ...parameters,
24
+ [FILTERS]: mapIdsToFilterIdentifiers(parameters[FILTERS])
25
+ };
26
+ });
27
+ }
28
+ export {
29
+ enrichPccMinParameters,
30
+ mapPccMinParameters
31
+ };