Module: Coaster::CssHashString::HashToStyle

Defined in:
lib/coaster/core_ext/css_hash_string.rb

Instance Method Summary collapse

Instance Method Details

#to_css_hash(**defaults) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
# File 'lib/coaster/core_ext/css_hash_string.rb', line 11

def to_css_hash(**defaults)
  defaults = defaults.map do |k, v|
    k = k.to_s.gsub(/_/, '-')
    v.present? ? [k, v] : nil
  end.compact.to_h
  h = self.map do |k, v|
    k = k.to_s.gsub(/_/, '-')
    v.present? ? [k, v] : nil
  end.compact.to_h
  defaults.merge(h)
end

#to_css_style(**defaults) ⇒ Object



4
5
6
7
8
9
# File 'lib/coaster/core_ext/css_hash_string.rb', line 4

def to_css_style(**defaults)
  to_css_hash(**defaults).map do |k, v|
    k = k.gsub(/_/, '-')
    v.present? ? "#{k}:#{v}" : nil
  end.compact.join(';')
end