@gridsuite/commons-ui 0.257.0 → 0.258.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.
- package/dist/components/composite/filter/FilterForm.js +10 -0
- package/dist/components/composite/filter/HeaderFilterForm.d.ts +0 -10
- package/dist/components/composite/filter/HeaderFilterForm.js +4 -14
- package/dist/components/composite/filter/expert/ExpertFilterForm.js +3 -3
- package/dist/components/index.js +8 -0
- package/dist/components/ui/dialogs/index.d.ts +1 -0
- package/dist/components/ui/dialogs/index.js +8 -0
- package/dist/{features/parameters/common → components/ui/dialogs}/name-element-editor/index.d.ts +2 -1
- package/dist/components/ui/dialogs/name-element-editor/index.js +10 -0
- package/dist/{features/parameters/common → components/ui/dialogs}/name-element-editor/name-element-editor-form.js +5 -5
- package/dist/{features/parameters/common → components/ui/dialogs}/name-element-editor/name-element-editor-utils.d.ts +13 -3
- package/dist/{features/parameters/common → components/ui/dialogs}/name-element-editor/name-element-editor-utils.js +27 -22
- package/dist/components/ui/dialogs/name-element-editor/named-element-edition-dialog.d.ts +17 -0
- package/dist/components/ui/dialogs/name-element-editor/named-element-edition-dialog.js +49 -0
- package/dist/components/ui/index.js +8 -0
- package/dist/features/global-filter/context/global-filter-context-provider.d.ts +2 -0
- package/dist/features/global-filter/context/global-filter-context-provider.js +41 -0
- package/dist/features/global-filter/context/global-filter-context.d.ts +3 -0
- package/dist/features/global-filter/context/global-filter-context.js +13 -0
- package/dist/features/global-filter/context/global-filter-context.type.d.ts +14 -0
- package/dist/features/global-filter/context/global-filter-context.type.js +1 -0
- package/dist/features/global-filter/context/index.d.ts +8 -0
- package/dist/features/global-filter/context/index.js +4 -0
- package/dist/features/global-filter/global-filter.style.d.ts +162 -0
- package/dist/features/global-filter/global-filter.style.js +190 -0
- package/dist/features/global-filter/index.d.ts +10 -0
- package/dist/features/global-filter/index.js +31 -0
- package/dist/features/global-filter/types/global-filter.type.d.ts +51 -0
- package/dist/features/global-filter/types/global-filter.type.js +19 -0
- package/dist/features/global-filter/types/index.d.ts +8 -0
- package/dist/features/global-filter/types/index.js +8 -0
- package/dist/features/global-filter/types/limit-violation.type.d.ts +11 -0
- package/dist/features/global-filter/types/limit-violation.type.js +9 -0
- package/dist/features/global-filter/ui/global-filter-dropdown-panel.d.ts +10 -0
- package/dist/features/global-filter/ui/global-filter-dropdown-panel.js +251 -0
- package/dist/features/global-filter/ui/global-filter-panel.d.ts +9 -0
- package/dist/features/global-filter/ui/global-filter-panel.js +391 -0
- package/dist/features/global-filter/ui/label-with-info-tooltip.d.ts +12 -0
- package/dist/features/global-filter/ui/label-with-info-tooltip.js +24 -0
- package/dist/features/global-filter/ui/selected-global-filters.d.ts +4 -0
- package/dist/features/global-filter/ui/selected-global-filters.js +114 -0
- package/dist/features/global-filter/utils/build-valid-global-filters.d.ts +8 -0
- package/dist/features/global-filter/utils/build-valid-global-filters.js +51 -0
- package/dist/features/global-filter/utils/editing-global-filter-sync.d.ts +9 -0
- package/dist/features/global-filter/utils/editing-global-filter-sync.js +15 -0
- package/dist/features/global-filter/utils/global-filter-state.utils.d.ts +14 -0
- package/dist/features/global-filter/utils/global-filter-state.utils.js +71 -0
- package/dist/features/global-filter/utils/global-filter-sync.utils.d.ts +9 -0
- package/dist/features/global-filter/utils/global-filter-sync.utils.js +26 -0
- package/dist/features/global-filter/utils/global-filter-utils.d.ts +7 -0
- package/dist/features/global-filter/utils/global-filter-utils.js +44 -0
- package/dist/features/global-filter/utils/index.d.ts +11 -0
- package/dist/features/global-filter/utils/index.js +21 -0
- package/dist/features/index.d.ts +1 -0
- package/dist/features/index.js +42 -8
- package/dist/features/network-modification-table/renderers/description-cell.js +4 -0
- package/dist/features/parameters/common/hook/use-parameters-form.js +1 -2
- package/dist/features/parameters/common/parameters-creation-dialog.js +9 -0
- package/dist/features/parameters/dynamic-margin-calculation/dynamic-margin-calculation-form.js +0 -1
- package/dist/features/parameters/dynamic-margin-calculation/dynamic-margin-calculation-inline.js +0 -1
- package/dist/features/parameters/dynamic-security-analysis/contingency-parameters.js +0 -1
- package/dist/features/parameters/dynamic-security-analysis/dynamic-security-analysis-inline.js +0 -1
- package/dist/features/parameters/dynamic-security-analysis/dynamic-security-analysis-parameters-form.js +0 -1
- package/dist/features/parameters/dynamic-simulation/dynamic-simulation-inline.js +0 -1
- package/dist/features/parameters/dynamic-simulation/dynamic-simulation-parameters-form.js +0 -1
- package/dist/features/parameters/dynamic-simulation/mapping/mapping-parameters.js +0 -1
- package/dist/features/parameters/loadflow/load-flow-advanced-parameters.js +0 -1
- package/dist/features/parameters/loadflow/load-flow-general-parameters.js +0 -1
- package/dist/features/parameters/loadflow/load-flow-parameters-content.js +0 -1
- package/dist/features/parameters/loadflow/load-flow-parameters-dialog.js +4 -8
- package/dist/features/parameters/loadflow/load-flow-parameters-header.js +0 -1
- package/dist/features/parameters/loadflow/load-flow-parameters-inline.js +0 -1
- package/dist/features/parameters/loadflow/load-flow-parameters-utils.js +0 -1
- package/dist/features/parameters/loadflow/load-flow-provider-specific-parameters.js +0 -1
- package/dist/features/parameters/loadflow/use-load-flow-parameters-form.js +1 -2
- package/dist/features/parameters/network-visualizations/network-visualizations-form.js +0 -1
- package/dist/features/parameters/network-visualizations/network-visualizations-parameters-dialog.js +3 -7
- package/dist/features/parameters/network-visualizations/network-visualizations-parameters-inline.js +0 -1
- package/dist/features/parameters/network-visualizations/use-network-visualizations-parameters-form.js +1 -2
- package/dist/features/parameters/pcc-min/pcc-min-parameters-dialog.js +1 -5
- package/dist/features/parameters/pcc-min/pcc-min-parameters-inline.js +0 -1
- package/dist/features/parameters/pcc-min/use-pcc-min-parameters-form.js +1 -2
- package/dist/features/parameters/security-analysis/columns-definitions.js +1 -2
- package/dist/features/parameters/security-analysis/security-analysis-parameters-content.js +0 -1
- package/dist/features/parameters/security-analysis/security-analysis-parameters-dialog.js +2 -6
- package/dist/features/parameters/security-analysis/security-analysis-parameters-form.js +0 -1
- package/dist/features/parameters/security-analysis/security-analysis-parameters-inline.js +0 -1
- package/dist/features/parameters/security-analysis/security-analysis-parameters-utils.js +0 -1
- package/dist/features/parameters/security-analysis/use-security-analysis-parameters-form.js +1 -2
- package/dist/features/parameters/sensi/columns-definitions.js +0 -1
- package/dist/features/parameters/sensi/sensitivity-analysis-parameters-dialog.js +1 -5
- package/dist/features/parameters/sensi/sensitivity-analysis-parameters-form.js +0 -1
- package/dist/features/parameters/sensi/sensitivity-analysis-parameters-inline.js +0 -1
- package/dist/features/parameters/sensi/sensitivity-parameters-selector.js +0 -1
- package/dist/features/parameters/sensi/use-sensitivity-analysis-parameters.js +1 -2
- package/dist/features/parameters/sensi/utils.js +1 -2
- package/dist/features/parameters/short-circuit/short-circuit-general-tab-panel.js +0 -1
- package/dist/features/parameters/short-circuit/short-circuit-parameters-content.js +0 -1
- package/dist/features/parameters/short-circuit/short-circuit-parameters-dialog.js +1 -5
- package/dist/features/parameters/short-circuit/short-circuit-parameters-inline.js +0 -1
- package/dist/features/parameters/short-circuit/short-circuit-parameters-utils.js +0 -1
- package/dist/features/parameters/short-circuit/short-circuit-power-electronics-tab-panel.js +0 -1
- package/dist/features/parameters/short-circuit/short-circuit-study-area-tab-panel.js +0 -1
- package/dist/features/parameters/short-circuit/use-short-circuit-parameters-form.js +1 -2
- package/dist/features/parameters/voltage-init/equipment-selection-parameters.js +0 -1
- package/dist/features/parameters/voltage-init/general-parameters.js +0 -1
- package/dist/features/parameters/voltage-init/use-voltage-init-parameters-form.js +1 -2
- package/dist/features/parameters/voltage-init/voltage-init-parameters-dialog.js +1 -5
- package/dist/features/parameters/voltage-init/voltage-init-parameters-form.js +0 -1
- package/dist/features/parameters/voltage-init/voltage-init-parameters-inline.js +0 -1
- package/dist/features/process-configs/common/index.d.ts +9 -0
- package/dist/features/process-configs/common/index.js +11 -0
- package/dist/features/process-configs/common/process-config-modifications-edition.d.ts +3 -0
- package/dist/features/process-configs/common/process-config-modifications-edition.js +129 -0
- package/dist/features/process-configs/common/process-config-modifications-edition.utils.d.ts +53 -0
- package/dist/features/process-configs/common/process-config-modifications-edition.utils.js +50 -0
- package/dist/features/process-configs/common/process-config.type.d.ts +14 -0
- package/dist/features/process-configs/index.d.ts +6 -3
- package/dist/features/process-configs/index.js +13 -8
- package/dist/features/process-configs/lf-process-config-edition-dialog.d.ts +3 -0
- package/dist/features/process-configs/lf-process-config-edition-dialog.js +136 -0
- package/dist/features/process-configs/loadflow/index.d.ts +9 -0
- package/dist/features/process-configs/loadflow/index.js +9 -0
- package/dist/features/process-configs/loadflow/lf-process-config-edition.d.ts +1 -0
- package/dist/features/process-configs/loadflow/lf-process-config-edition.js +91 -0
- package/dist/features/process-configs/loadflow/lf-process-config-edition.utils.d.ts +39 -0
- package/dist/features/process-configs/{security-analysis/update-sa-process-config-dialog.js → loadflow/lf-process-config-edition.utils.js} +53 -81
- package/dist/features/process-configs/loadflow/lf-process-config.type.d.ts +6 -0
- package/dist/features/process-configs/loadflow/lf-process-config.type.js +1 -0
- package/dist/features/process-configs/process-config-edition.utils.d.ts +13 -0
- package/dist/features/process-configs/process-config-edition.utils.js +1 -0
- package/dist/features/process-configs/process-config.type.d.ts +14 -0
- package/dist/features/process-configs/process-config.type.js +1 -0
- package/dist/features/process-configs/process-config.utils.d.ts +2 -0
- package/dist/features/process-configs/{update-process-config-modifications.js → process-config.utils.js} +11 -74
- package/dist/features/process-configs/sa-process-config-edition-dialog.d.ts +3 -0
- package/dist/features/process-configs/sa-process-config-edition-dialog.js +136 -0
- package/dist/features/process-configs/security-analysis/index.d.ts +4 -3
- package/dist/features/process-configs/security-analysis/index.js +7 -8
- package/dist/features/process-configs/security-analysis/sa-process-config-edition.d.ts +1 -0
- package/dist/features/process-configs/security-analysis/{update-sa-process-config.js → sa-process-config-edition.js} +5 -13
- package/dist/features/process-configs/security-analysis/sa-process-config-edition.utils.d.ts +45 -0
- package/dist/features/process-configs/security-analysis/sa-process-config-edition.utils.js +119 -0
- package/dist/features/process-configs/security-analysis/sa-process-config.type.d.ts +7 -0
- package/dist/features/process-configs/security-analysis/sa-process-config.type.js +1 -0
- package/dist/index.js +50 -8
- package/dist/translations/en/processConfigEn.d.ts +3 -0
- package/dist/translations/en/processConfigEn.js +5 -2
- package/dist/translations/fr/processConfigFr.d.ts +3 -0
- package/dist/translations/fr/processConfigFr.js +5 -2
- package/package.json +1 -1
- package/dist/features/parameters/common/name-element-editor/index.js +0 -7
- package/dist/features/process-configs/process-configs.type.d.ts +0 -33
- package/dist/features/process-configs/security-analysis/update-sa-process-config-dialog.d.ts +0 -14
- package/dist/features/process-configs/security-analysis/update-sa-process-config.d.ts +0 -7
- package/dist/features/process-configs/security-analysis/update-sa-process-configs-utils.d.ts +0 -68
- package/dist/features/process-configs/security-analysis/update-sa-process-configs-utils.js +0 -88
- package/dist/features/process-configs/update-process-config-modifications.d.ts +0 -3
- /package/dist/{features/parameters/common → components/ui/dialogs}/name-element-editor/name-element-editor-form.d.ts +0 -0
- /package/dist/features/process-configs/{process-configs.type.js → common/process-config.type.js} +0 -0
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Box, Tooltip } from "@mui/material";
|
|
3
|
+
import { useIntl, FormattedMessage } from "react-intl";
|
|
4
|
+
import { Info } from "@mui/icons-material";
|
|
5
|
+
import { resultsGlobalFilterStyles } from "../global-filter.style.js";
|
|
6
|
+
function LabelWithInfoTooltip({ text, tooltipMessage }) {
|
|
7
|
+
const intl = useIntl();
|
|
8
|
+
return /* @__PURE__ */ jsxs(
|
|
9
|
+
Box,
|
|
10
|
+
{
|
|
11
|
+
sx: {
|
|
12
|
+
display: "flex",
|
|
13
|
+
alignItems: "center"
|
|
14
|
+
},
|
|
15
|
+
children: [
|
|
16
|
+
/* @__PURE__ */ jsx(FormattedMessage, { id: text }),
|
|
17
|
+
/* @__PURE__ */ jsx(Tooltip, { title: intl.formatMessage({ id: tooltipMessage }), arrow: true, placement: "right", children: /* @__PURE__ */ jsx(Info, { fontSize: "medium", sx: resultsGlobalFilterStyles.cellTooltip }) })
|
|
18
|
+
]
|
|
19
|
+
}
|
|
20
|
+
);
|
|
21
|
+
}
|
|
22
|
+
export {
|
|
23
|
+
LabelWithInfoTooltip
|
|
24
|
+
};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { GlobalFilterProps } from './global-filter-panel';
|
|
2
|
+
type SelectedGlobalFiltersProps = Pick<GlobalFilterProps, 'translateCountryCode'>;
|
|
3
|
+
declare function SelectedGlobalFilters({ translateCountryCode }: Readonly<SelectedGlobalFiltersProps>): import("react").JSX.Element;
|
|
4
|
+
export default SelectedGlobalFilters;
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { List, ListItem, Divider, Typography, Box } from "@mui/material";
|
|
3
|
+
import { useIntl, FormattedMessage } from "react-intl";
|
|
4
|
+
import { GlobalFilterType } from "../types/global-filter.type.js";
|
|
5
|
+
import { resultsGlobalFilterStyles, getResultsGlobalFiltersChipStyle } from "../global-filter.style.js";
|
|
6
|
+
import { getOptionLabel } from "../utils/global-filter-utils.js";
|
|
7
|
+
import { useGlobalFilterContext } from "../context/global-filter-context.js";
|
|
8
|
+
import "@mui/icons-material";
|
|
9
|
+
import { OverflowableChip } from "../../../components/ui/reactHookForm/OverflowableChip.js";
|
|
10
|
+
import "../../../utils/conversionUtils.js";
|
|
11
|
+
import { EquipmentType } from "../../../utils/types/equipmentType.js";
|
|
12
|
+
import "react";
|
|
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/overflowableText/OverflowableText.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.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 "../../../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
|
+
function SelectedGlobalFilters({ translateCountryCode }) {
|
|
65
|
+
const { selectedGlobalFilters, unselectGlobalFilters } = useGlobalFilterContext();
|
|
66
|
+
const intl = useIntl();
|
|
67
|
+
const filtersByCategories = /* @__PURE__ */ new Map();
|
|
68
|
+
const onlySubstationFilters = selectedGlobalFilters.filter((filter) => filter.filterType === GlobalFilterType.SUBSTATION_OR_VL).every((filter) => filter.equipmentType === EquipmentType.SUBSTATION);
|
|
69
|
+
selectedGlobalFilters.forEach((filter) => {
|
|
70
|
+
let displayedCategoryTitle = `results.globalFilter.${filter.filterType}`;
|
|
71
|
+
if (filter.equipmentType !== void 0) {
|
|
72
|
+
if (filter.filterType === GlobalFilterType.GENERIC_FILTER) {
|
|
73
|
+
displayedCategoryTitle = filter.equipmentType;
|
|
74
|
+
} else if (filter.filterType === GlobalFilterType.SUBSTATION_OR_VL) {
|
|
75
|
+
if (onlySubstationFilters) {
|
|
76
|
+
displayedCategoryTitle = "results.globalFilter.substationFilter";
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
if (!filtersByCategories.has(displayedCategoryTitle)) {
|
|
81
|
+
filtersByCategories.set(displayedCategoryTitle, []);
|
|
82
|
+
}
|
|
83
|
+
filtersByCategories.get(displayedCategoryTitle)?.push(filter);
|
|
84
|
+
});
|
|
85
|
+
const entries = Array.from(filtersByCategories.entries());
|
|
86
|
+
const sortOrder = Object.values(GlobalFilterType);
|
|
87
|
+
entries.sort((a, b) => {
|
|
88
|
+
const indexA = sortOrder.indexOf(a[1][0].filterType);
|
|
89
|
+
const indexB = sortOrder.indexOf(b[1][0].filterType);
|
|
90
|
+
if (indexA === indexB) {
|
|
91
|
+
return a[0].localeCompare(b[0]);
|
|
92
|
+
}
|
|
93
|
+
return indexA - indexB;
|
|
94
|
+
});
|
|
95
|
+
const filtersSortedByCategories = new Map(entries);
|
|
96
|
+
return /* @__PURE__ */ jsx(List, { sx: resultsGlobalFilterStyles.selectedFiltersPanel, children: Array.from(filtersSortedByCategories).map(([displayedCategoryTitle, filters], index) => /* @__PURE__ */ jsxs(ListItem, { sx: resultsGlobalFilterStyles.selectedFiltersSubGroup, children: [
|
|
97
|
+
index !== 0 && /* @__PURE__ */ jsx(Divider, {}),
|
|
98
|
+
/* @__PURE__ */ jsx(Typography, { sx: { marginTop: 1 }, children: /* @__PURE__ */ jsx(FormattedMessage, { id: displayedCategoryTitle }) }),
|
|
99
|
+
/* @__PURE__ */ jsx(Box, { sx: resultsGlobalFilterStyles.selectedFiltersChips, children: filters.map((element) => /* @__PURE__ */ jsx(
|
|
100
|
+
OverflowableChip,
|
|
101
|
+
{
|
|
102
|
+
label: getOptionLabel(element, translateCountryCode, intl),
|
|
103
|
+
sx: getResultsGlobalFiltersChipStyle(element),
|
|
104
|
+
onDelete: () => {
|
|
105
|
+
unselectGlobalFilters([element.id]);
|
|
106
|
+
}
|
|
107
|
+
},
|
|
108
|
+
element.id
|
|
109
|
+
)) })
|
|
110
|
+
] }, displayedCategoryTitle)) });
|
|
111
|
+
}
|
|
112
|
+
export {
|
|
113
|
+
SelectedGlobalFilters as default
|
|
114
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { GlobalFilter, GlobalFilters } from '../types/global-filter.type';
|
|
2
|
+
/**
|
|
3
|
+
* Transforms global filters stored by the frontend into the format expected by the filter server.
|
|
4
|
+
* This function iterates through the list of `GlobalFilter` objects coming from the front,
|
|
5
|
+
* categorizes them based on their `filterType`, and constructs a `GlobalFilters` object
|
|
6
|
+
* suitable for the backend filter service. Returns `undefined` if no valid filters are found.
|
|
7
|
+
*/
|
|
8
|
+
export declare function buildValidGlobalFilters(filters: GlobalFilter[]): GlobalFilters | undefined;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { GlobalFilterType } from "../types/global-filter.type.js";
|
|
2
|
+
function buildValidGlobalFilters(filters) {
|
|
3
|
+
const newGlobalFilter = {};
|
|
4
|
+
const voltageRanges = [];
|
|
5
|
+
const substationOrVoltageLevelFilters = /* @__PURE__ */ new Set();
|
|
6
|
+
const genericFilters = /* @__PURE__ */ new Set();
|
|
7
|
+
const countryCodes = /* @__PURE__ */ new Set();
|
|
8
|
+
const substationProperties = {};
|
|
9
|
+
filters.forEach((filter) => {
|
|
10
|
+
switch (filter.filterType) {
|
|
11
|
+
case GlobalFilterType.VOLTAGE_LEVEL:
|
|
12
|
+
if (typeof filter.minValue === "number" && typeof filter.maxValue === "number") {
|
|
13
|
+
voltageRanges.push([filter.minValue, filter.maxValue]);
|
|
14
|
+
}
|
|
15
|
+
break;
|
|
16
|
+
case GlobalFilterType.COUNTRY:
|
|
17
|
+
countryCodes.add(filter.label);
|
|
18
|
+
break;
|
|
19
|
+
case GlobalFilterType.GENERIC_FILTER:
|
|
20
|
+
if (filter.uuid && !filter.deleted) genericFilters.add(filter.uuid);
|
|
21
|
+
break;
|
|
22
|
+
case GlobalFilterType.SUBSTATION_OR_VL:
|
|
23
|
+
if (filter.uuid) {
|
|
24
|
+
substationOrVoltageLevelFilters.add(filter.uuid);
|
|
25
|
+
}
|
|
26
|
+
break;
|
|
27
|
+
case GlobalFilterType.SUBSTATION_PROPERTY:
|
|
28
|
+
if (filter.filterSubtype) {
|
|
29
|
+
substationProperties[filter.filterSubtype] ??= [];
|
|
30
|
+
substationProperties[filter.filterSubtype].push(filter.label);
|
|
31
|
+
}
|
|
32
|
+
break;
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
if (voltageRanges.length > 0) {
|
|
36
|
+
newGlobalFilter.voltageRanges = voltageRanges;
|
|
37
|
+
}
|
|
38
|
+
if (countryCodes.size > 0) newGlobalFilter.countryCode = [...countryCodes];
|
|
39
|
+
if (genericFilters.size > 0) newGlobalFilter.genericFilter = [...genericFilters];
|
|
40
|
+
if (substationOrVoltageLevelFilters.size > 0) {
|
|
41
|
+
newGlobalFilter.substationOrVoltageLevelFilter = [...substationOrVoltageLevelFilters];
|
|
42
|
+
}
|
|
43
|
+
if (Object.keys(substationProperties).length > 0) {
|
|
44
|
+
newGlobalFilter.substationProperty = substationProperties;
|
|
45
|
+
}
|
|
46
|
+
const hasValidFilter = newGlobalFilter !== void 0 && (newGlobalFilter.countryCode && newGlobalFilter.countryCode.length > 0 || newGlobalFilter.voltageRanges && newGlobalFilter.voltageRanges.length > 0 || newGlobalFilter.genericFilter && newGlobalFilter.genericFilter.length > 0 || newGlobalFilter.substationOrVoltageLevelFilter && newGlobalFilter.substationOrVoltageLevelFilter.length > 0 || !!newGlobalFilter.substationProperty);
|
|
47
|
+
return hasValidFilter ? newGlobalFilter : void 0;
|
|
48
|
+
}
|
|
49
|
+
export {
|
|
50
|
+
buildValidGlobalFilters
|
|
51
|
+
};
|
|
@@ -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 declare function markEditingGlobalFilter(key: string): void;
|
|
8
|
+
export declare function unmarkEditingGlobalFilter(key: string): void;
|
|
9
|
+
export declare function isEditingGlobalFilter(key: string): boolean;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
const editingGlobalFilters = /* @__PURE__ */ new Set();
|
|
2
|
+
function markEditingGlobalFilter(key) {
|
|
3
|
+
editingGlobalFilters.add(key);
|
|
4
|
+
}
|
|
5
|
+
function unmarkEditingGlobalFilter(key) {
|
|
6
|
+
editingGlobalFilters.delete(key);
|
|
7
|
+
}
|
|
8
|
+
function isEditingGlobalFilter(key) {
|
|
9
|
+
return editingGlobalFilters.has(key);
|
|
10
|
+
}
|
|
11
|
+
export {
|
|
12
|
+
isEditingGlobalFilter,
|
|
13
|
+
markEditingGlobalFilter,
|
|
14
|
+
unmarkEditingGlobalFilter
|
|
15
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { GlobalFilter, RecentGlobalFilter } from '../types/global-filter.type';
|
|
2
|
+
export declare const MAX_RECENT_GLOBAL_FILTERS = 10;
|
|
3
|
+
export type GlobalFilterTableState = {
|
|
4
|
+
selected: string[];
|
|
5
|
+
recents: RecentGlobalFilter[];
|
|
6
|
+
};
|
|
7
|
+
export declare function addSelectedGlobalFiltersToTableState(tableState: GlobalFilterTableState | undefined, filterIds: string[]): GlobalFilterTableState;
|
|
8
|
+
export declare function removeSelectedGlobalFiltersFromTableState(tableState: GlobalFilterTableState | undefined, filterIds: string[], globalFilterOptions: GlobalFilter[], unselectedDate?: number): GlobalFilterTableState;
|
|
9
|
+
export declare function clearSelectedGlobalFiltersFromTableState(tableState: GlobalFilterTableState | undefined, globalFilterOptions: GlobalFilter[], unselectedDate?: number): GlobalFilterTableState;
|
|
10
|
+
export type MarkNotFoundGlobalFiltersAsDeletedResult = {
|
|
11
|
+
globalFilterOptions: GlobalFilter[];
|
|
12
|
+
tableState?: GlobalFilterTableState;
|
|
13
|
+
};
|
|
14
|
+
export declare function markNotFoundGlobalFiltersAsDeletedInState(globalFilterOptions: GlobalFilter[], tableState: GlobalFilterTableState | undefined, notFoundGlobalFilters: GlobalFilter[]): MarkNotFoundGlobalFiltersAsDeletedResult;
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
const MAX_RECENT_GLOBAL_FILTERS = 10;
|
|
2
|
+
const EMPTY_GLOBAL_FILTER_TABLE_STATE = { selected: [], recents: [] };
|
|
3
|
+
function ensureGlobalFilterTableState(tableState) {
|
|
4
|
+
return tableState ?? EMPTY_GLOBAL_FILTER_TABLE_STATE;
|
|
5
|
+
}
|
|
6
|
+
function addSelectedGlobalFiltersToTableState(tableState, filterIds) {
|
|
7
|
+
const currentTableState = ensureGlobalFilterTableState(tableState);
|
|
8
|
+
const selected = [...currentTableState.selected];
|
|
9
|
+
let { recents } = currentTableState;
|
|
10
|
+
filterIds.forEach((id) => {
|
|
11
|
+
if (!selected.includes(id)) {
|
|
12
|
+
selected.push(id);
|
|
13
|
+
}
|
|
14
|
+
recents = recents.filter((recentFilter) => recentFilter.id !== id);
|
|
15
|
+
});
|
|
16
|
+
return {
|
|
17
|
+
selected,
|
|
18
|
+
recents
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
function removeSelectedGlobalFiltersFromTableState(tableState, filterIds, globalFilterOptions, unselectedDate = Date.now()) {
|
|
22
|
+
const currentTableState = ensureGlobalFilterTableState(tableState);
|
|
23
|
+
const selected = currentTableState.selected.filter((id) => !filterIds.includes(id));
|
|
24
|
+
const recents = [...currentTableState.recents];
|
|
25
|
+
filterIds.forEach((filterId) => {
|
|
26
|
+
const filterOption = globalFilterOptions.find((opt) => opt.id === filterId);
|
|
27
|
+
if (!filterOption?.deleted) {
|
|
28
|
+
recents.unshift({ id: filterId, unselectedDate });
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
return {
|
|
32
|
+
selected,
|
|
33
|
+
recents: recents.slice(0, MAX_RECENT_GLOBAL_FILTERS)
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
function clearSelectedGlobalFiltersFromTableState(tableState, globalFilterOptions, unselectedDate = Date.now()) {
|
|
37
|
+
const currentTableState = ensureGlobalFilterTableState(tableState);
|
|
38
|
+
const newRecents = currentTableState.selected.filter((filterId) => {
|
|
39
|
+
const filterOption = globalFilterOptions.find((opt) => opt.id === filterId);
|
|
40
|
+
return !filterOption?.deleted;
|
|
41
|
+
}).map((filterId) => ({ id: filterId, unselectedDate }));
|
|
42
|
+
return {
|
|
43
|
+
selected: [],
|
|
44
|
+
recents: [...newRecents, ...currentTableState.recents].slice(0, MAX_RECENT_GLOBAL_FILTERS)
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
function markNotFoundGlobalFiltersAsDeletedInState(globalFilterOptions, tableState, notFoundGlobalFilters) {
|
|
48
|
+
const ids = new Set(notFoundGlobalFilters.map((filter) => filter.id));
|
|
49
|
+
const updatedGlobalFilterOptions = globalFilterOptions.map(
|
|
50
|
+
(globalFilter) => ids.has(globalFilter.id) ? { ...globalFilter, deleted: true } : globalFilter
|
|
51
|
+
);
|
|
52
|
+
if (!tableState) {
|
|
53
|
+
return {
|
|
54
|
+
globalFilterOptions: updatedGlobalFilterOptions
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
return {
|
|
58
|
+
globalFilterOptions: updatedGlobalFilterOptions,
|
|
59
|
+
tableState: {
|
|
60
|
+
selected: tableState.selected,
|
|
61
|
+
recents: tableState.recents?.length ? tableState.recents.filter((recentFilter) => !ids.has(recentFilter.id)) : tableState.recents
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
export {
|
|
66
|
+
MAX_RECENT_GLOBAL_FILTERS,
|
|
67
|
+
addSelectedGlobalFiltersToTableState,
|
|
68
|
+
clearSelectedGlobalFiltersFromTableState,
|
|
69
|
+
markNotFoundGlobalFiltersAsDeletedInState,
|
|
70
|
+
removeSelectedGlobalFiltersFromTableState
|
|
71
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { GlobalFilter } from '../types/global-filter.type';
|
|
2
|
+
export type SyncGlobalFiltersParameters = {
|
|
3
|
+
index: string;
|
|
4
|
+
globalFilters: GlobalFilter[];
|
|
5
|
+
save: (globalFilters: GlobalFilter[]) => Promise<unknown>;
|
|
6
|
+
onError: (error: unknown) => void;
|
|
7
|
+
debounceMs?: number;
|
|
8
|
+
};
|
|
9
|
+
export declare function syncGlobalFilters({ index, globalFilters, save, onError, debounceMs, }: SyncGlobalFiltersParameters): void;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { markEditingGlobalFilter, unmarkEditingGlobalFilter } from "./editing-global-filter-sync.js";
|
|
2
|
+
const DEFAULT_GLOBAL_FILTER_SYNC_DEBOUNCE_MS = 2e3;
|
|
3
|
+
const debouncedSyncTimers = {};
|
|
4
|
+
function syncGlobalFilters({
|
|
5
|
+
index,
|
|
6
|
+
globalFilters,
|
|
7
|
+
save,
|
|
8
|
+
onError,
|
|
9
|
+
debounceMs = DEFAULT_GLOBAL_FILTER_SYNC_DEBOUNCE_MS
|
|
10
|
+
}) {
|
|
11
|
+
markEditingGlobalFilter(index);
|
|
12
|
+
if (debouncedSyncTimers[index]) {
|
|
13
|
+
clearTimeout(debouncedSyncTimers[index]);
|
|
14
|
+
}
|
|
15
|
+
debouncedSyncTimers[index] = setTimeout(() => {
|
|
16
|
+
save(globalFilters).catch(onError).finally(() => {
|
|
17
|
+
if (!debouncedSyncTimers[index]) {
|
|
18
|
+
unmarkEditingGlobalFilter(index);
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
delete debouncedSyncTimers[index];
|
|
22
|
+
}, debounceMs);
|
|
23
|
+
}
|
|
24
|
+
export {
|
|
25
|
+
syncGlobalFilters
|
|
26
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { IntlShape } from 'react-intl';
|
|
2
|
+
import { GlobalFilter } from '../types/global-filter.type';
|
|
3
|
+
export type GlobalFilterWithoutId = Omit<GlobalFilter, 'id'>;
|
|
4
|
+
export declare const RECENT_FILTER: string;
|
|
5
|
+
export declare const addGlobalFilterId: (filter: GlobalFilterWithoutId) => GlobalFilter;
|
|
6
|
+
export declare const getGlobalFilterId: (filter: GlobalFilterWithoutId) => string;
|
|
7
|
+
export declare const getOptionLabel: (option: GlobalFilterWithoutId, translate: (arg: string) => string, intl: IntlShape) => string;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { GlobalFilterType } from "../types/global-filter.type.js";
|
|
2
|
+
const RECENT_FILTER = "recent";
|
|
3
|
+
const addGlobalFilterId = (filter) => {
|
|
4
|
+
const { unselectedDate, ...rest } = filter;
|
|
5
|
+
switch (rest.filterType) {
|
|
6
|
+
case GlobalFilterType.GENERIC_FILTER:
|
|
7
|
+
case GlobalFilterType.SUBSTATION_OR_VL:
|
|
8
|
+
return { ...rest, id: rest.uuid };
|
|
9
|
+
default:
|
|
10
|
+
return { ...rest, id: rest.label };
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
const getGlobalFilterId = (filter) => {
|
|
14
|
+
switch (filter.filterType) {
|
|
15
|
+
case GlobalFilterType.GENERIC_FILTER:
|
|
16
|
+
case GlobalFilterType.SUBSTATION_OR_VL:
|
|
17
|
+
return filter.uuid;
|
|
18
|
+
default:
|
|
19
|
+
return filter.label;
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
const getOptionLabel = (option, translate, intl) => {
|
|
23
|
+
switch (option.filterType) {
|
|
24
|
+
case GlobalFilterType.COUNTRY:
|
|
25
|
+
return translate(option.label);
|
|
26
|
+
case GlobalFilterType.VOLTAGE_LEVEL:
|
|
27
|
+
return intl.formatMessage({ id: option.label });
|
|
28
|
+
case GlobalFilterType.GENERIC_FILTER:
|
|
29
|
+
case GlobalFilterType.SUBSTATION_OR_VL:
|
|
30
|
+
case GlobalFilterType.SUBSTATION_PROPERTY:
|
|
31
|
+
if (option.deleted) {
|
|
32
|
+
return intl.formatMessage({ id: "elementNotFound" });
|
|
33
|
+
}
|
|
34
|
+
return option.label;
|
|
35
|
+
default:
|
|
36
|
+
return "";
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
export {
|
|
40
|
+
RECENT_FILTER,
|
|
41
|
+
addGlobalFilterId,
|
|
42
|
+
getGlobalFilterId,
|
|
43
|
+
getOptionLabel
|
|
44
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
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 './build-valid-global-filters';
|
|
8
|
+
export * from './editing-global-filter-sync';
|
|
9
|
+
export * from './global-filter-state.utils';
|
|
10
|
+
export * from './global-filter-sync.utils';
|
|
11
|
+
export * from './global-filter-utils';
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { buildValidGlobalFilters } from "./build-valid-global-filters.js";
|
|
2
|
+
import { isEditingGlobalFilter, markEditingGlobalFilter, unmarkEditingGlobalFilter } from "./editing-global-filter-sync.js";
|
|
3
|
+
import { MAX_RECENT_GLOBAL_FILTERS, addSelectedGlobalFiltersToTableState, clearSelectedGlobalFiltersFromTableState, markNotFoundGlobalFiltersAsDeletedInState, removeSelectedGlobalFiltersFromTableState } from "./global-filter-state.utils.js";
|
|
4
|
+
import { syncGlobalFilters } from "./global-filter-sync.utils.js";
|
|
5
|
+
import { RECENT_FILTER, addGlobalFilterId, getGlobalFilterId, getOptionLabel } from "./global-filter-utils.js";
|
|
6
|
+
export {
|
|
7
|
+
MAX_RECENT_GLOBAL_FILTERS,
|
|
8
|
+
RECENT_FILTER,
|
|
9
|
+
addGlobalFilterId,
|
|
10
|
+
addSelectedGlobalFiltersToTableState,
|
|
11
|
+
buildValidGlobalFilters,
|
|
12
|
+
clearSelectedGlobalFiltersFromTableState,
|
|
13
|
+
getGlobalFilterId,
|
|
14
|
+
getOptionLabel,
|
|
15
|
+
isEditingGlobalFilter,
|
|
16
|
+
markEditingGlobalFilter,
|
|
17
|
+
markNotFoundGlobalFiltersAsDeletedInState,
|
|
18
|
+
removeSelectedGlobalFiltersFromTableState,
|
|
19
|
+
syncGlobalFilters,
|
|
20
|
+
unmarkEditingGlobalFilter
|
|
21
|
+
};
|
package/dist/features/index.d.ts
CHANGED
package/dist/features/index.js
CHANGED
|
@@ -238,9 +238,21 @@ import { SecurityAnalysisResultNmk } from "./results/securityanalysis/security-a
|
|
|
238
238
|
import { SecurityAnalysisTable } from "./results/securityanalysis/security-analysis-table.js";
|
|
239
239
|
import { NmkType } from "./results/securityanalysis/security-analysis.type.js";
|
|
240
240
|
import { PAGE_OPTIONS, flattenNmKResultsConstraints, flattenNmKResultsContingencies, getNoRowsMessage, handlePostSortRows, mapNmKResultsCutOffPower } from "./results/securityanalysis/utils.js";
|
|
241
|
-
import {
|
|
242
|
-
import {
|
|
243
|
-
import {
|
|
241
|
+
import { ProcessType } from "./process-configs/common/process-config.type.js";
|
|
242
|
+
import { emptyProcessConfigModificationsFormData, getProcessConfigModificationsBackendFromFormData, getProcessConfigModificationsFormData, processConfigModificationsShape } from "./process-configs/common/process-config-modifications-edition.utils.js";
|
|
243
|
+
import { ProcessConfigModificationsEdition } from "./process-configs/common/process-config-modifications-edition.js";
|
|
244
|
+
import { isProcessType } from "./process-configs/process-config.utils.js";
|
|
245
|
+
import { LFProcessConfigEditionDialog } from "./process-configs/lf-process-config-edition-dialog.js";
|
|
246
|
+
import { SAProcessConfigEditionDialog } from "./process-configs/sa-process-config-edition-dialog.js";
|
|
247
|
+
import { GlobalFilterPanel } from "./global-filter/ui/global-filter-panel.js";
|
|
248
|
+
import { GlobalFilterType, isCriteriaFilter, isCriteriaFilterType } from "./global-filter/types/global-filter.type.js";
|
|
249
|
+
import { LimitTypes } from "./global-filter/types/limit-violation.type.js";
|
|
250
|
+
import { buildValidGlobalFilters } from "./global-filter/utils/build-valid-global-filters.js";
|
|
251
|
+
import { isEditingGlobalFilter, markEditingGlobalFilter, unmarkEditingGlobalFilter } from "./global-filter/utils/editing-global-filter-sync.js";
|
|
252
|
+
import { MAX_RECENT_GLOBAL_FILTERS, addSelectedGlobalFiltersToTableState, clearSelectedGlobalFiltersFromTableState, markNotFoundGlobalFiltersAsDeletedInState, removeSelectedGlobalFiltersFromTableState } from "./global-filter/utils/global-filter-state.utils.js";
|
|
253
|
+
import { syncGlobalFilters } from "./global-filter/utils/global-filter-sync.utils.js";
|
|
254
|
+
import { RECENT_FILTER, addGlobalFilterId, getGlobalFilterId, getOptionLabel } from "./global-filter/utils/global-filter-utils.js";
|
|
255
|
+
import { GlobalFilterContextProvider } from "./global-filter/context/global-filter-context-provider.js";
|
|
244
256
|
export {
|
|
245
257
|
ACCURACY,
|
|
246
258
|
ADVANCED_PARAMETERS,
|
|
@@ -342,6 +354,9 @@ export {
|
|
|
342
354
|
GeneratorDialogTabs,
|
|
343
355
|
GeneratorDialogTabsContent,
|
|
344
356
|
GeneratorModificationForm,
|
|
357
|
+
GlobalFilterContextProvider,
|
|
358
|
+
GlobalFilterPanel,
|
|
359
|
+
GlobalFilterType,
|
|
345
360
|
GridLogo,
|
|
346
361
|
HIGH_VOLTAGE_ABSOLUTE_THRESHOLD,
|
|
347
362
|
HIGH_VOLTAGE_LIMIT,
|
|
@@ -357,6 +372,7 @@ export {
|
|
|
357
372
|
IST_FORM,
|
|
358
373
|
InitialVoltage,
|
|
359
374
|
LEG_SIDE,
|
|
375
|
+
LFProcessConfigEditionDialog,
|
|
360
376
|
LIMIT_DURATION_FORM,
|
|
361
377
|
LIMIT_REDUCTIONS_FORM,
|
|
362
378
|
LINE_FLOW_MODE,
|
|
@@ -374,6 +390,7 @@ export {
|
|
|
374
390
|
LimitReductionTableCell,
|
|
375
391
|
LimitReductionTableRow,
|
|
376
392
|
LimitReductionsTableForm,
|
|
393
|
+
LimitTypes,
|
|
377
394
|
LimitsChart,
|
|
378
395
|
LimitsEditor,
|
|
379
396
|
LimitsGroupsContextualMenu,
|
|
@@ -408,6 +425,7 @@ export {
|
|
|
408
425
|
MAP_MANUAL_REFRESH,
|
|
409
426
|
MARGIN_CALCULATION_START_TIME,
|
|
410
427
|
MAX_COMPOSITE_NESTING_DEPTH,
|
|
428
|
+
MAX_RECENT_GLOBAL_FILTERS,
|
|
411
429
|
MAX_SECTIONS_COUNT,
|
|
412
430
|
MAX_VALUE_ALLOWED_FOR_LIMIT_REDUCTION,
|
|
413
431
|
MIN_VALUE_ALLOWED_FOR_LIMIT_REDUCTION,
|
|
@@ -467,6 +485,7 @@ export {
|
|
|
467
485
|
PowerMeasurementsForm,
|
|
468
486
|
PowerWithValidityForm,
|
|
469
487
|
PredefinedParameters,
|
|
488
|
+
ProcessConfigModificationsEdition,
|
|
470
489
|
ProcessType,
|
|
471
490
|
PropertiesForm,
|
|
472
491
|
PropertyForm,
|
|
@@ -476,6 +495,7 @@ export {
|
|
|
476
495
|
REACTIVE_LIMIT_TYPES,
|
|
477
496
|
REACTIVE_SLACKS_THRESHOLD,
|
|
478
497
|
READ_SLACK_BUS,
|
|
498
|
+
RECENT_FILTER,
|
|
479
499
|
REFERENCE_FIELD_OR_VALUE_1,
|
|
480
500
|
REFERENCE_FIELD_OR_VALUE_2,
|
|
481
501
|
REGULATION_TYPES,
|
|
@@ -487,6 +507,7 @@ export {
|
|
|
487
507
|
RootNetworkCellRenderer,
|
|
488
508
|
RootNetworkChipCell,
|
|
489
509
|
RootNetworkHeaderRenderer,
|
|
510
|
+
SAProcessConfigEditionDialog,
|
|
490
511
|
SCENARIO_DURATION,
|
|
491
512
|
SELECTION_TYPE,
|
|
492
513
|
SENSITIVITY_TYPES,
|
|
@@ -557,7 +578,6 @@ export {
|
|
|
557
578
|
UPDATE_BUS_VOLTAGE,
|
|
558
579
|
USE_REACTIVE_LIMITS,
|
|
559
580
|
UnauthorizedAccessAlert,
|
|
560
|
-
UpdateSAProcessConfigDialog,
|
|
561
581
|
UserManagerMock,
|
|
562
582
|
VARIABLE_Q_GENERATORS,
|
|
563
583
|
VARIABLE_SHUNT_COMPENSATORS,
|
|
@@ -577,9 +597,11 @@ export {
|
|
|
577
597
|
VoltageLevelModificationForm,
|
|
578
598
|
VoltageRegulationForm,
|
|
579
599
|
WRITE_SLACK_BUS,
|
|
600
|
+
addGlobalFilterId,
|
|
580
601
|
addModificationTypeToOpLimitsGroups,
|
|
581
602
|
addModificationTypeToTemporaryLimits,
|
|
582
603
|
addOperationTypeToSelectedOpLG,
|
|
604
|
+
addSelectedGlobalFiltersToTableState,
|
|
583
605
|
alertThresholdMarks,
|
|
584
606
|
batteryCreationDtoToForm,
|
|
585
607
|
batteryCreationEmptyFormData,
|
|
@@ -590,9 +612,11 @@ export {
|
|
|
590
612
|
batteryModificationFormSchema,
|
|
591
613
|
batteryModificationFormToDto,
|
|
592
614
|
buildNewBusbarSections,
|
|
615
|
+
buildValidGlobalFilters,
|
|
593
616
|
byFilterDeletionDtoToForm,
|
|
594
617
|
byFilterDeletionFormSchema,
|
|
595
618
|
byFilterDeletionFormToDto,
|
|
619
|
+
clearSelectedGlobalFiltersFromTableState,
|
|
596
620
|
computeSwitchedOnValue,
|
|
597
621
|
computeTagMinSize,
|
|
598
622
|
convertLimitsToOperationalLimitsGroupFormSchema,
|
|
@@ -618,6 +642,7 @@ export {
|
|
|
618
642
|
emptyLineSegment,
|
|
619
643
|
emptyModificationByAssignmentFormData,
|
|
620
644
|
emptyModificationFormData,
|
|
645
|
+
emptyProcessConfigModificationsFormData,
|
|
621
646
|
emptyProperties,
|
|
622
647
|
equipmentDeletionDtoToForm,
|
|
623
648
|
equipmentDeletionEmptyFormData,
|
|
@@ -688,6 +713,7 @@ export {
|
|
|
688
713
|
getFilledPropertiesFromModification,
|
|
689
714
|
getFormulaInitialValue,
|
|
690
715
|
getFormulaSchema,
|
|
716
|
+
getGlobalFilterId,
|
|
691
717
|
getHvdcLccDeletionSchema,
|
|
692
718
|
getInjectionActiveReactivePowerEditDataProperties,
|
|
693
719
|
getInjectionActiveReactivePowerEmptyFormData,
|
|
@@ -704,10 +730,13 @@ export {
|
|
|
704
730
|
getLineCharacteristicsValidationSchemaProps,
|
|
705
731
|
getNewVoltageLevelData,
|
|
706
732
|
getNoRowsMessage,
|
|
733
|
+
getOptionLabel,
|
|
707
734
|
getPowerWithValidityEditData,
|
|
708
735
|
getPowerWithValidityEmptyFormData,
|
|
709
736
|
getPowerWithValidityValidationSchema,
|
|
710
737
|
getPreLoginPath,
|
|
738
|
+
getProcessConfigModificationsBackendFromFormData,
|
|
739
|
+
getProcessConfigModificationsFormData,
|
|
711
740
|
getPropertiesFromModification,
|
|
712
741
|
getPropertyAvatar,
|
|
713
742
|
getPropertyValue,
|
|
@@ -725,8 +754,6 @@ export {
|
|
|
725
754
|
getRegulatingTerminalFormData,
|
|
726
755
|
getRegulatingTerminalVoltageLevelData,
|
|
727
756
|
getRowEmptyFormData,
|
|
728
|
-
getSAProcessConfigBackendFromFormData,
|
|
729
|
-
getSAProcessConfigFormDataFromFetchedElement,
|
|
730
757
|
getSetPointsEmptyFormData,
|
|
731
758
|
getSetPointsSchema,
|
|
732
759
|
getShortCircuitEmptyFormData,
|
|
@@ -745,6 +772,9 @@ export {
|
|
|
745
772
|
intlInitialVoltageProfileMode,
|
|
746
773
|
intlPredefinedParametersOptions,
|
|
747
774
|
isCompositeModification,
|
|
775
|
+
isCriteriaFilter,
|
|
776
|
+
isCriteriaFilterType,
|
|
777
|
+
isEditingGlobalFilter,
|
|
748
778
|
isProcessType,
|
|
749
779
|
isSharedModification,
|
|
750
780
|
isValidComputingType,
|
|
@@ -770,6 +800,8 @@ export {
|
|
|
770
800
|
logout,
|
|
771
801
|
mapNmKResultsCutOffPower,
|
|
772
802
|
mapServerLimitsGroupsToFormInfos,
|
|
803
|
+
markEditingGlobalFilter,
|
|
804
|
+
markNotFoundGlobalFiltersAsDeletedInState,
|
|
773
805
|
mergeModificationAndEquipmentProperties,
|
|
774
806
|
mergeSubModificationsIntoTree,
|
|
775
807
|
modificationByAssignmentDtoToForm,
|
|
@@ -784,6 +816,8 @@ export {
|
|
|
784
816
|
newEquipmentDeletionDto,
|
|
785
817
|
onlyStartedGeneratorsOptions,
|
|
786
818
|
parametersStyles,
|
|
819
|
+
processConfigModificationsShape,
|
|
820
|
+
removeSelectedGlobalFiltersFromTableState,
|
|
787
821
|
removeUuidsFromTree,
|
|
788
822
|
sanitizeLimitNames,
|
|
789
823
|
sanitizeLimitsGroups,
|
|
@@ -807,16 +841,16 @@ export {
|
|
|
807
841
|
substationModificationEmptyFormData,
|
|
808
842
|
substationModificationFormSchema,
|
|
809
843
|
substationModificationFormToDto,
|
|
844
|
+
syncGlobalFilters,
|
|
810
845
|
testValueWithinPowerInterval,
|
|
811
846
|
toFormValuesContingencyListsInfos,
|
|
812
847
|
toFormValuesLimitReductions,
|
|
813
848
|
toModificationProperties,
|
|
814
849
|
toReactiveCapabilityCurveChoiceForGeneratorCreation,
|
|
815
850
|
toReactiveCapabilityCurveChoiceForGeneratorModification,
|
|
816
|
-
toSAProcessConfig,
|
|
817
851
|
translateSwitchKinds,
|
|
852
|
+
unmarkEditingGlobalFilter,
|
|
818
853
|
updateModificationFieldInTree,
|
|
819
|
-
updateSAProcessConfigFormSchema,
|
|
820
854
|
updateSubModificationsOfACompositeInTree,
|
|
821
855
|
useGlobalAnnouncement,
|
|
822
856
|
useHvdcLccDeletion,
|