class Voom::Presenters::WebClient::ComponentDecoratorFactory

Public Class Methods

build(component) click to toggle source
# File lib/voom/presenters/web_client/component_decorator_factory.rb, line 8
def self.build(component)
  comp_class = "#{inflector.camelize(component.type)}HtmlDecorator"
  klass = if const_defined?(comp_class)
            const_get(comp_class)
          else
            ComponentHtmlDecorator
          end
  klass.new(component)
end

Private Class Methods

inflector() click to toggle source
# File lib/voom/presenters/web_client/component_decorator_factory.rb, line 20
def self.inflector
  @inflector ||= Dry::Inflector.new
end