summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/assets/javascripts/filtered_search/filtered_search_dropdown_manager.js9
-rw-r--r--app/assets/javascripts/filtered_search/filtered_search_visual_tokens.js8
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();