Class: Avo::GridCollector

Inherits:
Object
  • Object
show all
Includes:
FieldsCollector
Defined in:
lib/avo/grid_collector.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from FieldsCollector

#field, #heading, #parse_field

Constructor Details

#initializeGridCollector

Returns a new instance of GridCollector.



9
10
11
12
13
# File 'lib/avo/grid_collector.rb', line 9

def initialize
  @cover_field = nil
  @title_field = nil
  @body_field = nil
end

Instance Attribute Details

#body_fieldObject

Returns the value of attribute body_field.



7
8
9
# File 'lib/avo/grid_collector.rb', line 7

def body_field
  @body_field
end

#cover_fieldObject

Returns the value of attribute cover_field.



5
6
7
# File 'lib/avo/grid_collector.rb', line 5

def cover_field
  @cover_field
end

#title_fieldObject

Returns the value of attribute title_field.



6
7
8
# File 'lib/avo/grid_collector.rb', line 6

def title_field
  @title_field
end

Instance Method Details

#blank?Boolean

Returns:

  • (Boolean)


35
36
37
# File 'lib/avo/grid_collector.rb', line 35

def blank?
  title_field.blank?
end

#body(field_name, as:, **args, &block) ⇒ Object



23
24
25
# File 'lib/avo/grid_collector.rb', line 23

def body(field_name, as:, **args, &block)
  self.body_field = parse_field(field_name, as: as, **args, &block)
end

#cover(field_name, as:, **args, &block) ⇒ Object



15
16
17
# File 'lib/avo/grid_collector.rb', line 15

def cover(field_name, as:, **args, &block)
  self.cover_field = parse_field(field_name, as: as, **args, &block)
end

#hydrate(model:, view:, resource:) ⇒ Object



27
28
29
30
31
32
33
# File 'lib/avo/grid_collector.rb', line 27

def hydrate(model:, view:, resource:)
  cover_field.hydrate(model: model, view: view, resource: resource) if cover_field.present?
  title_field.hydrate(model: model, view: view, resource: resource) if title_field.present?
  body_field.hydrate(model: model, view: view, resource: resource) if body_field.present?

  self
end

#title(field_name, as:, **args, &block) ⇒ Object



19
20
21
# File 'lib/avo/grid_collector.rb', line 19

def title(field_name, as:, **args, &block)
  self.title_field = parse_field(field_name, as: as, **args, &block)
end