Sha256: 005e4242091ce86471d23ac7bab78a23d6c9928e839c173be77e8dff4325f0b9

Contents?: true

Size: 1023 Bytes

Versions: 36

Compression:

Stored size: 1023 Bytes

Contents

# encoding: utf-8
module Prismic
  module Fragments
    class Color < Fragment
      attr_accessor :value

      def initialize(value)
        @value = value
      end

      # Returns the RGB values in a Hash
      #
      # @example
      #   color.asRGB  # => {'red' => 123, 'green' => 123, 'blue' => 123}
      #
      # @return [Hash]
      def asRGB
        Fragments::Color.asRGB(@value)
      end

      def self.asRGB(value)
        {
          'red'   => value[0..1].to_i(16),
          'green' => value[2..3].to_i(16),
          'blue'  => value[4..5].to_i(16)
        }
      end

      # Generate an HTML representation of the fragment
      #
      # @param link_resolver [LinkResolver] The LinkResolver used to build
      #     application's specific URL
      #
      # @return [String] the HTML representation
      def as_html(link_resolver=nil)
        %(<span class="color">##@value</span>)
      end

      def self.valid?(value)
        /(\h{2})(\h{2})(\h{2})/ ===  value
      end
    end
  end
end

Version data entries

36 entries across 36 versions & 1 rubygems

Version Path
prismic.io-1.8.2 lib/prismic/fragments/color.rb
prismic.io-1.8.1 lib/prismic/fragments/color.rb
prismic.io-1.8.0 lib/prismic/fragments/color.rb
prismic.io-1.7.0 lib/prismic/fragments/color.rb
prismic.io-1.6.1 lib/prismic/fragments/color.rb
prismic.io-1.6.0 lib/prismic/fragments/color.rb
prismic.io-1.5.0 lib/prismic/fragments/color.rb
prismic.io-1.4.5 lib/prismic/fragments/color.rb
prismic.io-1.4.4 lib/prismic/fragments/color.rb
prismic.io-1.4.3 lib/prismic/fragments/color.rb
prismic.io-1.4.2 lib/prismic/fragments/color.rb
prismic.io-1.4.1 lib/prismic/fragments/color.rb
prismic.io-1.4.0 lib/prismic/fragments/color.rb
prismic.io-1.3.5 lib/prismic/fragments/color.rb
prismic.io-1.3.4 lib/prismic/fragments/color.rb
prismic.io-1.3.3 lib/prismic/fragments/color.rb
prismic.io-1.3.2 lib/prismic/fragments/color.rb
prismic.io-1.3.1 lib/prismic/fragments/color.rb
prismic.io-1.3.0 lib/prismic/fragments/color.rb
prismic.io-1.2.1 lib/prismic/fragments/color.rb