class Playbook::PbTable::Table

def classname

def classname
  generate_classname(
    "pb_table", "table-#{size}", single_line_class, dark_class,
    disable_hover_class, container_class, data_table_class, sticky_class, sticky_left_column_class,
    sticky_right_column_class, collapse_class, vertical_border_class, striped_class, outer_padding_class,
    "table-responsive-#{responsive}", separator: " "
  )
end

def collapse_class

def collapse_class
  responsive != "none" ? "table-collapse-#{collapse}" : ""
end

def container_class

def container_class
  container ? "table-card" : nil
end

def dark_class

def dark_class
  dark ? "table-dark" : nil
end

def data_table_class

def data_table_class
  data_table ? "data_table" : nil
end

def disable_hover_class

def disable_hover_class
  disable_hover ? "no-hover" : nil
end

def outer_padding_class

def outer_padding_class
  if outer_padding.nil?
    outer_padding
  else
    space_css_name = outer_padding != "none" ? "space_" : ""
    outer_padding.present? ? "outer_padding_#{space_css_name}#{outer_padding}" : nil
  end
end

def responsive_classname

def responsive_classname
  responsive ? "table-responsive-#{responsive}" : nil
end

def single_line_class

def single_line_class
  single_line ? "single-line" : nil
end

def sticky_class

def sticky_class
  sticky ? "sticky-header" : nil
end

def sticky_left_column_class

def sticky_left_column_class
  if sticky_left_column.empty?
    nil
  else
    sticky_col_classname = "sticky-left-column sticky-left-columns-ids"
    sticky_left_column.each do |id|
      sticky_col_classname += "-#{id}"
    end
    sticky_col_classname
  end
end

def sticky_right_column_class

def sticky_right_column_class
  if sticky_right_column.empty?
    nil
  else
    sticky_col_classname = "sticky-right-column sticky-right-columns-ids"
    sticky_right_column.each do |id|
      sticky_col_classname += "-#{id}"
    end
    sticky_col_classname
  end
end

def striped_class

def striped_class
  striped ? "striped" : nil
end

def vertical_border_class

def vertical_border_class
  vertical_border ? "vertical-border" : nil
end