Sha256: 6ac82c18e69ab079aeaf1444226d06c47a80f5398b3804731ac05f6fe08aac93

Contents?: true

Size: 1.21 KB

Versions: 123

Compression:

Stored size: 1.21 KB

Contents

# frozen_string_literal: true

module Playbook
  module PbFilter
    class Filter < Playbook::KitBase
      prop :filters, type: Playbook::Props::HashArray, default: [{ name: "" }]
      prop :sort_menu, type: Playbook::Props::HashArray, default: [{}]
      prop :results, type: Playbook::Props::Numeric
      prop :template, type: Playbook::Props::Enum,
                      values: %w[default single filter_only sort_only],
                      default: "default"
      prop :background, type: Playbook::Props::Boolean, default: true
      prop :min_width, default: "auto"

      def classname
        generate_classname("pb_filter_kit")
      end

      def result_text
        case results
        when 1
          "#{results} Result"
        when nil
          nil
        else
          "#{results} Results"
        end
      end

      def wrapper(&block)
        if object.background
          pb_rails("card", props: { padding: "none" }, &block)
        else
          capture(&block)
        end
      end

      def sort_icon(direction)
        case direction
        when "asc"
          "sort-amount-up"
        when "desc"
          "sort-amount-down"
        else
          ""
        end
      end
    end
  end
end

Version data entries

123 entries across 123 versions & 1 rubygems

Version Path
playbook_ui-11.6.0.pre.alpha.rubocopperf1 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-11.6.1.pre.alpha.rubocop.pre.performance1 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-11.5.0.pre.alpha.pre.rubocop app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-11.6.0.pre.alpha.momenttz1 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-11.5.0 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-11.4.0.pre.alpha.rubytheme2 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-11.4.0.pre.alpha.rubytheme1 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-11.4.0 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-11.3.0.pre.alpha2 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-11.3.0.pre.alpha1 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-11.3.0 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-11.2.7 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-11.2.6 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-11.2.5 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-11.2.4 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-11.2.4.pre.alpha1 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-11.2.3 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-11.2.2 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-11.2.1 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-11.2.0 app/pb_kits/playbook/pb_filter/filter.rb