Sha256: 9be9e3d52343886b8519b07b795903d6771c04cfda4c65deb516543055940508

Contents?: true

Size: 1.56 KB

Versions: 233

Compression:

Stored size: 1.56 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 :max_height
      prop :min_width, default: "auto"
      prop :placement, type: Playbook::Props::Enum,
                       values: %w[top bottom left right top-start top-end bottom-start bottom-end right-start right-end left-start left-end],
                       default: "bottom-start"
      prop :popover_props, type: Playbook::Props::HashProp,
                           default: {}

      def classname
        generate_classname("pb_filter_kit").rstrip
      end

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

      def wrapper(&block)
        if 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

233 entries across 233 versions & 1 rubygems

Version Path
playbook_ui-14.10.0.pre.alpha.play1662cssbargraph5201 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.11.0.pre.rc.9 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.10.0.pre.alpha.play1662cssbargraph5200 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.11.0.pre.rc.8 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.11.0.pre.rc.7 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.11.0.pre.rc.6 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.11.0.pre.rc.5 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.10.0.pre.alpha.play1662cssbargraph5193 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.11.0.pre.rc.4 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.11.0.pre.rc.3 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.10.0.pre.alpha.PBNTR662stickyrightcolumnreact5160 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.11.0.pre.rc.2 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.11.0.pre.rc.1 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.10.0.pre.alpha.PBNTR775formmatingmaskdefaultvalue5137 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.11.0.pre.rc.0 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.9.0.pre.alpha.PBNTR767advancedtablemultiheadercolumns5136 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.9.0.pre.alpha.PBNTR775formmatingmaskdefaultvalue5121 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.9.0.pre.alpha.PBNTR775formmatingmaskdefaultvalue5120 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.10.0 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.10.0.pre.rc.24 app/pb_kits/playbook/pb_filter/filter.rb