diff --git a/frontend/src/app/libs/file_builder.cljs b/frontend/src/app/libs/file_builder.cljs index 21891bcdc..63df0eb87 100644 --- a/frontend/src/app/libs/file_builder.cljs +++ b/frontend/src/app/libs/file_builder.cljs @@ -273,12 +273,5 @@ (binding [cfeat/*current* cfeat/default-features] (File. (fb/create-file name)))) -(defn export-tokens-file [tokens-json] - (let [file-name "tokens.json" - file-content (json/encode-tokens tokens-json) - blob (wapi/create-blob (clj->js file-content) "application/json")] - (dom/trigger-download file-name blob))) - (defn exports [] - #js {:createFile create-file-export - :exportTokens export-tokens-file}) + #js {:createFile create-file-export}) diff --git a/frontend/src/app/main/ui/workspace/tokens/core.cljs b/frontend/src/app/main/ui/workspace/tokens/core.cljs index 9a68f70ea..ead2f8ec7 100644 --- a/frontend/src/app/main/ui/workspace/tokens/core.cljs +++ b/frontend/src/app/main/ui/workspace/tokens/core.cljs @@ -18,6 +18,8 @@ [app.main.refs :as refs] [app.main.store :as st] [app.main.ui.workspace.tokens.style-dictionary :as sd] + [app.util.dom :as dom] + [app.util.webapi :as wapi] [promesa.core :as p])) ;; Helpers --------------------------------------------------------------------- @@ -131,6 +133,18 @@ (dwsl/update-layout [shape-id] layout-update))))) ;; JSON export functions ------------------------------------------------------- +(defn encode-tokens + [data] + (-> data + (clj->js) + (js/JSON.stringify nil 2))) + +(defn export-tokens-file [tokens-json] + (let [file-name "tokens.json" + file-content (encode-tokens tokens-json) + blob (wapi/create-blob (clj->js file-content) "application/json")] + (dom/trigger-download file-name blob))) + (defn transform-tokens-into-json-format [tokens] (let [grouped-tokens (group-by (comp keyword :type second) tokens) map-token (fn [[_ token]] @@ -147,7 +161,7 @@ (defn download-tokens-as-json [] (let [all-tokens (deref refs/workspace-tokens) transformed-tokens-json (transform-tokens-into-json-format all-tokens)] - (fb/export-tokens-file transformed-tokens-json))) + (export-tokens-file transformed-tokens-json))) ;; Token types ----------------------------------------------------------------- diff --git a/frontend/src/app/util/json.cljs b/frontend/src/app/util/json.cljs index 1cf3f21bd..536d29e15 100644 --- a/frontend/src/app/util/json.cljs +++ b/frontend/src/app/util/json.cljs @@ -17,9 +17,3 @@ (-> data (clj->js) (js/JSON.stringify))) - -(defn encode-tokens - [data] - (-> data - (clj->js) - (js/JSON.stringify nil 2)))