Module: Playbook::Flex
- Included in:
- KitBase
- Defined in:
- lib/playbook/flex.rb
Constant Summary collapse
- FLEX_VALUES =
%w[auto initial 0 1 2 3 4 5 6 7 8 9 10 11 12 none].freeze
- SCREEN_SIZES =
%w[xs sm md lg xl].freeze
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.included(base) ⇒ Object
5 6 7 |
# File 'lib/playbook/flex.rb', line 5 def self.included(base) base.prop :flex end |
Instance Method Details
#flex_options ⇒ Object
28 29 30 |
# File 'lib/playbook/flex.rb', line 28 def { flex: "flex" } end |
#flex_props ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/playbook/flex.rb', line 12 def flex_props value = flex return nil unless value if value.is_a?(::Hash) css = +"" css << "flex_#{value[:default]} " if value.key?(:default) && FLEX_VALUES.include?(value[:default].to_s) value.each do |media_size, val| css << "flex_#{media_size}_#{val} " if SCREEN_SIZES.include?(media_size.to_s) && FLEX_VALUES.include?(val.to_s) end css.strip unless css.empty? elsif FLEX_VALUES.include?(value.to_s) "flex_#{value}" end end |
#flex_values ⇒ Object
32 33 34 |
# File 'lib/playbook/flex.rb', line 32 def flex_values FLEX_VALUES end |