diff --git a/src/js/rulesAssistantOptions.js b/src/js/rulesAssistantOptions.js index b67cf97c392f5fa54d84bb3f832b0a6830fc738b..87d51f80f333370a0cb1f3a3d458c214aa92631c 100644 --- a/src/js/rulesAssistantOptions.js +++ b/src/js/rulesAssistantOptions.js @@ -180,7 +180,7 @@ window.rulesAssistantOptions = (function() { * @param {Array} [data] * @param {boolean} [allowNullValue] * @param {boolean} [editor] - * @param {...any} args + * @param {...any} args */ constructor(prefix, data = [], allowNullValue = true, editor = false, ...args) { super(`${prefix}: `, editor, ...args); @@ -274,6 +274,14 @@ window.rulesAssistantOptions = (function() { class List extends EditorWithShortcuts { constructor(prefix, data = [], allowNullValue = true, textinput = false) { super(prefix, data, allowNullValue, textinput); + this.values = new Map(); + data.forEach(d => { + if (Array.isArray(d) && d.length > 1) { + this.values.set(d[1], d[0]); + } else { + this.values.set(d, d); + } + }); } createEditor() { @@ -289,6 +297,14 @@ window.rulesAssistantOptions = (function() { }; return res; } + + setValue(what) { + if (this.values.has(what)) { + super.setValue(this.values.get(what)); + } else { + super.setValue(what); + } + } } class NumberRange extends EditorWithShortcuts {