Class: Gitlab::Ci::Badge::Release::Template

Inherits:
Template
  • Object
show all
Defined in:
lib/gitlab/ci/badge/release/template.rb

Overview

Template object will be passed to badge.svg.erb template.

Constant Summary collapse

STATUS_COLOR =
{
  latest: '#3076af',
  none: '#e05d44'
}.freeze
KEY_WIDTH_DEFAULT =
90
VALUE_WIDTH_DEFAULT =
54
VALUE_WIDTH_MAXIMUM =
200

Constants inherited from Template

Template::DEFAULT_KEY_WIDTH, Template::MAX_KEY_TEXT_SIZE, Template::MAX_KEY_WIDTH

Instance Method Summary collapse

Methods inherited from Template

#key_color, #key_text_anchor, #value_text_anchor, #width

Constructor Details

#initialize(badge) ⇒ Template

Returns a new instance of Template.



16
17
18
19
20
# File 'lib/gitlab/ci/badge/release/template.rb', line 16

def initialize(badge)
  @tag = badge.tag || "none"
  @value_width = badge.customization[:value_width]
  super
end

Instance Method Details

#key_textObject



22
23
24
# File 'lib/gitlab/ci/badge/release/template.rb', line 22

def key_text
  @key_text || @entity.to_s
end

#key_widthObject



26
27
28
# File 'lib/gitlab/ci/badge/release/template.rb', line 26

def key_width
  @key_width || KEY_WIDTH_DEFAULT
end

#value_colorObject



42
43
44
# File 'lib/gitlab/ci/badge/release/template.rb', line 42

def value_color
  STATUS_COLOR[@tag.to_sym] || STATUS_COLOR[:latest]
end

#value_textObject



30
31
32
# File 'lib/gitlab/ci/badge/release/template.rb', line 30

def value_text
  @tag.to_s
end

#value_widthObject



34
35
36
37
38
39
40
# File 'lib/gitlab/ci/badge/release/template.rb', line 34

def value_width
  if @value_width && @value_width.between?(1, VALUE_WIDTH_MAXIMUM)
    @value_width
  else
    VALUE_WIDTH_DEFAULT
  end
end