1 line
3.3 KiB
JavaScript
1 line
3.3 KiB
JavaScript
(function(){"use strict";e={name:"doT",version:"1.1.1",templateSettings:{evaluate:/\{\{([\s\S]+?(\}?)+)\}\}/g,interpolate:/\{\{=([\s\S]+?)\}\}/g,encode:/\{\{!([\s\S]+?)\}\}/g,use:/\{\{#([\s\S]+?)\}\}/g,useParams:/(^|[^\w$])def(?:\.|\[['"])([\w$.]+)(?:['"]\])?\s*:\s*([\w$.]+|"[^"]+"|'[^']+'|\{[^}]+\})/g,define:/\{\{##\s*([\w.$]+)\s*(:|=)([\s\S]+?)#\}\}/g,defineParams:/^\s*([\w$]+):([\s\S]+)/,conditional:/\{\{\?(\?)?\s*([\s\S]*?)\s*\}\}/g,iterate:/\{\{~\s*(?:\}\}|([\s\S]+?)\s*:\s*([\w$]+)\s*(?::\s*([\w$]+))?\s*\}\})/g,varname:"it",strip:!0,append:!0,selfcontained:!1,doNotSkipEncoded:!1},template:void 0,compile:void 0,log:!0},e.encodeHTMLSource=function(e){var t={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"},n=e?/[&<>"'/]/g:/&(?!#?\w+;)|<|>|"|'|\//g;return function(e){return e?e.toString().replace(n,function(e){return t[e]||e}):""}},s=function(){return this||(0,eval)("this")}(),typeof module!="undefined"&&module.exports?module.exports=e:typeof define=="function"&&define.amd?define(function(){return e}):s.doT=e;var e,s,o={append:{start:"'+(",end:")+'",startencode:"'+encodeHTML("},split:{start:"';out+=(",end:");out+='",startencode:"';out+=encodeHTML("}},t=/$^/;function i(e,n,s){return(typeof n=="string"?n:n.toString()).replace(e.define||t,function(t,n,o,i){return n.indexOf("def.")===0&&(n=n.substring(4)),n in s||(o===":"?(e.defineParams&&i.replace(e.defineParams,function(e,t,o){s[n]={arg:t,text:o}}),n in s||(s[n]=i)):new Function("def","def['"+n+"']="+i)(s)),""}).replace(e.use||t,function(t,n){e.useParams&&(n=n.replace(e.useParams,function(e,t,n,o){if(s[n]&&s[n].arg&&o){var i=(n+":"+o).replace(/'|\\/g,"_");return s.__exp=s.__exp||{},s.__exp[i]=s[n].text.replace(new RegExp("(^|[^\\w$])"+s[n].arg+"([^\\w$])","g"),"$1"+o+"$2"),t+"def.__exp['"+i+"']"}}));var o=new Function("def","return "+n)(s);return o&&i(e,o,s)})}function n(e){return e.replace(/\\('|\\)/g,"$1").replace(/[\r\t\n]/g," ")}e.template=function(a,r,c){r=r||e.templateSettings;var h,m,u=r.append?o.append:o.split,l=0,d=r.use||r.define?i(r,a,c||{}):a,d=("var out='"+(r.strip?d.replace(/(^|\r|\n)\t* +| +\t*(\r|\n|$)/g," ").replace(/\r|\n|\t|\/\*[\s\S]*?\*\//g,""):d).replace(/'|\\/g,"\\$&").replace(r.interpolate||t,function(e,t){return u.start+n(t)+u.end}).replace(r.encode||t,function(e,t){return m=!0,u.startencode+n(t)+u.end}).replace(r.conditional||t,function(e,t,s){return t?s?"';}else if("+n(s)+"){out+='":"';}else{out+='":s?"';if("+n(s)+"){out+='":"';}out+='"}).replace(r.iterate||t,function(e,t,s,o){return t?(l+=1,h=o||"i"+l,t=n(t),"';var arr"+l+"="+t+";if(arr"+l+"){var "+s+","+h+"=-1,l"+l+"=arr"+l+".length-1;while("+h+"<l"+l+"){"+s+"=arr"+l+"["+h+"+=1];out+='"):"';} } out+='"}).replace(r.evaluate||t,function(e,t){return"';"+n(t)+"out+='"})+"';return out;").replace(/\n/g,`\\n`).replace(/\t/g,"\\t").replace(/\r/g,"\\r").replace(/(\s|;|\}|^|\{)out\+='';/g,"$1").replace(/\+''/g,"");m&&(!r.selfcontained&&s&&!s._encodeHTML&&(s._encodeHTML=e.encodeHTMLSource(r.doNotSkipEncoded)),d="var encodeHTML = typeof _encodeHTML !== 'undefined' ? _encodeHTML : ("+e.encodeHTMLSource.toString()+"("+(r.doNotSkipEncoded||"")+"));"+d);try{return new Function(r.varname,d)}catch(e){throw typeof console!="undefined"&&console.log("Could not create a template function: "+d),e}},e.compile=function(t,n){return e.template(t,null,n)}})() |