| 12345678910111213141516171819202122 | 
							- (ns frontend.extensions.zip
 
-   (:require [clojure.string :as string]
 
-             ["jszip" :as JSZip]
 
-             [promesa.core :as p]))
 
- (defn make-file [content file-name args]
 
-   (let [blob-content (clj->js [content])
 
-         last-modified (or (aget content "lastModified") (js/Date.))
 
-         args (clj->js args)]
 
-     (aset args "lastModified" last-modified)
 
-     (js/File. blob-content file-name args)))
 
- (defn make-zip [zip-filename file-name-content _repo]
 
-   (let [zip (JSZip.)
 
-         folder (.folder zip zip-filename)]
 
-     (doseq [[file-name content] file-name-content]
 
-       (when-not (string/blank? content)
 
-         (.file folder (-> file-name
 
-                           (string/replace #"^/+" ""))
 
-                content)))
 
-     (p/let [zip-blob (.generateAsync zip #js {:type "blob"})]
 
-       (make-file zip-blob (str zip-filename ".zip") {:type "application/zip"}))))
 
 
  |