refactor download-list ui into components