From 02b41abaf8b2894f4b638207c84b02f78a4fab6c Mon Sep 17 00:00:00 2001 From: Andrey Antukh Date: Mon, 10 Jul 2023 11:42:32 +0200 Subject: [PATCH] :sparkles: Improve builtin template fetching management --- backend/src/app/rpc/commands/management.clj | 11 +++++++++-- frontend/src/app/main/data/dashboard.cljs | 6 ++---- frontend/src/app/main/ui/dashboard/templates.cljs | 5 +++++ 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/backend/src/app/rpc/commands/management.clj b/backend/src/app/rpc/commands/management.clj index 0c5813a29..871d89ffe 100644 --- a/backend/src/app/rpc/commands/management.clj +++ b/backend/src/app/rpc/commands/management.clj @@ -233,7 +233,7 @@ (let [project (-> (db/get-by-id conn :project project-id) (assoc :is-pinned false)) - + files (db/query conn :file {:project-id (:id project) :deleted-at nil} @@ -412,10 +412,17 @@ (binfile/import!)))) -;; --- COMMAND: Retrieve list of builtin templates +;; --- COMMAND: Get list of builtin templates (s/def ::retrieve-list-of-builtin-templates any?) (sv/defmethod ::retrieve-list-of-builtin-templates + {::doc/added "1.10" + ::doc/deprecated "1.19"} + [cfg _params] + (mapv #(select-keys % [:id :name :thumbnail-uri]) (:templates cfg))) + +(sv/defmethod ::get-builtin-templates + {::doc/added "1.19"} [cfg _params] (mapv #(select-keys % [:id :name :thumbnail-uri]) (:templates cfg))) diff --git a/frontend/src/app/main/data/dashboard.cljs b/frontend/src/app/main/data/dashboard.cljs index 0995fefeb..d31c6929d 100644 --- a/frontend/src/app/main/data/dashboard.cljs +++ b/frontend/src/app/main/data/dashboard.cljs @@ -34,7 +34,6 @@ (declare fetch-projects) (declare fetch-team-members) -(declare fetch-builtin-templates) (defn initialize [{:keys [id] :as params}] @@ -62,8 +61,7 @@ (ptk/watch (fetch-projects) state stream) (ptk/watch (fetch-team-members) state stream) (ptk/watch (du/fetch-teams) state stream) - (ptk/watch (du/fetch-users {:team-id id}) state stream) - (ptk/watch (fetch-builtin-templates) state stream))))) + (ptk/watch (du/fetch-users {:team-id id}) state stream))))) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Data Fetching (context aware: current team) @@ -275,7 +273,7 @@ (ptk/reify ::fetch-builtin-templates ptk/WatchEvent (watch [_ _ _] - (->> (rp/cmd! :retrieve-list-of-builtin-templates) + (->> (rp/cmd! :get-builtin-templates) (rx/map builtin-templates-fetched))))) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; diff --git a/frontend/src/app/main/ui/dashboard/templates.cljs b/frontend/src/app/main/ui/dashboard/templates.cljs index 5f052dc85..0dc49101c 100644 --- a/frontend/src/app/main/ui/dashboard/templates.cljs +++ b/frontend/src/app/main/ui/dashboard/templates.cljs @@ -8,6 +8,7 @@ (:require [app.common.data.macros :as dm] [app.common.math :as mth] + [app.main.data.dashboard :as dd] [app.main.data.events :as ev] [app.main.data.modal :as modal] [app.main.data.users :as du] @@ -226,6 +227,10 @@ ] + (mf/with-effect [collapsed] + (when-not collapsed + (st/emit! (dd/fetch-builtin-templates)))) + [:div.dashboard-templates-section {:class (when ^boolean collapsed "collapsed")} [:& title {:collapsed collapsed}]