Class: HakumiComponents::Switch::Component
- Inherits:
-
BaseComponent
- Object
- ViewComponent::Base
- BaseComponent
- HakumiComponents::Switch::Component
- Extended by:
- T::Sig
- Includes:
- Concerns::FormField
- Defined in:
- app/components/hakumi_components/switch/component.rb
Constant Summary
Constants inherited from BaseComponent
BaseComponent::ControllerOptions, BaseComponent::DateInput, BaseComponent::DateLikeValue, BaseComponent::DimensionInput, BaseComponent::HtmlPayloadInput, BaseComponent::I18nOptionValue, BaseComponent::PresenceArray, BaseComponent::PresenceScalar, BaseComponent::PresenceValue, BaseComponent::RawHtmlInput, BaseComponent::SIZES, BaseComponent::SizeValue, BaseComponent::SymbolInput
Instance Method Summary collapse
-
#initialize(name: nil, label: nil, caption: nil, checked: nil, default_checked: false, disabled: false, loading: false, size: :default, checked_text: nil, unchecked_text: nil, standalone: true, required: false, errors: [], **html_options) ⇒ Component
constructor
A new instance of Component.
Methods included from Concerns::FormField
#describedby_ids, #error?, #error_message, #form_field_caption, #form_field_contract, #form_field_errors, #form_field_html_options, #form_field_label, #form_field_name, #form_field_required, #form_field_rules, #form_field_standalone, #form_item_attributes, #form_item_classes, #input_id, #render_caption, #render_error, #render_explain, #render_label, #standalone?
Methods included from Concerns::FormFieldInterface
Methods inherited from BaseComponent
#append_data_token, boolean_html_param, #build_inline_style, cast_boolean, #cast_boolean, #class_names, #component_classes, #data_attributes_from, #dimension_to_css, #ensure_dom_id!, float_html_param, #generate_id, #html_classes, html_param, html_primitive_param, #html_style, #i18n_scope, integer_html_param, #merge_attributes, #render_value, #size_to_pixels, #stimulus_attrs, string_html_param, string_or_symbol_array_html_param, symbol_html_param, #t_default, #translate_with_default, #validate_inclusion!, #validate_required!, #value_present?
Constructor Details
#initialize(name: nil, label: nil, caption: nil, checked: nil, default_checked: false, disabled: false, loading: false, size: :default, checked_text: nil, unchecked_text: nil, standalone: true, required: false, errors: [], **html_options) ⇒ Component
Returns a new instance of Component.
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
# File 'app/components/hakumi_components/switch/component.rb', line 29 def initialize( name: nil, label: nil, caption: nil, checked: nil, default_checked: false, disabled: false, loading: false, size: :default, checked_text: nil, unchecked_text: nil, standalone: true, required: false, errors: [], ** ) @name = T.let(name || generate_id("switch"), Types::FormFieldName) @label = label @caption = caption @checked = T.let(checked.nil? ? default_checked : checked, T::Boolean) @disabled = disabled @loading = loading @size = size @checked_text = checked_text @unchecked_text = unchecked_text @standalone = standalone @required = required @errors = T.let(errors, Types::FormFieldErrors) wrapper_class = .delete(:wrapper_class) @wrapper_class = T.let(wrapper_class.is_a?(String) ? wrapper_class : nil, T.nilable(String)) @html_options = T.let(, Types::HtmlAttributes) initialize_form_field_contract!( name: @name, label: @label, caption: @caption, errors: @errors, standalone: @standalone, required: @required, html_options: @html_options ) validate_props! end |