Class: RailsDevtools::GemSearchForm
- Inherits:
-
Object
- Object
- RailsDevtools::GemSearchForm
- Includes:
- ActiveModel::Model
- Defined in:
- app/forms/rails_devtools/gem_search_form.rb
Constant Summary collapse
- GemInfo =
Data.define( :name, :required_version, :actual_version, :homepage, :summary, :source_code, :documentation, :groups, :date, :latest_version, :changelog ) do def outdated? return false if latest_version.nil? actual_version < latest_version.version end end
Instance Method Summary collapse
-
#initialize(search: "") ⇒ GemSearchForm
constructor
A new instance of GemSearchForm.
- #results ⇒ Object
Constructor Details
#initialize(search: "") ⇒ GemSearchForm
Returns a new instance of GemSearchForm.
27 28 29 |
# File 'app/forms/rails_devtools/gem_search_form.rb', line 27 def initialize(search: "") @search = search.downcase end |
Instance Method Details
#results ⇒ Object
31 32 33 34 35 36 37 38 39 40 |
# File 'app/forms/rails_devtools/gem_search_form.rb', line 31 def results specs = ask_bundler_for_specs gems_list = specs.map { |gem_spec| GemInfo.new(**gem_spec) } return order(gems_list) if @search.empty? order( gems_list.select { |gem| gem.name.include?(@search) } ) end |