massimo 0.6.2 → 0.6.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.
- data/lib/massimo/javascript.rb +34 -14
- data/lib/massimo.rb +1 -1
- metadata +47 -19
data/lib/massimo/javascript.rb
CHANGED
@@ -1,24 +1,44 @@
|
|
1
1
|
module Massimo
|
2
2
|
class Javascript < Massimo::Resource
|
3
3
|
def render
|
4
|
-
|
5
|
-
when '.coffee'
|
6
|
-
require 'coffee-script' unless defined?(CoffeeScript)
|
7
|
-
CoffeeScript.compile(content, Massimo.config.options_for(:coffee_script))
|
8
|
-
else
|
9
|
-
require 'sprockets' unless defined?(Sprockets)
|
10
|
-
options = Massimo.config.options_for(:sprockets).merge(
|
11
|
-
:assert_root => Massimo.config.output_path,
|
12
|
-
:source_files => [ source_path.to_s ]
|
13
|
-
)
|
14
|
-
secretary = Sprockets::Secretary.new(options)
|
15
|
-
secretary.install_assets
|
16
|
-
secretary.concatenation.to_s
|
17
|
-
end
|
4
|
+
compress(compile)
|
18
5
|
end
|
19
6
|
|
20
7
|
def extension
|
21
8
|
@extension ||= '.js'
|
22
9
|
end
|
10
|
+
|
11
|
+
protected
|
12
|
+
|
13
|
+
def compile
|
14
|
+
case source_path.extname.to_s
|
15
|
+
when '.coffee'
|
16
|
+
require 'coffee-script' unless defined?(CoffeeScript)
|
17
|
+
CoffeeScript.compile(content, Massimo.config.options_for(:coffee_script))
|
18
|
+
else
|
19
|
+
require 'sprockets' unless defined?(Sprockets)
|
20
|
+
options = Massimo.config.options_for(:sprockets).merge(
|
21
|
+
:assert_root => Massimo.config.output_path,
|
22
|
+
:source_files => [ source_path.to_s ]
|
23
|
+
)
|
24
|
+
secretary = Sprockets::Secretary.new(options)
|
25
|
+
secretary.install_assets
|
26
|
+
secretary.concatenation.to_s
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
def compress(javascript)
|
31
|
+
case Massimo.config.javascripts_compressor.to_s
|
32
|
+
when 'min', 'jsmin'
|
33
|
+
require 'jsmin' unless defined?(JSMin)
|
34
|
+
JSMin.minify(javascript).strip
|
35
|
+
when 'pack', 'packr'
|
36
|
+
require 'packr' unless defined?(Packr)
|
37
|
+
options = { :shrink_vars => true }.merge Massimo.config.options_for(:packr)
|
38
|
+
Packr.pack(javascript, options)
|
39
|
+
else
|
40
|
+
javascript
|
41
|
+
end
|
42
|
+
end
|
23
43
|
end
|
24
44
|
end
|
data/lib/massimo.rb
CHANGED
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 6
|
8
|
-
-
|
9
|
-
version: 0.6.
|
8
|
+
- 3
|
9
|
+
version: 0.6.3
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Pete Browne
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-
|
17
|
+
date: 2010-05-03 00:00:00 -05:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
@@ -145,9 +145,23 @@ dependencies:
|
|
145
145
|
type: :development
|
146
146
|
version_requirements: *id009
|
147
147
|
- !ruby/object:Gem::Dependency
|
148
|
-
name:
|
148
|
+
name: unindent
|
149
149
|
prerelease: false
|
150
150
|
requirement: &id010 !ruby/object:Gem::Requirement
|
151
|
+
requirements:
|
152
|
+
- - ~>
|
153
|
+
- !ruby/object:Gem::Version
|
154
|
+
segments:
|
155
|
+
- 0
|
156
|
+
- 9
|
157
|
+
- 0
|
158
|
+
version: 0.9.0
|
159
|
+
type: :development
|
160
|
+
version_requirements: *id010
|
161
|
+
- !ruby/object:Gem::Dependency
|
162
|
+
name: haml
|
163
|
+
prerelease: false
|
164
|
+
requirement: &id011 !ruby/object:Gem::Requirement
|
151
165
|
requirements:
|
152
166
|
- - ">="
|
153
167
|
- !ruby/object:Gem::Version
|
@@ -158,11 +172,11 @@ dependencies:
|
|
158
172
|
- beta
|
159
173
|
version: 3.0.0.beta
|
160
174
|
type: :development
|
161
|
-
version_requirements: *
|
175
|
+
version_requirements: *id011
|
162
176
|
- !ruby/object:Gem::Dependency
|
163
177
|
name: less
|
164
178
|
prerelease: false
|
165
|
-
requirement: &
|
179
|
+
requirement: &id012 !ruby/object:Gem::Requirement
|
166
180
|
requirements:
|
167
181
|
- - ~>
|
168
182
|
- !ruby/object:Gem::Version
|
@@ -172,11 +186,11 @@ dependencies:
|
|
172
186
|
- 0
|
173
187
|
version: 1.2.0
|
174
188
|
type: :development
|
175
|
-
version_requirements: *
|
189
|
+
version_requirements: *id012
|
176
190
|
- !ruby/object:Gem::Dependency
|
177
191
|
name: coffee-script
|
178
192
|
prerelease: false
|
179
|
-
requirement: &
|
193
|
+
requirement: &id013 !ruby/object:Gem::Requirement
|
180
194
|
requirements:
|
181
195
|
- - ~>
|
182
196
|
- !ruby/object:Gem::Version
|
@@ -186,11 +200,11 @@ dependencies:
|
|
186
200
|
- 0
|
187
201
|
version: 0.3.0
|
188
202
|
type: :development
|
189
|
-
version_requirements: *
|
203
|
+
version_requirements: *id013
|
190
204
|
- !ruby/object:Gem::Dependency
|
191
205
|
name: sprockets
|
192
206
|
prerelease: false
|
193
|
-
requirement: &
|
207
|
+
requirement: &id014 !ruby/object:Gem::Requirement
|
194
208
|
requirements:
|
195
209
|
- - ~>
|
196
210
|
- !ruby/object:Gem::Version
|
@@ -200,25 +214,25 @@ dependencies:
|
|
200
214
|
- 0
|
201
215
|
version: 1.0.0
|
202
216
|
type: :development
|
203
|
-
version_requirements: *
|
217
|
+
version_requirements: *id014
|
204
218
|
- !ruby/object:Gem::Dependency
|
205
|
-
name:
|
219
|
+
name: growl
|
206
220
|
prerelease: false
|
207
|
-
requirement: &
|
221
|
+
requirement: &id015 !ruby/object:Gem::Requirement
|
208
222
|
requirements:
|
209
223
|
- - ~>
|
210
224
|
- !ruby/object:Gem::Version
|
211
225
|
segments:
|
226
|
+
- 1
|
212
227
|
- 0
|
213
|
-
- 9
|
214
228
|
- 0
|
215
|
-
version: 0.
|
229
|
+
version: 1.0.0
|
216
230
|
type: :development
|
217
|
-
version_requirements: *
|
231
|
+
version_requirements: *id015
|
218
232
|
- !ruby/object:Gem::Dependency
|
219
|
-
name:
|
233
|
+
name: jsmin
|
220
234
|
prerelease: false
|
221
|
-
requirement: &
|
235
|
+
requirement: &id016 !ruby/object:Gem::Requirement
|
222
236
|
requirements:
|
223
237
|
- - ~>
|
224
238
|
- !ruby/object:Gem::Version
|
@@ -228,7 +242,21 @@ dependencies:
|
|
228
242
|
- 0
|
229
243
|
version: 1.0.0
|
230
244
|
type: :development
|
231
|
-
version_requirements: *
|
245
|
+
version_requirements: *id016
|
246
|
+
- !ruby/object:Gem::Dependency
|
247
|
+
name: packr
|
248
|
+
prerelease: false
|
249
|
+
requirement: &id017 !ruby/object:Gem::Requirement
|
250
|
+
requirements:
|
251
|
+
- - ~>
|
252
|
+
- !ruby/object:Gem::Version
|
253
|
+
segments:
|
254
|
+
- 3
|
255
|
+
- 1
|
256
|
+
- 0
|
257
|
+
version: 3.1.0
|
258
|
+
type: :development
|
259
|
+
version_requirements: *id017
|
232
260
|
description: Massimo builds HTML, Javascript, and CSS Files from your source.
|
233
261
|
email: me@petebrowne.com
|
234
262
|
executables:
|