Sha256: 96314102a50aacefdec29b58e479655862d97ae042ed8a0d09f0a3b25c560b97

Contents?: true

Size: 1.08 KB

Versions: 14

Compression:

Stored size: 1.08 KB

Contents

# frozen_string_literal: true

module Dato
  module Local
    module FieldType
      class Theme
        attr_reader :primary_color, :dark_color, :light_color, :accent_color

        def self.parse(value, repo)
          value && new(
            value[:logo],
            value[:primary_color],
            value[:dark_color],
            value[:light_color],
            value[:accent_color],
            repo
          )
        end

        def initialize(logo, primary_color, dark_color, light_color, accent_color, repo)
          @logo = logo
          @primary_color = primary_color
          @dark_color = dark_color
          @light_color = light_color
          @accent_color = accent_color
          @repo = repo
        end

        def logo
          @logo && File.parse(@logo, @repo)
        end

        def to_hash(*args)
          {
            primary_color: primary_color,
            dark_color: dark_color,
            light_color: light_color,
            accent_color: accent_color,
            logo: logo && logo.to_hash(*args)
          }
        end
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
dato-0.7.5 lib/dato/local/field_type/theme.rb
dato-0.7.4 lib/dato/local/field_type/theme.rb
dato-0.7.3 lib/dato/local/field_type/theme.rb
dato-0.7.2 lib/dato/local/field_type/theme.rb
dato-0.7.1 lib/dato/local/field_type/theme.rb
dato-0.7.0 lib/dato/local/field_type/theme.rb
dato-0.6.18 lib/dato/local/field_type/theme.rb
dato-0.6.17 lib/dato/local/field_type/theme.rb
dato-0.6.16 lib/dato/local/field_type/theme.rb
dato-0.6.15 lib/dato/local/field_type/theme.rb
dato-0.6.14 lib/dato/local/field_type/theme.rb
dato-0.6.12 lib/dato/local/field_type/theme.rb
dato-0.6.11 lib/dato/local/field_type/theme.rb
dato-0.6.10 lib/dato/local/field_type/theme.rb