Closed tzarebczan closed 4 years ago
Main places we use own claim awareness (outside of transaction list):
Mapping to txo list:
All --exclude_internal_transfers (gotta confirm)
Send --type=other --is_my_input --is_not_my_output
Receive --type=other --is_not_my_input --exclude_internal_transfers
Publish (Active) --type=stream, repost --unspent --include_received_tips
Publish (History) --type=stream, repost --is_spent(67.3)
Channel (Active) --type=channel --unspent --include_received_tips
Channel (History) --type=channel --include_received_tips --is_spent(67.3)
Tip (Active) --type=support --unspent --is_my_output --is_not_my_input
Tip (Claimed) --type=support --is_my_output --is_not_my_input
Tip (Sent) --type=support --is_my_input --is_not_my_input
Support (Staked) --type=support --unspent --is_my_input --is_my_output
Support (History) --type=support --is_my_input --is_my_output ---is_spent(67.3)
Abandon --type=stream, repost, channel --is_spent(67.3)
We'd then use the "is_spent": true,
property to show an action or not (i.e unlock, delete, etc)
At some point we need to bite the bullet and implement proper pagination on our various wallet related calls where we hack around it by passing a large page size. Most importantly, this will improve overall experience by making the calls faster (especially on lbry.tv).
There are also some bugs associated with claim list + reposts + resolve param - they don't get resolved with large lists.
To do this properly in our current form, we'd need these from the SDK: https://github.com/lbryio/lbry-sdk/issues/2404 (so when someone goes into a claim, we don't need to know all their publishes to see if they can edit it)
https://github.com/lbryio/lbry-sdk/issues/1853 (so that someone can filter on supports/tips/channels/etc on transaction history)
https://github.com/lbryio/lbry-sdk/issues/2841 (so we can show tip/support/claim actions on transaction list without loading all claims/supports)