Sha256: f0c94638c16257a7bd1ec43321c4dbb3ec08405e48ce975c7891473579fbbef9

Contents?: true

Size: 1.46 KB

Versions: 406

Compression:

Stored size: 1.46 KB

Contents

# frozen_string_literal: true

require "action_view"

module Playbook
  module PbRadio
    class Radio < Playbook::KitBase
      prop :alignment, type: Playbook::Props::String,
                       default: ""
      prop :checked, type: Playbook::Props::Boolean,
                     default: false
      prop :error, type: Playbook::Props::Boolean,
                   default: false
      prop :disabled, type: Playbook::Props::Boolean, default: false
      prop :input_options, type: Playbook::Props::HashProp,
                           default: {}
      prop :name, type: Playbook::Props::String,
                  default: "radio_name"
      prop :text, type: Playbook::Props::String,
                  default: "Radio Text"
      prop :value, type: Playbook::Props::String,
                   default: "radio_text"
      prop :custom_children, type: Playbook::Props::Boolean,
                             default: false

      def classname
        generate_classname("pb_radio_kit") + error_class + alignment_class
      end

      def selected
        "checked" if checked == true
      end

      def body_status
        error ? "negative" : nil
      end

      def input
        radio_button_tag(name, value, checked, input_options.merge(disabled: disabled || input_options[:disabled]))
      end

    private

      def error_class
        error ? " error" : ""
      end

      def alignment_class
        alignment == "vertical" ? " vertical" : ""
      end
    end
  end
end

Version data entries

406 entries across 406 versions & 1 rubygems

Version Path
playbook_ui-14.12.0.pre.alpha.PLAY1888initializeOncereactdatepickerslowdown5956 app/pb_kits/playbook/pb_radio/radio.rb
playbook_ui-14.13.0.pre.rc.10 app/pb_kits/playbook/pb_radio/radio.rb
playbook_ui-14.13.0.pre.rc.9 app/pb_kits/playbook/pb_radio/radio.rb
playbook_ui-14.12.0.pre.alpha.playrailsinputmaskissue5933 app/pb_kits/playbook/pb_radio/radio.rb
playbook_ui-14.12.0.pre.alpha.PBNTR834advtablemaxHeightstickyheader5932 app/pb_kits/playbook/pb_radio/radio.rb
playbook_ui-14.13.0.pre.rc.8 app/pb_kits/playbook/pb_radio/radio.rb
playbook_ui-14.12.0.pre.alpha.play1887homeaddressfix5910 app/pb_kits/playbook/pb_radio/radio.rb
playbook_ui-14.12.0.pre.alpha.PBNTR8335906 app/pb_kits/playbook/pb_radio/radio.rb
playbook_ui-14.12.0.pre.alpha.play1849cssbargraph5901 app/pb_kits/playbook/pb_radio/radio.rb
playbook_ui-14.13.0.pre.rc.7 app/pb_kits/playbook/pb_radio/radio.rb
playbook_ui-14.12.0.pre.alpha.play1753updatepbcontenttags5889 app/pb_kits/playbook/pb_radio/radio.rb
playbook_ui-14.12.0.pre.alpha.play1830updateclassnamesdependency5888 app/pb_kits/playbook/pb_radio/radio.rb
playbook_ui-14.12.0.pre.alpha.PBNTR8335887 app/pb_kits/playbook/pb_radio/radio.rb
playbook_ui-14.12.0.pre.alpha.PLAY18565866 app/pb_kits/playbook/pb_radio/radio.rb
playbook_ui-14.12.0.pre.alpha.PBNTR779railsdraggablecrosscontainer5863 app/pb_kits/playbook/pb_radio/radio.rb
playbook_ui-14.12.0.pre.alpha.play1790darkaudittable5802 app/pb_kits/playbook/pb_radio/radio.rb
playbook_ui-14.12.0.pre.alpha.play1752updatecontenttag5801 app/pb_kits/playbook/pb_radio/radio.rb
playbook_ui-14.13.0.pre.rc.6 app/pb_kits/playbook/pb_radio/radio.rb
playbook_ui-14.13.0.pre.rc.5 app/pb_kits/playbook/pb_radio/radio.rb
playbook_ui-14.12.0.pre.alpha.PLAY1602lightboxoverlapnitrobug5781 app/pb_kits/playbook/pb_radio/radio.rb