diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-06-05 00:08:11 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-06-05 00:08:11 +0300 |
commit | 37c8b3b44e6d3f5755e45b3db6913fab7fee5c89 (patch) | |
tree | 84efcb091ad4ac27861c1c23fa93cd24f76c0744 /app/assets/javascripts/vue_shared/components/project_selector | |
parent | 00ecf5debe240ed6d2aeed89b1f637ba6c418417 (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/assets/javascripts/vue_shared/components/project_selector')
-rw-r--r-- | app/assets/javascripts/vue_shared/components/project_selector/project_selector.vue | 43 |
1 files changed, 32 insertions, 11 deletions
diff --git a/app/assets/javascripts/vue_shared/components/project_selector/project_selector.vue b/app/assets/javascripts/vue_shared/components/project_selector/project_selector.vue index 6f3f2aa0e8e..15a5ce85046 100644 --- a/app/assets/javascripts/vue_shared/components/project_selector/project_selector.vue +++ b/app/assets/javascripts/vue_shared/components/project_selector/project_selector.vue @@ -1,6 +1,7 @@ <script> import { debounce } from 'lodash'; import { GlLoadingIcon, GlSearchBoxByType, GlInfiniteScroll } from '@gitlab/ui'; +import { __, n__, sprintf } from '~/locale'; import ProjectListItem from './project_list_item.vue'; const SEARCH_INPUT_TIMEOUT_MS = 500; @@ -48,6 +49,20 @@ export default { searchQuery: '', }; }, + computed: { + legendText() { + const count = this.projectSearchResults.length; + const total = this.totalResults; + + if (total > 0) { + return sprintf(__('Showing %{count} of %{total} projects'), { count, total }); + } + + return sprintf(n__('Showing %{count} project', 'Showing %{count} projects', count), { + count, + }); + }, + }, methods: { projectClicked(project) { this.$emit('projectClicked', project); @@ -82,17 +97,23 @@ export default { :total-items="totalResults" @bottomReached="bottomReached" > - <div v-if="!showLoadingIndicator" slot="items" class="d-flex flex-column"> - <project-list-item - v-for="project in projectSearchResults" - :key="project.id" - :selected="isSelected(project)" - :project="project" - :matcher="searchQuery" - class="js-project-list-item" - @click="projectClicked(project)" - /> - </div> + <template v-if="!showLoadingIndicator" #items> + <div class="d-flex flex-column"> + <project-list-item + v-for="project in projectSearchResults" + :key="project.id" + :selected="isSelected(project)" + :project="project" + :matcher="searchQuery" + class="js-project-list-item" + @click="projectClicked(project)" + /> + </div> + </template> + + <template #default> + {{ legendText }} + </template> </gl-infinite-scroll> <div v-if="showNoResultsMessage" class="text-muted ml-2 js-no-results-message"> {{ __('Sorry, no projects matched your search') }} |