subgrounds.pagination.preprocess module
Helper functions and classes used by Subgrounds' own pagination strategies.
- class subgrounds.pagination.preprocess.PaginationNode(node_idx, filter_field, first_value, skip_value, filter_value, filter_value_type, key_path, inner=<factory>)
 Bases:
objectClass representing the pagination config for a single GraphQL list field.
- filter_field
 Name of the node's filter field, e.g.: if
filter_nameistimestamp_gt, thenfilter_fieldistimestamp- Type
 
- filter_value
 Initial value of the filter argument (i.e.:
where: {filter: FILTER_VALUE})- Type
 Any
- key_path
 Location in the list field to which this pagination node refers to in the initial query
- inner
 Nested pagination nodes (if any).
- Type
 
- filter_value: Any
 
- filter_value_type: subgrounds.schema.TypeRef.T
 
- get_vardefs()
 Returns a list of variable definitions corresponding to this pagination node's pagination arguments as well as the variable definitions related to any nested pagination nodes.
- Parameters
 self (PaginationNode) -- The current PaginationNode
- Returns
 _description_
- Return type
 
- subgrounds.pagination.preprocess.is_pagination_node(schema, selection)
 
- subgrounds.pagination.preprocess.get_orderBy_value(selection)
 
- subgrounds.pagination.preprocess.get_orderDirection_value(selection)
 
- subgrounds.pagination.preprocess.get_filtering_arg(selection)
 
- subgrounds.pagination.preprocess.get_filtering_value(selection)
 
- subgrounds.pagination.preprocess.generate_pagination_nodes(schema, document)
 
- subgrounds.pagination.preprocess.normalize(schema, document, pagination_nodes)
 
- subgrounds.pagination.preprocess.prune_doc(document, args)