mirror of
https://github.com/penpot/penpot.git
synced 2026-05-30 20:28:07 +00:00
⚡ Extract extract-id-from-event helper to deduplicate snapshot callbacks
Three callbacks in snapshot-entry* shared the same DOM extraction logic (get current target, read data-id, parse UUID). Extracted into a private defn- to remove the duplication and simplify each callback.
This commit is contained in:
parent
17b217cfb4
commit
604edb83eb
@ -81,6 +81,10 @@
|
|||||||
[event]
|
[event]
|
||||||
(dom/select-text! (dom/get-target event)))
|
(dom/select-text! (dom/get-target event)))
|
||||||
|
|
||||||
|
(defn- extract-id-from-event
|
||||||
|
[event]
|
||||||
|
(-> event dom/get-current-target (dom/get-data "id") uuid/parse))
|
||||||
|
|
||||||
(mf/defc version-entry*
|
(mf/defc version-entry*
|
||||||
{::mf/private true}
|
{::mf/private true}
|
||||||
[{:keys [entry current-profile on-preview on-restore on-delete on-rename on-lock on-unlock on-edit on-cancel-edit is-editing]}]
|
[{:keys [entry current-profile on-preview on-restore on-delete on-rename on-lock on-unlock on-edit on-cancel-edit is-editing]}]
|
||||||
@ -225,34 +229,22 @@
|
|||||||
(mf/use-fn
|
(mf/use-fn
|
||||||
(mf/deps on-pin-snapshot)
|
(mf/deps on-pin-snapshot)
|
||||||
(fn [event]
|
(fn [event]
|
||||||
(let [node (dom/get-current-target event)
|
(when (fn? on-pin-snapshot)
|
||||||
id (-> node
|
(on-pin-snapshot (extract-id-from-event event) event))))
|
||||||
(dom/get-data "id")
|
|
||||||
(uuid/parse))]
|
|
||||||
(when (fn? on-pin-snapshot)
|
|
||||||
(on-pin-snapshot id event)))))
|
|
||||||
|
|
||||||
on-restore-snapshot
|
on-restore-snapshot
|
||||||
(mf/use-fn
|
(mf/use-fn
|
||||||
(mf/deps on-restore-snapshot)
|
(mf/deps on-restore-snapshot)
|
||||||
(fn [event]
|
(fn [event]
|
||||||
(let [node (dom/get-current-target event)
|
(when (fn? on-restore-snapshot)
|
||||||
id (-> node
|
(on-restore-snapshot (extract-id-from-event event) event))))
|
||||||
(dom/get-data "id")
|
|
||||||
(uuid/parse))]
|
|
||||||
(when (fn? on-restore-snapshot)
|
|
||||||
(on-restore-snapshot id event)))))
|
|
||||||
|
|
||||||
on-preview-snapshot
|
on-preview-snapshot
|
||||||
(mf/use-fn
|
(mf/use-fn
|
||||||
(mf/deps on-preview-snapshot)
|
(mf/deps on-preview-snapshot)
|
||||||
(fn [event]
|
(fn [event]
|
||||||
(let [node (dom/get-current-target event)
|
(when (fn? on-preview-snapshot)
|
||||||
id (-> node
|
(on-preview-snapshot (extract-id-from-event event) event))))
|
||||||
(dom/get-data "id")
|
|
||||||
(uuid/parse))]
|
|
||||||
(when (fn? on-preview-snapshot)
|
|
||||||
(on-preview-snapshot id event)))))
|
|
||||||
|
|
||||||
on-open-snapshot-menu
|
on-open-snapshot-menu
|
||||||
(mf/use-fn
|
(mf/use-fn
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user