Sha256: e7c54a8821aa051511392409ece6ec8a9859e364c7b220011d49d6f591a41be3

Contents?: true

Size: 1.09 KB

Versions: 9

Compression:

Stored size: 1.09 KB

Contents

module Facades
  module SassExtensions
    module Color
      
      # Check the luminance of color. This differs from lightness as it returns the actual values as 'light' and 'dark'
      def luminance(color)
        assert_type color, :Color
        result = ((color.red * 299) + (color.green * 587) + (color.blue * 114) / 1000)
        Sass::Script::String.new( result >= 160 ? 'light' : 'dark')
      end

      # Tint a color by mixing it with white
      def tint(color, dilution = Sass::Script::Number.new(50))
        assert_type color, :Color
        white = Sass::Script::Color.new([255, 255, 255, 1])
        assert_type dilution, :Number
        mix(color, white, Sass::Script::Number.new(100 - dilution.value))
      end

      # Shade a color by mixing it with black
      def shade(color, dilution = Sass::Script::Number.new(50))
        assert_type color, :Color
        black = Sass::Script::Color.new([0, 0, 0, 1])
        assert_type dilution, :Number
        mix(color, black, Sass::Script::Number.new(100 - dilution.value))
      end
      
    end # Color
  end # SassExtensions
end # Facades

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
facades-1.1.0 lib/facades/sass_extensions/color.rb
facades-1.0.9 lib/facades/sass_extensions/color.rb
facades-1.0.8 lib/facades/sass_extensions/color.rb
facades-1.0.6 lib/facades/sass_extensions/color.rb
facades-1.0.4 lib/facades/sass_extensions/color.rb
facades-1.0.3 lib/facades/sass_extensions/color.rb
facades-1.0.2 lib/facades/sass_extensions/color.rb
facades-1.0.1 lib/facades/sass_extensions/color.rb
facades-1.0.0 lib/facades/sass_extensions/color.rb