utils.cljs 460 B

1234567891011121314151617181920
  1. (ns microtables-frontend.utils)
  2. (defn highest [dir data] (apply max (map dir data)))
  3. (defn increment-letter-code [s]
  4. (let [l (last s)]
  5. (cond
  6. (empty? s) [65]
  7. (= l 90) (conj (increment-letter-code (subvec s 0 (dec (count s)))) 65)
  8. :else (conj (subvec s 0 (dec (count s))) (inc l)))))
  9. (defn next-letter [lc]
  10. (apply str (map char (increment-letter-code (mapv #(.charCodeAt % 0) lc)))))
  11. (def col-letters (iterate next-letter "A"))