Replace all usage of promesa with beicon.

And remove promesa dependency.
This commit is contained in:
Andrey Antukh
2016-11-10 23:39:11 +01:00
parent 0fdb11e153
commit c6626fe4c8
17 changed files with 50 additions and 53 deletions

View File

@@ -24,7 +24,6 @@
[cljsjs/moment "2.10.6-4"]
[funcool/struct "1.0.0"]
[funcool/lentes "1.2.0"]
[funcool/promesa "1.5.0"]
[funcool/beicon "2.3.0"]
[funcool/cuerdas "1.0.2"]
[funcool/bide "1.0.5"]]

View File

@@ -7,7 +7,6 @@
(ns uxbox.main.data.auth
(:require [beicon.core :as rx]
[promesa.core :as p]
[uxbox.main.repo :as rp]
[uxbox.util.rstore :as rs]
[uxbox.util.router :as rt]

View File

@@ -6,7 +6,6 @@
(ns uxbox.main.data.forms
(:require [beicon.core :as rx]
[promesa.core :as p]
[lentes.core :as l]
[uxbox.main.repo :as rp]
[uxbox.util.rstore :as rs]

View File

@@ -6,7 +6,6 @@
(ns uxbox.main.data.history
(:require [cuerdas.core :as str]
[promesa.core :as p]
[beicon.core :as rx]
[lentes.core :as l]
[uxbox.util.rstore :as rs]

View File

@@ -7,7 +7,6 @@
(ns uxbox.main.data.images
(:require [cuerdas.core :as str]
[beicon.core :as rx]
[promesa.core :as p]
[uxbox.util.data :refer (jscoll->vec)]
[uxbox.util.uuid :as uuid]
[uxbox.util.rstore :as rs]

View File

@@ -5,8 +5,7 @@
;; Copyright (c) 2016 Andrey Antukh <niwi@niwi.nz>
(ns uxbox.main.data.lightbox
(:require [promesa.core :as p]
[beicon.core :as rx]
(:require [beicon.core :as rx]
[lentes.core :as l]
[uxbox.util.rstore :as rs]))

View File

@@ -6,9 +6,9 @@
(ns uxbox.main.data.messages
(:require [cuerdas.core :as str]
[promesa.core :as p]
[beicon.core :as rx]
[lentes.core :as l]
[uxbox.util.timers :as ts]
[uxbox.util.rstore :as rs]))
;; --- Constants
@@ -88,15 +88,15 @@
(defn error!
[& args]
(p/schedule 0 #(rs/emit! (apply show-error args))))
(ts/schedule 0 #(rs/emit! (apply show-error args))))
(defn info!
[& args]
(p/schedule 0 #(rs/emit! (apply show-info args))))
(ts/schedule 0 #(rs/emit! (apply show-info args))))
(defn dialog!
[& args]
(p/schedule 0 #(rs/emit! (apply show-dialog args))))
(ts/schedule 0 #(rs/emit! (apply show-dialog args))))
(defn close!
[]

View File

@@ -7,7 +7,6 @@
(ns uxbox.main.data.pages
(:require [cuerdas.core :as str]
[promesa.core :as p]
[beicon.core :as rx]
[lentes.core :as l]
[uxbox.util.rstore :as rs]

View File

@@ -6,7 +6,6 @@
(ns uxbox.main.data.users
(:require [beicon.core :as rx]
[promesa.core :as p]
[uxbox.main.repo :as rp]
[uxbox.util.rstore :as rs]
[uxbox.main.state :as st]

View File

@@ -6,7 +6,6 @@
(ns uxbox.main.repo.impl
(:require [clojure.walk :as walk]
[promesa.core :as p :include-macros true]
[beicon.core :as rx]
[uxbox.config :refer (url)]
[uxbox.util.http :as http]

View File

@@ -6,8 +6,7 @@
;; Copyright (c) 2015-2016 Juan de la Cruz <delacruzgarciajuan@gmail.com>
(ns uxbox.main.ui
(:require [promesa.core :as p]
[beicon.core :as rx]
(:require [beicon.core :as rx]
[lentes.core :as l]
[cuerdas.core :as str]
[bide.core :as bc]
@@ -23,6 +22,7 @@
[uxbox.main.ui.dashboard :as dashboard]
[uxbox.main.ui.settings :as settings]
[uxbox.main.ui.workspace :refer (workspace)]
[uxbox.util.timers :as ts]
[uxbox.util.router :as rt]
[uxbox.util.rstore :as rs]
[uxbox.util.i18n :refer (tr)]
@@ -94,7 +94,7 @@
location (:id route)
params (:params route)]
(if (and (restricted? location) (not auth))
(do (p/schedule 0 #(rt/go :auth/login)) nil)
(do (ts/schedule 0 #(rt/go :auth/login)) nil)
(case location
:auth/login (auth/login-page)
:auth/register (auth/register-page)

View File

@@ -1,11 +1,11 @@
(ns uxbox.main.ui.messages
(:require [sablono.core :as html :refer-macros [html]]
[rum.core :as rum]
[promesa.core :as p]
[lentes.core :as l]
[uxbox.main.state :as st]
[uxbox.main.data.messages :as udm]
[uxbox.main.ui.icons :as i]
[uxbox.util.timers :as ts]
[uxbox.util.mixins :as mx :include-macros true]
[uxbox.util.data :refer (classnames)]
[uxbox.util.dom :as dom]))
@@ -47,13 +47,13 @@
(letfn [(accept [event]
(dom/prevent-default event)
(on-accept)
(p/schedule 0 udm/close!))
(ts/schedule 0 udm/close!))
(cancel [event]
(dom/prevent-default event)
(when on-cancel
(on-cancel))
(p/schedule 0 udm/close!))]
(ts/schedule 0 udm/close!))]
(html
[:div.message {:class classes}
[:div.message-body

View File

@@ -7,7 +7,7 @@
(ns uxbox.main.ui.workspace.download
(:require [cuerdas.core :as str]
[promesa.core :as p]
[beicon.core :as rx]
[uxbox.main.data.lightbox :as udl]
[uxbox.main.exports :as exports]
[uxbox.main.state :as st]
@@ -72,21 +72,22 @@
(defn- download-project-zip
[{:keys [name] :as project} pages]
(p/alet [files (generate-files pages)
blob (p/await (zip/build files))
uri (blob/create-uri blob)
link (.createElement js/document "a")
event (js/MouseEvent. "click")
now (dt/now)]
(.setAttribute link "href" uri)
(.setAttribute link "download" (str (str/uslug name) "_"
(dt/format now :unix)
".zip"))
(.appendChild (.-body js/document) link)
(.dispatchEvent link event)
(blob/revoke-uri uri)
(.removeChild (.-body js/document) link)))
(let [event (js/MouseEvent. "click")
link (.createElement js/document "a")
now (dt/now)
stream (->> (rx/from-coll (generate-files pages))
(rx/reduce conj [])
(rx/mapcat zip/build)
(rx/map blob/create-uri)
(rx/take 1))
download (str (str/uslug name) "_" (dt/format now :unix) ".zip")]
(rx/subscribe stream (fn [uri]
(.setAttribute link "download" download)
(.setAttribute link "href" uri)
(.appendChild (.-body js/document) link)
(.dispatchEvent link event)
(blob/revoke-uri uri)
(.removeChild (.-body js/document) link)))))
(mx/defcs download-dialog
{:mixins [mx/static mx/reactive]}

View File

@@ -0,0 +1,11 @@
;; This Source Code Form is subject to the terms of the Mozilla Public
;; License, v. 2.0. If a copy of the MPL was not distributed with this
;; file, You can obtain one at http://mozilla.org/MPL/2.0/.
;;
;; Copyright (c) 2016 Andrey Antukh <niwi@niwi.nz>
(ns uxbox.util.timers)
(defn schedule
[ms func]
(js/setTimeout func ms))

View File

@@ -7,18 +7,13 @@
(ns uxbox.util.zip
"Helpers for make zip file (using jszip)."
(:require [vendor.jszip]
[promesa.core :as p]))
(defn build*
[files resolve reject]
(let [zipobj (js/JSZip.)]
(run! (fn [[name content]]
(.file zipobj name content))
files)
(-> (.generateAsync zipobj #js {:type "blob"})
(.then resolve reject))))
[beicon.core :as rx]))
(defn build
[files]
(p/promise (fn [resolve reject]
(build* files resolve reject))))
(letfn [(attach-file [zobj [name content]]
(.file zobj name content))]
(let [zobj (js/JSZip.)]
(run! (partial attach-file zobj) files)
(->> (.generateAsync zobj #js {:type "blob"})
(rx/from-promise)))))

View File

@@ -7,7 +7,6 @@
(ns uxbox.view.ui.viewer
(:require [lentes.core :as l]
[promesa.core :as p]
[uxbox.util.i18n :refer (tr)]
[uxbox.util.rstore :as rs]
[uxbox.util.router :as rt]

View File

@@ -5,12 +5,12 @@
;; Copyright (c) 2016 Andrey Antukh <niwi@niwi.nz>
(ns uxbox.view.ui.viewer.interactions
(:require [promesa.core :as p]
[uxbox.util.dom :as dom]
(:require [uxbox.util.dom :as dom]
[uxbox.util.rstore :as rs]
[uxbox.main.geom :as geom]
[uxbox.util.geom.matrix :as gmt]
[uxbox.util.geom.point :as gpt]
[uxbox.util.timers :as ts]
[uxbox.main.geom :as geom]
[uxbox.main.state :as st]
[uxbox.view.data.viewer :as dv]
[vendor.snapsvg])
@@ -52,7 +52,7 @@
[dom {:keys [delay duration easing] :as opts}]
(let [props (dissoc opts :delay :duration :easing)
snap (js/Snap. dom)]
(p/schedule delay #(.animate snap (clj->js props) duration easing))))
(ts/schedule delay #(.animate snap (clj->js props) duration easing))))
;; --- Interactions to Animation Compilation