From 0975f02f743ae0433fe42ef62d798d8c5e3850fa Mon Sep 17 00:00:00 2001 From: Buck Doyle Date: Wed, 5 Aug 2020 08:53:54 -0500 Subject: [PATCH] Add truncation details to group heading --- ui/app/components/global-search/control.js | 16 ++++++++++++++-- ui/tests/acceptance/search-test.js | 2 +- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/ui/app/components/global-search/control.js b/ui/app/components/global-search/control.js index 2e5b1a7521d3..38cbdebf4fad 100644 --- a/ui/app/components/global-search/control.js +++ b/ui/app/components/global-search/control.js @@ -66,11 +66,11 @@ export default class GlobalSearchControl extends Component { return [ { - groupName: `Jobs (${this.jobSearch.listSearched.length})`, + groupName: resultsGroupLabel('Jobs', jobResults, this.jobSearch.listSearched), options: jobResults, }, { - groupName: `Clients (${this.nodeSearch.listSearched.length})`, + groupName: resultsGroupLabel('Clients', nodeResults, this.nodeSearch.listSearched), options: nodeResults, }, ]; @@ -180,3 +180,15 @@ class NodeSearch extends EmberObject.extend(Searchable) { fuzzySearchEnabled = true; includeFuzzySearchMatches = true; } + +function resultsGroupLabel(type, renderedResults, allResults) { + let countString; + + if (renderedResults.length < allResults.length) { + countString = `showing ${renderedResults.length} of ${allResults.length}`; + } else { + countString = renderedResults.length; + } + + return `${type} (${countString})`; +} diff --git a/ui/tests/acceptance/search-test.js b/ui/tests/acceptance/search-test.js index e4b8d6a5e856..7572f1ba6923 100644 --- a/ui/tests/acceptance/search-test.js +++ b/ui/tests/acceptance/search-test.js @@ -155,7 +155,7 @@ module('Acceptance | search', function(hooks) { PageLayout.navbar.search.as(search => { search.groups[0].as(jobs => { - assert.equal(jobs.name, 'Jobs (15)'); + assert.equal(jobs.name, 'Jobs (showing 10 of 15)'); assert.equal(jobs.options.length, 10); }); });