@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
@@ -5,32 +5,33 @@ import "../../../../utils/conversionUtils.js";
5
5
  import { ElementType } from "../../../../utils/types/elementType.js";
6
6
  import "../../../../utils/types/equipmentType.js";
7
7
  import "@mui/icons-material";
8
- import "react-intl";
9
8
  import "react";
9
+ import "react-intl";
10
+ import "../../../../components/ui/overflowableText/OverflowableText.js";
11
+ import "react-hook-form";
10
12
  import "localized-countries";
11
13
  import "localized-countries/data/fr";
12
14
  import "localized-countries/data/en";
13
15
  import "notistack";
14
- import "react-hook-form";
15
16
  import "../../../../components/ui/reactHookForm/provider/CustomFormProvider.js";
16
- import "../../../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
17
- import "../../../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
18
- import "../../../../components/ui/treeViewFinder/TreeViewFinder.js";
19
- import "@hello-pangea/dnd";
20
- import "../../../../components/ui/overflowableText/OverflowableText.js";
21
17
  import "yup";
18
+ import "../../../../components/ui/treeViewFinder/TreeViewFinder.js";
22
19
  import "../../../../components/ui/reactHookForm/numbers/RangeInput.js";
23
20
  import "@material-symbols/svg-400/outlined/left_panel_open.svg?react";
24
21
  import "@material-symbols/svg-400/outlined/arrows_output.svg?react";
25
22
  import "@material-symbols/svg-400/outlined/arrows_input.svg?react";
26
23
  import "@material-symbols/svg-400/outlined/left_panel_close.svg?react";
27
24
  import "@material-symbols/svg-400/outlined/add_notes.svg?react";
25
+ import "../../../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
28
26
  import "../../../../components/ui/reactHookForm/expandableInput/ExpandableInput.js";
29
27
  import "../../../../components/ui/reactHookForm/directory-item-input/directory-item-utils.js";
28
+ import "@hello-pangea/dnd";
29
+ import "../../../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
30
30
  import "../../../../components/ui/snackbarProvider/SnackbarProvider.js";
31
31
  import "mui-nested-menu";
32
32
  import "react-resizable-panels";
33
33
  import "react-papaparse";
34
+ import "../../common/parameter-layout/parameter-layout-provider.js";
34
35
  import { ParameterLineDirectoryItemsInput } from "../../common/widget/parameter-line-directory-items-input.js";
35
36
  import "../../common/widget/parameter-line-slider.js";
36
37
  import "../../common/limitreductions/columns-definitions.js";
@@ -17,31 +17,32 @@ import { Solver } from "./solver/solver-parameters-constants.js";
17
17
  import "./solver/solver-parameters.js";
18
18
  import { MAPPING } from "./mapping/mapping-parameters-constants.js";
19
19
  import "@mui/material";
20
- import "react-intl";
21
20
  import "react";
21
+ import "react-intl";
22
+ import "../../../components/ui/overflowableText/OverflowableText.js";
23
+ import "react-hook-form";
22
24
  import "localized-countries";
23
25
  import "localized-countries/data/fr";
24
26
  import "localized-countries/data/en";
25
27
  import "notistack";
26
- import "react-hook-form";
27
28
  import "../../../components/ui/reactHookForm/provider/CustomFormProvider.js";
28
- import "../../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
29
- import "../../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
30
29
  import "../../../components/ui/treeViewFinder/TreeViewFinder.js";
31
- import "@hello-pangea/dnd";
32
- import "../../../components/ui/overflowableText/OverflowableText.js";
33
30
  import "../../../components/ui/reactHookForm/numbers/RangeInput.js";
34
31
  import "@material-symbols/svg-400/outlined/left_panel_open.svg?react";
35
32
  import "@material-symbols/svg-400/outlined/arrows_output.svg?react";
36
33
  import "@material-symbols/svg-400/outlined/arrows_input.svg?react";
37
34
  import "@material-symbols/svg-400/outlined/left_panel_close.svg?react";
38
35
  import "@material-symbols/svg-400/outlined/add_notes.svg?react";
36
+ import "../../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
39
37
  import "../../../components/ui/reactHookForm/expandableInput/ExpandableInput.js";
40
38
  import "../../../components/ui/reactHookForm/directory-item-input/directory-item-utils.js";
39
+ import "@hello-pangea/dnd";
40
+ import "../../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
41
41
  import "../../../components/ui/snackbarProvider/SnackbarProvider.js";
42
42
  import "mui-nested-menu";
43
43
  import "react-resizable-panels";
44
44
  import "react-papaparse";
45
+ import "../common/parameter-layout/parameter-layout-provider.js";
45
46
  import "../common/widget/parameter-line-slider.js";
46
47
  import "../common/limitreductions/columns-definitions.js";
47
48
  import "../common/contingency-table/contingency-table.js";
@@ -1,9 +1,11 @@
1
+ import { ParameterLayout } from "./common/parameter-layout/parameter-layout.js";
2
+ import { ParameterLayoutProvider, useParameterLayoutContext } from "./common/parameter-layout/parameter-layout-provider.js";
1
3
  import { formatComputingTypeLabel, isValidComputingType } from "./common/computing-type.js";
2
4
  import { COMMON_PARAMETERS, CONTINGENCIES, CONTINGENCY_LISTS, CONTINGENCY_LISTS_INFOS, PARAM_SA_FLOW_PROPORTIONAL_THRESHOLD, PARAM_SA_HIGH_VOLTAGE_ABSOLUTE_THRESHOLD, PARAM_SA_HIGH_VOLTAGE_PROPORTIONAL_THRESHOLD, PARAM_SA_LOW_VOLTAGE_ABSOLUTE_THRESHOLD, PARAM_SA_LOW_VOLTAGE_PROPORTIONAL_THRESHOLD, PARAM_SA_PROVIDER, PROVIDER, SPECIFIC_PARAMETERS, VERSION_PARAMETER, VOLTAGE_LEVEL } from "./common/constants.js";
3
5
  import { LineSeparator } from "./common/line-separator.js";
4
6
  import { LabelledButton, SwitchWithLabel, TabPanel } from "./common/parameters.js";
5
7
  import { CreateParameterDialog } from "./common/parameters-creation-dialog.js";
6
- import { ProviderParam } from "./common/ProviderParam.js";
8
+ import { ProviderParam } from "./common/provider-param.js";
7
9
  import { ParameterFloat } from "./common/widget/parameter-float.js";
8
10
  import { ParameterGroup } from "./common/widget/parameter-group.js";
9
11
  import { ParameterLineDirectoryItemsInput } from "./common/widget/parameter-line-directory-items-input.js";
@@ -163,6 +165,8 @@ export {
163
165
  PSTS_EQUIPMENT_TYPES,
164
166
  ParameterFloat,
165
167
  ParameterGroup,
168
+ ParameterLayout,
169
+ ParameterLayoutProvider,
166
170
  ParameterLineDirectoryItemsInput,
167
171
  ParameterLineSlider,
168
172
  ParameterSwitch,
@@ -242,6 +246,7 @@ export {
242
246
  sanitizePercentageValue,
243
247
  toFormValuesContingencyListsInfos,
244
248
  toFormValuesLimitReductions,
249
+ useParameterLayoutContext,
245
250
  useParametersForm,
246
251
  useTabs
247
252
  };
@@ -35,6 +35,7 @@ import "react-resizable-panels";
35
35
  import "react-papaparse";
36
36
  import { ParameterGroup } from "../common/widget/parameter-group.js";
37
37
  import "../common/widget/parameter-line-slider.js";
38
+ import "../common/parameter-layout/parameter-layout-provider.js";
38
39
  import { COMMON_PARAMETERS, SPECIFIC_PARAMETERS } from "../common/constants.js";
39
40
  import "../common/limitreductions/columns-definitions.js";
40
41
  import "../common/contingency-table/contingency-table.js";
@@ -2,37 +2,38 @@ import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { Box, Grid2 } from "@mui/material";
3
3
  import { TabValues } from "./load-flow-parameters-utils.js";
4
4
  import LoadFlowGeneralParameters from "./load-flow-general-parameters.js";
5
- import "../../../utils/conversionUtils.js";
6
- import "../../../utils/types/equipmentType.js";
7
5
  import "@mui/icons-material";
8
- import { TabPanel } from "../common/parameters.js";
9
6
  import "react";
10
7
  import "react-intl";
8
+ import { TabPanel } from "../common/parameters.js";
9
+ import "../../../components/ui/overflowableText/OverflowableText.js";
10
+ import "../../../utils/conversionUtils.js";
11
+ import "../../../utils/types/equipmentType.js";
12
+ import "react-hook-form";
11
13
  import "localized-countries";
12
14
  import "localized-countries/data/fr";
13
15
  import "localized-countries/data/en";
14
16
  import "notistack";
15
- import "react-hook-form";
16
17
  import "../../../components/ui/reactHookForm/provider/CustomFormProvider.js";
17
- import "../../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
18
- import "../../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
19
- import "../../../components/ui/treeViewFinder/TreeViewFinder.js";
20
- import "@hello-pangea/dnd";
21
- import "../../../components/ui/overflowableText/OverflowableText.js";
22
- import { parametersStyles } from "../parameters-style.js";
23
18
  import "yup";
19
+ import "../../../components/ui/treeViewFinder/TreeViewFinder.js";
24
20
  import "../../../components/ui/reactHookForm/numbers/RangeInput.js";
25
21
  import "@material-symbols/svg-400/outlined/left_panel_open.svg?react";
26
22
  import "@material-symbols/svg-400/outlined/arrows_output.svg?react";
27
23
  import "@material-symbols/svg-400/outlined/arrows_input.svg?react";
28
24
  import "@material-symbols/svg-400/outlined/left_panel_close.svg?react";
29
25
  import "@material-symbols/svg-400/outlined/add_notes.svg?react";
26
+ import "../../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
30
27
  import "../../../components/ui/reactHookForm/expandableInput/ExpandableInput.js";
31
28
  import "../../../components/ui/reactHookForm/directory-item-input/directory-item-utils.js";
29
+ import "@hello-pangea/dnd";
30
+ import "../../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
32
31
  import "../../../components/ui/snackbarProvider/SnackbarProvider.js";
33
32
  import "mui-nested-menu";
34
33
  import "react-resizable-panels";
35
34
  import "react-papaparse";
35
+ import "../common/parameter-layout/parameter-layout-provider.js";
36
+ import { parametersStyles } from "../parameters-style.js";
36
37
  import { ParameterLineSlider } from "../common/widget/parameter-line-slider.js";
37
38
  import "../common/limitreductions/columns-definitions.js";
38
39
  import { LimitReductionsTableForm } from "../common/limitreductions/limit-reductions-table-form.js";
@@ -1,4 +1,5 @@
1
- import { jsx } from "react/jsx-runtime";
1
+ import { jsx, jsxs } 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";
@@ -10,7 +11,6 @@ import { LANG_ENGLISH } from "../../../utils/langs.js";
10
11
  import "@mui/icons-material";
11
12
  import { getLoadFlowDefaultLimitReductions, getLoadFlowProviders, fetchLoadFlowParameters, setLoadFlowParameters, getLoadFlowSpecificParametersDescription } from "../../../services/loadflow.js";
12
13
  import "react";
13
- import "@mui/material";
14
14
  import "react-intl";
15
15
  import "react-hook-form";
16
16
  import "../../../components/ui/treeViewFinder/TreeViewFinder.js";
@@ -84,23 +84,17 @@ function LoadFlowParametersEditionDialog({
84
84
  },
85
85
  titleId,
86
86
  disabledSave: disableSave,
87
- children: /* @__PURE__ */ jsx(LoadFlowProvider, { children: /* @__PURE__ */ jsx(
88
- LoadFlowParametersForm,
89
- {
90
- loadflowMethods,
91
- language,
92
- renderTitleFields: () => {
93
- return /* @__PURE__ */ jsx(
94
- NameElementEditorForm,
95
- {
96
- initialElementName: name,
97
- activeDirectory,
98
- elementType: ElementType.LOADFLOW_PARAMETERS
99
- }
100
- );
87
+ children: /* @__PURE__ */ jsxs(LoadFlowProvider, { children: [
88
+ /* @__PURE__ */ jsx(Grid2, { container: true, sx: { width: "100%" }, children: /* @__PURE__ */ jsx(
89
+ NameElementEditorForm,
90
+ {
91
+ initialElementName: name,
92
+ activeDirectory,
93
+ elementType: ElementType.LOADFLOW_PARAMETERS
101
94
  }
102
- }
103
- ) })
95
+ ) }),
96
+ /* @__PURE__ */ jsx(LoadFlowParametersForm, { loadflowMethods })
97
+ ] })
104
98
  }
105
99
  );
106
100
  }
@@ -1,11 +1,6 @@
1
- import { ReactNode } from 'react';
2
1
  import { UseLoadFlowParametersFormReturn } from './use-load-flow-parameters-form';
3
- import { GsLang } from '../../../utils/langs';
4
2
  interface LoadFlowParametersFormProps {
5
3
  loadflowMethods: UseLoadFlowParametersFormReturn;
6
- language: GsLang;
7
- renderTitleFields?: () => ReactNode;
8
- renderActions?: () => ReactNode;
9
4
  }
10
- export declare function LoadFlowParametersForm({ loadflowMethods, language, renderTitleFields, renderActions, }: Readonly<LoadFlowParametersFormProps>): import("react").JSX.Element;
5
+ export declare function LoadFlowParametersForm({ loadflowMethods }: Readonly<LoadFlowParametersFormProps>): import("react").JSX.Element;
11
6
  export {};
@@ -1,70 +1,10 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
- import { Box, Grid2, LinearProgress } from "@mui/material";
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { Grid2 } from "@mui/material";
3
3
  import LoadFlowParametersHeader from "./load-flow-parameters-header.js";
4
4
  import LoadFlowParametersContent from "./load-flow-parameters-content.js";
5
- import "@mui/icons-material";
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";
11
- import "react-hook-form";
12
- import "localized-countries";
13
- import "localized-countries/data/fr";
14
- import "localized-countries/data/en";
15
- import "notistack";
16
- import { CustomFormProvider } from "../../../components/ui/reactHookForm/provider/CustomFormProvider.js";
17
- import "yup";
18
- import "../../../components/ui/treeViewFinder/TreeViewFinder.js";
19
- import "../../../components/ui/reactHookForm/numbers/RangeInput.js";
20
- import "@material-symbols/svg-400/outlined/left_panel_open.svg?react";
21
- import "@material-symbols/svg-400/outlined/arrows_output.svg?react";
22
- import "@material-symbols/svg-400/outlined/arrows_input.svg?react";
23
- import "@material-symbols/svg-400/outlined/left_panel_close.svg?react";
24
- import "@material-symbols/svg-400/outlined/add_notes.svg?react";
25
- import "../../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
26
- import "../../../components/ui/reactHookForm/expandableInput/ExpandableInput.js";
27
- import "../../../components/ui/reactHookForm/directory-item-input/directory-item-utils.js";
28
- import "@hello-pangea/dnd";
29
- import "../../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
30
- import "../../../components/ui/snackbarProvider/SnackbarProvider.js";
31
- import "mui-nested-menu";
32
- import "react-resizable-panels";
33
- import "react-papaparse";
34
- const styles = {
35
- form: {
36
- height: "100%",
37
- display: "flex",
38
- position: "relative",
39
- flexDirection: "column",
40
- maxHeight: "calc(100% - 5vh)"
41
- },
42
- loadflowParameters: {
43
- flexGrow: 1,
44
- paddingLeft: 1,
45
- overflow: "auto"
46
- },
47
- actions: {
48
- flexGrow: 0
49
- },
50
- content: (theme) => ({
51
- overflowY: "auto",
52
- overflowX: "hidden",
53
- paddingRight: theme.spacing(2),
54
- paddingTop: theme.spacing(2),
55
- paddingBottom: theme.spacing(1),
56
- flexGrow: 1
57
- })
58
- };
59
- function LoadFlowParametersForm({
60
- loadflowMethods,
61
- language,
62
- renderTitleFields,
63
- renderActions
64
- }) {
5
+ import { parametersStyles } from "../parameters-style.js";
6
+ function LoadFlowParametersForm({ loadflowMethods }) {
65
7
  const {
66
- formMethods,
67
- formSchema,
68
8
  selectedTab,
69
9
  handleTabChange,
70
10
  tabIndexesWithError,
@@ -72,34 +12,29 @@ function LoadFlowParametersForm({
72
12
  specificParametersDescriptionForProvider,
73
13
  params,
74
14
  watchProvider,
75
- defaultLimitReductions,
76
- paramsLoaded
15
+ defaultLimitReductions
77
16
  } = loadflowMethods;
78
- return /* @__PURE__ */ jsx(CustomFormProvider, { validationSchema: formSchema, ...formMethods, removeOptional: true, language, children: /* @__PURE__ */ jsxs(Box, { sx: styles.form, children: [
79
- renderTitleFields?.(),
80
- paramsLoaded ? /* @__PURE__ */ jsxs(Box, { sx: styles.loadflowParameters, children: [
81
- /* @__PURE__ */ jsx(
82
- LoadFlowParametersHeader,
83
- {
84
- selectedTab,
85
- handleTabChange,
86
- tabIndexesWithError,
87
- formattedProviders
88
- }
89
- ),
90
- /* @__PURE__ */ jsx(Grid2, { container: true, sx: styles.content, children: /* @__PURE__ */ jsx(
91
- LoadFlowParametersContent,
92
- {
93
- selectedTab,
94
- currentProvider: watchProvider ?? "",
95
- specificParameters: specificParametersDescriptionForProvider,
96
- params,
97
- defaultLimitReductions
98
- }
99
- ) })
100
- ] }) : /* @__PURE__ */ jsx(LinearProgress, {}),
101
- renderActions && /* @__PURE__ */ jsx(Box, { sx: styles.actions, children: renderActions() })
102
- ] }) });
17
+ return /* @__PURE__ */ jsxs(Grid2, { container: true, sx: parametersStyles.scrollableGrid, children: [
18
+ /* @__PURE__ */ jsx(Grid2, { size: 12, children: /* @__PURE__ */ jsx(
19
+ LoadFlowParametersHeader,
20
+ {
21
+ selectedTab,
22
+ handleTabChange,
23
+ tabIndexesWithError,
24
+ formattedProviders
25
+ }
26
+ ) }),
27
+ /* @__PURE__ */ jsx(Grid2, { size: 12, children: /* @__PURE__ */ jsx(
28
+ LoadFlowParametersContent,
29
+ {
30
+ selectedTab,
31
+ currentProvider: watchProvider ?? "",
32
+ specificParameters: specificParametersDescriptionForProvider,
33
+ params,
34
+ defaultLimitReductions
35
+ }
36
+ ) })
37
+ ] });
103
38
  }
104
39
  export {
105
40
  LoadFlowParametersForm
@@ -1,13 +1,13 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
- import { Box, Grid2, Tabs, Tab } from "@mui/material";
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { Stack, Tabs, Tab } from "@mui/material";
3
3
  import { FormattedMessage } from "react-intl";
4
4
  import { TabValues } from "./load-flow-parameters-utils.js";
5
- import { parametersStyles, getTabStyle } from "../parameters-style.js";
5
+ import { getTabStyle } from "../parameters-style.js";
6
6
  import "@mui/icons-material";
7
+ import "react";
7
8
  import "../../../components/ui/overflowableText/OverflowableText.js";
8
9
  import "../../../utils/conversionUtils.js";
9
10
  import "../../../utils/types/equipmentType.js";
10
- import "react";
11
11
  import "react-hook-form";
12
12
  import "localized-countries";
13
13
  import "localized-countries/data/fr";
@@ -17,7 +17,6 @@ import "../../../components/ui/reactHookForm/provider/CustomFormProvider.js";
17
17
  import "yup";
18
18
  import "../../../components/ui/treeViewFinder/TreeViewFinder.js";
19
19
  import "../../../components/ui/reactHookForm/numbers/RangeInput.js";
20
- import { MuiSelectInput } from "../../../components/ui/reactHookForm/selectInputs/MuiSelectInput.js";
21
20
  import "@material-symbols/svg-400/outlined/left_panel_open.svg?react";
22
21
  import "@material-symbols/svg-400/outlined/arrows_output.svg?react";
23
22
  import "@material-symbols/svg-400/outlined/arrows_input.svg?react";
@@ -32,8 +31,8 @@ import "../../../components/ui/snackbarProvider/SnackbarProvider.js";
32
31
  import "mui-nested-menu";
33
32
  import "react-resizable-panels";
34
33
  import "react-papaparse";
35
- import { PROVIDER } from "../common/constants.js";
36
- import { LineSeparator } from "../common/line-separator.js";
34
+ import "../common/parameter-layout/parameter-layout-provider.js";
35
+ import { ProviderParam } from "../common/provider-param.js";
37
36
  import "../common/widget/parameter-line-slider.js";
38
37
  import "../common/limitreductions/columns-definitions.js";
39
38
  import "../common/contingency-table/contingency-table.js";
@@ -46,52 +45,29 @@ function LoadFlowParametersHeader({
46
45
  tabIndexesWithError,
47
46
  formattedProviders
48
47
  }) {
49
- return /* @__PURE__ */ jsx(Box, { sx: { flexGrow: 0, paddingLeft: 1, paddingTop: 1 }, children: /* @__PURE__ */ jsxs(
50
- Grid2,
51
- {
52
- container: true,
53
- spacing: 1,
54
- sx: {
55
- padding: 0,
56
- paddingBottom: 0,
57
- height: "fit-content"
58
- },
59
- justifyContent: "space-between",
60
- children: [
61
- /* @__PURE__ */ jsx(Grid2, { size: "grow", sx: parametersStyles.parameterName, children: /* @__PURE__ */ jsx(FormattedMessage, { id: "Provider" }) }),
62
- /* @__PURE__ */ jsx(Grid2, { container: true, size: "auto", sx: { justifyContent: "flex-end" }, children: /* @__PURE__ */ jsx(
63
- MuiSelectInput,
64
- {
65
- "data-testid": "LfProvider",
66
- name: PROVIDER,
67
- size: "small",
68
- options: Object.values(formattedProviders)
69
- }
70
- ) }),
71
- /* @__PURE__ */ jsx(LineSeparator, {}),
72
- /* @__PURE__ */ jsx(Grid2, { size: 12, children: /* @__PURE__ */ jsxs(Tabs, { value: selectedTab, onChange: handleTabChange, children: [
73
- /* @__PURE__ */ jsx(
74
- Tab,
75
- {
76
- label: /* @__PURE__ */ jsx(FormattedMessage, { id: TabValues.GENERAL }),
77
- value: TabValues.GENERAL,
78
- sx: getTabStyle(tabIndexesWithError, TabValues.GENERAL),
79
- "data-testid": "LfGeneralTab"
80
- }
81
- ),
82
- /* @__PURE__ */ jsx(
83
- Tab,
84
- {
85
- label: /* @__PURE__ */ jsx(FormattedMessage, { id: TabValues.LIMIT_REDUCTIONS }),
86
- value: TabValues.LIMIT_REDUCTIONS,
87
- sx: getTabStyle(tabIndexesWithError, TabValues.LIMIT_REDUCTIONS),
88
- "data-testid": "LfLimitReductionsTab"
89
- }
90
- )
91
- ] }) })
92
- ]
93
- }
94
- ) });
48
+ return /* @__PURE__ */ jsxs(Stack, { children: [
49
+ /* @__PURE__ */ jsx(ProviderParam, { options: formattedProviders, id: "Lf" }),
50
+ /* @__PURE__ */ jsxs(Tabs, { value: selectedTab, onChange: handleTabChange, children: [
51
+ /* @__PURE__ */ jsx(
52
+ Tab,
53
+ {
54
+ label: /* @__PURE__ */ jsx(FormattedMessage, { id: TabValues.GENERAL }),
55
+ value: TabValues.GENERAL,
56
+ sx: getTabStyle(tabIndexesWithError, TabValues.GENERAL),
57
+ "data-testid": "LfGeneralTab"
58
+ }
59
+ ),
60
+ /* @__PURE__ */ jsx(
61
+ Tab,
62
+ {
63
+ label: /* @__PURE__ */ jsx(FormattedMessage, { id: TabValues.LIMIT_REDUCTIONS }),
64
+ value: TabValues.LIMIT_REDUCTIONS,
65
+ sx: getTabStyle(tabIndexesWithError, TabValues.LIMIT_REDUCTIONS),
66
+ "data-testid": "LfLimitReductionsTab"
67
+ }
68
+ )
69
+ ] })
70
+ ] });
95
71
  }
96
72
  export {
97
73
  LoadFlowParametersHeader as default