there are some issues that arose with the async updates to the request objects, where some properties of the request are not yet populated, and therefore the components that render using those properties need not be shown unless those properties are populated
The purpose was to emulate the structure of a request in the contract, so that the entire request object could be overwritten, and then the app state, eg moderated, would be separately set. Other state properties are also only fetched if not already fetched.
Moderation view of all requests: /moderate
Allows request details page to be opened in two separate tabs: one with moderation enabled, and the other without (for the projector). Moderating the image has its state synced to the other (non-moderated) tab
On the requests page, only show details relating to the StorageRequested event
On the request details page, load more detailed information, including slot info. If already fetched, do not re-fetch
Add tooltip, relative time, requestedAt
However, fetching data is too slow now and there is a lag after render. Can try removing the fetching of slots when getting past StorageRequested events, and only do that fetch on the details page