From d0ad149e20f878ef0d25ccd2d3a4de3d7845d9c5 Mon Sep 17 00:00:00 2001 From: Andrey Fedorov Date: Tue, 10 Dec 2024 07:54:48 +0100 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20Add=20themes=20data=20to=20decoding?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- common/src/app/common/types/tokens_lib.cljc | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/common/src/app/common/types/tokens_lib.cljc b/common/src/app/common/types/tokens_lib.cljc index e9ecdfa84..23ce9dd08 100644 --- a/common/src/app/common/types/tokens_lib.cljc +++ b/common/src/app/common/types/tokens_lib.cljc @@ -902,6 +902,7 @@ When `before-set-name` is nil, move set to bottom") (decode-dtcg-json [_ parsed-json] (let [;; tokens-studio/plugin will add these meta properties, remove them for now sets-data (dissoc parsed-json "$themes" "$metadata") + themes-data (get parsed-json "$themes") lib (make-tokens-lib) lib' (reduce (fn [lib [set-name tokens]] @@ -909,7 +910,20 @@ When `before-set-name` is nil, move set to bottom") :name set-name :tokens (flatten-nested-tokens-json tokens "")))) lib sets-data)] - lib')) + (reduce + (fn [lib {:strs [name + group + description + is-source + modified-at + sets]}] + (add-theme lib (TokenTheme. name + group + description + is-source + (dt/parse-instant modified-at) + (set sets)))) + lib' themes-data))) (get-all-tokens [this] (reduce