Class: RailsEmailPreview::PreviewListPresenter
- Inherits:
-
Object
- Object
- RailsEmailPreview::PreviewListPresenter
- Defined in:
- app/presenters/rails_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
5 6 7 |
# File 'app/presenters/rails_email_preview/preview_list_presenter.rb', line 5 def initialize(previews) @previews = previews end |
Instance Attribute Details
#previews ⇒ Object (readonly)
Returns the value of attribute previews.
3 4 5 |
# File 'app/presenters/rails_email_preview/preview_list_presenter.rb', line 3 def previews @previews end |
Instance Method Details
#columns(&block) ⇒ Object
9 10 11 12 13 14 |
# File 'app/presenters/rails_email_preview/preview_list_presenter.rb', line 9 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
16 17 18 19 20 |
# File 'app/presenters/rails_email_preview/preview_list_presenter.rb', line 16 def groups @groups ||= by_class_name.inject({}) do |h, (_class_name, previews)| h.update previews.first.group_name => previews end end |