(ns metabase.xrays.automagic-dashboards.visualization-macros) | |
Expand visualization macro. | (defmulti expand-visualization (fn [card _ _] (-> card :visualization first))) |
(def ^:private ^:const ^Long smart-row-table-threshold 10) | |
(defmethod expand-visualization "smart-row" [card dimensions metrics] (let [[_display settings] (:visualization card)] (-> card (assoc :visualization (if (->> dimensions (keep #(get-in % [:fingerprint :global :distinct-count])) (apply max 0) (>= smart-row-table-threshold)) ["row" settings] ["table" (merge {:column_settings {(->> metrics first :op (format "[\"name\",\"%s\"]") keyword) {:show_mini_bar true}}} settings)])) (update :order_by #(or % [{(-> card :metrics first) "descending"}]))))) | |
(defmethod expand-visualization :default [card _ _] card) | |