html_press 0.7.0 → 0.7.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.
@@ -5,7 +5,8 @@ module HtmlPress
5
5
  :logger => false,
6
6
  :unquoted_attributes => false,
7
7
  :drop_empty_values => false,
8
- :strip_crlf => false
8
+ :strip_crlf => false,
9
+ :js_minifier_options => false
9
10
  }
10
11
 
11
12
  def initialize (options = {})
@@ -71,7 +72,7 @@ module HtmlPress
71
72
  attrs(m, 'script', true)
72
73
  end
73
74
  begin
74
- js_compressed = HtmlPress.js_compressor js
75
+ js_compressed = HtmlPress.js_compressor js, @options[:js_minifier_options]
75
76
  m.gsub!(js, js_compressed)
76
77
  rescue Exception => e
77
78
  log e.message
@@ -292,7 +293,7 @@ module HtmlPress
292
293
  if events.include? name
293
294
  value_original.gsub! /^javascript:\s+|;$/, ''
294
295
  begin
295
- value_original = HtmlPress.js_compressor value_original
296
+ value_original = HtmlPress.js_compressor value_original, @options[:js_minifier_options]
296
297
  # TODO what about escaped attribute values?
297
298
  if delimiter == "\""
298
299
  value_original.gsub! "\"", "'"
@@ -1,11 +1,14 @@
1
1
  module HtmlPress
2
2
  begin
3
3
  require 'uglifier'
4
- def self.js_compressor (text)
5
- Uglifier.new.compile(text).gsub(/;$/,'')
4
+ # Available options https://github.com/lautis/uglifier#options
5
+ def self.js_compressor (text, options = nil)
6
+ options ||= {}
7
+ options[:inline_script] = true
8
+ Uglifier.new(options).compile(text).gsub(/;$/,'')
6
9
  end
7
10
  rescue LoadError => e
8
- def self.js_compressor (text)
11
+ def self.js_compressor (text, options = nil)
9
12
  text
10
13
  end
11
14
  end
@@ -1,3 +1,3 @@
1
1
  module HtmlPress
2
- VERSION = "0.7.0"
2
+ VERSION = "0.7.1"
3
3
  end
@@ -44,6 +44,9 @@ describe HtmlPress do
44
44
  pressed_script = "<script>" + HtmlPress.js_compressor(script) + "</script>"
45
45
  script = " <script>" + script + "</script> "
46
46
  HtmlPress.press(script).should eql pressed_script
47
+
48
+ script = %q{<script>window.jQuery||document.write('<script src="/components/jquery/jquery.js"><\/script>')</script>}
49
+ HtmlPress.press(script).should eql script
47
50
  end
48
51
 
49
52
  it "should compress css in style tags" do
metadata CHANGED
@@ -1,103 +1,104 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: html_press
3
- version: !ruby/object:Gem::Version
4
- version: 0.7.0
3
+ version: !ruby/object:Gem::Version
4
+ hash: 1
5
5
  prerelease:
6
+ segments:
7
+ - 0
8
+ - 7
9
+ - 1
10
+ version: 0.7.1
6
11
  platform: ruby
7
- authors:
12
+ authors:
8
13
  - stereobooster
9
14
  autorequire:
10
15
  bindir: bin
11
16
  cert_chain: []
12
- date: 2012-09-27 00:00:00.000000000 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
17
+
18
+ date: 2012-10-06 00:00:00 Z
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
15
21
  name: rspec
16
- requirement: !ruby/object:Gem::Requirement
17
- none: false
18
- requirements:
19
- - - ! '>='
20
- - !ruby/object:Gem::Version
21
- version: '0'
22
- type: :development
23
22
  prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ! '>='
28
- - !ruby/object:Gem::Version
29
- version: '0'
30
- - !ruby/object:Gem::Dependency
31
- name: rake
32
- requirement: !ruby/object:Gem::Requirement
23
+ requirement: &id001 !ruby/object:Gem::Requirement
33
24
  none: false
34
- requirements:
35
- - - ! '>='
36
- - !ruby/object:Gem::Version
37
- version: '0'
25
+ requirements:
26
+ - - ">="
27
+ - !ruby/object:Gem::Version
28
+ hash: 3
29
+ segments:
30
+ - 0
31
+ version: "0"
38
32
  type: :development
33
+ version_requirements: *id001
34
+ - !ruby/object:Gem::Dependency
35
+ name: rake
39
36
  prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
37
+ requirement: &id002 !ruby/object:Gem::Requirement
41
38
  none: false
42
- requirements:
43
- - - ! '>='
44
- - !ruby/object:Gem::Version
45
- version: '0'
46
- - !ruby/object:Gem::Dependency
39
+ requirements:
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ hash: 3
43
+ segments:
44
+ - 0
45
+ version: "0"
46
+ type: :development
47
+ version_requirements: *id002
48
+ - !ruby/object:Gem::Dependency
47
49
  name: css_press
48
- requirement: !ruby/object:Gem::Requirement
49
- none: false
50
- requirements:
51
- - - ! '>='
52
- - !ruby/object:Gem::Version
53
- version: 0.3.2
54
- type: :runtime
55
50
  prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
51
+ requirement: &id003 !ruby/object:Gem::Requirement
57
52
  none: false
58
- requirements:
59
- - - ! '>='
60
- - !ruby/object:Gem::Version
53
+ requirements:
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ hash: 23
57
+ segments:
58
+ - 0
59
+ - 3
60
+ - 2
61
61
  version: 0.3.2
62
- - !ruby/object:Gem::Dependency
63
- name: uglifier
64
- requirement: !ruby/object:Gem::Requirement
65
- none: false
66
- requirements:
67
- - - ! '>='
68
- - !ruby/object:Gem::Version
69
- version: '0'
70
62
  type: :runtime
63
+ version_requirements: *id003
64
+ - !ruby/object:Gem::Dependency
65
+ name: uglifier
71
66
  prerelease: false
72
- version_requirements: !ruby/object:Gem::Requirement
67
+ requirement: &id004 !ruby/object:Gem::Requirement
73
68
  none: false
74
- requirements:
75
- - - ! '>='
76
- - !ruby/object:Gem::Version
77
- version: '0'
78
- - !ruby/object:Gem::Dependency
79
- name: htmlentities
80
- requirement: !ruby/object:Gem::Requirement
81
- none: false
82
- requirements:
83
- - - ! '>='
84
- - !ruby/object:Gem::Version
85
- version: '0'
69
+ requirements:
70
+ - - ">="
71
+ - !ruby/object:Gem::Version
72
+ hash: 3
73
+ segments:
74
+ - 0
75
+ version: "0"
86
76
  type: :runtime
77
+ version_requirements: *id004
78
+ - !ruby/object:Gem::Dependency
79
+ name: htmlentities
87
80
  prerelease: false
88
- version_requirements: !ruby/object:Gem::Requirement
81
+ requirement: &id005 !ruby/object:Gem::Requirement
89
82
  none: false
90
- requirements:
91
- - - ! '>='
92
- - !ruby/object:Gem::Version
93
- version: '0'
83
+ requirements:
84
+ - - ">="
85
+ - !ruby/object:Gem::Version
86
+ hash: 3
87
+ segments:
88
+ - 0
89
+ version: "0"
90
+ type: :runtime
91
+ version_requirements: *id005
94
92
  description: Ruby gem for compressing html
95
- email:
93
+ email:
96
94
  - stereobooster@gmail.com
97
95
  executables: []
96
+
98
97
  extensions: []
98
+
99
99
  extra_rdoc_files: []
100
- files:
100
+
101
+ files:
101
102
  - .gitignore
102
103
  - .travis.yml
103
104
  - Gemfile
@@ -115,32 +116,36 @@ files:
115
116
  - spec/html_press_spec.rb
116
117
  homepage: https://github.com/stereobooster/html_press
117
118
  licenses: []
119
+
118
120
  post_install_message:
119
121
  rdoc_options: []
120
- require_paths:
122
+
123
+ require_paths:
121
124
  - lib
122
- required_ruby_version: !ruby/object:Gem::Requirement
125
+ required_ruby_version: !ruby/object:Gem::Requirement
123
126
  none: false
124
- requirements:
125
- - - ! '>='
126
- - !ruby/object:Gem::Version
127
- version: '0'
128
- segments:
127
+ requirements:
128
+ - - ">="
129
+ - !ruby/object:Gem::Version
130
+ hash: 3
131
+ segments:
129
132
  - 0
130
- hash: 769698289
131
- required_rubygems_version: !ruby/object:Gem::Requirement
133
+ version: "0"
134
+ required_rubygems_version: !ruby/object:Gem::Requirement
132
135
  none: false
133
- requirements:
134
- - - ! '>='
135
- - !ruby/object:Gem::Version
136
- version: '0'
137
- segments:
136
+ requirements:
137
+ - - ">="
138
+ - !ruby/object:Gem::Version
139
+ hash: 3
140
+ segments:
138
141
  - 0
139
- hash: 769698289
142
+ version: "0"
140
143
  requirements: []
144
+
141
145
  rubyforge_project: html_press
142
- rubygems_version: 1.8.23
146
+ rubygems_version: 1.8.24
143
147
  signing_key:
144
148
  specification_version: 3
145
149
  summary: Compress html
146
150
  test_files: []
151
+