attrs-data.js
1.76 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
function pug_attr(t, e, n, f) {
return e !== !1 && null != e && (e || "class" !== t && "style" !== t) ? e === !0 ? " " + (f ? t : t + '="' + t + '"') : ("function" == typeof e.toJSON && (e = e.toJSON()),
"string" == typeof e || (e = JSON.stringify(e), n || e.indexOf('"') === -1) ? (n && (e = pug_escape(e)),
" " + t + '="' + e + '"') : " " + t + "='" + e.replace(/'/g, "'") + "'") : "";
}
function pug_escape(e) {
var a = "" + e, t = pug_match_html.exec(a);
if (!t) return e;
var r, c, n, s = "";
for (r = t.index, c = 0; r < a.length; r++) {
switch (a.charCodeAt(r)) {
case 34:
n = """;
break;
case 38:
n = "&";
break;
case 60:
n = "<";
break;
case 62:
n = ">";
break;
default:
continue;
}
c !== r && (s += a.substring(c, r)), c = r + 1, s += n;
}
return c !== r ? s + a.substring(c, r) : s;
}
var pug_match_html = /["&<>]/;
function template(locals) {
var pug_html = "", pug_mixins = {}, pug_interp;
var locals_for_with = locals || {};
(function(Date) {
var user = {
name: "tobi"
};
pug_html = pug_html + "<foo" + pug_attr("data-user", user, true, false) + '></foo><foo data-items="[1,2,3]"></foo><foo data-username="tobi"></foo><foo data-escaped="{"message":"Let\'s rock!"}"></foo><foo data-ampersand="{"message":"a quote: &quot; this & that"}"></foo><foo' + pug_attr("data-epoc", new Date(0), true, false) + "></foo>";
}).call(this, "Date" in locals_for_with ? locals_for_with.Date : typeof Date !== "undefined" ? Date : undefined);
return pug_html;
}