@gridsuite/commons-ui 0.240.0 → 0.241.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 (105) hide show
  1. package/dist/components/composite/customAGGrid/custom-aggrid-filters/custom-aggrid-comparator-filter.js +2 -2
  2. package/dist/components/composite/customAGGrid/custom-aggrid-filters/custom-aggrid-text-filter.js +4 -4
  3. package/dist/components/composite/customAGGrid/custom-aggrid-filters/custom-filter-icon.js +2 -2
  4. package/dist/components/composite/customAGGrid/custom-aggrid-header.js +26 -13
  5. package/dist/components/composite/customAGGrid/custom-aggrid-menu.js +2 -2
  6. package/dist/components/composite/grid/grid-section.js +1 -1
  7. package/dist/features/index.js +6 -1
  8. package/dist/features/network-modifications/common/measurements/BranchActiveReactivePowerMeasurementsForm.js +3 -2
  9. package/dist/features/parameters/common/hook/use-tabs.d.ts +3 -2
  10. package/dist/features/parameters/common/hook/use-tabs.js +2 -3
  11. package/dist/features/parameters/common/index.d.ts +2 -1
  12. package/dist/features/parameters/common/index.js +6 -1
  13. package/dist/features/parameters/common/parameter-field.js +2 -1
  14. package/dist/features/parameters/common/parameter-layout/index.d.ts +8 -0
  15. package/dist/features/parameters/common/parameter-layout/index.js +7 -0
  16. package/dist/features/parameters/common/parameter-layout/parameter-layout-provider.d.ts +10 -0
  17. package/dist/features/parameters/common/parameter-layout/parameter-layout-provider.js +15 -0
  18. package/dist/features/parameters/common/parameter-layout/parameter-layout.d.ts +23 -0
  19. package/dist/features/parameters/common/parameter-layout/parameter-layout.js +167 -0
  20. package/dist/features/parameters/common/provider-param.d.ts +10 -0
  21. package/dist/features/parameters/common/{ProviderParam.js → provider-param.js} +8 -10
  22. package/dist/features/parameters/common/widget/parameter-float.js +1 -1
  23. package/dist/features/parameters/common/widget/parameter-line-directory-items-input.js +1 -1
  24. package/dist/features/parameters/dynamic-margin-calculation/dynamic-margin-calculation-form.d.ts +4 -5
  25. package/dist/features/parameters/dynamic-margin-calculation/dynamic-margin-calculation-form.js +39 -60
  26. package/dist/features/parameters/dynamic-margin-calculation/dynamic-margin-calculation-inline.js +39 -101
  27. package/dist/features/parameters/dynamic-margin-calculation/use-dynamic-margin-calculation-parameters-form.js +8 -7
  28. package/dist/features/parameters/dynamic-security-analysis/contingency-parameters.js +10 -9
  29. package/dist/features/parameters/dynamic-security-analysis/dynamic-security-analysis-inline.js +38 -71
  30. package/dist/features/parameters/dynamic-security-analysis/dynamic-security-analysis-parameters-form.d.ts +4 -5
  31. package/dist/features/parameters/dynamic-security-analysis/dynamic-security-analysis-parameters-form.js +39 -60
  32. package/dist/features/parameters/dynamic-security-analysis/use-dynamic-security-analysis-parameters-form.js +8 -7
  33. package/dist/features/parameters/dynamic-simulation/dynamic-simulation-inline.js +42 -104
  34. package/dist/features/parameters/dynamic-simulation/dynamic-simulation-parameters-form.d.ts +4 -5
  35. package/dist/features/parameters/dynamic-simulation/dynamic-simulation-parameters-form.js +75 -96
  36. package/dist/features/parameters/dynamic-simulation/mapping/mapping-parameters.js +8 -7
  37. package/dist/features/parameters/dynamic-simulation/use-dynamic-simulation-parameters-form.js +7 -6
  38. package/dist/features/parameters/index.js +6 -1
  39. package/dist/features/parameters/loadflow/load-flow-general-parameters.js +1 -0
  40. package/dist/features/parameters/loadflow/load-flow-parameters-content.js +11 -10
  41. package/dist/features/parameters/loadflow/load-flow-parameters-dialog.js +12 -18
  42. package/dist/features/parameters/loadflow/load-flow-parameters-form.d.ts +1 -6
  43. package/dist/features/parameters/loadflow/load-flow-parameters-form.js +26 -91
  44. package/dist/features/parameters/loadflow/load-flow-parameters-header.js +29 -53
  45. package/dist/features/parameters/loadflow/load-flow-parameters-inline.js +35 -127
  46. package/dist/features/parameters/loadflow/load-flow-parameters-utils.js +11 -10
  47. package/dist/features/parameters/loadflow/use-load-flow-parameters-form.js +10 -9
  48. package/dist/features/parameters/network-visualizations/map-parameters.js +10 -9
  49. package/dist/features/parameters/network-visualizations/network-visualizations-form.d.ts +1 -4
  50. package/dist/features/parameters/network-visualizations/network-visualizations-form.js +19 -45
  51. package/dist/features/parameters/network-visualizations/network-visualizations-parameters-dialog.js +13 -19
  52. package/dist/features/parameters/network-visualizations/network-visualizations-parameters-inline.js +34 -65
  53. package/dist/features/parameters/network-visualizations/single-line-diagram-parameters.js +10 -9
  54. package/dist/features/parameters/parameters-style.d.ts +0 -1
  55. package/dist/features/parameters/parameters-style.js +0 -2
  56. package/dist/features/parameters/pcc-min/pcc-min-parameters-dialog.js +13 -18
  57. package/dist/features/parameters/pcc-min/pcc-min-parameters-form.d.ts +7 -29
  58. package/dist/features/parameters/pcc-min/pcc-min-parameters-form.js +16 -106
  59. package/dist/features/parameters/pcc-min/pcc-min-parameters-inline.js +27 -84
  60. package/dist/features/parameters/security-analysis/columns-definitions.js +11 -10
  61. package/dist/features/parameters/security-analysis/security-analysis-parameters-dialog.js +20 -20
  62. package/dist/features/parameters/security-analysis/security-analysis-parameters-form.d.ts +2 -4
  63. package/dist/features/parameters/security-analysis/security-analysis-parameters-form.js +44 -115
  64. package/dist/features/parameters/security-analysis/security-analysis-parameters-inline.js +40 -108
  65. package/dist/features/parameters/security-analysis/security-analysis-parameters-selector.js +9 -8
  66. package/dist/features/parameters/security-analysis/security-analysis-violations-hiding.js +1 -0
  67. package/dist/features/parameters/security-analysis/use-security-analysis-parameters-form.js +7 -6
  68. package/dist/features/parameters/sensi/columns-definitions.js +9 -8
  69. package/dist/features/parameters/sensi/sensitivity-analysis-parameters-dialog.js +21 -21
  70. package/dist/features/parameters/sensi/sensitivity-analysis-parameters-form.d.ts +3 -5
  71. package/dist/features/parameters/sensi/sensitivity-analysis-parameters-form.js +33 -90
  72. package/dist/features/parameters/sensi/sensitivity-analysis-parameters-inline.js +40 -99
  73. package/dist/features/parameters/sensi/sensitivity-parameters-fields.js +3 -11
  74. package/dist/features/parameters/sensi/sensitivity-parameters-selector.js +8 -7
  75. package/dist/features/parameters/sensi/utils.js +8 -7
  76. package/dist/features/parameters/short-circuit/short-circuit-general-tab-panel.js +2 -1
  77. package/dist/features/parameters/short-circuit/short-circuit-parameters-content.js +8 -7
  78. package/dist/features/parameters/short-circuit/short-circuit-parameters-dialog.js +13 -18
  79. package/dist/features/parameters/short-circuit/short-circuit-parameters-form.d.ts +1 -4
  80. package/dist/features/parameters/short-circuit/short-circuit-parameters-form.js +5 -60
  81. package/dist/features/parameters/short-circuit/short-circuit-parameters-inline.js +33 -101
  82. package/dist/features/parameters/short-circuit/short-circuit-parameters-utils.js +12 -11
  83. package/dist/features/parameters/short-circuit/short-circuit-power-electronics-tab-panel.js +10 -9
  84. package/dist/features/parameters/short-circuit/short-circuit-study-area-tab-panel.js +11 -10
  85. package/dist/features/parameters/short-circuit/use-short-circuit-parameters-form.js +1 -0
  86. package/dist/features/parameters/voltage-init/equipment-selection-parameters.js +1 -0
  87. package/dist/features/parameters/voltage-init/general-parameters.js +9 -8
  88. package/dist/features/parameters/voltage-init/voltage-init-parameters-dialog.js +13 -18
  89. package/dist/features/parameters/voltage-init/voltage-init-parameters-form.d.ts +2 -24
  90. package/dist/features/parameters/voltage-init/voltage-init-parameters-form.js +51 -105
  91. package/dist/features/parameters/voltage-init/voltage-init-parameters-inline.js +34 -90
  92. package/dist/features/process-configs/security-analysis/update-sa-process-config.js +7 -6
  93. package/dist/index.js +6 -1
  94. package/dist/translations/en/commonButtonEn.d.ts +2 -0
  95. package/dist/translations/en/commonButtonEn.js +2 -0
  96. package/dist/translations/en/parameters.d.ts +1 -0
  97. package/dist/translations/en/parameters.js +3 -1
  98. package/dist/translations/fr/commonButtonFr.d.ts +2 -0
  99. package/dist/translations/fr/commonButtonFr.js +2 -0
  100. package/dist/translations/fr/parameters.d.ts +1 -0
  101. package/dist/translations/fr/parameters.js +3 -1
  102. package/dist/utils/types/elementType.d.ts +1 -0
  103. package/dist/utils/types/elementType.js +1 -0
  104. package/package.json +1 -1
  105. package/dist/features/parameters/common/ProviderParam.d.ts +0 -7
@@ -1,54 +1,48 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
- import { useState, useCallback, useEffect } from "react";
3
- import { Box, Grid2 } from "@mui/material";
4
- import { useIntl, FormattedMessage } from "react-intl";
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useCallback, useEffect } from "react";
5
3
  import { LoadFlowProvider } from "./load-flow-parameters-provider.js";
6
- import { parametersStyles } from "../parameters-style.js";
4
+ import "react-intl";
7
5
  import "../../../utils/conversionUtils.js";
8
6
  import { snackWithFallback } from "../../../utils/error.js";
9
7
  import { ElementType } from "../../../utils/types/elementType.js";
10
8
  import "../../../utils/types/equipmentType.js";
11
9
  import "@mui/icons-material";
12
- import { mergeSx } from "../../../utils/styles.js";
13
10
  import { fetchLoadFlowParameters } from "../../../services/loadflow.js";
11
+ import "@mui/material";
14
12
  import "localized-countries";
15
13
  import "localized-countries/data/fr";
16
14
  import "localized-countries/data/en";
17
15
  import { useSnackMessage } from "../../../hooks/useSnackMessage.js";
18
- import "../../../components/ui/overflowableText/OverflowableText.js";
16
+ import { useLoadFlowParametersForm } from "./use-load-flow-parameters-form.js";
17
+ import { LoadFlowParametersForm } from "./load-flow-parameters-form.js";
18
+ import { ParameterLayout } from "../common/parameter-layout/parameter-layout.js";
19
+ import "../common/parameter-layout/parameter-layout-provider.js";
19
20
  import "react-hook-form";
20
- import "../../../components/ui/reactHookForm/provider/CustomFormProvider.js";
21
- import { SubmitButton } from "../../../components/ui/reactHookForm/utils/SubmitButton.js";
21
+ import { CustomFormProvider } from "../../../components/ui/reactHookForm/provider/CustomFormProvider.js";
22
+ import "../../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
23
+ import "../../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
24
+ import "../../../components/ui/treeViewFinder/TreeViewFinder.js";
25
+ import "@hello-pangea/dnd";
26
+ import "../../../components/ui/overflowableText/OverflowableText.js";
22
27
  import "yup";
23
- import { DirectoryItemSelector } from "../../../components/ui/directoryItemSelector/DirectoryItemSelector.js";
24
28
  import "../../../components/ui/reactHookForm/numbers/RangeInput.js";
25
- import { PopupConfirmationDialog } from "../../../components/ui/dialogs/popupConfirmationDialog/PopupConfirmationDialog.js";
26
29
  import "@material-symbols/svg-400/outlined/left_panel_open.svg?react";
27
30
  import "@material-symbols/svg-400/outlined/arrows_output.svg?react";
28
31
  import "@material-symbols/svg-400/outlined/arrows_input.svg?react";
29
32
  import "@material-symbols/svg-400/outlined/left_panel_close.svg?react";
30
33
  import "@material-symbols/svg-400/outlined/add_notes.svg?react";
31
- import "../../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
32
34
  import "../../../components/ui/reactHookForm/expandableInput/ExpandableInput.js";
33
35
  import "../../../components/ui/reactHookForm/directory-item-input/directory-item-utils.js";
34
- import "@hello-pangea/dnd";
35
- import "../../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
36
36
  import "../../../components/ui/snackbarProvider/SnackbarProvider.js";
37
37
  import "mui-nested-menu";
38
38
  import "react-resizable-panels";
39
39
  import "react-papaparse";
40
- import "../../../components/ui/treeViewFinder/TreeViewFinder.js";
41
- import { LabelledButton } from "../common/parameters.js";
42
- import { LineSeparator } from "../common/line-separator.js";
43
- import { CreateParameterDialog } from "../common/parameters-creation-dialog.js";
44
40
  import "../common/widget/parameter-line-slider.js";
45
41
  import "../common/limitreductions/columns-definitions.js";
46
42
  import "../common/contingency-table/contingency-table.js";
47
43
  import "../common/contingency-table/columns-definitions.js";
48
44
  import "@hookform/resolvers/yup";
49
45
  import "../../../components/composite/filter/HeaderFilterForm.js";
50
- import { useLoadFlowParametersForm } from "./use-load-flow-parameters-form.js";
51
- import { LoadFlowParametersForm } from "./load-flow-parameters-form.js";
52
46
  function LoadFlowParametersInline({
53
47
  studyUuid,
54
48
  language,
@@ -58,26 +52,11 @@ function LoadFlowParametersInline({
58
52
  }) {
59
53
  const { resetParameters } = parametersBackend;
60
54
  const loadflowMethods = useLoadFlowParametersForm(parametersBackend, isDeveloperMode, null, null, null);
61
- const intl = useIntl();
62
- const [openCreateParameterDialog, setOpenCreateParameterDialog] = useState(false);
63
- const [openSelectParameterDialog, setOpenSelectParameterDialog] = useState(false);
64
- const [openResetConfirmation, setOpenResetConfirmation] = useState(false);
65
55
  const { snackError } = useSnackMessage();
66
- const executeResetAction = useCallback(() => {
67
- resetParameters();
68
- setOpenResetConfirmation(false);
69
- }, [resetParameters]);
70
- const handleResetAllClick = useCallback(() => {
71
- setOpenResetConfirmation(true);
72
- }, []);
73
- const handleCancelReset = useCallback(() => {
74
- setOpenResetConfirmation(false);
75
- }, []);
76
56
  const { reset, getValues, formState, handleSubmit } = loadflowMethods.formMethods;
77
57
  const handleLoadParameter = useCallback(
78
58
  (newParams) => {
79
59
  if (newParams && newParams.length > 0) {
80
- setOpenSelectParameterDialog(false);
81
60
  fetchLoadFlowParameters(newParams[0].id).then((parameters) => {
82
61
  console.info(`loading the following loadflow parameters : ${parameters.uuid}`);
83
62
  reset(loadflowMethods.toLoadFlowFormValues(parameters), {
@@ -87,7 +66,6 @@ function LoadFlowParametersInline({
87
66
  snackWithFallback(snackError, error, { headerId: "paramsRetrievingError" });
88
67
  });
89
68
  }
90
- setOpenSelectParameterDialog(false);
91
69
  },
92
70
  [loadflowMethods, reset, snackError]
93
71
  );
@@ -95,99 +73,29 @@ function LoadFlowParametersInline({
95
73
  setHaveDirtyFields(formState.isDirty);
96
74
  }, [formState, setHaveDirtyFields]);
97
75
  return /* @__PURE__ */ jsx(LoadFlowProvider, { children: /* @__PURE__ */ jsx(
98
- LoadFlowParametersForm,
76
+ CustomFormProvider,
99
77
  {
100
- loadflowMethods,
78
+ validationSchema: loadflowMethods.formSchema,
79
+ ...loadflowMethods.formMethods,
80
+ removeOptional: true,
101
81
  language,
102
- renderActions: () => {
103
- return /* @__PURE__ */ jsxs(Box, { children: [
104
- /* @__PURE__ */ jsx(LineSeparator, {}),
105
- /* @__PURE__ */ jsxs(
106
- Grid2,
107
- {
108
- container: true,
109
- sx: mergeSx(parametersStyles.controlParametersItem, parametersStyles.marginTopButton, {
110
- paddingBottom: 0
111
- }),
112
- children: [
113
- /* @__PURE__ */ jsx(
114
- LabelledButton,
115
- {
116
- callback: () => setOpenSelectParameterDialog(true),
117
- label: "settings.button.chooseSettings",
118
- "data-testid": "LfChooseParametersButton"
119
- }
120
- ),
121
- /* @__PURE__ */ jsx(
122
- LabelledButton,
123
- {
124
- callback: () => setOpenCreateParameterDialog(true),
125
- label: "save",
126
- "data-testid": "LfSaveButton"
127
- }
128
- ),
129
- /* @__PURE__ */ jsx(
130
- LabelledButton,
131
- {
132
- callback: handleResetAllClick,
133
- label: "resetToDefault",
134
- "data-testid": "LfResetToDefaultButton"
135
- }
136
- ),
137
- /* @__PURE__ */ jsx(
138
- SubmitButton,
139
- {
140
- onClick: handleSubmit(
141
- loadflowMethods.onSaveInline,
142
- loadflowMethods.onValidationError
143
- ),
144
- variant: "outlined",
145
- "data-testid": "LfValidateButton",
146
- children: /* @__PURE__ */ jsx(FormattedMessage, { id: "validate" })
147
- }
148
- )
149
- ]
150
- }
151
- ),
152
- openCreateParameterDialog && /* @__PURE__ */ jsx(
153
- CreateParameterDialog,
154
- {
155
- studyUuid,
156
- open: openCreateParameterDialog,
157
- onClose: () => setOpenCreateParameterDialog(false),
158
- parameterValues: () => loadflowMethods.formatNewParams(getValues()),
159
- parameterFormatter: (newParams) => newParams,
160
- parameterType: ElementType.LOADFLOW_PARAMETERS
161
- }
162
- ),
163
- openSelectParameterDialog && /* @__PURE__ */ jsx(
164
- DirectoryItemSelector,
165
- {
166
- open: openSelectParameterDialog,
167
- onClose: handleLoadParameter,
168
- types: [ElementType.LOADFLOW_PARAMETERS],
169
- title: intl.formatMessage({
170
- id: "showSelectParameterDialog"
171
- }),
172
- onlyLeaves: true,
173
- multiSelect: false,
174
- validationButtonText: intl.formatMessage({
175
- id: "validate"
176
- })
177
- }
178
- ),
179
- openResetConfirmation && /* @__PURE__ */ jsx(
180
- PopupConfirmationDialog,
181
- {
182
- message: "resetParamsConfirmation",
183
- validateButtonLabel: "validate",
184
- openConfirmationPopup: openResetConfirmation,
185
- setOpenConfirmationPopup: handleCancelReset,
186
- handlePopupConfirmation: executeResetAction
187
- }
188
- )
189
- ] });
190
- }
82
+ children: /* @__PURE__ */ jsx(
83
+ ParameterLayout,
84
+ {
85
+ title: "LoadFlow",
86
+ isLoading: !loadflowMethods.paramsLoaded,
87
+ parameterType: ElementType.LOADFLOW_PARAMETERS,
88
+ createParameter: {
89
+ studyUuid,
90
+ getParameterValues: getValues,
91
+ parameterFormatter: (values) => loadflowMethods.formatNewParams(values)
92
+ },
93
+ selectParameterHandler: handleLoadParameter,
94
+ resetHandler: resetParameters,
95
+ validateHandler: handleSubmit(loadflowMethods.onSaveInline, loadflowMethods.onValidationError),
96
+ children: /* @__PURE__ */ jsx(LoadFlowParametersForm, { loadflowMethods })
97
+ }
98
+ )
191
99
  }
192
100
  ) });
193
101
  }
@@ -1,35 +1,36 @@
1
1
  import * as yup from "yup";
2
- import "../../../utils/conversionUtils.js";
3
- import "../../../utils/types/equipmentType.js";
4
2
  import "react/jsx-runtime";
5
- import "@mui/icons-material";
6
- import { COMMON_PARAMETERS } from "../common/constants.js";
7
3
  import "@mui/material";
8
- import "react-intl";
4
+ import "@mui/icons-material";
9
5
  import "react";
6
+ import "react-intl";
7
+ import "../../../components/ui/overflowableText/OverflowableText.js";
8
+ import "../../../utils/conversionUtils.js";
9
+ import "../../../utils/types/equipmentType.js";
10
+ import "react-hook-form";
10
11
  import "localized-countries";
11
12
  import "localized-countries/data/fr";
12
13
  import "localized-countries/data/en";
13
14
  import "notistack";
14
- import "react-hook-form";
15
15
  import "../../../components/ui/reactHookForm/provider/CustomFormProvider.js";
16
- import "../../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
17
- import "../../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
18
16
  import "../../../components/ui/treeViewFinder/TreeViewFinder.js";
19
- import "@hello-pangea/dnd";
20
- import "../../../components/ui/overflowableText/OverflowableText.js";
21
17
  import "../../../components/ui/reactHookForm/numbers/RangeInput.js";
22
18
  import "@material-symbols/svg-400/outlined/left_panel_open.svg?react";
23
19
  import "@material-symbols/svg-400/outlined/arrows_output.svg?react";
24
20
  import "@material-symbols/svg-400/outlined/arrows_input.svg?react";
25
21
  import "@material-symbols/svg-400/outlined/left_panel_close.svg?react";
26
22
  import "@material-symbols/svg-400/outlined/add_notes.svg?react";
23
+ import "../../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
27
24
  import "../../../components/ui/reactHookForm/expandableInput/ExpandableInput.js";
28
25
  import "../../../components/ui/reactHookForm/directory-item-input/directory-item-utils.js";
26
+ import "@hello-pangea/dnd";
27
+ import "../../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
29
28
  import "../../../components/ui/snackbarProvider/SnackbarProvider.js";
30
29
  import "mui-nested-menu";
31
30
  import "react-resizable-panels";
32
31
  import "react-papaparse";
32
+ import "../common/parameter-layout/parameter-layout-provider.js";
33
+ import { COMMON_PARAMETERS } from "../common/constants.js";
33
34
  import "../common/widget/parameter-line-slider.js";
34
35
  import { IST_FORM, LIMIT_DURATION_FORM, LIMIT_REDUCTIONS_FORM, toFormValuesLimitReductions } from "../common/limitreductions/columns-definitions.js";
35
36
  import "../common/contingency-table/contingency-table.js";
@@ -3,26 +3,22 @@ import { yupResolver } from "@hookform/resolvers/yup";
3
3
  import { useState, useRef, useCallback, useMemo, useEffect, useEffectEvent } from "react";
4
4
  import * as yup from "yup";
5
5
  import { TabValues, getCommonLoadFlowParametersFormSchema, mapLimitReductions, setLimitReductions } from "./load-flow-parameters-utils.js";
6
+ import "react/jsx-runtime";
7
+ import "@mui/material";
8
+ import "@mui/icons-material";
9
+ import "react-intl";
10
+ import "../../../components/ui/overflowableText/OverflowableText.js";
6
11
  import "../../../utils/conversionUtils.js";
7
12
  import { snackWithFallback } from "../../../utils/error.js";
8
13
  import { ElementType } from "../../../utils/types/elementType.js";
9
14
  import "../../../utils/types/equipmentType.js";
10
- import "react/jsx-runtime";
11
- import "@mui/icons-material";
12
- import { PROVIDER, SPECIFIC_PARAMETERS, COMMON_PARAMETERS, VERSION_PARAMETER } from "../common/constants.js";
13
- import "@mui/material";
14
- import "react-intl";
15
15
  import { updateParameter } from "../../../services/explore.js";
16
16
  import "localized-countries";
17
17
  import "localized-countries/data/fr";
18
18
  import "localized-countries/data/en";
19
19
  import { useSnackMessage } from "../../../hooks/useSnackMessage.js";
20
20
  import "../../../components/ui/reactHookForm/provider/CustomFormProvider.js";
21
- import "../../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
22
- import "../../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
23
21
  import "../../../components/ui/treeViewFinder/TreeViewFinder.js";
24
- import "@hello-pangea/dnd";
25
- import "../../../components/ui/overflowableText/OverflowableText.js";
26
22
  import { DESCRIPTION, NAME } from "../../../components/ui/reactHookForm/constants.js";
27
23
  import "../../../components/ui/reactHookForm/numbers/RangeInput.js";
28
24
  import "@material-symbols/svg-400/outlined/left_panel_open.svg?react";
@@ -30,12 +26,17 @@ import "@material-symbols/svg-400/outlined/arrows_output.svg?react";
30
26
  import "@material-symbols/svg-400/outlined/arrows_input.svg?react";
31
27
  import "@material-symbols/svg-400/outlined/left_panel_close.svg?react";
32
28
  import "@material-symbols/svg-400/outlined/add_notes.svg?react";
29
+ import "../../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
33
30
  import "../../../components/ui/reactHookForm/expandableInput/ExpandableInput.js";
34
31
  import "../../../components/ui/reactHookForm/directory-item-input/directory-item-utils.js";
32
+ import "@hello-pangea/dnd";
33
+ import "../../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
35
34
  import "../../../components/ui/snackbarProvider/SnackbarProvider.js";
36
35
  import "mui-nested-menu";
37
36
  import "react-resizable-panels";
38
37
  import "react-papaparse";
38
+ import "../common/parameter-layout/parameter-layout-provider.js";
39
+ import { PROVIDER, SPECIFIC_PARAMETERS, COMMON_PARAMETERS, VERSION_PARAMETER } from "../common/constants.js";
39
40
  import "../common/widget/parameter-line-slider.js";
40
41
  import { getLimitReductionsFormSchema, LIMIT_REDUCTIONS_FORM, toFormValuesLimitReductions } from "../common/limitreductions/columns-definitions.js";
41
42
  import "../common/contingency-table/contingency-table.js";
@@ -3,25 +3,21 @@ import { Grid2 } from "@mui/material";
3
3
  import { FormattedMessage } from "react-intl";
4
4
  import { useState, useEffect } from "react";
5
5
  import { MAP_BASE_MAP, NetworkVisualizationTabValues, PARAM_MAP_BASEMAP, PARAM_LINE_FULL_PATH, PARAM_LINE_PARALLEL_PATH, INTL_LINE_FLOW_MODE_OPTIONS, LINE_FLOW_MODE, PARAM_LINE_FLOW_MODE, MAP_MANUAL_REFRESH, PARAM_MAP_MANUAL_REFRESH } from "./constants.js";
6
+ import "@mui/icons-material";
7
+ import { parametersStyles } from "../parameters-style.js";
8
+ import "../../../components/ui/overflowableText/OverflowableText.js";
6
9
  import "../../../utils/conversionUtils.js";
7
10
  import { snackWithFallback } from "../../../utils/error.js";
8
11
  import "../../../utils/types/equipmentType.js";
9
- import "@mui/icons-material";
10
- import { LineSeparator } from "../common/line-separator.js";
11
- import { parametersStyles } from "../parameters-style.js";
12
+ import "react-hook-form";
12
13
  import { fetchStudyMetadata } from "../../../services/appsMetadata.js";
13
14
  import "localized-countries";
14
15
  import "localized-countries/data/fr";
15
16
  import "localized-countries/data/en";
16
17
  import { useSnackMessage } from "../../../hooks/useSnackMessage.js";
17
- import "react-hook-form";
18
18
  import "../../../components/ui/reactHookForm/provider/CustomFormProvider.js";
19
- import "../../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
20
- import "../../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
21
- import "../../../components/ui/treeViewFinder/TreeViewFinder.js";
22
- import "@hello-pangea/dnd";
23
- import "../../../components/ui/overflowableText/OverflowableText.js";
24
19
  import "yup";
20
+ import "../../../components/ui/treeViewFinder/TreeViewFinder.js";
25
21
  import { SwitchInput } from "../../../components/ui/reactHookForm/booleans/SwitchInput.js";
26
22
  import "../../../components/ui/reactHookForm/numbers/RangeInput.js";
27
23
  import { MuiSelectInput } from "../../../components/ui/reactHookForm/selectInputs/MuiSelectInput.js";
@@ -30,12 +26,17 @@ import "@material-symbols/svg-400/outlined/arrows_output.svg?react";
30
26
  import "@material-symbols/svg-400/outlined/arrows_input.svg?react";
31
27
  import "@material-symbols/svg-400/outlined/left_panel_close.svg?react";
32
28
  import "@material-symbols/svg-400/outlined/add_notes.svg?react";
29
+ import "../../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
33
30
  import "../../../components/ui/reactHookForm/expandableInput/ExpandableInput.js";
34
31
  import "../../../components/ui/reactHookForm/directory-item-input/directory-item-utils.js";
32
+ import "@hello-pangea/dnd";
33
+ import "../../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
35
34
  import "../../../components/ui/snackbarProvider/SnackbarProvider.js";
36
35
  import "mui-nested-menu";
37
36
  import "react-resizable-panels";
38
37
  import "react-papaparse";
38
+ import { LineSeparator } from "../common/line-separator.js";
39
+ import "../common/parameter-layout/parameter-layout-provider.js";
39
40
  import "../common/widget/parameter-line-slider.js";
40
41
  import "../common/limitreductions/columns-definitions.js";
41
42
  import "../common/contingency-table/contingency-table.js";
@@ -1,11 +1,8 @@
1
- import { ReactNode } from 'react';
2
1
  import { UserProfile } from 'oidc-client-ts';
3
2
  import { UseNetworkVisualizationParametersFormReturn } from './use-network-visualizations-parameters-form';
4
3
  interface NetworkVisualizationParametersFormProps {
5
4
  networkVisuMethods: UseNetworkVisualizationParametersFormReturn;
6
- renderTitleFields?: () => ReactNode;
7
- renderActions?: () => ReactNode;
8
5
  userProfile: UserProfile | null;
9
6
  }
10
- export declare function NetworkVisualizationParametersForm({ networkVisuMethods, renderTitleFields, renderActions, userProfile, }: Readonly<NetworkVisualizationParametersFormProps>): import("react").JSX.Element;
7
+ export declare function NetworkVisualizationParametersForm({ networkVisuMethods, userProfile, }: Readonly<NetworkVisualizationParametersFormProps>): import("react").JSX.Element;
11
8
  export {};
@@ -1,8 +1,13 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
- import { Stack, LinearProgress, Tabs, Tab } from "@mui/material";
1
+ import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
+ import { Tabs, Tab } from "@mui/material";
3
3
  import { useState, useEffect } from "react";
4
4
  import { FormattedMessage } from "react-intl";
5
+ import { NetworkVisualizationTabValues } from "./constants.js";
6
+ import { MapParameters } from "./map-parameters.js";
7
+ import { SingleLineDiagramParameters } from "./single-line-diagram-parameters.js";
8
+ import { NetworkAreaDiagramParameters } from "./network-area-diagram-parameters.js";
5
9
  import "@mui/icons-material";
10
+ import { TabPanel } from "../common/parameters.js";
6
11
  import "../../../components/ui/overflowableText/OverflowableText.js";
7
12
  import "../../../utils/conversionUtils.js";
8
13
  import "../../../utils/types/equipmentType.js";
@@ -12,7 +17,7 @@ import "localized-countries";
12
17
  import "localized-countries/data/fr";
13
18
  import "localized-countries/data/en";
14
19
  import "notistack";
15
- import { CustomFormProvider } from "../../../components/ui/reactHookForm/provider/CustomFormProvider.js";
20
+ import "../../../components/ui/reactHookForm/provider/CustomFormProvider.js";
16
21
  import "yup";
17
22
  import "../../../components/ui/treeViewFinder/TreeViewFinder.js";
18
23
  import "../../../components/ui/reactHookForm/numbers/RangeInput.js";
@@ -30,11 +35,7 @@ import "../../../components/ui/snackbarProvider/SnackbarProvider.js";
30
35
  import "mui-nested-menu";
31
36
  import "react-resizable-panels";
32
37
  import "react-papaparse";
33
- import { NetworkVisualizationTabValues } from "./constants.js";
34
- import { MapParameters } from "./map-parameters.js";
35
- import { SingleLineDiagramParameters } from "./single-line-diagram-parameters.js";
36
- import { NetworkAreaDiagramParameters } from "./network-area-diagram-parameters.js";
37
- import { TabPanel } from "../common/parameters.js";
38
+ import "../common/parameter-layout/parameter-layout-provider.js";
38
39
  import "../common/widget/parameter-line-slider.js";
39
40
  import "../common/limitreductions/columns-definitions.js";
40
41
  import "../common/contingency-table/contingency-table.js";
@@ -56,47 +57,20 @@ const useGetAvailableComponentLibraries = (userProfile) => {
56
57
  };
57
58
  function NetworkVisualizationParametersForm({
58
59
  networkVisuMethods,
59
- renderTitleFields,
60
- renderActions,
61
60
  userProfile
62
61
  }) {
63
62
  const componentLibraries = useGetAvailableComponentLibraries(userProfile);
64
- const { formMethods, formSchema, selectedTab, handleTabChange, paramsLoading } = networkVisuMethods;
65
- return /* @__PURE__ */ jsx(CustomFormProvider, { validationSchema: formSchema, ...formMethods, removeOptional: true, children: /* @__PURE__ */ jsxs(Stack, { children: [
66
- /* @__PURE__ */ jsx(Stack, { children: renderTitleFields?.() }),
67
- paramsLoading ? /* @__PURE__ */ jsx(LinearProgress, {}) : /* @__PURE__ */ jsxs(Stack, { children: [
68
- /* @__PURE__ */ jsxs(Tabs, { value: selectedTab, variant: "scrollable", onChange: handleTabChange, children: [
69
- /* @__PURE__ */ jsx(Tab, { label: /* @__PURE__ */ jsx(FormattedMessage, { id: "Map" }), value: NetworkVisualizationTabValues.MAP }),
70
- /* @__PURE__ */ jsx(
71
- Tab,
72
- {
73
- label: /* @__PURE__ */ jsx(FormattedMessage, { id: "SingleLineDiagram" }),
74
- value: NetworkVisualizationTabValues.SINGLE_LINE_DIAGRAM
75
- }
76
- ),
77
- /* @__PURE__ */ jsx(
78
- Tab,
79
- {
80
- label: /* @__PURE__ */ jsx(FormattedMessage, { id: "NetworkAreaDiagram" }),
81
- value: NetworkVisualizationTabValues.NETWORK_AREA_DIAGRAM
82
- }
83
- )
84
- ] }),
85
- /* @__PURE__ */ jsx(TabPanel, { value: selectedTab, index: NetworkVisualizationTabValues.MAP, children: /* @__PURE__ */ jsx(MapParameters, {}) }),
86
- /* @__PURE__ */ jsx(TabPanel, { value: selectedTab, index: NetworkVisualizationTabValues.SINGLE_LINE_DIAGRAM, children: /* @__PURE__ */ jsx(SingleLineDiagramParameters, { componentLibraries }) }),
87
- /* @__PURE__ */ jsx(TabPanel, { value: selectedTab, index: NetworkVisualizationTabValues.NETWORK_AREA_DIAGRAM, children: /* @__PURE__ */ jsx(NetworkAreaDiagramParameters, {}) })
63
+ const { selectedTab, handleTabChange } = networkVisuMethods;
64
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
65
+ /* @__PURE__ */ jsxs(Tabs, { value: selectedTab, variant: "scrollable", onChange: handleTabChange, children: [
66
+ /* @__PURE__ */ jsx(Tab, { label: /* @__PURE__ */ jsx(FormattedMessage, { id: "Map" }), value: NetworkVisualizationTabValues.MAP }),
67
+ /* @__PURE__ */ jsx(Tab, { label: /* @__PURE__ */ jsx(FormattedMessage, { id: "SingleLineDiagram" }), value: NetworkVisualizationTabValues.SINGLE_LINE_DIAGRAM }),
68
+ /* @__PURE__ */ jsx(Tab, { label: /* @__PURE__ */ jsx(FormattedMessage, { id: "NetworkAreaDiagram" }), value: NetworkVisualizationTabValues.NETWORK_AREA_DIAGRAM })
88
69
  ] }),
89
- /* @__PURE__ */ jsx(
90
- Stack,
91
- {
92
- sx: {
93
- position: "absolute",
94
- bottom: "30px"
95
- },
96
- children: renderActions?.()
97
- }
98
- )
99
- ] }) });
70
+ /* @__PURE__ */ jsx(TabPanel, { value: selectedTab, index: NetworkVisualizationTabValues.MAP, children: /* @__PURE__ */ jsx(MapParameters, {}) }),
71
+ /* @__PURE__ */ jsx(TabPanel, { value: selectedTab, index: NetworkVisualizationTabValues.SINGLE_LINE_DIAGRAM, children: /* @__PURE__ */ jsx(SingleLineDiagramParameters, { componentLibraries }) }),
72
+ /* @__PURE__ */ jsx(TabPanel, { value: selectedTab, index: NetworkVisualizationTabValues.NETWORK_AREA_DIAGRAM, children: /* @__PURE__ */ jsx(NetworkAreaDiagramParameters, {}) })
73
+ ] });
100
74
  }
101
75
  export {
102
76
  NetworkVisualizationParametersForm
@@ -1,4 +1,5 @@
1
- import { jsx } from "react/jsx-runtime";
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { Grid2 } from "@mui/material";
2
3
  import { CustomMuiDialog } from "../../../components/ui/dialogs/customMuiDialog/CustomMuiDialog.js";
3
4
  import "../../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
4
5
  import "../../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
@@ -7,7 +8,6 @@ import { ElementType } from "../../../utils/types/elementType.js";
7
8
  import "../../../utils/types/equipmentType.js";
8
9
  import "@mui/icons-material";
9
10
  import "react";
10
- import "@mui/material";
11
11
  import "react-intl";
12
12
  import "react-hook-form";
13
13
  import "../../../components/ui/treeViewFinder/TreeViewFinder.js";
@@ -56,7 +56,7 @@ function NetworkVisualizationsParametersEditionDialog({
56
56
  formState: { errors, dirtyFields }
57
57
  } = networkVisuMethods.formMethods;
58
58
  const disableSave = Object.keys(errors).length > 0 || Object.keys(dirtyFields).length === 0;
59
- return /* @__PURE__ */ jsx(
59
+ return /* @__PURE__ */ jsxs(
60
60
  CustomMuiDialog,
61
61
  {
62
62
  open,
@@ -76,23 +76,17 @@ function NetworkVisualizationsParametersEditionDialog({
76
76
  // we want the dialog height to be fixed even when switching tabs
77
77
  }
78
78
  },
79
- children: /* @__PURE__ */ jsx(
80
- NetworkVisualizationParametersForm,
81
- {
82
- userProfile,
83
- networkVisuMethods,
84
- renderTitleFields: () => {
85
- return /* @__PURE__ */ jsx(
86
- NameElementEditorForm,
87
- {
88
- initialElementName: name,
89
- activeDirectory,
90
- elementType: ElementType.NETWORK_VISUALIZATIONS_PARAMETERS
91
- }
92
- );
79
+ children: [
80
+ /* @__PURE__ */ jsx(Grid2, { container: true, sx: { width: "100%" }, children: /* @__PURE__ */ jsx(
81
+ NameElementEditorForm,
82
+ {
83
+ initialElementName: name,
84
+ activeDirectory,
85
+ elementType: ElementType.NETWORK_VISUALIZATIONS_PARAMETERS
93
86
  }
94
- }
95
- )
87
+ ) }),
88
+ /* @__PURE__ */ jsx(NetworkVisualizationParametersForm, { userProfile, networkVisuMethods })
89
+ ]
96
90
  }
97
91
  );
98
92
  }