class Mozaic::Component

Attributes

block[RW]
defaults[RW]
name[RW]

Public Class Methods

find_by_name(name) click to toggle source
# File lib/mozaic/component.rb, line 25
def self.find_by_name name
    return [] if self.instances.nil?
    self.instances.select { |component| component.name == name.to_sym }
end
new(name, options = {}) click to toggle source
# File lib/mozaic/component.rb, line 9
def initialize name, options = {}, &block
    self.name = name.to_sym
    self.block = block if block_given?
    self.defaults = options
    self.class.instances = [] if @@instances.nil?
    self.class.instances << self
end

Public Instance Methods

options(options = {}) click to toggle source
# File lib/mozaic/component.rb, line 17
def options options = {}
    @defaults.merge options
end
render(options = {}) click to toggle source
# File lib/mozaic/component.rb, line 21
def render options = {}
    self.block.call(self.options(options)) unless self.block.nil?
end