Class: HakumiComponents::FloatButton::Group::Component
- Inherits:
-
BaseComponent
- Object
- ViewComponent::Base
- BaseComponent
- HakumiComponents::FloatButton::Group::Component
- Extended by:
- T::Sig
- Defined in:
- app/components/hakumi_components/float_button/group/component.rb
Constant Summary collapse
- SHAPES =
HakumiComponents::FloatButton::Component::SHAPES
- TYPES =
HakumiComponents::FloatButton::Component::TYPES
- TRIGGERS =
T.let([ :click, :hover ].freeze, T::Array[Symbol])
- EXPAND_DIRECTIONS =
T.let([ :top, :right, :bottom, :left ].freeze, T::Array[Symbol])
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
- #call ⇒ Object
-
#initialize(icon: :plus, tooltip: nil, shape: :circle, type: :default, trigger: :click, open: nil, default_open: false, expand_direction: :top, items: [], floating: true, placement: :bottom_right, offset: nil, button_options: {}, **html_options) ⇒ Component
constructor
A new instance of Component.
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(icon: :plus, tooltip: nil, shape: :circle, type: :default, trigger: :click, open: nil, default_open: false, expand_direction: :top, items: [], floating: true, placement: :bottom_right, offset: nil, button_options: {}, **html_options) ⇒ Component
Returns a new instance of Component.
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 |
# File 'app/components/hakumi_components/float_button/group/component.rb', line 33 def initialize( icon: :plus, tooltip: nil, shape: :circle, type: :default, trigger: :click, open: nil, default_open: false, expand_direction: :top, items: [], floating: true, placement: :bottom_right, offset: nil, button_options: {}, ** ) @icon = T.let(icon, HakumiComponents::FloatButton::Component::IconValue) @tooltip = T.let(tooltip, T.nilable(String)) @shape = T.let(shape, Symbol) @type = T.let(type, Symbol) @trigger = T.let(trigger, Symbol) @open = T.let(open, T.nilable(T::Boolean)) @default_open = T.let(default_open, T::Boolean) @expand_direction = T.let(, Symbol) @items = T.let(HakumiComponents::FloatButton::ItemSpec.coerce_all(items), T::Array[HakumiComponents::FloatButton::ItemSpec]) @position = T.let(HakumiComponents::FloatButton::PositionConfig.new(floating: floating, placement: placement, offset: offset), HakumiComponents::FloatButton::PositionConfig) @button_options = T.let(, Types::HtmlAttributes) @html_options = T.let(, Types::HtmlAttributes) validate_props! end |
Instance Method Details
#call ⇒ Object
66 67 68 69 70 71 72 73 |
# File 'app/components/hakumi_components/float_button/group/component.rb', line 66 def call content_tag(:div, root_attributes) do safe_join([ , actions_wrapper ]) end end |