Class: LcpRuby::Display::Renderers::WorkflowBadge

Inherits:
BaseRenderer
  • Object
show all
Includes:
Concerns::WorkflowHelpers
Defined in:
lib/lcp_ruby/display/renderers/workflow_badge.rb

Instance Method Summary collapse

Methods inherited from BaseRenderer

#link_producing?

Instance Method Details

#render(value, options = {}, record: nil, view_context: nil) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
# File 'lib/lcp_ruby/display/renderers/workflow_badge.rb', line 7

def render(value, options = {}, record: nil, view_context: nil)
  return nil if value.blank?

  state_name = value.to_s
  workflow = resolve_workflow(options)
  color = resolve_color(state_name, workflow, options)
  label = workflow ? workflow.state_label(state_name) : state_name.humanize

  style = workflow_badge_style(color)
  view_context.(:span, label, class: "badge lcp-wf-badge", style: style)
end