0
Fork 0
mirror of https://github.com/penpot/penpot.git synced 2025-02-12 10:09:03 -05:00

Fix iterating over unordered sets

This commit is contained in:
Florian Schroedl 2024-08-27 10:20:38 +02:00
parent 965016b63f
commit db22beb857
4 changed files with 12 additions and 5 deletions

View file

@ -259,10 +259,10 @@
(def workspace-ordered-token-themes
(l/derived wtts/get-workspace-ordered-themes st/state))
(def workspace-token-sets
(def workspace-ordered-token-sets
(l/derived
(fn [data]
(or (wtts/get-workspace-sets data) {}))
(or (wtts/get-workspace-ordered-sets data) {}))
st/state
=))

View file

@ -182,7 +182,7 @@
(mf/defc controlled-edit-theme
[{:keys [state set-state]}]
(let [{:keys [theme-id]} @state
token-sets (mf/deref refs/workspace-token-sets)
token-sets (mf/deref refs/workspace-ordered-token-sets)
theme (mf/deref (refs/workspace-token-theme theme-id))]
[:& edit-theme
{:token-sets token-sets
@ -192,7 +192,7 @@
(mf/defc create-theme
[{:keys [set-state]}]
(let [token-sets (mf/deref refs/workspace-token-sets)
(let [token-sets (mf/deref refs/workspace-ordered-token-sets)
theme {:name "Theme" :sets #{}}]
[:& edit-theme
{:token-sets token-sets

View file

@ -135,7 +135,7 @@
(mf/defc sets-list
[{:keys []}]
(let [token-sets (mf/deref refs/workspace-token-sets)
(let [token-sets (mf/deref refs/workspace-ordered-token-sets)
selected-token-set-id (mf/deref refs/workspace-selected-token-set-id)
token-set-selected? (mf/use-callback
(mf/deps selected-token-set-id)

View file

@ -115,6 +115,13 @@
(defn get-workspace-sets [state]
(get-in state [:workspace-data :token-sets-index]))
(defn get-workspace-ordered-sets [state]
;; TODO Include groups
(let [top-level-set-ids (get-in state [:workspace-data :token-set-groups])
token-sets (get-workspace-sets state)]
(->> (map (fn [id] [id (get token-sets id)]) top-level-set-ids)
(into (ordered-map)))))
(defn get-token-set [set-id state]
(some-> (get-workspace-sets state)
(get set-id)))