Move data.colors under workspace namespace.

This commit is contained in:
Andrey Antukh 2021-04-15 15:30:04 +02:00 committed by Andrés Moya
parent 874378869d
commit e4d4245b6c
19 changed files with 72 additions and 81 deletions

View file

@ -6,7 +6,7 @@
(ns app.main.data.shortcuts
(:require
[app.main.data.colors :as mdc]
[app.main.data.workspace.colors :as mdc]
[app.main.data.workspace.transforms :as dwt]
[app.main.store :as st]
[app.util.dom :as dom]

View file

@ -7,7 +7,7 @@
(ns app.main.data.viewer.shortcuts
(:require
[app.config :as cfg]
[app.main.data.colors :as mdc]
[app.main.data.workspace.colors :as mdc]
[app.main.data.shortcuts :as ds]
[app.main.data.shortcuts :refer [c-mod]]
[app.main.data.viewer :as dv]

View file

@ -20,7 +20,7 @@
[app.common.uuid :as uuid]
[app.config :as cfg]
[app.main.constants :as c]
[app.main.data.colors :as mdc]
[app.main.data.workspace.colors :as mdc]
[app.main.data.messages :as dm]
[app.main.data.workspace.common :as dwc]
[app.main.data.workspace.drawing :as dwd]

View file

@ -4,7 +4,7 @@
;;
;; Copyright (c) UXBOX Labs SL
(ns app.main.data.colors
(ns app.main.data.workspace.colors
(:require
[app.common.data :as d]
[app.common.pages :as cp]
@ -38,8 +38,7 @@
(ptk/reify ::rename-color
ptk/WatchEvent
(watch [_ state stream]
(->> (rp/mutation! :rename-color {:id color-id
:name name})
(->> (rp/mutation! :rename-color {:id color-id :name name})
(rx/map (partial rename-color-result file-id))))))
(defn rename-color-result
@ -101,8 +100,7 @@
ptk/UpdateEvent
(update [_ state]
(-> state
(update :workspace-local dissoc :picked-color-select)
(update :workspace-local dissoc :picked-shift?)
(update :workspace-local dissoc :picked-color-select :picked-shift?)
(assoc-in [:workspace-local :picking-color?] false)))))
(defn pick-color
@ -123,13 +121,13 @@
(assoc-in [:workspace-local :picked-shift?] shift?)))))
(defn change-fill
([ids color]
[ids color]
(ptk/reify ::change-fill
ptk/WatchEvent
(watch [_ state s]
(let [pid (:current-page-id state)
objects (get-in state [:workspace-data :pages-index pid :objects])
not-frame (fn [shape-id] (not= (get-in objects [shape-id :type]) :frame))
(let [page-id (:current-page-id state)
objects (dwc/lookup-page-objects state page-id)
is-text? #(= :text (:type (get objects %)))
text-ids (filter is-text? ids)
shape-ids (filter (comp not is-text?) ids)
@ -148,27 +146,21 @@
(assoc :fill-color-gradient (:gradient color))
(contains? color :opacity)
(assoc :fill-opacity (:opacity color)))
(assoc :fill-opacity (:opacity color)))]
update-fn (fn [shape] (merge shape attrs))
editors (get-in state [:workspace-local :editors])
reduce-fn (fn [state id]
(update-in state [:workspace-data :pages-index pid :objects id] update-fn))]
(rx/from (conj
(map #(dwt/update-text-attrs {:id % :editor (get editors %) :attrs attrs}) text-ids)
(dwc/update-shapes shape-ids update-fn))))))))
(rx/concat
(rx/from (map #(dwt/update-text-attrs {:id % :attrs attrs}) text-ids))
(rx/of (dwc/update-shapes shape-ids (fn [shape] (d/merge shape attrs)))))))))
(defn change-stroke
[ids color]
(ptk/reify ::change-stroke
ptk/WatchEvent
(watch [_ state s]
(let [pid (:current-page-id state)
objects (get-in state [:workspace-data :pages-index pid :objects])
not-frame (fn [shape-id] (not= (get-in objects [shape-id :type]) :frame))
(let [page-id (:current-page-id state)
objects (dwc/lookup-page-objects state page-id)
color-attrs (cond-> {}
attrs (cond-> {}
(contains? color :color)
(assoc :stroke-color (:color color))
@ -182,16 +174,15 @@
(assoc :stroke-color-gradient (:gradient color))
(contains? color :opacity)
(assoc :stroke-opacity (:opacity color)))
(assoc :stroke-opacity (:opacity color)))]
update-fn (fn [shape]
(-> shape
(merge color-attrs)
(cond-> (= (:stroke-style s) :none)
(rx/of (dwc/update-shapes ids (fn [shape]
(cond-> (d/merge shape attrs)
(= (:stroke-style shape) :none)
(assoc :stroke-style :solid
:stroke-width 1
:stroke-opacity 1))))]
(rx/of (dwc/update-shapes ids update-fn))))))
:stroke-opacity 1)))))))))
(defn picker-for-selected-shape
[]
@ -200,10 +191,10 @@
ptk/WatchEvent
(watch [_ state stream]
(let [ids (get-in state [:workspace-local :selected])
stop? (->> stream
(rx/filter (ptk/type? ::stop-picker)))
stop? (rx/filter (ptk/type? ::stop-picker) stream)
update-events (fn [[color shift?]]
update-events
(fn [[color shift?]]
(rx/of (if shift?
(change-stroke ids color)
(change-fill ids color))

View file

@ -7,7 +7,7 @@
(ns app.main.data.workspace.shortcuts
(:require
[app.config :as cfg]
[app.main.data.colors :as mdc]
[app.main.data.workspace.colors :as mdc]
[app.main.data.shortcuts :as ds]
[app.main.data.workspace :as dw]
[app.main.data.workspace.common :as dwc]

View file

@ -7,7 +7,7 @@
(ns app.main.ui.workspace.colorpalette
(:require
[app.common.math :as mth]
[app.main.data.colors :as mdc]
[app.main.data.workspace.colors :as mdc]
[app.main.data.workspace :as udw]
[app.main.refs :as refs]
[app.main.store :as st]

View file

@ -18,7 +18,7 @@
[app.main.store :as st]
[app.main.refs :as refs]
[app.main.data.workspace.libraries :as dwl]
[app.main.data.colors :as dc]
[app.main.data.workspace.colors :as dc]
[app.main.data.modal :as modal]
[app.main.ui.icons :as i]
[app.util.i18n :as i18n :refer [t]]

View file

@ -18,7 +18,7 @@
[app.main.store :as st]
[app.main.refs :as refs]
[app.main.data.workspace.libraries :as dwl]
[app.main.data.colors :as dc]
[app.main.data.workspace.colors :as dc]
[app.main.data.modal :as modal]
[app.main.ui.icons :as i]
[app.util.i18n :as i18n :refer [t]]))

View file

@ -18,7 +18,7 @@
[app.main.store :as st]
[app.main.refs :as refs]
[app.main.data.workspace.libraries :as dwl]
[app.main.data.colors :as dc]
[app.main.data.workspace.colors :as dc]
[app.main.data.modal :as modal]
[app.main.ui.icons :as i]
[app.util.i18n :as i18n :refer [t]]))

View file

@ -18,7 +18,7 @@
[app.main.store :as st]
[app.main.refs :as refs]
[app.main.data.workspace.libraries :as dwl]
[app.main.data.colors :as dc]
[app.main.data.workspace.colors :as dc]
[app.main.data.modal :as modal]
[app.main.ui.icons :as i]
[app.util.i18n :as i18n :refer [t]]

View file

@ -18,7 +18,7 @@
[app.main.store :as st]
[app.main.refs :as refs]
[app.main.data.workspace.libraries :as dwl]
[app.main.data.colors :as dc]
[app.main.data.workspace.colors :as dc]
[app.main.data.modal :as modal]
[app.main.ui.icons :as i]
[app.util.i18n :as i18n :refer [t]]

View file

@ -18,7 +18,7 @@
[app.main.store :as st]
[app.main.refs :as refs]
[app.main.data.workspace.libraries :as dwl]
[app.main.data.colors :as dc]
[app.main.data.workspace.colors :as dc]
[app.main.data.modal :as modal]
[app.main.ui.icons :as i]
[app.util.i18n :as i18n :refer [t]]

View file

@ -18,7 +18,7 @@
[app.main.store :as st]
[app.main.refs :as refs]
[app.main.data.workspace.libraries :as dwl]
[app.main.data.colors :as dc]
[app.main.data.workspace.colors :as dc]
[app.main.data.modal :as modal]
[app.main.ui.icons :as i]
[app.util.i18n :as i18n :refer [t]]

View file

@ -18,7 +18,7 @@
[app.main.store :as st]
[app.main.refs :as refs]
[app.main.data.workspace.libraries :as dwl]
[app.main.data.colors :as dc]
[app.main.data.workspace.colors :as dc]
[app.main.data.modal :as modal]
[app.main.ui.icons :as i]
[app.util.i18n :as i18n :refer [t]]))

View file

@ -15,7 +15,7 @@
[app.common.text :as txt]
[app.common.uuid :as uuid]
[app.config :as cfg]
[app.main.data.colors :as dc]
[app.main.data.workspace.colors :as dc]
[app.main.data.modal :as modal]
[app.main.data.workspace :as dw]
[app.main.data.workspace.common :as dwc]

View file

@ -7,7 +7,7 @@
(ns app.main.ui.workspace.sidebar.options.menus.fill
(:require
[app.common.pages :as cp]
[app.main.data.colors :as dc]
[app.main.data.workspace.colors :as dc]
[app.main.data.workspace.common :as dwc]
[app.main.data.workspace.texts :as dwt]
[app.main.refs :as refs]

View file

@ -11,7 +11,7 @@
[app.common.data :as d]
[app.common.math :as math]
[app.main.data.workspace.common :as dwc]
[app.main.data.colors :as dc]
[app.main.data.workspace.colors :as dc]
[app.main.store :as st]
[app.main.ui.icons :as i]
[app.main.ui.workspace.sidebar.options.rows.color-row :refer [color-row]]

View file

@ -21,7 +21,7 @@
[app.main.streams :as ms]
[app.main.data.modal :as modal]
[app.main.data.workspace.common :as dwc]
[app.main.data.colors :as dc]))
[app.main.data.workspace.colors :as dc]))
(def gradient-line-stroke-width 2)
(def gradient-line-stroke-color "white")

View file

@ -7,7 +7,7 @@
(ns app.main.ui.workspace.viewport.pixel-overlay
(:require
[app.common.uuid :as uuid]
[app.main.data.colors :as dwc]
[app.main.data.workspace.colors :as dwc]
[app.main.data.modal :as modal]
[app.main.refs :as refs]
[app.main.store :as st]