@gridsuite/commons-ui 0.154.0 → 0.155.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.
package/README.md CHANGED
@@ -46,7 +46,6 @@ Only in this case, you need to follow the steps below:
46
46
  - [Make a release action](https://github.com/gridsuite/commons-ui/actions/workflows/release.yml)
47
47
  - In the 'run workflow' combobox select, let the branch on main
48
48
  - Enter the type of evolution (major | minor | patch)
49
- - Enter your NPM access token (when you create it, check the **Bypass two-factor authentication** checkbox to bypass 2FA, set **Packages and scopes** → **Permissions** to **Read and write** and let **Organizations** → **Permissions** to **No access**, see the [access token documentation](https://docs.npmjs.com/creating-and-viewing-access-tokens) for details)
50
49
  - Click 'run workflow'
51
50
 
52
51
  Otherwise ask someone who has the permission.
@@ -169,6 +169,7 @@ import { EquipmentsSelectionType } from "./parameters/voltage-init/voltage-init.
169
169
  import { VoltageInitParametersEditionDialog } from "./parameters/voltage-init/voltage-init-parameters-dialog.js";
170
170
  import { VoltageInitParametersInLine } from "./parameters/voltage-init/voltage-init-parameters-inline.js";
171
171
  import { PccMinParametersInLine } from "./parameters/pcc-min/pcc-min-parameters-inline.js";
172
+ import { PccMinParametersEditionDialog } from "./parameters/pcc-min/pcc-min-parameters-dialog.js";
172
173
  import { SecurityAnalysisParametersInline } from "./parameters/security-analysis/security-analysis-parameters-inline.js";
173
174
  import { SecurityAnalysisParametersDialog } from "./parameters/security-analysis/security-analysis-parameters-dialog.js";
174
175
  import { SensitivityAnalysisParametersInline } from "./parameters/sensi/sensitivity-analysis-parameters-inline.js";
@@ -394,6 +395,7 @@ export {
394
395
  ParameterLineDirectoryItemsInput,
395
396
  ParameterLineSlider,
396
397
  ParameterSwitch,
398
+ PccMinParametersEditionDialog,
397
399
  PccMinParametersInLine,
398
400
  PhotoLibraryIcon,
399
401
  PopupConfirmationDialog,
@@ -169,6 +169,7 @@ function CsvUploader({
169
169
  variant: "outlined",
170
170
  onClick: () => handleOpenCSVConfirmationDataDialog(),
171
171
  disabled: createError !== "",
172
+ "data-testid": "ValidateButton",
172
173
  children: /* @__PURE__ */ jsx(FormattedMessage, { id: "validate" })
173
174
  }
174
175
  )
@@ -32,6 +32,7 @@ import { EquipmentsSelectionType } from "./voltage-init/voltage-init.type.js";
32
32
  import { VoltageInitParametersEditionDialog } from "./voltage-init/voltage-init-parameters-dialog.js";
33
33
  import { VoltageInitParametersInLine } from "./voltage-init/voltage-init-parameters-inline.js";
34
34
  import { PccMinParametersInLine } from "./pcc-min/pcc-min-parameters-inline.js";
35
+ import { PccMinParametersEditionDialog } from "./pcc-min/pcc-min-parameters-dialog.js";
35
36
  import { SecurityAnalysisParametersInline } from "./security-analysis/security-analysis-parameters-inline.js";
36
37
  import { SecurityAnalysisParametersDialog } from "./security-analysis/security-analysis-parameters-dialog.js";
37
38
  import { SensitivityAnalysisParametersInline } from "./sensi/sensitivity-analysis-parameters-inline.js";
@@ -136,6 +137,7 @@ export {
136
137
  ParameterLineDirectoryItemsInput,
137
138
  ParameterLineSlider,
138
139
  ParameterSwitch,
140
+ PccMinParametersEditionDialog,
139
141
  PccMinParametersInLine,
140
142
  PredefinedParameters,
141
143
  ProviderParam,
@@ -5,3 +5,4 @@
5
5
  * file, You can obtain one at https://mozilla.org/MPL/2.0/.
6
6
  */
7
7
  export * from './pcc-min-parameters-inline';
8
+ export * from './pcc-min-parameters-dialog';
@@ -1,4 +1,6 @@
1
1
  import { PccMinParametersInLine } from "./pcc-min-parameters-inline.js";
2
+ import { PccMinParametersEditionDialog } from "./pcc-min-parameters-dialog.js";
2
3
  export {
4
+ PccMinParametersEditionDialog,
3
5
  PccMinParametersInLine
4
6
  };
@@ -0,0 +1,2 @@
1
+ import { ParametersEditionDialogProps } from '../common';
2
+ export declare function PccMinParametersEditionDialog({ id, open, onClose, titleId, name, description, activeDirectory, language, }: Readonly<ParametersEditionDialogProps>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,97 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { CustomMuiDialog } from "../../dialogs/customMuiDialog/CustomMuiDialog.js";
3
+ import "../../dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
4
+ import "../../dialogs/elementSaveDialog/ElementSaveDialog.js";
5
+ import "../../../utils/conversionUtils.js";
6
+ import { ElementType } from "../../../utils/types/elementType.js";
7
+ import "../../../utils/types/equipmentType.js";
8
+ import "@mui/icons-material";
9
+ import "../../../utils/yupConfig.js";
10
+ import "react";
11
+ import "@mui/material";
12
+ import "react-intl";
13
+ import "react-hook-form";
14
+ import "../../treeViewFinder/TreeViewFinder.js";
15
+ import "notistack";
16
+ import { NameElementEditorForm } from "../common/name-element-editor/name-element-editor-form.js";
17
+ import "../../overflowableText/OverflowableText.js";
18
+ import "localized-countries";
19
+ import "localized-countries/data/fr";
20
+ import "localized-countries/data/en";
21
+ import "../../inputs/reactHookForm/provider/CustomFormProvider.js";
22
+ import "yup";
23
+ import "../../inputs/reactHookForm/agGridTable/BottomRightButtons.js";
24
+ import "../../customAGGrid/customAggrid.js";
25
+ import "ag-grid-community";
26
+ import "react-papaparse";
27
+ import "react-csv-downloader";
28
+ import "../../inputs/reactHookForm/numbers/RangeInput.js";
29
+ import "@react-querybuilder/material";
30
+ import "../../filter/expert/expertFilterConstants.js";
31
+ import "../../inputs/reactQueryBuilder/CustomReactQueryBuilder.js";
32
+ import "uuid";
33
+ import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
34
+ import "react-querybuilder";
35
+ import { UsePccMinParametersForm } from "./use-pcc-min-parameters-form.js";
36
+ import { PccMinParametersForm } from "./pcc-min-parameters-form.js";
37
+ function PccMinParametersEditionDialog({
38
+ id,
39
+ open,
40
+ onClose,
41
+ titleId,
42
+ name,
43
+ description,
44
+ activeDirectory,
45
+ language
46
+ }) {
47
+ const pccMinMethods = UsePccMinParametersForm({
48
+ parametersUuid: id,
49
+ name,
50
+ description,
51
+ studyUuid: null,
52
+ parameters: null
53
+ });
54
+ const {
55
+ formState: { errors, dirtyFields }
56
+ } = pccMinMethods.formMethods;
57
+ const disableSave = Object.keys(errors).length > 0 || Object.keys(dirtyFields).length === 0;
58
+ return /* @__PURE__ */ jsx(
59
+ CustomMuiDialog,
60
+ {
61
+ open,
62
+ onClose,
63
+ onSave: pccMinMethods.onSaveDialog,
64
+ formSchema: pccMinMethods.formSchema,
65
+ formMethods: pccMinMethods.formMethods,
66
+ titleId,
67
+ removeOptional: true,
68
+ language,
69
+ disabledSave: disableSave,
70
+ PaperProps: {
71
+ sx: {
72
+ height: "90vh"
73
+ // we want the dialog height to be fixed even when switching tabs
74
+ }
75
+ },
76
+ children: /* @__PURE__ */ jsx(
77
+ PccMinParametersForm,
78
+ {
79
+ pccMinMethods,
80
+ renderTitleFields: () => {
81
+ return /* @__PURE__ */ jsx(
82
+ NameElementEditorForm,
83
+ {
84
+ initialElementName: name,
85
+ activeDirectory,
86
+ elementType: ElementType.PCC_MIN_PARAMETERS
87
+ }
88
+ );
89
+ }
90
+ }
91
+ )
92
+ }
93
+ );
94
+ }
95
+ export {
96
+ PccMinParametersEditionDialog
97
+ };
@@ -1,12 +1,14 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { useState, useCallback, useEffect } from "react";
3
3
  import { Box, Grid } from "@mui/material";
4
- import { FormattedMessage } from "react-intl";
4
+ import { useIntl, FormattedMessage } from "react-intl";
5
5
  import "../../../utils/conversionUtils.js";
6
- import "../../../utils/types/equipmentType.js";
6
+ import { snackWithFallback } from "../../../utils/error.js";
7
7
  import "@mui/icons-material";
8
+ import { ElementType } from "../../../utils/types/elementType.js";
9
+ import "../../../utils/types/equipmentType.js";
8
10
  import "../../../utils/yupConfig.js";
9
- import { updatePccMinParameters } from "../../../services/pcc-min.js";
11
+ import { updatePccMinParameters, fetchPccMinParameters } from "../../../services/pcc-min.js";
10
12
  import "localized-countries";
11
13
  import "localized-countries/data/fr";
12
14
  import "localized-countries/data/en";
@@ -16,7 +18,7 @@ import "../../overflowableText/OverflowableText.js";
16
18
  import "../../inputs/reactHookForm/provider/CustomFormProvider.js";
17
19
  import { SubmitButton } from "../../inputs/reactHookForm/utils/SubmitButton.js";
18
20
  import "yup";
19
- import "../../treeViewFinder/TreeViewFinder.js";
21
+ import { DirectoryItemSelector } from "../../directoryItemSelector/DirectoryItemSelector.js";
20
22
  import "../../inputs/reactHookForm/agGridTable/BottomRightButtons.js";
21
23
  import "../../customAGGrid/customAggrid.js";
22
24
  import "ag-grid-community";
@@ -31,12 +33,14 @@ import "uuid";
31
33
  import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
32
34
  import "react-querybuilder";
33
35
  import { LabelledButton } from "../common/parameters.js";
34
- import "../../dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
35
- import "../../dialogs/elementSaveDialog/ElementSaveDialog.js";
36
+ import { CreateParameterDialog } from "../common/parameters-creation-dialog.js";
36
37
  import "../common/widget/parameter-line-slider.js";
37
38
  import "../common/limitreductions/columns-definitions.js";
39
+ import "../../dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
40
+ import "../../dialogs/elementSaveDialog/ElementSaveDialog.js";
38
41
  import { UsePccMinParametersForm } from "./use-pcc-min-parameters-form.js";
39
42
  import { PccMinParametersForm } from "./pcc-min-parameters-form.js";
43
+ import { fromPccMinParamsDataToFormValues, fromPccMinParametersFormToParamValues } from "./pcc-min-form-utils.js";
40
44
  function PccMinParametersInLine({
41
45
  studyUuid,
42
46
  setHaveDirtyFields,
@@ -44,12 +48,17 @@ function PccMinParametersInLine({
44
48
  }) {
45
49
  const pccMinMethods = UsePccMinParametersForm({
46
50
  parametersUuid: null,
51
+ name: null,
52
+ description: null,
47
53
  studyUuid,
48
54
  parameters: pccMinParameters
49
55
  });
50
56
  const [openResetConfirmation, setOpenResetConfirmation] = useState(false);
51
57
  const { snackError } = useSnackMessage();
52
- const { formState, handleSubmit } = pccMinMethods.formMethods;
58
+ const intl = useIntl();
59
+ const [openSelectParameterDialog, setOpenSelectParameterDialog] = useState(false);
60
+ const { formState, handleSubmit, reset, getValues } = pccMinMethods.formMethods;
61
+ const [openCreateParameterDialog, setOpenCreateParameterDialog] = useState(false);
53
62
  const resetPccMinParameters = useCallback(() => {
54
63
  updatePccMinParameters(studyUuid, null).catch((error) => {
55
64
  snackError({
@@ -68,6 +77,23 @@ function PccMinParametersInLine({
68
77
  useEffect(() => {
69
78
  setHaveDirtyFields(!!Object.keys(formState.dirtyFields).length);
70
79
  }, [formState, setHaveDirtyFields]);
80
+ const handleLoadParameters = useCallback(
81
+ (newParams) => {
82
+ if (newParams?.length) {
83
+ setOpenSelectParameterDialog(false);
84
+ const parametersUuid = newParams[0].id;
85
+ fetchPccMinParameters(parametersUuid).then((params) => {
86
+ reset(fromPccMinParamsDataToFormValues(params), {
87
+ keepDefaultValues: true
88
+ });
89
+ }).catch((error) => {
90
+ snackWithFallback(snackError, error, { headerId: "paramsRetrievingError" });
91
+ });
92
+ }
93
+ setOpenSelectParameterDialog(false);
94
+ },
95
+ [reset, snackError]
96
+ );
71
97
  return /* @__PURE__ */ jsx(
72
98
  PccMinParametersForm,
73
99
  {
@@ -75,9 +101,43 @@ function PccMinParametersInLine({
75
101
  renderActions: () => {
76
102
  return /* @__PURE__ */ jsxs(Box, { children: [
77
103
  /* @__PURE__ */ jsxs(Grid, { container: true, item: true, children: [
104
+ /* @__PURE__ */ jsx(
105
+ LabelledButton,
106
+ {
107
+ callback: () => setOpenSelectParameterDialog(true),
108
+ label: "settings.button.chooseSettings"
109
+ }
110
+ ),
111
+ /* @__PURE__ */ jsx(LabelledButton, { callback: () => setOpenCreateParameterDialog(true), label: "save" }),
78
112
  /* @__PURE__ */ jsx(LabelledButton, { callback: handleResetClick, label: "resetToDefault" }),
79
113
  /* @__PURE__ */ jsx(SubmitButton, { onClick: handleSubmit(pccMinMethods.onSaveInline), variant: "outlined", children: /* @__PURE__ */ jsx(FormattedMessage, { id: "validate" }) })
80
114
  ] }),
115
+ openCreateParameterDialog && /* @__PURE__ */ jsx(
116
+ CreateParameterDialog,
117
+ {
118
+ studyUuid,
119
+ open: openCreateParameterDialog,
120
+ onClose: () => setOpenCreateParameterDialog(false),
121
+ parameterValues: getValues,
122
+ parameterFormatter: (params) => fromPccMinParametersFormToParamValues(params),
123
+ parameterType: ElementType.PCC_MIN_PARAMETERS
124
+ }
125
+ ),
126
+ openSelectParameterDialog && /* @__PURE__ */ jsx(
127
+ DirectoryItemSelector,
128
+ {
129
+ open: openSelectParameterDialog,
130
+ onClose: handleLoadParameters,
131
+ types: [ElementType.PCC_MIN_PARAMETERS],
132
+ title: intl.formatMessage({
133
+ id: "showSelectParameterDialog"
134
+ }),
135
+ multiSelect: false,
136
+ validationButtonText: intl.formatMessage({
137
+ id: "validate"
138
+ })
139
+ }
140
+ ),
81
141
  openResetConfirmation && /* @__PURE__ */ jsx(
82
142
  PopupConfirmationDialog,
83
143
  {
@@ -7,13 +7,20 @@ export interface UsePccMinParametersFormReturn {
7
7
  formSchema: ObjectSchema<any>;
8
8
  paramsLoading: boolean;
9
9
  onSaveInline: (formData: Record<string, any>) => void;
10
+ onSaveDialog: (formData: Record<string, any>) => void;
10
11
  }
11
12
  type UsePccMinParametersFormProps = {
12
- parametersUuid: UUID | null;
13
- name: string | null;
13
+ parametersUuid: UUID;
14
+ name: string;
14
15
  description: string | null;
16
+ studyUuid: null;
17
+ parameters: null;
18
+ } | {
19
+ parametersUuid: null;
20
+ name: null;
21
+ description: null;
15
22
  studyUuid: UUID | null;
16
23
  parameters: PccMinParameters | null;
17
24
  };
18
- export declare const UsePccMinParametersForm: ({ parametersUuid, studyUuid, parameters, }: UsePccMinParametersFormProps) => UsePccMinParametersFormReturn;
25
+ export declare const UsePccMinParametersForm: ({ name, description, parametersUuid, studyUuid, parameters, }: UsePccMinParametersFormProps) => UsePccMinParametersFormReturn;
19
26
  export {};
@@ -7,9 +7,12 @@ import "react/jsx-runtime";
7
7
  import "react-intl";
8
8
  import { FILTERS, ID } from "../../../utils/constants/filterConstant.js";
9
9
  import "../../../utils/conversionUtils.js";
10
- import "../../../utils/types/equipmentType.js";
10
+ import { snackWithFallback } from "../../../utils/error.js";
11
11
  import "@mui/icons-material";
12
- import { updatePccMinParameters, getPccMinStudyParameters } from "../../../services/pcc-min.js";
12
+ import { ElementType } from "../../../utils/types/elementType.js";
13
+ import "../../../utils/types/equipmentType.js";
14
+ import { updateParameter } from "../../../services/explore.js";
15
+ import { updatePccMinParameters, fetchPccMinParameters } from "../../../services/pcc-min.js";
13
16
  import "@mui/material";
14
17
  import "localized-countries";
15
18
  import "localized-countries/data/fr";
@@ -19,7 +22,7 @@ import "../../overflowableText/OverflowableText.js";
19
22
  import "../../inputs/reactHookForm/provider/CustomFormProvider.js";
20
23
  import * as yup from "yup";
21
24
  import "../../treeViewFinder/TreeViewFinder.js";
22
- import { NAME } from "../../inputs/reactHookForm/constants.js";
25
+ import { NAME, DESCRIPTION } from "../../inputs/reactHookForm/constants.js";
23
26
  import "../../inputs/reactHookForm/agGridTable/BottomRightButtons.js";
24
27
  import "../../customAGGrid/customAggrid.js";
25
28
  import "ag-grid-community";
@@ -32,7 +35,11 @@ import "../../inputs/reactQueryBuilder/CustomReactQueryBuilder.js";
32
35
  import "uuid";
33
36
  import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
34
37
  import "react-querybuilder";
38
+ import "../../filter/HeaderFilterForm.js";
39
+ import { getNameElementEditorSchema, getNameElementEditorEmptyFormData } from "../common/name-element-editor/name-element-editor-utils.js";
35
40
  const UsePccMinParametersForm = ({
41
+ name,
42
+ description,
36
43
  parametersUuid,
37
44
  studyUuid,
38
45
  parameters
@@ -47,10 +54,11 @@ const UsePccMinParametersForm = ({
47
54
  [NAME]: yup.string().required()
48
55
  })
49
56
  )
50
- });
51
- }, []);
57
+ }).concat(getNameElementEditorSchema(name));
58
+ }, [name]);
52
59
  const formMethods = useForm({
53
60
  defaultValues: {
61
+ ...getNameElementEditorEmptyFormData(name, description),
54
62
  [FILTERS]: []
55
63
  },
56
64
  resolver: yupResolver(formSchema)
@@ -69,13 +77,32 @@ const UsePccMinParametersForm = ({
69
77
  },
70
78
  [snackError, studyUuid]
71
79
  );
80
+ const onSaveDialog = useCallback(
81
+ (formData) => {
82
+ if (parametersUuid) {
83
+ updateParameter(
84
+ parametersUuid,
85
+ fromPccMinParametersFormToParamValues(formData),
86
+ formData[NAME],
87
+ ElementType.PCC_MIN_PARAMETERS,
88
+ formData[DESCRIPTION] ?? ""
89
+ ).catch((error) => {
90
+ snackWithFallback(snackError, error, { headerId: "updatePccMinParametersError" });
91
+ });
92
+ }
93
+ },
94
+ [parametersUuid, snackError]
95
+ );
72
96
  useEffect(() => {
73
97
  if (parametersUuid) {
74
98
  const timer = setTimeout(() => {
75
99
  setParamsLoading(true);
76
100
  }, 700);
77
- getPccMinStudyParameters(parametersUuid).then((params) => {
78
- reset(fromPccMinParamsDataToFormValues(params));
101
+ fetchPccMinParameters(parametersUuid).then((params) => {
102
+ reset({
103
+ ...getNameElementEditorEmptyFormData(name, description),
104
+ ...fromPccMinParamsDataToFormValues(params)
105
+ });
79
106
  }).catch((error) => {
80
107
  snackError({
81
108
  messageTxt: error.message,
@@ -86,7 +113,7 @@ const UsePccMinParametersForm = ({
86
113
  setParamsLoading(false);
87
114
  });
88
115
  }
89
- }, [parametersUuid, reset, snackError]);
116
+ }, [description, name, parametersUuid, reset, snackError]);
90
117
  useEffect(() => {
91
118
  if (parameters) {
92
119
  reset(fromStudyPccMinParamsDataToFormValues(parameters));
@@ -96,7 +123,8 @@ const UsePccMinParametersForm = ({
96
123
  formMethods,
97
124
  formSchema,
98
125
  paramsLoading,
99
- onSaveInline
126
+ onSaveInline,
127
+ onSaveDialog
100
128
  };
101
129
  };
102
130
  export {
package/dist/index.js CHANGED
@@ -170,6 +170,7 @@ import { EquipmentsSelectionType } from "./components/parameters/voltage-init/vo
170
170
  import { VoltageInitParametersEditionDialog } from "./components/parameters/voltage-init/voltage-init-parameters-dialog.js";
171
171
  import { VoltageInitParametersInLine } from "./components/parameters/voltage-init/voltage-init-parameters-inline.js";
172
172
  import { PccMinParametersInLine } from "./components/parameters/pcc-min/pcc-min-parameters-inline.js";
173
+ import { PccMinParametersEditionDialog } from "./components/parameters/pcc-min/pcc-min-parameters-dialog.js";
173
174
  import { SecurityAnalysisParametersInline } from "./components/parameters/security-analysis/security-analysis-parameters-inline.js";
174
175
  import { SecurityAnalysisParametersDialog } from "./components/parameters/security-analysis/security-analysis-parameters-dialog.js";
175
176
  import { SensitivityAnalysisParametersInline } from "./components/parameters/sensi/sensitivity-analysis-parameters-inline.js";
@@ -201,7 +202,7 @@ import { fetchConfigParameter, fetchConfigParameters, getAppName, updateConfigPa
201
202
  import { PermissionType, elementAlreadyExists, fetchDirectoryContent, fetchDirectoryElementPath, fetchRootFolders, hasElementPermission } from "./services/directory.js";
202
203
  import { createFilter, createParameter, fetchElementsInfos, saveFilter, updateParameter } from "./services/explore.js";
203
204
  import { PREFIX_STUDY_QUERIES, fetchLoadFlowParameters, getDefaultLoadFlowProvider, getLoadFlowDefaultLimitReductions, getLoadFlowProviders, getLoadFlowSpecificParametersDescription, getLoadFlowUrl, setLoadFlowParameters } from "./services/loadflow.js";
204
- import { getPccMinStudyParameters, updatePccMinParameters } from "./services/pcc-min.js";
205
+ import { fetchPccMinParameters, getPccMinStudyParameters, updatePccMinParameters } from "./services/pcc-min.js";
205
206
  import { fetchDefaultSecurityAnalysisProvider, fetchSecurityAnalysisParameters, fetchSecurityAnalysisProviders, getSecurityAnalysisDefaultLimitReductions, getSecurityAnalysisParameters, getStudyUrl, safeEncodeURIComponent, setSecurityAnalysisParameters, updateSecurityAnalysisParameters, updateSecurityAnalysisProvider } from "./services/security-analysis.js";
206
207
  import { exportFilter, getAvailableComponentLibraries, getStudyNetworkVisualizationsParameters, getStudyShortCircuitParameters, setStudyNetworkVisualizationParameters, updateVoltageInitParameters } from "./services/study.js";
207
208
  import { getNetworkVisualizationsParameters } from "./services/study-config.js";
@@ -575,6 +576,7 @@ export {
575
576
  ParameterLineSlider,
576
577
  ParameterSwitch,
577
578
  ParameterType,
579
+ PccMinParametersEditionDialog,
578
580
  PccMinParametersInLine,
579
581
  PermissionType,
580
582
  PhotoLibraryIcon,
@@ -767,6 +769,7 @@ export {
767
769
  fetchEnv,
768
770
  fetchFavoriteAndDefaultCountries,
769
771
  fetchLoadFlowParameters,
772
+ fetchPccMinParameters,
770
773
  fetchRootFolders,
771
774
  fetchSecurityAnalysisParameters,
772
775
  fetchSecurityAnalysisProviders,
@@ -3,7 +3,7 @@ import { fetchConfigParameter, fetchConfigParameters, getAppName, updateConfigPa
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
- import { getPccMinStudyParameters, updatePccMinParameters } from "./pcc-min.js";
6
+ import { fetchPccMinParameters, getPccMinStudyParameters, updatePccMinParameters } from "./pcc-min.js";
7
7
  import { fetchDefaultSecurityAnalysisProvider, fetchSecurityAnalysisParameters, fetchSecurityAnalysisProviders, getSecurityAnalysisDefaultLimitReductions, getSecurityAnalysisParameters, getStudyUrl, safeEncodeURIComponent, 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";
@@ -36,6 +36,7 @@ export {
36
36
  fetchEnv,
37
37
  fetchFavoriteAndDefaultCountries,
38
38
  fetchLoadFlowParameters,
39
+ fetchPccMinParameters,
39
40
  fetchRootFolders,
40
41
  fetchSecurityAnalysisParameters,
41
42
  fetchSecurityAnalysisProviders,
@@ -4,4 +4,5 @@ export type PccMinParameters = {
4
4
  [FILTERS]: FilterIdentifier[];
5
5
  };
6
6
  export declare function getPccMinStudyParameters(studyUuid: UUID): Promise<PccMinParameters | null>;
7
+ export declare function fetchPccMinParameters(parameterUuid: UUID): Promise<PccMinParameters>;
7
8
  export declare function updatePccMinParameters(studyUuid: UUID | null, newParams: PccMinParameters | null): Promise<Response>;
@@ -1,11 +1,21 @@
1
1
  import { backendFetchJson, backendFetch } from "./utils.js";
2
2
  import { getStudyUrl } from "./security-analysis.js";
3
+ const PREFIX_PCC_MIN_SERVER_QUERIES = `${"api/gateway"}/pcc-min`;
4
+ function getPccMinUrl() {
5
+ return `${PREFIX_PCC_MIN_SERVER_QUERIES}/v1/`;
6
+ }
3
7
  function getPccMinStudyParameters(studyUuid) {
4
8
  console.info("get pcc min study parameters");
5
9
  const getPccMintParams = `${getStudyUrl(studyUuid)}/pcc-min/parameters`;
6
10
  console.debug(getPccMintParams);
7
11
  return backendFetchJson(getPccMintParams);
8
12
  }
13
+ function fetchPccMinParameters(parameterUuid) {
14
+ console.info("fetch pcc min parameters");
15
+ const url = `${getPccMinUrl()}parameters/${encodeURIComponent(parameterUuid)}`;
16
+ console.debug(url);
17
+ return backendFetchJson(url);
18
+ }
9
19
  function updatePccMinParameters(studyUuid, newParams) {
10
20
  console.info("set study pcc min parameters");
11
21
  const url = `${getStudyUrl(studyUuid)}/pcc-min/parameters`;
@@ -20,6 +30,7 @@ function updatePccMinParameters(studyUuid, newParams) {
20
30
  });
21
31
  }
22
32
  export {
33
+ fetchPccMinParameters,
23
34
  getPccMinStudyParameters,
24
35
  updatePccMinParameters
25
36
  };
@@ -244,6 +244,7 @@ const parametersEn = {
244
244
  getSensitivityAnalysisFactorsCountError: "An error occured while estimating sensitivity analysis computations",
245
245
  // Other
246
246
  resetLoadFlowParametersWarning: "Impossible to retrieve the load flow parameters defined in the user profile (default values are used)",
247
+ // pccMin
247
248
  PccMinParametersError: "An error occurred while updating the pcc min parameters",
248
249
  updatePccMinParametersError: "An error occurred while updating the pcc min parameters",
249
250
  pccMinParamFilter: "Definition of contingencies on voltage levels"
@@ -19,6 +19,7 @@ function getFileIcon(type, style) {
19
19
  case ElementType.SENSITIVITY_PARAMETERS:
20
20
  case ElementType.SHORT_CIRCUIT_PARAMETERS:
21
21
  case ElementType.NETWORK_VISUALIZATIONS_PARAMETERS:
22
+ case ElementType.PCC_MIN_PARAMETERS:
22
23
  return /* @__PURE__ */ jsx(Settings, { sx: style });
23
24
  case ElementType.SPREADSHEET_CONFIG:
24
25
  return /* @__PURE__ */ jsx(Calculate, { sx: style });
@@ -16,6 +16,7 @@ export declare enum ElementType {
16
16
  CONTINGENCY_LIST = "CONTINGENCY_LIST",
17
17
  VOLTAGE_INIT_PARAMETERS = "VOLTAGE_INIT_PARAMETERS",
18
18
  SECURITY_ANALYSIS_PARAMETERS = "SECURITY_ANALYSIS_PARAMETERS",
19
+ PCC_MIN_PARAMETERS = "PCC_MIN_PARAMETERS",
19
20
  LOADFLOW_PARAMETERS = "LOADFLOW_PARAMETERS",
20
21
  SENSITIVITY_PARAMETERS = "SENSITIVITY_PARAMETERS",
21
22
  SHORT_CIRCUIT_PARAMETERS = "SHORT_CIRCUIT_PARAMETERS",
@@ -7,6 +7,7 @@ var ElementType = /* @__PURE__ */ ((ElementType2) => {
7
7
  ElementType2["CONTINGENCY_LIST"] = "CONTINGENCY_LIST";
8
8
  ElementType2["VOLTAGE_INIT_PARAMETERS"] = "VOLTAGE_INIT_PARAMETERS";
9
9
  ElementType2["SECURITY_ANALYSIS_PARAMETERS"] = "SECURITY_ANALYSIS_PARAMETERS";
10
+ ElementType2["PCC_MIN_PARAMETERS"] = "PCC_MIN_PARAMETERS";
10
11
  ElementType2["LOADFLOW_PARAMETERS"] = "LOADFLOW_PARAMETERS";
11
12
  ElementType2["SENSITIVITY_PARAMETERS"] = "SENSITIVITY_PARAMETERS";
12
13
  ElementType2["SHORT_CIRCUIT_PARAMETERS"] = "SHORT_CIRCUIT_PARAMETERS";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gridsuite/commons-ui",
3
- "version": "0.154.0",
3
+ "version": "0.155.0",
4
4
  "description": "common react components for gridsuite applications",
5
5
  "author": "gridsuite team",
6
6
  "homepage": "https://github.com/gridsuite",