diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-03-12 18:09:39 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-03-12 18:09:39 +0300 |
commit | dc889678d1de8c09310b2f8f9742bb6c78a6f1a4 (patch) | |
tree | 70945aa6721a271fc8057efa13c3216a03fbac45 /app/assets/javascripts/releases | |
parent | cd52759ee33051b8ad7b88b02ba7954e4fad7018 (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/assets/javascripts/releases')
4 files changed, 52 insertions, 13 deletions
diff --git a/app/assets/javascripts/releases/components/evidence_block.vue b/app/assets/javascripts/releases/components/evidence_block.vue index edbea33f1d1..0c51fffc96c 100644 --- a/app/assets/javascripts/releases/components/evidence_block.vue +++ b/app/assets/javascripts/releases/components/evidence_block.vue @@ -67,7 +67,7 @@ export default { </template> </expand-button> <clipboard-button - :title="__('Copy commit SHA')" + :title="__('Copy evidence SHA')" :text="sha" css-class="btn-default btn-transparent btn-clipboard" /> diff --git a/app/assets/javascripts/releases/components/release_block.vue b/app/assets/javascripts/releases/components/release_block.vue index f2cc36e38bb..61cd22dc161 100644 --- a/app/assets/javascripts/releases/components/release_block.vue +++ b/app/assets/javascripts/releases/components/release_block.vue @@ -93,7 +93,10 @@ export default { <release-block-header :release="release" /> <div class="card-body"> <div v-if="shouldRenderMilestoneInfo"> - <release-block-milestone-info :milestones="milestones" /> + <release-block-milestone-info + :milestones="milestones" + :open-issues-path="release._links.issuesUrl" + /> <hr class="mb-3 mt-0" /> </div> diff --git a/app/assets/javascripts/releases/components/release_block_assets.vue b/app/assets/javascripts/releases/components/release_block_assets.vue index 06b7f97a8de..f4b92416e47 100644 --- a/app/assets/javascripts/releases/components/release_block_assets.vue +++ b/app/assets/javascripts/releases/components/release_block_assets.vue @@ -34,7 +34,7 @@ export default { <ul v-if="assets.links.length" class="pl-0 mb-0 prepend-top-8 list-unstyled js-assets-list"> <li v-for="link in assets.links" :key="link.name" class="append-bottom-8"> - <gl-link v-gl-tooltip.bottom :title="__('Download asset')" :href="link.url"> + <gl-link v-gl-tooltip.bottom :title="__('Download asset')" :href="link.directAssetUrl"> <icon name="package" class="align-middle append-right-4 align-text-bottom" /> {{ link.name }} <span v-if="link.external">{{ __('(external source)') }}</span> diff --git a/app/assets/javascripts/releases/components/release_block_milestone_info.vue b/app/assets/javascripts/releases/components/release_block_milestone_info.vue index 50accf6b679..d9fbd2884b7 100644 --- a/app/assets/javascripts/releases/components/release_block_milestone_info.vue +++ b/app/assets/javascripts/releases/components/release_block_milestone_info.vue @@ -1,10 +1,15 @@ <script> -import { GlProgressBar, GlLink, GlBadge, GlButton, GlTooltipDirective } from '@gitlab/ui'; +import { + GlProgressBar, + GlLink, + GlBadge, + GlButton, + GlTooltipDirective, + GlSprintf, +} from '@gitlab/ui'; import { __, n__, sprintf } from '~/locale'; import { MAX_MILESTONES_TO_DISPLAY } from '../constants'; - -/** Sums the values of an array. For use with Array.reduce. */ -const sumReducer = (acc, curr) => acc + curr; +import { sum } from 'lodash'; export default { name: 'ReleaseBlockMilestoneInfo', @@ -13,6 +18,7 @@ export default { GlLink, GlBadge, GlButton, + GlSprintf, }, directives: { GlTooltip: GlTooltipDirective, @@ -22,6 +28,16 @@ export default { type: Array, required: true, }, + openIssuesPath: { + type: String, + required: false, + default: '', + }, + closedIssuesPath: { + type: String, + required: false, + default: '', + }, }, data() { return { @@ -42,14 +58,14 @@ export default { allIssueStats() { return this.milestones.map(m => m.issueStats || {}); }, - openIssuesCount() { - return this.allIssueStats.map(stats => stats.opened || 0).reduce(sumReducer); + totalIssuesCount() { + return sum(this.allIssueStats.map(stats => stats.total || 0)); }, closedIssuesCount() { - return this.allIssueStats.map(stats => stats.closed || 0).reduce(sumReducer); + return sum(this.allIssueStats.map(stats => stats.closed || 0)); }, - totalIssuesCount() { - return this.openIssuesCount + this.closedIssuesCount; + openIssuesCount() { + return this.totalIssuesCount - this.closedIssuesCount; }, milestoneLabelText() { return n__('Milestone', 'Milestones', this.milestones.length); @@ -130,7 +146,27 @@ export default { {{ __('Issues') }} <gl-badge pill variant="light" class="font-weight-bold">{{ totalIssuesCount }}</gl-badge> </span> - {{ issueCountsText }} + <div class="d-flex"> + <gl-link v-if="openIssuesPath" ref="openIssuesLink" :href="openIssuesPath"> + <gl-sprintf :message="__('Open: %{openIssuesCount}')"> + <template #openIssuesCount>{{ openIssuesCount }}</template> + </gl-sprintf> + </gl-link> + <span v-else ref="openIssuesText"> + {{ sprintf(__('Open: %{openIssuesCount}'), { openIssuesCount }) }} + </span> + + <span class="mx-1">•</span> + + <gl-link v-if="closedIssuesPath" ref="closedIssuesLink" :href="closedIssuesPath"> + <gl-sprintf :message="__('Closed: %{closedIssuesCount}')"> + <template #closedIssuesCount>{{ closedIssuesCount }}</template> + </gl-sprintf> + </gl-link> + <span v-else ref="closedIssuesText"> + {{ sprintf(__('Closed: %{closedIssuesCount}'), { closedIssuesCount }) }} + </span> + </div> </div> </div> </template> |