Class: GraphQR::Pagination::PaginationResolver

Inherits:
Object
  • Object
show all
Includes:
Pagy::Backend
Defined in:
lib/graphqr/pagination/pagination_resolver.rb

Overview

TODO: add documentation

Instance Method Summary collapse

Constructor Details

#initialize(records, arguments) ⇒ PaginationResolver

Returns a new instance of PaginationResolver.



10
11
12
13
14
15
16
# File 'lib/graphqr/pagination/pagination_resolver.rb', line 10

def initialize(records, arguments)
  @records = records
  @arguments = arguments

  @pagy, paginated_records = pagy(records, arguments)
  @paginated_records = paginated_records.to_a
end

Instance Method Details

#cursor_from_node(item) ⇒ Object



18
19
20
# File 'lib/graphqr/pagination/pagination_resolver.rb', line 18

def cursor_from_node(item)
  item.to_global_id.to_s
end

#edge_nodesObject



22
23
24
# File 'lib/graphqr/pagination/pagination_resolver.rb', line 22

def edge_nodes
  @paginated_records
end

#edgesObject



30
31
32
# File 'lib/graphqr/pagination/pagination_resolver.rb', line 30

def edges
  @paginated_records
end

#nodesObject



26
27
28
# File 'lib/graphqr/pagination/pagination_resolver.rb', line 26

def nodes
  @paginated_records
end

#page_infoObject



34
35
36
# File 'lib/graphqr/pagination/pagination_resolver.rb', line 34

def page_info
  @pagy
end