17 lines
365 B
Ruby
17 lines
365 B
Ruby
|
|
class UnreleasedAppearancesPresenter
|
||
|
|
def present(unreleased_appearances)
|
||
|
|
UnreleasedData.new(
|
||
|
|
unreleased_appearances: sort(unreleased_appearances),
|
||
|
|
)
|
||
|
|
end
|
||
|
|
|
||
|
|
private
|
||
|
|
|
||
|
|
def sort(unreleased_appearances)
|
||
|
|
unreleased_appearances.sort_by(&:appears_at)
|
||
|
|
end
|
||
|
|
|
||
|
|
class UnreleasedData < Struct.new(:unreleased_appearances, keyword_init: true)
|
||
|
|
end
|
||
|
|
end
|