From 33b8d9881266045f0140a8dec0c7ae3fc6ea84d2 Mon Sep 17 00:00:00 2001 From: Andrey Antukh Date: Sat, 24 Aug 2019 16:35:10 +0200 Subject: [PATCH] :bug: Fix confirmation dialog on projects and pages deletion. --- .../src/uxbox/main/ui/dashboard/projects.cljs | 44 +++++-------------- .../main/ui/workspace/sidebar/sitemap.cljs | 20 ++++----- 2 files changed, 21 insertions(+), 43 deletions(-) diff --git a/frontend/src/uxbox/main/ui/dashboard/projects.cljs b/frontend/src/uxbox/main/ui/dashboard/projects.cljs index 924bf4269..af9aaf1b1 100644 --- a/frontend/src/uxbox/main/ui/dashboard/projects.cljs +++ b/frontend/src/uxbox/main/ui/dashboard/projects.cljs @@ -9,20 +9,17 @@ (:require [cuerdas.core :as str] [lentes.core :as l] - [rumext.core :as mx] [rumext.alpha :as mf] [uxbox.builtins.icons :as i] [uxbox.main.constants :as c] - [uxbox.main.data.lightbox :as udl] [uxbox.main.data.projects :as udp] - [uxbox.main.exports :as exports] [uxbox.main.store :as st] - [uxbox.main.ui.dashboard.projects-createform] + [uxbox.main.ui.modal :as modal] [uxbox.main.ui.keyboard :as kbd] - [uxbox.util.blob :as blob] + [uxbox.main.ui.confirm :refer [confirm-dialog]] [uxbox.util.data :refer [read-string]] [uxbox.util.dom :as dom] - [uxbox.util.i18n :as t :refer (tr)] + [uxbox.util.i18n :as t :refer [tr]] [uxbox.util.router :as r] [uxbox.util.time :as dt])) @@ -34,11 +31,11 @@ ;; --- Refs -(def opts-ref +(def opts-iref (-> (l/in [:dashboard :projects]) (l/derive st/state))) -(def projects-ref +(def projects-iref (-> (l/key :projects) (l/derive st/state))) @@ -117,26 +114,9 @@ (mf/defc grid-item-thumbnail [{:keys [project] :as props}] - (let [url (mf/use-state nil)] - #_(mf/use-effect - {:deps #js [(:page-id project)] - :init (fn [] - (when-let [page-id (:page-id project)] - (let [svg (exports/render-page page-id) - uri (some-> svg - (blob/create "image/svg+xml") - (blob/create-uri))] - (reset! url uri) - uri))) - :end #(when % (blob/revoke-uri %))}) - (if @url - [:div.grid-item-th - {:style {:background-image (str "url('" @url "')")}}] - [:div.grid-item-th - [:img.img-th {:src "/images/project-placeholder.svg" - :alt "Project title"}]]))) - - + [:div.grid-item-th + [:img.img-th {:src "/images/project-placeholder.svg" + :alt "Project title"}]]) ;; --- Grid Item @@ -148,7 +128,7 @@ delete #(st/emit! (udp/delete-project project)) on-delete #(do (dom/stop-propagation %) - (udl/open! :confirm {:on-accept delete})) + (modal/show! confirm-dialog {:on-accept delete})) on-blur #(let [target (dom/event->target %) name (dom/get-value target) id (:id project)] @@ -193,13 +173,13 @@ [{:keys [opts] :as props}] (let [order (:order opts :created) filter (:filter opts "") - projects (mf/deref projects-ref) + projects (mf/deref projects-iref) projects (->> (vals projects) (filter-projects-by filter) (sort-projects-by order)) on-click #(do (dom/prevent-default %) - (udl/open! :create-project))] + #_(udl/open! :create-project))] [:section.dashboard-grid [:h2 (tr "ds.project-title")] [:div.dashboard-grid-content @@ -214,7 +194,7 @@ (mf/defc projects-page [_] (mf/use-effect #(st/emit! (udp/initialize))) - (let [opts (mf/deref opts-ref)] + (let [opts (mf/deref opts-iref)] [:section.dashboard-content [:& menu {:opts opts}] [:& grid {:opts opts}]])) diff --git a/frontend/src/uxbox/main/ui/workspace/sidebar/sitemap.cljs b/frontend/src/uxbox/main/ui/workspace/sidebar/sitemap.cljs index a86b7f553..ae929a78d 100644 --- a/frontend/src/uxbox/main/ui/workspace/sidebar/sitemap.cljs +++ b/frontend/src/uxbox/main/ui/workspace/sidebar/sitemap.cljs @@ -7,24 +7,22 @@ (ns uxbox.main.ui.workspace.sidebar.sitemap (:require + ;; [uxbox.main.data.lightbox :as udl] + ;; [uxbox.main.ui.workspace.sidebar.sitemap-pageform] [cuerdas.core :as str] [lentes.core :as l] [rumext.alpha :as mf] - [rumext.util :as mfu] [uxbox.builtins.icons :as i] - [uxbox.main.data.lightbox :as udl] [uxbox.main.data.pages :as udp] [uxbox.main.data.projects :as dp] [uxbox.main.data.workspace :as dw] - [uxbox.main.refs :as refs] [uxbox.main.store :as st] - [uxbox.main.ui.lightbox :as lbx] - [uxbox.main.ui.workspace.sidebar.sitemap-pageform] + [uxbox.main.ui.confirm :refer [confirm-dialog]] + [uxbox.main.ui.modal :as modal] [uxbox.main.ui.workspace.sortable :refer [use-sortable]] [uxbox.util.data :refer [classnames]] [uxbox.util.dom :as dom] - [uxbox.util.dom.dnd :as dnd] - [uxbox.util.i18n :refer (tr)] + [uxbox.util.i18n :refer [tr]] [uxbox.util.router :as rt])) ;; --- Page Item @@ -32,7 +30,7 @@ (mf/defc page-item [{:keys [page index deletable? selected?] :as props}] (letfn [(on-edit [event] - (udl/open! :page-form {:page page})) + #_(udl/open! :page-form {:page page})) (delete [] (let [next #(st/emit! (dp/go-to (:project page)))] (st/emit! (udp/delete-page (:id page) next)))) @@ -40,7 +38,7 @@ (on-delete [event] (dom/prevent-default event) (dom/stop-propagation event) - (udl/open! :confirm {:on-accept delete})) + (modal/show! confirm-dialog {:on-accept delete})) (on-drop [item monitor] (st/emit! (udp/reorder-pages (:project page)))) (on-hover [item monitor] @@ -101,7 +99,7 @@ :fn #(-> (l/in [:projects project-id]) (l/derive st/state))}) project (mf/deref project-iref) - create #(udl/open! :page-form {:page {:project project-id}}) + ;; create #(udl/open! :page-form {:page {:project project-id}}) close #(st/emit! (dw/toggle-flag :sitemap))] [:div.sitemap.tool-window [:div.tool-window-bar @@ -111,6 +109,6 @@ [:div.tool-window-content [:div.project-title [:span (:name project)] - [:div.add-page {:on-click create} i/close]] + [:div.add-page #_{:on-click create} i/close]] [:& pages-list {:project project :current-page-id current-page-id}]]]))