Sha256: 3dab4b30eb54a0b659a094be698ae9b3cab7591a72feffa94b4c8d610e488e98

Contents?: true

Size: 988 Bytes

Versions: 7

Compression:

Stored size: 988 Bytes

Contents

require 'rails_admin/config/fields/types/string_like'

module RailsAdmin
  module Config
    module Fields
      module Types
        class Color < StringLike
          RailsAdmin::Config::Fields::Types.register(self)

          register_instance_option :pretty_value do
            bindings[:view].content_tag :strong, (value.presence || ' - '), style: "color: #{color}"
          end

          register_instance_option :partial do
            :form_colorpicker
          end

          register_instance_option :view_helper do
            :color_field
          end

          register_instance_option :color do
            if value.present?
              if /^[0-9a-fA-F]{3,6}$/.match?(value)
                "##{value}"
              else
                value
              end
            else
              'white'
            end
          end

          register_instance_option :export_value do
            formatted_value
          end
        end
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
rails_admin-3.0.0 lib/rails_admin/config/fields/types/color.rb
rails_admin-3.0.0.rc4 lib/rails_admin/config/fields/types/color.rb
rails_admin-3.0.0.rc3 lib/rails_admin/config/fields/types/color.rb
rails_admin-3.0.0.rc2 lib/rails_admin/config/fields/types/color.rb
rails_admin-3.0.0.rc lib/rails_admin/config/fields/types/color.rb
rails_admin-3.0.0.beta2 lib/rails_admin/config/fields/types/color.rb
rails_admin-3.0.0.beta lib/rails_admin/config/fields/types/color.rb