haml_coffee_assets 1.1.0 → 1.1.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.
- data/README.md +4 -4
- data/lib/haml_coffee_assets/version.rb +1 -1
- data/lib/js/hamlcoffee.js +31 -4
- metadata +86 -70
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# Haml Coffee Assets [](http://travis-ci.org/netzpirat/haml_coffee_assets)
|
2
2
|
|
3
|
-
Haml Coffee Assets compiles [Haml Coffee](https://github.com/
|
3
|
+
Haml Coffee Assets compiles [Haml Coffee](https://github.com/netzpirat/haml-coffee) templates in the Rails 3.1
|
4
4
|
asset pipeline, so you can use them as JavaScript templates in your JavaScript heavy Rails application. It also works as [Tilt](https://github.com/rtomayko/tilt/) template without Rails.
|
5
5
|
|
6
6
|
Tested on MRI Ruby 1.8.7, 1.9.2, 1.9.3, REE and the latest version of JRuby.
|
@@ -344,7 +344,7 @@ display of the tag. In order to avoid this, the content is preserved by converti
|
|
344
344
|
entity. You can set your own list of whitespace sensitive tags in your `config/application.rb`:
|
345
345
|
|
346
346
|
```ruby
|
347
|
-
config.hamlcoffee.
|
347
|
+
config.hamlcoffee.preserveTags = 'pre,textarea,abbr'
|
348
348
|
```
|
349
349
|
|
350
350
|
This list is also taken into account for the `HAML.preserveAndFind` helper function that is provided and its shortcut
|
@@ -376,7 +376,7 @@ to, you can set custom functions for:
|
|
376
376
|
* config.hamlcoffee.customPrecede
|
377
377
|
|
378
378
|
You can see the [default implementation](https://github.com/netzpirat/haml_coffee_assets/blob/master/vendor/assets/javascripts/hamlcoffee.js.coffee.erb)
|
379
|
-
and the [Haml Coffee documentation](https://github.com/
|
379
|
+
and the [Haml Coffee documentation](https://github.com/netzpirat/haml-coffee#custom-helper-function-compiler-options)
|
380
380
|
for more information about each helper function.
|
381
381
|
|
382
382
|
## Author
|
@@ -412,7 +412,7 @@ See the [CHANGELOG](https://github.com/netzpirat/haml_coffee_assets/blob/master/
|
|
412
412
|
|
413
413
|
* [Jeremy Ashkenas](http://twitter.com/#!/jashkenas) for CoffeeScript, that little language that compiles into
|
414
414
|
JavaScript.
|
415
|
-
* The people at [9elements](https://github.com/9elements) who
|
415
|
+
* The people at [9elements](https://github.com/9elements) who started
|
416
416
|
[haml-coffee](https://github.com/9elements/haml-coffee), an elegant JavaScript template solution.
|
417
417
|
|
418
418
|
## License
|
data/lib/js/hamlcoffee.js
CHANGED
@@ -1235,7 +1235,7 @@ require.define("/nodes/haml.js", function (require, module, exports, __dirname,
|
|
1235
1235
|
};
|
1236
1236
|
|
1237
1237
|
Haml.prototype.parseAttributes = function(exp) {
|
1238
|
-
var attributes, hasDataAttribute, inDataAttribute, key, keyValue, keys, pairs, quoted, type, value, _ref, _ref1;
|
1238
|
+
var attributes, ch, hasDataAttribute, inDataAttribute, key, keyValue, keys, level, marker, markers, pairs, pos, quoted, start, type, value, _i, _j, _len, _ref, _ref1, _ref2, _ref3;
|
1239
1239
|
attributes = {};
|
1240
1240
|
if (exp === void 0) {
|
1241
1241
|
return attributes;
|
@@ -1244,6 +1244,33 @@ require.define("/nodes/haml.js", function (require, module, exports, __dirname,
|
|
1244
1244
|
exp = exp.replace(/(=|:|=>)\s*('([^\\']|\\\\|\\')*'|"([^\\"]|\\\\|\\")*")/g, function(match, type, value) {
|
1245
1245
|
return type + (value != null ? value.replace(/(:|=|=>)/, '\u0090$1') : void 0);
|
1246
1246
|
});
|
1247
|
+
level = 0;
|
1248
|
+
start = 0;
|
1249
|
+
markers = [];
|
1250
|
+
for (pos = _i = 0, _ref = exp.length; 0 <= _ref ? _i <= _ref : _i >= _ref; pos = 0 <= _ref ? ++_i : --_i) {
|
1251
|
+
ch = exp[pos];
|
1252
|
+
if (ch === '(') {
|
1253
|
+
level += 1;
|
1254
|
+
start = pos;
|
1255
|
+
}
|
1256
|
+
if (ch === ')') {
|
1257
|
+
if (level === 1) {
|
1258
|
+
if (start !== 0 && pos - start !== 1) {
|
1259
|
+
markers.push({
|
1260
|
+
start: start,
|
1261
|
+
end: pos
|
1262
|
+
});
|
1263
|
+
}
|
1264
|
+
} else {
|
1265
|
+
level -= 1;
|
1266
|
+
}
|
1267
|
+
}
|
1268
|
+
}
|
1269
|
+
_ref1 = markers.reverse();
|
1270
|
+
for (_j = 0, _len = _ref1.length; _j < _len; _j++) {
|
1271
|
+
marker = _ref1[_j];
|
1272
|
+
exp = exp.substring(0, marker.start) + exp.substring(marker.start, marker.end).replace(/(:|=|=>)/, '\u0090$1') + exp.substring(marker.end);
|
1273
|
+
}
|
1247
1274
|
switch (type) {
|
1248
1275
|
case '(':
|
1249
1276
|
keys = /\(\s*([-\w]+[\w:-]*\w?)\s*=|\s+([-\w]+[\w:-]*\w?)\s*=|\(\s*('\w+[\w:-]*\w?')\s*=|\s+('\w+[\w:-]*\w?')\s*=|\(\s*("\w+[\w:-]*\w?")\s*=|\s+("\w+[\w:-]*\w?")\s*=/g;
|
@@ -1256,11 +1283,11 @@ require.define("/nodes/haml.js", function (require, module, exports, __dirname,
|
|
1256
1283
|
hasDataAttribute = false;
|
1257
1284
|
while (pairs.length) {
|
1258
1285
|
keyValue = pairs.splice(0, 2);
|
1259
|
-
key = (
|
1286
|
+
key = (_ref2 = keyValue[0]) != null ? _ref2.replace(/^\s+|\s+$/g, '').replace(/^:/, '') : void 0;
|
1260
1287
|
if (quoted = key.match(/^("|')(.*)\1$/)) {
|
1261
1288
|
key = quoted[2];
|
1262
1289
|
}
|
1263
|
-
value = (
|
1290
|
+
value = (_ref3 = keyValue[1]) != null ? _ref3.replace(/^\s+|[\s,]+$/g, '').replace(/\u0090/, '') : void 0;
|
1264
1291
|
if (key === 'data') {
|
1265
1292
|
inDataAttribute = true;
|
1266
1293
|
hasDataAttribute = true;
|
@@ -1390,7 +1417,7 @@ require.define("/nodes/haml.js", function (require, module, exports, __dirname,
|
|
1390
1417
|
}
|
1391
1418
|
} else {
|
1392
1419
|
if (value.indexOf('#{') === -1) {
|
1393
|
-
result = "'" + (value.replace(/'/g, '\\\"')) + "'";
|
1420
|
+
result = "'" + (value.replace(/"/g, '\\\"').replace(/'/g, '\\\"')) + "'";
|
1394
1421
|
} else {
|
1395
1422
|
result = "'" + value + "'";
|
1396
1423
|
}
|
metadata
CHANGED
@@ -1,87 +1,94 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: haml_coffee_assets
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
hash: 17
|
5
5
|
prerelease:
|
6
|
+
segments:
|
7
|
+
- 1
|
8
|
+
- 1
|
9
|
+
- 1
|
10
|
+
version: 1.1.1
|
6
11
|
platform: ruby
|
7
|
-
authors:
|
12
|
+
authors:
|
8
13
|
- Michael Kessler
|
9
14
|
autorequire:
|
10
15
|
bindir: bin
|
11
16
|
cert_chain: []
|
12
|
-
|
13
|
-
|
14
|
-
|
17
|
+
|
18
|
+
date: 2012-06-19 00:00:00 Z
|
19
|
+
dependencies:
|
20
|
+
- !ruby/object:Gem::Dependency
|
15
21
|
name: execjs
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
|
-
requirements:
|
19
|
-
- - ! '>='
|
20
|
-
- !ruby/object:Gem::Version
|
21
|
-
version: 1.2.9
|
22
|
-
type: :runtime
|
23
22
|
prerelease: false
|
24
|
-
|
23
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
25
24
|
none: false
|
26
|
-
requirements:
|
27
|
-
- -
|
28
|
-
- !ruby/object:Gem::Version
|
25
|
+
requirements:
|
26
|
+
- - ">="
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
hash: 13
|
29
|
+
segments:
|
30
|
+
- 1
|
31
|
+
- 2
|
32
|
+
- 9
|
29
33
|
version: 1.2.9
|
30
|
-
- !ruby/object:Gem::Dependency
|
31
|
-
name: tilt
|
32
|
-
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
|
-
requirements:
|
35
|
-
- - ! '>='
|
36
|
-
- !ruby/object:Gem::Version
|
37
|
-
version: 1.3.3
|
38
34
|
type: :runtime
|
35
|
+
version_requirements: *id001
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
name: tilt
|
39
38
|
prerelease: false
|
40
|
-
|
39
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
41
40
|
none: false
|
42
|
-
requirements:
|
43
|
-
- -
|
44
|
-
- !ruby/object:Gem::Version
|
41
|
+
requirements:
|
42
|
+
- - ">="
|
43
|
+
- !ruby/object:Gem::Version
|
44
|
+
hash: 29
|
45
|
+
segments:
|
46
|
+
- 1
|
47
|
+
- 3
|
48
|
+
- 3
|
45
49
|
version: 1.3.3
|
46
|
-
- !ruby/object:Gem::Dependency
|
47
|
-
name: sprockets
|
48
|
-
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
|
-
requirements:
|
51
|
-
- - ! '>='
|
52
|
-
- !ruby/object:Gem::Version
|
53
|
-
version: 2.0.3
|
54
50
|
type: :runtime
|
51
|
+
version_requirements: *id002
|
52
|
+
- !ruby/object:Gem::Dependency
|
53
|
+
name: sprockets
|
55
54
|
prerelease: false
|
56
|
-
|
55
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
57
56
|
none: false
|
58
|
-
requirements:
|
59
|
-
- -
|
60
|
-
- !ruby/object:Gem::Version
|
57
|
+
requirements:
|
58
|
+
- - ">="
|
59
|
+
- !ruby/object:Gem::Version
|
60
|
+
hash: 9
|
61
|
+
segments:
|
62
|
+
- 2
|
63
|
+
- 0
|
64
|
+
- 3
|
61
65
|
version: 2.0.3
|
62
|
-
|
66
|
+
type: :runtime
|
67
|
+
version_requirements: *id003
|
68
|
+
- !ruby/object:Gem::Dependency
|
63
69
|
name: bundler
|
64
|
-
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
|
-
requirements:
|
67
|
-
- - ! '>='
|
68
|
-
- !ruby/object:Gem::Version
|
69
|
-
version: '0'
|
70
|
-
type: :development
|
71
70
|
prerelease: false
|
72
|
-
|
71
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
73
72
|
none: false
|
74
|
-
requirements:
|
75
|
-
- -
|
76
|
-
- !ruby/object:Gem::Version
|
77
|
-
|
73
|
+
requirements:
|
74
|
+
- - ">="
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
hash: 3
|
77
|
+
segments:
|
78
|
+
- 0
|
79
|
+
version: "0"
|
80
|
+
type: :development
|
81
|
+
version_requirements: *id004
|
78
82
|
description: Compile Haml CoffeeScript templates in the Rails asset pipeline.
|
79
|
-
email:
|
83
|
+
email:
|
80
84
|
- michi@netzpiraten.ch
|
81
85
|
executables: []
|
86
|
+
|
82
87
|
extensions: []
|
88
|
+
|
83
89
|
extra_rdoc_files: []
|
84
|
-
|
90
|
+
|
91
|
+
files:
|
85
92
|
- lib/haml_coffee_assets/compiler.rb
|
86
93
|
- lib/haml_coffee_assets/configuration.rb
|
87
94
|
- lib/haml_coffee_assets/rails/engine.rb
|
@@ -97,30 +104,39 @@ files:
|
|
97
104
|
- README.md
|
98
105
|
homepage: https://github.com/netzpirat/haml_coffee_assets
|
99
106
|
licenses: []
|
107
|
+
|
100
108
|
post_install_message:
|
101
109
|
rdoc_options: []
|
102
|
-
|
110
|
+
|
111
|
+
require_paths:
|
103
112
|
- lib
|
104
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
113
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
105
114
|
none: false
|
106
|
-
requirements:
|
107
|
-
- -
|
108
|
-
- !ruby/object:Gem::Version
|
109
|
-
|
110
|
-
segments:
|
115
|
+
requirements:
|
116
|
+
- - ">="
|
117
|
+
- !ruby/object:Gem::Version
|
118
|
+
hash: 3
|
119
|
+
segments:
|
111
120
|
- 0
|
112
|
-
|
113
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
121
|
+
version: "0"
|
122
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
114
123
|
none: false
|
115
|
-
requirements:
|
116
|
-
- -
|
117
|
-
- !ruby/object:Gem::Version
|
124
|
+
requirements:
|
125
|
+
- - ">="
|
126
|
+
- !ruby/object:Gem::Version
|
127
|
+
hash: 23
|
128
|
+
segments:
|
129
|
+
- 1
|
130
|
+
- 3
|
131
|
+
- 6
|
118
132
|
version: 1.3.6
|
119
133
|
requirements: []
|
134
|
+
|
120
135
|
rubyforge_project: haml_coffee_assets
|
121
|
-
rubygems_version: 1.8.
|
136
|
+
rubygems_version: 1.8.15
|
122
137
|
signing_key:
|
123
138
|
specification_version: 3
|
124
139
|
summary: Haml CoffeeScript templates
|
125
140
|
test_files: []
|
141
|
+
|
126
142
|
has_rdoc:
|