This is an automated email from the ASF dual-hosted git repository. kbhatt pushed a commit to branch branch-2.0 in repository https://gitbox.apache.org/repos/asf/atlas.git
commit efdd1d311b77ae2ab12106c172fc94dd6cbcc6a8 Author: kevalbhatt <[email protected]> AuthorDate: Fri Feb 14 17:37:33 2020 +0530 ATLAS-3617 : Labels , UI : Attempting to add duplicate label removes both the duplicate and already existing label with same name. (cherry picked from commit 695480e9367ef6cb86fb18cb552e94b82f106b45) --- dashboardv2/public/js/views/entity/EntityLabelDefineView.js | 11 +++++++++-- dashboardv3/public/js/views/entity/EntityLabelDefineView.js | 11 +++++++++-- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/dashboardv2/public/js/views/entity/EntityLabelDefineView.js b/dashboardv2/public/js/views/entity/EntityLabelDefineView.js index 62c3ef9..b4f4a51 100644 --- a/dashboardv2/public/js/views/entity/EntityLabelDefineView.js +++ b/dashboardv2/public/js/views/entity/EntityLabelDefineView.js @@ -74,7 +74,7 @@ define(['require', }); this.ui.addLabelOptions.html(str); var getLabelData = function(data, selectedData) { - if (data.suggestions) { + if (data.suggestions.length) { return _.map(data.suggestions, function(name, index) { var findValue = _.find(selectedData, { id: name }) if (findValue) { @@ -87,7 +87,8 @@ define(['require', } }); } else { - return []; + var findValue = _.find(selectedData, { id: data.prefixString }) + return findValue ? [findValue] : []; } }; this.ui.addLabelOptions.select2({ @@ -110,6 +111,12 @@ define(['require', }, cache: true }, + createTag: function(data) { + var found = _.find(this.$element.select2("data"), { id: data.term }); + if (!found) { + return { id: data.term, text: data.term }; + } + }, templateResult: this.formatResultSearch }); }, diff --git a/dashboardv3/public/js/views/entity/EntityLabelDefineView.js b/dashboardv3/public/js/views/entity/EntityLabelDefineView.js index be12f57..19c3e7e 100644 --- a/dashboardv3/public/js/views/entity/EntityLabelDefineView.js +++ b/dashboardv3/public/js/views/entity/EntityLabelDefineView.js @@ -74,7 +74,7 @@ define(['require', }); this.ui.addLabelOptions.html(str); var getLabelData = function(data, selectedData) { - if (data.suggestions) { + if (data.suggestions.length) { return _.map(data.suggestions, function(name, index) { var findValue = _.find(selectedData, { id: name }) if (findValue) { @@ -87,7 +87,8 @@ define(['require', } }); } else { - return []; + var findValue = _.find(selectedData, { id: data.prefixString }) + return findValue ? [findValue] : []; } }; this.ui.addLabelOptions.select2({ @@ -110,6 +111,12 @@ define(['require', }, cache: true }, + createTag: function(data) { + var found = _.find(this.$element.select2("data"), { id: data.term }); + if (!found) { + return { id: data.term, text: data.term }; + } + }, templateResult: this.formatResultSearch }); },
