Class: Typesense::Pagination::Pagy

Inherits:
Object
  • Object
show all
Defined in:
lib/typesense/pagination/pagy.rb

Class Method Summary collapse

Class Method Details

.create(results, total_hits, options = {}) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/typesense/pagination/pagy.rb', line 9

def self.create(results, total_hits, options = {})
  vars = {
    count: total_hits,
    page: options[:page],
    limit: options[:per_page]
  }

  pagy_version = Gem::Version.new(::Pagy::VERSION)
  pagy = if pagy_version >= Gem::Version.new("43.0.0.rc1")
           ::Pagy::Offset.new(**vars)
         elsif pagy_version >= Gem::Version.new("9.0")
           ::Pagy.new(**vars)
         else
           ::Pagy.new(vars)
         end

  [pagy, results]
end