Class: SimpleEmailPreview::PreviewListPresenter
- Inherits:
-
Object
- Object
- SimpleEmailPreview::PreviewListPresenter
- Defined in:
- app/presenters/simple_email_preview/preview_list_presenter.rb
Instance Attribute Summary collapse
-
#previews ⇒ Object
readonly
Returns the value of attribute previews.
Instance Method Summary collapse
- #columns(&block) ⇒ Object
- #groups ⇒ Object
-
#initialize(previews) ⇒ PreviewListPresenter
constructor
A new instance of PreviewListPresenter.
Constructor Details
#initialize(previews) ⇒ PreviewListPresenter
Returns a new instance of PreviewListPresenter.
6 7 8 |
# File 'app/presenters/simple_email_preview/preview_list_presenter.rb', line 6 def initialize(previews) @previews = previews end |
Instance Attribute Details
#previews ⇒ Object (readonly)
Returns the value of attribute previews.
4 5 6 |
# File 'app/presenters/simple_email_preview/preview_list_presenter.rb', line 4 def previews @previews end |
Instance Method Details
#columns(&block) ⇒ Object
10 11 12 13 14 15 |
# File 'app/presenters/simple_email_preview/preview_list_presenter.rb', line 10 def columns(&block) return to_enum(:columns) unless block_given? split_in_halves(groups) { |_k, v| v.length }.each do |column_groups| block.yield(column_groups) end end |
#groups ⇒ Object
17 18 19 20 21 |
# File 'app/presenters/simple_email_preview/preview_list_presenter.rb', line 17 def groups @groups ||= by_class_name.inject({}) do |h, (_class_name, previews)| h.update previews.first.group_name => previews end end |