Use lowercase value for enum options with type string

This commit is contained in:
Vishal Shingala
2020-04-24 17:52:38 +05:30
parent d14d51c653
commit 4be8a7fde8

View File

@@ -32,20 +32,18 @@ module.exports = {
break;
case 'enum':
// ignore case-sensitivity for string options
if (_.isString(userOptions[id]) &&
_.map(defaultOptions[id].availableOptions, _.toLower).includes(_.toLower(userOptions[id]))) {
retVal[id] = _.toLower(userOptions[id]);
}
else if (!defaultOptions[id].availableOptions.includes(userOptions[id])) {
retVal[id] = defaultOptions[id].default;
if ((defaultOptions[id].availableOptions.includes(userOptions[id])) ||
(_.isString(userOptions[id]) &&
_.map(defaultOptions[id].availableOptions, _.toLower).includes(_.toLower(userOptions[id])))) {
retVal[id] = userOptions[id];
}
else {
retVal[id] = defaultOptions[id].default;
// ignore case-sensitivity for string options
_.isString(retVal[id]) && (retVal[id] = _.toLower(retVal[id]));
}
// ignore case-sensitivity for string options
_.isString(retVal[id]) && (retVal[id] = _.toLower(retVal[id]));
break;
case 'array':
// user input needs to be parsed