Sha256: 41bb9f8ce4afe6908c4c517e66c98658737335d481ca6980f5964e19e09227e3

Contents?: true

Size: 765 Bytes

Versions: 52

Compression:

Stored size: 765 Bytes

Contents

module Avo
  module Fields
    class CountryField < BaseField
      include Avo::Fields::FieldExtensions::HasIncludeBlank

      attr_reader :countries
      attr_reader :display_code

      def initialize(id, **args, &block)
        args[:placeholder] ||= I18n.t("avo.choose_a_country")

        super(id, **args, &block)

        @countries = ISO3166::Country.translations.sort_by { |code, name| name }.to_h
        @display_code = args[:display_code].present? ? args[:display_code] : false
      end

      def select_options
        if @display_code
          countries.map do |code, name|
            [code, code]
          end
        else
          countries.map do |code, name|
            [name, code]
          end
        end
      end
    end
  end
end

Version data entries

52 entries across 52 versions & 1 rubygems

Version Path
avo-2.17.1.pre.4.issue.1342 lib/avo/fields/country_field.rb
avo-2.17.1.pre.3 lib/avo/fields/country_field.rb
avo-2.17.1.pre.2.customauthorizationclients lib/avo/fields/country_field.rb
avo-2.17.1.pre.1.zeitwerk.eager.load.dir lib/avo/fields/country_field.rb
avo-2.17.0 lib/avo/fields/country_field.rb
avo-2.16.1.pre.1.nativefields lib/avo/fields/country_field.rb
avo-2.16.0 lib/avo/fields/country_field.rb
avo-2.15.3 lib/avo/fields/country_field.rb
avo-2.15.3.pre.1.data.attrs.to.sidebar.items lib/avo/fields/country_field.rb
avo-2.15.2 lib/avo/fields/country_field.rb
avo-2.15.2.pre.1 lib/avo/fields/country_field.rb
avo-2.15.1 lib/avo/fields/country_field.rb
avo-2.15.0 lib/avo/fields/country_field.rb
avo-2.14.3.pre.7.polytranslations1 lib/avo/fields/country_field.rb
avo-2.14.3.pre.6.nosprockets lib/avo/fields/country_field.rb
avo-2.14.3.pre.5.nosprockets lib/avo/fields/country_field.rb
avo-2.14.3.pre.4.tosqlfix lib/avo/fields/country_field.rb
avo-2.14.3.pre.3.jsbundling lib/avo/fields/country_field.rb
avo-2.14.3.pre.2.tailwindcss lib/avo/fields/country_field.rb
avo-2.14.3.pre.1.branding lib/avo/fields/country_field.rb