Should browser/client drive the bulk operations?

Currently I am working on developing a web UI. Backend API is supporting individual delete on resources. Users would like to do a bulk delete (say hundreds of resources). If bulk delete need to be implemented, which is good design that will have better user experience?

1) Implement Bulk delete API, which is going to take in number of resource ids and return with status url. Browser can do a GET on status api and show the progress bar in UI.

2) Bulk delete driven from Client/browser, where requests are sent in async fashion. As we have success response we show the progress. But UI is blocked and user cannot navigate until the operation is complete.