Sha256: 37394fc917472c1cbd9920e45de8b2c004ea1459aa6ce9706dfe02623e61c17e

Contents?: true

Size: 574 Bytes

Versions: 6

Compression:

Stored size: 574 Bytes

Contents

# frozen_string_literal: true
module Hyrax
  class VersionListPresenter
    def initialize(version_list)
      @raw_list = version_list
    end

    delegate :each, to: :wrapped_list

    private

    def wrapped_list
      @wrapped_list ||=
        @raw_list.map { |v| Hyrax::VersionPresenter.new(v) } # wrap each item in a presenter
                 .sort { |a, b| b.version.created <=> a.version.created } # sort list of versions based on creation date
                 .tap { |l| l.first.try(:current!) } # set the first version to the current version
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
hyrax-3.0.2 app/presenters/hyrax/version_list_presenter.rb
hyrax-3.0.1 app/presenters/hyrax/version_list_presenter.rb
hyrax-3.0.0 app/presenters/hyrax/version_list_presenter.rb
hyrax-3.0.0.pre.rc4 app/presenters/hyrax/version_list_presenter.rb
hyrax-3.0.0.pre.rc3 app/presenters/hyrax/version_list_presenter.rb
hyrax-3.0.0.pre.rc2 app/presenters/hyrax/version_list_presenter.rb