                       (-> path (split "\\") last)  ; C:\fakepath\file-name
                       "No file selected.")))]]]
 
-       [track-upload upload-state]])))
+       (for [[k upload] (@app-state :uploads)]
+        ^{:key k} [track-upload upload])])))
 
 ;; -------------------------
 ;; Tracks

;; -------------------------
;; Upload

(defn track-upload [upload-state]
  (let [{loaded      :loaded
         total       :total
         status      :status
         status-body :body} @upload-state

        {error-msg  :msg
         track     :track} status-body

        percentage (-> loaded
                       (/ total) (* 100))]
    (if (< 0 percentage 100)
      [:progress.pure-input-1 {:max 100 :value percentage}]



(defn upload-section []
  (let [form-ref       (r/atom nil)
        file-input-ref (r/atom nil)]
    (fn []
      [:section#upload
       [:h2 "Upload"]
