diff --git a/src/main/frontend/fs/memory_fs.cljs b/src/main/frontend/fs/memory_fs.cljs index 9b06f1855f..44b808d39c 100644 --- a/src/main/frontend/fs/memory_fs.cljs +++ b/src/main/frontend/fs/memory_fs.cljs @@ -51,11 +51,13 @@ (let [fpath (path/url-to-path dir)] (-> (js/window.pfs.mkdir fpath) (p/catch (fn [error] (println "(memory-fs)Mkdir error: " error))))))) - (mkdir-recur! [_this dir] + (mkdir-recur! [this dir] + ;; FIXME: replace this with a recurisve implementation (when js/window.pfs - (let [fpath (path/url-to-path dir)] - (-> (js/window.pfs.mkdir fpath #js {:recursive true}) - (p/catch (fn [error] (println "(memory-fs)Mkdir-recur error: " error))))))) + (p/let [dir' (path/url-to-path dir) + parent (path/parent dir') + _ (when parent (js {:type "image"}))] - (when blob (js/URL.createObjectURL blob))) + blob (js/Blob. (array binary) (clj->js {:type "image"}))] + (when blob (js/URL.createObjectURL blob))) :else ;; nfs (let [handle-path (str "handle/" full-path)