@gridsuite/commons-ui 0.32.1 → 0.32.2
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.
|
@@ -69,14 +69,14 @@ function extractDefault(paramDescription) {
|
|
|
69
69
|
}
|
|
70
70
|
return d !== null && d !== void 0 ? d : null;
|
|
71
71
|
}
|
|
72
|
-
function longestCommonPrefix(
|
|
73
|
-
if (!(
|
|
72
|
+
function longestCommonPrefix(stringList) {
|
|
73
|
+
if (!(stringList === null || stringList === void 0 ? void 0 : stringList.length)) {
|
|
74
74
|
return '';
|
|
75
75
|
}
|
|
76
|
-
var prefix =
|
|
76
|
+
var prefix = stringList.reduce(function (acc, str) {
|
|
77
77
|
return str.length < acc.length ? str : acc;
|
|
78
78
|
});
|
|
79
|
-
for (var _iterator = _createForOfIteratorHelperLoose(
|
|
79
|
+
for (var _iterator = _createForOfIteratorHelperLoose(stringList), _step; !(_step = _iterator()).done;) {
|
|
80
80
|
var str = _step.value;
|
|
81
81
|
while (str.slice(0, prefix.length) !== prefix) {
|
|
82
82
|
prefix = prefix.slice(0, -1);
|
|
@@ -139,14 +139,14 @@ var FlatParameters = function FlatParameters(_ref) {
|
|
|
139
139
|
setUncommitted(value);
|
|
140
140
|
}
|
|
141
141
|
if (onChange) {
|
|
142
|
-
if (
|
|
143
|
-
onChange(paramName,
|
|
142
|
+
if (param.type === 'STRING_LIST') {
|
|
143
|
+
onChange(paramName, value ? value.toString() : null, isInEdition);
|
|
144
144
|
} else {
|
|
145
145
|
onChange(paramName, value, isInEdition);
|
|
146
146
|
}
|
|
147
147
|
}
|
|
148
148
|
}, [inEditionParam, onChange]);
|
|
149
|
-
var
|
|
149
|
+
var onUncommitted = (0, _react.useCallback)(function (param, inEdit) {
|
|
150
150
|
if (inEdit) {
|
|
151
151
|
setInEditionParam(param.name);
|
|
152
152
|
} else {
|
|
@@ -168,11 +168,26 @@ var FlatParameters = function FlatParameters(_ref) {
|
|
|
168
168
|
if (param.name === inEditionParam && uncommitted !== null) {
|
|
169
169
|
return uncommitted;
|
|
170
170
|
} else if (initValues && initValues.hasOwnProperty(param.name)) {
|
|
171
|
-
|
|
171
|
+
if (param.type !== 'STRING_LIST') {
|
|
172
|
+
return initValues[param.name];
|
|
173
|
+
}
|
|
174
|
+
var valueList = initValues[param.name];
|
|
175
|
+
if (Array.isArray(valueList)) {
|
|
176
|
+
return valueList;
|
|
177
|
+
}
|
|
178
|
+
// otherwise split string into array
|
|
179
|
+
return valueList ? valueList.split(',').map(function (s) {
|
|
180
|
+
return s.trim();
|
|
181
|
+
}).filter(function (s) {
|
|
182
|
+
return !!s;
|
|
183
|
+
}) : [];
|
|
172
184
|
} else {
|
|
173
185
|
return extractDefault(param);
|
|
174
186
|
}
|
|
175
187
|
}
|
|
188
|
+
var outputTransformFloatString = function outputTransformFloatString(value) {
|
|
189
|
+
return (value === null || value === void 0 ? void 0 : value.replace(',', '.')) || '';
|
|
190
|
+
};
|
|
176
191
|
var renderField = function renderField(param) {
|
|
177
192
|
var fieldValue = mixInitAndDefault(param);
|
|
178
193
|
switch (param.type) {
|
|
@@ -194,15 +209,15 @@ var FlatParameters = function FlatParameters(_ref) {
|
|
|
194
209
|
},
|
|
195
210
|
value: fieldValue,
|
|
196
211
|
onFocus: function onFocus() {
|
|
197
|
-
return
|
|
212
|
+
return onUncommitted(param, true);
|
|
198
213
|
},
|
|
199
214
|
onBlur: function onBlur() {
|
|
200
|
-
return
|
|
215
|
+
return onUncommitted(param, false);
|
|
201
216
|
},
|
|
202
217
|
onChange: function onChange(e) {
|
|
203
218
|
var m = FloatRE.exec(e.target.value);
|
|
204
219
|
if (m) {
|
|
205
|
-
onFieldChange(e.target.value, param);
|
|
220
|
+
onFieldChange(outputTransformFloatString(e.target.value), param);
|
|
206
221
|
}
|
|
207
222
|
},
|
|
208
223
|
error: err,
|
|
@@ -218,10 +233,10 @@ var FlatParameters = function FlatParameters(_ref) {
|
|
|
218
233
|
},
|
|
219
234
|
value: fieldValue,
|
|
220
235
|
onFocus: function onFocus() {
|
|
221
|
-
return
|
|
236
|
+
return onUncommitted(param, true);
|
|
222
237
|
},
|
|
223
238
|
onBlur: function onBlur() {
|
|
224
|
-
return
|
|
239
|
+
return onUncommitted(param, false);
|
|
225
240
|
},
|
|
226
241
|
onChange: function onChange(e) {
|
|
227
242
|
var m = IntegerRE.exec(e.target.value);
|
|
@@ -261,14 +276,42 @@ var FlatParameters = function FlatParameters(_ref) {
|
|
|
261
276
|
}));
|
|
262
277
|
}
|
|
263
278
|
});
|
|
279
|
+
} else {
|
|
280
|
+
// no possible values => free user inputs
|
|
281
|
+
return /*#__PURE__*/_react["default"].createElement(_material.Autocomplete, {
|
|
282
|
+
fullWidth: true,
|
|
283
|
+
multiple: true,
|
|
284
|
+
freeSolo: true,
|
|
285
|
+
autoSelect: true,
|
|
286
|
+
options: [],
|
|
287
|
+
onChange: function onChange(e, value) {
|
|
288
|
+
return onFieldChange(value, param);
|
|
289
|
+
},
|
|
290
|
+
value: fieldValue,
|
|
291
|
+
renderTags: function renderTags(values, getTagProps) {
|
|
292
|
+
return values.map(function (value, index) {
|
|
293
|
+
return /*#__PURE__*/_react["default"].createElement(_material.Chip, _extends({
|
|
294
|
+
id: 'chip_' + value,
|
|
295
|
+
size: 'small',
|
|
296
|
+
label: value
|
|
297
|
+
}, getTagProps({
|
|
298
|
+
index: index
|
|
299
|
+
})));
|
|
300
|
+
});
|
|
301
|
+
},
|
|
302
|
+
renderInput: function renderInput(inputProps) {
|
|
303
|
+
return /*#__PURE__*/_react["default"].createElement(_material.TextField, _extends({}, inputProps, {
|
|
304
|
+
variant: variant
|
|
305
|
+
}));
|
|
306
|
+
}
|
|
307
|
+
});
|
|
264
308
|
}
|
|
265
|
-
// else fallthrough to default
|
|
266
309
|
case 'STRING':
|
|
267
310
|
if (param.possibleValues) {
|
|
268
311
|
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_material.Select, {
|
|
269
312
|
labelId: param.name,
|
|
270
313
|
value: fieldValue !== null && fieldValue !== void 0 ? fieldValue : '',
|
|
271
|
-
onChange: function onChange(ev
|
|
314
|
+
onChange: function onChange(ev) {
|
|
272
315
|
onFieldChange(ev.target.value, param);
|
|
273
316
|
},
|
|
274
317
|
size: "small",
|
|
@@ -287,12 +330,12 @@ var FlatParameters = function FlatParameters(_ref) {
|
|
|
287
330
|
default:
|
|
288
331
|
return /*#__PURE__*/_react["default"].createElement(_material.TextField, {
|
|
289
332
|
fullWidth: true,
|
|
290
|
-
|
|
333
|
+
value: fieldValue || '',
|
|
291
334
|
onFocus: function onFocus() {
|
|
292
|
-
return
|
|
335
|
+
return onUncommitted(param, true);
|
|
293
336
|
},
|
|
294
337
|
onBlur: function onBlur() {
|
|
295
|
-
return
|
|
338
|
+
return onUncommitted(param, false);
|
|
296
339
|
},
|
|
297
340
|
onChange: function onChange(e) {
|
|
298
341
|
return onFieldChange(e.target.value, param);
|