From 0c0c81e9a5b103fd0242b6bc5a3cccd50d5c6a6c Mon Sep 17 00:00:00 2001 From: "alonso.torres" Date: Mon, 28 Jul 2025 17:20:58 +0200 Subject: [PATCH 1/2] :bug: Fix problem with shape to path not working --- frontend/src/app/render_wasm/shape.cljs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/frontend/src/app/render_wasm/shape.cljs b/frontend/src/app/render_wasm/shape.cljs index 298a7ff353..a69ca28968 100644 --- a/frontend/src/app/render_wasm/shape.cljs +++ b/frontend/src/app/render_wasm/shape.cljs @@ -11,6 +11,7 @@ [app.common.transit :as t] [app.common.types.shape :as shape] [app.common.types.shape.layout :as ctl] + [app.common.uuid :as uuid] [app.render-wasm.api :as api] [beicon.v2.core :as rx] [clojure.core :as c] @@ -116,7 +117,10 @@ id (get shape :id)] (case k :parent-id (api/set-parent-id v) - :type (api/set-shape-type v) + :type (do + (api/set-shape-type v) + (when (or (= v :path) (= v :bool)) + (api/set-shape-path-content (:content shape)))) :bool-type (api/set-shape-bool-type v) :selrect (api/set-shape-selrect v) :show-content (if (= (:type shape) :frame) From ddd0e447f681837e0ab4c14cf075eb1f32172155 Mon Sep 17 00:00:00 2001 From: "alonso.torres" Date: Mon, 28 Jul 2025 17:21:18 +0200 Subject: [PATCH 2/2] :bug: Fix problem when creating shapes after new page --- frontend/src/app/main/data/workspace/pages.cljs | 16 +++++++++++++++- frontend/src/app/render_wasm/shape.cljs | 1 - 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/frontend/src/app/main/data/workspace/pages.cljs b/frontend/src/app/main/data/workspace/pages.cljs index 73cbcdb1bb..3945bb7f24 100644 --- a/frontend/src/app/main/data/workspace/pages.cljs +++ b/frontend/src/app/main/data/workspace/pages.cljs @@ -27,7 +27,9 @@ [app.main.data.workspace.libraries :as dwl] [app.main.data.workspace.thumbnails :as dwth] [app.main.errors] + [app.main.features :as features] [app.main.router :as rt] + [app.render-wasm.shape :as wasm.shape] [app.util.http :as http] [app.util.i18n :as i18n :refer [tr]] [beicon.v2.core :as rx] @@ -128,6 +130,14 @@ ;; Workspace Page CRUD ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +(defn update-page-root + [file-id page-id] + (ptk/reify ::update-page-root + ptk/UpdateEvent + (update [_ state] + (-> state + (update-in [:files file-id :data :pages-index page-id :objects uuid/zero] wasm.shape/create-shape))))) + (defn create-page [{:keys [page-id file-id]}] (let [id (or page-id (uuid/next))] @@ -146,7 +156,11 @@ changes (-> (pcb/empty-changes it) (pcb/add-empty-page id name))] - (rx/of (dch/commit-changes changes))))))) + (rx/concat + (rx/of (dch/commit-changes changes)) + (if (features/active-feature? state "render-wasm/v1") + (rx/of (update-page-root file-id id)) + (rx/empty)))))))) (defn duplicate-page [page-id] diff --git a/frontend/src/app/render_wasm/shape.cljs b/frontend/src/app/render_wasm/shape.cljs index a69ca28968..933695e540 100644 --- a/frontend/src/app/render_wasm/shape.cljs +++ b/frontend/src/app/render_wasm/shape.cljs @@ -11,7 +11,6 @@ [app.common.transit :as t] [app.common.types.shape :as shape] [app.common.types.shape.layout :as ctl] - [app.common.uuid :as uuid] [app.render-wasm.api :as api] [beicon.v2.core :as rx] [clojure.core :as c]