From 8b573c94895dc0ac0e1d9d59cf3e8745e8b539ca Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Thu, 17 Dec 2020 11:59:07 +0000 Subject: Add latest changes from gitlab-org/gitlab@13-7-stable-ee --- .../analytics/cycle_analytics/stage_presenter.rb | 58 ++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 app/presenters/analytics/cycle_analytics/stage_presenter.rb (limited to 'app/presenters/analytics') diff --git a/app/presenters/analytics/cycle_analytics/stage_presenter.rb b/app/presenters/analytics/cycle_analytics/stage_presenter.rb new file mode 100644 index 00000000000..7b295b814bc --- /dev/null +++ b/app/presenters/analytics/cycle_analytics/stage_presenter.rb @@ -0,0 +1,58 @@ +# frozen_string_literal: true + +module Analytics + module CycleAnalytics + class StagePresenter < Gitlab::View::Presenter::Delegated + def title + extract_default_stage_attribute(:title) || name + end + + def description + extract_default_stage_attribute(:description) || '' + end + + def legend + '' + end + + private + + def extract_default_stage_attribute(attribute) + default_stage_attributes.dig(name.to_sym, attribute.to_sym) + end + + def default_stage_attributes + @default_stage_attributes ||= { + issue: { + title: s_('CycleAnalyticsStage|Issue'), + description: _('Time before an issue gets scheduled') + }, + plan: { + title: s_('CycleAnalyticsStage|Plan'), + description: _('Time before an issue starts implementation') + }, + code: { + title: s_('CycleAnalyticsStage|Code'), + description: _('Time until first merge request') + }, + test: { + title: s_('CycleAnalyticsStage|Test'), + description: _('Total test time for all commits/merges') + }, + review: { + title: s_('CycleAnalyticsStage|Review'), + description: _('Time between merge request creation and merge/close') + }, + staging: { + title: s_('CycleAnalyticsStage|Staging'), + description: _('From merge request merge until deploy to production') + }, + production: { + title: s_('CycleAnalyticsStage|Total'), + description: _('From issue creation until deploy to production') + } + }.freeze + end + end + end +end -- cgit v1.2.3