css-class-string
css-class-string copied to clipboard
Helper for creating css class strings inspired by ReactJS classSet
CssClassString
Helper for creating css class strings inspired by ReactJS classSet
- Pass bare arguments for default classes
- Pass hash of
class => <boolean>
for conditional classes - Use array with two classes as a
key
and first will be used for truthy and second for falsey value[:true?, :false?] => <boolean>
Installation
Add this line to your application's Gemfile:
gem 'css-class-string'
Usage
// @boolvalue = true
%span{class: class_string({some: true, classy: false, [:truthy, :falsy] => @boolvalue})}
// equal to
%span{class: class_string('some', falsy: false, [:truthy, :falsy] => @boolvalue)}
// => <span class="some truthy"></span>
<!-- @boolvalue = false -->
<span class="<%= class_string({some: true, classy: true, [:truthy, :falsy] => @boolvalue} %>">
<!-- equal to -->
<span class="<%= class_string('some', 'classy', [:truthy, :falsy] => @boolvalue %>">
<!-- => <span class="some classy falsy"></span> -->
Outside a view
CssClassString::Helper.new({}).to_s
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request