jade-rails 1.8.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,238 @@
1
+ !function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var f;"undefined"!=typeof window?f=window:"undefined"!=typeof global?f=global:"undefined"!=typeof self&&(f=self),f.jade=e()}}(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
2
+ 'use strict';
3
+
4
+ /**
5
+ * Merge two attribute objects giving precedence
6
+ * to values in object `b`. Classes are special-cased
7
+ * allowing for arrays and merging/joining appropriately
8
+ * resulting in a string.
9
+ *
10
+ * @param {Object} a
11
+ * @param {Object} b
12
+ * @return {Object} a
13
+ * @api private
14
+ */
15
+
16
+ exports.merge = function merge(a, b) {
17
+ if (arguments.length === 1) {
18
+ var attrs = a[0];
19
+ for (var i = 1; i < a.length; i++) {
20
+ attrs = merge(attrs, a[i]);
21
+ }
22
+ return attrs;
23
+ }
24
+ var ac = a['class'];
25
+ var bc = b['class'];
26
+
27
+ if (ac || bc) {
28
+ ac = ac || [];
29
+ bc = bc || [];
30
+ if (!Array.isArray(ac)) ac = [ac];
31
+ if (!Array.isArray(bc)) bc = [bc];
32
+ a['class'] = ac.concat(bc).filter(nulls);
33
+ }
34
+
35
+ for (var key in b) {
36
+ if (key != 'class') {
37
+ a[key] = b[key];
38
+ }
39
+ }
40
+
41
+ return a;
42
+ };
43
+
44
+ /**
45
+ * Filter null `val`s.
46
+ *
47
+ * @param {*} val
48
+ * @return {Boolean}
49
+ * @api private
50
+ */
51
+
52
+ function nulls(val) {
53
+ return val != null && val !== '';
54
+ }
55
+
56
+ /**
57
+ * join array as classes.
58
+ *
59
+ * @param {*} val
60
+ * @return {String}
61
+ */
62
+ exports.joinClasses = joinClasses;
63
+ function joinClasses(val) {
64
+ return (Array.isArray(val) ? val.map(joinClasses) :
65
+ (val && typeof val === 'object') ? Object.keys(val).filter(function (key) { return val[key]; }) :
66
+ [val]).filter(nulls).join(' ');
67
+ }
68
+
69
+ /**
70
+ * Render the given classes.
71
+ *
72
+ * @param {Array} classes
73
+ * @param {Array.<Boolean>} escaped
74
+ * @return {String}
75
+ */
76
+ exports.cls = function cls(classes, escaped) {
77
+ var buf = [];
78
+ for (var i = 0; i < classes.length; i++) {
79
+ if (escaped && escaped[i]) {
80
+ buf.push(exports.escape(joinClasses([classes[i]])));
81
+ } else {
82
+ buf.push(joinClasses(classes[i]));
83
+ }
84
+ }
85
+ var text = joinClasses(buf);
86
+ if (text.length) {
87
+ return ' class="' + text + '"';
88
+ } else {
89
+ return '';
90
+ }
91
+ };
92
+
93
+
94
+ exports.style = function (val) {
95
+ if (val && typeof val === 'object') {
96
+ return Object.keys(val).map(function (style) {
97
+ return style + ':' + val[style];
98
+ }).join(';');
99
+ } else {
100
+ return val;
101
+ }
102
+ };
103
+ /**
104
+ * Render the given attribute.
105
+ *
106
+ * @param {String} key
107
+ * @param {String} val
108
+ * @param {Boolean} escaped
109
+ * @param {Boolean} terse
110
+ * @return {String}
111
+ */
112
+ exports.attr = function attr(key, val, escaped, terse) {
113
+ if (key === 'style') {
114
+ val = exports.style(val);
115
+ }
116
+ if ('boolean' == typeof val || null == val) {
117
+ if (val) {
118
+ return ' ' + (terse ? key : key + '="' + key + '"');
119
+ } else {
120
+ return '';
121
+ }
122
+ } else if (0 == key.indexOf('data') && 'string' != typeof val) {
123
+ if (JSON.stringify(val).indexOf('&') !== -1) {
124
+ console.warn('Since Jade 2.0.0, ampersands (`&`) in data attributes ' +
125
+ 'will be escaped to `&amp;`');
126
+ };
127
+ if (val && typeof val.toISOString === 'function') {
128
+ console.warn('Jade will eliminate the double quotes around dates in ' +
129
+ 'ISO form after 2.0.0');
130
+ }
131
+ return ' ' + key + "='" + JSON.stringify(val).replace(/'/g, '&apos;') + "'";
132
+ } else if (escaped) {
133
+ if (val && typeof val.toISOString === 'function') {
134
+ console.warn('Jade will stringify dates in ISO form after 2.0.0');
135
+ }
136
+ return ' ' + key + '="' + exports.escape(val) + '"';
137
+ } else {
138
+ if (val && typeof val.toISOString === 'function') {
139
+ console.warn('Jade will stringify dates in ISO form after 2.0.0');
140
+ }
141
+ return ' ' + key + '="' + val + '"';
142
+ }
143
+ };
144
+
145
+ /**
146
+ * Render the given attributes object.
147
+ *
148
+ * @param {Object} obj
149
+ * @param {Object} escaped
150
+ * @return {String}
151
+ */
152
+ exports.attrs = function attrs(obj, terse){
153
+ var buf = [];
154
+
155
+ var keys = Object.keys(obj);
156
+
157
+ if (keys.length) {
158
+ for (var i = 0; i < keys.length; ++i) {
159
+ var key = keys[i]
160
+ , val = obj[key];
161
+
162
+ if ('class' == key) {
163
+ if (val = joinClasses(val)) {
164
+ buf.push(' ' + key + '="' + val + '"');
165
+ }
166
+ } else {
167
+ buf.push(exports.attr(key, val, false, terse));
168
+ }
169
+ }
170
+ }
171
+
172
+ return buf.join('');
173
+ };
174
+
175
+ /**
176
+ * Escape the given string of `html`.
177
+ *
178
+ * @param {String} html
179
+ * @return {String}
180
+ * @api private
181
+ */
182
+
183
+ exports.escape = function escape(html){
184
+ var result = String(html)
185
+ .replace(/&/g, '&amp;')
186
+ .replace(/</g, '&lt;')
187
+ .replace(/>/g, '&gt;')
188
+ .replace(/"/g, '&quot;');
189
+ if (result === '' + html) return html;
190
+ else return result;
191
+ };
192
+
193
+ /**
194
+ * Re-throw the given `err` in context to the
195
+ * the jade in `filename` at the given `lineno`.
196
+ *
197
+ * @param {Error} err
198
+ * @param {String} filename
199
+ * @param {String} lineno
200
+ * @api private
201
+ */
202
+
203
+ exports.rethrow = function rethrow(err, filename, lineno, str){
204
+ if (!(err instanceof Error)) throw err;
205
+ if ((typeof window != 'undefined' || !filename) && !str) {
206
+ err.message += ' on line ' + lineno;
207
+ throw err;
208
+ }
209
+ try {
210
+ str = str || require('fs').readFileSync(filename, 'utf8')
211
+ } catch (ex) {
212
+ rethrow(err, null, lineno)
213
+ }
214
+ var context = 3
215
+ , lines = str.split('\n')
216
+ , start = Math.max(lineno - context, 0)
217
+ , end = Math.min(lines.length, lineno + context);
218
+
219
+ // Error context
220
+ var context = lines.slice(start, end).map(function(line, i){
221
+ var curr = i + start + 1;
222
+ return (curr == lineno ? ' > ' : ' ')
223
+ + curr
224
+ + '| '
225
+ + line;
226
+ }).join('\n');
227
+
228
+ // Alter exception message
229
+ err.path = filename;
230
+ err.message = (filename || 'Jade') + ':' + lineno
231
+ + '\n' + context + '\n\n' + err.message;
232
+ throw err;
233
+ };
234
+
235
+ },{"fs":2}],2:[function(require,module,exports){
236
+
237
+ },{}]},{},[1])(1)
238
+ });
@@ -0,0 +1,16 @@
1
+ doctype html
2
+ html(lang="en")
3
+ head
4
+ title= pageTitle
5
+ script(type='text/javascript').
6
+ if (foo) bar(1 + 5)
7
+ body
8
+ h1 Jade - node template engine
9
+ #container.col
10
+ if youAreUsingJade
11
+ p You are amazing
12
+ else
13
+ p Get on it!
14
+ p.
15
+ Jade is a terse and simple templating language with a
16
+ strong focus on performance and powerful features.
metadata ADDED
@@ -0,0 +1,115 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: jade-rails
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.8.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Paul Raythattha
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-12-06 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: execjs
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: tilt
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: bundler
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ version: '1.7'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: '1.7'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rake
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: '10.0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ~>
67
+ - !ruby/object:Gem::Version
68
+ version: '10.0'
69
+ description: Jade adapter for the Rails asset pipeline.
70
+ email: paul@appfactories.com
71
+ executables: []
72
+ extensions: []
73
+ extra_rdoc_files: []
74
+ files:
75
+ - .gitignore
76
+ - Gemfile
77
+ - LICENSE
78
+ - README.md
79
+ - Rakefile
80
+ - jade-rails.gemspec
81
+ - lib/jade-rails.rb
82
+ - lib/jade/railtie.rb
83
+ - lib/jade/template.rb
84
+ - lib/jade/version.rb
85
+ - test/test_jade-rails.rb
86
+ - vendor/assets/javascripts/jade/LICENSE
87
+ - vendor/assets/javascripts/jade/jade.js
88
+ - vendor/assets/javascripts/jade/runtime.js
89
+ - vendor/assets/javascripts/jade/sample_template.jade
90
+ homepage: https://github.com/mahipal/jade-rails
91
+ licenses:
92
+ - MIT
93
+ metadata: {}
94
+ post_install_message:
95
+ rdoc_options: []
96
+ require_paths:
97
+ - lib
98
+ required_ruby_version: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - '>='
101
+ - !ruby/object:Gem::Version
102
+ version: '0'
103
+ required_rubygems_version: !ruby/object:Gem::Requirement
104
+ requirements:
105
+ - - '>='
106
+ - !ruby/object:Gem::Version
107
+ version: '0'
108
+ requirements: []
109
+ rubyforge_project:
110
+ rubygems_version: 2.0.14
111
+ signing_key:
112
+ specification_version: 4
113
+ summary: Jade adapter for the Rails asset pipeline.
114
+ test_files:
115
+ - test/test_jade-rails.rb