Sha256: 8e78fd7d8082082d78bb61a515c5518296b9b88195131b3926b45ca9166f33fc
Contents?: true
Size: 974 Bytes
Versions: 1
Compression:
Stored size: 974 Bytes
Contents
class Tabled class Helpers # Calculates columns size def self.calculate_columns_width(data) columns_width = [] data.each do |row| row_without_params = row[0..-2] row_without_params.each_with_index { |column, index| is_column_last = row_without_params.count == index + 1 if is_column_last possible_new_value = [row.last.fetch(:footer, '').to_s.size, column.to_s.size].sort.last columns_width[index] = possible_new_value if possible_new_value > (columns_width[index] || 0) else columns_width[index] = column.to_s.size if column.to_s.size > (columns_width[index] || 0) end } end columns_width.map { |column_width| column_width + 1 } end # Add hash as a last element of the row def self.convert_to_required_structure(data) data.map { |row| row << {} unless row.last.is_a?(Hash) row } end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
tabled-0.0.2 | lib/helpers.rb |