@gridsuite/commons-ui 0.272.1 → 0.274.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 (45) hide show
  1. package/dist/features/index.js +9 -2
  2. package/dist/features/network-modifications/index.js +7 -2
  3. package/dist/features/network-modifications/twoWindingsTransformer/common/TwoWindingsTransformerDialogHeader.js +1 -1
  4. package/dist/features/network-modifications/twoWindingsTransformer/common/TwoWindingsTransformerDialogTabsContent.js +7 -1
  5. package/dist/features/network-modifications/twoWindingsTransformer/common/TwoWindingsTransformerForm.d.ts +1 -1
  6. package/dist/features/network-modifications/twoWindingsTransformer/common/TwoWindingsTransformerForm.js +3 -1
  7. package/dist/features/network-modifications/twoWindingsTransformer/creation/twoWindingsTransformerCreation.utils.js +1 -4
  8. package/dist/features/network-modifications/twoWindingsTransformer/index.js +8 -3
  9. package/dist/features/network-modifications/twoWindingsTransformer/modification/index.js +6 -2
  10. package/dist/features/network-modifications/twoWindingsTransformer/modification/twoWindingsTransformerModification.utils.d.ts +7 -0
  11. package/dist/features/network-modifications/twoWindingsTransformer/modification/twoWindingsTransformerModification.utils.js +313 -10
  12. package/dist/features/network-modifications/twoWindingsTransformer/tapChanger/index.js +2 -1
  13. package/dist/features/network-modifications/twoWindingsTransformer/tapChanger/ratioTapChanger/index.js +2 -1
  14. package/dist/features/network-modifications/twoWindingsTransformer/tapChanger/ratioTapChanger/ratioTapChanger.utils.d.ts +1 -0
  15. package/dist/features/network-modifications/twoWindingsTransformer/tapChanger/ratioTapChanger/ratioTapChanger.utils.js +4 -0
  16. package/dist/features/parameters/common/limitreductions/limit-reductions-table-form.js +1 -0
  17. package/dist/features/parameters/common/parameter-layout/parameter-layout.js +26 -27
  18. package/dist/features/process-configs/common/process-config.type.d.ts +2 -1
  19. package/dist/features/process-configs/common/process-config.type.js +1 -0
  20. package/dist/features/process-configs/index.d.ts +1 -0
  21. package/dist/features/process-configs/index.js +2 -0
  22. package/dist/features/process-configs/process-config.type.d.ts +2 -0
  23. package/dist/features/process-configs/sc-process-config-edition-dialog.d.ts +3 -0
  24. package/dist/features/process-configs/sc-process-config-edition-dialog.js +149 -0
  25. package/dist/features/process-configs/shortcircuit/index.d.ts +9 -0
  26. package/dist/features/process-configs/shortcircuit/index.js +9 -0
  27. package/dist/features/process-configs/shortcircuit/sc-process-config-edition.d.ts +1 -0
  28. package/dist/features/process-configs/shortcircuit/sc-process-config-edition.js +91 -0
  29. package/dist/features/process-configs/shortcircuit/sc-process-config-edition.utils.d.ts +39 -0
  30. package/dist/features/process-configs/shortcircuit/sc-process-config-edition.utils.js +109 -0
  31. package/dist/features/process-configs/shortcircuit/sc-process-config.type.d.ts +6 -0
  32. package/dist/features/process-configs/shortcircuit/sc-process-config.type.js +1 -0
  33. package/dist/index.js +9 -2
  34. package/dist/translations/en/networkModificationsEn.d.ts +6 -0
  35. package/dist/translations/en/networkModificationsEn.js +6 -0
  36. package/dist/translations/en/processConfigEn.d.ts +2 -0
  37. package/dist/translations/en/processConfigEn.js +2 -0
  38. package/dist/translations/fr/networkModificationsFr.d.ts +6 -0
  39. package/dist/translations/fr/networkModificationsFr.js +6 -0
  40. package/dist/translations/fr/processConfigFr.d.ts +2 -0
  41. package/dist/translations/fr/processConfigFr.js +2 -0
  42. package/dist/translations/fr/specificParameters.js +2 -2
  43. package/dist/utils/constants/fieldConstants.d.ts +1 -0
  44. package/dist/utils/constants/fieldConstants.js +1 -0
  45. package/package.json +1 -1
@@ -0,0 +1,149 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { yupResolver } from "@hookform/resolvers/yup";
3
+ import { useForm } from "react-hook-form";
4
+ import { useState, useEffect, useCallback } from "react";
5
+ import { FieldConstants } from "../../utils/constants/fieldConstants.js";
6
+ import "../../utils/conversionUtils.js";
7
+ import { snackWithFallback } from "../../utils/error.js";
8
+ import { ElementType } from "../../utils/types/elementType.js";
9
+ import "../../utils/types/equipmentType.js";
10
+ import "@mui/icons-material";
11
+ import "@mui/material";
12
+ import "react-intl";
13
+ import "../../components/ui/overflowableText/OverflowableText.js";
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 "../../components/ui/reactHookForm/provider/CustomFormProvider.js";
19
+ import "yup";
20
+ import "../../components/ui/treeViewFinder/TreeViewFinder.js";
21
+ import "../../components/ui/reactHookForm/numbers/RangeInput.js";
22
+ import "@material-symbols/svg-400/outlined/left_panel_open.svg?react";
23
+ import "@material-symbols/svg-400/outlined/arrows_output.svg?react";
24
+ import "@material-symbols/svg-400/outlined/arrows_input.svg?react";
25
+ import "@material-symbols/svg-400/outlined/left_panel_close.svg?react";
26
+ import "@material-symbols/svg-400/outlined/add_notes-fill.svg?react";
27
+ import "../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
28
+ import "../../components/ui/reactHookForm/expandableInput/ExpandableInput.js";
29
+ import "../../components/ui/reactHookForm/directory-item-input/directory-item-utils.js";
30
+ import "@hello-pangea/dnd";
31
+ import "../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
32
+ import { NamedElementEditionDialog } from "../../components/ui/dialogs/name-element-editor/named-element-edition-dialog.js";
33
+ import "../../components/ui/snackbarProvider/SnackbarProvider.js";
34
+ import "mui-nested-menu";
35
+ import "react-resizable-panels";
36
+ import "react-papaparse";
37
+ import "react-dom";
38
+ import "autosuggest-highlight/match";
39
+ import "autosuggest-highlight/parse";
40
+ import "clsx";
41
+ import "../../components/composite/filter/FilterCreationDialog.js";
42
+ import "../../components/composite/filter/HeaderFilterForm.js";
43
+ import "../../components/composite/filter/explicitNaming/ExplicitNamingFilterForm.js";
44
+ import "../../components/composite/filter/expert/ExpertFilterForm.js";
45
+ import "../../components/composite/filter/expert/ExpertFilterEditionDialog.js";
46
+ import "../../components/composite/filter/expert/expertFilterConstants.js";
47
+ import "react-querybuilder";
48
+ import "uuid";
49
+ import "../../components/composite/filter/explicitNaming/ExplicitNamingFilterEditionDialog.js";
50
+ import "../../components/composite/filter/utils/filterFormUtils.js";
51
+ import "@react-querybuilder/material";
52
+ import "../../components/composite/reactQueryBuilder/CustomReactQueryBuilder.js";
53
+ import "../../components/composite/reactQueryBuilder/PropertyValueEditor.js";
54
+ import "../../components/composite/agGridTable/BottomTableButtons.js";
55
+ import "../../components/composite/agGridTable/CustomAgGridTable.js";
56
+ import "ag-grid-community";
57
+ import "../../components/composite/customAGGrid/customAggrid.js";
58
+ import "../../components/composite/customAGGrid/context/custom-aggrid-context.js";
59
+ import "mathjs";
60
+ import "../../components/composite/report/report-viewer/log-table/log-table.js";
61
+ import "react-window";
62
+ import "../../components/composite/report/report-treeview/treeview-item.js";
63
+ import "../../components/composite/report/report-viewer/context/report-viewer-context.js";
64
+ import { SCProcessConfigEdition } from "./shortcircuit/sc-process-config-edition.js";
65
+ import { getNamedSCProcessConfigFormSchema, getEmptySCProcessConfigFormData, getNamedSCProcessConfigFormData, getSCProcessConfigBackendFromFormData } from "./shortcircuit/sc-process-config-edition.utils.js";
66
+ function SCProcessConfigEditionDialog({
67
+ processConfigUuid,
68
+ processConfigName,
69
+ description,
70
+ directory,
71
+ open,
72
+ onClose,
73
+ fetchProcessConfig,
74
+ updateProcessConfig
75
+ }) {
76
+ const [isLoading, setIsLoading] = useState(false);
77
+ const { snackError } = useSnackMessage();
78
+ const formSchema = getNamedSCProcessConfigFormSchema(processConfigName);
79
+ const formMethods = useForm({
80
+ defaultValues: getEmptySCProcessConfigFormData(processConfigName, description),
81
+ resolver: yupResolver(formSchema)
82
+ });
83
+ const { reset } = formMethods;
84
+ useEffect(() => {
85
+ let cancelled = false;
86
+ setIsLoading(true);
87
+ (async () => {
88
+ try {
89
+ const persistedProcessConfig = await fetchProcessConfig(processConfigUuid);
90
+ if (!cancelled && persistedProcessConfig) {
91
+ const formData = await getNamedSCProcessConfigFormData(
92
+ persistedProcessConfig.processConfig,
93
+ processConfigName,
94
+ description
95
+ );
96
+ if (!cancelled) {
97
+ reset({ ...formData });
98
+ }
99
+ }
100
+ } catch (error) {
101
+ if (!cancelled) {
102
+ snackWithFallback(snackError, error, {
103
+ headerId: "processConfig/fetchProcessConfigError"
104
+ });
105
+ }
106
+ } finally {
107
+ if (!cancelled) {
108
+ setIsLoading(false);
109
+ }
110
+ }
111
+ })();
112
+ return () => {
113
+ cancelled = true;
114
+ };
115
+ }, [fetchProcessConfig, processConfigUuid, processConfigName, description, reset, snackError]);
116
+ const handleUpdateProcessConfig = useCallback(
117
+ (formData) => {
118
+ updateProcessConfig(
119
+ processConfigUuid,
120
+ formData[FieldConstants.NAME] ?? "",
121
+ formData[FieldConstants.DESCRIPTION] ?? "",
122
+ getSCProcessConfigBackendFromFormData(formData)
123
+ ).catch((error) => {
124
+ console.error(error);
125
+ snackWithFallback(snackError, error, { headerId: "processConfig/updateProcessConfigError" });
126
+ });
127
+ },
128
+ [updateProcessConfig, processConfigUuid, snackError]
129
+ );
130
+ return /* @__PURE__ */ jsx(
131
+ NamedElementEditionDialog,
132
+ {
133
+ titleId: "process_config/editSCProcessConfigTitle",
134
+ formMethods,
135
+ formSchema,
136
+ open,
137
+ onClose,
138
+ onSave: handleUpdateProcessConfig,
139
+ directory,
140
+ elementName: processConfigName,
141
+ elementType: ElementType.PROCESS_CONFIG,
142
+ isLoading,
143
+ children: /* @__PURE__ */ jsx(SCProcessConfigEdition, {})
144
+ }
145
+ );
146
+ }
147
+ export {
148
+ SCProcessConfigEditionDialog
149
+ };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Copyright (c) 2026, 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 http://mozilla.org/MPL/2.0/.
6
+ */
7
+ export * from './sc-process-config.type';
8
+ export * from './sc-process-config-edition';
9
+ export * from './sc-process-config-edition.utils';
@@ -0,0 +1,9 @@
1
+ import { SCProcessConfigEdition } from "./sc-process-config-edition.js";
2
+ import { getEmptySCProcessConfigFormData, getNamedSCProcessConfigFormData, getNamedSCProcessConfigFormSchema, getSCProcessConfigBackendFromFormData } from "./sc-process-config-edition.utils.js";
3
+ export {
4
+ SCProcessConfigEdition,
5
+ getEmptySCProcessConfigFormData,
6
+ getNamedSCProcessConfigFormData,
7
+ getNamedSCProcessConfigFormSchema,
8
+ getSCProcessConfigBackendFromFormData
9
+ };
@@ -0,0 +1 @@
1
+ export declare function SCProcessConfigEdition(): import("react").JSX.Element;
@@ -0,0 +1,91 @@
1
+ import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
+ import { Box } from "@mui/material";
3
+ import { FormattedMessage } from "react-intl";
4
+ import "../common/process-config-modifications-edition.utils.js";
5
+ import { ProcessConfigModificationsEdition } from "../common/process-config-modifications-edition.js";
6
+ import { FieldConstants } from "../../../utils/constants/fieldConstants.js";
7
+ import "../../../utils/conversionUtils.js";
8
+ import { ElementType } from "../../../utils/types/elementType.js";
9
+ import "../../../utils/types/equipmentType.js";
10
+ import "@mui/icons-material";
11
+ import "react";
12
+ import "../../../components/ui/overflowableText/OverflowableText.js";
13
+ import "react-hook-form";
14
+ import "localized-countries";
15
+ import "localized-countries/data/fr";
16
+ import "localized-countries/data/en";
17
+ import "notistack";
18
+ import "../../../components/ui/reactHookForm/provider/CustomFormProvider.js";
19
+ import "yup";
20
+ import "../../../components/ui/treeViewFinder/TreeViewFinder.js";
21
+ import "../../../components/ui/reactHookForm/numbers/RangeInput.js";
22
+ import "@material-symbols/svg-400/outlined/left_panel_open.svg?react";
23
+ import "@material-symbols/svg-400/outlined/arrows_output.svg?react";
24
+ import "@material-symbols/svg-400/outlined/arrows_input.svg?react";
25
+ import "@material-symbols/svg-400/outlined/left_panel_close.svg?react";
26
+ import "@material-symbols/svg-400/outlined/add_notes-fill.svg?react";
27
+ import "../../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
28
+ import "../../../components/ui/reactHookForm/expandableInput/ExpandableInput.js";
29
+ import "../../../components/ui/reactHookForm/directory-item-input/directory-item-utils.js";
30
+ import "@hello-pangea/dnd";
31
+ import "../../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
32
+ import "../../../components/ui/snackbarProvider/SnackbarProvider.js";
33
+ import "mui-nested-menu";
34
+ import "react-resizable-panels";
35
+ import "react-papaparse";
36
+ import "../../parameters/common/parameter-layout/parameter-layout-provider.js";
37
+ import { ParameterLineDirectoryItemsInput } from "../../parameters/common/widget/parameter-line-directory-items-input.js";
38
+ import "../../parameters/common/widget/parameter-line-slider.js";
39
+ import "../../parameters/common/contingency-table/contingency-table.js";
40
+ import "../../parameters/common/contingency-table/columns-definitions.js";
41
+ import "@hookform/resolvers/yup";
42
+ import "../../parameters/network-visualizations/constants.js";
43
+ import "../../parameters/loadflow/load-flow-parameters-context.js";
44
+ import "../../parameters/loadflow/load-flow-advanced-parameters.js";
45
+ import "../../parameters/loadflow/load-flow-parameters-content.js";
46
+ import "../../parameters/short-circuit/short-circuit-parameters-content.js";
47
+ import "../../parameters/voltage-init/voltage-init-form-utils.js";
48
+ import "react-dom";
49
+ import "../../parameters/security-analysis/security-analysis-parameters-utils.js";
50
+ import "../../parameters/sensi/utils.js";
51
+ import "../../parameters/sensi/columns-definitions.js";
52
+ import "../../parameters/dynamic-simulation/use-dynamic-simulation-parameters-form.js";
53
+ import "../../parameters/dynamic-simulation/time-delay/time-delay-parameters-utils.js";
54
+ import "../../parameters/dynamic-simulation/time-delay/time-delay-parameters.js";
55
+ import "../../parameters/dynamic-simulation/solver/solver-parameters-utils.js";
56
+ import "../../parameters/dynamic-simulation/solver/solver-parameters.js";
57
+ import "../../parameters/dynamic-simulation/mapping/mapping-parameters-utils.js";
58
+ import "../../parameters/dynamic-simulation/network/network-parameters-utils.js";
59
+ import "../../parameters/dynamic-simulation/network/network-parameters.js";
60
+ import "../../parameters/dynamic-simulation/curve/dialog/curve-preview.js";
61
+ import "../../parameters/dynamic-simulation/curve/dialog/curve-selector.js";
62
+ import "../../parameters/dynamic-simulation/curve/common/grid-search.js";
63
+ import "../../../components/composite/customAGGrid/customAggrid.js";
64
+ import "../../../components/composite/customAGGrid/context/custom-aggrid-context.js";
65
+ import "mathjs";
66
+ import "../../parameters/dynamic-security-analysis/use-dynamic-security-analysis-parameters-form.js";
67
+ import "../../parameters/dynamic-security-analysis/scenario-parameters.js";
68
+ import "../../parameters/dynamic-security-analysis/contingency-parameters.js";
69
+ import "../../parameters/dynamic-margin-calculation/time-delay-parameters.js";
70
+ import "../../parameters/dynamic-margin-calculation/loads-variations-parameters.js";
71
+ import "../../parameters/dynamic-margin-calculation/use-dynamic-margin-calculation-parameters-form.js";
72
+ function SCProcessConfigEdition() {
73
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
74
+ /* @__PURE__ */ jsx(Box, { component: "h3", children: /* @__PURE__ */ jsx(FormattedMessage, { id: "process_config/modifications" }) }),
75
+ /* @__PURE__ */ jsx(ProcessConfigModificationsEdition, { name: FieldConstants.MODIFICATIONS }),
76
+ /* @__PURE__ */ jsx(Box, { component: "h3", children: /* @__PURE__ */ jsx(FormattedMessage, { id: "process_config/providersParameters" }) }),
77
+ /* @__PURE__ */ jsx(
78
+ ParameterLineDirectoryItemsInput,
79
+ {
80
+ label: "process_config/shortcircuit",
81
+ elementType: ElementType.SHORT_CIRCUIT_PARAMETERS,
82
+ name: FieldConstants.SHORTCIRCUIT_PARAMETERS,
83
+ allowMultiSelect: false,
84
+ hideErrorMessage: false
85
+ }
86
+ )
87
+ ] });
88
+ }
89
+ export {
90
+ SCProcessConfigEdition
91
+ };
@@ -0,0 +1,39 @@
1
+ import { ShortcircuitProcessConfigBackend } from './sc-process-config.type';
2
+ /**
3
+ * Copyright (c) 2026, RTE (http://www.rte-france.com)
4
+ * This Source Code Form is subject to the terms of the Mozilla Public
5
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
6
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
7
+ */
8
+ import * as yup from 'yup';
9
+ export declare function getNamedSCProcessConfigFormSchema(initialName: string | null): yup.ObjectSchema<{
10
+ shortcircuitParameters: {
11
+ name?: string | undefined;
12
+ id: string;
13
+ }[];
14
+ modifications: {
15
+ description?: string | null | undefined;
16
+ active: NonNullable<boolean | undefined>;
17
+ modification: {
18
+ name?: string | undefined;
19
+ id: string;
20
+ }[];
21
+ }[];
22
+ } & {
23
+ name: string | null | undefined;
24
+ description: string | null | undefined;
25
+ }, yup.AnyObject, {
26
+ shortcircuitParameters: "";
27
+ modifications: "";
28
+ name: undefined;
29
+ description: undefined;
30
+ }, "">;
31
+ export type NamedSCProcessConfigFormSchema = yup.InferType<ReturnType<typeof getNamedSCProcessConfigFormSchema>>;
32
+ export declare function getEmptySCProcessConfigFormData(initialName: string | null, initialDescription: string | null): {
33
+ shortcircuitParameters: never[];
34
+ modifications: never[];
35
+ name: string | null;
36
+ description: string | null;
37
+ };
38
+ export declare function getNamedSCProcessConfigFormData(processConfig: ShortcircuitProcessConfigBackend, name: string, description: string | null): Promise<NamedSCProcessConfigFormSchema>;
39
+ export declare function getSCProcessConfigBackendFromFormData(formData: NamedSCProcessConfigFormSchema): ShortcircuitProcessConfigBackend;
@@ -0,0 +1,109 @@
1
+ import * as yup from "yup";
2
+ import { FieldConstants } from "../../../utils/constants/fieldConstants.js";
3
+ import { YUP_REQUIRED } from "../../../utils/constants/translationKeys.js";
4
+ import "../../../utils/conversionUtils.js";
5
+ import "../../../utils/types/equipmentType.js";
6
+ import "react/jsx-runtime";
7
+ import "@mui/icons-material";
8
+ import { fetchElementNames } from "../../../services/directory.js";
9
+ import { ProcessType } from "../common/process-config.type.js";
10
+ import { emptyProcessConfigModificationsFormData, getProcessConfigModificationsFormData, processConfigModificationsShape, getProcessConfigModificationsBackendFromFormData } from "../common/process-config-modifications-edition.utils.js";
11
+ import "react-hook-form";
12
+ import "react";
13
+ import "react-intl";
14
+ import "@mui/material";
15
+ import "../../../components/ui/overflowableText/OverflowableText.js";
16
+ import "localized-countries";
17
+ import "localized-countries/data/fr";
18
+ import "localized-countries/data/en";
19
+ import "notistack";
20
+ import "../../../components/ui/reactHookForm/provider/CustomFormProvider.js";
21
+ import "../../../components/ui/treeViewFinder/TreeViewFinder.js";
22
+ import "../../../components/ui/reactHookForm/numbers/RangeInput.js";
23
+ import "@material-symbols/svg-400/outlined/left_panel_open.svg?react";
24
+ import "@material-symbols/svg-400/outlined/arrows_output.svg?react";
25
+ import "@material-symbols/svg-400/outlined/arrows_input.svg?react";
26
+ import "@material-symbols/svg-400/outlined/left_panel_close.svg?react";
27
+ import "@material-symbols/svg-400/outlined/add_notes-fill.svg?react";
28
+ import "../../../components/ui/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
29
+ import "../../../components/ui/reactHookForm/expandableInput/ExpandableInput.js";
30
+ import "../../../components/ui/reactHookForm/directory-item-input/directory-item-utils.js";
31
+ import "@hello-pangea/dnd";
32
+ import "../../../components/ui/dialogs/elementSaveDialog/ElementSaveDialog.js";
33
+ import { getNameElementEditorEmptyFormData, getNameElementEditorSchema } from "../../../components/ui/dialogs/name-element-editor/name-element-editor-utils.js";
34
+ import "../../../components/ui/snackbarProvider/SnackbarProvider.js";
35
+ import "mui-nested-menu";
36
+ import "react-resizable-panels";
37
+ import "react-papaparse";
38
+ import "react-dom";
39
+ import "autosuggest-highlight/match";
40
+ import "autosuggest-highlight/parse";
41
+ import "clsx";
42
+ import "../../../components/composite/filter/FilterCreationDialog.js";
43
+ import "../../../components/composite/filter/HeaderFilterForm.js";
44
+ import "../../../components/composite/filter/explicitNaming/ExplicitNamingFilterForm.js";
45
+ import "../../../components/composite/filter/expert/ExpertFilterForm.js";
46
+ import "../../../components/composite/filter/expert/ExpertFilterEditionDialog.js";
47
+ import "../../../components/composite/filter/expert/expertFilterConstants.js";
48
+ import "react-querybuilder";
49
+ import "uuid";
50
+ import "../../../components/composite/filter/explicitNaming/ExplicitNamingFilterEditionDialog.js";
51
+ import "../../../components/composite/filter/utils/filterFormUtils.js";
52
+ import "@react-querybuilder/material";
53
+ import "../../../components/composite/reactQueryBuilder/CustomReactQueryBuilder.js";
54
+ import "../../../components/composite/reactQueryBuilder/PropertyValueEditor.js";
55
+ import "../../../components/composite/agGridTable/BottomTableButtons.js";
56
+ import "../../../components/composite/agGridTable/CustomAgGridTable.js";
57
+ import "ag-grid-community";
58
+ import "../../../components/composite/customAGGrid/customAggrid.js";
59
+ import "../../../components/composite/customAGGrid/context/custom-aggrid-context.js";
60
+ import "mathjs";
61
+ import "../../../components/composite/report/report-viewer/log-table/log-table.js";
62
+ import "react-window";
63
+ import "../../../components/composite/report/report-treeview/treeview-item.js";
64
+ import "../../../components/composite/report/report-viewer/context/report-viewer-context.js";
65
+ function getNamedSCProcessConfigFormSchema(initialName) {
66
+ const formSchema = yup.object().shape({
67
+ ...processConfigModificationsShape,
68
+ [FieldConstants.SHORTCIRCUIT_PARAMETERS]: yup.array().required().of(yup.object().shape({ id: yup.string().required(), name: yup.string() })).length(1, YUP_REQUIRED)
69
+ });
70
+ return formSchema.concat(getNameElementEditorSchema(initialName));
71
+ }
72
+ function getEmptySCProcessConfigFormData(initialName, initialDescription) {
73
+ return {
74
+ ...getNameElementEditorEmptyFormData(initialName, initialDescription),
75
+ ...emptyProcessConfigModificationsFormData,
76
+ [FieldConstants.SHORTCIRCUIT_PARAMETERS]: []
77
+ };
78
+ }
79
+ async function getNamedSCProcessConfigFormData(processConfig, name, description) {
80
+ const allUuids = /* @__PURE__ */ new Set([
81
+ ...processConfig.modifications.map((modification) => modification.modificationUuid),
82
+ processConfig.shortCircuitParametersUuid
83
+ ]);
84
+ const elementNamesByUuid = await fetchElementNames(allUuids);
85
+ return {
86
+ name,
87
+ description: description ?? void 0,
88
+ ...getProcessConfigModificationsFormData(processConfig.modifications, elementNamesByUuid),
89
+ [FieldConstants.SHORTCIRCUIT_PARAMETERS]: [
90
+ {
91
+ id: processConfig.shortCircuitParametersUuid,
92
+ name: elementNamesByUuid[processConfig.shortCircuitParametersUuid]
93
+ }
94
+ ]
95
+ };
96
+ }
97
+ function getSCProcessConfigBackendFromFormData(formData) {
98
+ return {
99
+ processType: ProcessType.SHORT_CIRCUIT,
100
+ ...getProcessConfigModificationsBackendFromFormData(formData[FieldConstants.MODIFICATIONS]),
101
+ shortCircuitParametersUuid: formData[FieldConstants.SHORTCIRCUIT_PARAMETERS][0].id
102
+ };
103
+ }
104
+ export {
105
+ getEmptySCProcessConfigFormData,
106
+ getNamedSCProcessConfigFormData,
107
+ getNamedSCProcessConfigFormSchema,
108
+ getSCProcessConfigBackendFromFormData
109
+ };
@@ -0,0 +1,6 @@
1
+ import { UUID } from 'node:crypto';
2
+ import { ProcessConfigBaseBackend, ProcessType } from '../common';
3
+ export interface ShortcircuitProcessConfigBackend extends ProcessConfigBaseBackend {
4
+ processType: ProcessType.SHORT_CIRCUIT;
5
+ shortCircuitParametersUuid: UUID;
6
+ }
package/dist/index.js CHANGED
@@ -430,14 +430,14 @@ import { ImportRuleDialog } from "./features/network-modifications/twoWindingsTr
430
430
  import { getComputedPhaseRegulationType, getComputedPhaseRegulationTypeId, getComputedPhaseTapChangerRegulationMode, getComputedPreviousPhaseRegulationType, getPhaseTapChangerEmptyFormData, getPhaseTapChangerFormData, getPhaseTapChangerValidationSchemaProps, getPhaseTapRegulationSideId } from "./features/network-modifications/twoWindingsTransformer/tapChanger/phaseTapChanger/phaseTapChanger.utils.js";
431
431
  import { PhaseTapChangerPaneSteps } from "./features/network-modifications/twoWindingsTransformer/tapChanger/phaseTapChanger/PhaseTapChangerPaneSteps.js";
432
432
  import { PhaseTapChangerPane } from "./features/network-modifications/twoWindingsTransformer/tapChanger/phaseTapChanger/PhaseTapChangerPane.js";
433
- import { getComputedPreviousRatioRegulationType, getComputedRegulationMode, getComputedRegulationModeId, getComputedRegulationType, getComputedRegulationTypeId, getComputedTapSide, getComputedTapSideId, getInitialTwtRatioRegulationModeId, getRatioTapChangerEmptyFormData, getRatioTapChangerFormData, getRatioTapChangerValidationSchemaProps } from "./features/network-modifications/twoWindingsTransformer/tapChanger/ratioTapChanger/ratioTapChanger.utils.js";
433
+ import { computeRatioTapChangerRegulating, getComputedPreviousRatioRegulationType, getComputedRegulationMode, getComputedRegulationModeId, getComputedRegulationType, getComputedRegulationTypeId, getComputedTapSide, getComputedTapSideId, getInitialTwtRatioRegulationModeId, getRatioTapChangerEmptyFormData, getRatioTapChangerFormData, getRatioTapChangerValidationSchemaProps } from "./features/network-modifications/twoWindingsTransformer/tapChanger/ratioTapChanger/ratioTapChanger.utils.js";
434
434
  import { RatioTapChangerPaneSteps } from "./features/network-modifications/twoWindingsTransformer/tapChanger/ratioTapChanger/RatioTapChangerPaneSteps.js";
435
435
  import { RatioTapChangerPane } from "./features/network-modifications/twoWindingsTransformer/tapChanger/ratioTapChanger/RatioTapChangerPane.js";
436
436
  import { RegulatedTerminalSection } from "./features/network-modifications/twoWindingsTransformer/tapChanger/RegulatedTerminalSection.js";
437
437
  import { TapChangerSteps } from "./features/network-modifications/twoWindingsTransformer/tapChanger/TapChangerSteps.js";
438
438
  import { PhaseTapChangerRegulationMode } from "./features/network-modifications/twoWindingsTransformer/creation/twoWindingsTransformerCreation.types.js";
439
439
  import { computeRatioTapChangerRegulationMode, getRegulationTypeForEdit, getTapSideForEdit, twoWindingsTransformerCreationDtoToForm, twoWindingsTransformerCreationEmptyFormData, twoWindingsTransformerCreationFormSchema, twoWindingsTransformerCreationFormToDto } from "./features/network-modifications/twoWindingsTransformer/creation/twoWindingsTransformerCreation.utils.js";
440
- import { twoWindingsTransformerModificationEmptyFormData, twoWindingsTransformerModificationFormSchema } from "./features/network-modifications/twoWindingsTransformer/modification/twoWindingsTransformerModification.utils.js";
440
+ import { getPhaseTapChangerEmptyModificationDto, getRatioTapChangerEmptyModificationDto, twoWindingsTransformerModificationDtoToForm, twoWindingsTransformerModificationEmptyFormData, twoWindingsTransformerModificationFormSchema, twoWindingsTransformerModificationFormToDto } from "./features/network-modifications/twoWindingsTransformer/modification/twoWindingsTransformerModification.utils.js";
441
441
  import { getToBeEstimatedValidationSchemaObject, toBeEstimatedEmptyFormData } from "./features/network-modifications/twoWindingsTransformer/modification/measurements/toBeEstimated.utils.js";
442
442
  import { ToBeEstimatedForm } from "./features/network-modifications/twoWindingsTransformer/modification/measurements/ToBeEstimatedForm.js";
443
443
  import { StaticVarCompensatorDialogHeader } from "./features/network-modifications/static-var-compensator/common/static-var-compensator-dialog-header.js";
@@ -489,6 +489,7 @@ import { ProcessConfigModificationsEdition } from "./features/process-configs/co
489
489
  import { isProcessType } from "./features/process-configs/process-config.utils.js";
490
490
  import { LFProcessConfigEditionDialog } from "./features/process-configs/lf-process-config-edition-dialog.js";
491
491
  import { SAProcessConfigEditionDialog } from "./features/process-configs/sa-process-config-edition-dialog.js";
492
+ import { SCProcessConfigEditionDialog } from "./features/process-configs/sc-process-config-edition-dialog.js";
492
493
  import { GlobalFilterPanel } from "./features/global-filter/ui/global-filter-panel.js";
493
494
  import { GlobalFilterType, isCriteriaFilter, isCriteriaFilterType } from "./features/global-filter/types/global-filter.type.js";
494
495
  import { LimitTypes } from "./features/global-filter/types/limit-violation.type.js";
@@ -1129,6 +1130,7 @@ export {
1129
1130
  RunningStatus,
1130
1131
  SAProcessConfigEditionDialog,
1131
1132
  SCENARIO_DURATION,
1133
+ SCProcessConfigEditionDialog,
1132
1134
  SEARCH_EQUIPMENTS,
1133
1135
  SECTION_COUNT_MUST_BE_BETWEEN_ZERO_AND_MAXIMUM_SECTION_COUNT,
1134
1136
  SELECTED,
@@ -1341,6 +1343,7 @@ export {
1341
1343
  componentsFr,
1342
1344
  computeHighTapPosition,
1343
1345
  computeQ0,
1346
+ computeRatioTapChangerRegulating,
1344
1347
  computeRatioTapChangerRegulationMode,
1345
1348
  computeSwitchedOnValue,
1346
1349
  computeTagMinSize,
@@ -1601,6 +1604,7 @@ export {
1601
1604
  getOptionLabel,
1602
1605
  getPccMinStudyParameters,
1603
1606
  getPhaseTapChangerEmptyFormData,
1607
+ getPhaseTapChangerEmptyModificationDto,
1604
1608
  getPhaseTapChangerFormData,
1605
1609
  getPhaseTapChangerValidationSchemaProps,
1606
1610
  getPhaseTapRegulationSideId,
@@ -1615,6 +1619,7 @@ export {
1615
1619
  getPropertyValue,
1616
1620
  getRangeInputSchema,
1617
1621
  getRatioTapChangerEmptyFormData,
1622
+ getRatioTapChangerEmptyModificationDto,
1618
1623
  getRatioTapChangerFormData,
1619
1624
  getRatioTapChangerValidationSchemaProps,
1620
1625
  getReactiveCapabilityCurveValidationSchema,
@@ -1868,8 +1873,10 @@ export {
1868
1873
  twoWindingsTransformerCreationEmptyFormData,
1869
1874
  twoWindingsTransformerCreationFormSchema,
1870
1875
  twoWindingsTransformerCreationFormToDto,
1876
+ twoWindingsTransformerModificationDtoToForm,
1871
1877
  twoWindingsTransformerModificationEmptyFormData,
1872
1878
  twoWindingsTransformerModificationFormSchema,
1879
+ twoWindingsTransformerModificationFormToDto,
1873
1880
  unitToKiloUnit,
1874
1881
  unitToMicroUnit,
1875
1882
  unmarkEditingGlobalFilter,
@@ -316,6 +316,7 @@ export declare const networkModificationsEn: {
316
316
  OnLoad: string;
317
317
  RegulationMode: string;
318
318
  TargetVoltage: string;
319
+ None: string;
319
320
  TargetVoltageMustBeGreaterThanZero: string;
320
321
  Deadband: string;
321
322
  TargetDeadbandMustBeGreaterOrEqualToZero: string;
@@ -359,6 +360,11 @@ export declare const networkModificationsEn: {
359
360
  GeneratePhaseTapRowsError: string;
360
361
  GenerateRatioTapRowsError: string;
361
362
  RatioValuesError: string;
363
+ ModifyTwoWindingsTransformer: string;
364
+ TwoWindingsTransformerModificationError: string;
365
+ EstimateTapPositionSection: string;
366
+ RatioTapChangerEstimateTapPosition: string;
367
+ PhaseTapChangerEstimateTapPosition: string;
362
368
  maximumSusceptance: string;
363
369
  minSusceptance: string;
364
370
  maxQAtVnominal: string;
@@ -311,6 +311,7 @@ const networkModificationsEn = {
311
311
  OnLoad: "On-load tap changing",
312
312
  RegulationMode: "Regulation mode",
313
313
  TargetVoltage: "Voltage setpoint",
314
+ None: "None",
314
315
  TargetVoltageMustBeGreaterThanZero: "Voltage value must be greater than 0",
315
316
  Deadband: "Deadband",
316
317
  TargetDeadbandMustBeGreaterOrEqualToZero: "Deadband value must be greater than or equal to 0",
@@ -354,6 +355,11 @@ const networkModificationsEn = {
354
355
  GeneratePhaseTapRowsError: "Please generate the phase changer steps",
355
356
  GenerateRatioTapRowsError: "Please generate the ratio changer steps",
356
357
  RatioValuesError: "The values of the ratio tap ratios must be ordered and without duplicates",
358
+ ModifyTwoWindingsTransformer: "Modify a 2 windings transformer",
359
+ TwoWindingsTransformerModificationError: "Error while modifying a 2 windings transformer",
360
+ EstimateTapPositionSection: "Estimate tap position",
361
+ RatioTapChangerEstimateTapPosition: "Ratio tap changer",
362
+ PhaseTapChangerEstimateTapPosition: "Phase tap changer",
357
363
  maximumSusceptance: "Susceptance max",
358
364
  minSusceptance: "Susceptance min",
359
365
  maxQAtVnominal: "Q max at nominal voltage",
@@ -7,10 +7,12 @@
7
7
  export declare const processConfigEn: {
8
8
  'process_config/editLFProcessConfigTitle': string;
9
9
  'process_config/editSAProcessConfigTitle': string;
10
+ 'process_config/editSCProcessConfigTitle': string;
10
11
  'process_config/modifications': string;
11
12
  'process_config/providersParameters': string;
12
13
  'process_config/loadflow': string;
13
14
  'process_config/securityAnalysis': string;
15
+ 'process_config/shortcircuit': string;
14
16
  'processConfig/fetchProcessConfigError': string;
15
17
  'processConfig/updateProcessConfigError': string;
16
18
  };
@@ -1,10 +1,12 @@
1
1
  const processConfigEn = {
2
2
  "process_config/editLFProcessConfigTitle": "Edit a loadflow process configuration",
3
3
  "process_config/editSAProcessConfigTitle": "Edit a security analysis with contingency process configuration",
4
+ "process_config/editSCProcessConfigTitle": "Edit a shortcircuit process configuration",
4
5
  "process_config/modifications": "Modifications",
5
6
  "process_config/providersParameters": "Providers parameters",
6
7
  "process_config/loadflow": "Loadflow",
7
8
  "process_config/securityAnalysis": "Security analysis",
9
+ "process_config/shortcircuit": "Short circuit",
8
10
  "processConfig/fetchProcessConfigError": "An error occured when fetching the process configuration",
9
11
  "processConfig/updateProcessConfigError": "An error occurred while updating the process configuration"
10
12
  };
@@ -316,6 +316,7 @@ export declare const networkModificationsFr: {
316
316
  OnLoad: string;
317
317
  RegulationMode: string;
318
318
  TargetVoltage: string;
319
+ None: string;
319
320
  TargetVoltageMustBeGreaterThanZero: string;
320
321
  Deadband: string;
321
322
  TargetDeadbandMustBeGreaterOrEqualToZero: string;
@@ -359,6 +360,11 @@ export declare const networkModificationsFr: {
359
360
  GeneratePhaseTapRowsError: string;
360
361
  GenerateRatioTapRowsError: string;
361
362
  RatioValuesError: string;
363
+ ModifyTwoWindingsTransformer: string;
364
+ TwoWindingsTransformerModificationError: string;
365
+ EstimateTapPositionSection: string;
366
+ RatioTapChangerEstimateTapPosition: string;
367
+ PhaseTapChangerEstimateTapPosition: string;
362
368
  maximumSusceptance: string;
363
369
  minSusceptance: string;
364
370
  maxQAtVnominal: string;
@@ -311,6 +311,7 @@ const networkModificationsFr = {
311
311
  OnLoad: "Passage de prises en charge",
312
312
  RegulationMode: "Mode de réglage",
313
313
  TargetVoltage: "Consigne de tension",
314
+ None: "Aucun",
314
315
  TargetVoltageMustBeGreaterThanZero: "La tension doit être supérieure à 0",
315
316
  Deadband: "Bande morte",
316
317
  TargetDeadbandMustBeGreaterOrEqualToZero: "La valeur de la bande morte doit être supérieure ou égale à 0",
@@ -354,6 +355,11 @@ const networkModificationsFr = {
354
355
  GeneratePhaseTapRowsError: "Veuillez générer les prises du déphaseur",
355
356
  GenerateRatioTapRowsError: "Veuillez générer les prises du régleur",
356
357
  RatioValuesError: "Les rapports de transformation doivent être ordonnés et sans duplication",
358
+ ModifyTwoWindingsTransformer: "Modifier un transformateur à 2 enroulements",
359
+ TwoWindingsTransformerModificationError: "Erreur lors de la modification d'un transformateur à 2 enroulement",
360
+ EstimateTapPositionSection: "Estimer prise",
361
+ RatioTapChangerEstimateTapPosition: "Régleur",
362
+ PhaseTapChangerEstimateTapPosition: "Déphaseur",
357
363
  maximumSusceptance: "Susceptance max",
358
364
  minSusceptance: "Susceptance min",
359
365
  maxQAtVnominal: "Q max à tension nominale",
@@ -7,10 +7,12 @@
7
7
  export declare const processConfigFr: {
8
8
  'process_config/editLFProcessConfigTitle': string;
9
9
  'process_config/editSAProcessConfigTitle': string;
10
+ 'process_config/editSCProcessConfigTitle': string;
10
11
  'process_config/modifications': string;
11
12
  'process_config/providersParameters': string;
12
13
  'process_config/loadflow': string;
13
14
  'process_config/securityAnalysis': string;
15
+ 'process_config/shortcircuit': string;
14
16
  'processConfig/fetchProcessConfigError': string;
15
17
  'processConfig/updateProcessConfigError': string;
16
18
  };
@@ -1,10 +1,12 @@
1
1
  const processConfigFr = {
2
2
  "process_config/editLFProcessConfigTitle": "Éditer une configuration de chaîne de calcul de répartition",
3
3
  "process_config/editSAProcessConfigTitle": "Éditer une configuration d'analyse de sécurité sous aléas",
4
+ "process_config/editSCProcessConfigTitle": "Éditer une configuration de chaîne de court-circuit",
4
5
  "process_config/modifications": "Modifications",
5
6
  "process_config/providersParameters": "Paramètres des simulateurs",
6
7
  "process_config/loadflow": "Calcul de répartition",
7
8
  "process_config/securityAnalysis": "Analyse de sécurité",
9
+ "process_config/shortcircuit": "Calcul de court-circuit",
8
10
  "processConfig/fetchProcessConfigError": "Une erreur est survenue lors de la récupération de la configuration de chaîne",
9
11
  "processConfig/updateProcessConfigError": "Une erreur est survenue lors de la mise à jour de la configuration de chaîne"
10
12
  };