@gridsuite/commons-ui 0.136.1 → 0.138.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 (127) hide show
  1. package/README.md +1 -1
  2. package/dist/components/dialogs/elementSaveDialog/ElementSaveDialog.js +4 -4
  3. package/dist/components/dnd-table/dnd-table-add-rows-dialog.js +4 -4
  4. package/dist/components/dnd-table/dnd-table.js +1 -0
  5. package/dist/components/elementSearch/elementItem/EquipmentItem.js +2 -2
  6. package/dist/components/elementSearch/tagRenderer/TagRenderer.js +2 -2
  7. package/dist/components/filter/HeaderFilterForm.js +4 -4
  8. package/dist/components/filter/expert/expertFilterConstants.d.ts +2 -51
  9. package/dist/components/filter/utils/filterFormUtils.d.ts +2 -5
  10. package/dist/components/filter/utils/filterFormUtils.js +2 -5
  11. package/dist/components/index.js +7 -5
  12. package/dist/components/inputs/index.js +4 -0
  13. package/dist/components/inputs/reactHookForm/DirectoryItemsInput.d.ts +7 -4
  14. package/dist/components/inputs/reactHookForm/DirectoryItemsInput.js +28 -45
  15. package/dist/components/inputs/reactHookForm/OverflowableChip.d.ts +4 -0
  16. package/dist/components/inputs/reactHookForm/OverflowableChip.js +25 -0
  17. package/dist/components/inputs/reactHookForm/OverflowableChipWithHelperText.d.ts +5 -0
  18. package/dist/components/inputs/reactHookForm/OverflowableChipWithHelperText.js +15 -0
  19. package/dist/components/inputs/reactHookForm/index.d.ts +2 -0
  20. package/dist/components/inputs/reactHookForm/index.js +4 -0
  21. package/dist/components/menus/custom-nested-menu.js +25 -1
  22. package/dist/components/overflowableText/OverflowableText.d.ts +1 -1
  23. package/dist/components/overflowableText/OverflowableText.js +8 -10
  24. package/dist/components/parameters/common/ProviderParam.js +4 -4
  25. package/dist/components/parameters/common/limitreductions/limit-reduction-table-cell.js +4 -4
  26. package/dist/components/parameters/common/limitreductions/limit-reductions-table-form.js +4 -4
  27. package/dist/components/parameters/common/name-element-editor/name-element-editor-utils.js +4 -4
  28. package/dist/components/parameters/common/voltage-level-table/custom-voltage-level-table-cell.js +4 -4
  29. package/dist/components/parameters/common/widget/parameter-float.js +4 -4
  30. package/dist/components/parameters/common/widget/parameter-line-directory-items-input.d.ts +2 -1
  31. package/dist/components/parameters/common/widget/parameter-line-directory-items-input.js +5 -3
  32. package/dist/components/parameters/common/widget/parameter-line-slider.js +4 -4
  33. package/dist/components/parameters/index.d.ts +1 -0
  34. package/dist/components/parameters/index.js +3 -5
  35. package/dist/components/parameters/loadflow/load-flow-general-parameters.js +4 -4
  36. package/dist/components/parameters/loadflow/load-flow-parameter-field.js +4 -4
  37. package/dist/components/parameters/loadflow/load-flow-parameters-content.js +4 -4
  38. package/dist/components/parameters/loadflow/load-flow-parameters-dialog.js +4 -4
  39. package/dist/components/parameters/loadflow/load-flow-parameters-form.js +4 -4
  40. package/dist/components/parameters/loadflow/load-flow-parameters-header.js +4 -4
  41. package/dist/components/parameters/loadflow/load-flow-parameters-inline.js +4 -4
  42. package/dist/components/parameters/loadflow/load-flow-parameters-utils.js +4 -4
  43. package/dist/components/parameters/loadflow/use-load-flow-parameters-form.js +4 -4
  44. package/dist/components/parameters/network-visualizations/map-parameters.js +4 -4
  45. package/dist/components/parameters/network-visualizations/network-area-diagram-parameters.js +4 -4
  46. package/dist/components/parameters/network-visualizations/network-visualizations-form.js +4 -4
  47. package/dist/components/parameters/network-visualizations/network-visualizations-parameters-dialog.js +4 -4
  48. package/dist/components/parameters/network-visualizations/network-visualizations-parameters-inline.js +4 -4
  49. package/dist/components/parameters/network-visualizations/single-line-diagram-parameters.js +4 -4
  50. package/dist/components/parameters/network-visualizations/use-network-visualizations-parameters-form.js +4 -4
  51. package/dist/components/parameters/pcc-min/index.d.ts +7 -0
  52. package/dist/components/parameters/pcc-min/index.js +4 -0
  53. package/dist/components/parameters/pcc-min/pcc-min-form-utils.d.ts +4 -0
  54. package/dist/components/parameters/pcc-min/pcc-min-form-utils.js +54 -0
  55. package/dist/components/parameters/pcc-min/pcc-min-parameters-form.d.ts +29 -0
  56. package/dist/components/parameters/pcc-min/pcc-min-parameters-form.js +114 -0
  57. package/dist/components/parameters/pcc-min/pcc-min-parameters-inline.d.ts +7 -0
  58. package/dist/components/parameters/pcc-min/pcc-min-parameters-inline.js +98 -0
  59. package/dist/components/parameters/pcc-min/use-pcc-min-parameters-form.d.ts +19 -0
  60. package/dist/components/parameters/pcc-min/use-pcc-min-parameters-form.js +104 -0
  61. package/dist/components/parameters/security-analysis/security-analysis-parameters-dialog.js +4 -4
  62. package/dist/components/parameters/security-analysis/security-analysis-parameters-form.js +4 -4
  63. package/dist/components/parameters/security-analysis/security-analysis-parameters-inline.js +4 -4
  64. package/dist/components/parameters/security-analysis/security-analysis-parameters-selector.js +4 -4
  65. package/dist/components/parameters/security-analysis/security-analysis-violations-hiding.js +4 -4
  66. package/dist/components/parameters/security-analysis/use-security-analysis-parameters-form.js +4 -4
  67. package/dist/components/parameters/sensi/sensitivity-Flow-parameters.js +4 -4
  68. package/dist/components/parameters/sensi/sensitivity-analysis-parameters-dialog.js +4 -4
  69. package/dist/components/parameters/sensi/sensitivity-analysis-parameters-form.js +4 -4
  70. package/dist/components/parameters/sensi/sensitivity-analysis-parameters-inline.js +4 -4
  71. package/dist/components/parameters/sensi/sensitivity-parameters-selector.js +4 -4
  72. package/dist/components/parameters/sensi/sensitivity-table.js +4 -4
  73. package/dist/components/parameters/sensi/table-cell.js +1 -1
  74. package/dist/components/parameters/sensi/use-sensitivity-analysis-parameters.js +4 -4
  75. package/dist/components/parameters/sensi/utils.d.ts +1 -1
  76. package/dist/components/parameters/sensi/utils.js +5 -7
  77. package/dist/components/parameters/short-circuit/short-circuit-fields.js +4 -4
  78. package/dist/components/parameters/short-circuit/short-circuit-parameters-dialog.js +4 -4
  79. package/dist/components/parameters/short-circuit/short-circuit-parameters-form.js +4 -4
  80. package/dist/components/parameters/short-circuit/short-circuit-parameters-inline.js +4 -4
  81. package/dist/components/parameters/short-circuit/use-short-circuit-parameters-form.js +4 -4
  82. package/dist/components/parameters/voltage-init/constants.d.ts +0 -4
  83. package/dist/components/parameters/voltage-init/constants.js +0 -8
  84. package/dist/components/parameters/voltage-init/equipment-selection-parameters.js +4 -4
  85. package/dist/components/parameters/voltage-init/general-parameters.js +4 -4
  86. package/dist/components/parameters/voltage-init/index.js +1 -5
  87. package/dist/components/parameters/voltage-init/use-voltage-init-parameters-form.js +6 -5
  88. package/dist/components/parameters/voltage-init/voltage-init-form-utils.js +6 -5
  89. package/dist/components/parameters/voltage-init/voltage-init-parameters-dialog.js +4 -4
  90. package/dist/components/parameters/voltage-init/voltage-init-parameters-form.js +4 -4
  91. package/dist/components/parameters/voltage-init/voltage-init-parameters-inline.js +4 -4
  92. package/dist/components/parameters/voltage-init/voltage-init.type.d.ts +2 -6
  93. package/dist/components/parameters/voltage-init/voltage-limits-parameters.js +6 -5
  94. package/dist/index.js +20 -3
  95. package/dist/services/index.d.ts +1 -0
  96. package/dist/services/index.js +3 -0
  97. package/dist/services/pcc-min.d.ts +7 -0
  98. package/dist/services/pcc-min.js +25 -0
  99. package/dist/translations/en/equipmentSearchEn.d.ts +0 -17
  100. package/dist/translations/en/equipmentSearchEn.js +1 -18
  101. package/dist/translations/en/equipmentShortEn.d.ts +28 -0
  102. package/dist/translations/en/equipmentShortEn.js +25 -0
  103. package/dist/translations/en/equipmentTagEn.d.ts +28 -0
  104. package/dist/translations/en/equipmentTagEn.js +25 -0
  105. package/dist/translations/en/index.d.ts +2 -0
  106. package/dist/translations/en/index.js +4 -0
  107. package/dist/translations/en/parameters.d.ts +3 -0
  108. package/dist/translations/en/parameters.js +4 -1
  109. package/dist/translations/fr/equipmentSearchFr.d.ts +0 -17
  110. package/dist/translations/fr/equipmentSearchFr.js +1 -18
  111. package/dist/translations/fr/equipmentShortFr.d.ts +28 -0
  112. package/dist/translations/fr/equipmentShortFr.js +25 -0
  113. package/dist/translations/fr/equipmentTagFr.d.ts +28 -0
  114. package/dist/translations/fr/equipmentTagFr.js +25 -0
  115. package/dist/translations/fr/index.d.ts +2 -0
  116. package/dist/translations/fr/index.js +4 -0
  117. package/dist/translations/fr/parameters.d.ts +3 -0
  118. package/dist/translations/fr/parameters.js +4 -1
  119. package/dist/utils/constants/filterConstant.d.ts +9 -0
  120. package/dist/utils/constants/filterConstant.js +10 -0
  121. package/dist/utils/constants/index.d.ts +1 -0
  122. package/dist/utils/constants/index.js +5 -0
  123. package/dist/utils/index.js +6 -2
  124. package/dist/utils/types/equipmentType.d.ts +7 -165
  125. package/dist/utils/types/equipmentType.js +90 -151
  126. package/dist/utils/types/index.js +1 -2
  127. package/package.json +1 -1
@@ -3,6 +3,7 @@ import { Grid } from "@mui/material";
3
3
  import { FormattedMessage } from "react-intl";
4
4
  import { NAD_POSITIONS_GENERATION_MODE_LABEL, NetworkVisualizationTabValues, PARAM_NAD_POSITIONS_GENERATION_MODE, NAD_POSITIONS_GENERATION_MODE } from "./constants.js";
5
5
  import { parametersStyles } from "../parameters-style.js";
6
+ import "../../overflowableText/OverflowableText.js";
6
7
  import "react";
7
8
  import "react-hook-form";
8
9
  import "../../../utils/types/equipmentType.js";
@@ -15,11 +16,7 @@ import "localized-countries/data/en";
15
16
  import "notistack";
16
17
  import "../../inputs/reactHookForm/provider/CustomFormProvider.js";
17
18
  import "yup";
18
- import "../../overflowableText/OverflowableText.js";
19
19
  import "../../treeViewFinder/TreeViewFinder.js";
20
- import "react-querybuilder";
21
- import "uuid";
22
- import "../../filter/expert/expertFilterConstants.js";
23
20
  import "../../inputs/reactHookForm/agGridTable/BottomRightButtons.js";
24
21
  import "../../customAGGrid/customAggrid.js";
25
22
  import "ag-grid-community";
@@ -28,8 +25,11 @@ import "react-csv-downloader";
28
25
  import "../../inputs/reactHookForm/numbers/RangeInput.js";
29
26
  import { MuiSelectInput } from "../../inputs/reactHookForm/selectInputs/MuiSelectInput.js";
30
27
  import "@react-querybuilder/material";
28
+ import "../../filter/expert/expertFilterConstants.js";
31
29
  import "../../inputs/reactQueryBuilder/CustomReactQueryBuilder.js";
30
+ import "uuid";
32
31
  import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
32
+ import "react-querybuilder";
33
33
  function NetworkAreaDiagramParameters() {
34
34
  return /* @__PURE__ */ jsxs(
35
35
  Grid,
@@ -2,6 +2,7 @@ import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { Grid, LinearProgress, Tabs, Tab } from "@mui/material";
3
3
  import { useState, useEffect } from "react";
4
4
  import { FormattedMessage } from "react-intl";
5
+ import "../../overflowableText/OverflowableText.js";
5
6
  import "react-hook-form";
6
7
  import "../../../utils/types/equipmentType.js";
7
8
  import "../../../utils/conversionUtils.js";
@@ -14,11 +15,7 @@ import "localized-countries/data/en";
14
15
  import "notistack";
15
16
  import { CustomFormProvider } from "../../inputs/reactHookForm/provider/CustomFormProvider.js";
16
17
  import "yup";
17
- import "../../overflowableText/OverflowableText.js";
18
18
  import "../../treeViewFinder/TreeViewFinder.js";
19
- import "react-querybuilder";
20
- import "uuid";
21
- import "../../filter/expert/expertFilterConstants.js";
22
19
  import "../../inputs/reactHookForm/agGridTable/BottomRightButtons.js";
23
20
  import "../../customAGGrid/customAggrid.js";
24
21
  import "ag-grid-community";
@@ -26,8 +23,11 @@ import "react-papaparse";
26
23
  import "react-csv-downloader";
27
24
  import "../../inputs/reactHookForm/numbers/RangeInput.js";
28
25
  import "@react-querybuilder/material";
26
+ import "../../filter/expert/expertFilterConstants.js";
29
27
  import "../../inputs/reactQueryBuilder/CustomReactQueryBuilder.js";
28
+ import "uuid";
30
29
  import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
30
+ import "react-querybuilder";
31
31
  import { NetworkVisualizationTabValues } from "./constants.js";
32
32
  import { MapParameters } from "./map-parameters.js";
33
33
  import { SingleLineDiagramParameters } from "./single-line-diagram-parameters.js";
@@ -16,15 +16,12 @@ import "../../../utils/yupConfig.js";
16
16
  import { NetworkVisualizationParametersForm } from "./network-visualizations-form.js";
17
17
  import { useNetworkVisualizationParametersForm } from "./use-network-visualizations-parameters-form.js";
18
18
  import { NameElementEditorForm } from "../common/name-element-editor/name-element-editor-form.js";
19
+ import "../../overflowableText/OverflowableText.js";
19
20
  import "localized-countries";
20
21
  import "localized-countries/data/fr";
21
22
  import "localized-countries/data/en";
22
23
  import "../../inputs/reactHookForm/provider/CustomFormProvider.js";
23
24
  import "yup";
24
- import "../../overflowableText/OverflowableText.js";
25
- import "react-querybuilder";
26
- import "uuid";
27
- import "../../filter/expert/expertFilterConstants.js";
28
25
  import "../../inputs/reactHookForm/agGridTable/BottomRightButtons.js";
29
26
  import "../../customAGGrid/customAggrid.js";
30
27
  import "ag-grid-community";
@@ -32,8 +29,11 @@ import "react-papaparse";
32
29
  import "react-csv-downloader";
33
30
  import "../../inputs/reactHookForm/numbers/RangeInput.js";
34
31
  import "@react-querybuilder/material";
32
+ import "../../filter/expert/expertFilterConstants.js";
35
33
  import "../../inputs/reactQueryBuilder/CustomReactQueryBuilder.js";
34
+ import "uuid";
36
35
  import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
36
+ import "react-querybuilder";
37
37
  function NetworkVisualizationsParametersEditionDialog({
38
38
  id,
39
39
  open,
@@ -13,14 +13,11 @@ import "localized-countries/data/fr";
13
13
  import "localized-countries/data/en";
14
14
  import { useSnackMessage } from "../../../hooks/useSnackMessage.js";
15
15
  import "react-hook-form";
16
+ import "../../overflowableText/OverflowableText.js";
16
17
  import "../../inputs/reactHookForm/provider/CustomFormProvider.js";
17
18
  import { SubmitButton } from "../../inputs/reactHookForm/utils/SubmitButton.js";
18
19
  import "yup";
19
- import "../../overflowableText/OverflowableText.js";
20
20
  import { DirectoryItemSelector } from "../../directoryItemSelector/DirectoryItemSelector.js";
21
- import "react-querybuilder";
22
- import "uuid";
23
- import "../../filter/expert/expertFilterConstants.js";
24
21
  import "../../inputs/reactHookForm/agGridTable/BottomRightButtons.js";
25
22
  import "../../customAGGrid/customAggrid.js";
26
23
  import "ag-grid-community";
@@ -28,8 +25,11 @@ import "react-papaparse";
28
25
  import "react-csv-downloader";
29
26
  import "../../inputs/reactHookForm/numbers/RangeInput.js";
30
27
  import "@react-querybuilder/material";
28
+ import "../../filter/expert/expertFilterConstants.js";
31
29
  import "../../inputs/reactQueryBuilder/CustomReactQueryBuilder.js";
30
+ import "uuid";
32
31
  import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
32
+ import "react-querybuilder";
33
33
  import { LabelledButton } from "../common/parameters.js";
34
34
  import { CreateParameterDialog } from "../common/parameters-creation-dialog.js";
35
35
  import "../common/widget/parameter-line-slider.js";
@@ -17,11 +17,8 @@ import "../../inputs/reactHookForm/provider/CustomFormProvider.js";
17
17
  import "../../dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
18
18
  import "../../dialogs/elementSaveDialog/ElementSaveDialog.js";
19
19
  import "../../treeViewFinder/TreeViewFinder.js";
20
- import "yup";
21
20
  import "../../overflowableText/OverflowableText.js";
22
- import "react-querybuilder";
23
- import "uuid";
24
- import "../../filter/expert/expertFilterConstants.js";
21
+ import "yup";
25
22
  import "../../inputs/reactHookForm/agGridTable/BottomRightButtons.js";
26
23
  import "../../customAGGrid/customAggrid.js";
27
24
  import "ag-grid-community";
@@ -31,8 +28,11 @@ import { SwitchInput } from "../../inputs/reactHookForm/booleans/SwitchInput.js"
31
28
  import "../../inputs/reactHookForm/numbers/RangeInput.js";
32
29
  import { MuiSelectInput } from "../../inputs/reactHookForm/selectInputs/MuiSelectInput.js";
33
30
  import "@react-querybuilder/material";
31
+ import "../../filter/expert/expertFilterConstants.js";
34
32
  import "../../inputs/reactQueryBuilder/CustomReactQueryBuilder.js";
33
+ import "uuid";
35
34
  import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
35
+ import "react-querybuilder";
36
36
  import "../common/widget/parameter-line-slider.js";
37
37
  import "../common/limitreductions/columns-definitions.js";
38
38
  import { INTL_SUBSTATION_LAYOUT_OPTIONS, SUBSTATION_LAYOUT, NetworkVisualizationTabValues, PARAM_SUBSTATION_LAYOUT, COMPONENT_LIBRARY, PARAM_COMPONENT_LIBRARY, DIAGONAL_LABEL, PARAM_DIAGONAL_LABEL, CENTER_LABEL, PARAM_CENTER_LABEL } from "./constants.js";
@@ -5,6 +5,7 @@ import "../../../utils/yupConfig.js";
5
5
  import "react/jsx-runtime";
6
6
  import "react-intl";
7
7
  import "@mui/material";
8
+ import "../../overflowableText/OverflowableText.js";
8
9
  import "../../../utils/types/equipmentType.js";
9
10
  import { updateParameter } from "../../../services/explore.js";
10
11
  import "../../../utils/conversionUtils.js";
@@ -18,12 +19,8 @@ import "localized-countries/data/en";
18
19
  import { useSnackMessage } from "../../../hooks/useSnackMessage.js";
19
20
  import "../../inputs/reactHookForm/provider/CustomFormProvider.js";
20
21
  import * as yup from "yup";
21
- import "../../overflowableText/OverflowableText.js";
22
22
  import "../../treeViewFinder/TreeViewFinder.js";
23
23
  import { DESCRIPTION, NAME } from "../../inputs/reactHookForm/constants.js";
24
- import "react-querybuilder";
25
- import "uuid";
26
- import "../../filter/expert/expertFilterConstants.js";
27
24
  import "../../inputs/reactHookForm/agGridTable/BottomRightButtons.js";
28
25
  import "../../customAGGrid/customAggrid.js";
29
26
  import "ag-grid-community";
@@ -31,8 +28,11 @@ import "react-papaparse";
31
28
  import "react-csv-downloader";
32
29
  import "../../inputs/reactHookForm/numbers/RangeInput.js";
33
30
  import "@react-querybuilder/material";
31
+ import "../../filter/expert/expertFilterConstants.js";
34
32
  import "../../inputs/reactQueryBuilder/CustomReactQueryBuilder.js";
33
+ import "uuid";
35
34
  import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
35
+ import "react-querybuilder";
36
36
  import { NetworkVisualizationTabValues, PARAM_NAD_POSITIONS_GENERATION_MODE, PARAM_COMPONENT_LIBRARY, PARAM_SUBSTATION_LAYOUT, PARAM_CENTER_LABEL, PARAM_DIAGONAL_LABEL, PARAM_MAP_BASEMAP, PARAM_MAP_MANUAL_REFRESH, PARAM_LINE_FLOW_MODE, PARAM_LINE_PARALLEL_PATH, PARAM_LINE_FULL_PATH } from "./constants.js";
37
37
  import "../../filter/HeaderFilterForm.js";
38
38
  import { getNameElementEditorSchema, getNameElementEditorEmptyFormData } from "../common/name-element-editor/name-element-editor-utils.js";
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Copyright (c) 2025, RTE (http://www.rte-france.com)
3
+ * This Source Code Form is subject to the terms of the Mozilla Public
4
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
5
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/.
6
+ */
7
+ export * from './pcc-min-parameters-inline';
@@ -0,0 +1,4 @@
1
+ import { PccMinParametersInLine } from "./pcc-min-parameters-inline.js";
2
+ export {
3
+ PccMinParametersInLine
4
+ };
@@ -0,0 +1,4 @@
1
+ import { PccMinParameters } from '../../../services';
2
+ export declare const fromPccMinParametersFormToParamValues: (newParams: Record<string, any>) => PccMinParameters | null;
3
+ export declare const fromPccMinParamsDataToFormValues: (parameters: PccMinParameters | null) => Record<string, any>;
4
+ export declare const fromStudyPccMinParamsDataToFormValues: (parameters: PccMinParameters | null) => Record<string, any>;
@@ -0,0 +1,54 @@
1
+ import { FILTERS, ID, FILTER_NAME, FILTER_ID } from "../../../utils/constants/filterConstant.js";
2
+ import "react/jsx-runtime";
3
+ import "react-intl";
4
+ import "@mui/material";
5
+ import "../../overflowableText/OverflowableText.js";
6
+ import "react";
7
+ import "react-hook-form";
8
+ import "../../../utils/types/equipmentType.js";
9
+ import "../../../utils/conversionUtils.js";
10
+ import "@mui/icons-material";
11
+ import "../../../utils/yupConfig.js";
12
+ import "localized-countries";
13
+ import "localized-countries/data/fr";
14
+ import "localized-countries/data/en";
15
+ import "notistack";
16
+ import "../../inputs/reactHookForm/provider/CustomFormProvider.js";
17
+ import "yup";
18
+ import "../../treeViewFinder/TreeViewFinder.js";
19
+ import { NAME } from "../../inputs/reactHookForm/constants.js";
20
+ import "../../inputs/reactHookForm/agGridTable/BottomRightButtons.js";
21
+ import "../../customAGGrid/customAggrid.js";
22
+ import "ag-grid-community";
23
+ import "react-papaparse";
24
+ import "react-csv-downloader";
25
+ import "../../inputs/reactHookForm/numbers/RangeInput.js";
26
+ import "@react-querybuilder/material";
27
+ import "../../filter/expert/expertFilterConstants.js";
28
+ import "../../inputs/reactQueryBuilder/CustomReactQueryBuilder.js";
29
+ import "uuid";
30
+ import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
31
+ import "react-querybuilder";
32
+ const fromPccMinParametersFormToParamValues = (newParams) => ({
33
+ filters: newParams[FILTERS]?.map((filter) => ({
34
+ filterId: filter[ID],
35
+ filterName: filter[NAME]
36
+ })) ?? []
37
+ });
38
+ const fromPccMinParamsDataToFormValues = (parameters) => ({
39
+ [FILTERS]: parameters?.[FILTERS]?.map((filter) => ({
40
+ [ID]: filter[FILTER_ID],
41
+ [NAME]: filter[FILTER_NAME]
42
+ })) ?? []
43
+ });
44
+ const fromStudyPccMinParamsDataToFormValues = (parameters) => ({
45
+ [FILTERS]: parameters?.[FILTERS]?.map((filter) => ({
46
+ [ID]: filter[FILTER_ID],
47
+ [NAME]: filter[FILTER_NAME]
48
+ })) ?? []
49
+ });
50
+ export {
51
+ fromPccMinParametersFormToParamValues,
52
+ fromPccMinParamsDataToFormValues,
53
+ fromStudyPccMinParamsDataToFormValues
54
+ };
@@ -0,0 +1,29 @@
1
+ import { ReactNode } from 'react';
2
+ import { UsePccMinParametersFormReturn } from './use-pcc-min-parameters-form';
3
+ export declare const styles: {
4
+ readonly gridWithActions: (theme: import('@mui/material').Theme) => {
5
+ overflowY: "auto";
6
+ overflowX: "hidden";
7
+ paddingRight: string;
8
+ paddingTop: string;
9
+ paddingBottom: string;
10
+ flexGrow: number;
11
+ maxHeight: string;
12
+ };
13
+ readonly gridWithoutActions: (theme: import('@mui/material').Theme) => {
14
+ overflowY: "auto";
15
+ overflowX: "hidden";
16
+ paddingRight: string;
17
+ paddingTop: string;
18
+ paddingBottom: string;
19
+ flexGrow: number;
20
+ maxHeight: string;
21
+ };
22
+ };
23
+ interface PccMinParametersFormProps {
24
+ pccMinMethods: UsePccMinParametersFormReturn;
25
+ renderTitleFields?: () => ReactNode;
26
+ renderActions?: () => ReactNode;
27
+ }
28
+ export declare function PccMinParametersForm({ pccMinMethods, renderTitleFields, renderActions, }: Readonly<PccMinParametersFormProps>): import("react/jsx-runtime").JSX.Element;
29
+ export {};
@@ -0,0 +1,114 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { Box, Grid, LinearProgress } from "@mui/material";
3
+ import "react-intl";
4
+ import "../../overflowableText/OverflowableText.js";
5
+ import "react";
6
+ import "react-hook-form";
7
+ import { EquipmentType } from "../../../utils/types/equipmentType.js";
8
+ import { FILTERS } from "../../../utils/constants/filterConstant.js";
9
+ import "../../../utils/conversionUtils.js";
10
+ import "@mui/icons-material";
11
+ import { ElementType } from "../../../utils/types/elementType.js";
12
+ import "../../../utils/yupConfig.js";
13
+ import "localized-countries";
14
+ import "localized-countries/data/fr";
15
+ import "localized-countries/data/en";
16
+ import "notistack";
17
+ import { CustomFormProvider } from "../../inputs/reactHookForm/provider/CustomFormProvider.js";
18
+ import "yup";
19
+ import "../../treeViewFinder/TreeViewFinder.js";
20
+ import "../../inputs/reactHookForm/agGridTable/BottomRightButtons.js";
21
+ import "../../customAGGrid/customAggrid.js";
22
+ import "ag-grid-community";
23
+ import "react-papaparse";
24
+ import "react-csv-downloader";
25
+ import "../../inputs/reactHookForm/numbers/RangeInput.js";
26
+ import "@react-querybuilder/material";
27
+ import "../../filter/expert/expertFilterConstants.js";
28
+ import "../../inputs/reactQueryBuilder/CustomReactQueryBuilder.js";
29
+ import "uuid";
30
+ import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
31
+ import "react-querybuilder";
32
+ import "../../dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
33
+ import "../../dialogs/elementSaveDialog/ElementSaveDialog.js";
34
+ import { ParameterLineDirectoryItemsInput } from "../common/widget/parameter-line-directory-items-input.js";
35
+ import "../common/widget/parameter-line-slider.js";
36
+ import "../common/limitreductions/columns-definitions.js";
37
+ const styles = {
38
+ gridWithActions: (theme) => ({
39
+ overflowY: "auto",
40
+ overflowX: "hidden",
41
+ paddingRight: theme.spacing(2),
42
+ paddingTop: theme.spacing(2),
43
+ paddingBottom: theme.spacing(1),
44
+ flexGrow: 1,
45
+ maxHeight: "85%"
46
+ }),
47
+ gridWithoutActions: (theme) => ({
48
+ overflowY: "auto",
49
+ overflowX: "hidden",
50
+ paddingRight: theme.spacing(2),
51
+ paddingTop: theme.spacing(2),
52
+ paddingBottom: theme.spacing(1),
53
+ flexGrow: 1,
54
+ maxHeight: "100%"
55
+ })
56
+ };
57
+ function PccMinParametersForm({
58
+ pccMinMethods,
59
+ renderTitleFields,
60
+ renderActions
61
+ }) {
62
+ const { formMethods, formSchema, paramsLoading } = pccMinMethods;
63
+ return /* @__PURE__ */ jsx(CustomFormProvider, { validationSchema: formSchema, ...formMethods, removeOptional: true, children: /* @__PURE__ */ jsxs(
64
+ Box,
65
+ {
66
+ sx: {
67
+ height: "100%",
68
+ position: "relative"
69
+ },
70
+ children: [
71
+ /* @__PURE__ */ jsxs(Grid, { item: true, container: true, sx: renderActions ? styles.gridWithActions : styles.gridWithoutActions, children: [
72
+ /* @__PURE__ */ jsx(Grid, { item: true, container: true, direction: "column", children: renderTitleFields?.() }),
73
+ paramsLoading ? /* @__PURE__ */ jsx(LinearProgress, {}) : /* @__PURE__ */ jsx(
74
+ Box,
75
+ {
76
+ sx: {
77
+ height: "100%",
78
+ width: "100%"
79
+ },
80
+ children: /* @__PURE__ */ jsx(Grid, { item: true, container: true, direction: "column", children: /* @__PURE__ */ jsx(
81
+ ParameterLineDirectoryItemsInput,
82
+ {
83
+ name: FILTERS,
84
+ equipmentTypes: [EquipmentType.VOLTAGE_LEVEL],
85
+ elementType: ElementType.FILTER,
86
+ label: "pccMinParamFilter",
87
+ hideErrorMessage: true,
88
+ allowMultiSelect: false
89
+ }
90
+ ) })
91
+ }
92
+ )
93
+ ] }),
94
+ renderActions && /* @__PURE__ */ jsx(
95
+ Grid,
96
+ {
97
+ item: true,
98
+ container: true,
99
+ direction: "column",
100
+ sx: {
101
+ position: "fixed",
102
+ bottom: "15px"
103
+ },
104
+ children: renderActions()
105
+ }
106
+ )
107
+ ]
108
+ }
109
+ ) });
110
+ }
111
+ export {
112
+ PccMinParametersForm,
113
+ styles
114
+ };
@@ -0,0 +1,7 @@
1
+ import { UUID } from 'node:crypto';
2
+ import { PccMinParameters } from '../../../services/pcc-min';
3
+ export declare function PccMinParametersInLine({ studyUuid, setHaveDirtyFields, pccMinParameters, }: Readonly<{
4
+ studyUuid: UUID | null;
5
+ setHaveDirtyFields: (isDirty: boolean) => void;
6
+ pccMinParameters: PccMinParameters | null;
7
+ }>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,98 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { useState, useCallback, useEffect } from "react";
3
+ import { Box, Grid } from "@mui/material";
4
+ import { FormattedMessage } from "react-intl";
5
+ import "../../../utils/types/equipmentType.js";
6
+ import "../../../utils/conversionUtils.js";
7
+ import "@mui/icons-material";
8
+ import "../../../utils/yupConfig.js";
9
+ import { updatePccMinParameters } from "../../../services/pcc-min.js";
10
+ import "localized-countries";
11
+ import "localized-countries/data/fr";
12
+ import "localized-countries/data/en";
13
+ import { useSnackMessage } from "../../../hooks/useSnackMessage.js";
14
+ import "react-hook-form";
15
+ import "../../overflowableText/OverflowableText.js";
16
+ import "../../inputs/reactHookForm/provider/CustomFormProvider.js";
17
+ import { SubmitButton } from "../../inputs/reactHookForm/utils/SubmitButton.js";
18
+ import "yup";
19
+ import "../../treeViewFinder/TreeViewFinder.js";
20
+ import "../../inputs/reactHookForm/agGridTable/BottomRightButtons.js";
21
+ import "../../customAGGrid/customAggrid.js";
22
+ import "ag-grid-community";
23
+ import "react-papaparse";
24
+ import "react-csv-downloader";
25
+ import "../../inputs/reactHookForm/numbers/RangeInput.js";
26
+ import { PopupConfirmationDialog } from "../../dialogs/popupConfirmationDialog/PopupConfirmationDialog.js";
27
+ import "@react-querybuilder/material";
28
+ import "../../filter/expert/expertFilterConstants.js";
29
+ import "../../inputs/reactQueryBuilder/CustomReactQueryBuilder.js";
30
+ import "uuid";
31
+ import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
32
+ import "react-querybuilder";
33
+ import { LabelledButton } from "../common/parameters.js";
34
+ import "../../dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
35
+ import "../../dialogs/elementSaveDialog/ElementSaveDialog.js";
36
+ import "../common/widget/parameter-line-slider.js";
37
+ import "../common/limitreductions/columns-definitions.js";
38
+ import { UsePccMinParametersForm } from "./use-pcc-min-parameters-form.js";
39
+ import { PccMinParametersForm } from "./pcc-min-parameters-form.js";
40
+ function PccMinParametersInLine({
41
+ studyUuid,
42
+ setHaveDirtyFields,
43
+ pccMinParameters
44
+ }) {
45
+ const pccMinMethods = UsePccMinParametersForm({
46
+ parametersUuid: null,
47
+ studyUuid,
48
+ parameters: pccMinParameters
49
+ });
50
+ const [openResetConfirmation, setOpenResetConfirmation] = useState(false);
51
+ const { snackError } = useSnackMessage();
52
+ const { formState, handleSubmit } = pccMinMethods.formMethods;
53
+ const resetPccMinParameters = useCallback(() => {
54
+ updatePccMinParameters(studyUuid, null).catch((error) => {
55
+ snackError({
56
+ messageTxt: error.message,
57
+ headerId: "updatePccMinParametersError"
58
+ });
59
+ });
60
+ setOpenResetConfirmation(false);
61
+ }, [studyUuid, snackError]);
62
+ const handleResetClick = useCallback(() => {
63
+ setOpenResetConfirmation(true);
64
+ }, []);
65
+ const handleCancelReset = useCallback(() => {
66
+ setOpenResetConfirmation(false);
67
+ }, []);
68
+ useEffect(() => {
69
+ setHaveDirtyFields(!!Object.keys(formState.dirtyFields).length);
70
+ }, [formState, setHaveDirtyFields]);
71
+ return /* @__PURE__ */ jsx(
72
+ PccMinParametersForm,
73
+ {
74
+ pccMinMethods,
75
+ renderActions: () => {
76
+ return /* @__PURE__ */ jsxs(Box, { children: [
77
+ /* @__PURE__ */ jsxs(Grid, { container: true, item: true, children: [
78
+ /* @__PURE__ */ jsx(LabelledButton, { callback: handleResetClick, label: "resetToDefault" }),
79
+ /* @__PURE__ */ jsx(SubmitButton, { onClick: handleSubmit(pccMinMethods.onSaveInline), variant: "outlined", children: /* @__PURE__ */ jsx(FormattedMessage, { id: "validate" }) })
80
+ ] }),
81
+ openResetConfirmation && /* @__PURE__ */ jsx(
82
+ PopupConfirmationDialog,
83
+ {
84
+ message: "resetParamsConfirmation",
85
+ validateButtonLabel: "validate",
86
+ openConfirmationPopup: openResetConfirmation,
87
+ setOpenConfirmationPopup: handleCancelReset,
88
+ handlePopupConfirmation: resetPccMinParameters
89
+ }
90
+ )
91
+ ] });
92
+ }
93
+ }
94
+ );
95
+ }
96
+ export {
97
+ PccMinParametersInLine
98
+ };
@@ -0,0 +1,19 @@
1
+ import { UseFormReturn } from 'react-hook-form';
2
+ import { ObjectSchema } from 'yup';
3
+ import { UUID } from 'node:crypto';
4
+ import { PccMinParameters } from '../../../services/pcc-min';
5
+ export interface UsePccMinParametersFormReturn {
6
+ formMethods: UseFormReturn;
7
+ formSchema: ObjectSchema<any>;
8
+ paramsLoading: boolean;
9
+ onSaveInline: (formData: Record<string, any>) => void;
10
+ }
11
+ type UsePccMinParametersFormProps = {
12
+ parametersUuid: UUID | null;
13
+ name: string | null;
14
+ description: string | null;
15
+ studyUuid: UUID | null;
16
+ parameters: PccMinParameters | null;
17
+ };
18
+ export declare const UsePccMinParametersForm: ({ parametersUuid, studyUuid, parameters, }: UsePccMinParametersFormProps) => UsePccMinParametersFormReturn;
19
+ export {};
@@ -0,0 +1,104 @@
1
+ import { useForm } from "react-hook-form";
2
+ import { yupResolver } from "@hookform/resolvers/yup";
3
+ import { useState, useMemo, useCallback, useEffect } from "react";
4
+ import "../../../utils/yupConfig.js";
5
+ import { fromPccMinParametersFormToParamValues, fromPccMinParamsDataToFormValues, fromStudyPccMinParamsDataToFormValues } from "./pcc-min-form-utils.js";
6
+ import "react/jsx-runtime";
7
+ import "react-intl";
8
+ import "../../../utils/types/equipmentType.js";
9
+ import { FILTERS, ID } from "../../../utils/constants/filterConstant.js";
10
+ import "../../../utils/conversionUtils.js";
11
+ import "@mui/icons-material";
12
+ import { updatePccMinParameters, getPccMinStudyParameters } from "../../../services/pcc-min.js";
13
+ import "@mui/material";
14
+ import "localized-countries";
15
+ import "localized-countries/data/fr";
16
+ import "localized-countries/data/en";
17
+ import { useSnackMessage } from "../../../hooks/useSnackMessage.js";
18
+ import "../../overflowableText/OverflowableText.js";
19
+ import "../../inputs/reactHookForm/provider/CustomFormProvider.js";
20
+ import * as yup from "yup";
21
+ import "../../treeViewFinder/TreeViewFinder.js";
22
+ import { NAME } from "../../inputs/reactHookForm/constants.js";
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
+ const UsePccMinParametersForm = ({
36
+ parametersUuid,
37
+ studyUuid,
38
+ parameters
39
+ }) => {
40
+ const [paramsLoading, setParamsLoading] = useState(false);
41
+ const { snackError } = useSnackMessage();
42
+ const formSchema = useMemo(() => {
43
+ return yup.object({
44
+ [FILTERS]: yup.array().of(
45
+ yup.object().shape({
46
+ [ID]: yup.string().required(),
47
+ [NAME]: yup.string().required()
48
+ })
49
+ )
50
+ });
51
+ }, []);
52
+ const formMethods = useForm({
53
+ defaultValues: {
54
+ [FILTERS]: []
55
+ },
56
+ resolver: yupResolver(formSchema)
57
+ });
58
+ const { reset } = formMethods;
59
+ const onSaveInline = useCallback(
60
+ (formData) => {
61
+ if (studyUuid) {
62
+ updatePccMinParameters(studyUuid, fromPccMinParametersFormToParamValues(formData)).catch((error) => {
63
+ snackError({
64
+ messageTxt: error.message,
65
+ headerId: "updatePccMinParametersError"
66
+ });
67
+ });
68
+ }
69
+ },
70
+ [snackError, studyUuid]
71
+ );
72
+ useEffect(() => {
73
+ if (parametersUuid) {
74
+ const timer = setTimeout(() => {
75
+ setParamsLoading(true);
76
+ }, 700);
77
+ getPccMinStudyParameters(parametersUuid).then((params) => {
78
+ reset(fromPccMinParamsDataToFormValues(params));
79
+ }).catch((error) => {
80
+ snackError({
81
+ messageTxt: error.message,
82
+ headerId: "paramsRetrievingError"
83
+ });
84
+ }).finally(() => {
85
+ clearTimeout(timer);
86
+ setParamsLoading(false);
87
+ });
88
+ }
89
+ }, [parametersUuid, reset, snackError]);
90
+ useEffect(() => {
91
+ if (parameters) {
92
+ reset(fromStudyPccMinParamsDataToFormValues(parameters));
93
+ }
94
+ }, [parameters, reset]);
95
+ return {
96
+ formMethods,
97
+ formSchema,
98
+ paramsLoading,
99
+ onSaveInline
100
+ };
101
+ };
102
+ export {
103
+ UsePccMinParametersForm
104
+ };