0
Fork 0
mirror of https://github.com/penpot/penpot.git synced 2025-03-12 07:41:43 -05:00

🐛 Fix incorrect type handling on group operation.

And improve specs related to group attrs.
This commit is contained in:
Andrey Antukh 2020-11-13 11:46:57 +01:00 committed by Alonso Torres
parent 388d255243
commit 48663eacdc
3 changed files with 18 additions and 15 deletions

View file

@ -262,10 +262,13 @@
:internal.shape/height]))
(s/def :internal.shape/point
(s/keys :req-un [:internal.shape/x :internal.shape/y]))
(s/and (s/keys :req-un [:internal.shape/x :internal.shape/y]) gpt/point?))
(s/def :internal.shape/points
(s/coll-of :internal.shape/point :kind vector?))
(s/every :internal.shape/point :kind vector?))
(s/def :internal.shape/shapes
(s/every uuid? :kind vector?))
(s/def ::shape-attrs
(s/keys :opt-un [:internal.shape/blocked
@ -292,6 +295,7 @@
:internal.shape/x
:internal.shape/y
:internal.shape/exports
:internal.shape/shapes
:internal.shape/stroke-color
:internal.shape/stroke-color-ref-file
:internal.shape/stroke-color-ref-id
@ -475,7 +479,7 @@
(s/keys :req-un [::page-id :internal.changes.reg-objects/shapes]))
(defmethod change-spec :mov-objects [_]
(s/keys :req-un [::page-id ::parent-id ::shapes]
(s/keys :req-un [::page-id ::parent-id :internal.shape/shapes]
:opt-un [::index]))
(defmethod change-spec :add-page [_]

View file

@ -1479,8 +1479,7 @@
selected (get-in state [:workspace-local :selected])
shapes (dws/shapes-for-grouping objects selected)]
(when-not (empty? shapes)
(let [[group rchanges uchanges]
(dws/prepare-create-group page-id shapes "Group-" false)]
(let [[group rchanges uchanges] (dws/prepare-create-group page-id shapes "Group-" false)]
(rx/of (dwc/commit-changes rchanges uchanges {:commit-local? true})
(dws/select-shapes (d/ordered-set (:id group))))))))))

View file

@ -202,7 +202,7 @@
(name (gensym prefix)))]
(-> (cp/make-minimal-group frame-id selrect group-name)
(geom/setup selrect)
(assoc :shapes (map :id shapes)))))
(assoc :shapes (mapv :id shapes)))))
(defn prepare-create-group
[page-id shapes prefix keep-name]
@ -217,15 +217,15 @@
{:type :mov-objects
:page-id page-id
:parent-id (:id group)
:shapes (map :id shapes)}]
:shapes (mapv :id shapes)}]
uchanges (conj
(map (fn [obj] {:type :mov-objects
:page-id page-id
:parent-id (:parent-id obj)
:index (::index obj)
:shapes [(:id obj)]})
shapes)
(mapv (fn [obj] {:type :mov-objects
:page-id page-id
:parent-id (:parent-id obj)
:index (::index obj)
:shapes [(:id obj)]})
shapes)
{:type :del-obj
:id (:id group)
:page-id page-id})]