Class: Modulizer::StyleBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/modulizer/stylebuilder.rb

Class Method Summary collapse

Class Method Details

.build(mod_name, raw_content, mode = {}) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/modulizer/stylebuilder.rb', line 3

def self.build(mod_name, raw_content, mode = {})
  result = "\n"
  style_items = raw_content.scan /(.*?){(.*?)}/m

  style_items.each do |s|
    selectors  = s[0].strip.delete("\n")
    principles = s[1].strip.delete("\n")

    if mode["scoped"] == true
      new_selectors = ""
      selectors.split(',').each do |s|
        new_selectors += "div##{mod_name} #{s.strip}, "
      end
      new_selectors.strip!
      new_selectors = new_selectors[0...-1] if new_selectors[-1] == ','
      selectors = new_selectors
    end

    new_principles = ""
    principles.split(";").each do |p|
      new_principles += "#{p.strip}; "
    end

    result += "#{selectors} {#{new_principles.strip}}\n"
  end
  result
end