Problem
The Invoice Dashboard takes a long time to load for users who have a large number of encrypted invoices. This is because, after #335, it waits until all encrypted invoices are decrypted before displaying the first page.
Possible Solutions
- Display encrypted invoices before they're decrypted.
- Decrypt them one-at-a-time in the background. Update table rows to show the decrypted data as it becomes available.
- Add
(i) icon next to filtering selectors and sort carrots with tooltips explaining that "filtering / sorting is disabled until all requests are decrypted"
- Display an error toast if the user clicks on sorting or filtering before all requests are decrypted. Explain "Cannot sort/filter until all requests are decrypted".
- Display a progress bar to show how long until all requests are decrypted. Assume all requests take the same amount of time to decrypt.