1 line
2.5 KiB
JavaScript
1 line
2.5 KiB
JavaScript
!function(){var e=this,t={},n=Array.prototype,r=n.slice,o=n.forEach,a=Object.keys,i=function(){},c=i.each=i.forEach=function(e,n,r){if(null!=e)if(o&&e.forEach===o)e.forEach(n,r);else if(e.length===+e.length){for(var a=0,c=e.length;c>a;a++)if(n.call(r,e[a],a,e)===t)return}else for(var l=i.keys(e),a=0,c=l.length;c>a;a++)if(n.call(r,e[l[a]],l[a],e)===t)return};i.keys=a||function(e){if(e!==Object(e))throw new TypeError("Invalid object");var t=[];for(var n in e)i.has(e,n)&&t.push(n);return t},i.defaults=function(e){return c(r.call(arguments,1),function(t){if(t)for(var n in t)void 0===e[n]&&(e[n]=t[n])}),e};var l={escape:{"&":"&","<":"<",">":">",'"':""","'":"'"}},u={escape:new RegExp("["+i.keys(l.escape).join("")+"]","g")};i.each(["escape"],function(e){i[e]=function(t){return null==t?"":(""+t).replace(u[e],function(t){return l[e][t]})}}),i.templateSettings={evaluate:/\{%([\s\S]+?)%\}/g,interpolate:/\{%=([\s\S]+?)%\}/g,escape:/\{%-([\s\S]+?)%\}/g,innerFn:!0};var f=/(.)^/,p={"'":"'","\\":"\\","\r":"r","\n":"n"," ":"t","\u2028":"u2028","\u2029":"u2029"},s=/\\|'|\r|\n|\t|\u2028|\u2029/g;i.template=function(e,t,n){var r;n=i.defaults({},n,i.templateSettings);var o=new RegExp([(n.escape||f).source,(n.interpolate||f).source,(n.evaluate||f).source].join("|")+"|$","g"),a=0,c="\n__p+='";e.replace(o,function(t,n,r,o,i){return c+=e.slice(a,i).replace(s,function(e){return"\\"+p[e]}),n&&(c+="'\n+((__t=("+n+"))==null?'':escape(__t))+'"),r&&(c+="'\n+((__t=("+r+"))==null?'':__t)+'"),o&&(c+="';"+o+"\n__p+='"),a=i+t.length,t}),c+="';",n.variable||(c="with(obj||{}){"+c+"}"),c="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+c+"return __p;\n";try{r=new Function(n.variable||"obj","_",c)}catch(l){throw l.source=c,l}if(t)return r(t,i);var u=function(e){return r.call(this,e,i)},g="function each(obj, iterator, bind) {var f = Array.prototype.forEach;if(f) {f.call(obj, iterator, bind);}else {for (var i = 0, l = obj.length; i < l; i++) {if (i in obj) {iterator.call(bind, obj[i], i, obj);}}}}",_="function escape(source) {return String(source).replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/\"/g, '"').replace(/'/g, ''');}",h=n.innerFn===!1?"":g+_;return u.source="function("+(n.variable||"obj")+"){"+h+c+"}",u},"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=i),exports.utpl=i):e.utpl=i,"function"==typeof define&&define.amd&&define(function(){return i})}.call(this); |