         (update-in $ [:workspace-data :shapes] conj id))
       (assoc-in $ [:workspace-data :shapes-by-id id] shape))))
 
-(declare commit-shapes-changes)
 (declare select-shape)
 (declare recalculate-shape-canvas-relation)
 

(declare handle-pointer-send)
(declare handle-page-snapshot)
(declare shapes-changes-commited)

(s/def ::type keyword?)
(s/def ::message

  [operations]
  (s/assert ::cp/operations operations)
  (ptk/reify ::commit-shapes-changes
    ptk/UpdateEvent
    (update [_ state]
      (let [pid (get-in state [:workspace-local :page-id])
