Method: GraphQL::Pagination::Connection#first

Defined in:
lib/graphql/pagination/connection.rb

#firstInteger?

Returns A clamped first value. (The underlying instance variable doesn't have limits on it.) If neither first nor last is given, but default_page_size is present, default_page_size is used for first. If default_page_size is greater than max_page_size, it'll be clamped down to max_page_size. Ifdefault_page_sizeis nil, usemax_page_size`.

Returns:

  • (Integer, nil)

    A clamped first value. (The underlying instance variable doesn't have limits on it.) If neither first nor last is given, but default_page_size is present, default_page_size is used for first. If default_page_size is greater than max_page_size, it'll be clamped down to max_page_size. Ifdefault_page_sizeis nil, usemax_page_size`.



143
144
145
146
147
148
149
150
151
# File 'lib/graphql/pagination/connection.rb', line 143

def first
  @first ||= begin
    capped = limit_pagination_argument(@first_value, max_page_size)
    if capped.nil? && last.nil?
      capped = limit_pagination_argument(default_page_size, max_page_size) || max_page_size
    end
    capped
  end
end