Sha256: 0103b31bdba2d6ba4db5b9190cbe0d05b7ae324bbb2113ae65c5c1dde8460384

Contents?: true

Size: 1.26 KB

Versions: 21

Compression:

Stored size: 1.26 KB

Contents

# frozen_string_literal: true

module Playbook
  module PbTypeahead
    class Typeahead
      include Playbook::Props

      prop :async, type: Playbook::Props::Boolean,
                    default: false
      prop :label
      prop :load_options
      prop :name
      prop :options, type: Playbook::Props::HashArray, default: []
      prop :pills, type: Playbook::Props::Boolean,
                    default: false

      prop :placeholder
      prop :search_term_minimum_length, default: 3
      prop :search_debounce_timeout, default: 250
      prop :value

      partial "pb_typeahead/typeahead"

      def classname
        generate_classname("pb_typeahead_kit")
      end

      def data
        Hash(values[:data]).merge(
          pb_typeahead_kit: true,
          pb_typeahead_kit_search_term_minimum_length: search_term_minimum_length,
          pb_typeahead_kit_search_debounce_timeout: search_debounce_timeout
        )
      end

      def typeahead_with_pills_options
        base_options = {
          isMulti: true,
          label: label,
          options: options,
          placeholder: placeholder
        }

        base_options.merge!({
          async: true,
          loadOptions: load_options,
        }) if async

        base_options
      end
    end
  end
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
playbook_ui-7.4.0.pre.alpha6 app/pb_kits/playbook/pb_typeahead/typeahead.rb
playbook_ui-7.4.0.pre.alpha4 app/pb_kits/playbook/pb_typeahead/typeahead.rb
playbook_ui-7.4.0.pre.alpha2 app/pb_kits/playbook/pb_typeahead/typeahead.rb
playbook_ui-7.4.0.pre.alpha1 app/pb_kits/playbook/pb_typeahead/typeahead.rb
playbook_ui-7.3.0.pre.alpha12 app/pb_kits/playbook/pb_typeahead/typeahead.rb
playbook_ui-7.3.0 app/pb_kits/playbook/pb_typeahead/typeahead.rb
playbook_ui-7.3.0.pre.alpha11 app/pb_kits/playbook/pb_typeahead/typeahead.rb
playbook_ui-7.3.0.pre.alpha10 app/pb_kits/playbook/pb_typeahead/typeahead.rb
playbook_ui-7.3.0.pre.alpha9 app/pb_kits/playbook/pb_typeahead/typeahead.rb
playbook_ui-7.3.0.pre.alpha8 app/pb_kits/playbook/pb_typeahead/typeahead.rb
playbook_ui-7.3.0.pre.alpha7 app/pb_kits/playbook/pb_typeahead/typeahead.rb
playbook_ui-7.3.0.pre.alpha3 app/pb_kits/playbook/pb_typeahead/typeahead.rb
playbook_ui-7.3.0.pre.alpha1 app/pb_kits/playbook/pb_typeahead/typeahead.rb
playbook_ui-7.2.0 app/pb_kits/playbook/pb_typeahead/typeahead.rb
playbook_ui-7.1.2 app/pb_kits/playbook/pb_typeahead/typeahead.rb
playbook_ui-7.1.0.pre.alpha2 app/pb_kits/playbook/pb_typeahead/typeahead.rb
playbook_ui-7.1.1.pre.alpha1 app/pb_kits/playbook/pb_typeahead/typeahead.rb
playbook_ui-7.1.1 app/pb_kits/playbook/pb_typeahead/typeahead.rb
playbook_ui-7.1.0.pre.alpha1 app/pb_kits/playbook/pb_typeahead/typeahead.rb
playbook_ui-7.1.0 app/pb_kits/playbook/pb_typeahead/typeahead.rb