Class: Thinreports::SectionReport::Builder::ItemBuilder
- Inherits:
-
Object
- Object
- Thinreports::SectionReport::Builder::ItemBuilder
- Defined in:
- lib/thinreports/section_report/builder/item_builder.rb
Defined Under Namespace
Classes: Context
Instance Method Summary collapse
- #build(item_params) ⇒ Object
-
#initialize(item_schema, parent_schema) ⇒ ItemBuilder
constructor
A new instance of ItemBuilder.
Constructor Details
#initialize(item_schema, parent_schema) ⇒ ItemBuilder
Returns a new instance of ItemBuilder.
11 12 13 14 |
# File 'lib/thinreports/section_report/builder/item_builder.rb', line 11 def initialize(item_schema, parent_schema) @item = Core::Shape::Interface(nil, item_schema) @parent_schema = parent_schema end |
Instance Method Details
#build(item_params) ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/thinreports/section_report/builder/item_builder.rb', line 16 def build(item_params) params = build_params(item_params) item.visible(params[:display]) if params.key?(:display) item.value(params[:value]) if params.key?(:value) item.styles(params[:styles]) if params.key?(:styles) if item.internal.format.attributes['type'] == Core::Shape::StackView::TYPE_NAME StackViewBuilder.new(item).update(params) end item end |