Class: KirguduBase::DynamicPages::FormElementsBlockBuilder
- Inherits:
-
Builder
- Object
- Builder
- KirguduBase::DynamicPages::FormElementsBlockBuilder
- Defined in:
- app/models/kirgudu_base/dynamic_pages/form_elements_block_builder.rb
Instance Method Summary collapse
- #group(name, &block) ⇒ Object
-
#initialize(&block) ⇒ FormElementsBlockBuilder
constructor
A new instance of FormElementsBlockBuilder.
- #property(name, &block) ⇒ Object
- #to_elements ⇒ Object
Constructor Details
#initialize(&block) ⇒ FormElementsBlockBuilder
Returns a new instance of FormElementsBlockBuilder.
4 5 6 7 8 9 |
# File 'app/models/kirgudu_base/dynamic_pages/form_elements_block_builder.rb', line 4 def initialize(&block) @properties = {} @groups = {} @elements = [] super(&block) end |
Instance Method Details
#group(name, &block) ⇒ Object
18 19 20 21 22 23 |
# File 'app/models/kirgudu_base/dynamic_pages/form_elements_block_builder.rb', line 18 def group(name, &block) g = ::KirguduBase::DynamicPages::GroupBuilder.new(name, ::KirguduBase::DynamicPages::Enums::ELEMENTS_FOR_FORM, &block).to_element raise "Duplicate Group with name: #{g.name}" if @groups[g.name] @groups[p.name] = g @elements << g end |
#property(name, &block) ⇒ Object
11 12 13 14 15 16 |
# File 'app/models/kirgudu_base/dynamic_pages/form_elements_block_builder.rb', line 11 def property(name, &block) p = ::KirguduBase::DynamicPages::FormPropertyBuilder.new(name, &block).to_element raise "Duplicate Property with name: #{p.name}" if @properties[p.name] @properties[p.name] = p @elements << p end |
#to_elements ⇒ Object
25 26 27 |
# File 'app/models/kirgudu_base/dynamic_pages/form_elements_block_builder.rb', line 25 def to_elements @elements end |