prawn-rails 1.0.1 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +14 -6
- data/README.md +11 -17
- data/lib/prawn-rails/document.rb +4 -6
- data/lib/prawn-rails/load_prawn_plugins.rb +11 -0
- data/lib/prawn-rails/rails_helper.rb +12 -6
- data/lib/prawn-rails/renderer.rb +3 -0
- data/lib/prawn-rails/version.rb +1 -1
- data/test/{dummy → dummy_app}/Rakefile +0 -0
- data/test/{dummy/db/test.sqlite3 → dummy_app/app/assets/javascripts/application.js} +0 -0
- data/test/dummy_app/app/assets/stylesheets/application.css +3 -0
- data/test/{dummy → dummy_app}/app/controllers/application_controller.rb +0 -0
- data/test/dummy_app/app/controllers/reports_controller.rb +18 -0
- data/test/{dummy → dummy_app}/app/views/layouts/application.html.erb +1 -1
- data/test/dummy_app/app/views/reports/sample.html.erb +1 -0
- data/test/{dummy/app/views/pdf/render_pdf.pdf.prawn → dummy_app/app/views/reports/sample.pdf.prawn} +13 -9
- data/test/dummy_app/app/views/reports/table.pdf.prawn +7 -0
- data/test/{dummy → dummy_app}/config.ru +0 -0
- data/test/{dummy → dummy_app}/config/application.rb +19 -1
- data/test/{dummy → dummy_app}/config/boot.rb +0 -0
- data/test/{dummy → dummy_app}/config/database.yml +0 -0
- data/test/{dummy → dummy_app}/config/environment.rb +0 -0
- data/test/{dummy → dummy_app}/config/environments/development.rb +0 -0
- data/test/{dummy → dummy_app}/config/environments/production.rb +0 -0
- data/test/{dummy → dummy_app}/config/environments/test.rb +0 -0
- data/test/{dummy → dummy_app}/config/initializers/backtrace_silencers.rb +0 -0
- data/test/{dummy → dummy_app}/config/initializers/inflections.rb +0 -0
- data/test/{dummy → dummy_app}/config/initializers/mime_types.rb +0 -0
- data/test/dummy_app/config/initializers/prawn-rails.rb +5 -0
- data/test/{dummy → dummy_app}/config/initializers/secret_token.rb +5 -1
- data/test/{dummy → dummy_app}/config/initializers/session_store.rb +1 -1
- data/test/{dummy → dummy_app}/config/initializers/wrap_parameters.rb +1 -1
- data/test/{dummy → dummy_app}/config/locales/en.yml +0 -0
- data/test/dummy_app/config/routes.rb +4 -0
- data/test/{dummy → dummy_app}/config/secrets.yml +0 -0
- data/test/{dummy → dummy_app}/db/schema.rb +1 -8
- data/test/{dummy/public/favicon.ico → dummy_app/db/test.sqlite3} +0 -0
- data/test/dummy_app/log/test.log +2921 -0
- data/test/dummy_app/tmp/cache/assets/sprockets/v3.0/-E/-EGHXi_ULbX3JP7NLAsVLUrIZgOg0HxdFnvlbmA7DCA.cache +1 -0
- data/test/{dummy/tmp/cache/assets/sprockets/v3.0/mQ/mQditvxd7m-nwTpkGVCOalFZesEjSbG8EOKqC3zq108.cache → dummy_app/tmp/cache/assets/sprockets/v3.0/3N/3NnKgR2TsTI1qCXKZpts0uJzp2dRJcoYp3nnFU6YE4o.cache} +1 -1
- data/test/dummy_app/tmp/cache/assets/sprockets/v3.0/4O/4O6Anm3R8aSIVfMhGtp5tZK3x17fcY1SbWoDN_6hb-o.cache +2 -0
- data/test/dummy_app/tmp/cache/assets/sprockets/v3.0/Bl/BlRucSL6BNAMZvHs4UVilikqNOKnbCHSGHIQRgtKvFQ.cache +1 -0
- data/test/dummy_app/tmp/cache/assets/sprockets/v3.0/E1/E18Q7xE2E1RWvLRrvvBEf0ahfumckOlJWqD7YiPqLAk.cache +0 -0
- data/test/{dummy/tmp/cache/assets/sprockets/v3.0/7k/7knv2O_3Eod2l8h0YSVe5xjnQsDlsXbJffQ1dKiSrEs.cache → dummy_app/tmp/cache/assets/sprockets/v3.0/LR/LRLaw7viwBb9Mi_VFZxGbKIooy8Fqf1aB_iOTETsMyc.cache} +1 -1
- data/test/dummy_app/tmp/cache/assets/sprockets/v3.0/Mj/MjwYGG9GkHD1fwwH2bg66EBYl3zCA_mqeDF9otey4-U.cache +3 -0
- data/test/dummy_app/tmp/cache/assets/sprockets/v3.0/QP/QPocswuHM6KXKYd99JclYrybZep_vYHyfZQ-nGJB5uU.cache +1 -0
- data/test/dummy_app/tmp/cache/assets/sprockets/v3.0/S9/S9TmgasHOyBiOSg3OOpu2mzuUwMxxUE3zyKrExqIryQ.cache +0 -0
- data/test/dummy_app/tmp/cache/assets/sprockets/v3.0/VK/VKv8TUCURhWXKU5qrG7ocs75FsysCWNtswhqtTi7Lfw.cache +0 -0
- data/test/dummy_app/tmp/cache/assets/sprockets/v3.0/dZ/dZLyjSvZKmLRvanBa3SmJ58gtb_fQaHMzS1A04p2x_4.cache +1 -0
- data/test/dummy_app/tmp/cache/assets/sprockets/v3.0/kA/kAfbx3YIMg0L2tevtZdwbRjKKy9xOmYlXJ7LapMXDME.cache +1 -0
- data/test/dummy_app/tmp/cache/assets/sprockets/v3.0/mn/mnaHTtsBvdmAbdqsorI0KqFoT2eQIhgDVER_He3q2HU.cache +1 -0
- data/test/dummy_app/tmp/cache/assets/sprockets/v3.0/rT/rTYHFXiH_g6ZVTgNXdVrDz3fihYKq9Diqso1lzP257o.cache +0 -0
- data/test/integration/prawn_rails_test.rb +64 -0
- data/test/prawn_rails_test.rb +11 -0
- data/test/test_helper.rb +1 -1
- metadata +97 -163
- data/lib/prawn-rails/extension.rb +0 -48
- data/test/dummy/app/assets/javascripts/application.js +0 -7
- data/test/dummy/app/assets/stylesheets/application.css +0 -7
- data/test/dummy/app/assets/stylesheets/scaffold.css +0 -56
- data/test/dummy/app/controllers/pdf_controller.rb +0 -9
- data/test/dummy/app/helpers/application_helper.rb +0 -2
- data/test/dummy/app/helpers/pdf_helper.rb +0 -2
- data/test/dummy/app/helpers/products_helper.rb +0 -2
- data/test/dummy/app/models/product.rb +0 -2
- data/test/dummy/app/views/pdf/render_pdf.html.erb +0 -2
- data/test/dummy/config/initializers/prawn-rails.rb +0 -4
- data/test/dummy/config/routes.rb +0 -62
- data/test/dummy/log/test.log +0 -390
- data/test/dummy/public/404.html +0 -26
- data/test/dummy/public/422.html +0 -26
- data/test/dummy/public/500.html +0 -26
- data/test/dummy/script/rails +0 -6
- data/test/dummy/test/functional/pdf_controller_test.rb +0 -21
- data/test/dummy/test/unit/helpers/pdf_helper_test.rb +0 -4
- data/test/dummy/test/unit/render_to_string_test.rb +0 -10
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/3H/3HKwxPtsFtIWWB8h3a3IubpM4GcVjstICkerRFO439k.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/7M/7Mq76IhtBe2-VV2M2oHVxXAVG_QLm5SrCNxRggF8RPc.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/7z/7zCgQfsGmkfNRDRJbRNwZOHR1KjCn5eXK6kQ3MD3Q2I.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/8k/8k3y_LCz9mDUxOJy9Q2XGrbzfTesQnWYC0cQP1TOvFs.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Dm/DmmfrCpXtt74Hr6NO54lxyOCDv6klnDyBqeDFR7oDU8.cache +0 -3
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Fl/FlyzzCH6xseKijuu-xP3_W0V8-1cWLl95YXDNxYDUNo.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/HC/HCD43uamHiSFgGxIxwnhpFVOmIxP1BnzNNvNivaWbpk.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Lx/LxtjvSVJOouLYZBYfdC_AjDQkYKKKEs3M10Vum5cJEg.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/PK/PKWLCqd6Zhyt0ja1qijEKFaHwfBpCAHEosX412uU-V8.cache +0 -3
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/PS/PSRh_XH9lrFbchQbAFcC08Qv6_y-Bgv7sjtfpKR-OUM.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Qo/QoWFwSTYT96pcyCl7-2W0dwnhAcu5C8LIcoBrcDyStI.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/VD/VDc9sGDOOPm5eVmRJ2f2cRjTaKC11SnKHOpHHbyChl0.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Ve/VeM604IZ64WdmC055DY5x0e5Hi8rcIAqhYJI5EcopDI.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/X0/X0IS1nkiVmMS3U903Hrwc01kDe2ajHoeo61xuHfbM6c.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/bB/bBZWYaOxRNh_QSoJcD-Mkvcz9KgvY-dG9fwXISEG4K8.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/dY/dYpMqE0kCuH8r1W0qAG7zvVC38Hq4BT-1D--XGbeNXg.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/jH/jHI2oSw0VjtEfiiHzdvIRzqjkX7EfibPviTfzvDJie0.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/jl/jlvE-YiBY3zJbTaEnymfM6KKQ0VC4fh-ABin-DfZQH0.cache +0 -2
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/lW/lWicvOny7LscyeGkw-SjCaJEc6iQO2xyCQzEoCOT9io.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/mq/mqcnbDYKKUpY94uXsWbGbcRGZwaZNlC1pynK_1spLG8.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/np/nppFP1_0FGLqnQh_ZUlGiPLii5Lqbpv4cXNPXvimFF4.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/oU/oUvIYed-Tb8hZ7gKa7FPpyhkc6vqXdyiMHNRI89fMO0.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/sG/sG274Dzr6XE-W7yJehcXagYHbLDgelrH4-7lrdytdI4.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/tA/tAy3LvgiPR3JYEMcVE38njAzFe3XLQuc5fZueLWu5Yo.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/uO/uOOMjW4h-byBJFu52K4-uCeQA35aLhrqzzfRswpey-s.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/vp/vpF3NlYVMkWc7PivIOC4SAKJ51RzYEXyTRKvfmsMGFg.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/vv/vvP0dfbO8asNpteZs8hiM8s9YwP9qcQRAiF0Flm_2cw.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/w3/w3opA7mSLePTdHCpuCBqduTsSbwUIgiPnFcb4oLM4g4.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/we/wetuI3DMxRNUJ59_Ht2tI_UznmZ4Qo6YaFQaObX5Yeo.cache +0 -1
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/wn/wnvJ74QIdj8tSD10cXmY9KyXCpaQIv0FfZJWw-EudW8.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/xP/xPMfTXGxxCCgIip6XsG-paelKjnDzbpAYugLmUfykPs.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/zT/zTsAvZfthhhPVIOWyDH3KWWRuZ8HnBYMveoWvD-u9_k.cache +0 -1
- data/test/integration/navigation_test.rb +0 -9
- data/test/prawn-rails_test.rb +0 -11
@@ -0,0 +1 @@
|
|
1
|
+
I"�app/assets/stylesheets/application.css?type=text/css&pipeline=self&id=95f54059d4f1e7cc78e4ce4e3095d5e80c04a54150a4196d79c8450394e7fbbb:ET
|
@@ -1,2 +1,2 @@
|
|
1
1
|
[o:Set:
|
2
|
-
@hash}
|
2
|
+
@hash}I"environment-version:ETTI"environment-paths;TTI"rails-env;TTI"Lprocessors:type=application/javascript&file_type=application/javascript;TTI"8file-digest://app/assets/javascripts/application.js;TTI"Zprocessors:type=application/javascript&file_type=application/javascript&pipeline=self;TTF
|
@@ -0,0 +1 @@
|
|
1
|
+
I"}app/assets/stylesheets/application.css?type=text/css&id=e61cdad8512dec56b927103ef49105a3d7be7a62e704392bafdf4cf6e78f81ec:ET
|
Binary file
|
@@ -1,3 +1,3 @@
|
|
1
1
|
[o:Set:
|
2
2
|
@hash}
|
3
|
-
I"environment-version:ETTI"environment-paths;TTI"rails-env;TTI">processors:type=text/css&file_type=text/css&pipeline=self;TTI"
|
3
|
+
I"environment-version:ETTI"environment-paths;TTI"rails-env;TTI">processors:type=text/css&file_type=text/css&pipeline=self;TTI"9file-digest://app/assets/stylesheets/application.css;TTF
|
@@ -0,0 +1 @@
|
|
1
|
+
"%�汷g�d�Q~�A�fǟ��#�R��&�j�
|
Binary file
|
Binary file
|
@@ -0,0 +1 @@
|
|
1
|
+
I"�app/assets/javascripts/application.js?type=application/javascript&id=1ebb671d84a3d53ffd8130847272a0e7dea45aae44da66f25d384c1d6ff04e93:ET
|
@@ -0,0 +1 @@
|
|
1
|
+
"%��B�����șo�$'�A�d��L���xR�U
|
@@ -0,0 +1 @@
|
|
1
|
+
I"�app/assets/javascripts/application.js?type=application/javascript&pipeline=self&id=43ca35046d49844d3b98ec7f00e6d552c5852944cb7e38c426678630b417d472:ET
|
Binary file
|
@@ -0,0 +1,64 @@
|
|
1
|
+
### FOR RAILS TESTS
|
2
|
+
|
3
|
+
require 'test_helper'
|
4
|
+
require 'pdf/reader'
|
5
|
+
|
6
|
+
class NavigationTest < ActionDispatch::IntegrationTest
|
7
|
+
fixtures :all
|
8
|
+
|
9
|
+
test "Registers :pdf mime type" do
|
10
|
+
assert Mime::Type.lookup_by_extension(:pdf)
|
11
|
+
end
|
12
|
+
|
13
|
+
test "Registers :prawn template handler" do
|
14
|
+
assert ActionView::Template::Handlers.extensions.include?(:prawn)
|
15
|
+
end
|
16
|
+
|
17
|
+
test "Renders html action" do
|
18
|
+
get '/reports/sample'
|
19
|
+
assert_response :success
|
20
|
+
#assert @response.body.include?("<h1>Hello World!</h1>")
|
21
|
+
assert_match("<h1>Hello World!</h1>", @response.body)
|
22
|
+
end
|
23
|
+
|
24
|
+
test "Renders pdf to string" do
|
25
|
+
pdf_str = ApplicationController.new.render_to_string("reports/sample.pdf", locals: {:@items => []})
|
26
|
+
|
27
|
+
reader = PDF::Reader.new(StringIO.new(pdf_str))
|
28
|
+
assert_not_nil(reader)
|
29
|
+
|
30
|
+
page_str = reader.pages[0].to_s
|
31
|
+
assert page_str.include?('Hello World!')
|
32
|
+
assert_not page_str.include?("<h1>Hello World!</h1>")
|
33
|
+
end
|
34
|
+
|
35
|
+
test "Renders sample pdf action" do
|
36
|
+
get '/reports/sample', params: {format: :pdf}
|
37
|
+
assert_response :success
|
38
|
+
assert_not @response.body.include?("<h1>Hello World!</h1>")
|
39
|
+
|
40
|
+
reader = PDF::Reader.new(StringIO.new(@response.body))
|
41
|
+
assert_not_nil(reader)
|
42
|
+
|
43
|
+
assert_equal(1, reader.page_count)
|
44
|
+
|
45
|
+
page_str = reader.pages[0].to_s
|
46
|
+
|
47
|
+
assert page_str.include?('Hello World!')
|
48
|
+
assert_not page_str.include?("<h1>Hello World!</h1>")
|
49
|
+
end
|
50
|
+
|
51
|
+
test "Renders table pdf action using auto-required plugin Prawn-Table" do
|
52
|
+
get '/reports/table', params: {format: :pdf}
|
53
|
+
assert_response :success
|
54
|
+
|
55
|
+
reader = PDF::Reader.new(StringIO.new(@response.body))
|
56
|
+
assert_not_nil(reader)
|
57
|
+
|
58
|
+
assert_equal(1, reader.page_count)
|
59
|
+
|
60
|
+
page_str = reader.pages[0].to_s
|
61
|
+
|
62
|
+
assert_equal(page_str, "1 2 3\n\n4 5 6\n\n7 8 9")
|
63
|
+
end
|
64
|
+
end
|
data/test/test_helper.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: prawn-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Carlos Ortiz
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2018-06-13 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: prawn
|
@@ -124,9 +124,7 @@ dependencies:
|
|
124
124
|
- !ruby/object:Gem::Version
|
125
125
|
version: '0'
|
126
126
|
description: Prawn Handler for Rails. Handles and registers pdf formats.
|
127
|
-
email:
|
128
|
-
- chrono.dark@gmail.com
|
129
|
-
- westonganger@gmail.com
|
127
|
+
email: weston@westonganger.com
|
130
128
|
executables: []
|
131
129
|
extensions: []
|
132
130
|
extra_rdoc_files: []
|
@@ -139,88 +137,56 @@ files:
|
|
139
137
|
- lib/prawn-rails/config.rb
|
140
138
|
- lib/prawn-rails/document.rb
|
141
139
|
- lib/prawn-rails/engine.rb
|
142
|
-
- lib/prawn-rails/
|
140
|
+
- lib/prawn-rails/load_prawn_plugins.rb
|
143
141
|
- lib/prawn-rails/rails_helper.rb
|
144
142
|
- lib/prawn-rails/renderer.rb
|
145
143
|
- lib/prawn-rails/version.rb
|
146
|
-
- test/
|
147
|
-
- test/
|
148
|
-
- test/
|
149
|
-
- test/
|
150
|
-
- test/
|
151
|
-
- test/
|
152
|
-
- test/
|
153
|
-
- test/
|
154
|
-
- test/
|
155
|
-
- test/
|
156
|
-
- test/
|
157
|
-
- test/
|
158
|
-
- test/
|
159
|
-
- test/
|
160
|
-
- test/
|
161
|
-
- test/
|
162
|
-
- test/
|
163
|
-
- test/
|
164
|
-
- test/
|
165
|
-
- test/
|
166
|
-
- test/
|
167
|
-
- test/
|
168
|
-
- test/
|
169
|
-
- test/
|
170
|
-
- test/
|
171
|
-
- test/
|
172
|
-
- test/
|
173
|
-
- test/
|
174
|
-
- test/
|
175
|
-
- test/
|
176
|
-
- test/
|
177
|
-
- test/
|
178
|
-
- test/
|
179
|
-
- test/
|
180
|
-
- test/
|
181
|
-
- test/
|
182
|
-
- test/
|
183
|
-
- test/
|
184
|
-
- test/
|
185
|
-
- test/
|
186
|
-
- test/
|
187
|
-
- test/
|
188
|
-
- test/
|
189
|
-
- test/
|
190
|
-
- test/
|
191
|
-
- test/
|
192
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/8k/8k3y_LCz9mDUxOJy9Q2XGrbzfTesQnWYC0cQP1TOvFs.cache
|
193
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/Dm/DmmfrCpXtt74Hr6NO54lxyOCDv6klnDyBqeDFR7oDU8.cache
|
194
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/Fl/FlyzzCH6xseKijuu-xP3_W0V8-1cWLl95YXDNxYDUNo.cache
|
195
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/HC/HCD43uamHiSFgGxIxwnhpFVOmIxP1BnzNNvNivaWbpk.cache
|
196
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/Lx/LxtjvSVJOouLYZBYfdC_AjDQkYKKKEs3M10Vum5cJEg.cache
|
197
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/PK/PKWLCqd6Zhyt0ja1qijEKFaHwfBpCAHEosX412uU-V8.cache
|
198
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/PS/PSRh_XH9lrFbchQbAFcC08Qv6_y-Bgv7sjtfpKR-OUM.cache
|
199
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/Qo/QoWFwSTYT96pcyCl7-2W0dwnhAcu5C8LIcoBrcDyStI.cache
|
200
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/VD/VDc9sGDOOPm5eVmRJ2f2cRjTaKC11SnKHOpHHbyChl0.cache
|
201
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/Ve/VeM604IZ64WdmC055DY5x0e5Hi8rcIAqhYJI5EcopDI.cache
|
202
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/X0/X0IS1nkiVmMS3U903Hrwc01kDe2ajHoeo61xuHfbM6c.cache
|
203
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/bB/bBZWYaOxRNh_QSoJcD-Mkvcz9KgvY-dG9fwXISEG4K8.cache
|
204
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/dY/dYpMqE0kCuH8r1W0qAG7zvVC38Hq4BT-1D--XGbeNXg.cache
|
205
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/jH/jHI2oSw0VjtEfiiHzdvIRzqjkX7EfibPviTfzvDJie0.cache
|
206
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/jl/jlvE-YiBY3zJbTaEnymfM6KKQ0VC4fh-ABin-DfZQH0.cache
|
207
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/lW/lWicvOny7LscyeGkw-SjCaJEc6iQO2xyCQzEoCOT9io.cache
|
208
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/mQ/mQditvxd7m-nwTpkGVCOalFZesEjSbG8EOKqC3zq108.cache
|
209
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/mq/mqcnbDYKKUpY94uXsWbGbcRGZwaZNlC1pynK_1spLG8.cache
|
210
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/np/nppFP1_0FGLqnQh_ZUlGiPLii5Lqbpv4cXNPXvimFF4.cache
|
211
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/oU/oUvIYed-Tb8hZ7gKa7FPpyhkc6vqXdyiMHNRI89fMO0.cache
|
212
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/sG/sG274Dzr6XE-W7yJehcXagYHbLDgelrH4-7lrdytdI4.cache
|
213
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/tA/tAy3LvgiPR3JYEMcVE38njAzFe3XLQuc5fZueLWu5Yo.cache
|
214
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/uO/uOOMjW4h-byBJFu52K4-uCeQA35aLhrqzzfRswpey-s.cache
|
215
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/vp/vpF3NlYVMkWc7PivIOC4SAKJ51RzYEXyTRKvfmsMGFg.cache
|
216
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/vv/vvP0dfbO8asNpteZs8hiM8s9YwP9qcQRAiF0Flm_2cw.cache
|
217
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/w3/w3opA7mSLePTdHCpuCBqduTsSbwUIgiPnFcb4oLM4g4.cache
|
218
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/we/wetuI3DMxRNUJ59_Ht2tI_UznmZ4Qo6YaFQaObX5Yeo.cache
|
219
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/wn/wnvJ74QIdj8tSD10cXmY9KyXCpaQIv0FfZJWw-EudW8.cache
|
220
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/xP/xPMfTXGxxCCgIip6XsG-paelKjnDzbpAYugLmUfykPs.cache
|
221
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/zT/zTsAvZfthhhPVIOWyDH3KWWRuZ8HnBYMveoWvD-u9_k.cache
|
222
|
-
- test/integration/navigation_test.rb
|
223
|
-
- test/prawn-rails_test.rb
|
144
|
+
- test/dummy_app/Rakefile
|
145
|
+
- test/dummy_app/app/assets/javascripts/application.js
|
146
|
+
- test/dummy_app/app/assets/stylesheets/application.css
|
147
|
+
- test/dummy_app/app/controllers/application_controller.rb
|
148
|
+
- test/dummy_app/app/controllers/reports_controller.rb
|
149
|
+
- test/dummy_app/app/views/layouts/application.html.erb
|
150
|
+
- test/dummy_app/app/views/reports/sample.html.erb
|
151
|
+
- test/dummy_app/app/views/reports/sample.pdf.prawn
|
152
|
+
- test/dummy_app/app/views/reports/table.pdf.prawn
|
153
|
+
- test/dummy_app/config.ru
|
154
|
+
- test/dummy_app/config/application.rb
|
155
|
+
- test/dummy_app/config/boot.rb
|
156
|
+
- test/dummy_app/config/database.yml
|
157
|
+
- test/dummy_app/config/environment.rb
|
158
|
+
- test/dummy_app/config/environments/development.rb
|
159
|
+
- test/dummy_app/config/environments/production.rb
|
160
|
+
- test/dummy_app/config/environments/test.rb
|
161
|
+
- test/dummy_app/config/initializers/backtrace_silencers.rb
|
162
|
+
- test/dummy_app/config/initializers/inflections.rb
|
163
|
+
- test/dummy_app/config/initializers/mime_types.rb
|
164
|
+
- test/dummy_app/config/initializers/prawn-rails.rb
|
165
|
+
- test/dummy_app/config/initializers/secret_token.rb
|
166
|
+
- test/dummy_app/config/initializers/session_store.rb
|
167
|
+
- test/dummy_app/config/initializers/wrap_parameters.rb
|
168
|
+
- test/dummy_app/config/locales/en.yml
|
169
|
+
- test/dummy_app/config/routes.rb
|
170
|
+
- test/dummy_app/config/secrets.yml
|
171
|
+
- test/dummy_app/db/schema.rb
|
172
|
+
- test/dummy_app/db/test.sqlite3
|
173
|
+
- test/dummy_app/log/test.log
|
174
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/-E/-EGHXi_ULbX3JP7NLAsVLUrIZgOg0HxdFnvlbmA7DCA.cache
|
175
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/3N/3NnKgR2TsTI1qCXKZpts0uJzp2dRJcoYp3nnFU6YE4o.cache
|
176
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/4O/4O6Anm3R8aSIVfMhGtp5tZK3x17fcY1SbWoDN_6hb-o.cache
|
177
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/Bl/BlRucSL6BNAMZvHs4UVilikqNOKnbCHSGHIQRgtKvFQ.cache
|
178
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/E1/E18Q7xE2E1RWvLRrvvBEf0ahfumckOlJWqD7YiPqLAk.cache
|
179
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/LR/LRLaw7viwBb9Mi_VFZxGbKIooy8Fqf1aB_iOTETsMyc.cache
|
180
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/Mj/MjwYGG9GkHD1fwwH2bg66EBYl3zCA_mqeDF9otey4-U.cache
|
181
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/QP/QPocswuHM6KXKYd99JclYrybZep_vYHyfZQ-nGJB5uU.cache
|
182
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/S9/S9TmgasHOyBiOSg3OOpu2mzuUwMxxUE3zyKrExqIryQ.cache
|
183
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/VK/VKv8TUCURhWXKU5qrG7ocs75FsysCWNtswhqtTi7Lfw.cache
|
184
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/dZ/dZLyjSvZKmLRvanBa3SmJ58gtb_fQaHMzS1A04p2x_4.cache
|
185
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/kA/kAfbx3YIMg0L2tevtZdwbRjKKy9xOmYlXJ7LapMXDME.cache
|
186
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/mn/mnaHTtsBvdmAbdqsorI0KqFoT2eQIhgDVER_He3q2HU.cache
|
187
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/rT/rTYHFXiH_g6ZVTgNXdVrDz3fihYKq9Diqso1lzP257o.cache
|
188
|
+
- test/integration/prawn_rails_test.rb
|
189
|
+
- test/prawn_rails_test.rb
|
224
190
|
- test/test_helper.rb
|
225
191
|
homepage: https://github.com/cortiz/prawn-rails
|
226
192
|
licenses: []
|
@@ -241,87 +207,55 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
241
207
|
version: '0'
|
242
208
|
requirements: []
|
243
209
|
rubyforge_project:
|
244
|
-
rubygems_version: 2.6.
|
210
|
+
rubygems_version: 2.6.11
|
245
211
|
signing_key:
|
246
212
|
specification_version: 4
|
247
213
|
summary: Prawn Handler for Rails
|
248
214
|
test_files:
|
249
215
|
- test/test_helper.rb
|
250
|
-
- test/
|
251
|
-
- test/
|
252
|
-
- test/
|
253
|
-
- test/
|
254
|
-
- test/
|
255
|
-
- test/
|
256
|
-
- test/
|
257
|
-
- test/
|
258
|
-
- test/
|
259
|
-
- test/
|
260
|
-
- test/
|
261
|
-
- test/
|
262
|
-
- test/
|
263
|
-
- test/
|
264
|
-
- test/
|
265
|
-
- test/
|
266
|
-
- test/
|
267
|
-
- test/
|
268
|
-
- test/
|
269
|
-
- test/
|
270
|
-
- test/
|
271
|
-
- test/
|
272
|
-
- test/
|
273
|
-
- test/
|
274
|
-
- test/
|
275
|
-
- test/
|
276
|
-
- test/
|
277
|
-
- test/
|
278
|
-
- test/
|
279
|
-
- test/
|
280
|
-
- test/
|
281
|
-
- test/
|
282
|
-
- test/
|
283
|
-
- test/
|
284
|
-
- test/
|
285
|
-
- test/
|
286
|
-
- test/
|
287
|
-
- test/
|
288
|
-
- test/
|
289
|
-
- test/
|
290
|
-
- test/
|
291
|
-
- test/
|
292
|
-
- test/
|
293
|
-
- test/
|
294
|
-
- test/
|
295
|
-
- test/
|
296
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/mQ/mQditvxd7m-nwTpkGVCOalFZesEjSbG8EOKqC3zq108.cache
|
297
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/bB/bBZWYaOxRNh_QSoJcD-Mkvcz9KgvY-dG9fwXISEG4K8.cache
|
298
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/jl/jlvE-YiBY3zJbTaEnymfM6KKQ0VC4fh-ABin-DfZQH0.cache
|
299
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/Qo/QoWFwSTYT96pcyCl7-2W0dwnhAcu5C8LIcoBrcDyStI.cache
|
300
|
-
- test/dummy/tmp/cache/assets/sprockets/v3.0/7z/7zCgQfsGmkfNRDRJbRNwZOHR1KjCn5eXK6kQ3MD3Q2I.cache
|
301
|
-
- test/dummy/public/500.html
|
302
|
-
- test/dummy/public/404.html
|
303
|
-
- test/dummy/public/422.html
|
304
|
-
- test/dummy/public/favicon.ico
|
305
|
-
- test/dummy/script/rails
|
306
|
-
- test/dummy/Rakefile
|
307
|
-
- test/dummy/config/application.rb
|
308
|
-
- test/dummy/config/boot.rb
|
309
|
-
- test/dummy/config/routes.rb
|
310
|
-
- test/dummy/config/environments/development.rb
|
311
|
-
- test/dummy/config/environments/test.rb
|
312
|
-
- test/dummy/config/environments/production.rb
|
313
|
-
- test/dummy/config/database.yml
|
314
|
-
- test/dummy/config/initializers/backtrace_silencers.rb
|
315
|
-
- test/dummy/config/initializers/mime_types.rb
|
316
|
-
- test/dummy/config/initializers/inflections.rb
|
317
|
-
- test/dummy/config/initializers/prawn-rails.rb
|
318
|
-
- test/dummy/config/initializers/wrap_parameters.rb
|
319
|
-
- test/dummy/config/initializers/session_store.rb
|
320
|
-
- test/dummy/config/initializers/secret_token.rb
|
321
|
-
- test/dummy/config/secrets.yml
|
322
|
-
- test/dummy/config/locales/en.yml
|
323
|
-
- test/dummy/config/environment.rb
|
324
|
-
- test/dummy/config.ru
|
325
|
-
- test/dummy/log/test.log
|
326
|
-
- test/prawn-rails_test.rb
|
327
|
-
- test/integration/navigation_test.rb
|
216
|
+
- test/prawn_rails_test.rb
|
217
|
+
- test/integration/prawn_rails_test.rb
|
218
|
+
- test/dummy_app/app/views/layouts/application.html.erb
|
219
|
+
- test/dummy_app/app/views/reports/sample.html.erb
|
220
|
+
- test/dummy_app/app/views/reports/sample.pdf.prawn
|
221
|
+
- test/dummy_app/app/views/reports/table.pdf.prawn
|
222
|
+
- test/dummy_app/app/assets/javascripts/application.js
|
223
|
+
- test/dummy_app/app/assets/stylesheets/application.css
|
224
|
+
- test/dummy_app/app/controllers/reports_controller.rb
|
225
|
+
- test/dummy_app/app/controllers/application_controller.rb
|
226
|
+
- test/dummy_app/db/test.sqlite3
|
227
|
+
- test/dummy_app/db/schema.rb
|
228
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/mn/mnaHTtsBvdmAbdqsorI0KqFoT2eQIhgDVER_He3q2HU.cache
|
229
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/LR/LRLaw7viwBb9Mi_VFZxGbKIooy8Fqf1aB_iOTETsMyc.cache
|
230
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/QP/QPocswuHM6KXKYd99JclYrybZep_vYHyfZQ-nGJB5uU.cache
|
231
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/S9/S9TmgasHOyBiOSg3OOpu2mzuUwMxxUE3zyKrExqIryQ.cache
|
232
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/Bl/BlRucSL6BNAMZvHs4UVilikqNOKnbCHSGHIQRgtKvFQ.cache
|
233
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/rT/rTYHFXiH_g6ZVTgNXdVrDz3fihYKq9Diqso1lzP257o.cache
|
234
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/dZ/dZLyjSvZKmLRvanBa3SmJ58gtb_fQaHMzS1A04p2x_4.cache
|
235
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/3N/3NnKgR2TsTI1qCXKZpts0uJzp2dRJcoYp3nnFU6YE4o.cache
|
236
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/kA/kAfbx3YIMg0L2tevtZdwbRjKKy9xOmYlXJ7LapMXDME.cache
|
237
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/VK/VKv8TUCURhWXKU5qrG7ocs75FsysCWNtswhqtTi7Lfw.cache
|
238
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/E1/E18Q7xE2E1RWvLRrvvBEf0ahfumckOlJWqD7YiPqLAk.cache
|
239
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/-E/-EGHXi_ULbX3JP7NLAsVLUrIZgOg0HxdFnvlbmA7DCA.cache
|
240
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/Mj/MjwYGG9GkHD1fwwH2bg66EBYl3zCA_mqeDF9otey4-U.cache
|
241
|
+
- test/dummy_app/tmp/cache/assets/sprockets/v3.0/4O/4O6Anm3R8aSIVfMhGtp5tZK3x17fcY1SbWoDN_6hb-o.cache
|
242
|
+
- test/dummy_app/Rakefile
|
243
|
+
- test/dummy_app/config/application.rb
|
244
|
+
- test/dummy_app/config/boot.rb
|
245
|
+
- test/dummy_app/config/routes.rb
|
246
|
+
- test/dummy_app/config/environments/development.rb
|
247
|
+
- test/dummy_app/config/environments/test.rb
|
248
|
+
- test/dummy_app/config/environments/production.rb
|
249
|
+
- test/dummy_app/config/database.yml
|
250
|
+
- test/dummy_app/config/initializers/backtrace_silencers.rb
|
251
|
+
- test/dummy_app/config/initializers/mime_types.rb
|
252
|
+
- test/dummy_app/config/initializers/inflections.rb
|
253
|
+
- test/dummy_app/config/initializers/prawn-rails.rb
|
254
|
+
- test/dummy_app/config/initializers/wrap_parameters.rb
|
255
|
+
- test/dummy_app/config/initializers/session_store.rb
|
256
|
+
- test/dummy_app/config/initializers/secret_token.rb
|
257
|
+
- test/dummy_app/config/secrets.yml
|
258
|
+
- test/dummy_app/config/locales/en.yml
|
259
|
+
- test/dummy_app/config/environment.rb
|
260
|
+
- test/dummy_app/config.ru
|
261
|
+
- test/dummy_app/log/test.log
|
@@ -1,48 +0,0 @@
|
|
1
|
-
module PrawnRails
|
2
|
-
module Extension
|
3
|
-
##
|
4
|
-
# Removes all html tags from the string
|
5
|
-
# @param html[String] string to remove the tags
|
6
|
-
# @return [String] the string with out the tags
|
7
|
-
##
|
8
|
-
def html_strip html
|
9
|
-
return html if html.nil?
|
10
|
-
|
11
|
-
text = html
|
12
|
-
.gsub(/( |\n|\s)+/im, ' ')
|
13
|
-
.squeeze(' ')
|
14
|
-
.strip
|
15
|
-
.gsub(/<([^\s]+)[^>]*(src|href)=\s*(.?)([^>\s]*)\3[^>]*>\4<\/\1>/i, '\4')
|
16
|
-
|
17
|
-
links = []
|
18
|
-
linkregex = /<[^>]*(src|href)=\s*(.?)([^>\s]*)\2[^>]*>\s*/i
|
19
|
-
|
20
|
-
while linkregex.match(text)
|
21
|
-
links << $~[3]
|
22
|
-
text.sub!(linkregex, "[#{links.size}]")
|
23
|
-
end
|
24
|
-
|
25
|
-
text = text
|
26
|
-
.gsub(/<(script|style)[^>]*>.*<\/\1>/im, '')
|
27
|
-
.gsub(/<!--.*-->/m, '')
|
28
|
-
.gsub(/<hr(| [^>]*)>/i, "___\n")
|
29
|
-
.gsub(/<li(| [^>]*)>/i, "\n* ")
|
30
|
-
.gsub(/<blockquote(| [^>]*)>/i, '> ')
|
31
|
-
.gsub(/<(br)(| [^>]*)>/i, "\n")
|
32
|
-
.gsub(/<(\/h[\d]+|p)(| [^>]*)>/i, "\n\n")
|
33
|
-
.gsub(/<[^>]*>/, '')
|
34
|
-
|
35
|
-
text = CGI.unescapeHTML(text).lstrip.gsub(/\n[ ]+/, "\n") + "\n"
|
36
|
-
|
37
|
-
links.each_with_index do |link, i|
|
38
|
-
unless links[i].nil?
|
39
|
-
text = text + "\n [#{i+1}] <#{CGI.unescapeHTML(link)}>"
|
40
|
-
end
|
41
|
-
end
|
42
|
-
|
43
|
-
links = nil
|
44
|
-
|
45
|
-
return text
|
46
|
-
end
|
47
|
-
end
|
48
|
-
end
|