Class: Packages::Nuget::SearchResultsPresenter
- Inherits:
-
Object
- Object
- Packages::Nuget::SearchResultsPresenter
- Includes:
- Gitlab::Utils::StrongMemoize, PresenterHelpers
- Defined in:
- app/presenters/packages/nuget/search_results_presenter.rb
Constant Summary
Constants included from PresenterHelpers
PresenterHelpers::PACKAGE_DEPENDENCY, PresenterHelpers::PACKAGE_DEPENDENCY_GROUP
Instance Method Summary collapse
- #data ⇒ Object
-
#initialize(search) ⇒ SearchResultsPresenter
constructor
A new instance of SearchResultsPresenter.
Methods included from API::Helpers::RelatedResourcesHelpers
#expose_path, #expose_url, #issues_available?, #mrs_available?, #project_feature_string_access_level
Constructor Details
#initialize(search) ⇒ SearchResultsPresenter
Returns a new instance of SearchResultsPresenter.
11 12 13 14 |
# File 'app/presenters/packages/nuget/search_results_presenter.rb', line 11 def initialize(search) @search = search @package_versions = {} end |
Instance Method Details
#data ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'app/presenters/packages/nuget/search_results_presenter.rb', line 16 def data @search.results.group_by(&:name).map do |package_name, packages| latest_version = latest_version(packages) latest_package = packages.find { |pkg| pkg.version == latest_version } { type: 'Package', name: package_name, version: latest_version, versions: build_package_versions(packages), total_downloads: 0, verified: true, tags: (latest_package), metadatum: (latest_package) } end end |