app/pb_kits/playbook/pb_selectable_card/selectable_card.rb



# frozen_string_literal: true

module Playbook
  module PbSelectableCard
    class SelectableCard
      include Playbook::Props

      partial "pb_selectable_card/selectable_card"

      prop :checked, type: Playbook::Props::Boolean,
                  default: false
      prop :disabled, type: Playbook::Props::Boolean,
                  default: false
      prop :icon, type: Playbook::Props::Boolean,
                  default: false
      prop :multi, type: Playbook::Props::Boolean,
                  default: true
      prop :input_id, type: Playbook::Props::String
      prop :name
      prop :text
      prop :value

      
      

      def classname
        generate_classname("pb_selectable_card_kit", checked_class, enable_disabled_class)
      end

      def input_id_present
        input_id.present? ? input_id : name
      end

    private
      
      def checked_class
        checked ? "checked" : nil 
      end

      def enable_disabled_class
        disabled ? "disabled" : "enabled"
      end
    end
  end
end