Sha256: c91328005d7b90f6e3b60d24d7f44715c19783c61a533a196c3be933251f320f
Contents?: true
Size: 578 Bytes
Versions: 6
Compression:
Stored size: 578 Bytes
Contents
require "dry/inflector" module Voom module Presenters module WebClient class ComponentDecoratorFactory 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 def self.inflector @inflector ||= Dry::Inflector.new end end end end end
Version data entries
6 entries across 6 versions & 1 rubygems