diff --git a/backend/src/app/rpc/commands/files.clj b/backend/src/app/rpc/commands/files.clj index 1d14b75de5..d1da43c976 100644 --- a/backend/src/app/rpc/commands/files.clj +++ b/backend/src/app/rpc/commands/files.clj @@ -490,13 +490,17 @@ (let [file (get-file conn file-id features) page-id (or page-id (-> file :data :pages first)) - page (dm/get-in file [:data :pages-index page-id])] + page (dm/get-in file [:data :pages-index page-id]) + page (if (pmap/pointer-map? page) + (deref page) + page)] (cond-> (prune-thumbnails page) (uuid? object-id) (prune-objects object-id)))) (sm/def! ::get-page [:map {:title "GetPage"} + [:file-id ::sm/uuid] [:page-id {:optional true} ::sm/uuid] [:object-id {:optional true} ::sm/uuid] [:features {:optional true} ::features]]) @@ -516,7 +520,10 @@ [{:keys [::db/pool] :as cfg} {:keys [::rpc/profile-id file-id] :as params}] (dm/with-open [conn (db/open pool)] (check-read-permissions! conn profile-id file-id) - (get-page conn params))) + + (binding [pmap/*load-fn* (partial load-pointer conn file-id)] + (get-page conn params)))) + ;; --- COMMAND QUERY: get-team-shared-files diff --git a/frontend/src/app/main/data/users.cljs b/frontend/src/app/main/data/users.cljs index 9d9bf0ccff..5639d75805 100644 --- a/frontend/src/app/main/data/users.cljs +++ b/frontend/src/app/main/data/users.cljs @@ -500,7 +500,7 @@ (defn recover-profile [data] - (dm/assert! (sm/valid? ::recover-profile data)) + (dm/assert! (sm/valid? schema:recover-profile data)) (ptk/reify ::recover-profile ptk/WatchEvent (watch [_ _ _] diff --git a/frontend/src/app/render.cljs b/frontend/src/app/render.cljs index 1b6a0fc7af..9f3db68afe 100644 --- a/frontend/src/app/render.cljs +++ b/frontend/src/app/render.cljs @@ -14,7 +14,7 @@ [app.common.types.components-list :as ctkl] [app.common.uri :as u] [app.main.data.fonts :as df] - [app.main.features :as features] + [app.main.features :as feat] [app.main.render :as render] [app.main.repo :as repo] [app.main.store :as st] @@ -52,6 +52,7 @@ (defn ^:export init [] + (st/emit! (feat/initialize)) (init-ui)) (defn reinit @@ -95,7 +96,7 @@ (mf/defc object-svg [{:keys [page-id file-id object-id render-embed?]}] - (let [components-v2 (features/use-feature :components-v2) + (let [components-v2 (feat/use-feature :components-v2) fetch-state (mf/use-fn (mf/deps file-id page-id object-id components-v2) (fn [] @@ -135,7 +136,7 @@ (mf/defc objects-svg [{:keys [page-id file-id object-ids render-embed?]}] - (let [components-v2 (features/use-feature :components-v2) + (let [components-v2 (feat/use-feature :components-v2) fetch-state (mf/use-fn (mf/deps file-id page-id components-v2) (fn []