 
 
 (def ^:private column-drag-margin 11)
+(def ^:private minimum-column-size 16)
 
 
 (defn- header [{:keys [joined-columns sort-column sort-order set-sort style

      (when (:dragging? @state)
        (let [{:keys [update-column-display column-display]} props
              {:keys [drag-column]} @state
              {:keys [start-mouse-x start-width]} @locals
              delta-x (- (.-clientX e) start-mouse-x)
              new-width (max (+ start-width delta-x) 10)]
          (update-column-display (assoc-in column-display [drag-column :width] new-width)))))}
   (utils/with-window-listeners
    {"mousemove"
     (fn [{:keys [this]} e]

                                          :column-display (:column-display props)
                                          :table-behavior (:behavior props)})
            start-column-drag
            (fn [{:keys [e index]}]
              (swap! locals assoc
                     :next-column-index (when (.-shiftKey e)
                                          (some->> (map vector (range) joined-columns)
                                                   (drop (inc index))
                                                   (filter (comp :resizable? val))
                                                   first key))
                     :mouse-x (.-clientX e))
              (swap! state assoc
                     :dragging? true :drag-column index
                     :saved-user-select-state (common/disable-text-selection)))
