Sha256: 1f775af1840d0d679b1da41a5db51bc3b87776ef6f8dd6428632ea47b4184608

Contents?: true

Size: 717 Bytes

Versions: 5

Compression:

Stored size: 717 Bytes

Contents

# frozen_string_literal: true

module Katalyst
  module Tables
    module Collection
      module Type
        class Enum < Value
          include Helpers::Multiple

          def initialize(multiple: true, **)
            super
          end

          def type
            :enum
          end

          def examples_for(scope, attribute)
            _, model, column = model_and_column_for(scope, attribute)
            keys = model.defined_enums[column]&.keys

            if attribute.value_before_type_cast.present?
              keys.select { |key| key.include?(attribute.value_before_type_cast.last) }
            else
              keys
            end
          end
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
katalyst-tables-3.4.1 lib/katalyst/tables/collection/type/enum.rb
katalyst-tables-3.4.0 lib/katalyst/tables/collection/type/enum.rb
katalyst-tables-3.3.4 lib/katalyst/tables/collection/type/enum.rb
katalyst-tables-3.3.3 lib/katalyst/tables/collection/type/enum.rb
katalyst-tables-3.3.2 app/models/katalyst/tables/collection/type/enum.rb