Class: Milestoner::Commits::Enrichers::Body

Inherits:
Object
  • Object
show all
Defined in:
lib/milestoner/commits/enrichers/body.rb

Overview

Enriches commit text by rendering as HTML based on trailer information.

Instance Method Summary collapse

Constructor Details

#initialize(key: "Format", renderer: Renderers::Universal.new) ⇒ Body

Returns a new instance of Body.



10
11
12
13
14
# File 'lib/milestoner/commits/enrichers/body.rb', line 10

def initialize(key: "Format", renderer: Renderers::Universal.new, **)
  @key = key
  @renderer = renderer
  super(**)
end

Instance Method Details

#call(commit) ⇒ Object



16
17
18
19
20
# File 'lib/milestoner/commits/enrichers/body.rb', line 16

def call commit
  commit.trailer_value_for(key)
        .value_or(settings.commit_format)
        .then { |format| renderer.call commit.body, for: format.to_sym }
end