 (ns afterglow.channels
   "Functions for modeling DMX channels"
   {:author "James Elliott"}
-  (:require [com.evocomputing.colors :as colors]))
+  (:require [afterglow.fixtures.qxf :refer [sanitize-name]]
+            [com.evocomputing.colors :as colors]))
 
 (defn channel
   "Creates a minimal channel specification, containing just the

      (map #(expand-function-spec [%1 %2]) start spec)
      (map-indexed (fn [index start]
                     (cond (string? spec)
                           (expand-function-spec [start (str spec "-" (inc index))])

                           (keyword? spec)
                           (expand-function-spec [start (keyword (str (name spec) "-" (inc index)))])

        (string? spec)
        {:start start
         :range :fixed
         :type (keyword (sanitize-name spec))
         :label spec}

        (nil? spec)
        {:start start
