table_pal 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 48767bd03cc5c790c74a94af5e6aa8543f67685b3f241d5de639786edc24f09d
4
- data.tar.gz: 59ccde4f78da37851987b132e86d245b04dd798499615efd3fdb97359e26e05d
3
+ metadata.gz: f81c508e3e0a0d2044c6cb2742b8f512128427b044c19b8dcf418ff90b0ed92c
4
+ data.tar.gz: 0abc768ae7bc5ab6a7947f3d825eea34292c2ab6fbd3997b4b469e8d2006412e
5
5
  SHA512:
6
- metadata.gz: 80e74c7849b253a12fe954ed950efd98d3889a7e0d47c4e47b3302c159042f11731ed22378978a9e000461ac32568d1f5943653568bde62d407362be89866811
7
- data.tar.gz: 97802a7e8f6855f7f1ef3612c018a27a4dae7d628b32b0db51dbb29f52c6775587e946dc4435fd645c05855b9276c083ab925fc1484d1ceda4ad02a67b8a3b81
6
+ metadata.gz: 1ca3403f46af6166dc8a2d91fb41e78b7b551fceaddd5299b51560bd861803ab96f26256339449fa027c6a20b62658e3f260766b6b19a329c32803f5c3d514db
7
+ data.tar.gz: '09fc643fa26f0175eb752b80cb687ddfd60f2c71d99c221163134c9388da40a31e7fad8758b76562edcf4331de41139895fd8c748e4c09e294c100bee5a24eac'
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- table_pal (0.2.1)
4
+ table_pal (0.2.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -14,9 +14,39 @@ module TablePal
14
14
  private
15
15
 
16
16
  def print_row(row)
17
+ if row.heading
18
+ print_heading_row(row)
19
+ elsif row.subheading
20
+ print_subheading_row(row)
21
+ elsif row.section_end
22
+ print_section_end_row(row)
23
+ else
24
+ print_regular_row(row)
25
+ end
26
+ end
27
+
28
+ def print_heading_row(row)
29
+ print_cells(row)
30
+ puts
31
+ underline
32
+ empty
33
+ end
34
+
35
+ def print_subheading_row(row)
36
+ print_cells(row)
37
+ puts
38
+ empty
39
+ end
40
+
41
+ def print_section_end_row(row)
42
+ print_cells(row)
43
+ puts
44
+ empty
45
+ end
46
+
47
+ def print_regular_row(row)
17
48
  print_cells(row)
18
49
  puts
19
- underline if row.heading
20
50
  end
21
51
 
22
52
  def print_cells(row)
@@ -46,5 +76,18 @@ module TablePal
46
76
  puts
47
77
  end
48
78
 
79
+ def empty
80
+ table.columns.map do |column|
81
+ char = ' '
82
+ print column.left_border
83
+ print column.left_padding_char(char)
84
+ print char * column.width
85
+ print column.right_padding_char(char)
86
+ print column.right_border
87
+ end
88
+
89
+ puts
90
+ end
91
+
49
92
  end
50
93
  end
data/lib/row.rb CHANGED
@@ -1,13 +1,14 @@
1
1
  module TablePal
2
2
  class Row
3
3
 
4
- attr_reader :table, :formatter, :heading, :subheading, :justification, :colour
4
+ attr_reader :table, :formatter, :heading, :subheading, :section_end, :justification, :colour
5
5
 
6
- def initialize(table:, formatter: nil, heading: false, subheading: false, justification: nil, colour: nil)
6
+ def initialize(table:, formatter: nil, heading: false, subheading: false, section_end: false, justification: nil, colour: nil)
7
7
  @table = table
8
8
  @formatter = formatter
9
9
  @heading = heading
10
10
  @subheading = subheading
11
+ @section_end = section_end
11
12
  @justification = justification
12
13
  @colour = colour
13
14
  end
data/lib/validate.rb CHANGED
@@ -24,7 +24,8 @@ module TablePal
24
24
  when :right_border then validate(key: key, value: value, classes: [String, NilClass])
25
25
  when :right_padding then validate(key: key, value: value, classes: String)
26
26
  when :row then validate(key: key, value: value, classes: Row)
27
- when :subheading then validate(key: key, value: value, classes: [TrueClass])
27
+ when :subheading then validate(key: key, value: value, classes: [TrueClass, FalseClass])
28
+ when :section_end then validate(key: key, value: value, classes: [TrueClass, FalseClass])
28
29
  else raise TablePalError, "#{class_method} received Unexpected option: `#{key}`"
29
30
  end
30
31
  end
data/lib/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module TablePal
2
- VERSION = '0.2.0'
2
+ VERSION = '0.3.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: table_pal
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sean Lerner
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-11-03 00:00:00.000000000 Z
11
+ date: 2019-11-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: interesting_methods