From 056b80939e15e9387cb37d01928cd6bc536de49a Mon Sep 17 00:00:00 2001 From: Andrey Antukh Date: Thu, 29 Apr 2021 13:03:39 +0200 Subject: [PATCH] :arrow_up: Update beicon library (frontend). --- frontend/shadow-cljs.edn | 2 +- frontend/src/app/main/snap.cljs | 9 ++++----- .../app/main/ui/workspace/viewport/snap_distances.cljs | 5 ++--- .../src/app/main/ui/workspace/viewport/snap_points.cljs | 8 ++++---- 4 files changed, 11 insertions(+), 13 deletions(-) diff --git a/frontend/shadow-cljs.edn b/frontend/shadow-cljs.edn index f8268a0aa..746574064 100644 --- a/frontend/shadow-cljs.edn +++ b/frontend/shadow-cljs.edn @@ -14,7 +14,7 @@ [danlentz/clj-uuid "0.1.9"] [frankiesardo/linked "1.3.0"] - [funcool/beicon "2021.04.12-1"] + [funcool/beicon "2021.04.27-2"] [funcool/cuerdas "2020.03.26-3"] [funcool/okulary "2020.04.14-0"] [funcool/potok "3.2.0"] diff --git a/frontend/src/app/main/snap.cljs b/frontend/src/app/main/snap.cljs index 3e7ebd870..583a62fd0 100644 --- a/frontend/src/app/main/snap.cljs +++ b/frontend/src/app/main/snap.cljs @@ -94,8 +94,8 @@ [page-id frame-id points filter-shapes zoom] (let [snap-x (search-snap page-id frame-id points :x filter-shapes zoom) snap-y (search-snap page-id frame-id points :y filter-shapes zoom)] - ;; snap-x is the second parameter because is the "source" to combine - (rx/combine-latest snap->vector snap-y snap-x))) + (rx/combine-latest snap-x snap-y))) + (defn sr-distance [coord sr1 sr2] (let [c1 (if (= coord :x) :x1 :y1) @@ -174,8 +174,7 @@ (if (mth/finite? min-snap) [0 min-snap] nil))) (defn search-snap-distance [selrect coord shapes-lt shapes-gt zoom] - (->> shapes-lt - (rx/combine-latest vector shapes-gt) + (->> (rx/combine-latest shapes-lt shapes-gt) (rx/map (fn [[shapes-lt shapes-gt]] (calculate-snap coord selrect shapes-lt shapes-gt zoom))))) @@ -203,7 +202,7 @@ (d/mapm #(select-shapes-area page-id shapes objects %2))) snap-x (search-snap-distance selrect :x (:left areas) (:right areas) zoom) snap-y (search-snap-distance selrect :y (:top areas) (:bottom areas) zoom)] - (rx/combine-latest snap->vector snap-y snap-x))))))) + (rx/combine-latest snap-x snap-y))))))) (defn closest-snap-point [page-id shapes layout zoom point] diff --git a/frontend/src/app/main/ui/workspace/viewport/snap_distances.cljs b/frontend/src/app/main/ui/workspace/viewport/snap_distances.cljs index b940e886f..ae6c809ad 100644 --- a/frontend/src/app/main/ui/workspace/viewport/snap_distances.cljs +++ b/frontend/src/app/main/ui/workspace/viewport/snap_distances.cljs @@ -233,9 +233,8 @@ (rx/map #(set/difference % selected)) (rx/map #(->> % (map (partial get @refs/workspace-page-objects))))) (rx/of nil))))] - - (->> (query-side lt-side) - (rx/combine-latest vector (query-side gt-side))))) + (rx/combine-latest (query-side lt-side) + (query-side gt-side)))) [lt-shapes gt-shapes] @to-measure diff --git a/frontend/src/app/main/ui/workspace/viewport/snap_points.cljs b/frontend/src/app/main/ui/workspace/viewport/snap_points.cljs index 00ea59083..9f7e24b27 100644 --- a/frontend/src/app/main/ui/workspace/viewport/snap_points.cljs +++ b/frontend/src/app/main/ui/workspace/viewport/snap_points.cljs @@ -120,10 +120,10 @@ (mf/use-effect (fn [] (let [sub (->> subject - (rx/switch-map #(rx/combine-latest - d/concat - (get-snap :y %) - (get-snap :x %))) + (rx/switch-map #(rx/combine-latest (get-snap :x %) + (get-snap :y %))) + (rx/map (fn [result] + (apply d/concat (seq result)))) (rx/subs #(let [rs (filter (fn [[_ snaps _]] (> (count snaps) 0)) %)] (reset! state rs))))]