@gridsuite/commons-ui 0.193.0 → 0.195.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 (112) hide show
  1. package/dist/components/directoryItemSelector/DirectoryItemSelector.js +0 -1
  2. package/dist/components/dnd-table-v2/deletable-table-row.d.ts +7 -0
  3. package/dist/components/dnd-table-v2/deletable-table-row.js +37 -0
  4. package/dist/components/dnd-table-v2/dnd-table-add-rows-dialog.d.ts +13 -0
  5. package/dist/components/dnd-table-v2/dnd-table-add-rows-dialog.js +75 -0
  6. package/dist/components/dnd-table-v2/dnd-table-bottom-left-buttons.d.ts +17 -0
  7. package/dist/components/dnd-table-v2/dnd-table-bottom-left-buttons.js +48 -0
  8. package/dist/components/dnd-table-v2/dnd-table-bottom-right-buttons.d.ts +17 -0
  9. package/dist/components/dnd-table-v2/dnd-table-bottom-right-buttons.js +103 -0
  10. package/dist/components/dnd-table-v2/dnd-table-row.d.ts +23 -0
  11. package/dist/components/dnd-table-v2/dnd-table-row.js +183 -0
  12. package/dist/components/dnd-table-v2/dnd-table-utils.d.ts +2 -0
  13. package/dist/components/dnd-table-v2/dnd-table-utils.js +10 -0
  14. package/dist/components/dnd-table-v2/dnd-table.d.ts +32 -0
  15. package/dist/components/dnd-table-v2/dnd-table.js +381 -0
  16. package/dist/components/dnd-table-v2/dnd-table.type.d.ts +70 -0
  17. package/dist/components/dnd-table-v2/dnd-table.type.js +19 -0
  18. package/dist/components/dnd-table-v2/index.d.ts +12 -0
  19. package/dist/components/dnd-table-v2/index.js +16 -0
  20. package/dist/components/index.js +3 -8
  21. package/dist/components/inputs/reactHookForm/DirectoryItemsInput.d.ts +1 -2
  22. package/dist/components/inputs/reactHookForm/DirectoryItemsInput.js +2 -5
  23. package/dist/components/inputs/reactHookForm/booleans/BooleanInput.js +6 -4
  24. package/dist/components/inputs/reactQueryBuilder/OperatorSelector.js +0 -1
  25. package/dist/components/network-modifications/by-filter/assignment/assignment/assignment-form.js +72 -53
  26. package/dist/components/network-modifications/by-filter/assignment/assignment/assignment-utils.d.ts +1 -0
  27. package/dist/components/network-modifications/by-filter/assignment/assignment/assignment-utils.js +8 -5
  28. package/dist/components/network-modifications/by-filter/assignment/modificationByAssignment.utils.js +5 -5
  29. package/dist/components/parameters/common/contingency-table/columns-definitions.d.ts +4 -3
  30. package/dist/components/parameters/common/contingency-table/columns-definitions.js +23 -15
  31. package/dist/components/parameters/common/contingency-table/contingency-table.d.ts +2 -1
  32. package/dist/components/parameters/common/contingency-table/contingency-table.js +45 -44
  33. package/dist/components/parameters/common/contingency-table/index.js +2 -2
  34. package/dist/components/parameters/common/index.js +2 -2
  35. package/dist/components/parameters/common/parameter-field.js +2 -0
  36. package/dist/components/parameters/common/parameter-table/table-cell.js +1 -1
  37. package/dist/components/parameters/common/parameter-table-field/constants.d.ts +10 -0
  38. package/dist/components/parameters/common/parameter-table-field/constants.js +10 -0
  39. package/dist/components/parameters/common/{parameter-table → parameter-table-field}/index.d.ts +2 -3
  40. package/dist/components/parameters/common/parameter-table-field/index.js +9 -0
  41. package/dist/components/parameters/common/parameter-table-field/parameter-table-field.d.ts +11 -0
  42. package/dist/components/parameters/common/parameter-table-field/parameter-table-field.js +121 -0
  43. package/dist/components/parameters/common/parameters-edition-dialog-props.d.ts +1 -1
  44. package/dist/components/parameters/dynamic-margin-calculation/dynamic-margin-calculation-form.js +2 -0
  45. package/dist/components/parameters/dynamic-margin-calculation/dynamic-margin-calculation-inline.js +2 -0
  46. package/dist/components/parameters/dynamic-margin-calculation/loads-variations-parameters.js +7 -6
  47. package/dist/components/parameters/dynamic-margin-calculation/use-dynamic-margin-calculation-parameters-form.js +2 -0
  48. package/dist/components/parameters/dynamic-security-analysis/contingency-parameters.js +2 -0
  49. package/dist/components/parameters/dynamic-security-analysis/dynamic-security-analysis-inline.js +2 -0
  50. package/dist/components/parameters/dynamic-security-analysis/dynamic-security-analysis-parameters-form.js +2 -0
  51. package/dist/components/parameters/dynamic-security-analysis/use-dynamic-security-analysis-parameters-form.js +2 -0
  52. package/dist/components/parameters/dynamic-simulation/dynamic-simulation-inline.js +2 -0
  53. package/dist/components/parameters/dynamic-simulation/dynamic-simulation-parameters-form.js +2 -0
  54. package/dist/components/parameters/dynamic-simulation/mapping/mapping-parameters.js +0 -1
  55. package/dist/components/parameters/dynamic-simulation/use-dynamic-simulation-parameters-form.js +2 -0
  56. package/dist/components/parameters/index.js +3 -8
  57. package/dist/components/parameters/loadflow/load-flow-general-parameters.js +2 -0
  58. package/dist/components/parameters/loadflow/load-flow-parameters-content.js +2 -0
  59. package/dist/components/parameters/loadflow/load-flow-parameters-dialog.js +2 -0
  60. package/dist/components/parameters/loadflow/load-flow-parameters-header.js +2 -0
  61. package/dist/components/parameters/loadflow/load-flow-parameters-inline.js +3 -1
  62. package/dist/components/parameters/loadflow/load-flow-parameters-utils.js +2 -0
  63. package/dist/components/parameters/loadflow/use-load-flow-parameters-form.js +2 -0
  64. package/dist/components/parameters/network-visualizations/map-parameters.js +2 -0
  65. package/dist/components/parameters/network-visualizations/network-visualizations-form.js +2 -0
  66. package/dist/components/parameters/network-visualizations/network-visualizations-parameters-inline.js +3 -1
  67. package/dist/components/parameters/network-visualizations/single-line-diagram-parameters.js +2 -0
  68. package/dist/components/parameters/pcc-min/pcc-min-parameters-form.js +2 -0
  69. package/dist/components/parameters/pcc-min/pcc-min-parameters-inline.js +3 -1
  70. package/dist/components/parameters/security-analysis/columns-definitions.js +2 -0
  71. package/dist/components/parameters/security-analysis/security-analysis-parameters-dialog.js +3 -1
  72. package/dist/components/parameters/security-analysis/security-analysis-parameters-form.js +5 -4
  73. package/dist/components/parameters/security-analysis/security-analysis-parameters-inline.js +2 -0
  74. package/dist/components/parameters/security-analysis/security-analysis-parameters-selector.js +2 -0
  75. package/dist/components/parameters/security-analysis/security-analysis-violations-hiding.js +2 -0
  76. package/dist/components/parameters/security-analysis/use-security-analysis-parameters-form.d.ts +1 -1
  77. package/dist/components/parameters/security-analysis/use-security-analysis-parameters-form.js +7 -3
  78. package/dist/components/parameters/sensi/columns-definitions.d.ts +7 -180
  79. package/dist/components/parameters/sensi/columns-definitions.js +81 -73
  80. package/dist/components/parameters/sensi/index.js +1 -6
  81. package/dist/components/parameters/sensi/sensitivity-analysis-parameters-dialog.js +3 -1
  82. package/dist/components/parameters/sensi/sensitivity-analysis-parameters-form.js +4 -2
  83. package/dist/components/parameters/sensi/sensitivity-analysis-parameters-inline.js +2 -0
  84. package/dist/components/parameters/sensi/sensitivity-parameters-selector.js +52 -51
  85. package/dist/components/parameters/sensi/use-sensitivity-analysis-parameters.d.ts +2 -2
  86. package/dist/components/parameters/sensi/use-sensitivity-analysis-parameters.js +41 -61
  87. package/dist/components/parameters/sensi/utils.d.ts +4 -4
  88. package/dist/components/parameters/sensi/utils.js +8 -6
  89. package/dist/components/parameters/short-circuit/short-circuit-general-tab-panel.js +2 -0
  90. package/dist/components/parameters/short-circuit/short-circuit-parameters-content.js +2 -0
  91. package/dist/components/parameters/short-circuit/short-circuit-parameters-dialog.js +2 -0
  92. package/dist/components/parameters/short-circuit/short-circuit-parameters-inline.js +3 -1
  93. package/dist/components/parameters/short-circuit/short-circuit-parameters-utils.js +2 -0
  94. package/dist/components/parameters/short-circuit/short-circuit-power-electronics-tab-panel.js +2 -0
  95. package/dist/components/parameters/short-circuit/short-circuit-study-area-tab-panel.js +2 -0
  96. package/dist/components/parameters/short-circuit/use-short-circuit-parameters-form.js +2 -0
  97. package/dist/components/parameters/voltage-init/equipment-selection-parameters.js +2 -0
  98. package/dist/components/parameters/voltage-init/general-parameters.js +2 -0
  99. package/dist/components/parameters/voltage-init/voltage-init-parameters-form.js +2 -0
  100. package/dist/components/parameters/voltage-init/voltage-init-parameters-inline.js +3 -1
  101. package/dist/components/parameters/voltage-init/voltage-limits-parameters.js +17 -31
  102. package/dist/hooks/index.d.ts +0 -1
  103. package/dist/hooks/index.js +0 -2
  104. package/dist/index.js +3 -10
  105. package/package.json +1 -1
  106. package/dist/components/parameters/common/parameter-dnd-table-field.d.ts +0 -9
  107. package/dist/components/parameters/common/parameter-dnd-table-field.js +0 -86
  108. package/dist/components/parameters/common/parameter-table/index.js +0 -10
  109. package/dist/hooks/use-create-row-data.d.ts +0 -4
  110. package/dist/hooks/use-create-row-data.js +0 -19
  111. /package/dist/components/parameters/sensi/{sensitivity-Flow-parameters.d.ts → sensitivity-parameters-fields.d.ts} +0 -0
  112. /package/dist/components/parameters/sensi/{sensitivity-Flow-parameters.js → sensitivity-parameters-fields.js} +0 -0
@@ -0,0 +1,11 @@
1
+ import { SxProps, TooltipProps } from '@mui/material';
2
+ import { FieldValues } from 'react-hook-form';
3
+ import { DndTableProps } from '../../../dnd-table-v2';
4
+ export type ParameterDndTableFieldProps = {
5
+ label?: string;
6
+ tooltipProps?: Omit<TooltipProps, 'children'>;
7
+ sxContainerProps?: SxProps;
8
+ isValidRow?: (rowData: FieldValues) => boolean;
9
+ onChange?: () => void;
10
+ } & Omit<DndTableProps, 'useFieldArrayOutput' | 'onChange' | 'onDelete'>;
11
+ export declare function ParameterTableField({ name, label, columnsDefinition, tooltipProps, sxContainerProps, onChange, isValidRow, ...otherProps }: Readonly<ParameterDndTableFieldProps>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,121 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { Grid, Typography, Tooltip } from "@mui/material";
3
+ import { FormattedMessage } from "react-intl";
4
+ import { useFieldArray, useFormContext } from "react-hook-form";
5
+ import { Info } from "@mui/icons-material";
6
+ import { useRef, useMemo, useCallback } from "react";
7
+ import { DndTable } from "../../../dnd-table-v2/dnd-table.js";
8
+ import { getDefaultRowData } from "../../../dnd-table-v2/dnd-table-utils.js";
9
+ import "../../../overflowableText/OverflowableText.js";
10
+ import "../../../../utils/conversionUtils.js";
11
+ import "../../../../utils/types/equipmentType.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 "../../../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 "@material-symbols/svg-400/outlined/left_panel_open.svg?react";
27
+ import "@material-symbols/svg-400/outlined/arrows_output.svg?react";
28
+ import "@material-symbols/svg-400/outlined/left_panel_close.svg?react";
29
+ import "@material-symbols/svg-400/outlined/add_notes.svg?react";
30
+ import "../../../dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
31
+ import "../../../inputs/reactHookForm/expandableInput/ExpandableInput.js";
32
+ import "@react-querybuilder/material";
33
+ import "../../../filter/expert/expertFilterConstants.js";
34
+ import "../../../inputs/reactQueryBuilder/CustomReactQueryBuilder.js";
35
+ import "uuid";
36
+ import "../../../inputs/reactQueryBuilder/PropertyValueEditor.js";
37
+ import "react-querybuilder";
38
+ function ParameterTableField({
39
+ name,
40
+ label,
41
+ columnsDefinition,
42
+ tooltipProps,
43
+ sxContainerProps,
44
+ onChange,
45
+ isValidRow,
46
+ ...otherProps
47
+ }) {
48
+ const useFieldArrayOutput = useFieldArray({
49
+ name
50
+ });
51
+ const { getValues } = useFormContext();
52
+ const validRowCountRef = useRef(
53
+ getValues(name)?.filter((row) => isValidRow ? isValidRow(row) : true).length
54
+ );
55
+ const newDefaultRowData = useMemo(() => {
56
+ return getDefaultRowData(columnsDefinition);
57
+ }, [columnsDefinition]);
58
+ const createRows = useCallback(
59
+ (numberOfRows) => Array.from({ length: numberOfRows }, () => ({ ...newDefaultRowData })),
60
+ [newDefaultRowData]
61
+ );
62
+ const { title, ...otherTooltipProps } = tooltipProps || {};
63
+ const handleOnChange = useCallback(
64
+ (changedRow) => {
65
+ const currentValidRowCount = getValues(name).filter(
66
+ (row) => isValidRow ? isValidRow(row) : true
67
+ ).length;
68
+ const previousValidRowCount = validRowCountRef.current;
69
+ validRowCountRef.current = currentValidRowCount;
70
+ if (isValidRow ? isValidRow(changedRow) : true) {
71
+ onChange?.();
72
+ } else if (previousValidRowCount !== currentValidRowCount) {
73
+ onChange?.();
74
+ }
75
+ },
76
+ [isValidRow, onChange, getValues, name]
77
+ );
78
+ const handleOnDelete = useCallback(
79
+ (removedRows) => {
80
+ const wasValidRowCount = removedRows.filter(
81
+ (row) => isValidRow ? isValidRow(row) : true
82
+ ).length;
83
+ if (wasValidRowCount > 0) {
84
+ validRowCountRef.current -= wasValidRowCount;
85
+ onChange?.();
86
+ }
87
+ },
88
+ [isValidRow, onChange]
89
+ );
90
+ return /* @__PURE__ */ jsxs(Grid, { container: true, sx: sxContainerProps, children: [
91
+ label && /* @__PURE__ */ jsxs(Grid, { container: true, alignItems: "center", paddingBottom: 2, paddingTop: 2, children: [
92
+ /* @__PURE__ */ jsx(Typography, { component: "span", variant: "h6", children: /* @__PURE__ */ jsx(FormattedMessage, { id: label }) }),
93
+ tooltipProps && /* @__PURE__ */ jsx(
94
+ Tooltip,
95
+ {
96
+ title: typeof title === "string" ? /* @__PURE__ */ jsx(FormattedMessage, { id: title }) : title,
97
+ placement: "right-start",
98
+ sx: { marginLeft: 1 },
99
+ ...otherTooltipProps,
100
+ children: /* @__PURE__ */ jsx(Info, {})
101
+ }
102
+ )
103
+ ] }),
104
+ /* @__PURE__ */ jsx(
105
+ DndTable,
106
+ {
107
+ name,
108
+ useFieldArrayOutput,
109
+ columnsDefinition,
110
+ createRows,
111
+ withAddRowsDialog: false,
112
+ onChange: handleOnChange,
113
+ onDelete: handleOnDelete,
114
+ ...otherProps
115
+ }
116
+ )
117
+ ] });
118
+ }
119
+ export {
120
+ ParameterTableField
121
+ };
@@ -10,7 +10,7 @@ export interface ParametersEditionDialogProps {
10
10
  name: string;
11
11
  description: string | null;
12
12
  activeDirectory: UUID;
13
- isRootNode: boolean;
13
+ isRootNode?: boolean;
14
14
  language?: GsLang;
15
15
  user: User | null;
16
16
  globalBuildStatus?: BuildStatus;
@@ -40,6 +40,8 @@ import "react-querybuilder";
40
40
  import { getTabStyle, parametersStyles } from "../parameters-style.js";
41
41
  import "../common/widget/parameter-line-slider.js";
42
42
  import "../common/limitreductions/columns-definitions.js";
43
+ import "react-dom";
44
+ import "@hello-pangea/dnd";
43
45
  import "../common/contingency-table/columns-definitions.js";
44
46
  import { useTabs } from "../common/hook/use-tabs.js";
45
47
  import "@hookform/resolvers/yup";
@@ -46,6 +46,8 @@ import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
46
46
  import "react-querybuilder";
47
47
  import "../common/widget/parameter-line-slider.js";
48
48
  import "../common/limitreductions/columns-definitions.js";
49
+ import "react-dom";
50
+ import "@hello-pangea/dnd";
49
51
  import "../common/contingency-table/columns-definitions.js";
50
52
  import "@hookform/resolvers/yup";
51
53
  import "../../filter/HeaderFilterForm.js";
@@ -40,10 +40,10 @@ import "../../inputs/reactQueryBuilder/CustomReactQueryBuilder.js";
40
40
  import "uuid";
41
41
  import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
42
42
  import "react-querybuilder";
43
- import ParameterDndTableField from "../common/parameter-dnd-table-field.js";
43
+ import { ParameterTableField } from "../common/parameter-table-field/parameter-table-field.js";
44
44
  import "react-dom";
45
45
  import "@hello-pangea/dnd";
46
- import { DndColumnType } from "../../dnd-table/dnd-table.type.js";
46
+ import { DndColumnType } from "../../dnd-table-v2/dnd-table.type.js";
47
47
  const formSchema = yup.object().shape({
48
48
  [CALCULATION_TYPE]: yup.string().required(),
49
49
  [ACCURACY]: yup.number().required(),
@@ -95,7 +95,7 @@ const params = [
95
95
  ],
96
96
  sx: { width: "100%" }
97
97
  }
98
- // LOADS_VARIATIONS displayed in a separated component, i.e., ParameterDndTableField
98
+ // LOADS_VARIATIONS displayed in a separated component, i.e., ParameterTableField
99
99
  ];
100
100
  const loadsVariationsColumnsDefinition = [
101
101
  {
@@ -117,6 +117,7 @@ const loadsVariationsColumnsDefinition = [
117
117
  },
118
118
  {
119
119
  label: "DynamicMarginCalculationLoadsActive",
120
+ sxHeader: { textAlign: "center" },
120
121
  initialValue: true,
121
122
  dataKey: ACTIVE,
122
123
  editable: true,
@@ -126,7 +127,7 @@ const loadsVariationsColumnsDefinition = [
126
127
  ];
127
128
  function LoadsVariationsParameters({ path }) {
128
129
  const inlt = useIntl();
129
- const translatedColumnsDefinition = useMemo(() => {
130
+ const columnsDefinition = useMemo(() => {
130
131
  return loadsVariationsColumnsDefinition.map((colDef) => ({
131
132
  ...colDef,
132
133
  label: inlt.formatMessage({ id: colDef.label })
@@ -138,12 +139,12 @@ function LoadsVariationsParameters({ path }) {
138
139
  return /* @__PURE__ */ jsx(ParameterField, { id: path, name: param.name, type: param.type, ...otherParams }, param.name);
139
140
  }),
140
141
  /* @__PURE__ */ jsx(
141
- ParameterDndTableField,
142
+ ParameterTableField,
142
143
  {
143
144
  name: `${path}.${LOADS_VARIATIONS}`,
144
145
  label: "DynamicMarginCalculationLoadsVariations",
145
146
  tooltipProps: { title: "DynamicMarginCalculationLoadsVariations" },
146
- columnsDefinition: translatedColumnsDefinition,
147
+ columnsDefinition,
147
148
  tableHeight: 270
148
149
  }
149
150
  )
@@ -40,6 +40,8 @@ import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
40
40
  import "react-querybuilder";
41
41
  import "../common/widget/parameter-line-slider.js";
42
42
  import "../common/limitreductions/columns-definitions.js";
43
+ import "react-dom";
44
+ import "@hello-pangea/dnd";
43
45
  import "../common/contingency-table/columns-definitions.js";
44
46
  import { useParametersForm } from "../common/hook/use-parameters-form.js";
45
47
  import { LOADS_VARIATIONS, LOAD_MODELS_RULE, ACCURACY, CALCULATION_TYPE, LOAD_INCREASE_STOP_TIME, LOAD_INCREASE_START_TIME, MARGIN_CALCULATION_START_TIME, STOP_TIME, START_TIME } from "./constants.js";
@@ -39,6 +39,8 @@ import "react-querybuilder";
39
39
  import { ParameterLineDirectoryItemsInput } from "../common/widget/parameter-line-directory-items-input.js";
40
40
  import "../common/widget/parameter-line-slider.js";
41
41
  import "../common/limitreductions/columns-definitions.js";
42
+ import "react-dom";
43
+ import "@hello-pangea/dnd";
42
44
  import "../common/contingency-table/columns-definitions.js";
43
45
  import "@hookform/resolvers/yup";
44
46
  import "../../filter/HeaderFilterForm.js";
@@ -43,6 +43,8 @@ import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
43
43
  import "react-querybuilder";
44
44
  import "../common/widget/parameter-line-slider.js";
45
45
  import "../common/limitreductions/columns-definitions.js";
46
+ import "react-dom";
47
+ import "@hello-pangea/dnd";
46
48
  import "../common/contingency-table/columns-definitions.js";
47
49
  import "@hookform/resolvers/yup";
48
50
  import "../../filter/HeaderFilterForm.js";
@@ -42,6 +42,8 @@ import "react-querybuilder";
42
42
  import { getTabStyle, parametersStyles } from "../parameters-style.js";
43
43
  import "../common/widget/parameter-line-slider.js";
44
44
  import "../common/limitreductions/columns-definitions.js";
45
+ import "react-dom";
46
+ import "@hello-pangea/dnd";
45
47
  import "../common/contingency-table/columns-definitions.js";
46
48
  import { useTabs } from "../common/hook/use-tabs.js";
47
49
  import "@hookform/resolvers/yup";
@@ -39,6 +39,8 @@ import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
39
39
  import "react-querybuilder";
40
40
  import "../common/widget/parameter-line-slider.js";
41
41
  import "../common/limitreductions/columns-definitions.js";
42
+ import "react-dom";
43
+ import "@hello-pangea/dnd";
42
44
  import "../common/contingency-table/columns-definitions.js";
43
45
  import { useParametersForm } from "../common/hook/use-parameters-form.js";
44
46
  import { SCENARIO_DURATION, CONTINGENCIES_LIST_INFOS, CONTINGENCIES_START_TIME } from "./constants.js";
@@ -44,6 +44,8 @@ import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
44
44
  import "react-querybuilder";
45
45
  import "../common/widget/parameter-line-slider.js";
46
46
  import "../common/limitreductions/columns-definitions.js";
47
+ import "react-dom";
48
+ import "@hello-pangea/dnd";
47
49
  import "../common/contingency-table/columns-definitions.js";
48
50
  import "@hookform/resolvers/yup";
49
51
  import "../../filter/HeaderFilterForm.js";
@@ -40,6 +40,8 @@ import "react-querybuilder";
40
40
  import { getTabStyle, parametersStyles } from "../parameters-style.js";
41
41
  import "../common/widget/parameter-line-slider.js";
42
42
  import "../common/limitreductions/columns-definitions.js";
43
+ import "react-dom";
44
+ import "@hello-pangea/dnd";
43
45
  import "../common/contingency-table/columns-definitions.js";
44
46
  import { useTabs } from "../common/hook/use-tabs.js";
45
47
  import "@hookform/resolvers/yup";
@@ -15,7 +15,6 @@ import "localized-countries";
15
15
  import "localized-countries/data/fr";
16
16
  import "localized-countries/data/en";
17
17
  import { useSnackMessage } from "../../../../hooks/useSnackMessage.js";
18
- import "react-hook-form";
19
18
  function MappingParameters({ path }) {
20
19
  const { snackError } = useSnackMessage();
21
20
  const [mappings, setMappings] = useState([]);
@@ -49,6 +49,8 @@ import "react-querybuilder";
49
49
  import "../../dialogs/elementSaveDialog/ElementSaveDialog.js";
50
50
  import "../common/widget/parameter-line-slider.js";
51
51
  import "../common/limitreductions/columns-definitions.js";
52
+ import "react-dom";
53
+ import "@hello-pangea/dnd";
52
54
  import "../common/contingency-table/columns-definitions.js";
53
55
  import { useParametersForm } from "../common/hook/use-parameters-form.js";
54
56
  import { Curve } from "./curve/curve-parameters-constants.js";
@@ -17,7 +17,7 @@ import { LimitReductionsTableForm } from "./common/limitreductions/limit-reducti
17
17
  import { LimitReductionTableRow } from "./common/limitreductions/limit-reduction-table-row.js";
18
18
  import { LimitReductionTableCell } from "./common/limitreductions/limit-reduction-table-cell.js";
19
19
  import { ContingencyTable } from "./common/contingency-table/contingency-table.js";
20
- import { COLUMNS_DEFINITIONS_CONTINGENCY_LISTS_INFOS, ParamContingencyLists, getContingencyListsInfosFormSchema, toFormValuesContingencyListsInfos } from "./common/contingency-table/columns-definitions.js";
20
+ import { COLUMNS_DEFINITIONS_CONTINGENCY_LISTS_INFOS, getContingencyListsInfosFormSchema, isValidContingencyRow, toFormValuesContingencyListsInfos } from "./common/contingency-table/columns-definitions.js";
21
21
  import { useTabs } from "./common/hook/use-tabs.js";
22
22
  import { useParametersForm } from "./common/hook/use-parameters-form.js";
23
23
  import { CENTER_LABEL, COMPONENT_LIBRARY, DIAGONAL_LABEL, INTL_LINE_FLOW_MODE_OPTIONS, INTL_SUBSTATION_LAYOUT_OPTIONS, LINE_FLOW_MODE, LineFlowMode, MAP_BASE_MAP, MAP_MANUAL_REFRESH, NAD_POSITIONS_GENERATION_MODE, NAD_POSITIONS_GENERATION_MODE_LABEL, NetworkVisualizationTabValues, PARAM_CENTER_LABEL, PARAM_COMPONENT_LIBRARY, PARAM_DIAGONAL_LABEL, PARAM_LINE_FLOW_MODE, PARAM_LINE_FULL_PATH, PARAM_LINE_PARALLEL_PATH, PARAM_MAP_BASEMAP, PARAM_MAP_MANUAL_REFRESH, PARAM_NAD_POSITIONS_GENERATION_MODE, PARAM_SUBSTATION_LAYOUT, SUBSTATION_LAYOUT } from "./network-visualizations/constants.js";
@@ -40,7 +40,7 @@ import { SecurityAnalysisParametersInline } from "./security-analysis/security-a
40
40
  import { SecurityAnalysisParametersDialog } from "./security-analysis/security-analysis-parameters-dialog.js";
41
41
  import { SensitivityAnalysisParametersInline } from "./sensi/sensitivity-analysis-parameters-inline.js";
42
42
  import { SensitivityAnalysisParametersDialog } from "./sensi/sensitivity-analysis-parameters-dialog.js";
43
- import { COLUMNS_DEFINITIONS_HVDCS, COLUMNS_DEFINITIONS_INJECTIONS, COLUMNS_DEFINITIONS_INJECTIONS_SET, COLUMNS_DEFINITIONS_NODES, COLUMNS_DEFINITIONS_PSTS, EQUIPMENTS_IN_VOLTAGE_REGULATION_TYPES, HVDC_EQUIPMENT_TYPES, INJECTIONS_EQUIPMENT_TYPES, INJECTION_DISTRIBUTION_TYPES, MONITORED_BRANCHES_EQUIPMENT_TYPES, MONITORED_VOLTAGE_LEVELS_EQUIPMENT_TYPES, PSTS_EQUIPMENT_TYPES, SENSITIVITY_TYPES, SensiBranchesTabValues, SensiHvdcs, SensiInjection, SensiInjectionsSet, SensiNodes, SensiPsts, SensiTabValues } from "./sensi/columns-definitions.js";
43
+ import { COLUMNS_DEFINITIONS_HVDCS, COLUMNS_DEFINITIONS_INJECTIONS, COLUMNS_DEFINITIONS_INJECTIONS_SET, COLUMNS_DEFINITIONS_NODES, COLUMNS_DEFINITIONS_PSTS, EQUIPMENTS_IN_VOLTAGE_REGULATION_TYPES, HVDC_EQUIPMENT_TYPES, INJECTIONS_EQUIPMENT_TYPES, INJECTION_DISTRIBUTION_TYPES, MONITORED_BRANCHES_EQUIPMENT_TYPES, MONITORED_VOLTAGE_LEVELS_EQUIPMENT_TYPES, PSTS_EQUIPMENT_TYPES, SENSITIVITY_TYPES, SensiBranchesTabValues, SensiTabValues } from "./sensi/columns-definitions.js";
44
44
  import { DynamicSimulationInline } from "./dynamic-simulation/dynamic-simulation-inline.js";
45
45
  import { CONTINGENCIES_LIST_INFOS, CONTINGENCIES_START_TIME, SCENARIO_DURATION } from "./dynamic-security-analysis/constants.js";
46
46
  import { DynamicSecurityAnalysisInline } from "./dynamic-security-analysis/dynamic-security-analysis-inline.js";
@@ -160,7 +160,6 @@ export {
160
160
  PRIORITY,
161
161
  PROVIDER,
162
162
  PSTS_EQUIPMENT_TYPES,
163
- ParamContingencyLists,
164
163
  ParameterFloat,
165
164
  ParameterGroup,
166
165
  ParameterLineDirectoryItemsInput,
@@ -202,11 +201,6 @@ export {
202
201
  SecurityAnalysisParametersDialog,
203
202
  SecurityAnalysisParametersInline,
204
203
  SensiBranchesTabValues,
205
- SensiHvdcs,
206
- SensiInjection,
207
- SensiInjectionsSet,
208
- SensiNodes,
209
- SensiPsts,
210
204
  SensiTabValues,
211
205
  SensitivityAnalysisParametersDialog,
212
206
  SensitivityAnalysisParametersInline,
@@ -242,6 +236,7 @@ export {
242
236
  intlInitialVoltageProfileMode,
243
237
  intlPredefinedParametersOptions,
244
238
  isValidComputingType,
239
+ isValidContingencyRow,
245
240
  onlyStartedGeneratorsOptions,
246
241
  sanitizePercentageValue,
247
242
  toFormValuesContingencyListsInfos,
@@ -42,6 +42,8 @@ import "../common/widget/parameter-line-slider.js";
42
42
  import { COMMON_PARAMETERS, SPECIFIC_PARAMETERS } from "../common/constants.js";
43
43
  import "../../dialogs/elementSaveDialog/ElementSaveDialog.js";
44
44
  import "../common/limitreductions/columns-definitions.js";
45
+ import "react-dom";
46
+ import "@hello-pangea/dnd";
45
47
  import "../common/contingency-table/columns-definitions.js";
46
48
  import "@hookform/resolvers/yup";
47
49
  import "../../filter/HeaderFilterForm.js";
@@ -41,6 +41,8 @@ import "react-querybuilder";
41
41
  import { ParameterLineSlider } from "../common/widget/parameter-line-slider.js";
42
42
  import "../common/limitreductions/columns-definitions.js";
43
43
  import { LimitReductionsTableForm } from "../common/limitreductions/limit-reductions-table-form.js";
44
+ import "react-dom";
45
+ import "@hello-pangea/dnd";
44
46
  import "../common/contingency-table/columns-definitions.js";
45
47
  import "@hookform/resolvers/yup";
46
48
  import "../../filter/HeaderFilterForm.js";
@@ -42,6 +42,8 @@ import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
42
42
  import "react-querybuilder";
43
43
  import "../common/widget/parameter-line-slider.js";
44
44
  import "../common/limitreductions/columns-definitions.js";
45
+ import "react-dom";
46
+ import "@hello-pangea/dnd";
45
47
  import "../common/contingency-table/columns-definitions.js";
46
48
  import "@hookform/resolvers/yup";
47
49
  import { NameElementEditorForm } from "../common/name-element-editor/name-element-editor-form.js";
@@ -41,6 +41,8 @@ import { LineSeparator } from "../common/line-separator.js";
41
41
  import "../../dialogs/elementSaveDialog/ElementSaveDialog.js";
42
42
  import "../common/widget/parameter-line-slider.js";
43
43
  import "../common/limitreductions/columns-definitions.js";
44
+ import "react-dom";
45
+ import "@hello-pangea/dnd";
44
46
  import "../common/contingency-table/columns-definitions.js";
45
47
  import "@hookform/resolvers/yup";
46
48
  import "../../filter/HeaderFilterForm.js";
@@ -16,8 +16,8 @@ import "localized-countries";
16
16
  import "localized-countries/data/fr";
17
17
  import "localized-countries/data/en";
18
18
  import { useSnackMessage } from "../../../hooks/useSnackMessage.js";
19
- import "react-hook-form";
20
19
  import "../../overflowableText/OverflowableText.js";
20
+ import "react-hook-form";
21
21
  import "../../inputs/reactHookForm/provider/CustomFormProvider.js";
22
22
  import { SubmitButton } from "../../inputs/reactHookForm/utils/SubmitButton.js";
23
23
  import "yup";
@@ -46,6 +46,8 @@ import { LineSeparator } from "../common/line-separator.js";
46
46
  import { CreateParameterDialog } from "../common/parameters-creation-dialog.js";
47
47
  import "../common/widget/parameter-line-slider.js";
48
48
  import "../common/limitreductions/columns-definitions.js";
49
+ import "react-dom";
50
+ import "@hello-pangea/dnd";
49
51
  import "../common/contingency-table/columns-definitions.js";
50
52
  import "@hookform/resolvers/yup";
51
53
  import "../../filter/HeaderFilterForm.js";
@@ -37,6 +37,8 @@ import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
37
37
  import "react-querybuilder";
38
38
  import "../common/widget/parameter-line-slider.js";
39
39
  import { LIMIT_REDUCTIONS_FORM, toFormValuesLimitReductions, IST_FORM, LIMIT_DURATION_FORM } from "../common/limitreductions/columns-definitions.js";
40
+ import "react-dom";
41
+ import "@hello-pangea/dnd";
40
42
  import "../common/contingency-table/columns-definitions.js";
41
43
  import "@hookform/resolvers/yup";
42
44
  import "../../filter/HeaderFilterForm.js";
@@ -43,6 +43,8 @@ import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
43
43
  import "react-querybuilder";
44
44
  import "../common/widget/parameter-line-slider.js";
45
45
  import { getLimitReductionsFormSchema, LIMIT_REDUCTIONS_FORM, toFormValuesLimitReductions } from "../common/limitreductions/columns-definitions.js";
46
+ import "react-dom";
47
+ import "@hello-pangea/dnd";
46
48
  import "../common/contingency-table/columns-definitions.js";
47
49
  import "../../filter/HeaderFilterForm.js";
48
50
  import { getNameElementEditorSchema, getNameElementEditorEmptyFormData } from "../common/name-element-editor/name-element-editor-utils.js";
@@ -43,6 +43,8 @@ import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
43
43
  import "react-querybuilder";
44
44
  import "../common/widget/parameter-line-slider.js";
45
45
  import "../common/limitreductions/columns-definitions.js";
46
+ import "react-dom";
47
+ import "@hello-pangea/dnd";
46
48
  import "../common/contingency-table/columns-definitions.js";
47
49
  import "@hookform/resolvers/yup";
48
50
  import "../../filter/HeaderFilterForm.js";
@@ -42,6 +42,8 @@ import { TabPanel } from "../common/parameters.js";
42
42
  import "../../dialogs/elementSaveDialog/ElementSaveDialog.js";
43
43
  import "../common/widget/parameter-line-slider.js";
44
44
  import "../common/limitreductions/columns-definitions.js";
45
+ import "react-dom";
46
+ import "@hello-pangea/dnd";
45
47
  import "../common/contingency-table/columns-definitions.js";
46
48
  import "@hookform/resolvers/yup";
47
49
  import "../../filter/HeaderFilterForm.js";
@@ -13,8 +13,8 @@ import "localized-countries";
13
13
  import "localized-countries/data/fr";
14
14
  import "localized-countries/data/en";
15
15
  import { useSnackMessage } from "../../../hooks/useSnackMessage.js";
16
- import "react-hook-form";
17
16
  import "../../overflowableText/OverflowableText.js";
17
+ import "react-hook-form";
18
18
  import "../../inputs/reactHookForm/provider/CustomFormProvider.js";
19
19
  import { SubmitButton } from "../../inputs/reactHookForm/utils/SubmitButton.js";
20
20
  import "yup";
@@ -41,6 +41,8 @@ import { LabelledButton } from "../common/parameters.js";
41
41
  import { CreateParameterDialog } from "../common/parameters-creation-dialog.js";
42
42
  import "../common/widget/parameter-line-slider.js";
43
43
  import "../common/limitreductions/columns-definitions.js";
44
+ import "react-dom";
45
+ import "@hello-pangea/dnd";
44
46
  import "../common/contingency-table/columns-definitions.js";
45
47
  import "@hookform/resolvers/yup";
46
48
  import "../../filter/HeaderFilterForm.js";
@@ -40,6 +40,8 @@ import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
40
40
  import "react-querybuilder";
41
41
  import "../common/widget/parameter-line-slider.js";
42
42
  import "../common/limitreductions/columns-definitions.js";
43
+ import "react-dom";
44
+ import "@hello-pangea/dnd";
43
45
  import "../common/contingency-table/columns-definitions.js";
44
46
  import "@hookform/resolvers/yup";
45
47
  import "../../filter/HeaderFilterForm.js";
@@ -39,6 +39,8 @@ import "../../dialogs/elementSaveDialog/ElementSaveDialog.js";
39
39
  import { ParameterLineDirectoryItemsInput } from "../common/widget/parameter-line-directory-items-input.js";
40
40
  import "../common/widget/parameter-line-slider.js";
41
41
  import "../common/limitreductions/columns-definitions.js";
42
+ import "react-dom";
43
+ import "@hello-pangea/dnd";
42
44
  import "../common/contingency-table/columns-definitions.js";
43
45
  import "@hookform/resolvers/yup";
44
46
  import "../../filter/HeaderFilterForm.js";
@@ -13,8 +13,8 @@ import "localized-countries";
13
13
  import "localized-countries/data/fr";
14
14
  import "localized-countries/data/en";
15
15
  import { useSnackMessage } from "../../../hooks/useSnackMessage.js";
16
- import "react-hook-form";
17
16
  import "../../overflowableText/OverflowableText.js";
17
+ import "react-hook-form";
18
18
  import "../../inputs/reactHookForm/provider/CustomFormProvider.js";
19
19
  import { SubmitButton } from "../../inputs/reactHookForm/utils/SubmitButton.js";
20
20
  import "yup";
@@ -42,6 +42,8 @@ import { LabelledButton } from "../common/parameters.js";
42
42
  import { CreateParameterDialog } from "../common/parameters-creation-dialog.js";
43
43
  import "../common/widget/parameter-line-slider.js";
44
44
  import "../common/limitreductions/columns-definitions.js";
45
+ import "react-dom";
46
+ import "@hello-pangea/dnd";
45
47
  import "../common/contingency-table/columns-definitions.js";
46
48
  import "@hookform/resolvers/yup";
47
49
  import "../../filter/HeaderFilterForm.js";
@@ -37,6 +37,8 @@ import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
37
37
  import "react-querybuilder";
38
38
  import "../common/widget/parameter-line-slider.js";
39
39
  import { toFormValuesLimitReductions, getLimitReductionsFormSchema } from "../common/limitreductions/columns-definitions.js";
40
+ import "react-dom";
41
+ import "@hello-pangea/dnd";
40
42
  import { toFormValuesContingencyListsInfos, getContingencyListsInfosFormSchema } from "../common/contingency-table/columns-definitions.js";
41
43
  import "@hookform/resolvers/yup";
42
44
  import "../../filter/HeaderFilterForm.js";
@@ -13,12 +13,12 @@ import "localized-countries/data/fr";
13
13
  import "localized-countries/data/en";
14
14
  import "notistack";
15
15
  import { useParametersBackend, OptionalServicesStatus } from "../../../hooks/use-parameters-backend.js";
16
- import "react-hook-form";
17
16
  import { useSecurityAnalysisParametersForm } from "./use-security-analysis-parameters-form.js";
18
17
  import { ComputingType } from "../common/computing-type.js";
19
18
  import { CustomMuiDialog } from "../../dialogs/customMuiDialog/CustomMuiDialog.js";
20
19
  import "../../dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
21
20
  import "../../dialogs/elementSaveDialog/ElementSaveDialog.js";
21
+ import "react-hook-form";
22
22
  import "../../treeViewFinder/TreeViewFinder.js";
23
23
  import "../../overflowableText/OverflowableText.js";
24
24
  import "../../inputs/reactHookForm/provider/CustomFormProvider.js";
@@ -42,6 +42,8 @@ import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
42
42
  import "react-querybuilder";
43
43
  import "../common/widget/parameter-line-slider.js";
44
44
  import "../common/limitreductions/columns-definitions.js";
45
+ import "react-dom";
46
+ import "@hello-pangea/dnd";
45
47
  import "../common/contingency-table/columns-definitions.js";
46
48
  import "@hookform/resolvers/yup";
47
49
  import { NameElementEditorForm } from "../common/name-element-editor/name-element-editor-form.js";
@@ -36,7 +36,7 @@ import "uuid";
36
36
  import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
37
37
  import "react-querybuilder";
38
38
  import { parametersStyles } from "../parameters-style.js";
39
- import { PARAM_SA_PROVIDER } from "../common/constants.js";
39
+ import { PARAM_SA_PROVIDER, CONTINGENCY_LISTS_INFOS } from "../common/constants.js";
40
40
  import { LineSeparator } from "../common/line-separator.js";
41
41
  import "../../dialogs/elementSaveDialog/ElementSaveDialog.js";
42
42
  import "../common/widget/parameter-line-slider.js";
@@ -84,7 +84,7 @@ function SecurityAnalysisParametersForm({
84
84
  },
85
85
  children: /* @__PURE__ */ jsxs(Box, { sx: styles.securityAnalysisParameters, children: [
86
86
  renderTitleFields?.(),
87
- securityAnalysisMethods.paramsLoaded ? /* @__PURE__ */ jsxs(Fragment, { children: [
87
+ securityAnalysisMethods.paramsFormInitialized ? /* @__PURE__ */ jsxs(Fragment, { children: [
88
88
  /* @__PURE__ */ jsxs(
89
89
  Grid,
90
90
  {
@@ -126,14 +126,15 @@ function SecurityAnalysisParametersForm({
126
126
  maxHeight: "100%"
127
127
  }),
128
128
  children: [
129
- /* @__PURE__ */ jsx(Grid, { children: /* @__PURE__ */ jsx(
129
+ /* @__PURE__ */ jsx(
130
130
  ContingencyTable,
131
131
  {
132
+ name: CONTINGENCY_LISTS_INFOS,
132
133
  showContingencyCount,
133
134
  fetchContingencyCount,
134
135
  isBuiltCurrentNode
135
136
  }
136
- ) }),
137
+ ),
137
138
  /* @__PURE__ */ jsx(Grid, { container: true, paddingTop: 4, paddingBottom: 2, children: /* @__PURE__ */ jsx(LineSeparator, {}) }),
138
139
  /* @__PURE__ */ jsx(
139
140
  SecurityAnalysisParametersSelector,
@@ -45,6 +45,8 @@ import "../../inputs/reactQueryBuilder/PropertyValueEditor.js";
45
45
  import "react-querybuilder";
46
46
  import "../common/widget/parameter-line-slider.js";
47
47
  import "../common/limitreductions/columns-definitions.js";
48
+ import "react-dom";
49
+ import "@hello-pangea/dnd";
48
50
  import "../common/contingency-table/columns-definitions.js";
49
51
  import "@hookform/resolvers/yup";
50
52
  import "../../filter/HeaderFilterForm.js";
@@ -38,6 +38,8 @@ import "react-querybuilder";
38
38
  import "../common/widget/parameter-line-slider.js";
39
39
  import { TabValues, TAB_INFO } from "../common/limitreductions/columns-definitions.js";
40
40
  import { LimitReductionsTableForm } from "../common/limitreductions/limit-reductions-table-form.js";
41
+ import "react-dom";
42
+ import "@hello-pangea/dnd";
41
43
  import "../common/contingency-table/columns-definitions.js";
42
44
  import "@hookform/resolvers/yup";
43
45
  import "../../filter/HeaderFilterForm.js";
@@ -39,6 +39,8 @@ import { PARAM_SA_FLOW_PROPORTIONAL_THRESHOLD, PARAM_SA_LOW_VOLTAGE_ABSOLUTE_THR
39
39
  import "../../dialogs/elementSaveDialog/ElementSaveDialog.js";
40
40
  import "../common/widget/parameter-line-slider.js";
41
41
  import "../common/limitreductions/columns-definitions.js";
42
+ import "react-dom";
43
+ import "@hello-pangea/dnd";
42
44
  import "../common/contingency-table/columns-definitions.js";
43
45
  import "@hookform/resolvers/yup";
44
46
  import "../../filter/HeaderFilterForm.js";