(ns token-tests.helpers.tokens (:require [app.common.test-helpers.ids-map :as thi] [app.main.ui.workspace.tokens.token :as wtt])) (defn add-token [state label params] (let [id (thi/new-id! label) token (assoc params :id id)] (update-in state [:data :tokens] assoc id token))) (defn get-token [file label] (let [id (thi/id label)] (get-in file [:data :tokens id]))) (defn apply-token-to-shape [file shape-label token-label attributes] (let [first-page-id (get-in file [:data :pages 0]) shape-id (thi/id shape-label) token (get-token file token-label) applied-attributes (wtt/attributes-map attributes token)] (update-in file [:data :pages-index first-page-id :objects shape-id :applied-tokens] merge applied-attributes)))