class LiquidComponent::Metadata

Attributes

additional[RW]
description[RW]
name[RW]
variables[RW]

Public Class Methods

new(metadata) click to toggle source
# File lib/liquid-component/metadata.rb, line 7
def initialize(metadata)
  metadata = metadata.with_indifferent_access

  self.name = metadata[:name]
  self.description = metadata[:description]
  self.variables = Variable.parse(metadata[:variables])

  metadata.delete(:name)
  metadata.delete(:description)
  metadata.delete(:variables)

  self.additional = metadata
end

Public Instance Methods

to_h() click to toggle source
# File lib/liquid-component/metadata.rb, line 21
def to_h
  h = {}
  h[:name] = name if name
  h[:description] = description if description
  h[:variables] = variables.map(&:to_h)
  h[:additional] = additional

  h
end