proforma-prawn-renderer 1.0.0 → 1.0.1
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 +4 -4
- data/Gemfile.lock +11 -4
- data/Guardfile +1 -1
- data/README.md +1 -4
- data/Rakefile +8 -0
- data/lib/proforma/prawn_renderer/pane_renderer.rb +10 -2
- data/lib/proforma/prawn_renderer/version.rb +1 -1
- data/proforma-prawn-renderer.gemspec +2 -0
- data/spec/fixtures/component_test.pdf +92 -5
- data/spec/fixtures/component_test.yml +26 -0
- data/spec/spec_helper.rb +11 -5
- metadata +31 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 88ca0d13f9884dd190ce244d240879aff8f1724e378863141ff01daa1d4eccad
|
4
|
+
data.tar.gz: 565d3d7a0b97cf85130267cc40d86e2972e3d99322e0ceab4d2a96efcaca9222
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3ef308ba484ddcea35c9e9a717cad254c2abadcc8e4ec219b84342c01fb92cdf771384c602829286d86a818ddbc5b113c61a91693d28454de38d6df4a1340bc0
|
7
|
+
data.tar.gz: 3d1a9b4c50e0c85eeef9055b5b0f3727921f3b14d2086699da9e4d37397c28fd88b2125c518ce13b992c7a02d1886c97b879215ea3e85b28f9bb7b2916c73c30
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
proforma-prawn-renderer (1.0.
|
4
|
+
proforma-prawn-renderer (1.0.1)
|
5
5
|
prawn (~> 2)
|
6
6
|
prawn-table (~> 0)
|
7
7
|
proforma (~> 1)
|
@@ -10,10 +10,11 @@ GEM
|
|
10
10
|
remote: https://rubygems.org/
|
11
11
|
specs:
|
12
12
|
Ascii85 (1.0.3)
|
13
|
-
acts_as_hashable (1.0
|
13
|
+
acts_as_hashable (1.1.0)
|
14
14
|
afm (0.2.2)
|
15
15
|
ansi (1.5.0)
|
16
16
|
ast (2.4.0)
|
17
|
+
byebug (11.0.1)
|
17
18
|
coderay (1.1.2)
|
18
19
|
diff-lcs (1.3)
|
19
20
|
docile (1.3.1)
|
@@ -65,12 +66,16 @@ GEM
|
|
65
66
|
ttfunk (~> 1.5)
|
66
67
|
prawn-table (0.2.2)
|
67
68
|
prawn (>= 1.3.0, < 3.0.0)
|
68
|
-
proforma (1.0.
|
69
|
-
acts_as_hashable (~> 1)
|
69
|
+
proforma (1.0.2)
|
70
|
+
acts_as_hashable (~> 1, >= 1.1.0)
|
70
71
|
pry (0.12.2)
|
71
72
|
coderay (~> 1.1.0)
|
72
73
|
method_source (~> 0.9.0)
|
74
|
+
pry-byebug (3.7.0)
|
75
|
+
byebug (~> 11.0)
|
76
|
+
pry (~> 0.10)
|
73
77
|
rainbow (3.0.0)
|
78
|
+
rake (10.5.0)
|
74
79
|
rb-fsevent (0.10.3)
|
75
80
|
rb-inotify (0.9.10)
|
76
81
|
ffi (>= 0.5.0, < 2)
|
@@ -120,6 +125,8 @@ DEPENDENCIES
|
|
120
125
|
pdf-inspector (~> 1)
|
121
126
|
proforma-prawn-renderer!
|
122
127
|
pry (~> 0)
|
128
|
+
pry-byebug (~> 3)
|
129
|
+
rake (~> 10.0)
|
123
130
|
rspec (~> 3.8)
|
124
131
|
rubocop (~> 0.63.1)
|
125
132
|
simplecov (~> 0.16.1)
|
data/Guardfile
CHANGED
data/README.md
CHANGED
@@ -133,10 +133,7 @@ After code changes have successfully gone through the Pull Request review proces
|
|
133
133
|
3. Install dependencies: `bundle`
|
134
134
|
4. Update `CHANGELOG.md` with release notes
|
135
135
|
5. Commit & push master to remote and ensure CI builds master successfully
|
136
|
-
6.
|
137
|
-
7. Publish package to RubyGems: `gem push proforma-prawn-renderer-X.gem` where X is the version to push
|
138
|
-
8. Tag master with new version: `git tag <version>`
|
139
|
-
9. Push tags remotely: `git push origin --tags`
|
136
|
+
6. Run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
|
140
137
|
|
141
138
|
## License
|
142
139
|
|
data/Rakefile
ADDED
@@ -14,6 +14,10 @@ module Proforma
|
|
14
14
|
# This class understands how to ender a Proforma::Modeling::Pane component.
|
15
15
|
class PaneRenderer < Renderer
|
16
16
|
def render(pane)
|
17
|
+
rows = make_rows(pane.columns)
|
18
|
+
|
19
|
+
return unless rows&.length&.positive?
|
20
|
+
|
17
21
|
pdf.table(
|
18
22
|
make_rows(pane.columns),
|
19
23
|
column_widths: make_column_widths(pane.columns),
|
@@ -25,9 +29,13 @@ module Proforma
|
|
25
29
|
|
26
30
|
def make_rows_shell(columns)
|
27
31
|
total_columns = columns.length * 2
|
28
|
-
total_rows = columns.map(&:line_count)
|
32
|
+
total_rows = columns.map(&:line_count)&.max || 0
|
29
33
|
|
30
|
-
(0...total_rows).map
|
34
|
+
(0...total_rows).map do
|
35
|
+
(0...total_columns).map do
|
36
|
+
pdf.make_cell('', base_value_cell_style)
|
37
|
+
end
|
38
|
+
end
|
31
39
|
end
|
32
40
|
|
33
41
|
def value_cell_padding(column_index, total_columns)
|
@@ -28,6 +28,8 @@ Gem::Specification.new do |s|
|
|
28
28
|
s.add_development_dependency('guard-rspec', '~>4.7')
|
29
29
|
s.add_development_dependency('pdf-inspector', '~>1')
|
30
30
|
s.add_development_dependency('pry', '~>0')
|
31
|
+
s.add_development_dependency('pry-byebug', '~> 3')
|
32
|
+
s.add_development_dependency('rake', '~> 10.0')
|
31
33
|
s.add_development_dependency('rspec', '~> 3.8')
|
32
34
|
s.add_development_dependency('rubocop', '~>0.63.1')
|
33
35
|
s.add_development_dependency('simplecov', '~>0.16.1')
|
@@ -17,7 +17,7 @@ endobj
|
|
17
17
|
>>
|
18
18
|
endobj
|
19
19
|
4 0 obj
|
20
|
-
<< /Length
|
20
|
+
<< /Length 2011
|
21
21
|
>>
|
22
22
|
stream
|
23
23
|
q
|
@@ -130,6 +130,93 @@ BT
|
|
130
130
|
[<31>] TJ
|
131
131
|
ET
|
132
132
|
|
133
|
+
|
134
|
+
BT
|
135
|
+
36.0 607.37 Td
|
136
|
+
/F1.0 10 Tf
|
137
|
+
[<50> 40 <616e652077697468206e6f20636f6c756d6e73>] TJ
|
138
|
+
ET
|
139
|
+
|
140
|
+
|
141
|
+
BT
|
142
|
+
36.0 595.81 Td
|
143
|
+
/F1.0 10 Tf
|
144
|
+
[<50> 40 <616e652077697468203120636f6c756d6e2c206e6f206c696e6573>] TJ
|
145
|
+
ET
|
146
|
+
|
147
|
+
|
148
|
+
BT
|
149
|
+
36.0 584.25 Td
|
150
|
+
/F1.0 10 Tf
|
151
|
+
[<50> 40 <616e652077697468203220636f6c756d6e73> 15 <2c207769746820756e2d65> 30 <76> 25 <656e20616d6f756e74206f66206c696e65732070657220636f6c756d6e2e>] TJ
|
152
|
+
ET
|
153
|
+
|
154
|
+
0.5 w
|
155
|
+
0.0 0.0 0.0 SCN
|
156
|
+
|
157
|
+
BT
|
158
|
+
36.0 567.858 Td
|
159
|
+
/F2.0 10 Tf
|
160
|
+
[<4944204e756d626572>] TJ
|
161
|
+
ET
|
162
|
+
|
163
|
+
0.5 w
|
164
|
+
0.0 0.0 0.0 SCN
|
165
|
+
|
166
|
+
BT
|
167
|
+
173.0 568.062 Td
|
168
|
+
/F1.0 10 Tf
|
169
|
+
[<31>] TJ
|
170
|
+
ET
|
171
|
+
|
172
|
+
0.5 w
|
173
|
+
0.0 0.0 0.0 SCN
|
174
|
+
|
175
|
+
BT
|
176
|
+
224.0954 567.858 Td
|
177
|
+
/F2.0 10 Tf
|
178
|
+
[<4944204e756d626572>] TJ
|
179
|
+
ET
|
180
|
+
|
181
|
+
0.5 w
|
182
|
+
0.0 0.0 0.0 SCN
|
183
|
+
|
184
|
+
BT
|
185
|
+
361.0954 568.062 Td
|
186
|
+
/F1.0 10 Tf
|
187
|
+
[<31>] TJ
|
188
|
+
ET
|
189
|
+
|
190
|
+
0.5 w
|
191
|
+
0.0 0.0 0.0 SCN
|
192
|
+
0.5 w
|
193
|
+
0.0 0.0 0.0 SCN
|
194
|
+
0.5 w
|
195
|
+
0.0 0.0 0.0 SCN
|
196
|
+
|
197
|
+
BT
|
198
|
+
36.0 551.958 Td
|
199
|
+
/F2.0 10 Tf
|
200
|
+
[<4944204e756d626572>] TJ
|
201
|
+
ET
|
202
|
+
|
203
|
+
0.5 w
|
204
|
+
0.0 0.0 0.0 SCN
|
205
|
+
|
206
|
+
BT
|
207
|
+
173.0 552.162 Td
|
208
|
+
/F1.0 10 Tf
|
209
|
+
[<31>] TJ
|
210
|
+
ET
|
211
|
+
|
212
|
+
0.5 w
|
213
|
+
0.0 0.0 0.0 SCN
|
214
|
+
0.5 w
|
215
|
+
0.0 0.0 0.0 SCN
|
216
|
+
0.5 w
|
217
|
+
0.0 0.0 0.0 SCN
|
218
|
+
0.5 w
|
219
|
+
0.0 0.0 0.0 SCN
|
133
220
|
Q
|
134
221
|
|
135
222
|
endstream
|
@@ -171,14 +258,14 @@ xref
|
|
171
258
|
0000000109 00000 n
|
172
259
|
0000000158 00000 n
|
173
260
|
0000000215 00000 n
|
174
|
-
|
175
|
-
|
176
|
-
|
261
|
+
0000002278 00000 n
|
262
|
+
0000002576 00000 n
|
263
|
+
0000002678 00000 n
|
177
264
|
trailer
|
178
265
|
<< /Size 8
|
179
266
|
/Root 2 0 R
|
180
267
|
/Info 1 0 R
|
181
268
|
>>
|
182
269
|
startxref
|
183
|
-
|
270
|
+
2775
|
184
271
|
%%EOF
|
@@ -28,3 +28,29 @@ template:
|
|
28
28
|
lines:
|
29
29
|
- label: ID Number
|
30
30
|
value: $id
|
31
|
+
- type: Text
|
32
|
+
value: Pane with no columns
|
33
|
+
- type: Pane
|
34
|
+
columns:
|
35
|
+
- type: Text
|
36
|
+
value: Pane with 1 column, no lines
|
37
|
+
- type: Pane
|
38
|
+
columns:
|
39
|
+
- label_width: 25.0
|
40
|
+
lines:
|
41
|
+
- type: Text
|
42
|
+
value: Pane with 2 columns, with un-even amount of lines per column.
|
43
|
+
- type: Pane
|
44
|
+
columns:
|
45
|
+
- label_width: 25.0
|
46
|
+
lines:
|
47
|
+
- label: ID Number
|
48
|
+
value: $id
|
49
|
+
- label: ID Number
|
50
|
+
value: $id
|
51
|
+
- label_width: 25.0
|
52
|
+
lines:
|
53
|
+
- label: ID Number
|
54
|
+
value: $id
|
55
|
+
- label_width: 25.0
|
56
|
+
lines:
|
data/spec/spec_helper.rb
CHANGED
@@ -8,13 +8,19 @@
|
|
8
8
|
#
|
9
9
|
|
10
10
|
require 'yaml'
|
11
|
-
require 'pry'
|
12
11
|
require 'pdf/inspector'
|
12
|
+
require 'pry'
|
13
|
+
require 'pry-byebug'
|
13
14
|
|
14
|
-
|
15
|
-
require 'simplecov
|
16
|
-
|
17
|
-
|
15
|
+
unless ENV['DISABLE_SIMPLECOV'] == 'true'
|
16
|
+
require 'simplecov'
|
17
|
+
require 'simplecov-console'
|
18
|
+
|
19
|
+
SimpleCov.formatter = SimpleCov::Formatter::Console
|
20
|
+
SimpleCov.start do
|
21
|
+
add_filter %r{\A/spec/}
|
22
|
+
end
|
23
|
+
end
|
18
24
|
|
19
25
|
require './lib/proforma/prawn_renderer'
|
20
26
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: proforma-prawn-renderer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matthew Ruggio
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-05-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: prawn
|
@@ -94,6 +94,34 @@ dependencies:
|
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '0'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: pry-byebug
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '3'
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '3'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: rake
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - "~>"
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '10.0'
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - "~>"
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '10.0'
|
97
125
|
- !ruby/object:Gem::Dependency
|
98
126
|
name: rspec
|
99
127
|
requirement: !ruby/object:Gem::Requirement
|
@@ -170,6 +198,7 @@ files:
|
|
170
198
|
- Guardfile
|
171
199
|
- LICENSE
|
172
200
|
- README.md
|
201
|
+
- Rakefile
|
173
202
|
- bin/console
|
174
203
|
- bin/render
|
175
204
|
- lib/proforma/prawn_renderer.rb
|