subgrounds icon indicating copy to clipboard operation
subgrounds copied to clipboard

Last and first built-in synthetic fields on list fields

Open cvauclair opened this issue 3 years ago • 0 comments

Description

Given a subgraph with a query field entities of type [Entity!]!, then entities.first and entities.last should produce a field path that represents the first and last of those entities ordered by timestamp (by default). If timestamp is not a valid field of entity Entity, then the field by which to order the entities can be specified using the orderBy argument.

Example

sg = Subgrounds()
uniswapV2 = sg.load_subgraph("https://api.thegraph.com/subgraphs/name/uniswap/uniswap-v2")

# These two are equivalent
last_swap_id = uniswapV2.Query.swaps.last().id

last_swap_id = uniswapV2.Query.swaps(
  orderBy=Swap.timestamp,
  orderDirection='desc',
  first=1
).id

# These two are also equivalent
last_pair_id = unsiwapV2.Query.pairs.last(orderBy='createdAtTimestamp').id

last_pair_id = uniswapV2.Query.pairs(
  orderBy=Pair.createdAtTimestamp,
  orderDirection='desc',
  first=1
).id

cvauclair avatar Jan 23 '22 15:01 cvauclair