Module: Maglev::Content::Builder

Defined in:
app/components/maglev/content/builder.rb

Constant Summary collapse

TYPES =
{
  text: Maglev::Content::Text,
  image: Maglev::Content::Image,
  link: Maglev::Content::Link,
  checkbox: Maglev::Content::Checkbox,
  color: Maglev::Content::Color,
  select: Maglev::Content::Select,
  collection_item: Maglev::Content::CollectionItem,
  icon: Maglev::Content::Icon
}.freeze

Class Method Summary collapse

Class Method Details

.build(scope, content, setting) ⇒ Object



17
18
19
20
21
22
23
# File 'app/components/maglev/content/builder.rb', line 17

def build(scope, content, setting)
  klass = TYPES[setting.type.to_sym]

  raise "[Maglev] Unknown setting type: #{setting.type}" unless klass

  klass.new(scope, content, setting)
end