0
Fork 0
mirror of https://github.com/penpot/penpot.git synced 2025-02-03 21:09:00 -05:00

Replace bidi with funcool/bide.

And upgrade all dependencies.
This commit is contained in:
Andrey Antukh 2016-08-27 15:50:04 +03:00
parent 4069b183a7
commit 38bead08e9
No known key found for this signature in database
GPG key ID: 4DFEBCB8316A8B95
5 changed files with 47 additions and 54 deletions

View file

@ -10,25 +10,25 @@
:profiles {:dev {:source-paths ["dev"]}} :profiles {:dev {:source-paths ["dev"]}}
:dependencies [[org.clojure/clojure "1.9.0-alpha10" :scope "provided"] :dependencies [[org.clojure/clojure "1.9.0-alpha10" :scope "provided"]
[org.clojure/clojurescript "1.9.198" :scope "provided"] [org.clojure/clojurescript "1.9.227" :scope "provided"]
;; Build ;; Build
[figwheel-sidecar "0.5.4-7" :scope "test"] [figwheel-sidecar "0.5.6" :scope "test"]
;; runtime ;; runtime
[com.cognitect/transit-cljs "0.8.239"] [com.cognitect/transit-cljs "0.8.239"]
[rum "0.10.5"] [rum "0.10.6"]
[cljsjs/react "15.3.0-0"] [cljsjs/react "15.3.1-0"]
[cljsjs/react-dom "15.3.0-0"] [cljsjs/react-dom "15.3.1-0"]
[cljsjs/react-dom-server "15.3.0-0"] [cljsjs/react-dom-server "15.3.1-0"]
[cljsjs/moment "2.10.6-4"] [cljsjs/moment "2.10.6-4"]
[funcool/struct "1.0.0"] [funcool/struct "1.0.0"]
[funcool/lentes "1.1.0"] [funcool/lentes "1.1.0"]
[funcool/httpurr "0.6.1"] [funcool/httpurr "0.6.2"]
[funcool/promesa "1.4.0"] [funcool/promesa "1.5.0"]
[funcool/beicon "2.2.0"] [funcool/beicon "2.3.0"]
[funcool/cuerdas "0.8.0"] [funcool/cuerdas "0.8.0"]
[bidi "2.0.9"]] [funcool/bide "1.0.2"]]
:plugins [[lein-ancient "0.6.10"]] :plugins [[lein-ancient "0.6.10"]]
:clean-targets ^{:protect false} ["resources/public/js" "target"] :clean-targets ^{:protect false} ["resources/public/js" "target"]
) )

View file

@ -141,8 +141,8 @@
(-apply-watch [_ state s] (-apply-watch [_ state s]
(letfn [(navigate [pages] (letfn [(navigate [pages]
(let [pageid (:id (first pages)) (let [pageid (:id (first pages))
params {:project-uuid projectid params {:project (str projectid)
:page-uuid pageid}] :page (str pageid)}]
(r/navigate :workspace/page params)))] (r/navigate :workspace/page params)))]
(rx/merge (rx/merge
(rx/of #(assoc % :loader true) (rx/of #(assoc % :loader true)
@ -156,8 +156,8 @@
(defrecord GoToPage [projectid pageid] (defrecord GoToPage [projectid pageid]
rs/WatchEvent rs/WatchEvent
(-apply-watch [_ state s] (-apply-watch [_ state s]
(let [params {:project-uuid projectid (let [params {:project (str projectid)
:page-uuid pageid}] :page (str pageid)}]
(rx/of (r/navigate :workspace/page params))))) (rx/of (r/navigate :workspace/page params)))))
(defn go-to (defn go-to

View file

@ -7,7 +7,6 @@
(ns uxbox.main.ui (ns uxbox.main.ui
(:require [sablono.core :as html :refer-macros [html]] (:require [sablono.core :as html :refer-macros [html]]
[bidi.bidi :as bidi]
[promesa.core :as p] [promesa.core :as p]
[beicon.core :as rx] [beicon.core :as rx]
[goog.dom :as gdom] [goog.dom :as gdom]
@ -96,8 +95,8 @@
:settings/profile (settings/profile-page) :settings/profile (settings/profile-page)
:settings/password (settings/password-page) :settings/password (settings/password-page)
:settings/notifications (settings/notifications-page) :settings/notifications (settings/notifications-page)
:workspace/page (let [projectid (:project-uuid params) :workspace/page (let [projectid (uuid (:project params))
pageid (:page-uuid params)] pageid (uuid (:page params))]
(workspace projectid pageid)) (workspace projectid pageid))
nil nil
)))) ))))
@ -117,25 +116,18 @@
;; --- Routes ;; --- Routes
(def ^:private page-route
[[bidi/uuid :project-uuid] "/" [bidi/uuid :page-uuid]])
(def routes (def routes
["/" [["auth/login" :auth/login] [["/auth/login" :auth/login]
["auth/register" :auth/register] ["/auth/recovery/token/:token" :auth/recovery]
["auth/recovery/request" :auth/recovery-request] ["/settings/profile" :settings/profile]
[["auth/recovery/token/" :token] :auth/recovery] ["/settings/password" :settings/password]
["/settings/notifications" :settings/notifications]
["settings/" [["profile" :settings/profile] ["/dashboard/projects" :dashboard/projects]
["password" :settings/password] ["/dashboard/elements" :dashboard/elements]
["notifications" :settings/notifications]]] ["/dashboard/icons" :dashboard/icons]
["/dashboard/images" :dashboard/images]
["dashboard/" [["projects" :dashboard/projects] ["/dashboard/colors" :dashboard/colors]
["elements" :dashboard/elements] ["/workspace/:project/:page" :workspace/page]])
["icons" :dashboard/icons]
["images" :dashboard/images]
["colors" :dashboard/colors]]]
["workspace/" [[page-route :workspace/page]]]]])
;; --- Main Entry Point ;; --- Main Entry Point

View file

@ -6,17 +6,13 @@
;; Copyright (c) 2015-2016 Juan de la Cruz <delacruzgarciajuan@gmail.com> ;; Copyright (c) 2015-2016 Juan de la Cruz <delacruzgarciajuan@gmail.com>
(ns uxbox.util.router (ns uxbox.util.router
(:require [bidi.router] (:require [bide.core :as r]
[bidi.bidi :as bidi]
[goog.events :as events]
[lentes.core :as l]
[beicon.core :as rx] [beicon.core :as rx]
[uxbox.util.rstore :as rs])) [uxbox.util.rstore :as rs]))
(enable-console-print!) (enable-console-print!)
(defonce +router+ nil) (defonce +router+ nil)
(defonce +routes+ nil)
;; --- Update Location (Event) ;; --- Update Location (Event)
@ -33,8 +29,8 @@
(instance? UpdateLocation v)) (instance? UpdateLocation v))
(defn update-location (defn update-location
[{:keys [handler route-params] :as params}] [name params]
(UpdateLocation. handler route-params)) (UpdateLocation. name params))
;; --- Navigate (Event) ;; --- Navigate (Event)
@ -44,7 +40,7 @@
(let [loc (merge {:handler id} (let [loc (merge {:handler id}
(when params (when params
{:route-params params}))] {:route-params params}))]
(bidi.router/set-location! +router+ loc)))) (r/navigate! +router+ id params))))
(defn navigate (defn navigate
([id] (navigate id nil)) ([id] (navigate id nil))
@ -58,11 +54,12 @@
([routes] ([routes]
(init routes nil)) (init routes nil))
([routes {:keys [default] :or {default :auth/login}}] ([routes {:keys [default] :or {default :auth/login}}]
(let [opts {:on-navigate #(rs/emit! (update-location %)) (let [opts {:on-navigate #(rs/emit! (update-location %1 %2))
:default-location {:handler default}} :default default}
router (bidi.router/start-router! routes opts)] router (-> (r/router routes)
(set! +routes+ routes) (r/start! opts))]
(set! +router+ router)))) (set! +router+ router)
router)))
(defn go (defn go
"Redirect the user to other url." "Redirect the user to other url."
@ -74,6 +71,10 @@
"Given a location handler and optional parameter map, return the URI "Given a location handler and optional parameter map, return the URI
for such handler and parameters." for such handler and parameters."
([id] ([id]
(bidi/path-for +routes+ id)) (if +router+
(r/resolve +router+ id)
""))
([id params] ([id params]
(apply bidi/path-for +routes+ id (into [] (mapcat (fn [[k v]] [k v])) params)))) (if +router+
(r/resolve +router+ id params)
"")))

View file

@ -6,7 +6,6 @@
(ns uxbox.view.ui (ns uxbox.view.ui
(:require [sablono.core :refer-macros [html]] (:require [sablono.core :refer-macros [html]]
[bidi.bidi :as bidi]
[goog.dom :as gdom] [goog.dom :as gdom]
[lentes.core :as l] [lentes.core :as l]
[rum.core :as rum] [rum.core :as rum]
@ -63,9 +62,10 @@
;; --- Routes ;; --- Routes
(def routes ["/" [[[:token "/" :id] :view/viewer] (def routes
[[:token] :view/viewer] [["/:token/:id" :view/viewer]
["not-found" :view/notfound]]]) ["/:token" :view/viewer]
["/not-found" :view/notfound]])
;; --- Main Entry Point ;; --- Main Entry Point