@gridsuite/commons-ui 0.63.4 → 0.64.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/_mocks_/svg.js +1 -3
- package/dist/assets/expert-filter-form.css +18 -8
- package/dist/components/AuthenticationRouter/AuthenticationRouter.js +88 -97
- package/dist/components/CardErrorBoundary/card-error-boundary.js +6 -20
- package/dist/components/CustomAGGrid/custom-aggrid.js +47 -49
- package/dist/components/DirectoryItemSelector/directory-item-selector.js +10 -40
- package/dist/components/ElementSearchDialog/element-search-dialog.js +1 -17
- package/dist/components/ElementSearchDialog/equipment-item.js +29 -47
- package/dist/components/ElementSearchDialog/tag-renderer.js +2 -8
- package/dist/components/ElementSearchDialog/use-element-search.js +1 -4
- package/dist/components/FlatParameters/FlatParameters.js +13 -77
- package/dist/components/Login/Login.js +9 -34
- package/dist/components/Login/Logout.js +3 -26
- package/dist/components/MuiVirtualizedTable/ColumnHeader.js +35 -64
- package/dist/components/MuiVirtualizedTable/KeyedColumnsRowIndexer.js +4 -17
- package/dist/components/MuiVirtualizedTable/MuiVirtualizedTable.d.ts +1 -1
- package/dist/components/MuiVirtualizedTable/MuiVirtualizedTable.js +19 -95
- package/dist/components/MuiVirtualizedTable/index.d.ts +1 -1
- package/dist/components/MultipleSelectionDialog/MultipleSelectionDialog.js +2 -6
- package/dist/components/OverflowableText/overflowable-text.js +3 -10
- package/dist/components/ReportViewer/filter-button.d.ts +1 -1
- package/dist/components/ReportViewer/filter-button.js +2 -7
- package/dist/components/ReportViewer/log-report-item.js +7 -17
- package/dist/components/ReportViewer/log-report.js +4 -13
- package/dist/components/ReportViewer/log-table.d.ts +1 -1
- package/dist/components/ReportViewer/log-table.js +3 -16
- package/dist/components/ReportViewer/multi-select-list.d.ts +1 -1
- package/dist/components/ReportViewer/multi-select-list.js +2 -14
- package/dist/components/ReportViewer/report-item.js +4 -10
- package/dist/components/ReportViewer/report-viewer.d.ts +1 -1
- package/dist/components/ReportViewer/report-viewer.js +2 -7
- package/dist/components/ReportViewerDialog/report-viewer-dialog.js +1 -13
- package/dist/components/SignInCallbackHandler/SignInCallbackHandler.d.ts +1 -1
- package/dist/components/SignInCallbackHandler/SignInCallbackHandler.js +1 -4
- package/dist/components/SilentRenewCallbackHandler/SilentRenewCallbackHandler.d.ts +1 -1
- package/dist/components/SilentRenewCallbackHandler/SilentRenewCallbackHandler.js +1 -4
- package/dist/components/SnackbarProvider/SnackbarProvider.js +4 -11
- package/dist/components/TopBar/AboutDialog.js +51 -152
- package/dist/components/TopBar/GridLogo.d.ts +2 -2
- package/dist/components/TopBar/GridLogo.js +8 -41
- package/dist/components/TopBar/TopBar.js +197 -328
- package/dist/components/TreeViewFinder/TreeViewFinder.js +23 -66
- package/dist/components/TreeViewFinder/index.d.ts +2 -2
- package/dist/components/dialogs/custom-mui-dialog.d.ts +2 -1
- package/dist/components/dialogs/custom-mui-dialog.js +64 -39
- package/dist/components/dialogs/modify-element-selection.js +1 -3
- package/dist/components/dialogs/popup-confirmation-dialog.d.ts +1 -1
- package/dist/components/dialogs/popup-confirmation-dialog.js +8 -15
- package/dist/components/filter/criteria-based/criteria-based-filter-edition-dialog.js +3 -18
- package/dist/components/filter/criteria-based/criteria-based-filter-utils.js +3 -9
- package/dist/components/filter/criteria-based/criteria-based-form.d.ts +1 -1
- package/dist/components/filter/criteria-based/criteria-based-form.js +7 -15
- package/dist/components/filter/criteria-based/filter-free-properties.d.ts +1 -1
- package/dist/components/filter/criteria-based/filter-free-properties.js +1 -4
- package/dist/components/filter/criteria-based/filter-properties.js +16 -24
- package/dist/components/filter/criteria-based/filter-property.js +1 -4
- package/dist/components/filter/expert/expert-filter-constants.d.ts +10 -3
- package/dist/components/filter/expert/expert-filter-constants.js +16 -12
- package/dist/components/filter/expert/expert-filter-edition-dialog.js +3 -18
- package/dist/components/filter/expert/expert-filter-form.js +1 -7
- package/dist/components/filter/expert/expert-filter-utils.js +10 -30
- package/dist/components/filter/expert/expert-filter.type.d.ts +3 -1
- package/dist/components/filter/expert/expert-filter.type.js +2 -0
- package/dist/components/filter/explicit-naming/explicit-naming-filter-edition-dialog.js +2 -15
- package/dist/components/filter/explicit-naming/explicit-naming-filter-form.d.ts +1 -1
- package/dist/components/filter/explicit-naming/explicit-naming-filter-form.js +10 -35
- package/dist/components/filter/filter-creation-dialog.js +5 -10
- package/dist/components/filter/filter-form.js +3 -17
- package/dist/components/filter/utils/filter-api.js +1 -7
- package/dist/components/inputs/react-hook-form/ExpandingTextField.js +1 -9
- package/dist/components/inputs/react-hook-form/ag-grid-table/bottom-right-buttons.js +14 -52
- package/dist/components/inputs/react-hook-form/ag-grid-table/csv-uploader/csv-uploader.js +14 -62
- package/dist/components/inputs/react-hook-form/ag-grid-table/custom-ag-grid-table.js +29 -40
- package/dist/components/inputs/react-hook-form/autocomplete-inputs/autocomplete-input.js +2 -8
- package/dist/components/inputs/react-hook-form/autocomplete-inputs/multiple-autocomplete-input.js +1 -3
- package/dist/components/inputs/react-hook-form/booleans/boolean-input.js +1 -7
- package/dist/components/inputs/react-hook-form/booleans/checkbox-input.js +1 -9
- package/dist/components/inputs/react-hook-form/booleans/switch-input.js +1 -9
- package/dist/components/inputs/react-hook-form/description-field.d.ts +8 -0
- package/dist/components/inputs/react-hook-form/description-field.js +48 -0
- package/dist/components/inputs/react-hook-form/directory-items-input.js +5 -29
- package/dist/components/inputs/react-hook-form/error-management/error-input.d.ts +1 -1
- package/dist/components/inputs/react-hook-form/provider/custom-form-provider.js +1 -7
- package/dist/components/inputs/react-hook-form/radio-input.js +8 -18
- package/dist/components/inputs/react-hook-form/range-input.js +1 -4
- package/dist/components/inputs/react-hook-form/select-inputs/countries-input.js +1 -9
- package/dist/components/inputs/react-hook-form/select-inputs/mui-select-input.js +2 -13
- package/dist/components/inputs/react-hook-form/select-inputs/select-input.js +2 -6
- package/dist/components/inputs/react-hook-form/slider-input.d.ts +1 -1
- package/dist/components/inputs/react-hook-form/slider-input.js +2 -19
- package/dist/components/inputs/react-hook-form/unique-name-input.js +1 -9
- package/dist/components/inputs/react-hook-form/utils/field-label.d.ts +1 -1
- package/dist/components/inputs/react-hook-form/utils/field-label.js +1 -5
- package/dist/components/inputs/react-hook-form/utils/submit-button.js +1 -8
- package/dist/components/inputs/react-hook-form/utils/text-field-with-adornment.js +18 -47
- package/dist/components/inputs/react-query-builder/add-button.js +1 -10
- package/dist/components/inputs/react-query-builder/autocomplete-with-favorites.d.ts +12 -0
- package/dist/components/inputs/react-query-builder/autocomplete-with-favorites.js +43 -0
- package/dist/components/inputs/react-query-builder/composite-rule-editor/group-value-editor.js +14 -27
- package/dist/components/inputs/react-query-builder/composite-rule-editor/rule-value-editor.js +1 -3
- package/dist/components/inputs/react-query-builder/country-value-editor.js +27 -28
- package/dist/components/inputs/react-query-builder/custom-react-query-builder.js +25 -31
- package/dist/components/inputs/react-query-builder/element-value-editor.js +1 -10
- package/dist/components/inputs/react-query-builder/property-value-editor.js +6 -11
- package/dist/components/inputs/react-query-builder/remove-button.js +1 -9
- package/dist/components/inputs/react-query-builder/text-value-editor.js +2 -1
- package/dist/components/inputs/react-query-builder/translated-value-editor.js +3 -4
- package/dist/components/inputs/react-query-builder/use-convert-value.d.ts +1 -1
- package/dist/components/inputs/react-query-builder/use-convert-value.js +1 -6
- package/dist/components/inputs/react-query-builder/value-editor.js +4 -20
- package/dist/components/translations/filter-expert-en.d.ts +2 -0
- package/dist/components/translations/filter-expert-en.js +3 -1
- package/dist/components/translations/filter-expert-fr.d.ts +2 -0
- package/dist/components/translations/filter-expert-fr.js +3 -1
- package/dist/hooks/localized-countries-hook.js +1 -3
- package/dist/hooks/useConfidentialityWarning.d.ts +8 -0
- package/dist/hooks/useConfidentialityWarning.js +14 -0
- package/dist/hooks/useDebounce.js +1 -4
- package/dist/hooks/useSnackMessage.js +3 -12
- package/dist/index.d.ts +11 -9
- package/dist/index.js +157 -151
- package/dist/services/apps-metadata.d.ts +7 -0
- package/dist/services/apps-metadata.js +13 -0
- package/dist/services/directory.js +3 -11
- package/dist/services/explore.js +2 -8
- package/dist/services/index.js +3 -1
- package/dist/services/utils.js +4 -12
- package/dist/utils/AuthService.js +8 -29
- package/dist/utils/UserManagerMock.js +6 -23
- package/dist/utils/styles.js +1 -6
- package/package.json +1 -1
|
@@ -233,8 +233,7 @@ const FIELDS_OPTIONS = {
|
|
|
233
233
|
name: FieldType.COUNTRY,
|
|
234
234
|
label: "country",
|
|
235
235
|
dataType: DataType.ENUM,
|
|
236
|
-
valueEditorType: "select"
|
|
237
|
-
defaultValue: "AF"
|
|
236
|
+
valueEditorType: "select"
|
|
238
237
|
},
|
|
239
238
|
VOLTAGE_REGULATOR_ON: {
|
|
240
239
|
name: FieldType.VOLTAGE_REGULATOR_ON,
|
|
@@ -471,15 +470,13 @@ const FIELDS_OPTIONS = {
|
|
|
471
470
|
name: FieldType.COUNTRY_1,
|
|
472
471
|
label: "country1",
|
|
473
472
|
dataType: DataType.ENUM,
|
|
474
|
-
valueEditorType: "select"
|
|
475
|
-
defaultValue: "AF"
|
|
473
|
+
valueEditorType: "select"
|
|
476
474
|
},
|
|
477
475
|
COUNTRY_2: {
|
|
478
476
|
name: FieldType.COUNTRY_2,
|
|
479
477
|
label: "country2",
|
|
480
478
|
dataType: DataType.ENUM,
|
|
481
|
-
valueEditorType: "select"
|
|
482
|
-
defaultValue: "AF"
|
|
479
|
+
valueEditorType: "select"
|
|
483
480
|
},
|
|
484
481
|
SERIE_RESISTANCE: {
|
|
485
482
|
name: FieldType.SERIE_RESISTANCE,
|
|
@@ -1012,15 +1009,20 @@ const FIELDS_OPTIONS = {
|
|
|
1012
1009
|
label: "dcNominalVoltage",
|
|
1013
1010
|
dataType: DataType.NUMBER,
|
|
1014
1011
|
inputType: "number"
|
|
1012
|
+
},
|
|
1013
|
+
PAIRING_KEY: {
|
|
1014
|
+
name: FieldType.PAIRING_KEY,
|
|
1015
|
+
label: "pairingKey",
|
|
1016
|
+
dataType: DataType.STRING
|
|
1017
|
+
},
|
|
1018
|
+
TIE_LINE_ID: {
|
|
1019
|
+
name: FieldType.TIE_LINE_ID,
|
|
1020
|
+
label: "tieLineId",
|
|
1021
|
+
dataType: DataType.STRING
|
|
1015
1022
|
}
|
|
1016
1023
|
};
|
|
1017
1024
|
const fields = {
|
|
1018
|
-
SUBSTATION: [
|
|
1019
|
-
FIELDS_OPTIONS.ID,
|
|
1020
|
-
FIELDS_OPTIONS.NAME,
|
|
1021
|
-
FIELDS_OPTIONS.COUNTRY,
|
|
1022
|
-
FIELDS_OPTIONS.PROPERTY
|
|
1023
|
-
],
|
|
1025
|
+
SUBSTATION: [FIELDS_OPTIONS.ID, FIELDS_OPTIONS.NAME, FIELDS_OPTIONS.COUNTRY, FIELDS_OPTIONS.PROPERTY],
|
|
1024
1026
|
VOLTAGE_LEVEL: [
|
|
1025
1027
|
FIELDS_OPTIONS.ID,
|
|
1026
1028
|
FIELDS_OPTIONS.NAME,
|
|
@@ -1325,6 +1327,7 @@ const fields = {
|
|
|
1325
1327
|
FIELDS_OPTIONS.COUNTRY,
|
|
1326
1328
|
FIELDS_OPTIONS.VOLTAGE_LEVEL_ID,
|
|
1327
1329
|
FIELDS_OPTIONS.NOMINAL_VOLTAGE,
|
|
1330
|
+
FIELDS_OPTIONS.TIE_LINE_ID,
|
|
1328
1331
|
FIELDS_OPTIONS.CONNECTED,
|
|
1329
1332
|
FIELDS_OPTIONS.P0,
|
|
1330
1333
|
FIELDS_OPTIONS.Q0,
|
|
@@ -1333,6 +1336,7 @@ const fields = {
|
|
|
1333
1336
|
FIELDS_OPTIONS.SHUNT_SUSCEPTANCE,
|
|
1334
1337
|
FIELDS_OPTIONS.SHUNT_CONDUCTANCE,
|
|
1335
1338
|
FIELDS_OPTIONS.PAIRED,
|
|
1339
|
+
FIELDS_OPTIONS.PAIRING_KEY,
|
|
1336
1340
|
FIELDS_OPTIONS.PROPERTY,
|
|
1337
1341
|
FIELDS_OPTIONS.SUBSTATION_PROPERTY,
|
|
1338
1342
|
FIELDS_OPTIONS.VOLTAGE_LEVEL_PROPERTY
|
|
@@ -55,9 +55,7 @@ function ExpertFilterEditionDialog({
|
|
|
55
55
|
[FieldConstants.NAME]: name,
|
|
56
56
|
[FieldConstants.FILTER_TYPE]: FilterType.EXPERT.id,
|
|
57
57
|
[FieldConstants.EQUIPMENT_TYPE]: response[FieldConstants.EQUIPMENT_TYPE],
|
|
58
|
-
[EXPERT_FILTER_QUERY]: importExpertRules(
|
|
59
|
-
response[EXPERT_FILTER_QUERY]
|
|
60
|
-
)
|
|
58
|
+
[EXPERT_FILTER_QUERY]: importExpertRules(response[EXPERT_FILTER_QUERY])
|
|
61
59
|
});
|
|
62
60
|
}).catch((error) => {
|
|
63
61
|
setDataFetchStatus(FetchStatus.FETCH_ERROR);
|
|
@@ -93,14 +91,7 @@ function ExpertFilterEditionDialog({
|
|
|
93
91
|
});
|
|
94
92
|
}
|
|
95
93
|
},
|
|
96
|
-
[
|
|
97
|
-
broadcastChannel,
|
|
98
|
-
id,
|
|
99
|
-
onClose,
|
|
100
|
-
selectionForCopy.sourceItemUuid,
|
|
101
|
-
snackError,
|
|
102
|
-
setSelectionForCopy
|
|
103
|
-
]
|
|
94
|
+
[broadcastChannel, id, onClose, selectionForCopy.sourceItemUuid, snackError, setSelectionForCopy]
|
|
104
95
|
);
|
|
105
96
|
const isDataReady = dataFetchStatus === FetchStatus.FETCH_SUCCESS;
|
|
106
97
|
return /* @__PURE__ */ jsx(
|
|
@@ -116,13 +107,7 @@ function ExpertFilterEditionDialog({
|
|
|
116
107
|
disabledSave: !!nameError || !!isValidating,
|
|
117
108
|
isDataFetching: dataFetchStatus === FetchStatus.FETCHING,
|
|
118
109
|
language,
|
|
119
|
-
children: isDataReady && /* @__PURE__ */ jsx(
|
|
120
|
-
FilterForm,
|
|
121
|
-
{
|
|
122
|
-
activeDirectory,
|
|
123
|
-
elementExists
|
|
124
|
-
}
|
|
125
|
-
)
|
|
110
|
+
children: isDataReady && /* @__PURE__ */ jsx(FilterForm, { activeDirectory, elementExists })
|
|
126
111
|
}
|
|
127
112
|
);
|
|
128
113
|
}
|
|
@@ -99,13 +99,7 @@ function ExpertFilterForm() {
|
|
|
99
99
|
validateButtonLabel: "button.changeType"
|
|
100
100
|
}
|
|
101
101
|
) }),
|
|
102
|
-
watchEquipmentType && isSupportedEquipmentType(watchEquipmentType) && /* @__PURE__ */ jsx(
|
|
103
|
-
CustomReactQueryBuilder,
|
|
104
|
-
{
|
|
105
|
-
name: EXPERT_FILTER_QUERY,
|
|
106
|
-
fields: translatedFields
|
|
107
|
-
}
|
|
108
|
-
)
|
|
102
|
+
watchEquipmentType && isSupportedEquipmentType(watchEquipmentType) && /* @__PURE__ */ jsx(CustomReactQueryBuilder, { name: EXPERT_FILTER_QUERY, fields: translatedFields })
|
|
109
103
|
] });
|
|
110
104
|
}
|
|
111
105
|
export {
|
|
@@ -36,9 +36,7 @@ const getDataType = (fieldName, operator) => {
|
|
|
36
36
|
return fieldData == null ? void 0 : fieldData.dataType;
|
|
37
37
|
};
|
|
38
38
|
const getOperators = (fieldName, intl) => {
|
|
39
|
-
const field = Object.values(FIELDS_OPTIONS).find(
|
|
40
|
-
(fieldOption) => fieldOption.name === fieldName
|
|
41
|
-
);
|
|
39
|
+
const field = Object.values(FIELDS_OPTIONS).find((fieldOption) => fieldOption.name === fieldName);
|
|
42
40
|
switch (field == null ? void 0 : field.dataType) {
|
|
43
41
|
case DataType.STRING: {
|
|
44
42
|
let stringOperators = [
|
|
@@ -83,10 +81,7 @@ const getOperators = (fieldName, intl) => {
|
|
|
83
81
|
case DataType.BOOLEAN: {
|
|
84
82
|
let booleanOperators = [OPERATOR_OPTIONS.EQUALS];
|
|
85
83
|
if (field.name === FieldType.AUTOMATE) {
|
|
86
|
-
booleanOperators = [
|
|
87
|
-
OPERATOR_OPTIONS.EXISTS,
|
|
88
|
-
OPERATOR_OPTIONS.NOT_EXISTS
|
|
89
|
-
];
|
|
84
|
+
booleanOperators = [OPERATOR_OPTIONS.EXISTS, OPERATOR_OPTIONS.NOT_EXISTS];
|
|
90
85
|
}
|
|
91
86
|
return booleanOperators.map((operator) => ({
|
|
92
87
|
name: operator.name,
|
|
@@ -100,9 +95,7 @@ const getOperators = (fieldName, intl) => {
|
|
|
100
95
|
OPERATOR_OPTIONS.IN
|
|
101
96
|
];
|
|
102
97
|
if (field.name === FieldType.SHUNT_COMPENSATOR_TYPE || field.name === FieldType.REGULATION_TYPE || field.name === FieldType.SVAR_REGULATION_MODE) {
|
|
103
|
-
enumOperators = enumOperators.filter(
|
|
104
|
-
(operator) => operator !== OPERATOR_OPTIONS.IN
|
|
105
|
-
);
|
|
98
|
+
enumOperators = enumOperators.filter((operator) => operator !== OPERATOR_OPTIONS.IN);
|
|
106
99
|
}
|
|
107
100
|
return enumOperators.map((operator) => ({
|
|
108
101
|
name: operator.name,
|
|
@@ -151,9 +144,7 @@ function exportExpertRules(query) {
|
|
|
151
144
|
return {
|
|
152
145
|
id: rule.id,
|
|
153
146
|
field: rule.field,
|
|
154
|
-
operator: dataType !== DataType.PROPERTY ? (_a = Object.values(OPERATOR_OPTIONS).find(
|
|
155
|
-
(operator) => operator.name === rule.operator
|
|
156
|
-
)) == null ? void 0 : _a.customName : rule.value.propertyOperator,
|
|
147
|
+
operator: dataType !== DataType.PROPERTY ? (_a = Object.values(OPERATOR_OPTIONS).find((operator) => operator.name === rule.operator)) == null ? void 0 : _a.customName : rule.value.propertyOperator,
|
|
157
148
|
value: !isValueAnArray && rule.operator !== OPERATOR_OPTIONS.EXISTS.name && rule.operator !== OPERATOR_OPTIONS.NOT_EXISTS.name && dataType !== DataType.PROPERTY ? changeValueUnit(rule.value, rule.field) : void 0,
|
|
158
149
|
values: isValueAnArray && dataType !== DataType.PROPERTY ? changeValueUnit(rule.value, rule.field) : void 0,
|
|
159
150
|
dataType,
|
|
@@ -178,9 +169,7 @@ function exportExpertRules(query) {
|
|
|
178
169
|
dataType: DataType.COMBINATOR,
|
|
179
170
|
rules: transformedRules,
|
|
180
171
|
// two additional attributes to distinct a composite rule from a normal rule group
|
|
181
|
-
operator: (_a = Object.values(OPERATOR_OPTIONS).find(
|
|
182
|
-
(operator) => operator.name === compositeRule.operator
|
|
183
|
-
)) == null ? void 0 : _a.customName,
|
|
172
|
+
operator: (_a = Object.values(OPERATOR_OPTIONS).find((operator) => operator.name === compositeRule.operator)) == null ? void 0 : _a.customName,
|
|
184
173
|
field: compositeRule.field
|
|
185
174
|
};
|
|
186
175
|
}
|
|
@@ -224,9 +213,7 @@ function importExpertRules(query) {
|
|
|
224
213
|
return {
|
|
225
214
|
id: rule.id,
|
|
226
215
|
field: rule.field,
|
|
227
|
-
operator: rule.dataType !== DataType.PROPERTY ? (_a = Object.values(OPERATOR_OPTIONS).find(
|
|
228
|
-
(operator) => operator.customName === rule.operator
|
|
229
|
-
)) == null ? void 0 : _a.name : OPERATOR_OPTIONS.IS.name,
|
|
216
|
+
operator: rule.dataType !== DataType.PROPERTY ? (_a = Object.values(OPERATOR_OPTIONS).find((operator) => operator.customName === rule.operator)) == null ? void 0 : _a.name : OPERATOR_OPTIONS.IS.name,
|
|
230
217
|
value: parseValue(rule)
|
|
231
218
|
};
|
|
232
219
|
}
|
|
@@ -245,9 +232,7 @@ function importExpertRules(query) {
|
|
|
245
232
|
return {
|
|
246
233
|
id: group.id,
|
|
247
234
|
field: group.field,
|
|
248
|
-
operator: (_a = Object.values(OPERATOR_OPTIONS).find(
|
|
249
|
-
(operator) => operator.customName === group.operator
|
|
250
|
-
)) == null ? void 0 : _a.name,
|
|
235
|
+
operator: (_a = Object.values(OPERATOR_OPTIONS).find((operator) => operator.customName === group.operator)) == null ? void 0 : _a.name,
|
|
251
236
|
value: {
|
|
252
237
|
combinator: group.combinator,
|
|
253
238
|
rules: transformedRules
|
|
@@ -278,10 +263,7 @@ function countRules(query) {
|
|
|
278
263
|
}
|
|
279
264
|
if ("rules" in query) {
|
|
280
265
|
const group = query;
|
|
281
|
-
return group.rules.reduce(
|
|
282
|
-
(sum, ruleOrGroup) => sum + countRules(ruleOrGroup),
|
|
283
|
-
0
|
|
284
|
-
);
|
|
266
|
+
return group.rules.reduce((sum, ruleOrGroup) => sum + countRules(ruleOrGroup), 0);
|
|
285
267
|
}
|
|
286
268
|
return 1;
|
|
287
269
|
}
|
|
@@ -295,7 +277,7 @@ const queryValidator = (query) => {
|
|
|
295
277
|
const isValueAnArray = Array.isArray(rule.value);
|
|
296
278
|
const dataType = getDataType(rule.field, rule.operator);
|
|
297
279
|
const isNumberInput = dataType === DataType.NUMBER && !isValueAnArray;
|
|
298
|
-
const isStringInput = dataType === DataType.STRING && !isValueAnArray;
|
|
280
|
+
const isStringInput = (dataType === DataType.STRING || dataType === DataType.ENUM) && !isValueAnArray;
|
|
299
281
|
if (rule.id && (rule.operator === OPERATOR_OPTIONS.EXISTS.name || rule.operator === OPERATOR_OPTIONS.NOT_EXISTS.name)) {
|
|
300
282
|
result[rule.id] = {
|
|
301
283
|
valid: true,
|
|
@@ -344,9 +326,7 @@ const queryValidator = (query) => {
|
|
|
344
326
|
reasons: [RULES.EMPTY_RULE]
|
|
345
327
|
};
|
|
346
328
|
} else if (rule.id && dataType === DataType.COMBINATOR) {
|
|
347
|
-
const childrenFields = Object.keys(
|
|
348
|
-
getFieldData(rule.field).children ?? {}
|
|
349
|
-
);
|
|
329
|
+
const childrenFields = Object.keys(getFieldData(rule.field).children ?? {});
|
|
350
330
|
const compositeGroup = rule.value;
|
|
351
331
|
childrenFields.forEach((field) => {
|
|
352
332
|
var _a2, _b2, _c2, _d2;
|
|
@@ -154,7 +154,9 @@ export declare enum FieldType {
|
|
|
154
154
|
CONVERTER_STATION_ID_2 = "CONVERTER_STATION_ID_2",
|
|
155
155
|
CONVERTER_STATION_NOMINAL_VOLTAGE_1 = "CONVERTER_STATION_NOMINAL_VOLTAGE_1",
|
|
156
156
|
CONVERTER_STATION_NOMINAL_VOLTAGE_2 = "CONVERTER_STATION_NOMINAL_VOLTAGE_2",
|
|
157
|
-
DC_NOMINAL_VOLTAGE = "DC_NOMINAL_VOLTAGE"
|
|
157
|
+
DC_NOMINAL_VOLTAGE = "DC_NOMINAL_VOLTAGE",
|
|
158
|
+
PAIRING_KEY = "PAIRING_KEY",
|
|
159
|
+
TIE_LINE_ID = "TIE_LINE_ID"
|
|
158
160
|
}
|
|
159
161
|
export declare enum DataType {
|
|
160
162
|
STRING = "STRING",
|
|
@@ -154,6 +154,8 @@ var FieldType = /* @__PURE__ */ ((FieldType2) => {
|
|
|
154
154
|
FieldType2["CONVERTER_STATION_NOMINAL_VOLTAGE_1"] = "CONVERTER_STATION_NOMINAL_VOLTAGE_1";
|
|
155
155
|
FieldType2["CONVERTER_STATION_NOMINAL_VOLTAGE_2"] = "CONVERTER_STATION_NOMINAL_VOLTAGE_2";
|
|
156
156
|
FieldType2["DC_NOMINAL_VOLTAGE"] = "DC_NOMINAL_VOLTAGE";
|
|
157
|
+
FieldType2["PAIRING_KEY"] = "PAIRING_KEY";
|
|
158
|
+
FieldType2["TIE_LINE_ID"] = "TIE_LINE_ID";
|
|
157
159
|
return FieldType2;
|
|
158
160
|
})(FieldType || {});
|
|
159
161
|
var DataType = /* @__PURE__ */ ((DataType2) => {
|
|
@@ -94,14 +94,7 @@ function ExplicitNamingFilterEditionDialog({
|
|
|
94
94
|
});
|
|
95
95
|
}
|
|
96
96
|
},
|
|
97
|
-
[
|
|
98
|
-
broadcastChannel,
|
|
99
|
-
id,
|
|
100
|
-
selectionForCopy,
|
|
101
|
-
onClose,
|
|
102
|
-
snackError,
|
|
103
|
-
setSelectionForCopy
|
|
104
|
-
]
|
|
97
|
+
[broadcastChannel, id, selectionForCopy, onClose, snackError, setSelectionForCopy]
|
|
105
98
|
);
|
|
106
99
|
const isDataReady = dataFetchStatus === FetchStatus.FETCH_SUCCESS;
|
|
107
100
|
return /* @__PURE__ */ jsx(
|
|
@@ -117,13 +110,7 @@ function ExplicitNamingFilterEditionDialog({
|
|
|
117
110
|
disabledSave: !!nameError || !!isValidating,
|
|
118
111
|
isDataFetching: dataFetchStatus === FetchStatus.FETCHING,
|
|
119
112
|
language,
|
|
120
|
-
children: isDataReady && /* @__PURE__ */ jsx(
|
|
121
|
-
FilterForm,
|
|
122
|
-
{
|
|
123
|
-
activeDirectory,
|
|
124
|
-
elementExists
|
|
125
|
-
}
|
|
126
|
-
)
|
|
113
|
+
children: isDataReady && /* @__PURE__ */ jsx(FilterForm, { activeDirectory, elementExists })
|
|
127
114
|
}
|
|
128
115
|
);
|
|
129
116
|
}
|
|
@@ -25,5 +25,5 @@ export interface FilterForExplicitConversionProps {
|
|
|
25
25
|
interface ExplicitNamingFilterFormProps {
|
|
26
26
|
sourceFilterForExplicitNamingConversion?: FilterForExplicitConversionProps;
|
|
27
27
|
}
|
|
28
|
-
declare function ExplicitNamingFilterForm({ sourceFilterForExplicitNamingConversion
|
|
28
|
+
declare function ExplicitNamingFilterForm({ sourceFilterForExplicitNamingConversion }: ExplicitNamingFilterFormProps): import("react/jsx-runtime").JSX.Element;
|
|
29
29
|
export default ExplicitNamingFilterForm;
|
|
@@ -29,31 +29,15 @@ const explicitNamingFilterSchema = {
|
|
|
29
29
|
[FieldConstants.EQUIPMENT_ID]: yup.string().nullable(),
|
|
30
30
|
[DISTRIBUTION_KEY]: yup.number().nullable()
|
|
31
31
|
})
|
|
32
|
-
).compact(
|
|
33
|
-
(row) => !row[DISTRIBUTION_KEY] && !row[FieldConstants.EQUIPMENT_ID]
|
|
34
|
-
).when([FieldConstants.FILTER_TYPE], {
|
|
32
|
+
).compact((row) => !row[DISTRIBUTION_KEY] && !row[FieldConstants.EQUIPMENT_ID]).when([FieldConstants.FILTER_TYPE], {
|
|
35
33
|
is: FilterType.EXPLICIT_NAMING.id,
|
|
36
34
|
then: (schema) => schema.min(1, "emptyFilterError").when([FieldConstants.EQUIPMENT_TYPE], {
|
|
37
35
|
is: (equipmentType) => isGeneratorOrLoad(equipmentType),
|
|
38
|
-
then: (innerSchema) => innerSchema.test(
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
(array) =>
|
|
42
|
-
|
|
43
|
-
(row) => !row[FieldConstants.EQUIPMENT_ID]
|
|
44
|
-
);
|
|
45
|
-
}
|
|
46
|
-
).test(
|
|
47
|
-
"ifOneKeyThenKeyEverywhere",
|
|
48
|
-
"missingDistributionKeyError",
|
|
49
|
-
(array) => {
|
|
50
|
-
return !(array.some(
|
|
51
|
-
(row) => row[DISTRIBUTION_KEY]
|
|
52
|
-
) && array.some(
|
|
53
|
-
(row) => !row[DISTRIBUTION_KEY]
|
|
54
|
-
));
|
|
55
|
-
}
|
|
56
|
-
)
|
|
36
|
+
then: (innerSchema) => innerSchema.test("noKeyWithoutId", "distributionKeyWithMissingIdError", (array) => {
|
|
37
|
+
return !array.some((row) => !row[FieldConstants.EQUIPMENT_ID]);
|
|
38
|
+
}).test("ifOneKeyThenKeyEverywhere", "missingDistributionKeyError", (array) => {
|
|
39
|
+
return !(array.some((row) => row[DISTRIBUTION_KEY]) && array.some((row) => !row[DISTRIBUTION_KEY]));
|
|
40
|
+
})
|
|
57
41
|
})
|
|
58
42
|
})
|
|
59
43
|
};
|
|
@@ -72,9 +56,7 @@ function getExplicitNamingFilterEmptyFormData() {
|
|
|
72
56
|
[FILTER_EQUIPMENTS_ATTRIBUTES]: makeDefaultTableRows()
|
|
73
57
|
};
|
|
74
58
|
}
|
|
75
|
-
function ExplicitNamingFilterForm({
|
|
76
|
-
sourceFilterForExplicitNamingConversion
|
|
77
|
-
}) {
|
|
59
|
+
function ExplicitNamingFilterForm({ sourceFilterForExplicitNamingConversion }) {
|
|
78
60
|
const intl = useIntl();
|
|
79
61
|
const { snackError } = useSnackMessage();
|
|
80
62
|
const { getValues, setValue } = useFormContext();
|
|
@@ -91,10 +73,7 @@ function ExplicitNamingFilterForm({
|
|
|
91
73
|
const forGeneratorOrLoad = isGeneratorOrLoad(watchEquipmentType);
|
|
92
74
|
useEffect(() => {
|
|
93
75
|
if (sourceFilterForExplicitNamingConversion) {
|
|
94
|
-
setValue(
|
|
95
|
-
FieldConstants.EQUIPMENT_TYPE,
|
|
96
|
-
sourceFilterForExplicitNamingConversion.equipmentType
|
|
97
|
-
);
|
|
76
|
+
setValue(FieldConstants.EQUIPMENT_TYPE, sourceFilterForExplicitNamingConversion.equipmentType);
|
|
98
77
|
}
|
|
99
78
|
}, [sourceFilterForExplicitNamingConversion, setValue]);
|
|
100
79
|
const columnDefs = useMemo(() => {
|
|
@@ -132,13 +111,9 @@ function ExplicitNamingFilterForm({
|
|
|
132
111
|
[]
|
|
133
112
|
);
|
|
134
113
|
const csvFileHeaders = useMemo(() => {
|
|
135
|
-
const newCsvFileHeaders = [
|
|
136
|
-
intl.formatMessage({ id: FieldConstants.EQUIPMENT_ID })
|
|
137
|
-
];
|
|
114
|
+
const newCsvFileHeaders = [intl.formatMessage({ id: FieldConstants.EQUIPMENT_ID })];
|
|
138
115
|
if (forGeneratorOrLoad) {
|
|
139
|
-
newCsvFileHeaders.push(
|
|
140
|
-
intl.formatMessage({ id: DISTRIBUTION_KEY })
|
|
141
|
-
);
|
|
116
|
+
newCsvFileHeaders.push(intl.formatMessage({ id: DISTRIBUTION_KEY }));
|
|
142
117
|
}
|
|
143
118
|
return newCsvFileHeaders;
|
|
144
119
|
}, [intl, forGeneratorOrLoad]);
|
|
@@ -69,16 +69,11 @@ function FilterCreationDialog({
|
|
|
69
69
|
activeDirectory
|
|
70
70
|
);
|
|
71
71
|
} else if (filterForm[FieldConstants.FILTER_TYPE] === FilterType.CRITERIA_BASED.id) {
|
|
72
|
-
saveCriteriaBasedFilter(
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
snackError({
|
|
78
|
-
messageTxt: error
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
);
|
|
72
|
+
saveCriteriaBasedFilter(filterForm, activeDirectory, onClose, (error) => {
|
|
73
|
+
snackError({
|
|
74
|
+
messageTxt: error
|
|
75
|
+
});
|
|
76
|
+
});
|
|
82
77
|
} else if (filterForm[FieldConstants.FILTER_TYPE] === FilterType.EXPERT.id) {
|
|
83
78
|
saveExpertFilter(
|
|
84
79
|
null,
|
|
@@ -7,18 +7,12 @@ import CriteriaBasedFilterForm from "./criteria-based/criteria-based-filter-form
|
|
|
7
7
|
import ExplicitNamingFilterForm from "./explicit-naming/explicit-naming-filter-form.js";
|
|
8
8
|
import ExpertFilterForm from "./expert/expert-filter-form.js";
|
|
9
9
|
import { FilterType } from "./constants/filter-constants.js";
|
|
10
|
-
import ExpandableGroup from "../ExpandableGroup/expandable-group.js";
|
|
11
10
|
import RadioInput from "../inputs/react-hook-form/radio-input.js";
|
|
12
11
|
import { ElementType } from "../../utils/ElementType.js";
|
|
13
|
-
import ExpandingTextField from "../inputs/react-hook-form/ExpandingTextField.js";
|
|
14
12
|
import UniqueNameInput from "../inputs/react-hook-form/unique-name-input.js";
|
|
13
|
+
import DescriptionField from "../inputs/react-hook-form/description-field.js";
|
|
15
14
|
function FilterForm(props) {
|
|
16
|
-
const {
|
|
17
|
-
sourceFilterForExplicitNamingConversion,
|
|
18
|
-
creation,
|
|
19
|
-
activeDirectory,
|
|
20
|
-
elementExists
|
|
21
|
-
} = props;
|
|
15
|
+
const { sourceFilterForExplicitNamingConversion, creation, activeDirectory, elementExists } = props;
|
|
22
16
|
const { setValue } = useFormContext();
|
|
23
17
|
const filterType = useWatch({ name: FieldConstants.FILTER_TYPE });
|
|
24
18
|
const handleChange = (_event, value) => {
|
|
@@ -42,15 +36,7 @@ function FilterForm(props) {
|
|
|
42
36
|
}
|
|
43
37
|
) }),
|
|
44
38
|
creation && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
45
|
-
/* @__PURE__ */ jsx(Grid, { item: true, xs: 12, children: /* @__PURE__ */ jsx(
|
|
46
|
-
ExpandingTextField,
|
|
47
|
-
{
|
|
48
|
-
name: FieldConstants.DESCRIPTION,
|
|
49
|
-
label: "descriptionProperty",
|
|
50
|
-
minRows: 3,
|
|
51
|
-
rows: 5
|
|
52
|
-
}
|
|
53
|
-
) }) }),
|
|
39
|
+
/* @__PURE__ */ jsx(Grid, { item: true, xs: 12, children: /* @__PURE__ */ jsx(DescriptionField, {}) }),
|
|
54
40
|
!sourceFilterForExplicitNamingConversion && /* @__PURE__ */ jsx(Grid, { item: true, children: /* @__PURE__ */ jsx(
|
|
55
41
|
RadioInput,
|
|
56
42
|
{
|
|
@@ -52,13 +52,7 @@ const saveExplicitNamingFilter = (tableValues, isFilterCreation, equipmentType,
|
|
|
52
52
|
};
|
|
53
53
|
const saveCriteriaBasedFilter = (filter, activeDirectory, onClose, onError, token) => {
|
|
54
54
|
const filterForBack = frontToBackTweak(void 0, filter);
|
|
55
|
-
createFilter(
|
|
56
|
-
filterForBack,
|
|
57
|
-
filter[FieldConstants.NAME],
|
|
58
|
-
filter[FieldConstants.DESCRIPTION],
|
|
59
|
-
activeDirectory,
|
|
60
|
-
token
|
|
61
|
-
).then(() => {
|
|
55
|
+
createFilter(filterForBack, filter[FieldConstants.NAME], filter[FieldConstants.DESCRIPTION], activeDirectory, token).then(() => {
|
|
62
56
|
onClose();
|
|
63
57
|
}).catch((error) => {
|
|
64
58
|
onError(error.message);
|
|
@@ -56,15 +56,7 @@ function ExpandingTextField({
|
|
|
56
56
|
...sx && { sx },
|
|
57
57
|
...textFieldFormProps
|
|
58
58
|
};
|
|
59
|
-
return /* @__PURE__ */ jsx(
|
|
60
|
-
TextInput,
|
|
61
|
-
{
|
|
62
|
-
name,
|
|
63
|
-
label,
|
|
64
|
-
formProps,
|
|
65
|
-
...otherTexFieldProps
|
|
66
|
-
}
|
|
67
|
-
);
|
|
59
|
+
return /* @__PURE__ */ jsx(TextInput, { name, label, formProps, ...otherTexFieldProps });
|
|
68
60
|
}
|
|
69
61
|
export {
|
|
70
62
|
ExpandingTextField as default
|
|
@@ -31,60 +31,22 @@ function BottomRightButtons({
|
|
|
31
31
|
const intl = useIntl();
|
|
32
32
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
33
33
|
/* @__PURE__ */ jsxs(Grid, { container: true, paddingTop: 1, paddingLeft: 2, children: [
|
|
34
|
-
/* @__PURE__ */ jsx(Grid, { item: true, xs: 1, children: csvProps && /* @__PURE__ */ jsx(
|
|
35
|
-
|
|
34
|
+
/* @__PURE__ */ jsx(Grid, { item: true, xs: 1, children: csvProps && /* @__PURE__ */ jsx(InnerColoredButton, { onClick: () => setUploaderOpen(true), children: /* @__PURE__ */ jsx(
|
|
35
|
+
Tooltip,
|
|
36
36
|
{
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
id: "ImportCSV"
|
|
43
|
-
}),
|
|
44
|
-
placement: "bottom",
|
|
45
|
-
children: /* @__PURE__ */ jsx(Upload, {})
|
|
46
|
-
}
|
|
47
|
-
)
|
|
37
|
+
title: intl.formatMessage({
|
|
38
|
+
id: "ImportCSV"
|
|
39
|
+
}),
|
|
40
|
+
placement: "bottom",
|
|
41
|
+
children: /* @__PURE__ */ jsx(Upload, {})
|
|
48
42
|
}
|
|
49
|
-
) }),
|
|
50
|
-
/* @__PURE__ */ jsxs(
|
|
51
|
-
|
|
52
|
-
{
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
children: [
|
|
57
|
-
/* @__PURE__ */ jsx(InnerColoredButton, { onClick: handleAddRow, children: /* @__PURE__ */ jsx(AddIcon, {}) }, "addButton"),
|
|
58
|
-
/* @__PURE__ */ jsx(
|
|
59
|
-
InnerColoredButton,
|
|
60
|
-
{
|
|
61
|
-
onClick: handleDeleteRows,
|
|
62
|
-
disabled: disableDelete,
|
|
63
|
-
children: /* @__PURE__ */ jsx(DeleteIcon, {})
|
|
64
|
-
},
|
|
65
|
-
"DeleteButton"
|
|
66
|
-
),
|
|
67
|
-
/* @__PURE__ */ jsx(
|
|
68
|
-
InnerColoredButton,
|
|
69
|
-
{
|
|
70
|
-
disabled: disableUp,
|
|
71
|
-
onClick: handleMoveRowUp,
|
|
72
|
-
children: /* @__PURE__ */ jsx(ArrowCircleUp, {})
|
|
73
|
-
},
|
|
74
|
-
"upButton"
|
|
75
|
-
),
|
|
76
|
-
/* @__PURE__ */ jsx(
|
|
77
|
-
InnerColoredButton,
|
|
78
|
-
{
|
|
79
|
-
disabled: disableDown,
|
|
80
|
-
onClick: handleMoveRowDown,
|
|
81
|
-
children: /* @__PURE__ */ jsx(ArrowCircleDown, {})
|
|
82
|
-
},
|
|
83
|
-
"downButton"
|
|
84
|
-
)
|
|
85
|
-
]
|
|
86
|
-
}
|
|
87
|
-
)
|
|
43
|
+
) }) }),
|
|
44
|
+
/* @__PURE__ */ jsxs(Grid, { item: true, xs: 11, sx: { display: "flex", justifyContent: "right" }, children: [
|
|
45
|
+
/* @__PURE__ */ jsx(InnerColoredButton, { onClick: handleAddRow, children: /* @__PURE__ */ jsx(AddIcon, {}) }, "addButton"),
|
|
46
|
+
/* @__PURE__ */ jsx(InnerColoredButton, { onClick: handleDeleteRows, disabled: disableDelete, children: /* @__PURE__ */ jsx(DeleteIcon, {}) }, "DeleteButton"),
|
|
47
|
+
/* @__PURE__ */ jsx(InnerColoredButton, { disabled: disableUp, onClick: handleMoveRowUp, children: /* @__PURE__ */ jsx(ArrowCircleUp, {}) }, "upButton"),
|
|
48
|
+
/* @__PURE__ */ jsx(InnerColoredButton, { disabled: disableDown, onClick: handleMoveRowDown, children: /* @__PURE__ */ jsx(ArrowCircleDown, {}) }, "downButton")
|
|
49
|
+
] })
|
|
88
50
|
] }),
|
|
89
51
|
/* @__PURE__ */ jsx(Grid, { item: true, xs: 12, children: /* @__PURE__ */ jsx(ErrorInput, { name, InputField: FieldErrorAlert }) }),
|
|
90
52
|
/* @__PURE__ */ jsx(
|
|
@@ -52,9 +52,7 @@ function CsvUploader({
|
|
|
52
52
|
}
|
|
53
53
|
for (let i = 0; i < fileHeaders.length; i++) {
|
|
54
54
|
if (fileHeaders[i] !== "" && rows[0][i] !== fileHeaders[i]) {
|
|
55
|
-
setCreateError(
|
|
56
|
-
intl.formatMessage({ id: "wrongCsvHeadersError" })
|
|
57
|
-
);
|
|
55
|
+
setCreateError(intl.formatMessage({ id: "wrongCsvHeadersError" }));
|
|
58
56
|
return false;
|
|
59
57
|
}
|
|
60
58
|
}
|
|
@@ -87,11 +85,7 @@ function CsvUploader({
|
|
|
87
85
|
};
|
|
88
86
|
const handleOpenCSVConfirmationDataDialog = () => {
|
|
89
87
|
const isValuesInTable = Array.isArray(watchTableValues) && watchTableValues.some(
|
|
90
|
-
(val) => val && Object.keys(val).filter(
|
|
91
|
-
(key) => key !== FieldConstants.AG_GRID_ROW_UUID
|
|
92
|
-
).some(
|
|
93
|
-
(e) => val[e] !== void 0 && val[e] !== null && String(val[e]).trim().length > 0
|
|
94
|
-
)
|
|
88
|
+
(val) => val && Object.keys(val).filter((key) => key !== FieldConstants.AG_GRID_ROW_UUID).some((e) => val[e] !== void 0 && val[e] !== null && String(val[e]).trim().length > 0)
|
|
95
89
|
);
|
|
96
90
|
if (isValuesInTable && getResultsFromImportedData().length > 0) {
|
|
97
91
|
setIsConfirmationPopupOpen(true);
|
|
@@ -112,51 +106,22 @@ function CsvUploader({
|
|
|
112
106
|
setIsConfirmationPopupOpen(false);
|
|
113
107
|
};
|
|
114
108
|
const renderConfirmationCsvData = () => {
|
|
115
|
-
return /* @__PURE__ */ jsxs(
|
|
116
|
-
|
|
117
|
-
{
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
children:
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
/* @__PURE__ */ jsx(CancelButton, { onClick: handleCancelDialog }),
|
|
125
|
-
/* @__PURE__ */ jsx(
|
|
126
|
-
Button,
|
|
127
|
-
{
|
|
128
|
-
onClick: () => handleReplacePopupConfirmation(),
|
|
129
|
-
variant: "outlined",
|
|
130
|
-
children: /* @__PURE__ */ jsx(FormattedMessage, { id: "replace" })
|
|
131
|
-
}
|
|
132
|
-
),
|
|
133
|
-
/* @__PURE__ */ jsx(
|
|
134
|
-
Button,
|
|
135
|
-
{
|
|
136
|
-
onClick: () => handleAddPopupConfirmation(),
|
|
137
|
-
variant: "outlined",
|
|
138
|
-
children: /* @__PURE__ */ jsx(FormattedMessage, { id: "add" })
|
|
139
|
-
}
|
|
140
|
-
)
|
|
141
|
-
] })
|
|
142
|
-
]
|
|
143
|
-
}
|
|
144
|
-
);
|
|
109
|
+
return /* @__PURE__ */ jsxs(Dialog, { open: isConfirmationPopupOpen, "aria-labelledby": "dialog-confirmation-csv-data", children: [
|
|
110
|
+
/* @__PURE__ */ jsx(DialogTitle, { id: "dialog-confirmation-csv-data", children: "Confirmation" }),
|
|
111
|
+
/* @__PURE__ */ jsx(DialogContent, { children: /* @__PURE__ */ jsx(DialogContentText, { children: intl.formatMessage({ id: "keepCSVDataMessage" }) }) }),
|
|
112
|
+
/* @__PURE__ */ jsxs(DialogActions, { children: [
|
|
113
|
+
/* @__PURE__ */ jsx(CancelButton, { onClick: handleCancelDialog }),
|
|
114
|
+
/* @__PURE__ */ jsx(Button, { onClick: () => handleReplacePopupConfirmation(), variant: "outlined", children: /* @__PURE__ */ jsx(FormattedMessage, { id: "replace" }) }),
|
|
115
|
+
/* @__PURE__ */ jsx(Button, { onClick: () => handleAddPopupConfirmation(), variant: "outlined", children: /* @__PURE__ */ jsx(FormattedMessage, { id: "add" }) })
|
|
116
|
+
] })
|
|
117
|
+
] });
|
|
145
118
|
};
|
|
146
119
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
147
120
|
/* @__PURE__ */ jsxs(Dialog, { open, onClose: handleClose, fullWidth: true, children: [
|
|
148
121
|
/* @__PURE__ */ jsx(DialogTitle, { children: title }),
|
|
149
122
|
/* @__PURE__ */ jsx(DialogContent, { children: /* @__PURE__ */ jsxs("div", { children: [
|
|
150
123
|
/* @__PURE__ */ jsxs(Grid, { container: true, spacing: 2, children: [
|
|
151
|
-
/* @__PURE__ */ jsx(Grid, { container: true, item: true, children: /* @__PURE__ */ jsx(Grid, { item: true, xs: 6, children: /* @__PURE__ */ jsx(
|
|
152
|
-
CsvDownloader,
|
|
153
|
-
{
|
|
154
|
-
datas: data,
|
|
155
|
-
filename: fileName,
|
|
156
|
-
separator: ",",
|
|
157
|
-
children: /* @__PURE__ */ jsx(Button, { variant: "contained", children: /* @__PURE__ */ jsx(FormattedMessage, { id: "GenerateCSV" }) })
|
|
158
|
-
}
|
|
159
|
-
) }) }),
|
|
124
|
+
/* @__PURE__ */ jsx(Grid, { container: true, item: true, children: /* @__PURE__ */ jsx(Grid, { item: true, xs: 6, children: /* @__PURE__ */ jsx(CsvDownloader, { datas: data, filename: fileName, separator: ",", children: /* @__PURE__ */ jsx(Button, { variant: "contained", children: /* @__PURE__ */ jsx(FormattedMessage, { id: "GenerateCSV" }) }) }) }) }),
|
|
160
125
|
/* @__PURE__ */ jsx(Grid, { container: true, item: true, spacing: 3, children: /* @__PURE__ */ jsx(
|
|
161
126
|
CSVReader,
|
|
162
127
|
{
|
|
@@ -166,23 +131,10 @@ function CsvUploader({
|
|
|
166
131
|
},
|
|
167
132
|
config: {
|
|
168
133
|
// We use | for multi values in one cell, then we remove it from the default value for this config, to avoid delimiter autodetection
|
|
169
|
-
delimitersToGuess: [
|
|
170
|
-
",",
|
|
171
|
-
" ",
|
|
172
|
-
";",
|
|
173
|
-
RECORD_SEP,
|
|
174
|
-
UNIT_SEP
|
|
175
|
-
]
|
|
134
|
+
delimitersToGuess: [",", " ", ";", RECORD_SEP, UNIT_SEP]
|
|
176
135
|
},
|
|
177
136
|
children: ({ getRootProps, acceptedFile }) => /* @__PURE__ */ jsxs(Grid, { item: true, children: [
|
|
178
|
-
/* @__PURE__ */ jsx(
|
|
179
|
-
Button,
|
|
180
|
-
{
|
|
181
|
-
...getRootProps(),
|
|
182
|
-
variant: "contained",
|
|
183
|
-
children: /* @__PURE__ */ jsx(FormattedMessage, { id: "UploadCSV" })
|
|
184
|
-
}
|
|
185
|
-
),
|
|
137
|
+
/* @__PURE__ */ jsx(Button, { ...getRootProps(), variant: "contained", children: /* @__PURE__ */ jsx(FormattedMessage, { id: "UploadCSV" }) }),
|
|
186
138
|
/* @__PURE__ */ jsx(
|
|
187
139
|
"span",
|
|
188
140
|
{
|