Sha256: 694626128be8c7ec3deb4b2b610c190971149a009fdebd85cb04f48a4decca1b

Contents?: true

Size: 1.46 KB

Versions: 193

Compression:

Stored size: 1.46 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"

      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

193 entries across 193 versions & 1 rubygems

Version Path
playbook_ui-14.5.0.pre.alpha.PLAY1548intltelinputupdatelatest4073 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.5.0.pre.alpha.PBNTR600reactfilterdisplayzeroresults4068 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.5.0.pre.alpha.PLAY15814066 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.5.0.pre.alpha.PBNTR568dropdowncleaning4044 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.5.0.pre.alpha.PBNTR568dropdowncleaning4041 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.5.0.pre.alpha.PLAY15814040 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.6.0.pre.rc.13 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.5.0.pre.alpha.PLAY1548intltelinputupdatelatest4037 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.5.0.pre.alpha.20241007playbookwebsiteaddrdbms4036 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.5.0.pre.alpha.PBNTR606multilevelselectreset4035 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.5.0.pre.alpha.PLAY1548intltelinputupdatelatest4032 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.5.0.pre.alpha.PLAY1548intltelinputupdatelatest4028 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.6.0.pre.rc.12 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.6.0.pre.rc.11 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.6.0.pre.rc.10 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.6.0.pre.rc.9 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.6.0.pre.rc.8 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.6.0.pre.rc.7 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.6.0.pre.rc.6 app/pb_kits/playbook/pb_filter/filter.rb
playbook_ui-14.6.0.pre.rc.5 app/pb_kits/playbook/pb_filter/filter.rb