Currently, Taquito does not support any big map discovery. This requires the user to know existing keys beforehand or rely on an external tool to discover than.
It seem possible to discover big map keys relying only on the RPC using:
/chains/main/blocks/head/context/raw/json/big_maps/index/{big_map_id}/contents
Which give a list of all the keys encoded as expression
If we are able to use this endpoint to provide big map keys discovery we can then:
[ ] Add support for this endpoint in the RPC client
[ ] Improve the BigMapAbstraction to support big map keys
[ ] Add support for big map keys listing in the Tezos.contract api
Some questions remains:
How to deal with extremely huge big maps?
Is having the key expression enough to provide a good developer experience?
Currently, Taquito does not support any big map discovery. This requires the user to know existing keys beforehand or rely on an external tool to discover than.
It seem possible to discover big map keys relying only on the RPC using:
/chains/main/blocks/head/context/raw/json/big_maps/index/{big_map_id}/contents
Which give a list of all the keys encoded as expressionIf we are able to use this endpoint to provide big map keys discovery we can then:
Tezos.contract
apiSome questions remains: