Class: Primer::Forms::BaseComponent
- Inherits:
-
Object
- Object
- Primer::Forms::BaseComponent
- Extended by:
- ActsAsComponent
- Includes:
- ClassNameHelper
- Defined in:
- app/lib/primer/forms/base_component.rb
Overview
:nodoc:
Direct Known Subclasses
ActionMenu, AutoComplete, Button, Caption, CheckBox, CheckBoxGroup, FormControl, FormReference, Group, HiddenField, Multi, PrimerBaseComponentWrapper, RadioButton, RadioButtonGroup, Select, Separator, SpacingWrapper, SubmitButton, TextArea, TextField, ToggleSwitch, ValidationMessage
Class Method Summary collapse
Instance Method Summary collapse
- #content ⇒ Object
-
#input? ⇒ Boolean
:nocov:.
- #perform_render(&block) ⇒ Object
- #render? ⇒ Boolean
- #to_component ⇒ Object
-
#type ⇒ Object
:nocov:.
Methods included from ActsAsComponent
base_template_path, compile!, extended, renders_templates, template_root_path
Methods included from ClassNameHelper
Class Method Details
permalink .inherited(base) ⇒ Object
[View source]
10 11 12 13 14 15 |
# File 'app/lib/primer/forms/base_component.rb', line 10 def self.inherited(base) base.renders_template( File.join("%{base_template_path}", "#{base.name.demodulize.underscore}.html.erb"), :render_template ) end |
Instance Method Details
permalink #content ⇒ Object
[View source]
26 27 28 29 30 31 32 33 |
# File 'app/lib/primer/forms/base_component.rb', line 26 def content return @__prf_content if defined?(@__prf_content_evaluated) && @__prf_content_evaluated @__prf_content_evaluated = true @__prf_content = capture do @__prf_content_block.call end end |
permalink #input? ⇒ Boolean
:nocov:
41 42 43 |
# File 'app/lib/primer/forms/base_component.rb', line 41 def input? false end |
permalink #perform_render(&block) ⇒ Object
[View source]
19 20 21 22 23 24 |
# File 'app/lib/primer/forms/base_component.rb', line 19 def perform_render(&block) return "" unless render? @__prf_content_block = block compile_and_render_template end |
permalink #render? ⇒ Boolean
49 50 51 |
# File 'app/lib/primer/forms/base_component.rb', line 49 def render? true end |
permalink #to_component ⇒ Object
[View source]
45 46 47 |
# File 'app/lib/primer/forms/base_component.rb', line 45 def to_component self end |
permalink #type ⇒ Object
:nocov:
36 37 38 |
# File 'app/lib/primer/forms/base_component.rb', line 36 def type :component end |