From 5ed3a22539b36f23e42e92c3e1d6fcbe33a905ee Mon Sep 17 00:00:00 2001 From: Giga Chubinidze Date: Wed, 11 Jan 2023 12:15:25 +0400 Subject: [PATCH] timing issue fixes --- app/assets/javascripts/experiments/table.js | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/app/assets/javascripts/experiments/table.js b/app/assets/javascripts/experiments/table.js index 3c08efec2..6e9b42905 100644 --- a/app/assets/javascripts/experiments/table.js +++ b/app/assets/javascripts/experiments/table.js @@ -457,13 +457,21 @@ var ExperimnetTable = { }); this.filterDropdown.on('filter:apply', () => { - var tableRowLength = document.getElementsByClassName('table-row').length; - document.getElementById('tasksNoResultsContainer').style.display = 'none'; - if (tableRowLength === 0) { - document.getElementById('tasksNoResultsContainer').style.display = 'block'; - } $.each(this.filters, (_i, filter) => { this.activeFilters[filter.name] = filter.apply($experimentFilter); + + // Prompt empty state when theres no filtered results + let values = Object.values(this.activeFilters); + let anyFilter = values.every(value => /^\s+$/.test(value) || value === null || value === undefined || value?.length === 0); + setTimeout(() => { + var tableRowLength = document.getElementsByClassName('table-row').length; + var emptyState = document.getElementById('tasksNoResultsContainer'); + if (tableRowLength === 0 && !anyFilter) { + emptyState.style.display = 'block'; + } else { + emptyState.style.display = 'none'; + } + }, 250) }); filterDropdown.toggleFilterMark(