diff options
-rw-r--r-- | app/assets/javascripts/filtered_search/filtered_search_dropdown_manager.js | 9 | ||||
-rw-r--r-- | app/assets/javascripts/filtered_search/filtered_search_visual_tokens.js | 8 |
2 files changed, 11 insertions, 6 deletions
diff --git a/app/assets/javascripts/filtered_search/filtered_search_dropdown_manager.js b/app/assets/javascripts/filtered_search/filtered_search_dropdown_manager.js index e1a97070439..64f1e3ed461 100644 --- a/app/assets/javascripts/filtered_search/filtered_search_dropdown_manager.js +++ b/app/assets/javascripts/filtered_search/filtered_search_dropdown_manager.js @@ -163,13 +163,18 @@ resetDropdowns() { // Force current dropdown to hide - this.mapping[this.currentDropdown].reference.hideDropdown(); + const currentDropdown = this.mapping[this.currentDropdown]; + if (currentDropdown) { + currentDropdown.reference.hideDropdown(); + } // Re-Load dropdown this.setDropdown(); // Reset filters for current dropdown - this.mapping[this.currentDropdown].reference.resetFilters(); + if (currentDropdown) { + currentDropdown.reference.resetFilters(); + } // Reposition dropdown so that it is aligned with cursor this.updateDropdownOffset(this.currentDropdown); diff --git a/app/assets/javascripts/filtered_search/filtered_search_visual_tokens.js b/app/assets/javascripts/filtered_search/filtered_search_visual_tokens.js index 320afa26130..e4f1056a4a3 100644 --- a/app/assets/javascripts/filtered_search/filtered_search_visual_tokens.js +++ b/app/assets/javascripts/filtered_search/filtered_search_visual_tokens.js @@ -133,7 +133,7 @@ class FilteredSearchVisualTokens { const { isLastVisualTokenValid } = gl.FilteredSearchVisualTokens.getLastVisualTokenBeforeInput(); - if (input.value) { + if (input && input.value) { if (isLastVisualTokenValid) { gl.FilteredSearchVisualTokens.addSearchVisualToken(input.value); } else { @@ -174,13 +174,13 @@ class FilteredSearchVisualTokens { } static moveInputToTheRight() { - const input = document.querySelector('.filtered-search'); - const inputLi = input.parentElement; + const inputLi = document.querySelector('.input-token'); const tokenContainer = document.querySelector('.tokens-container'); FilteredSearchVisualTokens.tokenizeInput(); - if (!tokenContainer.lastElementChild.isEqualNode(inputLi)) { + const lastElementChild = tokenContainer && tokenContainer.lastElementChild; + if (lastElementChild && !lastElementChild.isEqualNode(inputLi)) { const { isLastVisualTokenValid } = gl.FilteredSearchVisualTokens.getLastVisualTokenBeforeInput(); |