haml_coffee_assets 1.12.0 → 1.13.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +30 -21
- data/lib/haml_coffee_assets/action_view/patches.rb +40 -0
- data/lib/haml_coffee_assets/action_view/resolver.rb +1 -0
- data/lib/haml_coffee_assets/action_view/template_handler.rb +6 -2
- data/lib/haml_coffee_assets/compiler.rb +1 -1
- data/lib/haml_coffee_assets/configuration.rb +7 -7
- data/lib/haml_coffee_assets/global_context.rb +38 -0
- data/lib/haml_coffee_assets/rails/engine.rb +45 -1
- data/lib/haml_coffee_assets/version.rb +1 -1
- data/lib/haml_coffee_assets.rb +4 -30
- data/lib/js/hamlcoffee.js +44 -69
- data/vendor/assets/javascripts/hamlcoffee.js.coffee.erb +1 -1
- data/vendor/assets/javascripts/hamlcoffee_amd.js.coffee.erb +1 -1
- metadata +5 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f16bd71b0c4e027ca2945067b211a9c3475f01fc
|
4
|
+
data.tar.gz: d08c4a18c98bb10899d6a034a18969b1c0dfe26a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6cda2dc44bc2fbbe5d7f95a0fd3848fb98c2b7b01339f4322c764a42c832d7320b5aca103a43c8cccb39a2d6496f845dbd8f2fb6adc8a93960f83376084d3b2c
|
7
|
+
data.tar.gz: 49bddad7bd2cf83626e817f2c488837f4afbbe44b00ab872b5bc2d89ab380a194aa1e0ecd81a0bb33ec74cbabec66a234c6db353dcb2f0afc28421f0a1128508
|
data/README.md
CHANGED
@@ -49,7 +49,7 @@ group :assets do
|
|
49
49
|
end
|
50
50
|
```
|
51
51
|
|
52
|
-
And require the `hamlcoffee.js` in your `app/assets/javascripts/
|
52
|
+
And require the `hamlcoffee.js` in your `app/assets/javascripts/templates/context.js.coffee`:
|
53
53
|
|
54
54
|
```coffeescript
|
55
55
|
#= require hamlcoffee
|
@@ -126,15 +126,22 @@ Given a Haml Coffee template at `app/assets/javascripts/templates/books/_book.ha
|
|
126
126
|
%dd= @author
|
127
127
|
```
|
128
128
|
|
129
|
-
|
129
|
+
And a Haml Coffee context at `app/assets/javascripts/templates/context.js`:
|
130
|
+
|
131
|
+
```javascript
|
132
|
+
//= require hamlcoffee
|
133
|
+
```
|
134
|
+
|
135
|
+
To render on server in `books#index`:
|
130
136
|
|
131
137
|
```haml
|
132
138
|
= render "book", :name => "A Tale of Two Cities", :author => "Charles Dickens"
|
133
139
|
```
|
134
140
|
|
135
|
-
|
141
|
+
To render and render the same file on the client using the asset pipeline:
|
136
142
|
|
137
143
|
```coffeescript
|
144
|
+
#= require hamlcoffee
|
138
145
|
#= require templates/books/_book
|
139
146
|
|
140
147
|
JST["books/book"](name: "A Tale of Two Cities", author: "Charles Dickens")
|
@@ -372,6 +379,14 @@ Now you can use the properties from the global context in every template:
|
|
372
379
|
%p Please log into your account.
|
373
380
|
```
|
374
381
|
|
382
|
+
When rendering on the server, haml_coffee_assets will expect the global context to be overriden with the `global_context_asset`. Located by default at `templates/context`.
|
383
|
+
|
384
|
+
You can configure the path to this asset in your `config/application.rb`:
|
385
|
+
|
386
|
+
```ruby
|
387
|
+
config.hamlcoffee.global_context_asset = 'templates/context'
|
388
|
+
```
|
389
|
+
|
375
390
|
If you like to use your own implementation, simply configure your context function in your `config/application.rb`:
|
376
391
|
|
377
392
|
```ruby
|
@@ -397,22 +412,6 @@ App.globalTemplateContext = (locals) -> HAML.extend({}, {
|
|
397
412
|
Please have a look at the wiki for [further examples](https://github.com/netzpirat/haml_coffee_assets/wiki) on how to
|
398
413
|
use the global context.
|
399
414
|
|
400
|
-
#### Extending the template scope with the context
|
401
|
-
|
402
|
-
Pure haml-coffee cannot extend the template scope with the context, since CoffeeScript doesn't have the `with`
|
403
|
-
statement. But when you're using Haml Coffee Assets, then you can have the scope to be extended
|
404
|
-
with the context by enable it in the configuration:
|
405
|
-
|
406
|
-
```ruby
|
407
|
-
config.hamlcoffee.extendScope = true
|
408
|
-
```
|
409
|
-
|
410
|
-
With this option enabled, you don't need to use `@` or `this` to reference context data:
|
411
|
-
|
412
|
-
```Haml
|
413
|
-
%p= name
|
414
|
-
```
|
415
|
-
|
416
415
|
### Customize the tag lists
|
417
416
|
|
418
417
|
Haml Coffee contains two list of HTML tags that you can customize. In general you're fine with the defaults, but if
|
@@ -462,13 +461,13 @@ You can see the [default implementation](https://github.com/netzpirat/haml_coffe
|
|
462
461
|
and the [Haml Coffee documentation](https://github.com/netzpirat/haml-coffee#custom-helper-function-options)
|
463
462
|
for more information about each helper function.
|
464
463
|
|
465
|
-
###
|
464
|
+
### Templates path
|
466
465
|
|
467
466
|
Rails will look for templates in `app/assets/javascripts/templates` when rendering on the server side. If you store your
|
468
467
|
templates in another directory, you can change this location:
|
469
468
|
|
470
469
|
```ruby
|
471
|
-
config.hamlcoffee.
|
470
|
+
config.hamlcoffee.templates_path = "custom/template/path"
|
472
471
|
```
|
473
472
|
|
474
473
|
## Partial rendering
|
@@ -538,6 +537,16 @@ Pull requests are very welcome! Please try to follow these simple rules if appli
|
|
538
537
|
|
539
538
|
For questions please join `#haml` on irc.freenode.net
|
540
539
|
|
540
|
+
### Open Commit Bit
|
541
|
+
|
542
|
+
Guard has an open commit bit policy: Anyone with an accepted pull request gets added as a repository collaborator.
|
543
|
+
Please try to follow these simple rules:
|
544
|
+
|
545
|
+
* Commit directly onto the master branch only for typos, improvements to the readme and documentation (please add
|
546
|
+
`[ci skip]` to the commit message).
|
547
|
+
* Create a feature branch and open a pull-request early for any new features to get feedback.
|
548
|
+
* Make sure you adhere to the general pull request rules above.
|
549
|
+
|
541
550
|
## Contributors
|
542
551
|
|
543
552
|
See the [CHANGELOG](https://github.com/netzpirat/haml_coffee_assets/blob/master/CHANGELOG.md) and the GitHub list of
|
@@ -0,0 +1,40 @@
|
|
1
|
+
# Monkey patches for rails to support our template engine.
|
2
|
+
# Hopefully these fixes will make it into rails or we find a
|
3
|
+
# better way to avoid this.
|
4
|
+
#
|
5
|
+
# TODO: Don't monkey patch rails
|
6
|
+
|
7
|
+
# See patch notes inline
|
8
|
+
class ::ActionView::Template
|
9
|
+
|
10
|
+
# Patch, it's almost exaclty the same with a small tweak
|
11
|
+
def handle_render_error(view, e) #:nodoc:
|
12
|
+
if e.is_a?(::ActionView::Template::Error)
|
13
|
+
e.sub_template_of(self)
|
14
|
+
raise e
|
15
|
+
else
|
16
|
+
assigns = view.respond_to?(:assigns) ? view.assigns : {}
|
17
|
+
template = self
|
18
|
+
|
19
|
+
# Here's the patch: if the javascript runtime throws an error
|
20
|
+
# during compilation, we get to this handler but our view
|
21
|
+
# doesn't have a lookup_context - thus throwing a very hard
|
22
|
+
# to debug error in Template#refresh. To circumvent, ensure the
|
23
|
+
# view responds to lookup_context before refreshing.
|
24
|
+
if view.respond_to?(:lookup_context) and template.source.nil?
|
25
|
+
template = refresh(view)
|
26
|
+
template.encode!
|
27
|
+
end
|
28
|
+
if ::ActionView::Template::Error.instance_method(:initialize).arity == 3
|
29
|
+
# Rails < 4.0 expects three arguments here
|
30
|
+
raise ::ActionView::Template::Error.new(template, assigns, e)
|
31
|
+
elsif ::ActionView::Template::Error.instance_method(:initialize).arity == 2
|
32
|
+
# and Rails >= 4.0 expects two arguments
|
33
|
+
raise ::ActionView::Template::Error.new(template, e)
|
34
|
+
else
|
35
|
+
# try and fail graciously if this changes in the future
|
36
|
+
raise e
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
@@ -7,6 +7,10 @@ module HamlCoffeeAssets
|
|
7
7
|
new(template).render
|
8
8
|
end
|
9
9
|
|
10
|
+
def self.stale?(last_compile_time)
|
11
|
+
GlobalContext.mtime > last_compile_time
|
12
|
+
end
|
13
|
+
|
10
14
|
def initialize(template, partial = false, dependencies = [])
|
11
15
|
@template = template
|
12
16
|
@partial = partial
|
@@ -48,7 +52,7 @@ module HamlCoffeeAssets
|
|
48
52
|
end
|
49
53
|
|
50
54
|
def helpers
|
51
|
-
|
55
|
+
GlobalContext.to_s
|
52
56
|
end
|
53
57
|
|
54
58
|
def compiled_template
|
@@ -99,7 +103,7 @@ module HamlCoffeeAssets
|
|
99
103
|
|
100
104
|
def partial_source(path)
|
101
105
|
::Rails.root.join(
|
102
|
-
::HamlCoffeeAssets.config.
|
106
|
+
::HamlCoffeeAssets.config.templates_path,
|
103
107
|
partial_path(path) + '.hamlc'
|
104
108
|
).read
|
105
109
|
end
|
@@ -28,7 +28,7 @@ module HamlCoffeeAssets
|
|
28
28
|
config.customPreserve, config.customFindAndPreserve,
|
29
29
|
config.customSurround, config.customSucceed, config.customPrecede, config.customReference,
|
30
30
|
config.preserveTags, config.selfCloseTags,
|
31
|
-
config.context,
|
31
|
+
config.context, false)
|
32
32
|
end
|
33
33
|
|
34
34
|
private
|
@@ -37,8 +37,8 @@ module HamlCoffeeAssets
|
|
37
37
|
self.preserveTags = 'textarea,pre'
|
38
38
|
self.selfCloseTags = 'meta,img,link,br,hr,input,area,param,col,base'
|
39
39
|
self.context = 'window.HAML.context'
|
40
|
-
self.
|
41
|
-
self.
|
40
|
+
self.templates_path = 'app/assets/javascripts/templates'
|
41
|
+
self.global_context_asset = 'templates/context'
|
42
42
|
self.name_filter = lambda { |n|
|
43
43
|
parts = n.sub(/^templates\//, '').split('/')
|
44
44
|
parts.last.sub!(/^_/, '')
|
@@ -126,10 +126,6 @@ module HamlCoffeeAssets
|
|
126
126
|
#
|
127
127
|
attr_accessor :context
|
128
128
|
|
129
|
-
# Extend the template scope with the context
|
130
|
-
#
|
131
|
-
attr_accessor :extendScope
|
132
|
-
|
133
129
|
# A proc that is called to modify the template name used as the
|
134
130
|
# JST key. The proc is passed the name as an argument and should
|
135
131
|
# return the modified name (or unmodified) name.
|
@@ -138,7 +134,11 @@ module HamlCoffeeAssets
|
|
138
134
|
|
139
135
|
# Path to templates shared by Rails and JS.
|
140
136
|
#
|
141
|
-
attr_accessor :
|
137
|
+
attr_accessor :templates_path
|
138
|
+
|
139
|
+
# Path to custom helpers shared by Rails and JS.
|
140
|
+
#
|
141
|
+
attr_accessor :global_context_asset
|
142
142
|
|
143
143
|
end
|
144
144
|
|
@@ -0,0 +1,38 @@
|
|
1
|
+
module HamlCoffeeAssets
|
2
|
+
class GlobalContext
|
3
|
+
def self.asset
|
4
|
+
find_asset(asset_path)
|
5
|
+
end
|
6
|
+
|
7
|
+
def self.asset_path
|
8
|
+
::HamlCoffeeAssets.config.global_context_asset
|
9
|
+
end
|
10
|
+
|
11
|
+
def self.mtime
|
12
|
+
return nil unless asset.respond_to?(:mtime)
|
13
|
+
asset.mtime
|
14
|
+
end
|
15
|
+
|
16
|
+
def self.body
|
17
|
+
return "" if asset.blank?
|
18
|
+
asset.body
|
19
|
+
end
|
20
|
+
|
21
|
+
def self.to_s
|
22
|
+
return "" if asset.blank?
|
23
|
+
asset.to_s
|
24
|
+
end
|
25
|
+
|
26
|
+
private
|
27
|
+
|
28
|
+
def self.env
|
29
|
+
::Rails.application.assets
|
30
|
+
end
|
31
|
+
|
32
|
+
def self.find_asset(name)
|
33
|
+
return "" unless ::Rails.respond_to?(:application)
|
34
|
+
return "" unless ::Rails.application.respond_to?(:assets)
|
35
|
+
env.find_asset(name)
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -27,12 +27,56 @@ module HamlCoffeeAssets
|
|
27
27
|
|
28
28
|
# Add template path to ActionController's view paths.
|
29
29
|
ActiveSupport.on_load(:action_controller) do
|
30
|
-
path = ::HamlCoffeeAssets.config.
|
30
|
+
path = ::HamlCoffeeAssets.config.templates_path
|
31
31
|
resolver = ::HamlCoffeeAssets::ActionView::Resolver.new(path)
|
32
32
|
::ActionController::Base.append_view_path(resolver)
|
33
33
|
end
|
34
34
|
end
|
35
35
|
|
36
|
+
if ::Rails.env == "development"
|
37
|
+
# Monkey patch rails so it busts the server cache for templates
|
38
|
+
# depending on the global_context_asset.
|
39
|
+
#
|
40
|
+
# Currently, the only way to force rails to recompile a server template is to
|
41
|
+
# touch it. This is problematic because when the global_context_asset
|
42
|
+
# changes we need to manually touch every template that uses the congtext
|
43
|
+
# in some way.
|
44
|
+
#
|
45
|
+
# To ease development, make rails 'touch' and recompile hamlc templates
|
46
|
+
# when the global context has changed.
|
47
|
+
#
|
48
|
+
# Do this ONLY in development.
|
49
|
+
#
|
50
|
+
# TODO: Don't monkey patch rails.
|
51
|
+
module ::ActionView
|
52
|
+
class Template
|
53
|
+
def stale?
|
54
|
+
return false unless ::Rails.env == "development"
|
55
|
+
return false unless handler.respond_to?(:stale?)
|
56
|
+
handler.stale?(updated_at)
|
57
|
+
end
|
58
|
+
|
59
|
+
alias_method :old_render, :render
|
60
|
+
|
61
|
+
# by default, rails will only compile a template once
|
62
|
+
# path render so it recompiles the template if 'stale'
|
63
|
+
def render(view, locals, buffer=nil, &block)
|
64
|
+
if @compiled and stale?
|
65
|
+
now = Time.now
|
66
|
+
File.utime(now, now, identifier) # touch file
|
67
|
+
::Rails.logger.info "Busted cache for #{identifier} by touching it"
|
68
|
+
|
69
|
+
view = refresh(view)
|
70
|
+
@source = view.source
|
71
|
+
@compiled = false
|
72
|
+
end
|
73
|
+
old_render(view, locals, buffer, &block)
|
74
|
+
end
|
75
|
+
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
79
|
+
|
36
80
|
next unless app.assets
|
37
81
|
|
38
82
|
# Register Tilt template (for Sprockets)
|
data/lib/haml_coffee_assets.rb
CHANGED
@@ -6,15 +6,17 @@ require 'tilt'
|
|
6
6
|
require 'sprockets'
|
7
7
|
require 'execjs'
|
8
8
|
|
9
|
-
require 'haml_coffee_assets/
|
9
|
+
require 'haml_coffee_assets/global_context'
|
10
10
|
require 'haml_coffee_assets/configuration'
|
11
11
|
require 'haml_coffee_assets/compiler'
|
12
|
+
require 'haml_coffee_assets/version'
|
12
13
|
|
13
14
|
require 'haml_coffee_assets/tilt/template_handler'
|
14
15
|
|
15
|
-
if defined?(Rails)
|
16
|
+
if defined?(Rails) && Rails.version >= '3.0.0'
|
16
17
|
require 'rails'
|
17
18
|
require 'haml_coffee_assets/rails/engine'
|
19
|
+
require 'haml_coffee_assets/action_view/patches'
|
18
20
|
else
|
19
21
|
require 'sprockets/engines'
|
20
22
|
Sprockets.register_engine '.hamlc', ::HamlCoffeeAssets::Tilt::TemplateHandler
|
@@ -24,32 +26,4 @@ end
|
|
24
26
|
# its configuration settings.
|
25
27
|
#
|
26
28
|
module HamlCoffeeAssets
|
27
|
-
|
28
|
-
# Get the path to the `hamlcoffee.js.coffee.erb` helper file.
|
29
|
-
#
|
30
|
-
# @return [String] the absolute path to the helpers file
|
31
|
-
#
|
32
|
-
def self.helpers_path
|
33
|
-
File.expand_path(File.join(File.dirname(__FILE__), '..', 'vendor', 'assets', 'javascripts', 'hamlcoffee.js.coffee.erb'))
|
34
|
-
end
|
35
|
-
|
36
|
-
# Get the Haml Coffee Assets helper file
|
37
|
-
#
|
38
|
-
# @param [Boolean] compile whether to compile the CS helpers or not
|
39
|
-
# @return [String] the helpers content
|
40
|
-
#
|
41
|
-
def self.helpers(compile=true)
|
42
|
-
require 'erb'
|
43
|
-
|
44
|
-
content = File.read(HamlCoffeeAssets.helpers_path)
|
45
|
-
script = ERB.new(content).result(binding)
|
46
|
-
|
47
|
-
if compile
|
48
|
-
require 'coffee-script'
|
49
|
-
script = CoffeeScript.compile(script)
|
50
|
-
end
|
51
|
-
|
52
|
-
script
|
53
|
-
end
|
54
|
-
|
55
29
|
end
|
data/lib/js/hamlcoffee.js
CHANGED
@@ -454,55 +454,54 @@ require.define("/haml-coffee.coffee",function(require,module,exports,__dirname,_
|
|
454
454
|
indent = require('./util/text').indent;
|
455
455
|
|
456
456
|
module.exports = HamlCoffee = (function() {
|
457
|
-
HamlCoffee.VERSION = '1.11.
|
457
|
+
HamlCoffee.VERSION = '1.11.3';
|
458
458
|
|
459
459
|
function HamlCoffee(options) {
|
460
|
-
var segment, segments, _base, _base1, _base10, _base11, _base12, _base13, _base2, _base3, _base4, _base5, _base6, _base7, _base8, _base9, _i, _len
|
461
|
-
|
460
|
+
var segment, segments, _base, _base1, _base10, _base11, _base12, _base13, _base2, _base3, _base4, _base5, _base6, _base7, _base8, _base9, _i, _len;
|
462
461
|
this.options = options != null ? options : {};
|
463
|
-
if ((
|
462
|
+
if ((_base = this.options).placement == null) {
|
464
463
|
_base.placement = 'global';
|
465
464
|
}
|
466
|
-
if ((
|
465
|
+
if ((_base1 = this.options).dependencies == null) {
|
467
466
|
_base1.dependencies = {
|
468
467
|
hc: 'hamlcoffee'
|
469
468
|
};
|
470
469
|
}
|
471
|
-
if ((
|
470
|
+
if ((_base2 = this.options).escapeHtml == null) {
|
472
471
|
_base2.escapeHtml = true;
|
473
472
|
}
|
474
|
-
if ((
|
473
|
+
if ((_base3 = this.options).escapeAttributes == null) {
|
475
474
|
_base3.escapeAttributes = true;
|
476
475
|
}
|
477
|
-
if ((
|
476
|
+
if ((_base4 = this.options).cleanValue == null) {
|
478
477
|
_base4.cleanValue = true;
|
479
478
|
}
|
480
|
-
if ((
|
479
|
+
if ((_base5 = this.options).uglify == null) {
|
481
480
|
_base5.uglify = false;
|
482
481
|
}
|
483
|
-
if ((
|
482
|
+
if ((_base6 = this.options).basename == null) {
|
484
483
|
_base6.basename = false;
|
485
484
|
}
|
486
|
-
if ((
|
485
|
+
if ((_base7 = this.options).extendScope == null) {
|
487
486
|
_base7.extendScope = false;
|
488
487
|
}
|
489
|
-
if ((
|
488
|
+
if ((_base8 = this.options).format == null) {
|
490
489
|
_base8.format = 'html5';
|
491
490
|
}
|
492
|
-
if ((
|
491
|
+
if ((_base9 = this.options).hyphenateDataAttrs == null) {
|
493
492
|
_base9.hyphenateDataAttrs = true;
|
494
493
|
}
|
495
|
-
if ((
|
494
|
+
if ((_base10 = this.options).preserveTags == null) {
|
496
495
|
_base10.preserveTags = 'pre,textarea';
|
497
496
|
}
|
498
|
-
if ((
|
497
|
+
if ((_base11 = this.options).selfCloseTags == null) {
|
499
498
|
_base11.selfCloseTags = 'meta,img,link,br,hr,input,area,param,col,base';
|
500
499
|
}
|
501
500
|
if (this.options.placement === 'global') {
|
502
|
-
if ((
|
501
|
+
if ((_base12 = this.options).name == null) {
|
503
502
|
_base12.name = 'test';
|
504
503
|
}
|
505
|
-
if ((
|
504
|
+
if ((_base13 = this.options).namespace == null) {
|
506
505
|
_base13.namespace = 'window.HAML';
|
507
506
|
}
|
508
507
|
segments = ("" + this.options.namespace + "." + this.options.name).replace(/(\s|-)+/g, '_').split(/\./);
|
@@ -537,11 +536,11 @@ require.define("/haml-coffee.coffee",function(require,module,exports,__dirname,_
|
|
537
536
|
|
538
537
|
HamlCoffee.prototype.updateBlockLevel = function() {
|
539
538
|
this.currentBlockLevel = this.currentIndent / this.tabSize;
|
540
|
-
if (this.
|
541
|
-
|
542
|
-
|
543
|
-
|
544
|
-
if (
|
539
|
+
if (!this.node.isCommented()) {
|
540
|
+
if (this.currentBlockLevel - Math.floor(this.currentBlockLevel) > 0) {
|
541
|
+
throw "Indentation error in line " + this.lineNumber;
|
542
|
+
}
|
543
|
+
if ((this.currentIndent - this.previousIndent) / this.tabSize > 1) {
|
545
544
|
throw "Block level too deep in line " + this.lineNumber;
|
546
545
|
}
|
547
546
|
}
|
@@ -571,7 +570,6 @@ require.define("/haml-coffee.coffee",function(require,module,exports,__dirname,_
|
|
571
570
|
|
572
571
|
HamlCoffee.prototype.popParent = function() {
|
573
572
|
var i, _i, _ref, _results;
|
574
|
-
|
575
573
|
_results = [];
|
576
574
|
for (i = _i = 0, _ref = this.delta - 1; 0 <= _ref ? _i <= _ref : _i >= _ref; i = 0 <= _ref ? ++_i : --_i) {
|
577
575
|
_results.push(this.parentNode = this.stack.pop());
|
@@ -603,7 +601,6 @@ require.define("/haml-coffee.coffee",function(require,module,exports,__dirname,_
|
|
603
601
|
|
604
602
|
HamlCoffee.prototype.nodeFactory = function(expression) {
|
605
603
|
var node, options, _ref;
|
606
|
-
|
607
604
|
if (expression == null) {
|
608
605
|
expression = '';
|
609
606
|
}
|
@@ -628,8 +625,7 @@ require.define("/haml-coffee.coffee",function(require,module,exports,__dirname,_
|
|
628
625
|
};
|
629
626
|
|
630
627
|
HamlCoffee.prototype.parse = function(source) {
|
631
|
-
var attributes, expression, line, lines, result, text, ws, _ref;
|
632
|
-
|
628
|
+
var attributes, expression, line, lines, range, result, tabsize, text, ws, _i, _j, _len, _ref, _ref1, _results;
|
633
629
|
if (source == null) {
|
634
630
|
source = '';
|
635
631
|
}
|
@@ -638,7 +634,7 @@ require.define("/haml-coffee.coffee",function(require,module,exports,__dirname,_
|
|
638
634
|
this.node = null;
|
639
635
|
this.stack = [];
|
640
636
|
this.root = this.parentNode = new Node('', this.getNodeOptions());
|
641
|
-
lines = source.split("\n");
|
637
|
+
lines = source.replace(/\r/g, '').split("\n");
|
642
638
|
while ((line = lines.shift()) !== void 0) {
|
643
639
|
if ((this.node instanceof Filter) && !this.exitFilter) {
|
644
640
|
if (/^(\s)*$/.test(line)) {
|
@@ -654,11 +650,20 @@ require.define("/haml-coffee.coffee",function(require,module,exports,__dirname,_
|
|
654
650
|
lines.unshift(line);
|
655
651
|
continue;
|
656
652
|
}
|
657
|
-
|
658
|
-
|
659
|
-
this.
|
660
|
-
|
661
|
-
|
653
|
+
range = this.tabSize > 2 ? (function() {
|
654
|
+
_results = [];
|
655
|
+
for (var _i = _ref = this.tabSize; _ref <= 1 ? _i <= 1 : _i >= 1; _ref <= 1 ? _i++ : _i--){ _results.push(_i); }
|
656
|
+
return _results;
|
657
|
+
}).apply(this) : [2, 1];
|
658
|
+
for (_j = 0, _len = range.length; _j < _len; _j++) {
|
659
|
+
tabsize = range[_j];
|
660
|
+
text = line.match(RegExp("^\\s{" + ((this.node.blockLevel * tabsize) + tabsize) + "}(.*)"));
|
661
|
+
if (text) {
|
662
|
+
this.node.addChild(new Text(text[1], this.getNodeOptions({
|
663
|
+
parentNode: this.node
|
664
|
+
})));
|
665
|
+
break;
|
666
|
+
}
|
662
667
|
}
|
663
668
|
}
|
664
669
|
} else {
|
@@ -675,9 +680,13 @@ require.define("/haml-coffee.coffee",function(require,module,exports,__dirname,_
|
|
675
680
|
expression += ' ' + attributes.match(/^\s*(.*?)(\s+\|\s*)?$/)[1];
|
676
681
|
this.lineNumber++;
|
677
682
|
}
|
683
|
+
while (/^-#/.test(expression) && !/^(\s*)[-=&!~.%#</]/.test(lines[0]) && lines.length > 0) {
|
684
|
+
lines.shift();
|
685
|
+
this.lineNumber++;
|
686
|
+
}
|
678
687
|
if (expression.match(/(\s)+\|\s*$/)) {
|
679
688
|
expression = expression.replace(/(\s)+\|\s*$/, ' ');
|
680
|
-
while ((
|
689
|
+
while ((_ref1 = lines[0]) != null ? _ref1.match(/(\s)+\|$/) : void 0) {
|
681
690
|
expression += lines.shift().match(/^(\s*)(.*)/)[2].replace(/(\s)+\|\s*$/, '');
|
682
691
|
this.lineNumber++;
|
683
692
|
}
|
@@ -700,7 +709,6 @@ require.define("/haml-coffee.coffee",function(require,module,exports,__dirname,_
|
|
700
709
|
|
701
710
|
HamlCoffee.prototype.evaluate = function(node) {
|
702
711
|
var child, _i, _len, _ref;
|
703
|
-
|
704
712
|
_ref = node.children;
|
705
713
|
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
706
714
|
child = _ref[_i];
|
@@ -722,13 +730,11 @@ require.define("/haml-coffee.coffee",function(require,module,exports,__dirname,_
|
|
722
730
|
|
723
731
|
HamlCoffee.prototype.renderStandalone = function() {
|
724
732
|
var template;
|
725
|
-
|
726
733
|
return template = "return (context) ->\n (->\n" + (indent(this.precompile(), 2)) + "\n ).call(context)";
|
727
734
|
};
|
728
735
|
|
729
736
|
HamlCoffee.prototype.renderAmd = function() {
|
730
737
|
var m, module, modules, param, params, template, _ref, _ref1;
|
731
|
-
|
732
738
|
if (/^hamlcoffee/.test(this.options.dependencies['hc'])) {
|
733
739
|
this.options.customHtmlEscape = 'hc.escape';
|
734
740
|
this.options.customCleanValue = 'hc.cleanValue';
|
@@ -757,7 +763,6 @@ require.define("/haml-coffee.coffee",function(require,module,exports,__dirname,_
|
|
757
763
|
if (modules.length !== 0) {
|
758
764
|
modules = (function() {
|
759
765
|
var _i, _len, _results;
|
760
|
-
|
761
766
|
_results = [];
|
762
767
|
for (_i = 0, _len = modules.length; _i < _len; _i++) {
|
763
768
|
m = modules[_i];
|
@@ -774,7 +779,6 @@ require.define("/haml-coffee.coffee",function(require,module,exports,__dirname,_
|
|
774
779
|
|
775
780
|
HamlCoffee.prototype.renderGlobal = function() {
|
776
781
|
var template;
|
777
|
-
|
778
782
|
template = this.intro;
|
779
783
|
if (this.options.extendScope) {
|
780
784
|
template += "" + this.options.namespace + "['" + this.options.name + "'] = (context) -> ( ->\n";
|
@@ -792,7 +796,6 @@ require.define("/haml-coffee.coffee",function(require,module,exports,__dirname,_
|
|
792
796
|
|
793
797
|
HamlCoffee.prototype.precompile = function() {
|
794
798
|
var code, fn;
|
795
|
-
|
796
799
|
fn = '';
|
797
800
|
code = this.createCode();
|
798
801
|
if (code.indexOf('$e') !== -1) {
|
@@ -862,7 +865,6 @@ require.define("/haml-coffee.coffee",function(require,module,exports,__dirname,_
|
|
862
865
|
|
863
866
|
HamlCoffee.prototype.createCode = function() {
|
864
867
|
var child, code, line, processors, _i, _j, _len, _len1, _ref, _ref1;
|
865
|
-
|
866
868
|
code = [];
|
867
869
|
this.lines = [];
|
868
870
|
_ref = this.root.children;
|
@@ -923,7 +925,6 @@ require.define("/haml-coffee.coffee",function(require,module,exports,__dirname,_
|
|
923
925
|
|
924
926
|
HamlCoffee.prototype.combineText = function(lines) {
|
925
927
|
var combined, line, nextLine;
|
926
|
-
|
927
928
|
combined = [];
|
928
929
|
while ((line = lines.shift()) !== void 0) {
|
929
930
|
if (line.type === 'text') {
|
@@ -967,7 +968,6 @@ require.define("/haml-coffee.coffee",function(require,module,exports,__dirname,_
|
|
967
968
|
|
968
969
|
HamlCoffee.prototype.findDependencies = function(code) {
|
969
970
|
var dependencies, match, module, name, requireRegexp;
|
970
|
-
|
971
971
|
requireRegexp = /require(?:\s+|\()(['"])(.+?)(\1)\)?/gm;
|
972
972
|
dependencies = {};
|
973
973
|
while (match = requireRegexp.exec(code)) {
|
@@ -1117,7 +1117,6 @@ require.define("/nodes/node.coffee",function(require,module,exports,__dirname,__
|
|
1117
1117
|
|
1118
1118
|
Node.prototype.render = function() {
|
1119
1119
|
var child, output, rendered, tag, _i, _j, _k, _l, _len, _len1, _len2, _len3, _len4, _m, _ref, _ref1, _ref2, _ref3, _ref4;
|
1120
|
-
|
1121
1120
|
output = [];
|
1122
1121
|
if (this.silent) {
|
1123
1122
|
return output;
|
@@ -1189,7 +1188,6 @@ require.define("/util/text.coffee",function(require,module,exports,__dirname,__f
|
|
1189
1188
|
module.exports = {
|
1190
1189
|
whitespace: function(n) {
|
1191
1190
|
var a;
|
1192
|
-
|
1193
1191
|
n = n * 2;
|
1194
1192
|
a = [];
|
1195
1193
|
while (a.length < n) {
|
@@ -1217,6 +1215,7 @@ require.define("/util/text.coffee",function(require,module,exports,__dirname,__f
|
|
1217
1215
|
},
|
1218
1216
|
preserve: function(code) {
|
1219
1217
|
if (code) {
|
1218
|
+
code.replace(/\r/g, '');
|
1220
1219
|
return code.replace(/<(pre|textarea)>(.*?)<\/\1>/g, function(text) {
|
1221
1220
|
return text.replace('\\n', '\&\#x000A;');
|
1222
1221
|
});
|
@@ -1279,7 +1278,6 @@ require.define("/nodes/haml.coffee",function(require,module,exports,__dirname,__
|
|
1279
1278
|
|
1280
1279
|
Haml.prototype.evaluate = function() {
|
1281
1280
|
var assignment, code, identifier, match, prefix, tokens;
|
1282
|
-
|
1283
1281
|
tokens = this.parseExpression(this.expression);
|
1284
1282
|
if (tokens.doctype) {
|
1285
1283
|
return this.opener = this.markText("" + (escapeQuotes(this.buildDocType(tokens.doctype))));
|
@@ -1340,7 +1338,6 @@ require.define("/nodes/haml.coffee",function(require,module,exports,__dirname,__
|
|
1340
1338
|
|
1341
1339
|
Haml.prototype.parseExpression = function(exp) {
|
1342
1340
|
var attributes, classes, id, key, tag, value, _ref1, _ref2;
|
1343
|
-
|
1344
1341
|
tag = this.parseTag(exp);
|
1345
1342
|
if (this.preserveTags.indexOf(tag.tag) !== -1) {
|
1346
1343
|
this.preserve = true;
|
@@ -1380,7 +1377,6 @@ require.define("/nodes/haml.coffee",function(require,module,exports,__dirname,__
|
|
1380
1377
|
|
1381
1378
|
Haml.prototype.parseTag = function(exp) {
|
1382
1379
|
var assignment, attr, attributes, ch, classes, doctype, end, error, haml, htmlAttributes, id, ids, key, klass, level, pos, reference, rest, rubyAttributes, start, tag, text, val, whitespace, _i, _j, _k, _len, _len1, _ref1, _ref2, _ref3, _ref4, _ref5;
|
1383
|
-
|
1384
1380
|
try {
|
1385
1381
|
doctype = (_ref1 = exp.match(/^(\!{3}.*)/)) != null ? _ref1[1] : void 0;
|
1386
1382
|
if (doctype) {
|
@@ -1479,7 +1475,6 @@ require.define("/nodes/haml.coffee",function(require,module,exports,__dirname,__
|
|
1479
1475
|
tag: tag ? tag[1] : 'div',
|
1480
1476
|
ids: ids ? (function() {
|
1481
1477
|
var _l, _len2, _results;
|
1482
|
-
|
1483
1478
|
_results = [];
|
1484
1479
|
for (_l = 0, _len2 = ids.length; _l < _len2; _l++) {
|
1485
1480
|
id = ids[_l];
|
@@ -1489,7 +1484,6 @@ require.define("/nodes/haml.coffee",function(require,module,exports,__dirname,__
|
|
1489
1484
|
})() : void 0,
|
1490
1485
|
classes: classes ? (function() {
|
1491
1486
|
var _l, _len2, _results;
|
1492
|
-
|
1493
1487
|
_results = [];
|
1494
1488
|
for (_l = 0, _len2 = classes.length; _l < _len2; _l++) {
|
1495
1489
|
klass = classes[_l];
|
@@ -1510,7 +1504,6 @@ require.define("/nodes/haml.coffee",function(require,module,exports,__dirname,__
|
|
1510
1504
|
|
1511
1505
|
Haml.prototype.parseAttributes = function(exp) {
|
1512
1506
|
var attr, attributes, ch, endPos, hasDataAttribute, inDataAttribute, key, keyValue, keys, level, marker, markers, pairs, pos, quote, quoted, start, startPos, type, value, _i, _j, _k, _len, _len1, _ref1, _ref2, _ref3, _ref4, _ref5;
|
1513
|
-
|
1514
1507
|
attributes = {};
|
1515
1508
|
if (exp === void 0) {
|
1516
1509
|
return attributes;
|
@@ -1617,13 +1610,11 @@ require.define("/nodes/haml.coffee",function(require,module,exports,__dirname,__
|
|
1617
1610
|
|
1618
1611
|
Haml.prototype.buildHtmlTagPrefix = function(tokens) {
|
1619
1612
|
var classList, classes, hasDynamicClass, key, klass, name, tagParts, value, _i, _len, _ref1;
|
1620
|
-
|
1621
1613
|
tagParts = ["<" + tokens.tag];
|
1622
1614
|
if (tokens.classes) {
|
1623
1615
|
hasDynamicClass = false;
|
1624
1616
|
classList = (function() {
|
1625
1617
|
var _i, _len, _ref1, _results;
|
1626
|
-
|
1627
1618
|
_ref1 = tokens.classes;
|
1628
1619
|
_results = [];
|
1629
1620
|
for (_i = 0, _len = _ref1.length; _i < _len; _i++) {
|
@@ -1680,7 +1671,6 @@ require.define("/nodes/haml.coffee",function(require,module,exports,__dirname,__
|
|
1680
1671
|
|
1681
1672
|
Haml.prototype.interpolateCodeAttribute = function(text, unwrap) {
|
1682
1673
|
var quoted;
|
1683
|
-
|
1684
1674
|
if (unwrap == null) {
|
1685
1675
|
unwrap = false;
|
1686
1676
|
}
|
@@ -1712,7 +1702,6 @@ require.define("/nodes/haml.coffee",function(require,module,exports,__dirname,__
|
|
1712
1702
|
|
1713
1703
|
Haml.prototype.quoteAndEscapeAttributeValue = function(value, code) {
|
1714
1704
|
var escaped, hasDoubleQuotes, hasInterpolation, hasSingleQuotes, quoted, result, token, tokens;
|
1715
|
-
|
1716
1705
|
if (code == null) {
|
1717
1706
|
code = false;
|
1718
1707
|
}
|
@@ -1728,7 +1717,6 @@ require.define("/nodes/haml.coffee",function(require,module,exports,__dirname,__
|
|
1728
1717
|
hasInterpolation = false;
|
1729
1718
|
tokens = (function() {
|
1730
1719
|
var _i, _len, _results;
|
1731
|
-
|
1732
1720
|
_results = [];
|
1733
1721
|
for (_i = 0, _len = tokens.length; _i < _len; _i++) {
|
1734
1722
|
token = tokens[_i];
|
@@ -1775,7 +1763,6 @@ require.define("/nodes/haml.coffee",function(require,module,exports,__dirname,__
|
|
1775
1763
|
if (hasDoubleQuotes && !hasSingleQuotes) {
|
1776
1764
|
escaped = (function() {
|
1777
1765
|
var _i, _len, _results;
|
1778
|
-
|
1779
1766
|
_results = [];
|
1780
1767
|
for (_i = 0, _len = tokens.length; _i < _len; _i++) {
|
1781
1768
|
token = tokens[_i];
|
@@ -1788,7 +1775,6 @@ require.define("/nodes/haml.coffee",function(require,module,exports,__dirname,__
|
|
1788
1775
|
if (hasSingleQuotes && hasDoubleQuotes) {
|
1789
1776
|
escaped = (function() {
|
1790
1777
|
var _i, _len, _results;
|
1791
|
-
|
1792
1778
|
_results = [];
|
1793
1779
|
for (_i = 0, _len = tokens.length; _i < _len; _i++) {
|
1794
1780
|
token = tokens[_i];
|
@@ -1804,7 +1790,6 @@ require.define("/nodes/haml.coffee",function(require,module,exports,__dirname,__
|
|
1804
1790
|
|
1805
1791
|
Haml.prototype.splitInterpolations = function(value) {
|
1806
1792
|
var ch, ch2, level, pos, start, tokens, _i, _ref1;
|
1807
|
-
|
1808
1793
|
level = 0;
|
1809
1794
|
start = 0;
|
1810
1795
|
tokens = [];
|
@@ -1888,7 +1873,6 @@ require.define("/nodes/code.coffee",function(require,module,exports,__dirname,__
|
|
1888
1873
|
|
1889
1874
|
Code.prototype.evaluate = function() {
|
1890
1875
|
var code, codeBlock, escape, identifier;
|
1891
|
-
|
1892
1876
|
codeBlock = this.expression.match(/(-|!=|\&=|=|~)\s?(.*)?/);
|
1893
1877
|
identifier = codeBlock[1];
|
1894
1878
|
code = codeBlock[2];
|
@@ -1943,7 +1927,6 @@ require.define("/nodes/comment.coffee",function(require,module,exports,__dirname
|
|
1943
1927
|
|
1944
1928
|
Comment.prototype.evaluate = function() {
|
1945
1929
|
var comment, expression, identifier, _ref1;
|
1946
|
-
|
1947
1930
|
_ref1 = this.expression.match(/(-#|\/\[|\/)\s?(.*)?/), expression = _ref1[0], identifier = _ref1[1], comment = _ref1[2];
|
1948
1931
|
switch (identifier) {
|
1949
1932
|
case '-#':
|
@@ -1992,13 +1975,11 @@ require.define("/nodes/filter.coffee",function(require,module,exports,__dirname,
|
|
1992
1975
|
|
1993
1976
|
Filter.prototype.evaluate = function() {
|
1994
1977
|
var _ref1;
|
1995
|
-
|
1996
1978
|
return this.filter = (_ref1 = this.expression.match(/:(escaped|preserve|css|javascript|coffeescript|plain|cdata|coffeescript)(.*)?/)) != null ? _ref1[1] : void 0;
|
1997
1979
|
};
|
1998
1980
|
|
1999
1981
|
Filter.prototype.render = function() {
|
2000
1982
|
var child, indent, output, preserve, _i, _j, _len, _len1, _ref1, _ref2;
|
2001
|
-
|
2002
1983
|
output = [];
|
2003
1984
|
switch (this.filter) {
|
2004
1985
|
case 'escaped':
|
@@ -2066,7 +2047,6 @@ require.define("/nodes/filter.coffee",function(require,module,exports,__dirname,
|
|
2066
2047
|
|
2067
2048
|
Filter.prototype.renderFilterContent = function(indent, output, type) {
|
2068
2049
|
var child, content, e, empty, line, _i, _j, _k, _len, _len1, _ref1, _results;
|
2069
|
-
|
2070
2050
|
if (type == null) {
|
2071
2051
|
type = 'text';
|
2072
2052
|
}
|
@@ -2127,9 +2107,8 @@ require.define("/nodes/directive.coffee",function(require,module,exports,__dirna
|
|
2127
2107
|
Directive.prototype.directives = {
|
2128
2108
|
include: function(expression) {
|
2129
2109
|
var context, e, name, statement, _ref1;
|
2130
|
-
|
2131
2110
|
try {
|
2132
|
-
_ref1 = expression.match(/\s*['"](
|
2111
|
+
_ref1 = expression.match(/\s*['"](.*?)['"](?:,\s*(.*))?\s*/), _ref1[0], name = _ref1[1], context = _ref1[2];
|
2133
2112
|
} catch (_error) {
|
2134
2113
|
e = _error;
|
2135
2114
|
throw new Error("Failed to parse the include directive from " + expression);
|
@@ -2153,7 +2132,6 @@ require.define("/nodes/directive.coffee",function(require,module,exports,__dirna
|
|
2153
2132
|
|
2154
2133
|
Directive.prototype.evaluate = function() {
|
2155
2134
|
var directives, e, name, rest, _ref1;
|
2156
|
-
|
2157
2135
|
directives = Object.keys(this.directives).join('|');
|
2158
2136
|
try {
|
2159
2137
|
_ref1 = this.expression.match(RegExp("\\+(" + directives + ")(.*)")), _ref1[0], name = _ref1[1], rest = _ref1[2];
|
@@ -2190,7 +2168,6 @@ require.define("/hamlc.coffee",function(require,module,exports,__dirname,__filen
|
|
2190
2168
|
module.exports = {
|
2191
2169
|
compile: function(source, options) {
|
2192
2170
|
var compiler, template;
|
2193
|
-
|
2194
2171
|
if (options == null) {
|
2195
2172
|
options = {};
|
2196
2173
|
}
|
@@ -2205,7 +2182,6 @@ require.define("/hamlc.coffee",function(require,module,exports,__dirname,__filen
|
|
2205
2182
|
},
|
2206
2183
|
template: function(source, name, namespace, options) {
|
2207
2184
|
var compiler;
|
2208
|
-
|
2209
2185
|
if (options == null) {
|
2210
2186
|
options = {};
|
2211
2187
|
}
|
@@ -2217,7 +2193,6 @@ require.define("/hamlc.coffee",function(require,module,exports,__dirname,__filen
|
|
2217
2193
|
},
|
2218
2194
|
__express: function(filename, options, callback) {
|
2219
2195
|
var err, source;
|
2220
|
-
|
2221
2196
|
if (!!(options && options.constructor && options.call && options.apply)) {
|
2222
2197
|
callback = options;
|
2223
2198
|
options = {};
|
@@ -75,7 +75,7 @@ class window.HAML
|
|
75
75
|
#
|
76
76
|
@findAndPreserve: (text) ->
|
77
77
|
tags = '<%= ::HamlCoffeeAssets.config.preserveTags %>'.split(',').join('|')
|
78
|
-
text = text.replace ///<(#{ tags })>([^]*?)<\/\1>///g, (str, tag, content) ->
|
78
|
+
text = text.replace(/\r/g, '').replace ///<(#{ tags })>([^]*?)<\/\1>///g, (str, tag, content) ->
|
79
79
|
"<#{ tag }>#{ <%= ::HamlCoffeeAssets.config.customPreserve %>(content) }</#{ tag }>"
|
80
80
|
|
81
81
|
# The surround helper surrounds the function output
|
@@ -48,7 +48,7 @@ define ->
|
|
48
48
|
#
|
49
49
|
findAndPreserve: (text) ->
|
50
50
|
tags = '<%= ::HamlCoffeeAssets.config.preserveTags %>'.split(',').join('|')
|
51
|
-
text = text.replace ///<(#{ tags })>([^]*?)<\/\1>/// g, (str, tag, content) ->
|
51
|
+
text = text.replace(/\r/g, '').replace ///<(#{ tags })>([^]*?)<\/\1>/// g, (str, tag, content) ->
|
52
52
|
"<#{ tag }>#{ <%= ::HamlCoffeeAssets.config.customPreserve %>(content) }</#{ tag }>"
|
53
53
|
|
54
54
|
# The surround helper surrounds the function output
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: haml_coffee_assets
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.13.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Kessler
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-
|
11
|
+
date: 2013-08-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: coffee-script
|
@@ -73,10 +73,12 @@ executables: []
|
|
73
73
|
extensions: []
|
74
74
|
extra_rdoc_files: []
|
75
75
|
files:
|
76
|
+
- lib/haml_coffee_assets/action_view/patches.rb
|
76
77
|
- lib/haml_coffee_assets/action_view/resolver.rb
|
77
78
|
- lib/haml_coffee_assets/action_view/template_handler.rb
|
78
79
|
- lib/haml_coffee_assets/compiler.rb
|
79
80
|
- lib/haml_coffee_assets/configuration.rb
|
81
|
+
- lib/haml_coffee_assets/global_context.rb
|
80
82
|
- lib/haml_coffee_assets/rails/engine.rb
|
81
83
|
- lib/haml_coffee_assets/tilt/template_handler.rb
|
82
84
|
- lib/haml_coffee_assets/version.rb
|
@@ -107,7 +109,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
107
109
|
version: 1.3.6
|
108
110
|
requirements: []
|
109
111
|
rubyforge_project: haml_coffee_assets
|
110
|
-
rubygems_version: 2.0.
|
112
|
+
rubygems_version: 2.0.2
|
111
113
|
signing_key:
|
112
114
|
specification_version: 4
|
113
115
|
summary: Haml CoffeeScript templates
|