Class: StimulusPlumbers::Components::Combobox::Builder
Overview
Yielded to Combobox#render: selects a variant renderer, then exposes its
metadata (trigger/wrapper wiring) and renders its panel body.
Defined Under Namespace
Modules: DefaultMetadata
Instance Method Summary
collapse
#any?, #initialize, #none?, #options_for, #resolve, slot
Instance Method Details
#date(**options) ⇒ Object
17
18
19
|
# File 'lib/stimulus_plumbers/components/combobox/builder.rb', line 17
def date(**options)
select(Date, options)
end
|
#dropdown(**options) ⇒ Object
9
10
11
|
# File 'lib/stimulus_plumbers/components/combobox/builder.rb', line 9
def dropdown(**options)
select(Dropdown, options)
end
|
37
38
39
|
# File 'lib/stimulus_plumbers/components/combobox/builder.rb', line 37
def metadata
renderer ? renderer::Metadata : DefaultMetadata
end
|
#options ⇒ Object
33
34
35
|
# File 'lib/stimulus_plumbers/components/combobox/builder.rb', line 33
def options
selection ? selection[:options] : {}
end
|
#render_panel(template, panel_attrs:) ⇒ Object
41
42
43
|
# File 'lib/stimulus_plumbers/components/combobox/builder.rb', line 41
def render_panel(template, panel_attrs:)
renderer&.new(template)&.render(panel_attrs: panel_attrs, **options)
end
|
#renderer ⇒ Object
29
30
31
|
# File 'lib/stimulus_plumbers/components/combobox/builder.rb', line 29
def renderer
selection&.fetch(:renderer)
end
|
#selected? ⇒ Boolean
25
26
27
|
# File 'lib/stimulus_plumbers/components/combobox/builder.rb', line 25
def selected?
@slots.key?(:variant)
end
|
#time(**options) ⇒ Object
21
22
23
|
# File 'lib/stimulus_plumbers/components/combobox/builder.rb', line 21
def time(**options)
select(Time, options)
end
|
#typeahead(**options) ⇒ Object
13
14
15
|
# File 'lib/stimulus_plumbers/components/combobox/builder.rb', line 13
def typeahead(**options)
select(Typeahead, options)
end
|