;; This Source Code Form is subject to the terms of the Mozilla Public ;; License, v. 2.0. If a copy of the MPL was not distributed with this ;; file, You can obtain one at http://mozilla.org/MPL/2.0/. ;; ;; Copyright (c) KALEIDOS INC (ns app.main.data.workspace.highlight (:require [app.common.data.macros :as dm] [clojure.set :as set] [potok.v2.core :as ptk])) ;; --- Manage shape's highlight status (defn highlight-shape [id] (dm/assert! (uuid? id)) (ptk/reify ::highlight-shape ptk/UpdateEvent (update [_ state] (update-in state [:workspace-local :highlighted] set/union #{id})))) (defn dehighlight-shape [id] (dm/assert! (uuid? id)) (ptk/reify ::dehighlight-shape ptk/UpdateEvent (update [_ state] (update-in state [:workspace-local :highlighted] disj id))))