From ff6b7f57c093aa251b1fec1998700552345828ea Mon Sep 17 00:00:00 2001 From: Eva Marco Date: Thu, 11 Jun 2026 16:44:20 +0200 Subject: [PATCH] :zap: Add memo to constraits component --- .../sidebar/options/menus/constraints.cljs | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/frontend/src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs b/frontend/src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs index a2ab42aee8..0e89cb166c 100644 --- a/frontend/src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs +++ b/frontend/src/app/main/ui/workspace/sidebar/options/menus/constraints.cljs @@ -28,7 +28,33 @@ :parent-id :frame-id]) +(defn- check-constraints-menu-props + [old-props new-props] + (let [old-values (unchecked-get old-props "values") + new-values (unchecked-get new-props "values")] + (and (identical? (unchecked-get old-props "ids") + (unchecked-get new-props "ids")) + (identical? (get old-values :constraints-h) + (get new-values :constraints-h)) + (identical? (get old-values :constraints-v) + (get new-values :constraints-v)) + (identical? (get old-values :fixed-scroll) + (get new-values :fixed-scroll)) + (identical? (get old-values :parent-id) + (get new-values :parent-id)) + (identical? (get old-values :frame-id) + (get new-values :frame-id)) + (identical? (get old-values :x) + (get new-values :x)) + (identical? (get old-values :y) + (get new-values :y)) + (identical? (get old-values :width) + (get new-values :width)) + (identical? (get old-values :height) + (get new-values :height))))) + (mf/defc constraints-menu* + {::mf/wrap [#(mf/memo' % check-constraints-menu-props)]} [{:keys [ids values] :as props}] (let [state* (mf/use-state true) open? (deref state*)