@gridsuite/commons-ui 0.150.0 → 0.152.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/dialogs/elementSaveDialog/index.d.ts +1 -0
- package/dist/components/dialogs/elementSaveDialog/index.js +3 -1
- package/dist/components/dialogs/index.js +2 -0
- package/dist/components/filter/FilterForm.js +4 -4
- package/dist/components/filter/expert/ExpertFilterForm.js +4 -4
- package/dist/components/filter/explicitNaming/ExplicitNamingFilterForm.js +2 -2
- package/dist/components/index.js +2 -0
- package/dist/components/parameters/loadflow/load-flow-parameters-dialog.js +7 -7
- package/dist/components/parameters/network-visualizations/network-visualizations-parameters-dialog.js +5 -5
- package/dist/components/parameters/sensi/constants.d.ts +6 -1
- package/dist/components/parameters/sensi/constants.js +6 -2
- package/dist/components/parameters/sensi/sensitivity-analysis-parameters-factor-count.d.ts +8 -0
- package/dist/components/parameters/sensi/sensitivity-analysis-parameters-factor-count.js +53 -0
- package/dist/components/parameters/sensi/sensitivity-analysis-parameters-form.js +2 -3
- package/dist/components/parameters/sensi/sensitivity-analysis-parameters-inline.js +3 -3
- package/dist/components/parameters/sensi/sensitivity-parameters-selector.d.ts +5 -11
- package/dist/components/parameters/sensi/sensitivity-parameters-selector.js +64 -99
- package/dist/components/parameters/sensi/sensitivity-table.d.ts +2 -3
- package/dist/components/parameters/sensi/sensitivity-table.js +27 -37
- package/dist/components/parameters/sensi/table-cell.d.ts +1 -1
- package/dist/components/parameters/sensi/table-cell.js +2 -8
- package/dist/components/parameters/sensi/table-row.d.ts +2 -2
- package/dist/components/parameters/sensi/table-row.js +4 -6
- package/dist/components/parameters/sensi/use-sensitivity-analysis-parameters.d.ts +7 -10
- package/dist/components/parameters/sensi/use-sensitivity-analysis-parameters.js +67 -114
- package/dist/components/parameters/sensi/utils.d.ts +6 -15
- package/dist/components/parameters/sensi/utils.js +21 -4
- package/dist/components/parameters/short-circuit/short-circuit-parameters-dialog.js +6 -6
- package/dist/components/parameters/voltage-init/voltage-init-parameters-dialog.js +5 -5
- package/dist/hooks/use-create-row-data-sensi.js +1 -2
- package/dist/index.js +2 -0
- package/dist/services/sensitivity-analysis.d.ts +2 -2
- package/dist/services/sensitivity-analysis.js +8 -9
- package/dist/translations/en/businessErrorsEn.d.ts +1 -0
- package/dist/translations/en/businessErrorsEn.js +2 -1
- package/dist/translations/en/parameters.d.ts +3 -3
- package/dist/translations/en/parameters.js +3 -3
- package/dist/translations/fr/businessErrorsFr.d.ts +1 -0
- package/dist/translations/fr/businessErrorsFr.js +2 -1
- package/dist/translations/fr/parameters.d.ts +3 -3
- package/dist/translations/fr/parameters.js +3 -3
- package/dist/utils/types/sensitivity-analysis.type.d.ts +4 -7
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import "../../../utils/yupConfig.js";
|
|
2
|
-
import { FLOW_VOLTAGE_SENSITIVITY_VALUE_THRESHOLD, ANGLE_FLOW_SENSITIVITY_VALUE_THRESHOLD, FLOW_FLOW_SENSITIVITY_VALUE_THRESHOLD, PARAMETER_SENSI_NODES, EQUIPMENTS_IN_VOLTAGE_REGULATION, SUPERVISED_VOLTAGE_LEVELS, PARAMETER_SENSI_PST, PSTS, ACTIVATED, PARAMETER_SENSI_HVDC, HVDC_LINES, PARAMETER_SENSI_INJECTION, INJECTIONS, PARAMETER_SENSI_INJECTIONS_SET, DISTRIBUTION_TYPE,
|
|
2
|
+
import { FLOW_VOLTAGE_SENSITIVITY_VALUE_THRESHOLD, ANGLE_FLOW_SENSITIVITY_VALUE_THRESHOLD, FLOW_FLOW_SENSITIVITY_VALUE_THRESHOLD, PARAMETER_SENSI_NODES, EQUIPMENTS_IN_VOLTAGE_REGULATION, SUPERVISED_VOLTAGE_LEVELS, PARAMETER_SENSI_PST, PSTS, ACTIVATED, PARAMETER_SENSI_HVDC, HVDC_LINES, PARAMETER_SENSI_INJECTION, INJECTIONS, PARAMETER_SENSI_INJECTIONS_SET, DISTRIBUTION_TYPE, CONTINGENCIES, SENSITIVITY_TYPE, MONITORED_BRANCHES, CONTAINER_NAME, CONTAINER_ID } from "./constants.js";
|
|
3
3
|
import { ID } from "../../../utils/constants/filterConstant.js";
|
|
4
4
|
import "../../../utils/conversionUtils.js";
|
|
5
5
|
import "../../../utils/types/equipmentType.js";
|
|
@@ -67,8 +67,7 @@ const getContingenciesSchema = () => {
|
|
|
67
67
|
[NAME]: yup.string().required()
|
|
68
68
|
})
|
|
69
69
|
),
|
|
70
|
-
[ACTIVATED]: yup.boolean().required()
|
|
71
|
-
[COUNT]: yup.number().nullable()
|
|
70
|
+
[ACTIVATED]: yup.boolean().required()
|
|
72
71
|
};
|
|
73
72
|
};
|
|
74
73
|
const getSensiHVDCsFormSchema = () => ({
|
|
@@ -313,6 +312,19 @@ const getSensiPstformatNewParams = (newParams) => {
|
|
|
313
312
|
})
|
|
314
313
|
};
|
|
315
314
|
};
|
|
315
|
+
const hasVariables = (row) => {
|
|
316
|
+
return row[INJECTIONS]?.length > 0 || row[HVDC_LINES]?.length > 0 || row[PSTS]?.length > 0 || row[EQUIPMENTS_IN_VOLTAGE_REGULATION]?.length > 0;
|
|
317
|
+
};
|
|
318
|
+
const hasMonitoredEquipments = (row) => {
|
|
319
|
+
return row[MONITORED_BRANCHES]?.length > 0 || row[SUPERVISED_VOLTAGE_LEVELS]?.length > 0;
|
|
320
|
+
};
|
|
321
|
+
const isActivatedSensiParameterRow = (entry) => {
|
|
322
|
+
return entry[ACTIVATED];
|
|
323
|
+
};
|
|
324
|
+
const isValidSensiParameterRow = (entry) => {
|
|
325
|
+
return isActivatedSensiParameterRow(entry) && hasMonitoredEquipments(entry) && hasVariables(entry);
|
|
326
|
+
};
|
|
327
|
+
const filterSensiParameterRows = (entries) => (entries ?? []).filter((entry) => isValidSensiParameterRow(entry));
|
|
316
328
|
const formSchema = yup.object().shape({
|
|
317
329
|
[PROVIDER]: yup.string().required(),
|
|
318
330
|
[FLOW_FLOW_SENSITIVITY_VALUE_THRESHOLD]: yup.number().required(),
|
|
@@ -328,6 +340,7 @@ const getFormSchema = (name) => {
|
|
|
328
340
|
return formSchema.concat(getNameElementEditorSchema(name));
|
|
329
341
|
};
|
|
330
342
|
export {
|
|
343
|
+
filterSensiParameterRows,
|
|
331
344
|
formSchema,
|
|
332
345
|
getFormSchema,
|
|
333
346
|
getGenericRowNewParams,
|
|
@@ -340,5 +353,9 @@ export {
|
|
|
340
353
|
getSensiNodesFormSchema,
|
|
341
354
|
getSensiNodesformatNewParams,
|
|
342
355
|
getSensiPSTsFormSchema,
|
|
343
|
-
getSensiPstformatNewParams
|
|
356
|
+
getSensiPstformatNewParams,
|
|
357
|
+
hasMonitoredEquipments,
|
|
358
|
+
hasVariables,
|
|
359
|
+
isActivatedSensiParameterRow,
|
|
360
|
+
isValidSensiParameterRow
|
|
344
361
|
};
|
|
@@ -2,18 +2,18 @@ import { jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { CustomMuiDialog } from "../../dialogs/customMuiDialog/CustomMuiDialog.js";
|
|
3
3
|
import "../../dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
|
|
4
4
|
import "../../dialogs/elementSaveDialog/ElementSaveDialog.js";
|
|
5
|
+
import "../../../utils/conversionUtils.js";
|
|
6
|
+
import { ElementType } from "../../../utils/types/elementType.js";
|
|
7
|
+
import "../../../utils/types/equipmentType.js";
|
|
8
|
+
import "@mui/icons-material";
|
|
9
|
+
import "../../../utils/yupConfig.js";
|
|
10
|
+
import { getShortCircuitSpecificParametersDescription, updateShortCircuitParameters, fetchShortCircuitParameters } from "../../../services/short-circuit-analysis.js";
|
|
5
11
|
import "react";
|
|
6
12
|
import "@mui/material";
|
|
7
13
|
import "react-intl";
|
|
8
14
|
import "react-hook-form";
|
|
9
|
-
import "@mui/icons-material";
|
|
10
|
-
import { ElementType } from "../../../utils/types/elementType.js";
|
|
11
15
|
import "../../treeViewFinder/TreeViewFinder.js";
|
|
12
16
|
import "notistack";
|
|
13
|
-
import "../../../utils/conversionUtils.js";
|
|
14
|
-
import "../../../utils/types/equipmentType.js";
|
|
15
|
-
import "../../../utils/yupConfig.js";
|
|
16
|
-
import { getShortCircuitSpecificParametersDescription, updateShortCircuitParameters, fetchShortCircuitParameters } from "../../../services/short-circuit-analysis.js";
|
|
17
17
|
import { NameElementEditorForm } from "../common/name-element-editor/name-element-editor-form.js";
|
|
18
18
|
import "../../overflowableText/OverflowableText.js";
|
|
19
19
|
import "localized-countries";
|
|
@@ -2,17 +2,17 @@ import { jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { CustomMuiDialog } from "../../dialogs/customMuiDialog/CustomMuiDialog.js";
|
|
3
3
|
import "../../dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
|
|
4
4
|
import "../../dialogs/elementSaveDialog/ElementSaveDialog.js";
|
|
5
|
+
import "../../../utils/conversionUtils.js";
|
|
6
|
+
import { ElementType } from "../../../utils/types/elementType.js";
|
|
7
|
+
import "../../../utils/types/equipmentType.js";
|
|
8
|
+
import "@mui/icons-material";
|
|
9
|
+
import "../../../utils/yupConfig.js";
|
|
5
10
|
import "react";
|
|
6
11
|
import "@mui/material";
|
|
7
12
|
import "react-intl";
|
|
8
13
|
import "react-hook-form";
|
|
9
|
-
import "@mui/icons-material";
|
|
10
|
-
import { ElementType } from "../../../utils/types/elementType.js";
|
|
11
14
|
import "../../treeViewFinder/TreeViewFinder.js";
|
|
12
15
|
import "notistack";
|
|
13
|
-
import "../../../utils/conversionUtils.js";
|
|
14
|
-
import "../../../utils/types/equipmentType.js";
|
|
15
|
-
import "../../../utils/yupConfig.js";
|
|
16
16
|
import { NameElementEditorForm } from "../common/name-element-editor/name-element-editor-form.js";
|
|
17
17
|
import "../../overflowableText/OverflowableText.js";
|
|
18
18
|
import "localized-countries";
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { useFieldArray } from "react-hook-form";
|
|
2
2
|
import { useMemo } from "react";
|
|
3
|
-
import { COUNT } from "../components/parameters/sensi/constants.js";
|
|
4
3
|
function useCreateRowDataSensi(sensiParam) {
|
|
5
4
|
const useFieldArrayOutput = useFieldArray({
|
|
6
5
|
name: sensiParam.name || ""
|
|
7
6
|
});
|
|
8
7
|
const newRowData = useMemo(() => {
|
|
9
|
-
const rowData = {
|
|
8
|
+
const rowData = {};
|
|
10
9
|
sensiParam.columnsDef.forEach((column) => {
|
|
11
10
|
rowData[column.dataKey] = column.initialValue;
|
|
12
11
|
});
|
package/dist/index.js
CHANGED
|
@@ -25,6 +25,7 @@ import { BooleanCellRenderer, BooleanNullableCellRenderer, ContingencyCellRender
|
|
|
25
25
|
import { CustomMuiDialog, unscrollableDialogStyles } from "./components/dialogs/customMuiDialog/CustomMuiDialog.js";
|
|
26
26
|
import { DescriptionModificationDialog } from "./components/dialogs/descriptionModificationDialog/DescriptionModificationDialog.js";
|
|
27
27
|
import { ElementSaveDialog } from "./components/dialogs/elementSaveDialog/ElementSaveDialog.js";
|
|
28
|
+
import { initializeDirectory } from "./components/dialogs/elementSaveDialog/utils.js";
|
|
28
29
|
import { ModifyElementSelection } from "./components/dialogs/modifyElementSelection/ModifyElementSelection.js";
|
|
29
30
|
import { PopupConfirmationDialog } from "./components/dialogs/popupConfirmationDialog/PopupConfirmationDialog.js";
|
|
30
31
|
import { DirectoryItemSelector } from "./components/directoryItemSelector/DirectoryItemSelector.js";
|
|
@@ -825,6 +826,7 @@ export {
|
|
|
825
826
|
importParamsFr,
|
|
826
827
|
initializeAuthenticationDev,
|
|
827
828
|
initializeAuthenticationProd,
|
|
829
|
+
initializeDirectory,
|
|
828
830
|
inputsEn,
|
|
829
831
|
inputsFr,
|
|
830
832
|
intlInitialVoltageProfileMode,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { UUID } from 'node:crypto';
|
|
2
|
-
import {
|
|
2
|
+
import { FactorsCount, SensitivityAnalysisParametersInfos } from '../utils';
|
|
3
3
|
export declare const getStudyUrl: (studyUuid: UUID | null) => string;
|
|
4
4
|
export declare const getStudyUrlWithNodeUuidAndRootNetworkUuid: (studyUuid: string | null | undefined, nodeUuid: string | undefined, rootNetworkUuid: string | undefined | null) => string;
|
|
5
5
|
export declare function getSensiUrl(): string;
|
|
@@ -7,6 +7,6 @@ export declare function fetchSensitivityAnalysisProviders(): Promise<string[]>;
|
|
|
7
7
|
export declare function getSensitivityAnalysisParameters(studyUuid: UUID): Promise<any>;
|
|
8
8
|
export declare function fetchSensitivityAnalysisParameters(parameterUuid: string): Promise<any>;
|
|
9
9
|
export declare function setSensitivityAnalysisParameters(studyUuid: UUID | null, newParams: SensitivityAnalysisParametersInfos | null): Promise<Response>;
|
|
10
|
-
export declare function getSensitivityAnalysisFactorsCount(studyUuid: UUID | null, currentNodeUuid: UUID, currentRootNetworkUuid: UUID,
|
|
10
|
+
export declare function getSensitivityAnalysisFactorsCount(studyUuid: UUID | null, currentNodeUuid: UUID, currentRootNetworkUuid: UUID, newParams: SensitivityAnalysisParametersInfos): Promise<FactorsCount>;
|
|
11
11
|
export declare function fetchDefaultSensitivityAnalysisProvider(): Promise<string>;
|
|
12
12
|
export declare function updateSensitivityAnalysisParameters(parameterUuid: UUID, newParams: any): Promise<Response>;
|
|
@@ -41,17 +41,16 @@ function setSensitivityAnalysisParameters(studyUuid, newParams) {
|
|
|
41
41
|
body: newParams ? JSON.stringify(newParams) : null
|
|
42
42
|
});
|
|
43
43
|
}
|
|
44
|
-
function getSensitivityAnalysisFactorsCount(studyUuid, currentNodeUuid, currentRootNetworkUuid,
|
|
44
|
+
function getSensitivityAnalysisFactorsCount(studyUuid, currentNodeUuid, currentRootNetworkUuid, newParams) {
|
|
45
45
|
console.info("get sensitivity analysis parameters computing count");
|
|
46
|
-
const
|
|
47
|
-
const jsoned = JSON.stringify(isInjectionsSet);
|
|
48
|
-
urlSearchParams.append("isInjectionsSet", jsoned);
|
|
49
|
-
Object.keys(newParams).filter((key) => newParams[key]).forEach((key) => urlSearchParams.append(`ids[${key}]`, newParams[key]));
|
|
50
|
-
const url = `${getStudyUrlWithNodeUuidAndRootNetworkUuid(studyUuid, currentNodeUuid, currentRootNetworkUuid)}
|
|
51
|
-
/sensitivity-analysis/factors-count?${urlSearchParams}`;
|
|
46
|
+
const url = `${getStudyUrlWithNodeUuidAndRootNetworkUuid(studyUuid, currentNodeUuid, currentRootNetworkUuid)}/sensitivity-analysis/factor-count`;
|
|
52
47
|
console.debug(url);
|
|
53
|
-
return
|
|
54
|
-
method: "
|
|
48
|
+
return backendFetchJson(url, {
|
|
49
|
+
method: "POST",
|
|
50
|
+
headers: {
|
|
51
|
+
"Content-Type": "application/json"
|
|
52
|
+
},
|
|
53
|
+
body: JSON.stringify(newParams)
|
|
55
54
|
});
|
|
56
55
|
}
|
|
57
56
|
function fetchDefaultSensitivityAnalysisProvider() {
|
|
@@ -53,7 +53,8 @@ const businessErrorsEn = {
|
|
|
53
53
|
"dynamicSecurityAnalysis.contingencyListEmpty": "Contingency list parameter must not be null or empty.",
|
|
54
54
|
"dynamicSimulation.providerNotFound": "Dynamic simulation provider not found.",
|
|
55
55
|
"dynamicSimulation.mappingNotProvided": "Dynamic simulation mapping not provided.",
|
|
56
|
-
"dynamicSimulation.mappingNotLastRuleWithEmptyFilterError": "Only last rule can have empty filter: type {equipmentType}, rule index {index}."
|
|
56
|
+
"dynamicSimulation.mappingNotLastRuleWithEmptyFilterError": "Only last rule can have empty filter: type {equipmentType}, rule index {index}.",
|
|
57
|
+
"sensitivityAnalysis.tooManyFactors": "Too many factors to run sensitivity analysis: {resultCount} results (limit: {resultCountLimit}) and {variableCount} variables (limit: {variableCountLimit})."
|
|
57
58
|
};
|
|
58
59
|
export {
|
|
59
60
|
businessErrorsEn
|
|
@@ -218,9 +218,9 @@ export declare const parametersEn: {
|
|
|
218
218
|
EquipmentsInVoltageRegulation: string;
|
|
219
219
|
PSTS: string;
|
|
220
220
|
Active: string;
|
|
221
|
-
'sensitivityAnalysis.
|
|
222
|
-
'sensitivityAnalysis.
|
|
223
|
-
'sensitivityAnalysis.
|
|
221
|
+
'sensitivityAnalysis.simulatedResults': string;
|
|
222
|
+
'sensitivityAnalysis.simulatedVariables': string;
|
|
223
|
+
'sensitivityAnalysis.maximumFactorsCount': string;
|
|
224
224
|
'sensitivityAnalysis.separator': string;
|
|
225
225
|
loadingComputing: string;
|
|
226
226
|
AddRows: string;
|
|
@@ -212,9 +212,9 @@ const parametersEn = {
|
|
|
212
212
|
EquipmentsInVoltageRegulation: "Equipments in voltage regulation",
|
|
213
213
|
PSTS: "PSTs",
|
|
214
214
|
Active: "Active",
|
|
215
|
-
"sensitivityAnalysis.
|
|
216
|
-
"sensitivityAnalysis.
|
|
217
|
-
"sensitivityAnalysis.
|
|
215
|
+
"sensitivityAnalysis.simulatedResults": "{count, plural, =0 {0 result} =1 {1 result} other {#{suffix} results}}",
|
|
216
|
+
"sensitivityAnalysis.simulatedVariables": "{count, plural, =0 {0 variable} =1 {1 variable} other {#{suffix} variables}}",
|
|
217
|
+
"sensitivityAnalysis.maximumFactorsCount": "{maxFactorsCount} max",
|
|
218
218
|
"sensitivityAnalysis.separator": " | ",
|
|
219
219
|
loadingComputing: "Calculation in progress...",
|
|
220
220
|
AddRows: "Add",
|
|
@@ -53,7 +53,8 @@ const businessErrorsFr = {
|
|
|
53
53
|
"dynamicSecurityAnalysis.contingencyListEmpty": "La liste d'aléas fournie ne doit pas être nulle ou vide.",
|
|
54
54
|
"dynamicSimulation.providerNotFound": "Simulateur pour la simulation dynamique non trouvé.",
|
|
55
55
|
"dynamicSimulation.mappingNotProvided": "Mapping pour la simulation dynamique non fourni.",
|
|
56
|
-
"dynamicSimulation.mappingNotLastRuleWithEmptyFilterError": "Seule la dernière règle peut avoir un filtre vide : type {equipmentType}, indice de la règle : {index}."
|
|
56
|
+
"dynamicSimulation.mappingNotLastRuleWithEmptyFilterError": "Seule la dernière règle peut avoir un filtre vide : type {equipmentType}, indice de la règle : {index}.",
|
|
57
|
+
"sensitivityAnalysis.tooManyFactors": "Trop de facteurs pour exécuter l’analyse de sensibilité : {resultCount} résultats (limite : {resultCountLimit}) et {variableCount} variables (limite : {variableCountLimit})."
|
|
57
58
|
};
|
|
58
59
|
export {
|
|
59
60
|
businessErrorsFr
|
|
@@ -219,9 +219,9 @@ export declare const parametersFr: {
|
|
|
219
219
|
EquipmentsInVoltageRegulation: string;
|
|
220
220
|
PSTS: string;
|
|
221
221
|
Active: string;
|
|
222
|
-
'sensitivityAnalysis.
|
|
223
|
-
'sensitivityAnalysis.
|
|
224
|
-
'sensitivityAnalysis.
|
|
222
|
+
'sensitivityAnalysis.simulatedResults': string;
|
|
223
|
+
'sensitivityAnalysis.simulatedVariables': string;
|
|
224
|
+
'sensitivityAnalysis.maximumFactorsCount': string;
|
|
225
225
|
'sensitivityAnalysis.separator': string;
|
|
226
226
|
loadingComputing: string;
|
|
227
227
|
AddRows: string;
|
|
@@ -213,9 +213,9 @@ const parametersFr = {
|
|
|
213
213
|
EquipmentsInVoltageRegulation: "Ouvrages en réglage tension",
|
|
214
214
|
PSTS: "TDs",
|
|
215
215
|
Active: "Actif",
|
|
216
|
-
"sensitivityAnalysis.
|
|
217
|
-
"sensitivityAnalysis.
|
|
218
|
-
"sensitivityAnalysis.
|
|
216
|
+
"sensitivityAnalysis.simulatedResults": "{count, plural, =0 {0 résultat} =1 {1 résultat} other {#{suffix} résultats}}",
|
|
217
|
+
"sensitivityAnalysis.simulatedVariables": "{count, plural, =0 {0 variable} =1 {1 variable} other {#{suffix} variables}}",
|
|
218
|
+
"sensitivityAnalysis.maximumFactorsCount": "{maxFactorsCount} max",
|
|
219
219
|
"sensitivityAnalysis.separator": " | ",
|
|
220
220
|
loadingComputing: "Evaluation en cours...",
|
|
221
221
|
AddRows: "Ajouter",
|
|
@@ -54,13 +54,10 @@ export interface SensitivityAnalysisParametersInfos {
|
|
|
54
54
|
sensitivityPST?: SensitivityPST[];
|
|
55
55
|
sensitivityNodes?: SensitivityNodes[];
|
|
56
56
|
}
|
|
57
|
-
export
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
hvdcs?: string[];
|
|
62
|
-
psts?: string[];
|
|
63
|
-
};
|
|
57
|
+
export interface FactorsCount {
|
|
58
|
+
resultCount: number;
|
|
59
|
+
variableCount: number;
|
|
60
|
+
}
|
|
64
61
|
export type SelectorFilterOptions = {
|
|
65
62
|
tabSelection: string;
|
|
66
63
|
functionType: string;
|