table_cloth 0.4.2 → 0.4.3

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
  SHA1:
3
- metadata.gz: c65717cdebdb8f49b10674b75af93e3cd71c8945
4
- data.tar.gz: bd39e2f924ee24b1c15e0c8e630a272d6421777b
3
+ metadata.gz: 4809a8ece14084a111f90b54211e33a3c167f88a
4
+ data.tar.gz: f37ebf4590be9b93002eced4c2d4675381026f1d
5
5
  SHA512:
6
- metadata.gz: d3a70578873d04a792e101ad3e0c1616130ad5fe02ddf7002326c7b5aa257771b408c477603b600deda630099c51e79b139738e4b5646b0704327b9313b90a37
7
- data.tar.gz: 150e1d3e2545e159f90f4852447caa4d14c22120b3c0d252ea77be1ef4876e4f618693dea9a66697ce83ac95f730835be65bf55a059cdd6899237294edd02658
6
+ metadata.gz: 058443b491f93508d4ed716cf3983ebd0b25f3c942f1ccad497f53e8c1e4ec678204cbe5f9391a52b3494167a8d33ba10e4f5f886896a805779de31e34af07c1
7
+ data.tar.gz: 2387a00d2246a57038d3c6d24f355e08ddf651bfdd9f0b58c27e7fc2e7dd5d82aad5331f2daf2bbffc410d56c85dcf15f9fe04050075268ab5e8e1bd29202def
data/README.md CHANGED
@@ -92,7 +92,7 @@ You can create your own column by making a class that responds to ```.value(obje
92
92
 
93
93
  ```ruby
94
94
  class ImageColumn < TableCloth::Column
95
- def value(object, view)
95
+ def value(object, view, table)
96
96
  view.raw(view.image_tag(object.image_url))
97
97
  end
98
98
  end
@@ -107,6 +107,44 @@ In your table:
107
107
  <% end %>
108
108
  ```
109
109
 
110
+ ## Rows
111
+
112
+ You can add HTML attributes to all rows by passing in a hash.
113
+
114
+ ```ruby
115
+ class UserTable < DefaultTable
116
+ row_attributes class: "danger", name: "user-table-row"
117
+
118
+ column :name
119
+ end
120
+ ```
121
+ Which would render something like
122
+
123
+ ```html
124
+ <tr class="danger" name="user-table-row"><td>dangerous-john</td></tr>
125
+ <tr class="danger" name="user-table-row"><td>totally-safe-bridgette</td></tr>
126
+ ```
127
+
128
+ Or you can generate attributes for each row by passing in a block that is evaluated each time a row is created. This block must return a hash of attributes.
129
+
130
+ ```ruby
131
+ class UserTable < DefaultTable
132
+ row_attributes do |user|
133
+ css_class = user.is_dangerous? ? "danger" : ""
134
+ {class: css_class, name: "#{user.name}-row"}
135
+ end
136
+
137
+ column :name
138
+ end
139
+ ```
140
+
141
+ which would render something like
142
+
143
+ ```html
144
+ <tr class="danger" name="dangerous-john-row"><td>dangerous-john</td></tr>
145
+ <tr class="" name="totally-safe-bridgette-row"><td>totally-safe-bridgette</td></tr>
146
+ ```
147
+
110
148
  ## Actions
111
149
 
112
150
  A lot of tables have an actions column to give you the full CRUD effect. They can be painful but Table Cloth incorporates a way to easily add them to your definition:
@@ -19,6 +19,7 @@ module TableCloth
19
19
 
20
20
  module Extensions
21
21
  autoload :Actions, "table_cloth/extensions/actions"
22
+ autoload :RowAttributes, "table_cloth/extensions/row_attributes"
22
23
  end
23
24
 
24
25
  class << self
@@ -33,4 +34,4 @@ TableCloth::Base.presenter(TableCloth::Presenters::Default)
33
34
 
34
35
  ActiveSupport.on_load(:action_view) do
35
36
  include TableCloth::ActionViewExtension
36
- end
37
+ end
@@ -1,6 +1,7 @@
1
1
  module TableCloth
2
2
  class Base
3
3
  include TableCloth::Extensions::Actions
4
+ include TableCloth::Extensions::RowAttributes
4
5
 
5
6
  NoPresenterError = Class.new(Exception)
6
7
 
@@ -10,12 +10,12 @@ module TableCloth::Extensions::Actions
10
10
  @jury ||= Jury.new(self)
11
11
  end
12
12
 
13
- def value(object, view)
14
- if jury.available?(object)
13
+ def value(object, view, table)
14
+ if jury.available?(object, table)
15
15
  view.instance_exec(object, &options[:proc])
16
16
  else
17
17
  ""
18
18
  end
19
19
  end
20
20
  end
21
- end
21
+ end
@@ -2,7 +2,7 @@ module TableCloth::Extensions::Actions
2
2
  class Column < ::TableCloth::Column
3
3
  def value(object, view, table=nil)
4
4
  actions = action_collection.actions.map do |action|
5
- action.value(object, view)
5
+ action.value(object, view, table)
6
6
  end
7
7
 
8
8
  view.raw(actions.join(separator))
@@ -18,4 +18,4 @@ module TableCloth::Extensions::Actions
18
18
  @action_collection ||= options[:collection]
19
19
  end
20
20
  end
21
- end
21
+ end
@@ -6,19 +6,19 @@ module TableCloth::Extensions::Actions
6
6
  @action = action
7
7
  end
8
8
 
9
- def available?(object)
9
+ def available?(object, table)
10
10
  case action_if
11
11
  when Proc
12
12
  return !!action_if.call(object)
13
13
  when Symbol
14
- return !!object.send(action_if)
14
+ return !!table.send(action_if)
15
15
  end
16
16
 
17
17
  case action_unless
18
18
  when Proc
19
19
  return !action_unless.call(object)
20
20
  when Symbol
21
- return !object.send(action_unless)
21
+ return !table.send(action_unless)
22
22
  end
23
23
 
24
24
  return true
@@ -34,4 +34,4 @@ module TableCloth::Extensions::Actions
34
34
  action.options[:unless]
35
35
  end
36
36
  end
37
- end
37
+ end
@@ -0,0 +1,36 @@
1
+ module TableCloth
2
+ module Extensions
3
+ module RowAttributes
4
+
5
+ extend ActiveSupport::Concern
6
+
7
+ module ClassMethods
8
+
9
+ def row_attributes(*args, &block)
10
+ @tr_options ||= {}
11
+ options = args.extract_options! || {}
12
+ options[:proc] = block if block_given?
13
+ @tr_options = options
14
+ end
15
+
16
+ def tr_options
17
+ @tr_options ||= {}
18
+ if superclass.respond_to? :tr_options
19
+ @tr_options = superclass.tr_options.merge(@tr_options)
20
+ end
21
+ @tr_options
22
+ end
23
+
24
+ def tr_options_for(object)
25
+ options = tr_options
26
+ if options.include?(:proc)
27
+ result = options[:proc].call(object) || {}
28
+ options.except(:proc).merge(result)
29
+ else
30
+ options
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -5,7 +5,7 @@ module TableCloth
5
5
  @render_table ||= ElementFactory::Element.new(:table, tag_options(:table)).tap do |table|
6
6
  table << thead
7
7
  table << tbody
8
- end
8
+ end.to_html
9
9
  end
10
10
 
11
11
  def thead
@@ -33,7 +33,9 @@ module TableCloth
33
33
  end
34
34
 
35
35
  def row_for_object(object)
36
- ElementFactory::Element.new(:tr, tag_options(:tr)).tap do |row|
36
+ tr_options = table.class.tr_options_for(object)
37
+
38
+ ElementFactory::Element.new(:tr, tag_options(:tr).merge(tr_options)).tap do |row|
37
39
  columns.each do |column|
38
40
  row << column_for_object(column, object)
39
41
  end
@@ -61,4 +63,4 @@ module TableCloth
61
63
  end
62
64
  end
63
65
  end
64
- end
66
+ end
@@ -1,3 +1,3 @@
1
1
  module TableCloth
2
- VERSION = "0.4.2"
2
+ VERSION = "0.4.3"
3
3
  end
@@ -39,7 +39,7 @@ describe TableCloth::Base do
39
39
  end
40
40
 
41
41
  context "custom" do
42
- let(:custom_column) { stub(:custom, value: "AN EMAIL") }
42
+ let(:custom_column) { double(:custom, value: "AN EMAIL") }
43
43
 
44
44
  it '.column can take a custom column' do
45
45
  subject.column :email, using: custom_column
@@ -1,7 +1,7 @@
1
1
  require "spec_helper"
2
2
 
3
3
  describe TableCloth::ColumnJury do
4
- let(:dummy_table) { stub(:table, admin?: true, moderator?: false) }
4
+ let(:dummy_table) { double(:table, admin?: true, moderator?: false) }
5
5
 
6
6
  subject { TableCloth::ColumnJury.new(column, dummy_table) }
7
7
 
@@ -32,4 +32,4 @@ describe TableCloth::ColumnJury do
32
32
  end
33
33
  end
34
34
  end
35
- end
35
+ end
@@ -15,12 +15,13 @@ describe TableCloth::Extensions::Actions::Action do
15
15
  context "#value" do
16
16
  let(:model) { FactoryGirl.build(:dummy_model) }
17
17
  let(:view_context) { ActionView::Base.new }
18
+ let(:table) { TableCloth::Base.new(nil, nil) }
18
19
 
19
20
  context "string" do
20
21
  let(:action_hash) { {proc: Proc.new{ "something" }} }
21
22
 
22
23
  it "returns a string" do
23
- expect(subject.value(model, view_context)).to match /something/
24
+ expect(subject.value(model, view_context, table)).to match /something/
24
25
  end
25
26
  end
26
27
 
@@ -30,8 +31,8 @@ describe TableCloth::Extensions::Actions::Action do
30
31
  end
31
32
 
32
33
  it "returns a link" do
33
- expect(subject.value(model, view_context)).to match /href="something"/
34
- expect(subject.value(model, view_context)).to match />blank</
34
+ expect(subject.value(model, view_context, table)).to match /href="something"/
35
+ expect(subject.value(model, view_context, table)).to match />blank</
35
36
  end
36
37
  end
37
38
 
@@ -45,13 +46,13 @@ describe TableCloth::Extensions::Actions::Action do
45
46
 
46
47
  it "returns the link when the model condition succeeds" do
47
48
  model.stub admin?: true
48
- expect(subject.value(model, view_context)).to include "something"
49
+ expect(subject.value(model, view_context, table)).to include "something"
49
50
  end
50
51
 
51
52
  it "does not return the link when the model condition fails" do
52
53
  model.stub admin?: false
53
- expect(subject.value(model, view_context)).not_to include "something"
54
+ expect(subject.value(model, view_context, table)).not_to include "something"
54
55
  end
55
56
  end
56
57
  end
57
- end
58
+ end
@@ -4,6 +4,7 @@ describe TableCloth::Extensions::Actions::Jury do
4
4
  let(:action) { FactoryGirl.build(:action, options: action_options) }
5
5
  subject { described_class.new(action) }
6
6
  let(:model) { double("model") }
7
+ let(:table) { TableCloth::Base.new(nil, nil) }
7
8
 
8
9
  context "Proc" do
9
10
  context "if .available?" do
@@ -11,12 +12,12 @@ describe TableCloth::Extensions::Actions::Jury do
11
12
 
12
13
  it "returns true for valid models" do
13
14
  model.stub state: "valid"
14
- expect(subject).to be_available(model)
15
+ expect(subject).to be_available(model, table)
15
16
  end
16
17
 
17
18
  it "returns false for invalid models" do
18
19
  model.stub state: "invalid"
19
- expect(subject).not_to be_available(model)
20
+ expect(subject).not_to be_available(model, table)
20
21
  end
21
22
  end
22
23
 
@@ -25,12 +26,12 @@ describe TableCloth::Extensions::Actions::Jury do
25
26
 
26
27
  it "returns true for valid models" do
27
28
  model.stub state: "valid"
28
- expect(subject).to be_available(model)
29
+ expect(subject).to be_available(model, table)
29
30
  end
30
31
 
31
32
  it "returns false for invalid models" do
32
33
  model.stub state: "invalid"
33
- expect(subject).not_to be_available(model)
34
+ expect(subject).not_to be_available(model, table)
34
35
  end
35
36
  end
36
37
  end
@@ -40,13 +41,13 @@ describe TableCloth::Extensions::Actions::Jury do
40
41
  let(:action_options) { {if: :valid?} }
41
42
 
42
43
  it "returns true for valid?" do
43
- model.stub valid?: true
44
- expect(subject).to be_available(model)
44
+ table.stub valid?: true
45
+ expect(subject).to be_available(model, table)
45
46
  end
46
47
 
47
48
  it "returns true for valid?" do
48
- model.stub valid?: false
49
- expect(subject).not_to be_available(model)
49
+ table.stub valid?: false
50
+ expect(subject).not_to be_available(model, table)
50
51
  end
51
52
  end
52
53
 
@@ -54,14 +55,14 @@ describe TableCloth::Extensions::Actions::Jury do
54
55
  let(:action_options) { {unless: :valid?} }
55
56
 
56
57
  it "returns true for valid models" do
57
- model.stub valid?: false
58
- expect(subject).to be_available(model)
58
+ table.stub valid?: false
59
+ expect(subject).to be_available(model, table)
59
60
  end
60
61
 
61
62
  it "returns false for invalid models" do
62
- model.stub valid?: true
63
- expect(subject).not_to be_available(model)
63
+ table.stub valid?: true
64
+ expect(subject).not_to be_available(model, table)
64
65
  end
65
66
  end
66
67
  end
67
- end
68
+ end
@@ -51,6 +51,12 @@ describe TableCloth::Presenters::Default do
51
51
  expect(tbody.css('tr').size).to be 3
52
52
  end
53
53
 
54
+ it "creates a row with attributes from row_attributes" do
55
+ tbody = Nokogiri::HTML(subject.tbody.to_s)
56
+ expect(tbody.css('tr:first-child').first.attribute("class").value).to eq("quazimodo-is-awesome")
57
+ expect(tbody.css('tr:first-child').first.attribute("name").value).to eq("What a handsome quazimodo")
58
+ end
59
+
54
60
  context 'escaped values' do
55
61
  let(:objects) do
56
62
  FactoryGirl.build_list(:dummy_model, 1,
@@ -82,4 +88,4 @@ describe TableCloth::Presenters::Default do
82
88
  end
83
89
  end
84
90
  end
85
- end
91
+ end
@@ -4,6 +4,7 @@ require 'nokogiri'
4
4
  require 'factory_girl'
5
5
  require 'pry'
6
6
  require 'simplecov'
7
+ require 'rspec/collection_matchers'
7
8
 
8
9
  if ENV["COVERAGE"] == "true"
9
10
  SimpleCov.start do
@@ -22,4 +23,4 @@ RSpec.configure do |config|
22
23
  config.run_all_when_everything_filtered = true
23
24
  config.filter_run :focus
24
25
  config.include ElementHelpers
25
- end
26
+ end
@@ -1,4 +1,7 @@
1
1
  class DummyTable < TableCloth::Base
2
+ row_attributes name: "What a handsome quazimodo" do |obj|
3
+ {class: "quazimodo-is-awesome"} if obj.present?
4
+ end
2
5
  column :id, th_options: {class: "th_options_class"}
3
6
  column :name
4
7
  column :email
@@ -7,5 +10,5 @@ end
7
10
  class DummyTableUnlessAdmin < TableCloth::Base
8
11
  column :id, unless: :admin?
9
12
  column :name
10
- column :email
11
- end
13
+ column :email
14
+ end
@@ -17,7 +17,8 @@ Gem::Specification.new do |gem|
17
17
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
18
18
  gem.require_paths = ["lib"]
19
19
 
20
- gem.add_development_dependency('rspec', '~> 2.11')
20
+ gem.add_development_dependency('rspec', '~> 2.99.0')
21
+ gem.add_development_dependency('rspec-collection_matchers')
21
22
  gem.add_development_dependency('simplecov')
22
23
  gem.add_development_dependency('awesome_print')
23
24
  gem.add_development_dependency('nokogiri')
@@ -27,6 +28,6 @@ Gem::Specification.new do |gem|
27
28
  gem.add_development_dependency('rake')
28
29
  gem.add_development_dependency('rb-fsevent', '~> 0.9.4')
29
30
 
30
- gem.add_dependency('actionpack', '>= 3.1', '< 4.2')
31
- gem.add_dependency('element_factory', '~> 0.1.2')
31
+ gem.add_dependency('actionpack', '>= 3.1', '< 5.0')
32
+ gem.add_dependency('element_factory', '~> 0.1.3')
32
33
  end
metadata CHANGED
@@ -1,175 +1,189 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: table_cloth
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.2
4
+ version: 0.4.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Robert Ross
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-16 00:00:00.000000000 Z
11
+ date: 2014-12-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '2.11'
19
+ version: 2.99.0
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '2.11'
26
+ version: 2.99.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: rspec-collection_matchers
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: simplecov
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
- - - '>='
45
+ - - ">="
32
46
  - !ruby/object:Gem::Version
33
47
  version: '0'
34
48
  type: :development
35
49
  prerelease: false
36
50
  version_requirements: !ruby/object:Gem::Requirement
37
51
  requirements:
38
- - - '>='
52
+ - - ">="
39
53
  - !ruby/object:Gem::Version
40
54
  version: '0'
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: awesome_print
43
57
  requirement: !ruby/object:Gem::Requirement
44
58
  requirements:
45
- - - '>='
59
+ - - ">="
46
60
  - !ruby/object:Gem::Version
47
61
  version: '0'
48
62
  type: :development
49
63
  prerelease: false
50
64
  version_requirements: !ruby/object:Gem::Requirement
51
65
  requirements:
52
- - - '>='
66
+ - - ">="
53
67
  - !ruby/object:Gem::Version
54
68
  version: '0'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: nokogiri
57
71
  requirement: !ruby/object:Gem::Requirement
58
72
  requirements:
59
- - - '>='
73
+ - - ">="
60
74
  - !ruby/object:Gem::Version
61
75
  version: '0'
62
76
  type: :development
63
77
  prerelease: false
64
78
  version_requirements: !ruby/object:Gem::Requirement
65
79
  requirements:
66
- - - '>='
80
+ - - ">="
67
81
  - !ruby/object:Gem::Version
68
82
  version: '0'
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: pry
71
85
  requirement: !ruby/object:Gem::Requirement
72
86
  requirements:
73
- - - '>='
87
+ - - ">="
74
88
  - !ruby/object:Gem::Version
75
89
  version: '0'
76
90
  type: :development
77
91
  prerelease: false
78
92
  version_requirements: !ruby/object:Gem::Requirement
79
93
  requirements:
80
- - - '>='
94
+ - - ">="
81
95
  - !ruby/object:Gem::Version
82
96
  version: '0'
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: factory_girl
85
99
  requirement: !ruby/object:Gem::Requirement
86
100
  requirements:
87
- - - '>='
101
+ - - ">="
88
102
  - !ruby/object:Gem::Version
89
103
  version: '0'
90
104
  type: :development
91
105
  prerelease: false
92
106
  version_requirements: !ruby/object:Gem::Requirement
93
107
  requirements:
94
- - - '>='
108
+ - - ">="
95
109
  - !ruby/object:Gem::Version
96
110
  version: '0'
97
111
  - !ruby/object:Gem::Dependency
98
112
  name: guard-rspec
99
113
  requirement: !ruby/object:Gem::Requirement
100
114
  requirements:
101
- - - '>='
115
+ - - ">="
102
116
  - !ruby/object:Gem::Version
103
117
  version: '0'
104
118
  type: :development
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
107
121
  requirements:
108
- - - '>='
122
+ - - ">="
109
123
  - !ruby/object:Gem::Version
110
124
  version: '0'
111
125
  - !ruby/object:Gem::Dependency
112
126
  name: rake
113
127
  requirement: !ruby/object:Gem::Requirement
114
128
  requirements:
115
- - - '>='
129
+ - - ">="
116
130
  - !ruby/object:Gem::Version
117
131
  version: '0'
118
132
  type: :development
119
133
  prerelease: false
120
134
  version_requirements: !ruby/object:Gem::Requirement
121
135
  requirements:
122
- - - '>='
136
+ - - ">="
123
137
  - !ruby/object:Gem::Version
124
138
  version: '0'
125
139
  - !ruby/object:Gem::Dependency
126
140
  name: rb-fsevent
127
141
  requirement: !ruby/object:Gem::Requirement
128
142
  requirements:
129
- - - ~>
143
+ - - "~>"
130
144
  - !ruby/object:Gem::Version
131
145
  version: 0.9.4
132
146
  type: :development
133
147
  prerelease: false
134
148
  version_requirements: !ruby/object:Gem::Requirement
135
149
  requirements:
136
- - - ~>
150
+ - - "~>"
137
151
  - !ruby/object:Gem::Version
138
152
  version: 0.9.4
139
153
  - !ruby/object:Gem::Dependency
140
154
  name: actionpack
141
155
  requirement: !ruby/object:Gem::Requirement
142
156
  requirements:
143
- - - '>='
157
+ - - ">="
144
158
  - !ruby/object:Gem::Version
145
159
  version: '3.1'
146
- - - <
160
+ - - "<"
147
161
  - !ruby/object:Gem::Version
148
- version: '4.2'
162
+ version: '5.0'
149
163
  type: :runtime
150
164
  prerelease: false
151
165
  version_requirements: !ruby/object:Gem::Requirement
152
166
  requirements:
153
- - - '>='
167
+ - - ">="
154
168
  - !ruby/object:Gem::Version
155
169
  version: '3.1'
156
- - - <
170
+ - - "<"
157
171
  - !ruby/object:Gem::Version
158
- version: '4.2'
172
+ version: '5.0'
159
173
  - !ruby/object:Gem::Dependency
160
174
  name: element_factory
161
175
  requirement: !ruby/object:Gem::Requirement
162
176
  requirements:
163
- - - ~>
177
+ - - "~>"
164
178
  - !ruby/object:Gem::Version
165
- version: 0.1.2
179
+ version: 0.1.3
166
180
  type: :runtime
167
181
  prerelease: false
168
182
  version_requirements: !ruby/object:Gem::Requirement
169
183
  requirements:
170
- - - ~>
184
+ - - "~>"
171
185
  - !ruby/object:Gem::Version
172
- version: 0.1.2
186
+ version: 0.1.3
173
187
  description: Table Cloth helps you create tables easily.
174
188
  email:
175
189
  - robert@creativequeries.com
@@ -177,9 +191,9 @@ executables: []
177
191
  extensions: []
178
192
  extra_rdoc_files: []
179
193
  files:
180
- - .gitignore
181
- - .rspec
182
- - .travis.yml
194
+ - ".gitignore"
195
+ - ".rspec"
196
+ - ".travis.yml"
183
197
  - CHANGELOG
184
198
  - Gemfile
185
199
  - Guardfile
@@ -200,6 +214,7 @@ files:
200
214
  - lib/table_cloth/extensions/actions/action_collection.rb
201
215
  - lib/table_cloth/extensions/actions/column.rb
202
216
  - lib/table_cloth/extensions/actions/jury.rb
217
+ - lib/table_cloth/extensions/row_attributes.rb
203
218
  - lib/table_cloth/presenter.rb
204
219
  - lib/table_cloth/presenters/default.rb
205
220
  - lib/table_cloth/version.rb
@@ -239,12 +254,12 @@ require_paths:
239
254
  - lib
240
255
  required_ruby_version: !ruby/object:Gem::Requirement
241
256
  requirements:
242
- - - '>='
257
+ - - ">="
243
258
  - !ruby/object:Gem::Version
244
259
  version: '0'
245
260
  required_rubygems_version: !ruby/object:Gem::Requirement
246
261
  requirements:
247
- - - '>='
262
+ - - ">="
248
263
  - !ruby/object:Gem::Version
249
264
  version: '0'
250
265
  requirements: []