Sha256: 94637ee4bfd7c9e8732f3f8934afaa2c086c1c01c73297b9f5c6bb1d67b73729

Contents?: true

Size: 619 Bytes

Versions: 6

Compression:

Stored size: 619 Bytes

Contents

module Clapton
  module ClaptonHelper

    def clapton_javascript_tag
      tag.script(src: "/clapton/index.js", type: "text/javascript")
    end

    def clapton_tag
      datas = []
      @components.each do |component|
        state_class = component[0].to_s.gsub("Component", "State")
        if Object.const_defined?(state_class)
          datas << { component: component[0].to_s, state: Object.const_get(state_class).new(component[1]).to_h }
        else
          datas << { component: component[0].to_s, state: {} }
        end
      end
      tag.div(id: "clapton", data: { clapton: datas })
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
clapton-0.0.6 app/helpers/clapton/clapton_helper.rb
clapton-0.0.5 app/helpers/clapton/clapton_helper.rb
clapton-0.0.4 app/helpers/clapton/clapton_helper.rb
clapton-0.0.3 app/helpers/clapton/clapton_helper.rb
clapton-0.0.2 app/helpers/clapton/clapton_helper.rb
clapton-0.0.1 app/helpers/clapton/clapton_helper.rb